/* == 1. COMPONENT CSS — inline <style> blocks from index.html == */

*,:after,:before{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0}a{color:inherit;text-decoration:none}html{line-sizing:normal;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}body{margin:0;min-height:100dvh}[hidden]{display:none}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.17rem}h4{font-size:1rem}h5{font-size:.83rem}h6{font-size:.67rem}h1,h2,h3,h4{text-wrap:balance}li,p{text-wrap:pretty}h1,h2,h3,h4,h5,h6,p{margin:0}pre{white-space:pre-wrap}hr{border-style:solid;border-width:1px 0 0;color:inherit;height:0;overflow:visible}audio,canvas,embed,iframe,img,object,svg,video{display:block;max-width:100%;vertical-align:middle}audio:not([controls]){display:none}picture{display:contents}source{display:none}canvas,img,svg,video{height:auto}audio{width:100%}img{border-style:none}svg{overflow:hidden}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}
:root{--ease-linear:cubic-bezier(.25,.25,.75,.75);--ease-in-sine:cubic-bezier(.47,0,.745,.715);--ease-out-sine:cubic-bezier(.39,.575,.565,1);--ease-in-out-sine:cubic-bezier(.445,.05,.55,.95);--ease-in-quad:cubic-bezier(.55,.085,.68,.53);--ease-out-quad:cubic-bezier(.25,.46,.45,.94);--ease-in-out-quad:cubic-bezier(.455,.03,.515,.955);--ease-in-cubic:cubic-bezier(.55,.055,.675,.19);--ease-out-cubic:cubic-bezier(.215,.61,.355,1);--ease-in-out-cubic:cubic-bezier(.645,.045,.355,1);--ease-in-quart:cubic-bezier(.895,.03,.685,.22);--ease-out-quart:cubic-bezier(.165,.84,.44,1);--ease-in-out-quart:cubic-bezier(.77,0,.175,1);--ease-in-quint:cubic-bezier(.755,.05,.855,.06);--ease-out-quint:cubic-bezier(.23,1,.32,1);--ease-in-out-quint:cubic-bezier(.86,0,.07,1);--ease-in-expo:cubic-bezier(.95,.05,.795,.035);--ease-out-expo:cubic-bezier(.19,1,.22,1);--ease-in-out-expo:cubic-bezier(1,0,0,1);--ease-in-circ:cubic-bezier(.6,.04,.98,.335);--ease-out-circ:cubic-bezier(.075,.82,.165,1);--ease-in-out-circ:cubic-bezier(.785,.135,.15,.86);--ease-in-back:cubic-bezier(.6,-.28,.735,.045);--ease-out-back:cubic-bezier(.175,.885,.32,1.275);--ease-in-out-back:cubic-bezier(.68,-.55,.265,1.55);--ease-out-elastic:linear(0,.5737 7.6%,.8382 11.87%,.9463 14.19%,1.0292 16.54%,1.0886 18.97%,1.1258 21.53%,1.137 22.97%,1.1424 24.48%,1.1423 26.1%,1.1366 27.86%,1.1165 31.01%,1.0507 38.62%,1.0219 42.57%,.9995 46.99%,.9872 51.63%,.9842 58.77%,1.0011 81.26%,1);--ease-out-elastic-100-30:linear(0,.2178 2.1%,1.1144 8.49%,1.2959 10.7%,1.3463 11.81%,1.3705 12.94%,1.3726,1.3643 14.48%,1.3151 16.2%,1.0317 21.81%,.941 24.01%,.8912 25.91%,.8694 27.84%,.8698 29.21%,.8824 30.71%,1.0122 38.33%,1.0357,1.046 42.71%,1.0416 45.7%,.9961 53.26%,.9839 57.54%,.9853 60.71%,1.0012 68.14%,1.0056 72.24%,.9981 86.66%,1)}
.button{background-color:var(--color-secondary);border:none;border-radius:50rem;color:var(--color-onPrimary);font:1rem/1 var(--font-family-headline);padding:1rem 2rem;text-transform:uppercase;transition:.8s scale var(--ease-out-elastic),.8s box-shadow var(--ease-out-elastic);width:-moz-fit-content;width:fit-content}@media (any-hover:hover){.button:hover{box-shadow:var(--shadow);scale:1.05}}.button:active{scale:.95!important}.button:has(.iconify){align-items:center;border-radius:50%;box-shadow:var(--shadow);cursor:pointer;display:flex;height:3rem;justify-content:center;padding:0;pointer-events:auto;width:3rem}
.header{color:var(--color-onPrimary);display:flex;justify-content:end;left:0;padding:var(--padding);pointer-events:none;position:fixed;top:max(calc(var(--safe-top) - var(--padding)),0px);width:100%;z-index:2}.header .header__nav{align-items:center;border-radius:50%;box-shadow:var(--shadow);contain:paint;cursor:pointer;display:flex;font-size:1.8rem!important;height:3rem;justify-content:center;padding:0;pointer-events:auto;width:3rem}.header .head svg path{fill:var(--color-onPrimary)!important;stroke:var(--color-onPrimary)!important}.header:not([visible=true]) .header__nav{scale:0;visibility:hidden}
.footer,.intersection-phantom{min-height:100dvh;width:100%}.footer{align-items:center;background-color:var(--color-secondary);bottom:0;container:footer/inline-size;display:flex;flex-direction:column;gap:2rem;justify-content:flex-end;left:0;padding:4rem 0;position:fixed;text-align:center;--scaleY:var(--1c6caef9);--offsetY:var(--ba0f1688);transform:translateY(calc(var(--offsetY)*1px))}.footer__title{color:var(--color-primary);font:33cqi/.8 var(--font-family-headline);letter-spacing:-.04em;margin-left:-.05em;pointer-events:none;text-transform:uppercase;transform:scaleY(var(--scaleY));transform-origin:bottom;-webkit-user-select:none;-moz-user-select:none;user-select:none}.footer__title span{position:relative;top:-.1em}.footer__links{gap:1rem}.footer__links,.footer__links__list{align-items:center;display:flex;flex-direction:column}.footer__links__list{gap:.2rem;list-style:none;margin:0;padding:0}.footer__links__list a{display:block;font:var(--font-h4);text-transform:uppercase;transform-origin:bottom;transition:.15s color var(--ease-in-out-sine),1s transform var(--ease-out-elastic-100-30)}@media (any-hover:hover){.footer__links__list a:hover{color:var(--color-primary);transform:scaleY(1.2)}}small{color:var(--color-primary)}
@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:500;src:local("Inter Medium"),local("Inter-Medium"),url(/fonts/Inter-Medium.woff2) format("woff2")}:root{--safe-top:env(safe-area-inset-top);--safe-right:env(safe-area-inset-right);--safe-bottom:env(safe-area-inset-bottom);--safe-left:env(safe-area-inset-left);--font-family-body:"Inter",sans-serif;--padding:1rem;--gap:1rem;--max-width:860px;--shadow:0px 9px 21px rgba(0,0,0,.1),0px 38px 38px rgba(0,0,0,.09),0px 85px 51px rgba(0,0,0,.05);--color-white:#fff;--color-black:#2c2c2c;--color-grey:#cbcbcb;--color-primary:var(--color-white);--color-onPrimary:var(--color-black);--color-secondary:var(--color-grey);--color-onSecondary:var(--color-black);--font-h1:4.125rem/.82 var(--font-family-headline);--font-h2:2.5rem/.82 var(--font-family-headline);--font-h4:.875rem/1 var(--font-family-headline);--font-h6:500 .5625rem/1 var(--font-family-body);--font-body:500 1rem/1.3 var(--font-family-body)}@media (width >= 768px){:root{--font-h1:6.25rem/.82 var(--font-family-headline);--font-h2:4rem/.82 var(--font-family-headline);--font-h4:.875rem/1 var(--font-family-headline);--font-h6:500 .5625rem/1 var(--font-family-body);--font-body:500 1rem/1.3 var(--font-family-body)}}::-moz-selection{background-color:color-mix(in srgb,var(--color-secondary),transparent 60%)}::selection{background-color:color-mix(in srgb,var(--color-secondary),transparent 60%)}.nuxt-icon svg{margin-bottom:0}h1{font:var(--font-h1);font-feature-settings:"cpsp" on}h1,h2{letter-spacing:-.02em;text-transform:uppercase}h2{font:var(--font-h2);font-feature-settings:"cpsp" on}h4{font:var(--font-h4);font-feature-settings:"cpsp" on;letter-spacing:.1em;text-transform:uppercase}p{font:var(--font-body)}small{font:var(--font-h6);font-feature-settings:"cpsp" on;letter-spacing:.1em;text-transform:uppercase}html{color:var(--color-onPrimary);font-family:var(--font-family-headline);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body,html{overflow-x:clip;width:100%}body,html,main{background-color:var(--color-primary)}main{position:relative;z-index:1}::view-transition-new(brompton-bg),::view-transition-new(lovely-day-bg),::view-transition-old(brompton-bg),::view-transition-old(lovely-day-bg){height:100%;mix-blend-mode:normal;overflow:clip}.page-enter-active,.page-leave-active{transition:opacity .2s}.page-enter-from,.page-leave-to{opacity:0}.modal-enter-active{transition:opacity .4s var(--ease-in-out-sine),visibility 1s}.modal-enter-active .project-page__modal{transition:scale .6s var(--ease-out-expo)}.modal-leave-active{transition:opacity .2s var(--ease-in-out-cubic),visibility .2s}.modal-leave-active .project-page__modal{transition:scale .2s var(--ease-in-out-cubic)}.modal-enter-from,.modal-leave-to{opacity:0!important;visibility:hidden}.modal-enter-from .project-page__modal,.modal-leave-to .project-page__modal{scale:.9!important}
.error-page{align-items:center;display:flex;flex-direction:column;height:100dvh;justify-content:center;width:100%}.error-page__code{font-size:min(32rem,60vw);margin-top:-.4ch}.error-page__button{position:relative;top:6rem}
.color-picker{bottom:max(var(--safe-bottom),var(--padding));display:grid;place-items:center;position:fixed;right:var(--padding);z-index:1;--toggle-size:3;--gap:1.5;--radius:calc(var(--toggle-size)*.5 + var(--gap));--spacing:.75;touch-action:none;transition:.5s translate var(--ease-out-elastic),.8s scale var(--ease-out-elastic),.8s visibility;-webkit-user-select:none;-moz-user-select:none;user-select:none}.color-picker[open=true] label{scale:1;transition-delay:calc(var(--idx)*.05s);transition-duration:.5s;transition-timing-function:var(--ease-out-elastic);translate:var(--translateX) var(--translateY)}.color-picker:not([visible=true]){scale:0;transition:.5s translate var(--ease-out-elastic),.2s scale var(--ease-out-cubic),.2s visibility;visibility:hidden}.color-picker__toggle{font-size:1.4rem!important;grid-area:1/1;height:calc(var(--toggle-size)*1rem);position:relative;width:calc(var(--toggle-size)*1rem);z-index:1}.color-picker__toggle:active{scale:.9!important}label{cursor:pointer;grid-area:1/1;height:2rem;position:relative;width:2rem;--translateY:calc(cos(var(--idx) * var(--spacing) + 1.25)*var(--radius)*1rem);--translateX:calc(sin(var(--idx) * var(--spacing) + 1.25)*var(--radius)*-1rem);scale:.5;transition-duration:.15s;transition-property:translate,scale;transition-timing-function:var(--ease-in-cubic)}label input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-primary);border:1px solid rgba(0,0,0,.1);border-radius:50%;cursor:pointer;height:inherit;margin:0;padding:0;width:inherit}
.index-page{display:flex;flex-direction:column;gap:8rem}@media (width >= 768px){.index-page{gap:12rem}}section{gap:4rem}.index-page__project,section{display:flex;flex-direction:column}.index-page__project{align-items:center;gap:2.5rem}
.hero{container:hero/inline-block;display:grid;grid-template-areas:"top" "mid" "bot";min-height:100svh;padding:max(var(--safe-top),var(--padding)) max(var(--safe-right),var(--padding)) max(var(--safe-bottom),var(--padding)) max(var(--safe-left),var(--padding));place-items:center;text-align:center;width:100%}@media (display-mode:fullscreen){.hero{min-height:100vh}}.hero__top{grid-area:top}.hero__mid{align-items:center;display:flex;flex-direction:column;gap:min(4rem,6cqb);grid-area:mid}.hero__mid h1,.hero__mid h2{font:var(--font-h1);font-size:max(3.8rem,7cqi);max-width:12em;text-align:center}.hero__mid h1 .word,.hero__mid h2 .word{display:inline-block;transform-origin:bottom;will-change:transform}@starting-style{.hero__mid h1 .word,.hero__mid h2 .word{scale:1 0}}.hero__mid h1 .space,.hero__mid h2 .space{display:inline-block;height:1em;width:.3ch}.hero__mid h2{color:var(--color-secondary)}.hero__bot,.hero__top{align-items:center;display:flex;flex-direction:column;gap:.6rem}.hero__bot{grid-area:bot}.hero__clients,.hero__location{font:var(--font-h4);letter-spacing:.09em;max-width:22em;text-transform:uppercase}small{color:var(--color-secondary);text-align:center}.hero__images{display:grid;display:flex;place-items:center;align-items:center;justify-content:center;pointer-events:none;position:relative;touch-action:none;width:100%;z-index:1}.hero__images .hero__image{aspect-ratio:1/1;border-radius:1rem;display:grid;width:clamp(6rem,100%,14cqi)}@starting-style{.hero__images .hero__image{scale:0}}.hero__images .hero__image .shadow{box-shadow:var(--shadow)}.hero__images .hero__image .shadow,.hero__images .hero__image img{border-radius:inherit;grid-area:1/1;translate:calc(var(--offsetX)*1px) calc(var(--offsetY)*1px + var(--translateY))}.hero__images .hero__image img{pointer-events:auto}.hero__images .hero__image:first-child *{rotate:calc(2deg - var(--velocity)*.25deg);--translateY:5%}.hero__images .hero__image:nth-child(2) *{rotate:calc(-3deg - var(--velocity)*.25deg);--translateY:-6%}.hero__images .hero__image:nth-child(3) *{rotate:calc(6deg - var(--velocity)*.25deg);--translateY:5%}.hero__images .hero__image:nth-child(4) *{rotate:calc(-2deg - var(--velocity)*.25deg);--translateY:-4%}.hero__images .hero__image:not(:last-child){margin-right:-6%}.hero:not([mounted=true]) .hero__images .hero__image{scale:0}.hero:not([mounted=true]) .hero__mid h1 .word,.hero:not([mounted=true]) .hero__mid h2 .word{scale:1 0;translate:0 .25ch}.hero:not([mounted=true]) .hero__bot,.hero:not([mounted=true]) .hero__top{opacity:0}.hero[mounted=true] .hero__images .hero__image{transition:1s scale var(--ease-out-elastic);transition-delay:calc(var(--delay)*.08s + .4s)}.hero[mounted=true] .hero__mid h1 .word,.hero[mounted=true] .hero__mid h2 .word{transition:.8s scale var(--ease-out-elastic),.8s translate var(--ease-out-elastic);transition-delay:calc(var(--delay)*.1s)}.hero[mounted=true] .hero__bot,.hero[mounted=true] .hero__top{transition:1.2s opacity var(--ease-out-sine);transition-delay:.25s}
.text-block{align-items:center;display:flex;flex-direction:column;gap:var(--gap);padding:0 var(--padding);text-align:center}.text-block__title{font:var(--font-h2);font-feature-settings:"cpsp" on;letter-spacing:-.02em;text-transform:uppercase}.text-block__description{max-width:24em}
.carousel{--gap:var(--9ed30c86);cursor:grab;height:100%;overflow-x:clip;touch-action:manipulation;width:100%}.carousel:active{cursor:grabbing}.carousel__track{--offset:var(--76298768);--pointerXOffset:0;--pointerOffset:calc(var(--pointerXOffset)*50);--slide-width:var(--311a8615);--center-padding:var(--53122423);--offset-centered:(var(--offset) + var(--pointerOffset)) - var(--center-padding);gap:calc(var(--gap)*1px);translate:calc((var(--offset) + var(--pointerOffset))*-1px) 0;width:-moz-fit-content;width:fit-content}.carousel__slide,.carousel__track{align-items:center;display:flex;height:100%}.carousel__slide{flex-direction:column;gap:1rem;justify-content:center;width:min(30rem,80vw);--slide-pos:calc((var(--slide-width) + var(--gap))*var(--slide-idx) + var(--slide-offset));--transform:calc(var(--slide-pos) - var(--offset-centered));translate:calc(var(--slide-offset)*1px)}.carousel__slide img,.carousel__slide mux-video{border-radius:1rem;height:auto;max-height:100%;max-width:100%;overflow:clip;transition:1.4s translate var(--ease-out-elastic),1.4s scale var(--ease-out-elastic);transition-delay:calc(sin(var(--slide-idx) * (3.14/2))*.12s);-webkit-user-select:none;-moz-user-select:none;user-select:none;width:auto}.carousel__slide a{opacity:cos(var(--transform) * (3.14 / 600))}.carousel.curve .carousel__slide{rotate:calc(var(--transform)*.03deg);transform-origin:50% 70vw;translate:calc(var(--slide-offset)*1px) calc(cos(var(--transform) * (3.14 / 1000))*-3rem + 3rem)}.carousel:not([inview=true]) .carousel__slide img{scale:.8;translate:0 20%}
.grid{display:grid;gap:min(10vw,5rem);grid-template-columns:repeat(2,1fr);margin:0 auto;max-width:1200px;padding:0 2rem 10rem;width:100%}@media (width >= 768px){.grid{gap:min(10vw,8rem);grid-template-columns:repeat(3,1fr);padding:2rem 4rem 10rem}}.grid .text-block{grid-column:1/span 2}@media (width >= 768px){.grid .text-block{grid-column:1/span 3}}
.project{display:grid;place-items:center;width:100%;--shadow:0px 9px 21px rgba(0,0,0,.05),0px 38px 38px rgba(0,0,0,.045),0px 85px 51px rgba(0,0,0,.025)}.project:not([inview=true]) .project__image .media{scale:.7}.project:not([inview=true]) .project__image .shadow{opacity:0}.project .project__image{border-radius:1rem;grid-area:1/1;position:relative;transition:1s scale var(--ease-out-elastic);width:100%}.project .project__image:not(:first-child){rotate:calc(var(--rotation)*.5deg);translate:calc(var(--posX)*.25%) calc(var(--posY)*.25%)}.project .project__image .media{align-items:center;border-radius:inherit;display:flex;justify-content:center;position:relative;transition:.8s scale var(--ease-out-elastic)}.project .project__image .media img,.project .project__image .media mux-video{border-radius:inherit;-o-object-fit:cover;object-fit:cover;overflow:clip;width:100%}.project .project__image .shadow{background-color:#0000000d;border-radius:inherit;box-shadow:var(--shadow);height:100%;top:0;right:0;bottom:0;left:0;position:absolute;transition:.8s opacity var(--ease-out-elastic);width:100%}@media (any-hover:hover){.project:hover .project__image:first-child>*{scale:1.01}.project:hover .project__image:nth-child(2)>*{scale:1.02}.project:hover .project__image:nth-child(3)>*{scale:1.03}}.project:active .project__image:first-child>*{scale:.97}.project:active .project__image:nth-child(2)>*{scale:.98}.project:active .project__image:nth-child(3)>*{scale:.99}
:where(.i-icon\:paint){display:inline-block;width:1em;height:1em;background-repeat:no-repeat;background-size:100% 100%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18' width='18' height='18'%3E%3Cg fill='none'%3E%3Cpath d='M14.5 9C14.1022 9 13.7206 8.84196 13.4393 8.56066C13.158 8.27936 13 7.89782 13 7.5C13 7.10218 13.158 6.72064 13.4393 6.43934C13.7206 6.15804 14.1022 6 14.5 6C14.8978 6 15.2794 6.15804 15.5607 6.43934C15.842 6.72064 16 7.10218 16 7.5C16 7.89782 15.842 8.27936 15.5607 8.56066C15.2794 8.84196 14.8978 9 14.5 9ZM11.5 5C11.1022 5 10.7206 4.84196 10.4393 4.56066C10.158 4.27936 10 3.89782 10 3.5C10 3.10218 10.158 2.72064 10.4393 2.43934C10.7206 2.15804 11.1022 2 11.5 2C11.8978 2 12.2794 2.15804 12.5607 2.43934C12.842 2.72064 13 3.10218 13 3.5C13 3.89782 12.842 4.27936 12.5607 4.56066C12.2794 4.84196 11.8978 5 11.5 5ZM6.5 5C6.10218 5 5.72064 4.84196 5.43934 4.56066C5.15804 4.27936 5 3.89782 5 3.5C5 3.10218 5.15804 2.72064 5.43934 2.43934C5.72064 2.15804 6.10218 2 6.5 2C6.89782 2 7.27936 2.15804 7.56066 2.43934C7.84196 2.72064 8 3.10218 8 3.5C8 3.89782 7.84196 4.27936 7.56066 4.56066C7.27936 4.84196 6.89782 5 6.5 5ZM3.5 9C3.10218 9 2.72064 8.84196 2.43934 8.56066C2.15804 8.27936 2 7.89782 2 7.5C2 7.10218 2.15804 6.72064 2.43934 6.43934C2.72064 6.15804 3.10218 6 3.5 6C3.89782 6 4.27936 6.15804 4.56066 6.43934C4.84196 6.72064 5 7.10218 5 7.5C5 7.89782 4.84196 8.27936 4.56066 8.56066C4.27936 8.84196 3.89782 9 3.5 9ZM9 0C6.61305 0 4.32387 0.948211 2.63604 2.63604C0.948211 4.32387 0 6.61305 0 9C0 11.3869 0.948211 13.6761 2.63604 15.364C4.32387 17.0518 6.61305 18 9 18C9.39782 18 9.77936 17.842 10.0607 17.5607C10.342 17.2794 10.5 16.8978 10.5 16.5C10.5 16.11 10.35 15.76 10.11 15.5C9.88 15.23 9.73 14.88 9.73 14.5C9.73 14.1022 9.88804 13.7206 10.1693 13.4393C10.4506 13.158 10.8322 13 11.23 13H13C14.3261 13 15.5979 12.4732 16.5355 11.5355C17.4732 10.5979 18 9.32608 18 8C18 3.58 13.97 0 9 0Z' fill='black'/%3E%3C/g%3E%3C/svg%3E")}

  :host {
    all: initial;
  }

  .gf-scroll-remove::-webkit-scrollbar {
    border-radius-bottom-right: 15px;
  }

  button {
    cursor: pointer;
    transition: transform 0.1s ease;
  }

  button:active {
    transform: scale(0.98);
  }

  .give-freely-close-button:hover {
    opacity: 0.7;
  }

  input[type="radio"] {
    margin-right: 8px;
  }

  hr {
    border: none;
    border-top: 1px solid #e5e5e5;
    margin: 1em 0;
  }

  dialog::backdrop  {
    background-color: revert;
  }

  dialog.backdrop-hidden::backdrop  {
    background-color: transparent;
  }


/* == 2. ENTRY.CSS — global template variables == */

.button{background-color:var(--color-secondary);border:none;border-radius:50rem;color:var(--color-onPrimary);font:1rem/1 var(--font-family-headline);padding:1rem 2rem;text-transform:uppercase;transition:.8s scale var(--ease-out-elastic),.8s box-shadow var(--ease-out-elastic);width:-moz-fit-content;width:fit-content}@media (any-hover:hover){.button:hover{box-shadow:var(--shadow);scale:1.05}}.button:active{scale:.95!important}.button:has(.iconify){align-items:center;border-radius:50%;box-shadow:var(--shadow);cursor:pointer;display:flex;height:3rem;justify-content:center;padding:0;pointer-events:auto;width:3rem}.header{color:var(--color-onPrimary);display:flex;justify-content:end;left:0;padding:var(--padding);pointer-events:none;position:fixed;top:max(calc(var(--safe-top) - var(--padding)),0px);width:100%;z-index:2}.header .header__nav{align-items:center;border-radius:50%;box-shadow:var(--shadow);contain:paint;cursor:pointer;display:flex;font-size:1.8rem!important;height:3rem;justify-content:center;padding:0;pointer-events:auto;width:3rem}.header .head svg path{fill:var(--color-onPrimary)!important;stroke:var(--color-onPrimary)!important}.header:not([visible=true]) .header__nav{scale:0;visibility:hidden}.color-picker{bottom:max(var(--safe-bottom),var(--padding));display:grid;place-items:center;position:fixed;right:var(--padding);z-index:1;--toggle-size:3;--gap:1.5;--radius:calc(var(--toggle-size)*.5 + var(--gap));--spacing:.75;touch-action:none;transition:.5s translate var(--ease-out-elastic),.8s scale var(--ease-out-elastic),.8s visibility;-webkit-user-select:none;-moz-user-select:none;user-select:none}.color-picker[open=true] label{scale:1;transition-delay:calc(var(--idx)*.05s);transition-duration:.5s;transition-timing-function:var(--ease-out-elastic);translate:var(--translateX) var(--translateY)}.color-picker:not([visible=true]){scale:0;transition:.5s translate var(--ease-out-elastic),.2s scale var(--ease-out-cubic),.2s visibility;visibility:hidden}.color-picker__toggle{font-size:1.4rem!important;grid-area:1/1;height:calc(var(--toggle-size)*1rem);position:relative;width:calc(var(--toggle-size)*1rem);z-index:1}.color-picker__toggle:active{scale:.9!important}label{cursor:pointer;grid-area:1/1;height:2rem;position:relative;width:2rem;--translateY:calc(cos(var(--idx) * var(--spacing) + 1.25)*var(--radius)*1rem);--translateX:calc(sin(var(--idx) * var(--spacing) + 1.25)*var(--radius)*-1rem);scale:.5;transition-duration:.15s;transition-property:translate,scale;transition-timing-function:var(--ease-in-cubic)}label input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-primary);border:1px solid rgba(0,0,0,.1);border-radius:50%;cursor:pointer;height:inherit;margin:0;padding:0;width:inherit}.footer,.intersection-phantom{min-height:100dvh;width:100%}.footer{align-items:center;background-color:var(--color-secondary);bottom:0;container:footer/inline-size;display:flex;flex-direction:column;gap:2rem;justify-content:flex-end;left:0;padding:4rem 0;position:fixed;text-align:center;--scaleY:var(--1c6caef9);--offsetY:var(--ba0f1688);transform:translateY(calc(var(--offsetY)*1px))}.footer__title{color:var(--color-primary);font:33cqi/.8 var(--font-family-headline);letter-spacing:-.04em;margin-left:-.05em;pointer-events:none;text-transform:uppercase;transform:scaleY(var(--scaleY));transform-origin:bottom;-webkit-user-select:none;-moz-user-select:none;user-select:none}.footer__title span{position:relative;top:-.1em}.footer__links{gap:1rem}.footer__links,.footer__links__list{align-items:center;display:flex;flex-direction:column}.footer__links__list{gap:.2rem;list-style:none;margin:0;padding:0}.footer__links__list a{display:block;font:var(--font-h4);text-transform:uppercase;transform-origin:bottom;transition:.15s color var(--ease-in-out-sine),1s transform var(--ease-out-elastic-100-30)}@media (any-hover:hover){.footer__links__list a:hover{color:var(--color-primary);transform:scaleY(1.2)}}small{color:var(--color-primary)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:500;src:local("Inter Medium"),local("Inter-Medium"),url(../fonts/Inter-Medium.woff2) format("woff2")}:root{--safe-top:env(safe-area-inset-top);--safe-right:env(safe-area-inset-right);--safe-bottom:env(safe-area-inset-bottom);--safe-left:env(safe-area-inset-left);--font-family-body:"Inter",sans-serif;--padding:1rem;--gap:1rem;--max-width:860px;--shadow:0px 9px 21px rgba(0,0,0,.1),0px 38px 38px rgba(0,0,0,.09),0px 85px 51px rgba(0,0,0,.05);--color-white:#fff;--color-black:#2c2c2c;--color-grey:#cbcbcb;--color-primary:var(--color-white);--color-onPrimary:var(--color-black);--color-secondary:var(--color-grey);--color-onSecondary:var(--color-black);--font-h1:4.125rem/.82 var(--font-family-headline);--font-h2:2.5rem/.82 var(--font-family-headline);--font-h4:.875rem/1 var(--font-family-headline);--font-h6:500 .5625rem/1 var(--font-family-body);--font-body:500 1rem/1.3 var(--font-family-body)}@media (width >= 768px){:root{--font-h1:6.25rem/.82 var(--font-family-headline);--font-h2:4rem/.82 var(--font-family-headline);--font-h4:.875rem/1 var(--font-family-headline);--font-h6:500 .5625rem/1 var(--font-family-body);--font-body:500 1rem/1.3 var(--font-family-body)}}::-moz-selection{background-color:color-mix(in srgb,var(--color-secondary),transparent 60%)}::selection{background-color:color-mix(in srgb,var(--color-secondary),transparent 60%)}.nuxt-icon svg{margin-bottom:0}h1{font:var(--font-h1);font-feature-settings:"cpsp" on}h1,h2{letter-spacing:-.02em;text-transform:uppercase}h2{font:var(--font-h2);font-feature-settings:"cpsp" on}h4{font:var(--font-h4);font-feature-settings:"cpsp" on;letter-spacing:.1em;text-transform:uppercase}p{font:var(--font-body)}small{font:var(--font-h6);font-feature-settings:"cpsp" on;letter-spacing:.1em;text-transform:uppercase}html{color:var(--color-onPrimary);font-family:var(--font-family-headline);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body,html{overflow-x:clip;width:100%}body,html,main{background-color:var(--color-primary)}main{position:relative;z-index:1}::view-transition-new(brompton-bg),::view-transition-new(lovely-day-bg),::view-transition-old(brompton-bg),::view-transition-old(lovely-day-bg){height:100%;mix-blend-mode:normal;overflow:clip}.page-enter-active,.page-leave-active{transition:opacity .2s}.page-enter-from,.page-leave-to{opacity:0}.modal-enter-active{transition:opacity .4s var(--ease-in-out-sine),visibility 1s}.modal-enter-active .project-page__modal{transition:scale .6s var(--ease-out-expo)}.modal-leave-active{transition:opacity .2s var(--ease-in-out-cubic),visibility .2s}.modal-leave-active .project-page__modal{transition:scale .2s var(--ease-in-out-cubic)}.modal-enter-from,.modal-leave-to{opacity:0!important;visibility:hidden}.modal-enter-from .project-page__modal,.modal-leave-to .project-page__modal{scale:.9!important}.error-page{align-items:center;display:flex;flex-direction:column;height:100dvh;justify-content:center;width:100%}.error-page__code{font-size:min(32rem,60vw);margin-top:-.4ch}.error-page__button{position:relative;top:6rem}


/* == 3. DESIGN-TOKENS — warm palette == */

/*
 * ✦ DESIGN SYSTEM — PRIMARY THEME PORT ✦
 *
 * Basado en el tema Primary para Obsidian
 * por Cecilia May (@ceciliamay)
 * https://github.com/primary-theme/obsidian
 *
 * Adaptado para portfolio web.
 * Filosofía: Bauhaus + Escandinavo + páginas de revista envejecida.
 * Cálido, nostálgico, productivo.
 *
 * ─────────────────────────────────────────────
 * ESTRUCTURA
 *   1. Primitivos — paleta completa cruda
 *   2. Semánticos — tokens de uso
 *   3. Tipografía
 *   4. Espaciado & Layout
 *   5. Bordes & Radio
 *   6. Sombras
 *   7. Animación
 *   8. Modo oscuro (.dark / [data-theme="dark"])
 * ─────────────────────────────────────────────
 */


/* ═══════════════════════════════════════════
   1. PRIMITIVOS
   Paleta cruda — no usar directamente en
   componentes. Referenciar desde semánticos.
═══════════════════════════════════════════ */

:root {

  /* ── Neutrales cálidos (base beige/marrón) ── */
  --primitive-gray-10:  hsla(36, 38%, 98%, 1);   /* blanco cremoso */
  --primitive-gray-20:  hsla(35, 36%, 96%, 1);
  --primitive-gray-30:  hsla(35, 37%, 92%, 1);
  --primitive-gray-40:  hsla(34, 34%, 90%, 1);
  --primitive-gray-50:  hsla(36, 35%, 88%, 1);
  --primitive-gray-60:  hsla(37, 38%, 83%, 1);
  --primitive-gray-70:  hsla(34, 37%, 70%, 1);
  --primitive-gray-80:  hsla(34, 29%, 60%, 1);
  --primitive-gray-90:  hsla(31, 23%, 50%, 1);
  --primitive-gray-100: hsla(35, 28%, 40%, 1);
  --primitive-gray-110: hsla(34, 30%, 37%, 1);
  --primitive-gray-120: hsla(36, 32%, 30%, 1);
  --primitive-gray-130: hsla(31, 45%, 24%, 1);
  --primitive-gray-140: hsla(33, 54%, 17%, 1);   /* marrón casi negro */
  --primitive-alpha-gray: hsla(34, 37%, 70%, 0.15);

  /* ── Rojo Bauhaus ── */
  --primitive-red-10:   hsla(4, 59%, 64%, 1);
  --primitive-red-20:   hsla(4, 72%, 55%, 1);
  --primitive-red-30:   hsla(4, 56%, 48%, 1);
  --primitive-red-40:   hsla(4, 72%, 35%, 1);
  --primitive-alpha-red: hsla(350, 84%, 63%, 0.2);

  /* ── Naranja ── */
  --primitive-orange-10: hsla(26, 70%, 63%, 1);
  --primitive-orange-20: hsla(21, 81%, 59%, 1);
  --primitive-orange-30: hsla(18, 69%, 50%, 1);
  --primitive-orange-40: hsla(18, 96%, 35%, 1);
  --primitive-alpha-orange: hsla(27, 100%, 50%, 0.2);

  /* ── Amarillo Bauhaus ── */
  --primitive-yellow-10: hsla(43, 71%, 67%, 1);
  --primitive-yellow-20: hsla(43, 83%, 57%, 1);
  --primitive-yellow-30: hsla(40, 79%, 47%, 1);
  --primitive-yellow-40: hsla(40, 98%, 36%, 1);
  --primitive-alpha-yellow: hsla(44, 100%, 50%, 0.2);

  /* ── Verde ── */
  --primitive-green-10:  hsla(148, 30%, 65%, 1);
  --primitive-green-20:  hsla(148, 48%, 47%, 1);
  --primitive-green-30:  hsla(149, 50%, 39%, 1);
  --primitive-green-40:  hsla(153, 65%, 29%, 1);
  --primitive-alpha-green: hsla(74, 69%, 44%, 0.2);

  /* ── Azul Bauhaus ── */
  --primitive-blue-10:   hsla(197, 39%, 56%, 1);
  --primitive-blue-20:   hsla(202, 66%, 48%, 1);
  --primitive-blue-30:   hsla(200, 64%, 37%, 1);
  --primitive-blue-40:   hsla(205, 85%, 25%, 1);
  --primitive-alpha-blue: hsla(186, 64%, 46%, 0.2);

  /* ── Violeta ── */
  --primitive-purple-10: hsla(280, 43%, 76%, 1);
  --primitive-purple-20: hsla(277, 35%, 59%, 1);
  --primitive-purple-30: hsla(275, 37%, 43%, 1);
  --primitive-purple-40: hsla(265, 70%, 30%, 1);
  --primitive-alpha-purple: hsla(236, 100%, 72%, 0.2);

  /* ── Colores semánticos base (convenientes) ── */
  --primitive-color-red:    hsla(0,   58%, 53%, 1);
  --primitive-color-orange: hsla(30,  66%, 52%, 1);
  --primitive-color-yellow: hsla(42,  89%, 46%, 1);
  --primitive-color-green:  hsla(146, 37%, 49%, 1);
  --primitive-color-cyan:   hsla(178, 39%, 49%, 1);
  --primitive-color-blue:   hsla(206, 57%, 44%, 1);
  --primitive-color-purple: hsla(249, 39%, 60%, 1);
  --primitive-color-pink:   hsla(351, 44%, 61%, 1);
}


/* ═══════════════════════════════════════════
   2. TOKENS SEMÁNTICOS — LIGHT (default)
   Estos son los que usás en componentes.
═══════════════════════════════════════════ */

:root {

  /* ── Fondos ── */
  --color-bg-base:       var(--primitive-gray-10);   /* página principal */
  --color-bg-primary:    var(--primitive-gray-20);   /* superficie primaria */
  --color-bg-secondary:  var(--primitive-gray-30);   /* superficie secundaria */
  --color-bg-tertiary:   var(--primitive-gray-40);   /* superficie terciaria */
  --color-bg-elevated:   var(--primitive-gray-10);   /* cards, popovers */
  --color-bg-sunken:     var(--primitive-gray-50);   /* inputs, wells */
  --color-bg-overlay:    rgba(220, 220, 220, 0.4);   /* modales */

  /* ── Bordes ── */
  --color-border-subtle:  var(--primitive-gray-60);
  --color-border-default: var(--primitive-gray-70);
  --color-border-strong:  var(--primitive-gray-80);

  /* ── Texto ── */
  --color-text-primary:   var(--primitive-gray-130); /* cuerpo principal */
  --color-text-secondary: var(--primitive-gray-100); /* texto muted */
  --color-text-muted:     var(--primitive-gray-80);  /* placeholder, hint */
  --color-text-disabled:  var(--primitive-gray-70);
  --color-text-inverse:   var(--primitive-gray-10);  /* sobre fondos oscuros */
  --color-text-on-accent: var(--primitive-gray-10);

  /* ── Accent (terra / marrón cálido) ── */
  --accent-h: 31;
  --accent-s: 23%;
  --accent-l: 50%;
  --color-accent:       hsl(var(--accent-h), var(--accent-s), var(--accent-l));
  --color-accent-hover: hsl(calc(var(--accent-h) - 3), calc(var(--accent-s) * 1.33), calc(var(--accent-l) * 1.19));
  --color-accent-subtle: var(--primitive-alpha-gray);

  /* ── Feedback ── */
  --color-success:        var(--primitive-green-30);
  --color-success-subtle: var(--primitive-alpha-green);
  --color-warning:        var(--primitive-orange-30);
  --color-warning-subtle: var(--primitive-alpha-orange);
  --color-error:          var(--primitive-red-30);
  --color-error-subtle:   var(--primitive-alpha-red);

  /* ── Bauhaus — colores de énfasis / decoración ── */
  --color-primary-red:    var(--primitive-red-20);
  --color-primary-yellow: var(--primitive-yellow-20);
  --color-primary-blue:   var(--primitive-blue-20);

  /* ── Énfasis tipográfico
     ⚠ Customizados en Style Settings (difieren del Primary original)
     Original: bold=rojo, italic=azul
     Tu versión: bold=ámbar cálido, italic=verde oliva ── */
  --color-bold:        #D06E12;  /* naranja ámbar (tu custom) */
  --color-italic:      #899B22;  /* verde oliva (tu custom)   */
  --color-bold-italic: var(--primitive-gray-140);

  /* ── Highlight / marcas de texto ── */
  --color-highlight-default:  var(--primitive-alpha-yellow);
  --color-highlight-bold:     hsla(30, 83%, 42%, 0.2);  /* basado en tu bold ámbar */
  --color-highlight-italic:   hsla(74, 57%, 37%, 0.2);  /* basado en tu italic oliva */

  /* ── Links ── */
  --color-link:       var(--primitive-red-20);
  --color-link-hover: var(--primitive-red-10);

  /* ── Superficies especiales
     ⚠ Customizadas en Style Settings ── */
  --color-bg-editor:     #EDE2D2;          /* tu bg de editor (light) */
  --color-bg-blockquote: #906A3745;        /* marrón translúcido (tu custom) */
  --color-surface-dark:  #665D52;          /* ribbon/surface oscura (tu custom) */

  /* ── Selección de texto ── */
  --color-selection: color-mix(in srgb, var(--primitive-gray-70) 30%, transparent);
}


/* ═══════════════════════════════════════════
   3. TIPOGRAFÍA
═══════════════════════════════════════════ */

:root {

  /* ── Familias ── */
  --font-display: 'Jost', system-ui, sans-serif;   /* headings, hero */
  --font-sans:    'Afacad', system-ui, sans-serif; /* body, UI */
  --font-mono:    'Cascadia Code', 'Fira Code', 'Cascadia Mono', monospace;
  --font-serif:   Georgia, 'Times New Roman', serif; /* opcional */

  /* ── Font feature settings ── */
  --font-feature-text:      "calt" 1, "case" 0, "ccmp" 1, "kern" 1, "liga" 1;
  --font-feature-mono:      "calt" 1, "ss01" 1, "ss02" 1, "ss19" 1, "zero" 1;
  --font-feature-interface: "calt" 1, "case" 0, "ccmp" 1, "ss03" 1, "tnum" 1;

  /* ── Escala de tamaños ── */
  --text-xs:   0.75rem;   /* 12px */
  --text-sm:   0.8125rem; /* 13px */
  --text-base: 1rem;      /* 16px */
  --text-md:   1.0625rem; /* 17px */
  --text-lg:   1.125rem;  /* 18px */
  --text-xl:   1.25rem;   /* 20px */
  --text-2xl:  1.5rem;    /* 24px */
  --text-3xl:  1.875rem;  /* 30px */
  --text-4xl:  2.25rem;   /* 36px */
  --text-5xl:  3rem;      /* 48px */
  --text-6xl:  3.75rem;   /* 60px */

  /* ── Pesos (escala Primary — usa variable font Inter) ── */
  --font-thin:       150;
  --font-extralight: 250;
  --font-light:      350;
  --font-normal:     450;
  --font-medium:     550;
  --font-semibold:   650;
  --font-bold:       750;
  --font-extrabold:  850;
  --font-black:      900;

  /* ── Line heights ── */
  --leading-none:    1;
  --leading-tight:   1.25;
  --leading-snug:    1.375;
  --leading-normal:  1.5;
  --leading-relaxed: 1.625;
  --leading-loose:   2;

  /* ── Letter spacing ── */
  --tracking-tight:  -0.025em;
  --tracking-normal:  0em;
  --tracking-wide:    0.025em;
  --tracking-wider:   0.05em;
  --tracking-widest:  0.1em;
}


/* ═══════════════════════════════════════════
   4. ESPACIADO & LAYOUT
═══════════════════════════════════════════ */

:root {

  /* ── Escala de espaciado (base 4px) ── */
  --space-1:  0.25rem;   /* 4px  */
  --space-2:  0.5rem;    /* 8px  */
  --space-3:  0.75rem;   /* 12px */
  --space-4:  1rem;      /* 16px */
  --space-5:  1.25rem;   /* 20px */
  --space-6:  1.5rem;    /* 24px */
  --space-8:  2rem;      /* 32px */
  --space-10: 2.5rem;    /* 40px */
  --space-12: 3rem;      /* 48px */
  --space-16: 4rem;      /* 64px */
  --space-20: 5rem;      /* 80px */
  --space-24: 6rem;      /* 96px */
  --space-32: 8rem;      /* 128px */

  /* ── Ancho de contenido ── */
  --content-width-sm:   40rem;   /* 640px  — texto cómodo */
  --content-width-md:   56rem;   /* 896px  — contenido estándar */
  --content-width-lg:   72rem;   /* 1152px — layout amplio */
  --content-width-full: 90%;

  /* ── Alturas fijas ── */
  --header-height: 3.5rem;  /* 56px */
}


/* ═══════════════════════════════════════════
   5. BORDES & RADIO
═══════════════════════════════════════════ */

:root {

  /* ── Radio (escala Primary/Obsidian) ── */
  --radius-none: 0px;
  --radius-xs:   2px;
  --radius-sm:   4px;
  --radius-md:   6px;
  --radius-lg:   10px;
  --radius-xl:   16px;
  --radius-2xl:  24px;
  --radius-full: 9999px;

  /* ── Grosor de borde ── */
  --border-width-thin:   1px;
  --border-width-normal: 1.5px;
  --border-width-thick:  2px;
}


/* ═══════════════════════════════════════════
   6. SOMBRAS
   Layered shadows estilo Primary —
   múltiples capas para profundidad orgánica.
═══════════════════════════════════════════ */

:root {

  /* Warm shadow color: hsla(31, 45%, 15%) ≈ el marrón oscuro de la paleta */

  --shadow-xs:
    0px 1px 2px hsla(31, 40%, 20%, 0.06);

  --shadow-sm:
    0px 1px 2px   hsla(31, 40%, 20%, 0.04),
    0px 3.4px 6.7px hsla(31, 40%, 20%, 0.06),
    0px 15px 30px   hsla(31, 40%, 20%, 0.08);

  --shadow-md:
    0px 1.8px 7.3px  hsla(31, 40%, 20%, 0.07),
    0px 6.3px 24.7px hsla(31, 40%, 20%, 0.10),
    0px 30px 90px    hsla(31, 40%, 20%, 0.14);

  --shadow-lg:
    0px 2px 8px    hsla(31, 40%, 20%, 0.08),
    0px 8px 32px   hsla(31, 40%, 20%, 0.12),
    0px 40px 100px hsla(31, 40%, 20%, 0.18);

  --shadow-inner:
    inset 0px 1px 0px 0px rgba(255, 255, 255, 0.2),
    inset 0px 0px 0px 1px rgba(0, 0, 0, 0.08);

  /* Obsidian Primary button shadow — tactile/clay */
  --shadow-btn:
    inset 0px 1px 0px 0px rgba(255, 255, 255, 0.15),
    inset 0px 0px 0px 1px rgba(0, 0, 0, 0.10),
    inset 0px -2px 0px 1px rgba(0, 0, 0, 0.08),
    0px 2px 4px -1px hsla(31, 40%, 20%, 0.12),
    0px 1px 2px 0px  hsla(31, 40%, 20%, 0.08);

  --shadow-btn-hover:
    inset 0px 1px 0px 0px rgba(255, 255, 255, 0.20),
    inset 0px 0px 0px 1px rgba(0, 0, 0, 0.12),
    inset 0px -2px 0px 1px rgba(0, 0, 0, 0.10),
    0px 3px 6px -1px hsla(31, 40%, 20%, 0.16),
    0px 1px 3px 0px  hsla(31, 40%, 20%, 0.10);

  --shadow-btn-active:
    inset 0px 0px 0px 1px rgba(0, 0, 0, 0.12),
    inset 0px 2px 4px 0px rgba(0, 0, 0, 0.12);

  --shadow-ribbon:
    8px 7px 21px -4px hsla(31, 40%, 20%, 0.18),
    0px 5px 5px  -5px hsla(31, 40%, 20%, 0.12);
}


/* ═══════════════════════════════════════════
   7. ANIMACIÓN
═══════════════════════════════════════════ */

:root {

  /* ── Duraciones ── */
  --duration-instant:  50ms;
  --duration-fast:     100ms;
  --duration-normal:   200ms;
  --duration-moderate: 300ms;
  --duration-slow:     400ms;
  --duration-slower:   600ms;

  /* ── Curvas de easing — propias ── */
  --ease-smooth: cubic-bezier(0.45, 0.05, 0.55, 0.95);
  --ease-jumpy:  cubic-bezier(0.5,  1.5,  0.6,  1.0);
  --ease-swift:  cubic-bezier(0.55, 0,    1,    1);
  --ease-faded:  cubic-bezier(0.2,  0.02, 0.2,  1);
  --ease-out:    cubic-bezier(0,    0,    0.2,  1);
  --ease-in:     cubic-bezier(0.4,  0,    1,    1);

  /* ── Curvas de easing — compatibilidad Framer/entry.css ── */
  --ease-linear:        cubic-bezier(.25,.25,.75,.75);
  --ease-in-sine:       cubic-bezier(.47,0,.745,.715);
  --ease-out-sine:      cubic-bezier(.39,.575,.565,1);
  --ease-in-out-sine:   cubic-bezier(.445,.05,.55,.95);
  --ease-in-quad:       cubic-bezier(.55,.085,.68,.53);
  --ease-out-quad:      cubic-bezier(.25,.46,.45,.94);
  --ease-in-out-quad:   cubic-bezier(.455,.03,.515,.955);
  --ease-in-cubic:      cubic-bezier(.55,.055,.675,.19);
  --ease-out-cubic:     cubic-bezier(.215,.61,.355,1);
  --ease-in-out-cubic:  cubic-bezier(.645,.045,.355,1);
  --ease-in-quart:      cubic-bezier(.895,.03,.685,.22);
  --ease-out-quart:     cubic-bezier(.165,.84,.44,1);
  --ease-in-out-quart:  cubic-bezier(.77,0,.175,1);
  --ease-in-quint:      cubic-bezier(.755,.05,.855,.06);
  --ease-out-quint:     cubic-bezier(.23,1,.32,1);
  --ease-in-out-quint:  cubic-bezier(.86,0,.07,1);
  --ease-in-expo:       cubic-bezier(.95,.05,.795,.035);
  --ease-out-expo:      cubic-bezier(.19,1,.22,1);
  --ease-in-out-expo:   cubic-bezier(1,0,0,1);
  --ease-in-circ:       cubic-bezier(.6,.04,.98,.335);
  --ease-out-circ:      cubic-bezier(.075,.82,.165,1);
  --ease-in-out-circ:   cubic-bezier(.785,.135,.15,.86);
  --ease-in-back:       cubic-bezier(.6,-.28,.735,.045);
  --ease-out-back:      cubic-bezier(.175,.885,.32,1.275);
  --ease-in-out-back:   cubic-bezier(.68,-.55,.265,1.55);
  --ease-out-elastic:   cubic-bezier(.34,1.56,.64,1);

  /* ── Transiciones reutilizables ── */
  --transition-fast:    var(--duration-fast)    var(--ease-smooth);
  --transition-normal:  var(--duration-normal)  var(--ease-smooth);
  --transition-colors:  color var(--duration-fast) var(--ease-smooth),
                        background-color var(--duration-fast) var(--ease-smooth),
                        border-color var(--duration-fast) var(--ease-smooth);
  --transition-bg:      background var(--duration-fast) var(--ease-smooth);
  --transition-shadow:  box-shadow var(--duration-normal) var(--ease-smooth);
  --transition-transform: transform var(--duration-normal) var(--ease-jumpy);
}


/* ═══════════════════════════════════════════
   8. MODO OSCURO
   Activar con <html class="dark"> o
   <html data-theme="dark">
   También respeta prefers-color-scheme.
═══════════════════════════════════════════ */

.dark,
[data-theme="dark"] {

  /* ── Neutrales oscuros (warm dark — no frío) ── */
  --primitive-gray-10:  hsla(32, 48%, 85%, 1);
  --primitive-gray-20:  hsla(34, 39%, 74%, 1);
  --primitive-gray-30:  hsla(34, 31%, 68%, 1);
  --primitive-gray-40:  hsla(35, 27%, 55%, 1);
  --primitive-gray-50:  hsla(34, 24%, 46%, 1);
  --primitive-gray-60:  hsla(33, 27%, 33%, 1);
  --primitive-gray-70:  hsla(31, 27%, 25%, 1);
  --primitive-gray-80:  hsla(28, 22%, 19%, 1);
  --primitive-gray-90:  hsla(33, 20%, 17%, 1);
  --primitive-gray-100: hsla(30, 19%, 15%, 1);
  --primitive-gray-110: hsla(30, 17%, 14%, 1);
  --primitive-gray-120: hsla(29, 16%, 13%, 1);
  --primitive-gray-130: hsla(24, 18%, 11%, 1);
  --primitive-gray-140: hsla(32, 21%,  9%, 1);
  --primitive-alpha-gray: hsla(34, 24%, 40%, 0.2);

  /* ── Rojo (dark) ── */
  --primitive-red-10: hsla(5,  94%, 73%, 1);
  --primitive-red-20: hsla(4,  91%, 67%, 1);
  --primitive-red-30: hsla(4,  88%, 61%, 1);
  --primitive-red-40: hsla(2,  75%, 52%, 1);

  /* ── Naranja (dark) ── */
  --primitive-orange-10: hsla(26, 85%, 58%, 1);
  --primitive-orange-20: hsla(24, 84%, 50%, 1);
  --primitive-orange-30: hsla(22, 82%, 47%, 1);
  --primitive-orange-40: hsla(19, 81%, 41%, 1);

  /* ── Amarillo (dark) ── */
  --primitive-yellow-10: hsla(43, 69%, 63%, 1);
  --primitive-yellow-20: hsla(42, 79%, 51%, 1);
  --primitive-yellow-30: hsla(40, 78%, 48%, 1);
  --primitive-yellow-40: hsla(38, 76%, 42%, 1);

  /* ── Verde (dark) ── */
  --primitive-green-10: hsla(152, 51%, 54%, 1);
  --primitive-green-20: hsla(154, 57%, 42%, 1);
  --primitive-green-30: hsla(155, 78%, 29%, 1);
  --primitive-green-40: hsla(154, 75%, 26%, 1);

  /* ── Azul (dark) ── */
  --primitive-blue-10: hsla(191, 54%, 62%, 1);
  --primitive-blue-20: hsla(194, 59%, 56%, 1);
  --primitive-blue-30: hsla(197, 48%, 49%, 1);
  --primitive-blue-40: hsla(201, 45%, 40%, 1);

  /* ── Violeta (dark) ── */
  --primitive-purple-10: hsla(242, 52%, 69%, 1);
  --primitive-purple-20: hsla(241, 45%, 57%, 1);
  --primitive-purple-30: hsla(239, 45%, 51%, 1);
  --primitive-purple-40: hsla(238, 47%, 48%, 1);

  /* ── Semánticos — override para dark ── */
  --color-bg-base:       var(--primitive-gray-140);
  --color-bg-primary:    var(--primitive-gray-100);
  --color-bg-secondary:  var(--primitive-gray-120);
  --color-bg-tertiary:   var(--primitive-gray-110);
  --color-bg-elevated:   var(--primitive-gray-90);
  --color-bg-sunken:     var(--primitive-gray-130);
  --color-bg-overlay:    rgba(10, 10, 10, 0.4);

  --color-border-subtle:  var(--primitive-gray-80);
  --color-border-default: var(--primitive-gray-70);
  --color-border-strong:  var(--primitive-gray-60);

  --color-text-primary:   var(--primitive-gray-10);
  --color-text-secondary: var(--primitive-gray-30);
  --color-text-muted:     var(--primitive-gray-50);
  --color-text-disabled:  var(--primitive-gray-60);
  --color-text-inverse:   var(--primitive-gray-140);
  --color-text-on-accent: var(--primitive-gray-10);

  /* ── Énfasis tipográfico dark
     ⚠ Customizados en Style Settings ── */
  --color-bold:   #DD822D;  /* naranja (tu custom dark) */
  --color-italic: #BED14D;  /* amarillo-verde (tu custom dark) */

  /* ── Accent dark ── */
  --accent-h: 31;
  --accent-s: 27%;
  --accent-l: 50%;   /* más luminoso que en Obsidian para web */
  --color-accent:       hsl(var(--accent-h), var(--accent-s), var(--accent-l));
  --color-accent-hover: hsl(calc(var(--accent-h) - 5), calc(var(--accent-s) * 1.16), calc(var(--accent-l) * 1.2));

  /* ── Sombras dark (más opacas) ── */
  --shadow-sm:
    0px 1px 2px   rgba(0, 0, 0, 0.228),
    0px 3.4px 6.7px rgba(0, 0, 0, 0.242),
    0px 15px 30px   rgba(0, 0, 0, 0.27);

  --shadow-md:
    0px 1.8px 7.3px  rgba(0, 0, 0, 0.271),
    0px 6.3px 24.7px rgba(0, 0, 0, 0.312),
    0px 30px 90px    rgba(0, 0, 0, 0.4);
}

/* Respeta preferencia del sistema si no hay clase manual */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --primitive-gray-10:  hsla(32, 48%, 85%, 1);
    --primitive-gray-20:  hsla(34, 39%, 74%, 1);
    --primitive-gray-30:  hsla(34, 31%, 68%, 1);
    --primitive-gray-40:  hsla(35, 27%, 55%, 1);
    --primitive-gray-50:  hsla(34, 24%, 46%, 1);
    --primitive-gray-60:  hsla(33, 27%, 33%, 1);
    --primitive-gray-70:  hsla(31, 27%, 25%, 1);
    --primitive-gray-80:  hsla(28, 22%, 19%, 1);
    --primitive-gray-90:  hsla(33, 20%, 17%, 1);
    --primitive-gray-100: hsla(30, 19%, 15%, 1);
    --primitive-gray-110: hsla(30, 17%, 14%, 1);
    --primitive-gray-120: hsla(29, 16%, 13%, 1);
    --primitive-gray-130: hsla(24, 18%, 11%, 1);
    --primitive-gray-140: hsla(32, 21%,  9%, 1);
    --primitive-alpha-gray: hsla(34, 24%, 40%, 0.2);

    --primitive-red-10: hsla(5, 94%, 73%, 1);
    --primitive-red-20: hsla(4, 91%, 67%, 1);
    --primitive-red-30: hsla(4, 88%, 61%, 1);
    --primitive-red-40: hsla(2, 75%, 52%, 1);

    --primitive-yellow-10: hsla(43, 69%, 63%, 1);
    --primitive-yellow-20: hsla(42, 79%, 51%, 1);
    --primitive-yellow-30: hsla(40, 78%, 48%, 1);
    --primitive-yellow-40: hsla(38, 76%, 42%, 1);

    --primitive-blue-10: hsla(191, 54%, 62%, 1);
    --primitive-blue-20: hsla(194, 59%, 56%, 1);
    --primitive-blue-30: hsla(197, 48%, 49%, 1);
    --primitive-blue-40: hsla(201, 45%, 40%, 1);

    --color-bg-base:       var(--primitive-gray-140);
    --color-bg-primary:    var(--primitive-gray-100);
    --color-bg-secondary:  var(--primitive-gray-120);
    --color-bg-tertiary:   var(--primitive-gray-110);
    --color-bg-elevated:   var(--primitive-gray-90);
    --color-bg-sunken:     var(--primitive-gray-130);

    --color-border-subtle:  var(--primitive-gray-80);
    --color-border-default: var(--primitive-gray-70);
    --color-border-strong:  var(--primitive-gray-60);

    --color-text-primary:   var(--primitive-gray-10);
    --color-text-secondary: var(--primitive-gray-30);
    --color-text-muted:     var(--primitive-gray-50);
    --color-text-disabled:  var(--primitive-gray-60);
    --color-text-inverse:   var(--primitive-gray-140);

    --accent-h: 31;
    --accent-s: 27%;
    --accent-l: 50%;
    --color-accent:       hsl(var(--accent-h), var(--accent-s), var(--accent-l));
    --color-accent-hover: hsl(calc(var(--accent-h) - 5), calc(var(--accent-s) * 1.16), calc(var(--accent-l) * 1.2));

    --shadow-sm:
      0px 1px 2px   rgba(0, 0, 0, 0.228),
      0px 3.4px 6.7px rgba(0, 0, 0, 0.242),
      0px 15px 30px   rgba(0, 0, 0, 0.27);

    --shadow-md:
      0px 1.8px 7.3px  rgba(0, 0, 0, 0.271),
      0px 6.3px 24.7px rgba(0, 0, 0, 0.312),
      0px 30px 90px    rgba(0, 0, 0, 0.4);
  }
}


/* == 4. PORTFOLIO-THEME — Relay Condensed, custom sizing == */

/* ══════════════════════════════════════════════════════
   PORTFOLIO THEME
   Mapea las variables del template (Spencer Gabor)
   al design system Primary — Bauhaus + Escandinavo.
   Carga: DESPUÉS de los CSS del template.
   ══════════════════════════════════════════════════════ */



/* ─────────────────────────────────────────────────────
   1. RELAY CONDENSED — @font-face
   ───────────────────────────────────────────────────── */
@font-face {
  font-family: 'Relay Condensed';
  src: url('https://pub-cf48c0381fd74ea995bb64f2a4065b75.r2.dev/fonts/RelayCond-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Relay Condensed';
  src: url('data:font/woff2;base64,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') format('woff2');
  font-weight: 900;
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: 'Relay Condensed';
  src: url('data:font/woff2;base64,d09GMgABAAAAAGKEABIAAAABPmwAAGIdAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFIF9Bk4Wi2AAhwgIGgmCUxEQCoOxEIOLSxK1HAE2AiQDh2QT4E4Lg3QABCAFiSEHhD8MVFt2KJEO5cb+BjAQlanmKgjSbQhR6uYoX8XzC5TbLrhtBGYK9/BdmIxbeHer74qIQMn+/////////x3LRgwV4L8H8K8aqybGNE26bZsMkIEcFMhGfYhEAEGjRwI0tYhxbszDQJeBwmkBTQT6bNpWTad5lRdtVBPM5W1XRvFQxSYYu5L5XCCLpc6F2yGm2SIcJtshd22WSHEVOwjCTmutI8SDUM1xb51big2ljSAEA4cJJi96rGBg524PdlIukHtqRrrAImjekr62J8WT35gJA3MBDGydRpZjEeM3RbBvfns5MyFpk/dCj5OufIMGktXjdJ585C5cmIEBBe4oNN/5g70UEN5kxvNGh8IJEtTxFqEwERBdg1LPgxp4KgIQAEWWnjY28GShza6wwh4pWYlUROlJ7bK5BoU7nZPxL5A9PyfKbPRgTl0aUgHpxU7pyuObP9nIW/EOEZpFEexH5fpQQxfS8jrBo8JQ/foAftfkWhf+zD+0a2a51dAUy98yXpXtXdVqapp/VTWVif/f1MhKtGKpSXGJsYvNsCJH68Pz9F3551Z1jxeehRGbv3kkN3liRa55m+v/QxrERhEkgCgQINBVxoGprzjl+sv2lrN/dd/XqzbAb7NPlBIFA3jUe5SgiKgY2EiWtAoCKhi1zVU6Nxd5N52L6O+67s+d2+56nRfFwDh9fq1L7UlKA4xbw0H+n++g3fdnRRdoxRZL0o4HgkHKwfzk5hfdnmgMCAwMI/bGgBAISb6senciWpXXNNsUB/3HgfalGCl1piIJFiNYvzM+0919IocMOYEI5FuJFQAF8M/T/x/8b2s2gQQSDFjCBQ8I+onM8kN4M2ktfXmvQLBtfg42+8jyQOiqFI2pNZHfu7TVvw9odySN1FKjaOAWPrIpwspdDhIHocfUVR/i7t6x5mJC6GXJHywLY2PEIqyZYS7BMAQb8ykBu8s1wIWiwoXlwk3lAlczn9cl2tht9SG7MyR1kidXt04PH184umv/LVtCaIxGGYRMowgjea0IrQitCA1c/KTeozb1zRZpQm30fdUWO6Wb8o0uxopy1/2eoI9eNmZGhmVjYLt9IjEwz1wWq3BNPMDJl0J7vkqaqGORAPieLOftMIxdZlbyXnYEUibMciGEbzoXZWtbtfY+8E6eTxSWR6FIyN7pedeXbAjKo3DkmSR9Ib+Q0f7nlL5vShFlID+U3ITODawv2PPDBCC06uAnTCTxQJMD9dVf02V5LI/kEt0XJmCM5M/5EysH0cHDvHRd6j/qrOz2/SwSVShbnmiJj4tur03aAcAAwqABdsDGuBSKO+O2pC25XJJLkhzPp6AlE7UBlGgqhNwnTB2ypbVVXF2x1nl4en1hIiegX1Aib+dxcfRXplrpLiADSldX5Ns7D0mFc75ySW9D44PsP/vPtmd2wZ2ZpdkFaBaQAyEDEOcWkFtRXwWQAARBoH2cM9R5G2LBMwR5BkucA9+R599YmzkTXfbpBUH2Jnv+SQ7Gt9b8AR4ffbc008ACgYSh/52mNP98g7b78b4SnmzEC1h138pzdIo6lNHhXBfaW9ZJ36N70TVwcTEoRuduFzWF5z9VP9t/Z4RHna1yUaly0/HnfrsKBGaoAwIz8wMd5H8obkjcIPlbwSEBQxCCSG3WhlhUdmefPuTeZeG6C7F0aXp+Df7fXjdlxm4iVBih4l2zGdMsBsaGw8cfrgpPPT68zR/mtbDPkdzZiqiM/YypvQ/M6sTSlOQSkjhQUaY4279HjxA7cy08UGE0eFh8EE7HP5cMc6YMoZRSQikiIlJERB5//lbD2fBqNY1KSwTZA9KPwOHP9Yn7rv7tJ69w3YKolAApbZKZFL2zgEtCWoYDhjITpsgMkf4yZQqHX1NRvuG8lHuxM2aIKBme0n/ZBRP20ZraTFpbpShTVPEiXFwZXjlvq6yc1rNiW6VmBNbDQcbLYS4ePkjWIxnsSde4DAqPR4EfZzMKQWdkFj3ffQCy/pXOskXQd3sDECTaiRAXfRYtNAfZ6/wwOQDIQaq9diGgTmQfIAdAXoEOmLgviUCSgSIXlUuCGBFMSY1eVKapumboM3e+GXbTYXPaC5UhZxwlMBKniGry1FCAZhkOXM9WEDktrxP0Ynfa3aCz1xvtTIYe7Lez0dHk5OBsHpaAtoFlCAAKhIGKg9cEBAlFwdDwMoivLBKHwqMJmBH3RcKScRQ8lVCN+FknMchMCotam/bJoXMZPCafdQP2x1DEEXMlvKb8D5lALlSIlGKVpLX0fSPTynUKvXKGvRtVJrVZY9F21b3d9HaDw+g09TK/uS0eq9fms9/fwbYeQ0CRYChwdBFKR0hlKBVoVRi1YjGHOCw8DgGPSLgk4gEZhYRKRqOUTt1n0DDpWAxsZjnqwdXA08TXItAm1BnRvol1SfRI9ckMKjf8T2FEaUxlQm1ajdme1pzOgt6SweoarScTsw2LLatdbfZf7Q4cLE42F6du7hcPj5fPJ+AX3oDoc1BILCwRkTYq+xSTiyskeCR5m+L7mOaXEZAVlBO6eeFWUBRRElUWUxFvVeLfmqS6lIa0pkxbsv+05XTkdRVe3kW3r/T3wFDZSMVYtRO1vw7VHWk41nSi1VPtP890nOu60HOpf68M/rh2Y+jWyJ1x700+PDj06MiTY89O+vL2/hWmfbOB+bCL0bu38ePdR/b531fV78n4Q7/v/j78m5+XzKAQAOJpBCQFxIMh3PgE0QD9wv8LAe1tx0HF/z2zh66YIBckFrXa+pjbftBLGRdSaQPW+RDbrt8N+3HCJioqLiktK68QV06RyuQKpUqt0er0BqPJbKmy2uwOp8tdjWpNrcdbF7HDHEZxkmZ5cTydL9fb/fF8vT/f+Nz5CxcvXb5yteuaPxDsHrOiO7g5tWd06b+T4dsN347cuXvvuwXMv89lVn74sfGnn1smTIzuebCYh5IjUIJEHz+pD7W2tXeMGj123KSnz56/ePnq9Zu3795/T2fzBVsQJVnVdMO0GEctBMbqzCVFgUKTTLaRlWqplGEyRVbLRjm6t1fc4YHpF84rxQ0mgwBIBekgGxSARaAU3AXRITY9ih5LT6Dj6ACdSs+gK+leej39IuvaH8L+rAWQpVCRyaa4Re6KZahMng3z1nNwgzNcYsyxusPKMQv/cG2xvwBVOxVgm+x49vUvufYsrt7yn0cL+WKfGGEKIOpabC/oHUy3279uf5uI9r/2R9PutDy1JfA1eSbytIwkGA0jYTjixYr8wgifIO2mSiwFfg8Ev5fmbmznmzZ9zsy7rO5QscDmdxJLM5TcspkG/HNjlu+iwgS6lYIa9LjnnrpvBzMKizu7XXvhrVdee+OPQ9PPifW1YC8DukXTOiISfC5Obl4ePix+QQEhYVERMXFGCeecdd5FFyzhZfMuueKqQVKL/1QcDDwIJGgYuA+LeUCwtw8gkFbNW7N6qeKXWelL7ibeSBPpZ3UmCMlnfOpVfvUheQZln/APHv1ocvCb7A66P/WjJ00sR5q6BUFZSLpPvjxrVxZdDHScRFtQvk9zudnBcIJ9ae8TOPo8BoN1gX0OZ3DTor5vTBa4j2ER2u84PKB9nZ2kL6F6p7NIhsNxOu19Y+gAmyo7myAm/xZ4Rq7VgPu0MDpMjn2bu6R9naVOEgSBsn2vNKJl81adToE2j5bA1k4OEfTlvarHxIpPArGsIV7r7NvLuZWA9r2iHjqswFdnMaAhSWLfEPmJmsuG5Cq35auDkrCwhRBnu7zU4Lcai0OmBQc9isIPND4U0cTamc1xSZXTcZ+nEf4l51vCaLe1g9j5DREqWXeNi0KyijEqtSi/wmojC89zSE/kF4k8S1XnatZTT1Ej9dUKjTfXaBc5qW0U+iiFFalki8bBeUe6coTYERPpIM7xilmVZ1wjltKmoWXe0VYhmcuUap+QmwiUUSaDrV6Scc6X+QXAs492hbntdinUJGNsV/d0OL9ocK++ZHZ3hjwqXfK/oIOXeiPCeF+oSt4Ex6A6l9f3MkC4YskRZqRb16tjlwXnd3bijCxfT8O7duOXi12oYsG3/L44P37ms8ulPyXIRia6PM88uJPnfAUNg24GH6PxZftkNQhXlDOsIfuhZ9VzpEkFKv+CZT5HfAR/f4cXqFq4orYjpHvLlxWiw3bzSm5qOSjzo0bLYfLBCB3XqBN2wW75hQN0xq0E59sFGThg3CisEplPa3hGHEDJkK89JyrsqoGq7VF7w7WUXy//y3aDyEs74y0CXpZDLmgPTI/jv4W5qqEDQ9pmZub6Se4G2GmAb0Lswsg/ETyPOAm1My0vBRJSUvAk6DIzEpYSS4ElIMLbFRXLkufLpY6zeIm31y7vnp3RSsIjeb3JYwjVDrMx4xGjhe5+eTNHmlNz0uxBOhfK/I5M0NB1yVBoB/PX3d8c098/hB2XI343OdXVt/VM98x+dfj2PEz62W9xdVY/aSfa+pWI7pnt7DWSVdK6o5DPNkBuz4j13JJzZ+4y5VmQM4XFJn1uqzlhmrazLq9hSGnnOim4wtUQ9iJwDIV9p9bEtXC9f5DAVbRlJxHo3ZmdtfhBvYJj3BFzDbcVI6NzQ3IfkFoASg2CeWFYP8ZBZaJMNiWPrjNWT4VU7TDfYQNh61g16c2INnQQ8uTWwc8Cq3tXhaMzUZSo5z5b6C+JbCX81mt1UZW1SwaB9XwJFNhEnQxO9dXpmo3EmfKoOy2BJMeKdj0eUJpSjS5W3XhsNJGRYV84cvLyZFLqnYxojmV5/nScXJKzWyLy3aO/UFZaaVt2hKlZJMt8tKKUOt0vyrs5I1d4MFc7paZVImFFdi5D2jVa+9roA5HLLi3AiWFFBRtBYCM6JiSS6tC6sM5aKq/73h7qTwayfqIrus+b7yjQzVSOb5mM6CBNChiAgNXg7Chw7RGi9dDjkzeiue2xTfjdxinTAjaJ0B//m0hNpw57FFfs8P+++ltHSMca62N8dIa3eGvAz7jmKx1ie6lt9l0VqIwCBCUF64jKbMoa9Ey6bYg2Mx0fZslZPiKA1lZoOjq4SRoSMwcVBARjhuwsp60DvN7ZO2kEGR8celGI1uL1oIUqgTZ2KTBTC6mKf9V+BsKXwo6loc187ZIVWOo1lO8uWEM6th6pn+9zpbtGHsnkqBg7qmKlPiLE6iDSWj0uUZzyso05eQtk0XVImqMhLw07WakBzMNsyqAWog2kr5ELhK5jFFKz85i+xIApNBuFj7Dr3VDR1C7iKgEyEqd2TzDbaIhuKkTUpsK62ZzpEKAayiGgqqjsiPaYVZviWwZokJDcs+ZPwzq2VUdeGAQO+lufINX9meieBBjfnJ3hI168czxUI+67i3SQ/a4K6uvRn2nWCkStI2prIXNXPpInvXv1xhlbwIEZqbsXEp6dAPjGYcCX4Bm5aq9+S8YICyt00RF+NHVJW4NkbZ2F3DLS9vOGBD5UwDMhDHBAjBhq33DhrhzcjkDjNTTW1bvzi39gt+TW3tivi+z+2mutzHZtOXPXZ6tcQexREil3vZrYFvT56Irm72vCGRVD6f6WEybqV3hA73luVyoWm+ZmuGDDeGkiaS4ZjU5J4D3uKQjWO5QskhNb2ArA9J73Sw2fx314vHtgRx/sIetHegncN/fFYwhQAU4kP/Qo5BzwAO1NDUJ3fMDyOe3AHo74Lv/Ly9//AzNluqOg7D7WNYuAjue2YpCT7m3o2FqwCmhuiqOuHbTMNcz6ZaSdGPRe+s7sW8B3KuDX00NOuQRpcbWzE0zrxoDORLf6FZhFe58x4sRs1k8v/ETbQ4cJtXVtPBv0ZE5uXUV8Wgc6ujcbcTG842/MOsanXdT3dg5tS4DtYIMIFxyjCdDAXu83NfxCm+uu3DMwM9FvHZmzP8/qeD/0NrktuiGk6nwdkDYuiEK2FQN7jPiaGcUpZDwL0Fnv1j27/0CULLA2VaIgYYMqBE1smHOA4YVUliqyoCBhdMRYOqYPMoUyjXtq0oHJRg6tGYaGdL2dCxQiXfCOwdsBAMHq2Hyaov162sao3RNV1mLvoHFNIzlqKRTazZ+26Drj6R7tjySIk9SNYJaMbGEV+cMi969MC8FuQDK2uq3B2sjZvv47zW8jbLnfCyVv29/JB6i55FmcAwHgEBx8Ty54YUaVbTpdFPmTHY2e4N+Rrjwo/HbT2ZC3+UcehfxRa/cfzrjbzeUaI5OzcUsPHNPyyrlOmpX7BLOWXI6fGCq4hquTkaCWwyG0PyBjQUYJawEUAN/UhQyOGU1aDMGE+Wz7lP3BgZT8QSO+bUpLdHzpV+lrjk130cYwOK7P5AJRIqZE2aaBI1OQmiColAHppzbmTOdAxj8pFObtLJHWjayiaDmgQDZWjnbX6KgkcxVFg2hoHVN0F32j09p3YwU1wMAY12jjdeH4SYxjjGbHOli3bJA3geXyjYDNK0auWIyPOGnKcvCTNFfeRakeJWwtNrdBxoxPRLXukDtsHIirtvOpJrIgXdNsSHhvB/BiAv6ShDTaSRjXQgqUYz2nKiMEAeP3qHQ8JiGH8kcBSVK/ReTpIwkUfQf1+diYO+8fSUspcOv2pN7ZzEkWYbt5gdhJhoLoRZl/Yv/09GbugHHRGJzqamwwx01shnNMiZNB6L1FJVYNRAW1p64ZAvdTSnmt8ldMfbH9yz/6jK3d87INc1twTdwydz/hrNt1HFOn5pjmMA/0oPY4Y6/eGbwr23JaCDjl2xET+ZF8/blDm1ReQxrE34oeIyKeMrjQKgmBC6HsyQoaF/Je/gyIqWnJqgypJvGPjCO85Y6Fbobfw8SyptOimSZKV2y3cHKSFlJnAszUXzLyfwsdX7hMvgvR15lUYbTvhTFFvpIyQ9u0LnY6yJxWG2eM0tfYTkSUa0OQI6uhUL7TapnM80invmmA+NVyIjzfPMe1SOO7oKmr04xQvI6kBJpQ4P3Eq50/riciSfK+dkkAC/AJfwZ/iaTNWu24Y0sml+0nKSWQuE0lvnBWIu9e2hDIVj/XzE9mnzCA+DobvluSbfGoIls/OuA+4QMS7c35TpW7jENPKSFXKsDbPjboc5p30UL8Pl5apM9NfdueMtKxtzkaXuUX8vJcsdLlkk/eDncPv9Dr2k4EFWL5p8QMawse+olCwJVq8txYhK/eRUZMHwZpvYzDGHx+Cf7IGlfsHNUmOzxYQ63WHTqS+ZfzMIP0cAdPweZGRSTXRko81IoDWiojgyau0JhN3h9Ou4ob7DtLkjAqkDpBl57d7HVaeDvVAnhxq6AVY8ZLzdLzTa6tJFGTlX7rmNhOCZH6kpbsTf3EcjpQMJgMVs2i+80ryJuMBWenpc83YjSsydPvnAPGUt6Xpn9AUd7nPKBXYUp4gaza5CM0qmJCAuDcLSqaROhtVh+r5R+T+pLfAuSLlAaQ0kihjKWA3Uv+Pe6mRbpPRnLaV5eUpRE90BQ80BY+aEcY6lNtTrjR8GS6HSC5fZQMpNhccIPBpSF4qmreT7yIMsHd1UZ6U+4pK3An2sN1XJr+EGFSIsyfvr66hwcWvF8lJb9Y9gTBs7XoiJbUf4VoxvDnZMoaGdmR7MaDTy6HfUf+Y13mKQn1ZcbS6nL29zwVPlBsKq8W/WfuOG5mnGXd2y19kTHrsmpNVULibjYMvZC5PwmTOJgPi4dXJO2fHEMuJ8WvSbo+ZCcLhvnqD1/63fZJNJGosOAp9KqUKforqLpqju5Gr0Qs0JHs8RiC5OZheo4tvZGkbN+xesMlBreXQixvwV7R7dUGE9sICyy1rJP8lQ1WcEXO5BLfOhvrW3Fj/mz6Ft+onG06v4Vz5M1IFB9IsZAqn3tYl3anaNHOXBv4deES+0wDjM4JpmUKTte3mZpg3gSlbDMjcNtWKCH1CvmYSWoWd6Jj4oBvYP+VPegrj/na2EnsRpV8xqE8OGwIBvZDtJUgZSUN6p8ErzOcqWO9iS3yVEhHM9d5yvABvkLOFpR45ZVjGWudZakBvlzByvcAhS2DzALcRGZDgYQNFDYNMopxkx7fcYXiMNzZWHX8NNrrosfPRtTcF8p+Uviz7URzhrnR4mGp48diqmVDgKgwnazhaWR12RXTdwzKo1SjyabSDI+ET5WcQqVsfcwxorxDsw4h7hy+fQZiuQj6FFE8lB3nyTbunPmycKSy+Us9CrusoSwdSNup/iN/lpujVN3l/7PzPFLPxM5gUtKE71De7CzOWGSrplJdZ+lCRbxBbXb2/w7u/sbdfEhZvKS6XTyR0aPKJ1eJlBRelplZIqPXiwsgBecdmVxc2FbTBSaLtv5BZcX/tA3IzleWFIRjc9ro64mjkd6P9OeIbDPtGGTJKxaYzB3FzgrQeV1CzMpQkCCSlJPJqNzQ+0SeIuNyiFK6lly7hydlZf2VntHKIFxpx5Zac7U5UDLsECAsz6Ezow+EFyvR37hbVFq89O0tRaULITn3VwqFV9BU00nTQdueU5l8f5WykpK/+iXUcSBlLJXSSwHnIFXUXnDA2Q2pYG8YmV5y6h19K7arv8AzbvrkWI379IyMUkwpdBSS6bl4Xs/HZ+T6LIybMWnGFNS8s/VwXawMnMMwFxULdJpMNy49OWk4qmadCUkXozP+gyQ1eldcgoMyG6wXpvlcgg3h8rVHv2+npL9IVyRX56rLHWLAsmT4PIMuMydZy22cxdpgu0gubxOdwt1tt7He/781jhLpSGNLz/5Zkegk5FbWCItd5PFyOXVCsduZV1zsEpa4aRPkmZNhe3EgRQYmaQTSi7Mx7H0sSp+BQsQGNuEvwjHhqvmT7+EnNy26xC29FPz73tq2KOkPeFuveabNemYSfwTE3pkbLFVaQnn5lXnKDPx5wmxEb4mpxMEh3SfrNfmXc2D4y48RtRtjsHpbe50M6hAZDBl87lHQewHJLh2d424oXNWk53bIlTWMs/8s12d2VCknMvT51jNG15Ksel9+f7BeArQV6q0ZxSnFHxECCelgsjLEtKA9r/C3DqC8BwjXHqP9OgUzCAFH0b6jwC/xy1aaFwf9DUtTBMjvOh8ixdGmYEAGdZYYLBk5KbIRmvdQOqt8fLanvmhVs4HbpVDV0s8ymxg5D+qYQeuZEIPzoCFknf2ZJpYXRmm7RJPVVyQ3lfzHO5zaj0t4LCTU5oms5w7TkNlfq2DSvfGajlU77yd3uJk6tOeJyhvKwHnlc4LtxIttQG8D/won7tdFv3Lrmb78sx8vMq0XfMJDb4Yy3Bh4SWOZtpO31ldJCRWqzZy88qBEM5q7xlVJacI2RD7qD7cwEk4FYXxmzR8c6o/3ty9xOWFcZm1FYRj+5NfWRaOWqq1ngoSbhL41c0PTTFUON5mZiTEpVJ0D6eIc48XZUhc0PmzPqP5mfDR9bMfub+G7xTzbHLgJqwHEceyZbeGM2vCNmU5Ha1/LElUD/6aB+0Rwg+tRu+5Xvb7KRYJo8UapZPZlWGuH35UBKUibErEkjimN9e94bvUzQ0plhjqlhSbNyoBkwAEsjpI+L1dYRWrm2/f5KeHkwZCqei3SvwXtX1cQhWocNSlxYf6ZhrxjSLeoqpj+lTZKqhceCgkPJC5yzm24A+OUXmq6fN1xvbniXBxl9xblFnLmlcbDh1SDwPYB2YGmevZt65u2UZKfJzWsTvYnt01vumxtcN/8h/pPY83bb6837VV6lC0VUV+jPTEqBWE8yv9YXpkHqIdRtjbTplaU+zbtU93Gmfn7LEY9HLvMcRvpbjVvaqFJ0vBIGwHLXrAdZtuOXbpXE53YSsg59Nd+MEuexTekNhZaFAEF8eMf9QbRsLms40J3ApfIhZCVY3zk5J5DH0YR/sFCAlkWX58aFFnkfmXyiTgQXWe7aihteE3iEopxdZ+1OxfC6hSM8Hdsomkbje0UgJiKTZ3EpP8d4lgJNxiZGk6hitZYVmuvP8s/9ucJUpaczzfgG0VV0lQgp+Eytqs+dePIJQyXE5Ee+J48MvL35LNP4Dp4iF4xj82Sp+WroKC4xu43MyoT4xKMI+nEzAlxU5efoEChgs3ebmW6X57uRrncCHVNmIiu2k9yxMzGA5Sua9WoGhnKpfwXh0xbDr+Op75upFbtMGGzTNpqdF3+VdOuvz5kCWSZfF2qMsRnnllUTY0cuZTAxSvSKB7tre/S222NI2kpKfNWpqaWUyN9IA7tz3OpSZkcEOPT+/fbs4IABABKAwDYKEBVLcFXOOyfev0VMvaG39jj71qy/bPhm1AnbXB/sG9D9qDPds3npvqtV32s1p2HK0EfodhYMOxPb7zwe2pK0wBaQIv0Q7ga+l1iSsrElaTy56MEQBzKn+PSgJUpO7ccFhxIrc89uLTnJIythoqkjEaFgKBef5SRrmYXqqBGsQCv2D/ErWYkZ0HxlV9l4+kFWQyMeJkhDN98OMOo6/GlXvjjJGVoeDt8N4KYX0uDvSaHGgWmzMWPf0Xiz/kMPWbPpXSlwH6KvDRYN4bub11XoeVkPo6qeWYBqtEpoVV8DVPvquXUBdLd6rkJST0U6t9xDHPoVKbEJq2k/ZnjXep5ifwy5nBRmq5InRpOtneTnmn+FLcwEvZPizQZ4+LgnMtq4Ekd0lWHXe6v+spRrgF4/UhsckrfdkQ5De6HAJRf6NCASxH5ho74H9czDyb49Z5/PKoA1VAxDUadElkWSb19r7o9XPQ7ceyfgshA/VV5fl+D/eeVnzyewdLBhto3ix7VujtQ5tO1qT21U9kCtj8XVoq07hsJ4kCEc+m3DXn/aJJRNs5LN2Ym3n/+pb1vSBixzNx9FZGGcqcUmpPbAB084he5DMhF2nIBbAu5mxhyegwOtc/ho8A0KfnmpCkkbVHELin7WEIgahJpzL9Fb3MK0p32pxqfOpPgO/jSMeG7KD9rzTUgzbALNuk1Gi6edQvL5skSFWrUpLfxCMHoszgoR5yoSNo/kRKkgPUUyhiQMs4vqi/5Eqi7cFv5S4YcX1OgK/aASIcYYTIN3MWaLoxgOBoBLV68qY6Y/L/DLOu99DqERqzxZSGjEAlDc5o3sMehah5TaEYkIhoxE2leoZHAIyTInJefZi/S49YcKlMWM7SxSHVJMcL8K1Q34biPIOIsR1rb9xQHNue6c4Pe4hakdUmgbVAbViVMCcyvrgGkdQCurO3ijPkxMPpHL9JlpYxvecS0x6MD5yB37BUCgFlG2c1eVYV05Sfu7m/KtiPs5ukclzYrVOFomRoibGvNcSHtVbO4bo3gsormqZjP6iSVrSguLjZVlaSyF51fhXFh9B0RqeFgnGrzGoesBJs8Qq09dIzBs5I0ohJ7hhOuMjIKYWaEurYm3fW3icJP2fIY7t7wOaFcq0XKtsDVbzzHfbRIHypvrzImMTQxUYF3yizzVTwf/9w3O+c+P55CMSogfj7heeBVkJXqH/es/IW/7AXrXHcPr9snGn7uN9J48Y++XNpIcx4zYjPNJje6LihFuaSKdP/AN8P1JjCD/EUd8FlPKAP55CxhTOpDugbEf5xE2E9ib4xU0vw65iSkaxLwkx8OMvf3SuRnE1FbedInJe8rQtGLAwcg2gBI2U6DtuueRw/vT4ijhf1Vxzs1IYakDLRExL3U/Mtg+INVvAPZPyMwMV/LUwuah1YSjqBxlTxTaZXgclGSqjNWVKFg6zQhTBtq6zpVENP0AqMIrdMmvd+rDCU2v0iskPnIN+5Z2Qt/xQvpM994F8g+ZWpKBQxGW0Gn9dMoc2j03v3UXSOVsu2grQfBXt8c0Kv4MGRyjW88y7zn4yQMFcwQi56JwYCrd76FDA8lzxTbh806C/znKhk1lGaNyjR6MOXJOIx1Gg9+A0mre7CL6xFkt6mXYXFo5/fkw1gLe38H9lqsrXX/aGx3rFYuz5OrA2cJ5MOwSf/Ew7NH38Ixs2RJChVq/iA9BTh6GAcKxUmf88Xo+0jrAywshuWhZ5VbNLvJCeDEWJalzDAjYpZEYDZAnQMAQSrQoLIn4Ol4gIEnMAA8vQePwwNJeOLuP9NATExSxRkyJfMpGyf+lULOjA0kOvGMD7hEFx562FvfH6o4osF+iFVN2O57t109fnsdNKc/yFunx36MJC4/p1HIhXINt/IPJ8LuxJJb3YPHcYMmpOcl4dZ+lHd/6rWnKH/r5utHCtgFDeydV4oJrIAOa+RV5hsLk6rvJUp4bdIvT8JezX/HJ6SlUifRCF34qykYh+CLIMNDeB269gnwsD0d6WjnMphNafojSKfq40TZBDVP914Khz/pjHyNYooy07D4AJM+mkJr/ycUEybwP0pw0i5PHDOaUk4Y//oeFos4mT//LOJpMzts6olMAwHleUu4dRjlPUy49hzl51ctygh5igeaWqSUtkKdJT0fV/Ix1mFvGbympm2/QzIW6FTGQmj1FaIxV6vQu9tj4jTRi9uAuRBxGfcYlrgDIm3kDN3/C8q1Jv/NkGYLdwnpeuKqLVaGBDT4x2uboh4TkbrTKPPG3+Xy0iQoGNLK/B3Az1mGTXRxN+2igOMLXhfGiqDy6dPbEpOJyuTM1+HBNCLw6bMOKiQkRF0liU72pSnEJKRHDNApPl3txoL6CmblO45m/glyiMqg0CPmv2Fq7tmqPoZBpmMkW0x43D1xFYmRIDnUnoo9HHYoStmSWhiimOrVwG9NeQTXwBto89LoYsYGttyWIQeWFxAU64eYbBno/bR8F1nq0fyPwdT9rh6xQ/FZ2VgebtvRvSi0mav7I1fp0Qci3KiIWEg2FWdWV9CT7roLZw/zsHC1LoEQX7UecMR040lgdetrJVm+Pnju6n/SBc+/MB8FRjTEJcpXRY61c4yBuLdeZ2vzhaeVxN/NyIFMFUU1tFIYsrbREiiL7iCJmyGtNL0hWGxy/NQkBh9jVKonT0l8cYL6WCefjAPjfbHfTvGJgTuUMAmBxrjwlox3ES6WK08pUei6/t7T2t4WtuYdn4cw5qc0meTcSyA9Hg3XTbk3bdyhDyShrKAcj7CjtXIhRsTE7l/Ze8nUPD20E1dyTCpELHyS596CrLaUSYhQzFFUdehCNAqP9z2beaj6fz1R7QYb8dmkgxdrJ+sfIYwt0mpyUvqSP3HckDgSjkJ+gJkSjep/pex2oVQ6sfBpSq78uGtDbuk4G3+KdkFUJEI35fK08ecfknKrfdw/7SiNlZnA9ZnNzUttA95RXsdsEq6M63Q4sR/xXV0nuzrT/XNn59V9o2vU/nq8kcRDL0VI0bOJPIYYyhHTPGRsqubQDyyuEirUMibGOGKksM61e5AaF37X3mgbf2HGGrgKsZYNyti0F/OIKWyGMj9GKrSHycMKQg4eyCXISg3C75z4sVBXJwD8YZFT4OzZK6+vypSg9wvudWWsDr68KkbVyA8hf0m/u5Bg3xYSfkVPcQTsv8MyZ59pz9o7ZT6r7Vz0UqqSGL5Wy7qYicvUxnkK95uqRYF/xhuiaMNRa1nV2PMpHBVZK1ulTLPGuvauUrjnUzgrTlGCzU17K40rumOQbzARmJ1MiqWvVOO/8OGV02JMq0O5y8Rz71jW15JKWNNnLmuNv3NmiA6G1kS/v2WLde39/W2IvktQlCDijQFKlC4vM8vdUmZpRNZlEhbD1EfFLCxNYxCXLeaiY+VXdEhX2NM+5t7+P6T8JD7M3lEwpEw2onnvWBhSWcyiRg+1+5Bq0ymet2dcFEy301mrqi54mb9mFbZN+iznbG8oeFWUgt40t7LgJoLxWSAhe4rNam8Jq4LttJ3X6oIIqHwSA+MfHnhzeike+jMD/H9X2e0CZKFXKPdwekwmziy5xyssFHkOXWmzXGk9JT3CuVkafoGJ0i4W9+0XmDT8LL6WPTtaPia89y5X6RSbyxZKJ6Hh9zvEk3VHh5bGn5nFYIzhh8cVIEWp82nOtHcUFXoFyHi2MP9N5T9zwEwcvJcsPnQvkSfQy2UCLS/+7uNk+aGdJGjoDmApKe5n+Hgo7HB/NIHfF1xLbb2a/J2VcyttE81NS3tv4413V8kGhIUDt7QpuuXpPpndSJcLoW5NILjZTk10fO7Gk+Jn/FDrbL/tDBFz6ABgffwXmRz2D6qnyFAumWvO1Lq9uzez219gHBvrqDySGN34wBluz2R2oX3B3kQf8iWFlGDZ+Yi9inTfkcPD9V6IR7mjDviN5ix8QFm/9lGuI+TrP4CkDURQzCe9vtVOp3FGzm1Pz/OU1TIUiV9pedDca98I0waTsQ+yeaQDXLCCT836YLU2jSKRnkKZSymkz6BgQ9eVhzDspU0k5j6uQENNnhum/EXJsSX9yZAYCxNTuktKjTRYfbT2zAq+YcBb+hLmfhUF3P1dhLME/rqRvEUMPzpyVMY+dOTgERlr6NhTcUrx8Z7tcv9MX9uVU9C6SIdGZahV22WK15vQ71+y2d9HhrvyMn7bvaxpM7fGNPjwXr0/whPic/cMl6SknggUUTharyqzO7Ay8c9tGUxguFT36o8CREOF3099vnuWJN1n7HluMSZMnVAjj4mEQZb5B/7L0WAISZDf7FU0Gy6Ahs8GVueBNVe4TfrpKJBDBnIBIAkg4xYvcnjkDsxJqFPaDTgzJ8tuoWPXT4sydcTFwtOeucT5NvgwE/xlYxrCoDmZjGYswdtGGvDAzcq+cSW6h8b7lOmXbZuCUvVcvnuGUTEGXqj8ry9bV32c6Mzvo7FtG73z22NpWITkzm+OXtDfxeZ/Ew6mV4CX4o0rdlDV422XjpEnKz0qaGl67Lgf9WcwfLkc9kN9qnvPpTAi0KeP95Xf4/dcyn5sHyRkROa1Ze8bMahxYbrK31dzUMFo2s73+Q7nuKnWzao8Vt5N0rbQjdOPZQpESOcuJ/7yrdK2zH9P75k4FF///+LPPzmJzedV2BL+iZr3A6Xa0Ju35NzyxseH6Of94btD8Qv82fCDsgP0+A3stxD79Xuh8KMYecgZ+OosVFy4GMnIO59yVHyPJr8KPfd5vk7WHpQC7uNesvqq1brVYr6gtqWMvnGh7GFbgQnQJq7e0XGKwPoFDwGdwrEp3XWhwT0jhiyUx5wrNtS5OXe3gyst3BMh4d3dYKT3HueY2z+KziP83vKzoz/RL4Gf9wNz5EWU3HHly1fQD2xXOj2npT/lNsmFvn/+WEnaM3ooNpicW974aINFRTWrrTSvOyY3k/NgK0eptEpDSbhnts/UeJAy6gjtcdAlNyefr5VQD1uUGeH0AOFBxzzg6dfK64sQCAQCEQIpiWE7hiXPWcfcycQSExMTExMT521QUlJSUkpJSZnL41VeeeWVV1555fUl/nujQ2nDmrL61oUdvNck+dAk1WCRZltOf11sH79dix1lQBU/HYo/aI4KDRUcUTDxgc8ZetWOk/ieqbhwMZKRdz7ZMcmkp6MTMKvNSnQKAoFAIEQgEM+yGPZ1g5oNz1TQD6xWbuXCL5tFDXy4Rx/NI0REREREEhGVUX+Y+EVycNtjvoy8N6hcsjLbwFrfwmAwGAwWDAZPzpzfBqj8YgCBob5DYMZ9kuGCIQYGBgYGhjbe6V5tA8fOiLnGiil2NAXErAv4OFAHs2Q5tjEhzwE+Ue/7YTtwG672Zz/l2Q7NgBrUlMgW5ExkALN6QY7xucUwYTAYDAaDrb85Z1/azVAoFAoVCvX0A6PF+1Ctxu99vihKSe+SOy2CPnipeosoXkpKSkpKSkqKeHh4pyFRLOMIEQgEAoHoCwPjQ79hsTCvx+PxeLx4PN6MDSQf+YgIgiAIgtS8VGvThHC4qvphP4KtHhIqyUMpEARBc2Sxs+/PLUzEnmaKUBwIAAAAaJhRdRV1odbnOt19sKmt2rzArN2Pz6HI3xgOIpFIJEok6jh+1x8jZYaNaqqmqdnEON1N09BVoywyfzzLMPqWdR7JKlwwWlybYzMVnJ2ybsICAAAAAqABQd/Da3kr64UxuvD2rbgK38ixpcOB8yzlZj9W+qgDFUVRFBVF0TUHezUeKLfldhaWfO+SCj8sZRwFvxRTO5BIJBJJEul8EkONwUU1lrcZ41uv0+9w+Vzuz2TJZDKZTCYfrZPVst3p5gqmf6CiKIqiKLrv2I5oxoGBgYFBBgaGozlCQxELp2YJj8Y5stPDefimt1mcWTr8U0j0dC9JLZ6YJI5vDGr7QjRQSEFRFr8pFBQUptf6A9Rw4MCBAwc5cNCHSG9lnaw1K+OU5j5rcd8V9sR7bDfXxSriRidVbGdHwfXuacJ23VyolKPTYU5GlY476Ojo6Oiio5d6FyjYc6mzD4lVx/+kCH543cOKwaAyqzJG7DQ0gvoABAAAAAAAYPSJt8YqFhYWFpZYWNo6E2R5rRVmN72KeVfyeJ06rXyW3f4CpXseY1aE2IxSnU9VG6glbKn78qI5FKdGdR4qQrbZS3XfgdmnQ1KpVCqVSsmevd6joLj9m3gC834sqCf/p4Ch4cLhcDgc3ufmT1wzUHpf76htteUTIdAwP/QgBsNI0ktxAukrAjp06NCJhCQpcjcBFM87eg+80HOk6tIydQs+BlI7EqL5B5VSSimllFJfuxQ9evTomYyxOe5NpaKHo5W8kq8a+Jp1yM8/khAuSBwajfpxTYiOFsuSk8OCBQsWbvtk8koAvSsLDsz57ZpsoYItQ28m2lFgM18yqYmm+YekhemOZ+A0ldKVBjURrXsjOmCKVGSQ2EaZL+zkYnIqR1+Z+8pp6rqjJpmZAOrzCrkuCIIgKAj2UY9R8yJTs/bA5AAAAIAAYHx4B9P4zzYTJoZhGIY5UxoueQzzaUREEARBkL5sfDtitUZBBQMPbZL0WNVhmg8cFweGq7Euxp6D2iXiEEyj4Rj+MbWLAm5bqMCGWsUNDMMwLAwPs1o3sqRSqVQqVSpVV5YEIUEQBEGcD2fP7qnaINpO6DKANNSpycbh6tZ2u5s2Hl8EQRAEEUHOi2kdt6rij2I366YjmxkRxZ/Z/1vbVjxFHde27KTowjSiNdFW9nOpOwjHNsFaD/H90paJ48+d4eTgoP1HEAYxIkwIEoIgCIKGqb0iwDQ4k6GlpI0VU7M0puisDZbTZf/ZZxNIJhkZGRkZGdmz2KM5ROiWJmi5VC926QgICAgIJCAgmFWdOatpq3N/WqyyOEhtYey8EwxF5zWo9jH5afLHmZmLNE1TIiIiokwLt16Zxhy/ylhdWqdP6YzL+cd77ANtIjCAcTmcs1BUd+uyRfBGX6qzqV1dXRtAZwJkVIn/SEQkERERERFRP2I1Gwtosdu/aoeHPiY/+T8UMRqcgokP+rNRkV7sLwQCgUCIQJwXfLetaJyDpe/PlQ51p8RN/jOSi22VUVxw1m7wiwgDKE67ojCPNA54ZILaJrPOJFdN7i5vBs5NYXtSrWN7zq/yM1AK/OxL/LaQSpWBJlCQKBFNrBMDwViyCYj6otdcLGJpp108B++cFkhcXZ21c6CU2Tc7li3WktWcNwfzuPKJgSEIgiAhCHotZ7EjjTToWJWdgWs058gp4/vRPt8FP+pUdkzyTqayXx+YTqfT6dLpuu8UaN2NYjdvQEEQBEHQIVjyxAJN0EJs4Q8u672Le/zjP1/8/eI/YoP/6f/HXKrrf+wwGmUacQQJBAKBQEjCGTKrnYW48dvFsWN2M8s2GGfC6g09rJ1nMOKtH2/+1ACf/gnyBUEQBAVB0Mh4H2ENqlQqlUql+upEXcp0mq3IXPsxurLrAzRQcFkFdki6VmmJefLkyZOnPHle51nrR1GfGiWVTNNMFArSLgoK7Hw2R2RkZGRkkpHpbAbI8O8fbGLLHrTS0tLS0tKeb11Ptd6wlv1rVQlYO9rdmB8P9Ij6BQkCgUAg0JICrcxtFt0QTAng7cLcIgyFK5NPhszY03eNE94A/dX3rRft33ozN+vUvkbt3jdjDpBcwN3GImiT+rv9BlzttKdrWTbr2HXzcNUYx1pUj64t1HyPj4CWDkLxNDJXDJld7iV4p7ShpvrmDZpoaGhoaGiJFuKtcdIkG05lSzA7GIZhYXjAMpky2ZhMJvM687+jPUijSYNpNBotaXgXgu/54FHRMnymKIr2VHu51NsuYpwc2FhfPiqtTEtICIIgKOW/ZtbKNMbJ9WNaEAaDwZDBYKQP3usUZgbBqJdbxjOGYZgYhjXkUFzB2wfb1Frs+/J9lrvPFIZhYVjz4SvBT+nnFDFlsjGZTOb5yfktYWlta4Es3VfGoHD9luBx91m2S388I/c7ecpgyEAYDAbjOuNGP95a4zeTZXVEW368FHUwFmbe1JsfYcbIEuQdt6KrJjjteRAcHA6HE4fDzeK7WWHCCotddr1Fjt9hA2iJ+4/8SsY/ZiruQkLGmHc+2WGAthH5A5lWRzeFY1d4/h6AK1QdoD5phlUnTnXkCYbSfVWEMl6uk7NNiHo2XH6kDTSCfc0FZICZ+/e9W+ymgFHSlZAdbS0VnK+ITpAxIXPjnkLN5YNKIIcyFHs2kf4e0TJRdEpf0dsMSkocvcFhqWfl8oRypux3gYKpVh3qf82uYbZE9wsO4bJyBDwODg4Ojjg4xkYx+KlX76+kh6yeihNSR7DF4XA4HC4cvs19M5RtYIX7LXaVccfU4beFv2b1ZxX3Y72uJjLMhCfAiI1yLkDGgiBLKWx2EEdfVeCLj4+Pj5/y2TbwO4DVJT8ZF7X84sB0Ckx8Cz2w0L4oC9rCSdQgmrgvjbuLdLjFZlvGsFG68xZQezlTo32LSIU95FVNR+TBGc0U8aMkfijQzN3YomdgewKprzASEhISEklIdAJ3HEk0CaplQCABAQEBAQEBGDMSjgjCfvTzlSSkI2kZPAcFDBhHiSjPAPwRdaa8Hte3w0bhRVzVQC2ZTkgeqxVbDT6RqMh3TkSLSDBH11bXs3Fr8oyNg0ksJUwOSkpKSkopKSkN0X5dg392f+WntLKGalGHWhPnyXFp2TZa2PYSSy2vlf7FOn8rtV20uH+hYTOGjRFxQhlWgPvH5Cf/BxdFg1Mw8SH5PFWyuivvwzuDUssNS/eyrUe2ph5NMMzjYYAFg8FgMFjjKV3qkTNxRjbJ5wIDnVHeQy1JpcYnEladfNgn3fsvrWoM5imYIFT8LWBEFUu/9XJS6tgHCtkI9S8ht5A3yEf9CL4LfnkNyzuJpLjdQaZEii/YaYeAD0yj0CU62hQVaPulAG4dTPcq4W46sADWSW4RhBCZilFARKQkCtM+IRmWO0GaTNgB2LnG0dD1Pmvs2E1dQORtNdA6kGBBYKjqYurmdDVu5XxIDAAAQAAEWIy3jTH2vh4hhBAJkVAppZRS+n/AzxNbS67efJtbuZ04NnjTOYve02WFQgghhIHJYyKEEEIihP6ikcrv+Al/Q55k3xGXvgtzm4TceBqVRZ/SCC0UxZieec79gzWNxC0QznhgzNo2ggmnXMdvS4CuZe2bySSoQhOLnASijGhqb8ejZ3BTuYEIpzxw/4re0EpFAti5P5qS1yPMgVrMXbQfiPidbRAo4/S0b9EjYCqtXGFQxRiZBaExZwQAACAAAUcfNOXV/YgNORWfVRPbTmpDEpwW+/Z+dvlwLcLSS9fE0oB2hPi/MkKvun+V9ghO3mcjG0mcjkFl6KZ0vh7jwgdGNVe8jmAYhmFheAOHx6/Z547TITHg9oeAKy4CFG4TAka4Zj/ve+BEHOTAgQMHDhw2HsDFpRgHAyYVcS8XO8UOC1qbLLMBR8/hwD3lVkCKRCKRSCQqL7OTVJ+oteB2S/hPJx+Dfflm/ta4tO0cQeyOlCI0DFeYlZVLr5BMWw4+jC9ws+sSWDdL7hgHiNBGE8tW+7M0ooDpoJtlarsEX3ZRD77Tmy5dM97IULjdrX0J7D1B2Y20McHdnd8yZzcBjXDx/GxduHDhwoWLXLj0L+Ouwn5oyCpxYREssw5TPjM7Bwr3Bw8ZQIw/TEG0beRtKd5FTIfQD4/PIAMDAwMDA8O8KGdsW8RX1hiVVFRUVFRUusqcfvfr0YvWu7vU9o3joBpRzQfQDBRKA2oHWsKyvknnep4gObnk5OTk5ORX54POgOZfWzU61iF/wJgalYjjDVXmQM6Iurqil1oVzo3wCL0ye8bHM7I6z52Xnonlawaipqamppaa2tWpNbMO9vQUHbDQt4tFAqdyMQfOafPxoaOjo6OTjq7f7Rj7lEuxGK1i3tbjuVtvIVmY+LJnj7c6FXEWyLc3o+PlbkGKRCKRSKSWOw6LPMZCPQpq6e67WwXHfvqE5usWKhQKhUKhmobaIrEA3QUZEKQKX2QJjEH3tAYLZZOII6e3+0ilvfWnZ+lGj7QDr7LCi/dXs7n/TpBsaxzn7e5Cnre+f4FiTlrYsZ8pIGPHLJ8YVfbLsVJNv+n8XQiZdkuMNVpNMovRZFcOsRnjO2GNgNvpARxm1gGmmJiYmJiYw2b8bhtxmcKBMI9/zSio9qc0GtfXNocRvcrrgmChxIdtFifaMT1iGamwK2pGrbFYqQ9fL7X5LfkrXbXL0OnOGrL/kNbRVfeRUdFLaQ3v1zQcY38lodE2/CJas8IFGmQRZsbNf2Qzp4QKs/rW2NGQvaHkLbZhCdtnrQ5HhLfkDxLm6vhwnrlauXMVScbG1kUf1ORiTuxKLmzE/2v9LJ5jUnMjeO92g9/78PPj/p/sRcHGxsbG1raK7oHK5iLDNNyqdPuJDNHglR0CmivWF444ODg4ODja2RTWWYkg8ceJ0m+lUl4lEoYvAJ3iffOkQNBm6LOa/UXCsxPF46N8o+iLgR44Zy976KWnp6enp9c94AGo/BqdshcC7hQLKeYpTlC+rZ3+mFE2RU655Y2Pls2Qw9LiY5dCquX4fGjIBgU6ZfBaPoMjZU2b1sRAfcrZSElJSUklJXWpap+Kuryd+91uj5jjhIBnxTUcDkrs075apEvFAWibnl/rKL/vHxv0Y2LNP4o4ZR2aIME6lR7pedMFBGyIDqdR4w4s6MIgChx6HtfpquOU2+a01wis6SDRCfpbva/C8YRi39BG7Cy0zYFtRO2cn2idLwO22NjY2NjY521/W/uU7KBjzj8MPQnaP92m7FR0xwmvg012NLR3Z0nf4JV6W3jZGJtiDsXIUevjh1SnVONe4qGsb/IhiabCfnmSdNv8PzEyMjIyysjI2CjF036Z6HThuoX5K0+9NUGc6c1uV95v7WnT7NjsR1kkJJSQkJCQkFCH9t/bhPID/pq2SA95bmJ3PqlN+tNFmsh/nB2inbuY8+WqHbsMJHpehFky18r76K3075ke9pXQ4ih8FGryimUKWImSGFHWEk8H/nchtOZjs5Wbw2HWaTp1Gaxm243m6FTbX9CYnkMCvkpTnCtunPA9jK3qizf+Fx6OGaEIkqoVB0QIsu8kMXwdb3iT7Ooff3NTamNu4xU91tyaM6SPzhzI4EHLrLxxlEwIznCGM5zh3DzDefq8Rv0rBO7nq7siBt/kfOYUSu+IQI+ihVlsJEcQ19ChTE+NE7B22KJMkqxKOdxWXPX48OH25oBUCylNV8jyCI0nIb3TowWop8XX/N01rmo8i/3A9NciWcJKmty8fQnptM0W7W0MRbOAAgoooIACiribqTiWm9rJG7ZA3/10cwtZsK9idsAKgrqekrz742K5FsQNxb9v0TuloYe4no8pQRwrogBChOOSstv4VXNNgUni9RRlWEOxuaQro+b+8GpmbcNM44SNM7NkBynq2pQ67TWmzil0rkjV5wmwB0rpeVov5og913FNil0yGdZSvF7SciZNky3xODWk/+i08urkB10XTGBQtXodBe5whT1YWuaMa/zvIpNXINcWAMXK9ZBJt0Z1s6WZOpw2pEmC7Ei/GLTNFlpooYUWWtFOYePuVO7qcJW7fzq2gypIq1Ed0HugD7uduPVqbXysuiEbVufxsJNhVPdwjf+FqSsOpnwTYE0vaxgT9VpuH+QQpzmcFv8z+CF8Wco1YDePXQr64Hq6DRJ5Zu3FWhE9VhTQ47IdUWmqFxm4baYaJCFm23y+roj4mFE2RU655c1/LFTDd/qXv4ZZC9s04rd3O2ZspsmuUhaCgCiJ386I2N5hGuhSqmswrABnkFuFw4WX/DOFw+EJ/7gHRVLCvU+kvG+eQp5N7tA5IUE68sqt/pG1d5LjmsyT/Dye5Zlnnnnmmefw/MKMt+QSL3k6xf2tVm6VkhlUe8FQZMQ56W/+209jnF+PEydOnDjJiROnL4H30aTXBfLcPnukOP9QjcexnczVyFEErWd5XyMw7lHNF3Fu6IRlzJTza97WE7MYku3OLdwUGUMhHDW00/ckq8Kz7hnfrvyyll9Jjp/N2/m/E2HoYhE8pnG9zUkrlToX2I6V74vkYCnKqOHdBtU2Oj95fIXelHbiNfMhMZHb1vfhypUrV65y5cr1aCrLVYIcqk3/oe8r2AM13qhU7uWee+655577cM8f715Gq17n4/8/8mvjFRO8aefkW3aklJ1wR0K0HzcXo4yMjIyMjHo0cZqEdKzSLYKibd5DowBbAPzEAbnmEw6y+jsg3mhOexkNa+8/aUeVLBzLArwUKbNaVhzBPKXo0d/X06KqiDIUicB0YcL6/5VrAPfKfKcn/89MMjExMTExhUnu34InjvrmB4/ZQFH9oGWFBiWV0iKlkg1Qi++INwEgJB05lKC0ZATkfUXB08BSXLXuGZa+VZ/S6vd6wSIaCdRcfzUOqBaa963g2/Aai/bVtNv6MWledX0NYW2NC5+Lr8s3zlB1vn4RAeKPtt70XtFL47X5S0CMOvAYDxHnVCp+yHX5ke3ergxXy7CkuiudqtzRF3hSR7TH2zwLztWqylUV6LjJ+DAHK1tFKf+k/raBZoTg48VxmJ8mc5GkbBDkiahVpnZ21cRoPhe9SqlSfByddDD4rkniKgiYlNiNvujw4iQsTuvRwGpaYIEFFlhgZS0wgTCpRuk5MVm9QUaVTlGuenDNDTETpIxX4GLbmjf09tXv2qzE9yKvMrwH43DKqfPd1uqmVZDPMs1lyMaVxiA7qJ/OzFGkEFzb+G0h/saRsoZ911bGTS4UlrZScca/B7UiF4/LykE/cI8z3yXrKV5xYuL4bmqxZf9n9IsNe55uia8bxF1NjohbEgkuekUZxm2hGkGMzKAOymrUqOdElQmGqtmP06Dm79CaPKz/HVUe9ZR7roBy3bzETHkFdZT8yliocmLLVF4HTkh9B1c5USXipn3L23kVowc4AsXLyCn1ksxvhucmUj9bazNBG4c+vjtKYuL/IqPJqd47c4XijfEJfdFSDmse6ghzb/oFEemNM6IbQPfhfgKAVICr/mSN+uuoLjNTd+uNvBPdLyduM7dLNnrobudx/r7csMYrdAtlYWHN7GXLZW9U8flFqCGxCPqimt+rdj2ON5SR8uRlzsvfb4NXJbYPixeriS0SPIvlAZM3QaA4NgN0wMwRAQ2b24835VIeFVWcbGWvDQzZ7XYLXC73hVfIDR5vMnO5gQKFCPgL5+gWRqtcTiJYB7MYtonmb/Pr0oheuTdizna7jy0z0CC6epO7G+DnmBsIcPjq3EzKSTcQQqo7HEkdJYECQhyWUwReG++88ZcC7ZgD77iOHR24DA4Ut0TA9cIeI8Xd0eqAuw4S5pnN2OU+epxMK5lDxvflhBtgY+hSIHCLHUSneXFS2YNMUkhuJH1E0Ok/zFdMeXIh0SNVwV8AR+K1aXN48jJT8PJLDIvL4Cx3R9jtYEgkXjhsCgAGtcEs7dIOu1DhsKR+InhBRTYbQLs/GFq4IlwM7moUoDr222Zc4X55ezNF70bREG/vxn7bKiC52024IQCpoyRQSAhguUTxBX7UGwKehCtK4IHrUEFgPGNakTyKGCvJzE0CCtzhhwcfG0s8abZ7BXDBRx+QnSIdTBc8ljhXeKal6G2/KIaQgk70EguPSEbAFfUJURB+mK+48qLdi1SrxZRUtIPsMHfSYJDn9kI0w3ZKogjJXEgFQ3dUt7BBii0vfUEzXEm4g7GvACJ8xm7DmSr5GDK6rS6aHyBVVAFRiMuQpAuUybusAMOqRNeF0I2SIZjHz+HMVnUg5gwFg2+9+QTlVRrig9NWfBXcsvs14qwsSIjgdYSaqFjGihDQjS0JOB6XcPK6gAQdDqJPpnFCoIxyl+CjwkjlU07RDUYjeXL4CKLQ7b0mMsQQ5LIHJwFiiFAlGK8aLHef/KsSdk3VcUqb5pCMxnApJMa08WtMjY80BEsiiS2NW7rT73so8NDHnVak7D6A2STHYq5IyXTR+llIFT1gDtKMJSEgqRjQSdvGIqQEcbkRDfGObOw340S3mCTYGXaTePMFlKdCKB3D7JC+wYQOGHHKgQinMxHKoAAmMTYz8tyyHKmpispA6NYUICRXQHQJ97YUAp1FojpRnBhUFLFAREV40KOL9u8KNnapWpa5OoLJ2BvP+pL+BHF7lHGxWICkIUll49l9coYhMmF2dLwzK5LKq+FwcFVXvfEiJqdELpTx4SOZ6XIVMirozNJdoTxVWRHVzoqVqFYCuW/hSVHJIxhChLt8g6wBMR1mTGeAoVSkRwKZHWEhHsz5O/Sa8Zycu9S+i7jHZrKUkbptO5JnRlVGCxeLJSUZklTWQrs32QkNnnanJiffVZ2lKncDBLvHKbN7MSvgxC6j6qub1IVANCs7sWwgMuojXHO580Kdt2gzTdXMw1wKZWIMlGAWEH4TmpBj4YEZexSV0ZGNbLJqq1ARX/S+IFzX0yruU9WRN1F0dFY8DVqpyFJnaGAnUWMpWHZia0J8nPPlCIbATp86dc1sTfTUVCFy756dOvslXOw0qUc1/csgNMNirbr2ErhEZuc8auq87WFsPebiKnP2p+pERRW7o0vdZOFhfGylOk9Wz+yIzska1Egzp5ud5AbzXAuDjZ8D6R7o29YPS27Ofoqfo4yKnOndbnswaojikVTWoj4xtXeiGwLhkiQedm/RVF5tIpQuGzXNS7mKLJknaudPQI21u/KJ6TPbu0BN7U8xci7t3ICnvx4apnvbbraI78bJWTLj/grPRGLqJkdTOZHx+9vqZW/E7keEk+ze760K1PNrJ/7sFBv0VzRP7Wz9mWUi4TPMOTN3OJ+Odg4qa6qn7TYGM4QntKZND+d8xEl5dQjuT7Twr1pNDm5TT65in/3XCuZtZdQf1LnV9jZQb5/f4Raqdyt062zNm5s9sdwNO2e0W9uxKw1/aXTMqNx+uL1E6aztm/Uucteq3+JR1ZZm7vloCnP1Z7E+izuU/aVWN7ta/zvVE7HO2U+YPr2p3LNbjQ1Rlkd7489x5vsuDJGyPmzY4RPNgkOlqwoOftpoT8BTgLssUqg45/zXC9nNz0H7UT+mlzo7NxcHmX56iY/uvXsPc53kLMJRFo7jtyv71PNl6VafprnlIL0Rf4uvmU5r996f3KD97xmHfM94uN34IydzPl91LbUvwFXVzMAb4nSisZEz4W5NlKcGh3776PU08FT21DXaT1zNyvVEtdgvuQnPmbeGuLe2s9FjhPdZ+etnc7bZIua47D1Y+yj+dnHFu0t1/XUyc5K6darOxNzEtzb1Vu2h6SjUT1ND6jnc26CfQUSzry1EbIE+XaKk5HOAmHyrS3X+klIspcV2jATWGE3FhiiRBzxBYO7ZbF05qpQZOL0rBVMJuaSS5AIHIzJ+zcGrNVUFvnL8Ppa8y+I95mtaInlICAVKcUuEWBphpgwo14DQRIpgKUwbYfHRp7QABIjOTaF4qQC9bvUQp0N0XdbsMqbGCHhN6FwpkvOSVweMa1+XjOdqbhFkRr1coZayYixQ1m26GdZrzkCUszCDQgkgPKjxAovBIqpu1DskiyqrkRUr74kkc0TKJckVdBGrrjH+OZffGbX8yg0EIHwxt66MCziQkDMXKkTOQQHahFGwsC0r52lGlZFUTmFaYQVwJccCvpRlgesoJRcfQwFLkOISS1ixwVB4yew9kSE6jK7+ceMHKuTZOs6U7UjtupSBGBkoUzoPf6xxQSwiiGZaHvQcAfhrUlkTtPYi25YZQt3cKCXeixgqsKBUXMBt1ky/QvgV59Sor7zgWpge3ceo7IrPtiIqCap4nynLYcpGqM0lxb116crS7G4msbBL8YiJcnBTXFl2QnSHFeUGGcABrRnxmlEd6lDkuu4YxG+g+y9CZE5e7hn7LY/F4c4MlgUFHrdwA3DMZMbU5MAmSplfFOIBLMoYDztPLDOafEydMvm9WeeazSgqOXD3Pnuj+lf+fVbb6qsgFFHlixkSVPUYsCXmKsbVQkBGe2lVmnAdHiq/jGmzqY72Wfn5SZgIAwswrizOoTuFhWOOjLNgyT5LzLCoyNVTjVHVCYgXL92gvvzJhDxXj88Kz2fZnOdTNTc00fL5c33m7FWlNZGxDY4aAHl3oLAFbtvn7X4n3KMK29522/VDa1M7loMN8cg95z6HVX0Vct8ZEYbAxHn8el8h9xp45QEqXZv2FiMp1cfsNk37HnLXxy7RMGrd5pflbQED86palKOq9+zvil9BCZPSjoQY0FJW6qQ9SE+p1t0sGK4i/f63IiWaj8+/JN2/oNMHvbeKg5pW/PKL+EUpoVad08wgqJtIYzLPBvKK8gAWfBxfjc8+Ez6jyHGOs4Z8sDNQJ4UKmgTi3vdz36rtr3ZcMCGJLDbHT/eEuM9k+Wyf2NrRt75vANZt++o8xjnacY90tC/vj/1xzO12/nAcGxrWmnrnbrn3GG39skOVWUq3u5pIklGo225tj/V7KGXO+xhxSGpt/+rfOAMi332v7dH1PtfYv5xTDtv7Jj9+l79jSXP28xzjfr/VLTdUNsyvi7uFcXcptSMhFFsdTaE00VjXNyiVNdt6AZoE5JZSS/612iQ0PTKLRHiKKJlhmWWcLqslkmmDBWZYsNUKYcR6JYgiWJhFLnBngIGg1KiDFDRDWVUtMc4xWuPm44/RR61LK2yKTYOgREWxLJpNxu+PI8wXNd9sKAVClqRY1jXvXrIGRcapxND1uo8WuKW0EIhhWhzG9Zhvl5Q2ShFiwNQt19DcUmQIakowKmuBnJvlMNTIQ8R54WlKvKUUUIWEIlLJAtwAHoyJJzK9cpvEnK9yLPlVWG8LLdfNGkPOqGGKabVJMcNyskZYTk1YlYaOIaqopfT2Eozc4m3TrCktGU4ZWy6bxZ5RyrIqZzjUuEIrxPOMmWpM9YroLJMycr7i1ZoQPX7i/iQcOV/UNPYz7hYrupeyMlhRWV2es3OJ1lIyawUP3lOgflpaiwyBE7oCYoG77grmmTR9FOl66GVKvG1tlBYby6XyFbhj7KOvVieQPm3wiR8lA31/lyLkIWXYiqUUXlnpbJ5TRe1F9MbUV6ew29RenneDGwJAH++EAIghzlKpasW2Sq3XbHVSUqmiKRXbEdo0aaPLWlHPpN8IXxQAg9Yb3aRC+PP3VqPIrTtEDj3rcbWRJ4AmUKeguXdrexvjFEDFaPRu6CU0qZohQ6jioDlhWrBxvBeurjibIhvjFCY7wTsxDtDSEHVsEsA9DNPQfwX4JKYvm2ISJ+IOHo1ZXUeXiYx3SKtovA4+z7nm/qqP0INu9ymO+mo/hrF1bujvt7u6ildSZNpgzQttNhuxvjQ6FUqCDN9TTklGoMqYOnIdUxnL0rkRIAPS+eOufvZAInfvMz32JzyvU33hHGl5MI4+uFvcbZrMOdP3APtp0NCAOb9m5pwYsBCHw8P21i0pjlHkcGyPLqZ3+n50PW8HgA6QIvc4HsfhKyAmffq2vUu6Wcngnh5yjDufy63c1WA6iNDGohAgwq2hc4ODfsqaztyc5nbuQxiHx/2uDkusVA5AQJZg01Ruri3wCkKssvLABaM5s3UDopOmy3SHUAgH53LHcq2PTHfLVmwUeXA9Y+YuedpkcF0JrBctrBqeXI48mKS593YYnJsOI6AGIlEnMnuOylrI0+nJxt2zBXnGkdN5dw4p8W59/ez3oh+cVJeBe57P85jYJYNEUOv4n+nsi76dc1L9J2x+tqLxH7s/+23gUafvBroFb4NtkzhfOZzV/N+y9OK1l2z/5WwxxPivrKvo2GyT+1K4Mz8oXimC5hURdpWBdaQD/WyHxGjtlj4u2LdXBxZRz704D1Xl0qeH7pnuulbO++RxkXJCbrvU9FZaD1A3mlIs7NU20b1H9Aa7U/rOnN2qaAnWtMjrosolROQ08NvJPzwnNDhNUbo2Ub55q7z1i102W1ZOVU90MdVidvK6Tck3eqyE6iXQc2eoUdlLXe+ZFlXSRqqNZBDTXTmig3n//dZVFnQfju6VlpmSvSe+JwoQbh8c+4hU35IZ9Mhu6M3YQqlpvnZWYa44ocOygL1eqfmg7GbKXgEzd9q/g5JRs+7mqSS5wJimySEv2B6tojptOtmnn/0N9nizrGbca92jtHcSnGRyx3SLnaqJRVlieABOtVK69roh0WIX6MyMtdXTx1W57BgiA6uYw1sp52Gk2c+krD1yM76Y91nFPI5wgHfYxCO00Zk9bzojK+ETP6i+1W3/33VAc1sFVCcy91JL3TTOQaRfrE4SlPslrU+6Xiw1BMgPyOfIbghPuH1c/4MPLHZ9xn40ozQWbVdfFTV7qXaBUX0iLtDbtaekDwkECNBw8IYbhRaHa0CKwpenB6TQIeDdtoiw9QsoZClw3F49NoKqBzgxDJgivJPRT93gNRFFqqkURkgUsddEUXRo3yve/o4082APHrYwlcILk+wf8BO2E9koMUTRsE8BbHtLuXzJD16MhwslJ0v9xCwBG1UfJ75AFQRp45LPjUvj1Nx/8JH8v97cl+TPJZlrhMktJx/Ekfp5P5NDChWYUlX2zKaAghCMTKtFqZ0xnWe69SpZnm31U3OkQSV3Ot74o6AwFGmMOOJWfZKTfpddys2VKi+JJIcUMgkAQjCC5rUKhCIMF/+e1qpLYXItybkv8eeai/Wu9rtu7bo5t57z41yw5uJcqi7rXI253k9+TmQk55NJYdRHFfNGu5vOGDcDBIGmfhXxKHXnGmvIJofmkxYOaJkda42b+KWXvzecbxubbGPq74ZcLsmf2itNR2+VGKOvHLL6slWfk5vxEpmdO8KD6/2yXNd7zbWlubK+numaz/WufEiU3b8jrFAWhmGYYx5da9ByhQfPQ5cjpajo7l4yx7wryxF22HLMNl1r4uufFrjUe1d8A7nB5IOYFMiUMRcBQGjqGUajJogWqq1Td3w9yfJs6k+UQwNtJ7tdy52Ily+CwiDC4mpPbNVRRsc48au/S7JP+tmUgTAXysW/Xv25JTMT/rxU2//mjgxhO66u+rn+2fUWMgRXVc7z9rrtXVu5tu+77+qhf17fHTjbazI3ZnNMcNnOyVw8n0sv5nLNlZhrJ10P3WjqpnVLu03VjPlsmC+6JqGF/PWvPJRZE+Zqbd7nyAaTeUYoq13A1Z8v4uwyO3P2zvOYbbq66Fv6XlLnpEk6x/jzyuvdrI1zps1mTn4ikimprRXrow3pfWP0VULVytSWY1bAQAhGUL0szYbTt8MaJjUJPZm6+cgWkjdXQXeht6QoxAwXW7Wf0QEdzt6p/6TT9Vo816vXgzQfvSqREZRz5SW6OU3d3G9uzs0qZQpVtZ5JwEAIRtCxgs3Z0+TmyksVFLooBi7+Nc1bGzqZRnhZl1xSmEKN+rmijzaNflCpPsZfUz6s0teWVcvuYzc0bUYu+bS0nyTudsudO3fuLhabk1cpZLf0vZd5ZIT+ZX3u5Xzyh4kyUjfvV3JIoQIVUaqcN+YUAITgGvWaRKjlqHYd6uZNb84i26YfOTTAyNh20w00o6ea63lT52+yIKOQlmOKQszwfiy1p8XMal2SdNLvg3yNSKaMmhVltDk9KI1xkOeFtOSkn2c5m2ma5cqvSb1YYzZDnkimpNYrQqMzqjLmKgAIVSfsEdA6pemup/cjKyPbOI20MXbsNqG5W+TJBFlIy0rRmJji4lbD2m/tQDqiY5x0WvKrv3/SsCv72BdyrV9but6zRCNTUptWr+t56ZbRt/ov60G10pjnAQMhGEF3t1g2u6yP3YxrQ/Nsi7xZCij0lhMVCYaL53Dxe/r5lbrbj1F0Qx56hnA9kBvpc4V6qiuONu3yQgihQ4+WQ8uCELpa5r3E/6/I3K0QbLLj5F7+n9T/K/lr1KyoadCnNI0xK7dVygQAIVhDE9FCtafrtXoY+LgRxrZnujDrKbmz589boC0RxcDtia1e8i0cz8FjCAsAAAAAAAAAAADAN5RfI5IpU6hRW0UfLel7JFeVoJbZETAQghE0qzUbjmEeBS60FMUEF5+0aIFe8kQSmTJq0tI7Kvlu4KqsLDYnF55QctLiG7X4QfOJCTLZoRuhmza5blePuPj184m9/+/7k0OKTeGkaseYiwAgNPUW1mksaxJBK+raOnpj9dlSf6IcMWg0srG2PaAd7DYpNW1tJj0Vi9zuXV6fmO8FIwtD0eAYcZ8f1+31FUsrmf3owDrK7hgnnZb86u+SMbv+Sl4Mkm8im5N7eRdxpEj2FJSaNjWDm1cqpISftNwiyx12bp3lOG7g1q4N8sRrW5OFUiGpailTAwZC1eth7YH2UGt01CRCLUe160hdqSdjZbbUH58jDWikxm2X2ulrV5rITLtm9FQtckfm5eVTEIRFHiNOP/bNXhPPatqD5457cq1dy3Lc+rV6bd/1AR/J4T+MD0/kIa9dG65XSbSk1mShTKGqljIlYCBUvR7WHmgPtUZHTSLUclS7jtSVepI1V7bukeDDK9eq8YLx4S0tGB9erhddu6Vrg0B4rWL4cvjBteF62bWla23B+PDqgg9v3/Wp/CXJf13x+U8r/m+v0Of9yDOsauuYEQCEYGToPN2rehlZfdnCaVRqTBMs8gbnDyuoFAbLIsFwcaum9s2B07+mrSpzczb7BN+lcKovutaurVzbeq2R5v1K9hSmMFcqVe0YcxEQEJp6hGUeZA+ZRqcZ0VqOateRulJPdv/A1Ed9OA220ciM9344emD32hmvzWhmK0dbypW8MP5yNWPXEwzGMf6A6Bh//BIdrTl2shwt/r525PUxr4b83uX8xuV84Y9fHgBCMIJmtWbDMbHIyxu/BIWhCAwXv/RSvoDLvSHlrS/lB4CIiEh5xIiU74By0k82VYThVGN80k/DddspNE5joYw6VKyn+egjI7MUUBCCETQrKRsOr6AibCkiDBf/nkbL+YqLXQ0v11q3/TXqmGajt0o+Rl85ZPVlqz4nN+Ml6tweda7rt6PufOzYnRfb3HpHoWOc+LW/eYlfuw6n3mfT6a0RZKeyaEunFtO5Gquy0ecY9HGrYVNvJvmyw759a25mNmvUi9GuxjifylC1MmYGACEYQZu0Nk+1yJcCEWF4MT+H6+FL6JpK92qurJCN/jjnDWhYNzXj78b+Hnnt/LPudTfVn/fOmQ3nOxN2j6/d9jVCk+1uk8psOVe1Xq1jzPOAgRCMoDoN+vo4o2+7G9Kk1JMBTb0ZzQe3kHwrUBGGi38/VIUJ1kxlMbWch8421N2JJhWT74R1lWzjNCxtU/Mjb87/5rx6AAjBCNqwdec985UiwXDxz+EHxcwiIiJSm1RVVePyAAAAAAAAADmMJEmSJEmSbKltJ9q27dejfJbzT/i5Pl+/ntKjqfRtlaqa2pg/ARCCEbROawN8bNhoZGOa0HRYM5rP1YL8ekFSkWC4+B0q3aT0mzKvBoAQjKANW0UYLv79cM5knEWYyjBmASAEI6hAhOHic1g+dfmRVByDQnGKh17PLIqLCYAQjKA+Nmma0YwW8AUiDBf/HK5fn7kAAAAAAADoRD2tHa+qdnCHdYzq+cFJewAAAAAAAEDPZq9oB6tqL2SzVc8PIOGJCQAAAAAAIJFIAAAA4HuJaxw+1eQP78v+96jo9UrXM9/Dyrzo+og3U6Dw3Vb4cCl8SxU+iYpPN1GEQgSlL9G/k1P62fNrqrZckmX5WyZKqo060tKZUv4YgzxhCSGEEEIIIYQQQs7HQ7gn6ffnol+/fq9R+4o+WpcOI7MUAIRgBB2rsTl5FCC0FGG4+KR96GaUJEmSJEmSJEmSlD+xmZsDAAAAAAAAAABAO91mZva9ijk6WtIZU67jxwuAiIiIiMiIiIjZOWKMZd9/WTfL+rJTkB1/dsARtW4zMzMzs3j3AAAAAMgMkiRJknXPSJJU2aqN1Z0jSf0T8Hx4039rZMq1ddVMDygIwQj6rF5sTpPuFuSlCorA8P9M9O80zznnLhabs3oJt7v+eFBVVVVVVVVV7f+sjLc7BgAAAAAABiAWHOKB0k6c4WZmZmbWttT3dG4v41+ft5rHWw6+l7YpfescXWUE233V9OnEvr0opZRSSimlFi3o/5FReX9WLrJTri5X3qqG/ji/jOpb9Xq9Xq/XN35hACAOPhtu/LYAAAAAAAAAAEB/JzjnnHPe6x44+/B9unsvCEmS6vJLUv+zyNFEjWmoSVpTmFzbuhy94Nq+63nL0VauV7qeXGvXci3XYmpu3aavLfaFYcWkmjBtdB0Z6TnXCmBl/1V+RO7/vcULTkSUsc3EzvwqEoZhGIZhGIZhGIZhGIZhGIax3HQCXGIhLwBqTwOHNWo4ZH2887/LaG0bTrqQuBHBo/AylOl/vIcIHodEuz0uOW7yeEj0isdLV195/ERJ+NGDxJaGRhz/ORPA6jYjjyjrUY8S2Y8ebWL/HkfZ+nhc3ReJJ23hsx6v7Wro8cs4c577oLyzq5stW46zPMCbLIqxs/h1TnDXmgA3oyOMy/iBSQW+VgpEZL/nhzy5OknxkhS2jq2RK09IctSXARWnT5RFha4OFEsxxEVsYVG21WYa6RO+kfNsDbQ+HosIy/CT4cCoyN1EitBT+wOm2IKfPHwF/zqUpNEV8EcN/jV0YGONt1oueri/OpfXHPKGVfF9PqvGdYtvrG47ZpVaHJbJBeANWToxqaVjYa/lCLjLMncT3RQ5BMXI+ICREli/plAuyGKeq0w84tQRSXgZxRTUaj3RkFY8STezSLsUNjGFpWLBTBRtcZp41/2sxTW/lTXZuVu2Zq0Ke7Mm6LHQ/YOWFx0loVPfnxgs4CqiH5jS9vL1yAdZEQuCn7yufwUwcZuYRLT39AIgVksVg5ql4LJbw4RFuS33wxv0tHXBXCMhAosycqvrbYVvWHq+uotY8DBCLt15v+Ywtbg8vHz8niYoJELk/xYg8WMLS6t/DhtL/5jS2rYKJaRSwxoExf6KIib/Ym47BrAcL4hanX7Dhn+JB5v+rqVaj07OLly6cujIH92dOvvXEc700pVrN27duffg0ZNnLz8cPK13Hz59+fbjV/JJ89SKdeHbYWBF8OjgRC2nJxg/f5zaEs46ACUV2g0v46LDn3ZOPTkbAA4Y+D78vZ8sdOgXv7q/Nh/EIHVmydoso9D3yHo4i+jCk89G58m/9dQzn7tvNXX2zvvqM9nhZ6BgRefMnQfBBQunvmvJPCxbvmLlqtVr1q5bv2Hjps2Q0Ei+y/icomNh4+DiExASEZOQ09DSpwdY2dgFBD91HZb/ZHW+ga657oabvvF/twy77Vsj7rgrglDx8pfbLYxK9Zbk2MqUTCBHskdj6qzpPiEVsOs0Ott593rzT92xoVD6+h+thlT62Fvcqs6qsrJ6oOdwObyvZ+ArmQMAAAA=') format('woff2');
  font-weight: 500;
  font-style: italic;
  font-display: block;
}


/* ─────────────────────────────────────────────────────
@font-face {
  font-family: 'Relay Condensed';
  src: url('https://pub-cf48c0381fd74ea995bb64f2a4065b75.r2.dev/fonts/RelayCond-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Relay Condensed';
  src: url('https://pub-cf48c0381fd74ea995bb64f2a4065b75.r2.dev/fonts/RelayCond-BlackItalic.ttf') format('truetype');
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}

   2. TEMA — sobreescritura de variables del template
   ───────────────────────────────────────────────────── */

/* ⚠ Usar :root (igual especificidad que los CSS del template)
   La cascada gana porque este archivo carga después. */
:root {

  /* ── Paleta de fondo → cálida chalk ── */
  --color-bg-base:      #FFFEF6;                    /* crema cálido */
  --color-primary:      var(--color-bg-base);       /* crema cálido */
  --color-onPrimary:    var(--color-text-primary);  /* marrón oscuro */
  --color-secondary:    var(--primitive-gray-60);   /* borde cálido */
  --color-onSecondary:  var(--color-text-primary);

  /* Aliases internos del template */
  --color-white: var(--primitive-gray-10);   /* crema claro */
  --color-black: var(--primitive-gray-130);  /* marrón oscuro */
  --color-grey:  var(--primitive-gray-60);   /* gris cálido */

  /* ── Tipografía → Jost (display) + Afacad (body) ── */
  /* Hero h1/h2 siguen usando Relay Condensed via override explícito */
  --font-family-headline: 'Jost', system-ui, sans-serif;
  --font-family-body:     'Afacad', system-ui, sans-serif;

  /* ── Sombra → warm ── */
  --shadow: var(--shadow-md);
}


/* ─────────────────────────────────────────────────────
   3. TIPOGRAFÍA — section headings + hero
   ───────────────────────────────────────────────────── */

/* "FEATURED WORK" / "MORE WORKS" — barely smaller than default 64px */
.text-block__title {
  font-size: var(--text-6xl); /* 60px */
}

/* ─────────────────────────────────────────────────────
   3b. TIPOGRAFÍA HERO
   ───────────────────────────────────────────────────── */

/* Nombre — Relay Condensed Black 112px */
.hero__mid h1 {
  font-family: 'Relay Condensed', system-ui, sans-serif;
  font-weight: 900;
  font-size: 112px;
  font-style: normal;
  margin-bottom: 1.75rem;
}

/* Tagline — Relay Condensed Medium Italic 100px */
.hero__mid h2 {
  font-family: 'Relay Condensed', system-ui, sans-serif;
  font-weight: 500;
  font-style: italic;
  font-size: 100px;
}


/* ─────────────────────────────────────────────────────
   4. AJUSTES FINOS
   ───────────────────────────────────────────────────── */

/* Extra gap between carousel section and More Works */
.index-page__project + .index-page__project {
  margin-top: 6rem;
}

/* Header icon — hover scale 1.2 en el contenedor circular completo */
.header a.button {
  transition: transform 0.2s ease;
  transform-origin: center center;
  box-shadow: none !important;
}
.header a.button:hover {
  transform: scale(1.2);
}

/* Evita scrollbar horizontal por el desborde lateral del arc-carousel */
body { overflow-x: hidden; }

/* ── Scroll hint ── */
#scroll-hint {
  position: fixed;
  bottom: max(var(--safe-bottom, 0px), var(--padding, 1.5rem));
  right:  var(--padding, 1.5rem);
  z-index: 90;
  pointer-events: none;
  opacity: 1;
  transition: opacity 0.5s ease;
  animation: scroll-hint-bounce 1.5s ease-in-out infinite;
}
#scroll-hint.is-hidden {
  opacity: 0;
}
@keyframes scroll-hint-bounce {
  0%, 100% { transform: translateY(0);   }
  50%       { transform: translateY(7px); }
}

/* Ocultar el color picker del template */
.color-picker { display: none !important; }

/* Cursor nativo oculto — cursor.js maneja los SVGs */
*, *::before, *::after { cursor: none !important; }

/* Usar selection color del design system */
::selection {
  background-color: color-mix(in srgb, var(--primitive-gray-60) 40%, transparent);
}

/* Suavizar el rendering del texto para Relay */
:root {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "calt" 1, "kern" 1, "liga" 1;
}

/* "Based in Argentina" — mayor contraste que el small original del template */
.hero__top small {
  color: var(--color-text-primary, #3b2d1a);
  opacity: 1;
}

/* Hero: mid ocupa 1fr (se centra dentro), ticker pegado al borde inferior */
.hero {
  min-height: unset;
  height: 100svh;
  padding-top:    max(var(--safe-top,  0px), 1.5rem);
  padding-bottom: max(var(--safe-bottom, 0px), 1rem);
  grid-template-areas: "mid";
  grid-template-rows: 1fr auto;
  align-content: normal;
}

/* hero__mid — centrado en su fila 1fr */
.hero__mid {
  gap: min(1.4rem, 2.5cqb);
  align-self: center;
}

/* hero__top vacío — colapsa sin dejar rastro */
.hero__top {
  display: none;
}

/* Ocultar hero__bot del viewport inicial */
.hero__bot {
  display: none;
}

/* ── Language Switcher ── */
.lang-switcher {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  padding: var(--padding, 1rem);
  display: flex;
  align-items: center;
  gap: 8px;
}

.lang-globe {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: none;
  background: #C7DE59;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #3F4717;
  transition: transform 0.2s ease;
  transform-origin: center center;
  flex-shrink: 0;
}

.lang-globe:hover {
  transform: scale(1.2);
}

.lang-flags {
  display: flex;
  gap: 6px;
  overflow: hidden;
  max-width: 0;
  opacity: 0;
  transition: max-width 0.35s ease, opacity 0.2s ease;
  pointer-events: none;
}

.lang-switcher:hover .lang-flags,
.lang-switcher.is-open .lang-flags {
  max-width: 120px;
  opacity: 1;
  pointer-events: auto;
}

.lang-flag {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #C7DE59;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Jost', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.03em;
  color: #3F4717;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  flex-shrink: 0;
  transition: background-color 0.15s ease;
}

.lang-flag:hover {
  background: linear-gradient(rgba(0,0,0,0.10), rgba(0,0,0,0.10)), #C7DE59;
}

/* Mobile & tablet: sin hover, se abre con click */
@media (max-width: 1023px) {
  .lang-switcher:hover .lang-flags {
    max-width: 0;
    opacity: 0;
    pointer-events: none;
  }
  .lang-switcher.is-open .lang-flags {
    max-width: 120px;
    opacity: 1;
    pointer-events: auto;
  }
  .lang-switcher {
    padding: 1.5rem;
  }
  .header {
    padding: 1.5rem;
  }
}

/* ── Header nav — mismo estilo que lang-globe ── */
.header__nav.button {
  background: #C7DE59 !important;
  color: #4A531C !important;
  box-shadow: none !important;
}
.header__nav.button .head {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
}
.header__nav.button .head img {
  width: 22px;
  height: 22px;
  object-fit: contain;
}

/* ── Header: layout flex — icon a la derecha, burbuja a su izquierda ── */
.header {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* Burbuja antes del icon visualmente (order < el del button) */
.header__bubble       { order: 1; }
.header .button { order: 2; }

/* Burbuja junto al icon del header */
.header__bubble {
  position: relative;
  display: inline-flex;
  align-items: center;
  overflow: hidden;

  background: var(--color-bg-primary, #f5efe6);
  border: 1.5px solid color-mix(in srgb, var(--color-onPrimary, #3b2d1a) 18%, transparent);
  border-radius: 20px;
  padding: 4px 12px 4px 14px;

  font-family: 'Afacad', system-ui, sans-serif;
  font-size: 0.68rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-onPrimary, #3b2d1a);
  white-space: nowrap;
  opacity: 0.75;
  transition: opacity 0.2s ease;
  pointer-events: none;
}

/* Estado idle: "···" visible */
.bubble-idle {
  display: inline-block;
  opacity: 1;
  max-width: 2rem;
  overflow: hidden;
  transition: opacity 0.15s ease, max-width 0.3s ease;
}

/* Estado hover: "About me" oculto por defecto */
.bubble-text {
  display: inline-block;
  max-width: 0;
  overflow: hidden;
  opacity: 0;
  white-space: nowrap;
  transition: max-width 0.35s ease, opacity 0.2s ease;
}

/* Al hover del header: swap */
.header:hover .bubble-idle {
  max-width: 0;
  opacity: 0;
}
.header:hover .bubble-text {
  max-width: 5rem;
  opacity: 1;
}

/* Sube la opacidad de la burbuja completa al hover */
.header:hover .header__bubble {
  opacity: 1;
}

/* Mobile & tablet: header crema + mostrar "About me" permanentemente (no hay hover en touch) */
@media (max-width: 1023px) {
  .header {
    background-color: var(--color-bg-base);
  }
  .bubble-idle {
    max-width: 0;
    opacity: 0;
  }
  .bubble-text {
    max-width: 5rem;
    opacity: 1;
  }
  .header__bubble {
    opacity: 1;
  }
}

/* Triángulo derecho — borde (apunta hacia el icon de la derecha) */
.header__bubble::before {
  content: '';
  position: absolute;
  left: calc(100% + 1.5px);
  top: 50%;
  transform: translateY(-50%);
  border: 5px solid transparent;
  border-left-color: color-mix(in srgb, var(--color-onPrimary, #3b2d1a) 18%, transparent);
}

/* Triángulo derecho — fill */
.header__bubble::after {
  content: '';
  position: absolute;
  left: 100%;
  top: 50%;
  transform: translateY(-50%);
  border: 5px solid transparent;
  border-left-color: var(--color-bg-primary, #f5efe6);
}

/* Sube la opacidad cuando se hace hover sobre el área del header */
.header:hover .header__bubble {
  opacity: 1;
}


/* ─────────────────────────────────────────────────────
   5. CLIENTS TICKER
   ───────────────────────────────────────────────────── */

.clients-ticker {
  overflow: hidden;
  width: 100%;
  padding: 0.9rem 0;
  grid-column: 1 / -1;
  /* Fade los bordes izq/der para efecto de cinta */
  -webkit-mask-image: linear-gradient(
    to right,
    transparent 0%,
    black 8%,
    black 92%,
    transparent 100%
  );
  mask-image: linear-gradient(
    to right,
    transparent 0%,
    black 8%,
    black 92%,
    transparent 100%
  );
  /* Líneas divisorias sutiles */
  border-top:    1px solid var(--color-secondary, #c8bfaf);
  border-bottom: 1px solid var(--color-secondary, #c8bfaf);
}

.clients-ticker__track {
  display: inline-flex;
  align-items: center;
  gap: 1.6rem;
  white-space: nowrap;
  animation: ticker-scroll 22s linear infinite;
  /* pause on hover */
}
.clients-ticker:hover .clients-ticker__track {
  animation-play-state: paused;
}

.clients-ticker__track span {
  font-family: 'Afacad', system-ui, sans-serif;
  font-weight: 500;
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-text-primary, #3b2d1a);
  opacity: 0.55;
}

.clients-ticker__sep {
  font-size: 0.45rem !important;
  opacity: 0.35 !important;
  letter-spacing: 0 !important;
}

@keyframes ticker-scroll {
  from { transform: translateX(0);    }
  to   { transform: translateX(-50%); }
}

/* ─────────────────────────────────────────────────────
   6. HERO CANVAS
   Reemplaza .hero__images — mismo slot, misma animación
   ───────────────────────────────────────────────────── */

/* Constrain hero__mid so h1, h2 y canvas respetan el mismo margen lateral */
.hero__mid {
  width: calc(100vw - 220px) !important;
  max-width: 1072px !important;
}

/* h2 "GRAPHIC & UX/UI DESIGNER" — escala para que quepa en el container */
.hero__mid h2 {
  font-size: clamp(2.5rem, 6.5vw, 100px) !important;
  white-space: nowrap;
}

#hero-canvas {
  display: block;
  width: 100%;
  max-height: clamp(300px, 50vh, 580px);
  aspect-ratio: 1.92 / 1;
  border-radius: 1.5rem;
  background: #E87040;  /* same as BG_COLOR in hero-canvas.js */
}

/* ── Entry animation — mirrors hero[mounted=true] .hero__image ── */
/* Initial state: hidden */
.hero:not([mounted=true]) #hero-canvas {
  scale: 0;
}

/* Animated state */
.hero[mounted=true] #hero-canvas {
  transition: 1s scale var(--ease-out-elastic, cubic-bezier(0.34,1.56,0.64,1));
  transition-delay: 0.4s;
}


/* ─────────────────────────────────────────────────────
   7. MORE WORK GRID
   ───────────────────────────────────────────────────── */

@media (min-width: 768px) {
  /* Grid container — exactly 1200px */
  /* Math: 64 + 272 + 128 + 272 + 128 + 272 + 64 = 1200px ✓ */
  .grid {
    max-width: 1200px;
    width: 100%;
    padding: 0 4rem 10rem;      /* 0px 64px 160px — top gap from section flex */
    grid-template-columns: repeat(3, 272px);
    gap: 8rem;                  /* 128px */
    justify-content: center;
  }

  /* a.project — contenedor del grid cell, overflow visible para que el hover no se corte */
  .project {
    width: 272px;
    height: 272px;
    aspect-ratio: 1 / 1;
    overflow: visible;
  }

  /* div.project__image — 272×272, padding crea el espacio visual alrededor del media */
  .project__image {
    width: 272px;
    height: 272px;
    box-sizing: border-box;
    padding: 20px;              /* media queda a 232×232px */
  }

  /* div.media — scale: 1 en todos los estados, todos los project__image */
  .project__image .media {
    scale: 1 !important;
  }
}

/* Hover: escala 1.2 en todos los project__image (foreground + stack) */
@media (min-width: 768px) and (any-hover: hover) {
  .project:hover .project__image {
    scale: 1.2;
  }
}

/* Reduce el gap entre secciones (hero → featured → more work) */
.index-page {
  gap: 2.5rem !important;
}

/* Featured Work / More Work: layout vertical */
.index-page__project {
  box-sizing: border-box;
  padding-top: 1.5rem;
  gap: 5rem;
}

@media (width >= 1024px) {
  .index-page__project {
    gap: 7rem;
  }
}

/* Evita que el arc carousel sangre hacia la sección siguiente.
   -300px top: permite overflow del hover del card central.
   -9999px laterales: los side cards pueden salir del ancho.
   0 bottom: corta exactamente en el borde inferior de la sección. */
.index-page__project:has(.arc-carousel) {
  padding-bottom: 1.5rem;
  clip-path: inset(-300px -9999px 0 -9999px);
}

/* Extra breathing room al final de More Work, antes del footer */
.index-page__project:not(:has(.arc-carousel)) {
  padding-bottom: 5rem;
}

/* ─────────────────────────────────────────────────────
   MOBILE — Hero breakpoints (< 768px)
   ───────────────────────────────────────────────────── */
@media (max-width: 767px) {

  /* More Works: 1 columna en mobile */
  .grid {
    grid-template-columns: 1fr !important;
  }

  /* Overlay full-screen: sin border-radius */
  .project-page__modal {
    border-radius: 0 !important;
  }

  /* Modal: flex-column para que el header no scrollee */
  .project-page__modal {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }

  /* Header fijo arriba, no scrolleable */
  .project-page__header {
    flex-shrink: 0;
    height: auto !important;
    background: var(--color-bg-base);
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    padding: 0.75rem 1rem;
    box-shadow: 0 1px 0 var(--color-border-default);
    position: static !important;
  }

  .modal__close-button {
    position: static !important;
    top: auto !important;
    right: auto !important;
  }

  /* Solo el main hace scroll */
  .project-page__main {
    flex: 1;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* Sin hover en touch: cards en su tamaño final (scale 1) */
  .project .project__image .media {
    scale: 1 !important;
  }
  .project .project__image .shadow {
    opacity: 1 !important;
  }

  /* hero__mid: margen lateral de 1.5rem, centrado en viewport */
  .hero__mid {
    width: calc(100vw - 3rem) !important;
    max-width: none !important;
    gap: 0.75rem !important;
  }

  /* Hero: padding-top igual al header fijo para centrar el mid en el área visible */
  .hero {
    padding-top: max(var(--safe-top, 0px), 6rem);
  }

  /* Nombre: más pequeño y compacto */
  .hero__mid h1 {
    font-size: 54px;
    margin-bottom: 0.5rem;
  }

  /* Tagline: 2 líneas, proporcional */
  .hero__mid h2 {
    font-size: clamp(2rem, 10.5vw, 2.6rem) !important;
    white-space: normal !important;
    max-width: 8em;
    text-align: center;
    margin-top: 0.25rem;
  }

  /* Hero selector: grande, llena el espacio disponible */
  .hero-selector {
    width: 100%;
  }

  .hero-selector__stage {
    height: clamp(260px, 48vh, 420px);
  }
}

/* ─────────────────────────────────────────────────────
   POP-IN — More Work grid
   Las cards empiezan invisibles y popean al entrar en el viewport.
   ───────────────────────────────────────────────────── */
@keyframes pop-in {
  0%   { opacity: 0; transform: scale(0.72) translateY(10px); }
  65%  { opacity: 1; transform: scale(1.07); }
  100% { opacity: 1; transform: scale(1) translateY(0); }
}

.more-work-pop {
  opacity: 0;
  will-change: transform, opacity;
}

.more-work-pop.popped {
  animation: pop-in 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}


/* ═══════════════════════════════════════════════════════════
   SITE FOOTER — Contact
   Verde olive (#6B7A25) como fondo de prueba para contraste.
   ═══════════════════════════════════════════════════════════ */

.site-footer {
  background-color: #6B7A25;
  padding: 5rem 2rem 4rem;
  color: #FFFEF6;
}

.site-footer__inner {
  max-width: 680px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.site-footer__logo {
  display: flex;
  justify-content: center;
  margin: 2rem 0;
}

.site-footer__logo img {
  width: 100%;
  max-width: 252px;
  height: auto;
  opacity: 0.9;
}

.site-footer__title {
  font-family: 'Jost', system-ui, sans-serif;
  font-weight: 600;
  font-size: clamp(2rem, 5.5vw, 3.5rem);
  line-height: 0.88;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: rgba(255, 254, 246, 0.88);
  margin: 0;
}

.site-footer__subtitle {
  font-family: var(--font-family-body, sans-serif);
  font-size: 0.9375rem;
  color: rgba(255, 254, 246, 0.65);
  margin: 0;
}

.site-footer__subtitle strong {
  color: rgba(255, 254, 246, 0.9);
  font-weight: 600;
}

/* ── Form ── */
.site-footer__form {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  margin-top: 0.5rem;
}

.site-footer__form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.6rem;
}

.site-footer__form input,
.site-footer__form textarea {
  background: rgba(255, 254, 246, 0.1);
  border: 1.5px solid rgba(255, 254, 246, 0.22);
  border-radius: 10px;
  padding: 0.75rem 1rem;
  font-family: var(--font-family-body, sans-serif);
  font-size: 0.9375rem;
  color: #FFFEF6;
  width: 100%;
  box-sizing: border-box;
  box-shadow: inset 0 4px 0 0 rgba(0, 0, 0, 0.08);
  transition: border-color 0.2s, background 0.2s, box-shadow 0.2s;
  resize: none;
}

.site-footer__form input::placeholder,
.site-footer__form textarea::placeholder {
  color: rgba(255, 254, 246, 0.55);
}

.site-footer__form input:focus,
.site-footer__form textarea:focus {
  outline: none;
  border-color: rgba(255, 254, 246, 0.55);
  background: rgba(255, 254, 246, 0.16);
  box-shadow: inset 0 4px 0 0 rgba(0, 0, 0, 0.08);
}

/* Wrapper para posicionar el custom resize handle */
.site-footer__form .textarea-wrap {
  position: relative;
}

.site-footer__form .textarea-wrap::after {
  content: '';
  position: absolute;
  bottom: 9px;
  right: 9px;
  width: 12px;
  height: 12px;
  pointer-events: none;
  z-index: 2;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cline x1='2' y1='11' x2='11' y2='2' stroke='%23fffef6' stroke-width='1.5' stroke-opacity='0.5' stroke-linecap='round'/%3E%3Cline x1='6' y1='11' x2='11' y2='6' stroke='%23fffef6' stroke-width='1.5' stroke-opacity='0.5' stroke-linecap='round'/%3E%3Cline x1='10' y1='11' x2='11' y2='10' stroke='%23fffef6' stroke-width='1.5' stroke-opacity='0.5' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 12px 12px;
}

.site-footer__form textarea {
  min-height: 140px;
  resize: none; /* usamos el handle custom, sin el nativo */
}

.site-footer__form-actions {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}

.site-footer__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.625rem 1.5rem;
  border-radius: 9999px;
  border: none;
  background: var(--color-bg-secondary, hsla(35, 36%, 96%, 1));
  color: var(--color-text-primary, hsla(31, 45%, 24%, 1));
  box-shadow: var(--shadow-btn, 0 1px 4px rgba(0,0,0,0.15));
  font-family: var(--font-sans, system-ui, sans-serif);
  font-size: var(--text-sm, 0.8125rem);
  font-weight: 500;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  cursor: pointer;
  transition: box-shadow 200ms ease, background-color 100ms ease, transform 0.1s;
}

.site-footer__btn:hover {
  background: hsla(35, 36%, 91%, 1);
  box-shadow: var(--shadow-btn-hover, 0 2px 8px rgba(0,0,0,0.2));
  transform: translateY(-1px);
}

.site-footer__btn:active {
  transform: translateY(0);
}

.site-footer__enter-hint {
  font-family: var(--font-family-body, sans-serif);
  font-size: 0.875rem;
  color: rgba(255, 254, 246, 0.45);
}

/* Success state */
.site-footer__form.sent .site-footer__sent-msg {
  display: block;
}
.site-footer__sent-msg {
  display: none;
  font-family: var(--font-family-body, sans-serif);
  font-size: 0.9375rem;
  color: rgba(255, 254, 246, 0.8);
  padding: 1rem 0;
}

/* ── Divider ── */
.site-footer__divider {
  height: 1px;
  background: rgba(255, 254, 246, 0.2);
  margin: 0.5rem 0;
}

/* ── Links ── */
.site-footer__links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
}

.site-footer__links li {
  border-bottom: 1px solid rgba(255, 254, 246, 0.12);
  font-family: var(--font-family-body, sans-serif);
  font-size: 0.9375rem;
  margin: 0 -0.75rem; /* extiende el hover hasta los bordes del inner */
}

.site-footer__links li:last-child {
  border-bottom: none;
}

.site-footer__links a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.6rem 0.75rem;
  color: #FFFEF6;
  text-decoration: none;
  border-radius: 0;
  transition: background 0.18s;
}

.site-footer__links a:hover {
  background: rgba(255, 254, 246, 0.1);
}

.site-footer__links .link-label {
  color: rgba(255, 254, 246, 0.55);
}

.site-footer__links .link-arrow {
  font-size: 0.8rem;
  opacity: 0.6;
}

/* ── Copyright ── */
.site-footer__copy {
  font-family: var(--font-family-body, sans-serif);
  font-size: 0.75rem;
  color: rgba(255, 254, 246, 0.35);
  margin-top: 0.5rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

@media (min-width: 768px) {
  .site-footer__logo img {
    max-width: 176px;
  }
}

@media (max-width: 540px) {
  .site-footer__form-row {
    grid-template-columns: 1fr;
  }
  .site-footer__title {
    font-size: 2.5rem;
  }
}


/* ══════════════════════════════════════════════════════
   COMPONENT LIBRARY
   Componentes portados del Design System Primary.
   Ref: Workflow/design-preview.html · styles-portfolio.css
   ══════════════════════════════════════════════════════ */


/* ─────────────────────────────────────────────────────
   CARDS — VARIANTES
   ───────────────────────────────────────────────────── */

/* 1 — Flat */
.card-flat {
  background: var(--color-bg-elevated);
  border: var(--border-width-thin) solid var(--color-border-subtle);
  border-radius: var(--radius-lg);
  padding: var(--space-5);
  box-shadow: var(--shadow-sm);
  transition: box-shadow var(--duration-normal) var(--ease-smooth),
              border-color var(--duration-normal) var(--ease-smooth),
              transform var(--duration-normal) var(--ease-smooth);
}
.card-flat:hover {
  box-shadow: var(--shadow-md);
  border-color: var(--color-border-default);
  transform: translateY(-1px);
}

/* 2 — Bordered */
.card-bordered {
  background: var(--color-bg-elevated);
  border: 2px solid var(--color-border-strong);
  border-radius: var(--radius-xl);
  padding: var(--space-5);
  box-shadow: var(--shadow-xs);
  transition: border-color var(--duration-fast) var(--ease-smooth),
              transform var(--duration-fast) var(--ease-smooth);
}
.card-bordered:hover {
  border-color: var(--primitive-gray-90);
  transform: translateY(-1px);
}

/* 3 — Offset shadow (retro/indie) */
.card-offset {
  background: var(--color-bg-elevated);
  border: 1px solid var(--primitive-gray-140);
  border-radius: var(--radius-lg);
  padding: var(--space-5);
  box-shadow: inset 0px -10px 0px 3px var(--primitive-gray-50);
  transition: box-shadow var(--duration-normal) var(--ease-smooth);
}
.card-offset:hover {
  box-shadow: inset 0px -14px 0px 3px var(--primitive-gray-50);
}

/* 4 — Inset glow */
.card-inset {
  background: var(--color-bg-elevated);
  border: var(--border-width-thin) solid var(--color-border-subtle);
  border-radius: var(--radius-xl);
  padding: var(--space-5);
  box-shadow:
    inset 0 0 0 1px var(--color-border-subtle),
    var(--shadow-sm);
  transition: box-shadow var(--duration-normal) var(--ease-smooth),
              transform var(--duration-normal) var(--ease-smooth);
}
.card-inset:hover {
  box-shadow:
    inset 0 0 0 1.5px var(--color-border-default),
    inset 0 1px 0 0 rgba(255,255,255,0.6),
    var(--shadow-md);
  transform: translateY(-2px);
}

/* 5 — Accent border top */
.card-accent-top {
  background: var(--color-bg-elevated);
  border: var(--border-width-thin) solid var(--color-border-subtle);
  border-top: 3px solid var(--color-accent);
  border-radius: var(--radius-lg);
  padding: var(--space-5);
  box-shadow: var(--shadow-sm);
  transition: box-shadow var(--duration-normal) var(--ease-smooth),
              transform var(--duration-normal) var(--ease-smooth);
}
.card-accent-top:hover {
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}
.card-accent-top.red   { border-top-color: var(--primitive-red-20); }
.card-accent-top.amber { border-top-color: var(--color-bold); }
.card-accent-top.olive { border-top-color: var(--color-italic); }
.card-accent-top.blue  { border-top-color: var(--primitive-blue-20); }


/* ─────────────────────────────────────────────────────
   BUTTONS — TACTILE / CLAY
   ───────────────────────────────────────────────────── */

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: calc(var(--space-2) + 1px) var(--space-4) var(--space-2);
  border-radius: var(--radius-md);
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  font-weight: var(--font-medium);
  border: none;
  cursor: pointer;
  white-space: nowrap;
  text-decoration: none;
  transition: filter var(--duration-fast) var(--ease-smooth),
              box-shadow var(--duration-fast) var(--ease-smooth),
              background var(--duration-fast) var(--ease-smooth),
              transform var(--duration-fast) var(--ease-jumpy);
}
.btn:active {
  transform: translateY(1px);
  box-shadow: var(--shadow-btn-active) !important;
  padding: calc(var(--space-2) + 2px) var(--space-4) calc(var(--space-2) - 2px);
}

.btn--primary {
  background: var(--color-italic);
  color: #fff;
  box-shadow: var(--shadow-btn);
}
.btn--primary:hover {
  filter: brightness(1.08);
  box-shadow: var(--shadow-btn-hover);
}

.btn--secondary {
  background: var(--color-bg-secondary);
  color: var(--color-text-secondary);
  border: 1px solid var(--color-border-default);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5);
}
.btn--secondary:hover {
  background: var(--color-bg-tertiary);
  color: var(--color-text-primary);
}

.btn--ghost {
  background: transparent;
  color: var(--color-text-secondary);
  border: 1px solid var(--color-border-default);
  box-shadow: var(--shadow-xs);
  padding: var(--space-2) var(--space-4);
}
.btn--ghost:hover {
  background: var(--color-bg-sunken);
  color: var(--color-text-primary);
  border-color: var(--color-border-strong);
}

.btn--sm {
  padding: 5px var(--space-3);
  font-size: var(--text-xs);
}
.btn--sm:active {
  padding: 6px var(--space-3) 4px;
}

/* Solid buttons — color variants */
.btn-solid {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: calc(var(--space-2) + 1px) var(--space-5) var(--space-2);
  border-radius: var(--radius-md);
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  cursor: pointer;
  border: none;
  letter-spacing: 0.01em;
  transition: filter var(--duration-fast) var(--ease-smooth),
              transform var(--duration-fast) var(--ease-jumpy),
              box-shadow var(--duration-fast) var(--ease-smooth);
}
.btn-solid:hover  { filter: brightness(1.08); box-shadow: var(--shadow-btn-hover) !important; }
.btn-solid:active {
  filter: brightness(0.94);
  transform: translateY(1px);
  box-shadow: var(--shadow-btn-active) !important;
  padding: calc(var(--space-2) + 2px) var(--space-5) calc(var(--space-2) - 2px);
}
.btn-solid-amber   { background: var(--color-bold);         color: #fff;                     box-shadow: var(--shadow-btn); }
.btn-solid-olive   { background: var(--color-italic);       color: #fff;                     box-shadow: var(--shadow-btn); }
.btn-solid-red     { background: var(--primitive-red-20);   color: #fff;                     box-shadow: var(--shadow-btn); }
.btn-solid-blue    { background: var(--primitive-blue-20);  color: #fff;                     box-shadow: var(--shadow-btn); }
.btn-solid-dark    { background: var(--primitive-gray-130); color: var(--primitive-gray-10); box-shadow: var(--shadow-btn); }
.btn-solid-neutral {
  background: var(--color-secondary);
  color: var(--color-onPrimary);
  border: none;
  border-radius: var(--radius-full);
  font-family: var(--font-display);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wider);
  box-shadow: var(--shadow-btn);
}
.btn-solid-neutral:hover {
  filter: none;
  transform: scale(1.05);
  box-shadow: var(--shadow-md) !important;
}
.btn-solid-neutral:active {
  filter: none;
  transform: scale(0.95) !important;
  box-shadow: var(--shadow-sm) !important;
  padding: calc(var(--space-2) + 1px) var(--space-5) var(--space-2);
}


/* ─────────────────────────────────────────────────────
   TAGS
   ───────────────────────────────────────────────────── */

.tag {
  display: inline-block;
  font-size: 11px;
  font-weight: var(--font-medium);
  padding: 2px 10px;
  border-radius: var(--radius-full);
  border: 1px solid;
}
.tag-default { color: var(--primitive-blue-30);   background: hsla(197, 39%, 56%, 0.1);  border-color: hsla(197, 39%, 56%, 0.3); }
.tag-red     { color: var(--primitive-red-30);    background: var(--primitive-alpha-red); border-color: hsla(4, 56%, 48%, 0.3); }
.tag-yellow  { color: var(--primitive-yellow-30); background: var(--primitive-alpha-yellow); border-color: hsla(40, 79%, 47%, 0.3); }
.tag-green   { color: var(--primitive-green-30);  background: var(--primitive-alpha-green);  border-color: hsla(149, 50%, 39%, 0.3); }
.tag-purple  { color: var(--primitive-purple-30); background: var(--primitive-alpha-purple); border-color: hsla(275, 37%, 43%, 0.3); }


/* ─────────────────────────────────────────────────────
   BADGES — FEEDBACK
   ───────────────────────────────────────────────────── */

.badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  font-size: 11px;
  font-weight: var(--font-medium);
  padding: 2px 8px;
  border-radius: var(--radius-sm);
}
.badge-success { background: var(--color-success-subtle); color: var(--color-success); }
.badge-warning { background: var(--color-warning-subtle); color: var(--color-warning); }
.badge-error   { background: var(--color-error-subtle);   color: var(--color-error); }


/* ─────────────────────────────────────────────────────
   CALLOUT / BLOCKQUOTE
   ───────────────────────────────────────────────────── */

.callout,
blockquote.callout {
  border-left: 2px solid var(--color-accent);
  background: #906A3745;
  padding: var(--space-3) var(--space-5);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  font-size: var(--text-sm);
  color: var(--color-text-secondary);
}


/* ─────────────────────────────────────────────────────
   CHECKBOX
   ───────────────────────────────────────────────────── */

.checkbox-row {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  cursor: pointer;
  user-select: none;
}
.checkbox-box {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  border-radius: 7px;
  border: 2px solid var(--color-border-strong);
  background: var(--color-bg-elevated);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: inset 0 1px 3px hsla(31, 40%, 20%, 0.07);
  color: transparent;
  transition: border-color var(--duration-fast) var(--ease-smooth),
              box-shadow var(--duration-fast) var(--ease-smooth),
              color var(--duration-fast) var(--ease-smooth);
}
.checkbox-box svg {
  opacity: 0;
  transform: scale(0.5);
  transition: opacity 0.1s var(--ease-smooth),
              transform 0.18s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.checkbox-box.checked {
  background: var(--color-italic);
  border-color: var(--color-italic);
  color: #fff;
  box-shadow: 0 1px 3px hsla(74, 57%, 15%, 0.25);
}
.checkbox-box.checked svg {
  opacity: 1;
  transform: scale(1);
}
.checkbox-row:hover .checkbox-box:not(.checked) {
  border-color: var(--color-border-default);
}
.checkbox-label { font-size: var(--text-sm); color: var(--color-text-primary); }
.checkbox-row.is-done .checkbox-label {
  color: var(--color-text-muted);
  text-decoration: line-through;
  text-decoration-color: var(--color-border-default);
}
.checkbox-row.is-disabled { opacity: 0.4; cursor: not-allowed; pointer-events: none; }


/* ─────────────────────────────────────────────────────
   TOGGLE SWITCH
   ───────────────────────────────────────────────────── */

.toggle {
  position: relative;
  width: 36px;
  height: 20px;
  flex-shrink: 0;
}
.toggle input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}
.toggle__slider {
  position: absolute;
  inset: 0;
  background: var(--color-bg-sunken);
  border: 1.5px solid var(--color-border-strong);
  border-radius: 99px;
  cursor: pointer;
  transition: all var(--duration-fast) var(--ease-smooth);
}
.toggle__slider::before {
  content: '';
  position: absolute;
  width: 13px;
  height: 13px;
  background: var(--color-text-muted);
  border-radius: 50%;
  top: 50%;
  left: 2px;
  transform: translateY(-50%);
  transition: all var(--duration-fast) var(--ease-smooth);
}
.toggle input:checked ~ .toggle__slider {
  background: var(--color-bold);
  border-color: var(--color-bold);
}
.toggle input:checked ~ .toggle__slider::before {
  background: #fff;
  left: 19px;
}

.toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-3);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border-subtle);
  background: var(--color-bg-sunken);
  cursor: pointer;
  transition: all var(--duration-fast) var(--ease-smooth);
}
.toggle-row:hover {
  border-color: var(--color-border-default);
  background: var(--color-bg-elevated);
}
.toggle-row__label { display: flex; flex-direction: column; gap: 2px; }
.toggle-row__label strong {
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  color: var(--color-text-primary);
}
.toggle-row__label small {
  font-size: 11px;
  color: var(--color-text-secondary);
}


/* ─────────────────────────────────────────────────────
   PILL RADIO BUTTONS / SELECTORS
   ───────────────────────────────────────────────────── */

.radio-pills {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.pill { cursor: pointer; }
.pill input { display: none; }
.pill > span {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  padding: 5px var(--space-3);
  border-radius: var(--radius-full);
  border: 1px solid var(--color-border-subtle);
  background: var(--color-bg-sunken);
  font-size: var(--text-xs);
  font-weight: var(--font-medium);
  color: var(--color-text-secondary);
  cursor: pointer;
  transition: all var(--duration-fast) var(--ease-smooth);
  white-space: nowrap;
}
.pill:hover > span {
  border-color: var(--color-border-default);
  color: var(--color-text-primary);
  background: var(--color-bg-elevated);
}
.pill input:checked ~ span {
  background: var(--color-text-primary);
  border-color: var(--color-text-primary);
  color: var(--color-bg-base);
}
.pill--warn input:checked ~ span {
  background: var(--color-warning-subtle);
  border-color: var(--color-warning);
  color: var(--color-warning);
}
.pill--danger input:checked ~ span {
  background: var(--color-error-subtle);
  border-color: var(--color-error);
  color: var(--color-error);
}
.pill--success input:checked ~ span {
  background: var(--color-success-subtle);
  border-color: var(--color-success);
  color: var(--color-success);
}


/* ─────────────────────────────────────────────────────
   SERVICE CARD GRID — acento olive
   ───────────────────────────────────────────────────── */

.service-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: var(--space-2);
}
.service-card {
  display: flex;
  flex-direction: column;
  cursor: pointer;
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border-subtle);
  background: var(--color-bg-sunken);
  padding: var(--space-3);
  transition: all var(--duration-fast) var(--ease-smooth);
  user-select: none;
}
.service-card:hover {
  border-color: var(--color-border-default);
  background: var(--color-bg-elevated);
  box-shadow: var(--shadow-sm);
  transform: translateY(-1px);
}
.service-card.active {
  border-color: var(--color-italic);
  background: hsla(74, 57%, 36%, 0.07);
  box-shadow: 0 0 0 3px hsla(74, 57%, 36%, 0.10);
}
.service-card__name {
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  letter-spacing: var(--tracking-tight);
  color: var(--color-text-primary);
}
.service-card__desc {
  font-size: 11px;
  color: var(--color-text-secondary);
  line-height: var(--leading-relaxed);
  margin-top: var(--space-1);
}
.service-card.active .service-card__name { color: var(--color-italic); }


/* ══════════════════════════════════════════════════════
   OVERLAY — META CHIPS + SECTIONS
   ══════════════════════════════════════════════════════ */

/* ── Overlay root + modal (slug.css usa selector Vue scoped, estos lo reemplazan) */
.project-page {
  position: fixed;
  inset: 0;
  display: flex;
  padding: 0;
  z-index: 100;
}

@media (width >= 768px) {
  .project-page { padding: 1rem; }
}

.project-page::before {
  content: "";
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.55);
}

.project-page__modal {
  background-color: var(--color-bg-base);
  border-radius: 2rem;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  overscroll-behavior: contain;
  position: relative;
  display: grid;
  grid-template-rows: 3rem 1fr;
  scrollbar-width: none;
}

.project-page__modal::-webkit-scrollbar { display: none; }

.project-page__header {
  position: sticky;
  top: 0;
  width: 100%;
  height: 0;
  z-index: 1;
}

.modal__close-button {
  position: fixed;
  top: calc(2rem - 15.5px);
  right: calc(2rem - 15.5px);
  z-index: 101;
}

.project-page__main {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  justify-self: center;
  padding: 1.5rem;
  width: 100%;
}

@media (width >= 768px) {
  .modal__close-button { top: calc(1rem + 2rem - 15.5px); right: calc(1rem + 2rem - 15.5px); }
  .project-page__main { gap: 4rem; padding: 5.5rem; max-width: 1200px; }
}

.project-page__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  text-align: center;
}

.project-page__title {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  text-align: center;
}

.modal__close-circle {
  transition: fill 0.15s ease;
}

.modal__close-button:hover .modal__close-circle {
  fill: #C75322;
}

/* ── Meta chips row ──────────────────────────────────── */

.overlay-meta-chips {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.5rem;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

@media (width >= 768px) {
  .overlay-meta-chips { grid-template-columns: repeat(4, 1fr); }
}

.overlay-meta-chip {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  padding: 0.6rem 1rem;
  background: var(--color-bg-base);
  border: 1px solid var(--color-border-subtle);
  border-radius: 0.75rem;
}

.overlay-meta-chip__header {
  display: flex;
  align-items: center;
  gap: 0.3rem;
}

.overlay-meta-chip__icon {
  color: var(--color-text-muted);
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.overlay-meta-chip__label {
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-text-muted);
}

.overlay-meta-chip__value {
  font-size: 0.85rem;
  font-weight: 500;
  color: var(--color-text-primary);
}

/* ── Sections ────────────────────────────────────────── */

.overlay-section {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  width: 100%;
}

.overlay-section__heading {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--color-text-primary);
  margin: 0;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

/* Markdown output */
.overlay-section__text {
  font-family: var(--font-family-body);
  color: var(--color-text-secondary);
  line-height: 1.65;
  font-size: 0.95rem;
  width: 100%;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

@media (width >= 768px) {
  .overlay-section__text { font-size: 1.0625rem; }
}

.overlay-section__text p          { margin: 0 0 0.75em; }
.overlay-section__text p:last-child { margin-bottom: 0; }
.overlay-section__text ul,
.overlay-section__text ol         { padding-left: 1.4em; margin: 0 0 0.75em; }
.overlay-section__text li         { margin-bottom: 0.25em; }
.overlay-section__text strong     { color: var(--color-text-primary); }
.overlay-section__text a          { color: var(--color-text-primary); }
.overlay-section__text h4 {
  font-family: var(--font-sans);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #E87040;
  margin: 1.5em 0 0.5em;
}

/* Images */
.overlay-section__img {
  width: 100%;
  border-radius: 1rem;
  display: block;
}

.overlay-section__img + .overlay-section__img {
  margin-top: 1.5rem;
}

/* cover → heading y texto → imagen: igualan el gap entre secciones */
.overlay-section__img--cover + .overlay-section__heading,
.overlay-section__text + .overlay-section__img {
  margin-top: calc(2rem - 1.25rem);
}

@media (width >= 768px) {
  .overlay-section__img--cover + .overlay-section__heading,
  .overlay-section__text + .overlay-section__img {
    margin-top: calc(4rem - 1.25rem);
  }
}

/* Video embed — responsive 16/9 */
.overlay-section__video {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 1rem;
  overflow: hidden;
  background: var(--color-border-subtle);
}

.overlay-section__video iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
}

/* User reviews block */
.overlay-reviews {
  width: 100%;
}

.overlay-reviews__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}

@media (width >= 768px) {
  .overlay-reviews__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.overlay-review-card {
  background: var(--color-bg-elevated);
  border: 1px solid var(--primitive-gray-140);
  border-radius: var(--radius-xl);
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  box-shadow: inset 0px -10px 0px 3px var(--primitive-gray-50);
  transition: box-shadow var(--duration-normal) var(--ease-smooth);
}

.overlay-review-card:hover {
  box-shadow: inset 0px -14px 0px 3px var(--primitive-gray-50);
}

.overlay-review-card__quote {
  font-size: 2.25rem;
  line-height: 1;
  color: var(--color-text-muted);
  font-weight: 700;
  margin: 0;
}

.overlay-review-card__text {
  font-size: 0.875rem;
  line-height: 1.65;
  color: var(--color-text-secondary);
  flex: 1;
  margin: 0;
}

.overlay-review-card__footer {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--color-border-subtle);
  margin-top: auto;
}

.overlay-review-card__name {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--color-text-primary);
}

.overlay-review-card__role {
  font-size: 0.75rem;
  color: var(--color-text-muted);
}


/* ══════════════════════════════════════════════════════
   HERO SELECTOR — character picker
   ══════════════════════════════════════════════════════ */

.hero-selector {
  position: relative;
  width: 100%;
}

/* Stage — same size as the original canvas */
.hero-selector__stage {
  display: block;
  width: 100%;
  max-height: clamp(300px, 50vh, 580px);
  aspect-ratio: 1.92 / 1;
  position: relative;
  background-color: #E87040;
  background-image: radial-gradient(circle, rgba(0,0,0,0.13) 1px, transparent 1px);
  background-size: 20px 20px;
  border-radius: 1.5rem;
  overflow: hidden;
}

/* Track holds all slides stacked */
.hero-selector__track {
  position: absolute;
  inset: 0;
}

/* Individual slide */
.hero-selector__slide {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: transform 320ms cubic-bezier(0.4, 0, 0.2, 1),
              opacity  200ms ease;
}

.hero-selector__slide.is-active {
  opacity: 1;
  pointer-events: auto;
}

.hero-selector__slide.is-leaving {
  transition: transform 320ms cubic-bezier(0.4, 0, 0.2, 1),
              opacity  200ms ease 100ms;
  opacity: 0;
}

.hero-selector__slide img {
  max-width: 55%;
  max-height: 85%;
  object-fit: contain;
  user-select: none;
  -webkit-user-drag: none;
}

/* Counter badge */
.hero-selector__counter {
  position: absolute;
  bottom: 0.75rem;
  left: 50%;
  transform: translateX(-50%);
  font-family: var(--font-sans);
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: rgba(255,255,255,0.75);
  background: rgba(0,0,0,0.18);
  padding: 0.2em 0.7em;
  border-radius: 9999px;
  white-space: nowrap;
  pointer-events: none;
}

/* Nav chevron buttons — float over the stage */
.hero-selector__btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  width: 40px;
  height: 40px;
  border-radius: 9999px;
  border: 1.5px solid var(--color-border-subtle);
  background: var(--color-bg-elevated);
  color: var(--color-text-primary);
  box-shadow: var(--shadow-xs, 0 1px 4px rgba(0,0,0,0.1));
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

.hero-selector__btn--prev { left:  0.875rem; }
.hero-selector__btn--next { right: 0.875rem; }

.hero-selector__btn:hover {
  background: var(--color-bg-secondary);
  box-shadow: var(--shadow-sm, 0 2px 8px rgba(0,0,0,0.15));
  transform: translateY(-50%) scale(1.08);
}

.hero-selector__btn:active {
  transform: translateY(-50%) scale(0.94);
}

.hero-selector__btn[hidden] {
  visibility: hidden;
  pointer-events: none;
}


/* == 5. FINAL OVERRIDES == */

/* ─────────────────────────────────────────────────────────
   FINAL OVERRIDES — always win the cascade.
   Relay Condensed is served from R2; Jost & Afacad from Google Fonts.
   Typography rules:
     - Displays/titles (h1-h4, general) → Jost (--font-family-headline)
     - Body text, buttons, UI           → Afacad (--font-family-body)
     - Hero h1, hero h2                 → Relay Condensed (exception)
     - About .hi and .name              → Relay Condensed (via about.css)
───────────────────────────────────────────────────────── */
:root {
  --font-family-headline: 'Jost', system-ui, sans-serif;
  --font-family-body:     'Afacad', system-ui, sans-serif;
  --color-white: var(--primitive-gray-10);
  --color-black: var(--primitive-gray-140);
  --color-grey:  var(--primitive-gray-60);
}

/* Hero h1 and h2: Relay Condensed exception */
.hero h1,
.hero h2 {
  font-family: 'Relay Condensed', system-ui, sans-serif !important;
}

/* Section titles ("Featured Work", "More Works") use Jost, not Relay */
.text-block__title {
  font-family: 'Jost', system-ui, sans-serif !important;
}

/* Hero: span full viewport width so the ticker band bleeds edge-to-edge */
.hero {
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

/* == 6. ABOUT PAGE CSS == */


    /* Reset mínimo — igual al que index.html tiene embebido inline */
    *, *::before, *::after {
      box-sizing: border-box;
      -webkit-tap-highlight-color: transparent;
      margin: 0;
    }
    a { color: inherit; text-decoration: none; }
    body { margin: 0; min-height: 100dvh; }
    img, svg, video, canvas { display: block; max-width: 100%; }

    /* Quitar border nativo del elemento <footer> */
    footer { border: none; }

    /* ── Profile section ─────────────────────────── */
    .about-profile {
      padding: clamp(5rem, 10vw, 8rem) clamp(1.25rem, 4vw, 2.5rem) 1.75rem;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 3rem;
    }

    /* Left column wrapper */
    .about-profile__left {
      display: flex;
      flex-direction: column;
      gap: 1.75rem;
    }

    /* Two-column content */
    .about-profile__content {
      display: grid;
      grid-template-columns: 0.45fr 1fr;
      gap: 1.75rem;
      width: 100%;
      max-width: 68rem;
      align-items: stretch;
    }

    /* Left card */
    .about-profile__card {
      background: var(--color-bg-elevated);
      border-radius: var(--radius-xl);
      border: 1px solid var(--primitive-gray-140);
      padding: var(--space-6) var(--space-6) var(--space-8);
      display: flex;
      flex-direction: column;
      gap: var(--space-6);
      box-shadow: inset 0px -10px 0px 3px var(--primitive-gray-50);
      transition: box-shadow var(--duration-normal) var(--ease-smooth);
    }
    .about-profile__card:hover {
      box-shadow: inset 0px -14px 0px 3px var(--primitive-gray-50);
    }

    .about-profile__photo-wrap {
      position: relative;
      border-radius: var(--radius-lg);
      overflow: hidden;
      flex: 1;
      min-height: 0;
      width: 100%;
      background: var(--color-bg-sunken);
    }

    .about-profile__photo-wrap img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center 20%;
      display: block;
    }

    .about-profile__name {
      font-family: 'Relay Condensed', system-ui, sans-serif;
      font-weight: 700;
      font-style: normal;
      text-transform: uppercase;
      font-size: var(--text-2xl);
      letter-spacing: var(--tracking-tight);
      color: var(--color-text-primary);
    }

    .about-profile__role {
      font-family: var(--font-sans);
      font-size: var(--text-sm);
      color: var(--color-text-secondary);
      margin-top: var(--space-1);
    }

    .about-profile__socials {
      display: flex;
      align-items: center;
      gap: var(--space-3);
      list-style: none;
      padding: 0;
    }

    .about-profile__socials a {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 36px;
      height: 36px;
      border-radius: var(--radius-full);
      color: var(--color-text-muted);
      border: var(--border-width-thin) solid var(--color-border-subtle);
      text-decoration: none;
      transition: color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast);
    }

    .about-profile__socials a:hover {
      color: var(--color-text-primary);
      background: var(--color-bg-secondary);
      border-color: var(--color-border-default);
    }

    .about-profile__socials a svg {
      width: 16px;
      height: 16px;
      flex-shrink: 0;
    }

    .about-profile__divider {
      width: 100%;
      height: 1px;
      background: var(--color-border-subtle);
    }


    /* Right card */
    .about-profile__info {
      background: var(--color-bg-elevated);
      border-radius: var(--radius-xl);
      border: 1px solid var(--primitive-gray-140);
      padding: var(--space-8) var(--space-8) clamp(2rem, 3vw, 3.375rem);
      display: flex;
      flex-direction: column;
      gap: 2rem;
      box-shadow: inset 0px -10px 0px 3px var(--primitive-gray-50);
      transition: box-shadow var(--duration-normal) var(--ease-smooth);
    }
    .about-profile__info:hover {
      box-shadow: inset 0px -14px 0px 3px var(--primitive-gray-50);
    }

    .about-profile__hi {
      font-family: 'Relay Condensed', system-ui, sans-serif;
      font-weight: 900;
      font-style: italic;
      font-size: var(--text-6xl);
      line-height: 1;
      color: var(--color-text-primary);
      transform: rotate(-5deg);
      display: inline-block;
      transform-origin: left center;
      margin-bottom: -0.5rem;
    }

    .about-profile__bio {
      font-family: var(--font-sans);
      font-size: var(--text-base);
      line-height: var(--leading-relaxed);
      color: var(--color-text-secondary);
    }

    .about-profile__two-col {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 1.75rem;
      align-items: stretch;
    }

    .about-profile__info--sub {
      padding: var(--space-5) var(--space-5) var(--space-8);
      gap: var(--space-4);
    }

    .about-profile__right-col {
      display: flex;
      flex-direction: column;
      gap: 1.75rem;
    }

    .about-profile__right-col .about-profile__info--sub:first-child {
      flex: 1;
      display: flex;
      flex-direction: column;
    }

    .about-profile__right-col .about-profile__info--sub:first-child .about-stack__tools {
      flex: 1;
      align-content: space-evenly;
    }

    .about-profile__edu-list {
      list-style: none;
      padding: 0;
      display: flex;
      flex-direction: column;
      gap: var(--space-3);
    }

    .about-profile__edu-item {
      display: flex;
      flex-direction: column;
      gap: 2px;
    }

    .about-profile__edu-degree {
      font-family: var(--font-sans);
      font-size: var(--text-sm);
      font-weight: var(--font-normal);
      color: var(--color-text-secondary);
    }

    .about-profile__edu-field {
      font-family: var(--font-sans);
      font-size: var(--text-base);
      font-weight: var(--font-bold);
      letter-spacing: var(--tracking-tight);
      text-transform: uppercase;
      color: var(--color-text-primary);
    }

    .about-profile__edu-honors {
      display: flex;
      align-items: flex-start;
      gap: 5px;
      color: var(--color-bold);
      margin-top: calc(-1 * var(--space-2));
    }

    .about-profile__edu-item + .about-profile__edu-honors + .about-profile__edu-item {
      margin-top: var(--space-2);
    }

    .about-profile__edu-honors svg {
      flex-shrink: 0;
      margin-top: 1px;
    }

    .about-profile__edu-honors span {
      font-family: var(--font-sans);
      font-size: var(--text-xs);
      font-weight: var(--font-medium);
      line-height: var(--leading-snug);
    }

    .about-profile__lang-badges {
      display: flex;
      flex-wrap: wrap;
      gap: var(--space-2);
    }

    .about-profile__lang-badge {
      display: inline-flex;
      align-items: center;
      gap: 0.4em;
      font-family: var(--font-sans);
      font-size: var(--text-xs);
      font-weight: var(--font-medium);
      color: var(--color-text-secondary);
      background: var(--color-bg-secondary);
      border: var(--border-width-thin) solid var(--color-border-subtle);
      border-radius: var(--radius-full);
      padding: 0.3em 0.75em;
    }

    .about-profile__lang-badge img {
      width: 16px;
      height: 12px;
      object-fit: cover;
      border-radius: 2px;
      display: block;
    }

    /* ── Stack section ── */
    .about-stack {
      padding: 0 clamp(1.25rem, 4vw, 2.5rem) clamp(5rem, 10vw, 8rem);
      display: flex;
      flex-direction: column;
      align-items: center;
    }

    .about-stack__grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 1.75rem;
      width: 100%;
      max-width: 68rem;
      align-items: stretch;
    }

    .about-stack__col {
      background: var(--color-bg-elevated);
      border: 1px solid var(--primitive-gray-140);
      border-radius: var(--radius-xl);
      padding: var(--space-6) var(--space-6) var(--space-8);
      display: flex;
      flex-direction: column;
      gap: var(--space-5);
      box-shadow: inset 0px -10px 0px 3px var(--primitive-gray-50);
      transition: box-shadow var(--duration-normal) var(--ease-smooth);
    }

    .about-stack__col:hover {
      box-shadow: inset 0px -14px 0px 3px var(--primitive-gray-50);
    }

    .about-stack__col--photo {
      padding: var(--space-6) var(--space-6) var(--space-8);
      gap: var(--space-4);
    }

    .about-stack__photo-wrap {
      flex: 1;
      border-radius: var(--radius-lg);
      overflow: hidden;
      background: #C7DE59;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .about-stack__photo-wrap img {
      width: 55%;
      height: auto;
      object-fit: contain;
      display: block;
      padding: var(--space-6) 0;
    }

    .about-stack__col-label {
      font-family: var(--font-sans);
      font-size: var(--text-sm);
      font-weight: var(--font-semibold);
      letter-spacing: var(--tracking-wider);
      text-transform: uppercase;
      color: var(--color-text-muted);
    }

    .about-stack__tools {
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      gap: var(--space-2);
      width: 100%;
    }

    .about-stack__tool-card {
      width: 100%;
      aspect-ratio: 1;
      height: auto;
      background: var(--color-bg-sunken);
      border: 1px solid var(--color-border-strong);
      border-radius: var(--radius-lg);
      box-shadow: inset 0px 4px 0px 1px var(--primitive-gray-60);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      transition: box-shadow var(--duration-fast) var(--ease-smooth);
      position: relative;
    }

    .about-stack__tool-card:hover {
      box-shadow: inset 0px 1px 0px 1px var(--primitive-gray-60);
    }

    .about-stack__tool-card::after {
      content: attr(data-tooltip);
      position: absolute;
      bottom: calc(100% + 8px);
      left: 50%;
      transform: translateX(-50%) translateY(4px);
      background: var(--color-bg-elevated);
      color: var(--color-text);
      font-family: var(--font-sans);
      font-size: 11px;
      font-weight: var(--font-medium);
      white-space: nowrap;
      padding: 4px 8px;
      border-radius: var(--radius-sm);
      border: 1px solid var(--color-border-strong);
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
      opacity: 0;
      pointer-events: none;
      transition: opacity var(--duration-fast) var(--ease-smooth), transform var(--duration-fast) var(--ease-smooth);
      z-index: 10;
    }

    .about-stack__tool-card:hover::after {
      opacity: 1;
      transform: translateX(-50%) translateY(0);
    }

    .about-stack__tool-card img {
      max-width: 36px;
      max-height: 36px;
      width: auto;
      height: auto;
    }

    /* ── Skill Cards (Hard Skills) ── */
    .skill-cards {
      display: flex;
      flex-direction: column;
      gap: var(--space-2);
    }

    .skill-card {
      display: flex;
      align-items: center;
      gap: var(--space-3);
      padding: 0.55rem var(--space-3);
      background: var(--color-bg-secondary);
      border: 1px solid var(--color-border-subtle);
      border-radius: var(--radius-lg);
      transition: background var(--transition-fast), border-color var(--transition-fast);
    }

    .skill-card:hover {
      background: var(--color-bg-tertiary);
      border-color: var(--color-border-default);
    }

    .skill-card__icon {
      flex-shrink: 0;
      display: flex;
      align-items: center;
      color: var(--color-italic);
    }

    /* ── Soft Skills ── */
    .soft-skills {
      display: flex;
      flex-direction: column;
      gap: var(--space-2);
      flex: 1;
    }

    .soft-skill {
      display: flex;
      align-items: center;
      gap: var(--space-3);
      padding: 0.55rem var(--space-3);
      background: var(--color-bg-secondary);
      border: 1px solid var(--color-border-subtle);
      border-radius: var(--radius-lg);
      transition: background var(--transition-fast), border-color var(--transition-fast);
    }

    .soft-skill:hover {
      background: var(--color-bg-tertiary);
      border-color: var(--color-border-default);
    }

    .soft-skill__icon {
      flex-shrink: 0;
      display: flex;
      align-items: center;
      color: var(--color-italic);
    }

    .soft-skill__label {
      font-family: var(--font-sans);
      font-size: var(--text-base);
      font-weight: var(--font-normal);
      color: var(--color-text-primary);
      line-height: 1.3;
    }

    /* CV button */
    .cv-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: var(--space-2);
      width: 100%;
      padding: 0.625rem 1.5rem;
      border-radius: 9999px;
      border: none;
      background: var(--color-bold);
      color: #fff;
      box-shadow: var(--shadow-btn, 0 1px 4px rgba(0,0,0,0.15));
      font-family: var(--font-sans);
      font-size: var(--text-sm);
      font-weight: 500;
      letter-spacing: 0.025em;
      text-transform: uppercase;
      text-decoration: none;
      cursor: pointer;
      transition: box-shadow 200ms ease, background-color 100ms ease, transform 0.1s;
    }

    .cv-btn:hover {
      background: #b85e0f;
      box-shadow: var(--shadow-btn-hover, 0 2px 8px rgba(0,0,0,0.2));
      transform: translateY(-1px);
    }

    .cv-btn:active { transform: translateY(0); }

    /* Responsive — mobile */
    @media (max-width: 767px) {
      /* Reducir padding superior (el header fijo ocupa ~6rem) */
      .about-profile {
        padding-top: 6.5rem;
      }

      /* 1 columna: card perfil + card info apiladas */
      .about-profile__content {
        grid-template-columns: 1fr;
      }

      /* Foto con aspect-ratio fija en vez de flex:1 absoluto */
      .about-profile__photo-wrap {
        aspect-ratio: 3 / 4;
        position: relative;
      }

      /* 1 columna: cards sub dentro del bloque right */
      .about-profile__two-col {
        grid-template-columns: 1fr;
      }

      /* 1 columna: stack de herramientas */
      .about-stack__grid {
        grid-template-columns: 1fr;
      }

      /* Reordenar: Hard Skills → Soft Skills → CV */
      .about-stack__col:first-child { order: 1; }
      .about-stack__col--photo      { order: 3; }
      .about-stack__col:last-child  { order: 2; }

      /* Stack section: padding menor */
      .about-stack {
        padding-bottom: 4rem;
      }
    }
  