:root{color-scheme:light;--background:#fff;--blue:#173acb;--blue-fill:#173acb;--button-hover:#12234a;--brand:#3215b0;--art-caption:#4820de;--ink:#12234a;--accent:#c83c24;--muted:#57647b;--line:#d5ddea;--wash:#f2f5fc;--display:Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;--body:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace}:root[data-theme=dark]{color-scheme:dark;--background:#0d1426;--blue:#9bb4ff;--ink:#edf2ff;--accent:#ff947c;--muted:#b0bdd5;--line:#586b8d;--wash:#151f35;--brand:#b5a0ff;--art-caption:#b5a0ff}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--background:#0d1426;--blue:#9bb4ff;--ink:#edf2ff;--accent:#ff947c;--muted:#b0bdd5;--line:#586b8d;--wash:#151f35;--brand:#b5a0ff;--art-caption:#b5a0ff}}*{box-sizing:border-box}html{scroll-padding-top:2rem}html[data-language-pending] body{visibility:hidden}body{background:var(--background);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.65}body,h1,h2,h3,p,figure{margin:0}a{color:inherit;text-underline-offset:.2em}button,a{-webkit-tap-highlight-color:transparent}img,svg{max-width:100%;display:block}ul,ol{margin:0;padding:0}::selection{color:#fff;background:var(--blue-fill)}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}main:focus{outline:none}.container{width:min(100% - 2.5rem,1280px);margin-inline:auto}.section-pad{padding-block:4.5rem}.eyebrow{font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;font-size:.68rem;font-weight:500;line-height:1.6}.arrow-icon{stroke:currentColor;stroke-width:1.7px;stroke-linecap:square;flex-shrink:0;width:1.2rem;height:1.2rem}.accent-period{color:var(--accent)}.skip-link{z-index:10;color:#fff;background:var(--blue-fill);padding:.75rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.site-header{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand controls""navigation navigation";align-items:center;gap:1.5rem .5rem;padding-block:1.5rem 1rem;display:grid}.site-header>.brand{grid-area:brand;justify-self:start}.header-controls{grid-area:controls;align-items:flex-start;gap:.5rem;display:flex}.language-control{justify-items:center;display:grid}.language-toggle{border:1px solid var(--line);background:var(--wash);border-radius:999px;align-items:center;padding:3px;display:flex}.language-toggle a{min-width:60px;min-height:44px;color:var(--muted);border-radius:999px;justify-content:center;align-items:center;font-size:.75rem;font-weight:650;text-decoration:none;transition:background-color .16s,color .16s;display:inline-flex}.language-toggle a[aria-current=page]{color:#fff;background:linear-gradient(135deg,#6a5ad7,#5145b8);box-shadow:inset 0 1px #ffffff30,0 2px 5px #3215b026}.language-toggle a:focus-visible{outline-offset:2px}.theme-toggle{width:44px;height:44px;color:var(--blue);cursor:pointer;background:0 0;border:0;border-radius:50%;margin-top:4px;padding:0;transition:background-color .16s}.theme-toggle:not([hidden]){justify-content:center;align-items:center;display:inline-flex}.theme-icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.theme-icon-sun,:root[data-theme=dark] .theme-icon-moon{display:none}:root[data-theme=dark] .theme-icon-sun{display:block}.brand{color:var(--brand);letter-spacing:-.05em;align-items:center;gap:.65rem;font-size:1.45rem;font-weight:800;line-height:1;text-decoration:none;display:inline-flex}.brand-mark{width:2.75rem;height:2.75rem}.brand-subtitle{color:var(--ink);font-family:var(--mono);text-transform:uppercase;letter-spacing:.3em;margin-top:.4rem;font-size:.53rem;font-weight:500;display:block}.site-nav{grid-area:navigation;justify-content:space-between;align-items:center;gap:.4rem;width:100%;font-size:.8rem;font-weight:600;display:flex}.site-nav a{justify-content:center;align-items:center;gap:.4rem;min-height:44px;text-decoration:none;display:inline-flex}.site-nav a:not(.nav-contact){padding:.5rem .3rem}.nav-contact{color:var(--blue);border:1px solid var(--line);padding:.5rem .8rem}.site-nav .arrow-icon{width:.9rem;height:.9rem}.hero{gap:2.5rem;padding-block:2.75rem 3.5rem;display:grid}.hero-eyebrow{align-items:flex-start;gap:.65rem;max-width:24rem;margin-bottom:1.65rem;display:flex}.accent-square{background:var(--accent);flex-shrink:0;width:.5rem;height:.5rem;margin-top:.3rem;display:block}.hero h1,.case-header h1,.not-found h1{color:var(--blue);font-family:var(--display);letter-spacing:-.018em;font-size:clamp(3.4rem,9.4vw,8.1rem);font-weight:400;line-height:1}.hero-final{display:block}:lang(es) .hero h1{font-size:clamp(2.5rem,7.6vw,6.3rem)}.hero-bottom{flex-direction:column;align-items:flex-start;gap:1.2rem;margin-top:1.75rem;display:flex}.hero-bottom p{max-width:25rem;color:var(--muted);font-size:.98rem;line-height:1.7}.text-link{min-height:44px;color:var(--blue);border-bottom:1px solid;justify-content:space-between;align-items:center;gap:1.5rem;font-size:.88rem;font-weight:650;text-decoration:none;display:inline-flex}.button{justify-content:space-between;align-items:center;gap:1.8rem;min-height:52px;padding:.85rem 1.1rem;font-size:.84rem;font-weight:650;text-decoration:none;transition:background-color .16s,color .16s;display:inline-flex}.button-blue{background:var(--blue-fill);color:#fff}.button-white{color:var(--blue-fill);background:#fff}.site-nav a,.text-link,.project-copy h3 a{transition:color .16s}.hero-aside{gap:1.5rem;display:grid}.hero-art{justify-self:center;width:100%;max-width:540px}.hero-art-scene{position:relative}.hero-art-image{width:100%;height:auto}.hero-art-logo{width:22%;height:auto;position:absolute;top:43%;left:50%;transform:translate(-50%,-50%)skewY(-10deg)}.hero-art-caption{color:var(--art-caption);font-family:var(--mono);justify-content:flex-end;align-items:center;gap:.8rem;margin-top:-.5rem;padding-right:1rem;font-size:.73rem;font-style:italic;display:flex}.hero-art-caption .arrow-icon{width:1.1rem;height:1.1rem}.hero-profile{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1.25rem;display:flex}.hero-person{align-self:center}.person-name{font-size:.98rem;font-weight:750}.hero-person>p:last-child{max-width:14rem;color:var(--muted);margin-top:.2rem;font-size:.75rem}.desktop-break{display:none}.capability-strip{background:var(--blue-fill);color:#fff;padding-block:1.1rem}.capability-strip-inner{font-family:var(--mono);text-transform:uppercase;letter-spacing:.03em;grid-template-columns:1fr 1fr;gap:.75rem 1rem;font-size:.65rem;display:grid}.strip-cross{display:none}.section-intro{gap:1.5rem;margin-bottom:2.5rem;display:grid}.section-intro .eyebrow{margin-bottom:1rem}.section-intro h2{letter-spacing:-.055em;font-size:clamp(2.25rem,4.8vw,4rem);font-weight:650;line-height:1.1}.muted-heading{color:var(--muted)}.section-intro>p{max-width:25rem;color:var(--muted);font-size:.94rem}.featured-project{gap:2rem;display:grid}.project-copy{padding-top:.25rem}.project-copy>.eyebrow{color:var(--muted)}.project-copy h3{letter-spacing:-.055em;margin-top:.8rem;font-size:clamp(1.9rem,3vw,2.6rem);font-weight:650;line-height:1.1}.project-copy h3 a{text-decoration:none}.project-summary{max-width:26rem;color:var(--muted);margin-top:1.1rem;font-size:1rem}.project-capabilities{gap:.65rem;margin-block:1.7rem;font-size:.8rem;list-style:none;display:grid}.project-capabilities li{align-items:center;gap:.65rem;display:flex}.project-capabilities li:before{content:"";background:var(--accent);width:.3rem;height:.3rem}.stack-line{font-family:var(--mono);color:var(--muted);margin-bottom:1.25rem;font-size:.65rem}.services-section{background:var(--wash)}.service-list{border-top:1px solid var(--line)}.service-row{border-bottom:1px solid var(--line);gap:1.3rem;padding-block:1.75rem;display:grid}.service-title{align-items:flex-start;gap:.9rem;display:flex}.service-plus{color:var(--accent);font-size:1.65rem;font-weight:400;line-height:1}.service-title h3{letter-spacing:-.035em;font-size:1.3rem;font-weight:600;line-height:1.2}.service-description>p:first-child{color:var(--muted);font-size:.88rem}.service-tools{font-family:var(--mono);color:var(--muted);margin-top:.8rem;font-size:.6rem;line-height:1.8}.service-row ul{flex-wrap:wrap;gap:.4rem .85rem;font-size:.73rem;font-weight:550;list-style:none;display:flex}.about-section{gap:2.5rem;display:grid}.about-heading h2{color:var(--blue);font-family:var(--display);letter-spacing:-.018em;margin-top:1.1rem;font-size:clamp(3.7rem,7.8vw,6.5rem);font-weight:400;line-height:1.02}.about-role{max-width:18rem;font-family:var(--mono);color:var(--muted);margin-top:1.3rem;font-size:.69rem}.about-lead{letter-spacing:-.045em;margin-bottom:1.6rem;font-size:clamp(1.7rem,3.5vw,2.75rem);font-weight:550;line-height:1.2}.about-copy>p:not(.about-lead){color:var(--muted);max-width:33rem;margin-bottom:1.1rem;font-size:.93rem}.about-copy .text-link{margin-top:.8rem}.contact-section{background:var(--blue-fill);color:#fff;padding-block:3.5rem}.contact-grid{gap:2rem;display:grid}.contact-section .eyebrow{color:#d5dfff}.contact-section h2{letter-spacing:-.06em;margin-top:1.3rem;font-size:clamp(2.5rem,5.5vw,4.8rem);font-weight:550;line-height:1.08}.contact-copy>p:first-child{color:#e0e7ff;max-width:25rem;font-size:.96rem}.contact-copy .button{margin-top:1.5rem}.contact-methods{border-top:1px solid #ffffff40;gap:.8rem;margin:1.5rem 0 0;padding-top:1.2rem;display:grid}.contact-methods dt{color:#e0e7ff;font-family:var(--mono);text-transform:uppercase;letter-spacing:.07em;font-size:.63rem}.contact-methods dd{margin:0}.contact-methods a{overflow-wrap:anywhere;align-items:center;max-width:100%;min-height:44px;font-size:.95rem;display:inline-flex}.contact-destination{font-family:var(--mono);color:#e0e7ff;margin-top:1.2rem;font-size:.63rem;line-height:1.9}.contact-destination a{color:#fff;align-items:center;min-height:44px;font-size:.75rem;display:inline-flex}.contact-section :focus-visible{outline-color:#fff}.site-footer{padding-block:2rem;padding-bottom:max(2rem, env(safe-area-inset-bottom));flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.75rem;display:flex}.site-footer>p{color:var(--muted);font-size:.75rem}.footer-credit{width:100%;font-family:var(--mono);color:var(--muted);gap:.25rem;font-size:.57rem;display:grid}.case-study{padding-block:2rem 4.5rem}.case-header{padding-bottom:2.5rem}.back-link{gap:.8rem;margin-bottom:2.5rem;font-size:.75rem}.back-link .arrow-icon{transform:rotate(180deg)}.case-header h1{margin-top:1rem;font-size:clamp(3.25rem,9.5vw,7.5rem);line-height:1.04}.case-summary{max-width:43rem;color:var(--muted);margin-top:1.4rem;font-size:1.05rem}.case-details{gap:2.5rem;margin-top:3rem;display:grid}.case-facts{align-content:start;gap:1.5rem;display:grid}.case-facts ul{margin-top:.8rem;font-size:.85rem;line-height:2;list-style:none}.case-privacy{font-family:var(--mono);color:var(--muted);font-size:.62rem;line-height:1.8}.prose{max-width:44rem;color:var(--muted);font-size:1rem}.prose h2{color:var(--ink);letter-spacing:-.035em;margin-top:2.5rem;margin-bottom:1rem;font-size:1.7rem;font-weight:600;line-height:1.3}.prose h2:first-child{margin-top:0}.prose p+p{margin-top:1rem}.not-found{padding-block:3.5rem 5rem}.not-found h1{margin-top:1.5rem;font-size:clamp(3.1rem,8.5vw,7rem)}.not-found>p:last-of-type{max-width:31rem;color:var(--muted);margin-top:1.5rem}.not-found-actions{flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:2rem;display:flex}@media (width<=399px){.site-header .brand{gap:.5rem;font-size:1.15rem}.site-header .brand-mark{width:36px;height:36px}.header-controls{gap:.25rem}.language-toggle a{min-width:44px}.site-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}}@media (width>=640px){.container{width:min(100% - 4rem,1280px)}.site-nav{gap:1.25rem}.site-header{padding-block:1.75rem}.hero{padding-top:3rem}.hero-profile{justify-self:center;width:100%;max-width:540px}.hero-bottom{flex-direction:row;justify-content:space-between;align-items:center;gap:2rem}.capability-strip-inner{justify-content:space-between;align-items:center;gap:.75rem;font-size:.6rem;display:flex}.strip-cross{color:#c7d1ff;font-size:1rem;display:block}.section-pad{padding-block:5.5rem}.service-row{grid-template-columns:1fr 1.3fr;gap:1.2rem 2rem}.service-row ul{grid-column:2}.footer-credit{text-align:right;width:auto}.case-facts{grid-template-columns:1fr 1fr}.case-privacy{grid-column:1/-1}}@media (width>=960px){.container{width:min(100% - 7rem,1280px)}.desktop-break{display:block}.site-header{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand navigation controls";column-gap:1rem}.site-nav{justify-content:flex-end;gap:2rem;width:auto;font-size:.84rem}.nav-contact{padding-inline:1.1rem}.hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:2rem;padding-block:3.5rem 4.5rem}.hero h1{font-size:clamp(4.4rem,7.3vw,7.1rem)}.hero-eyebrow{max-width:none;font-size:.66rem}.hero-aside{align-self:center;gap:1.5rem}.hero-profile{gap:.75rem}.hero-profile .button{gap:.8rem}.hero-bottom{margin-top:2rem}.hero-bottom p{font-size:.9rem}.capability-strip{padding-block:1.35rem}.capability-strip-inner{font-size:.72rem}.section-pad{padding-block:6.5rem}.section-intro{justify-content:space-between;align-items:flex-end;gap:3rem;margin-bottom:3.5rem;display:flex}.section-intro>p{padding-bottom:.25rem}.featured-project{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center;gap:3.5rem}.project-copy h3{font-size:clamp(2rem,3vw,2.6rem)}.service-row{grid-template-columns:1fr 1.2fr .7fr;gap:2rem;padding-block:2rem}.service-title h3{font-size:1.25rem}.service-description>p:first-child{font-size:.88rem}.service-row ul{grid-column:auto;align-content:start;gap:.4rem;display:grid}.about-section{grid-template-columns:1fr 1.1fr;gap:5rem}.about-copy{padding-top:2rem}.contact-section{padding-block:5rem}.contact-grid{grid-template-columns:1.25fr 1fr;align-items:center;gap:5rem}.contact-copy{padding-top:1.6rem}.site-footer{align-items:center;padding-block:2.5rem}.case-study{padding-block:3rem 6rem}.case-header{padding-bottom:3.5rem}.case-details{grid-template-columns:1fr 2fr;gap:4rem;margin-top:4.5rem}.case-facts{grid-template-columns:1fr;gap:2rem}.case-privacy{grid-column:auto}.not-found{padding-block:5rem 7rem}}.language-toggle a:not([aria-current]):focus-visible{background:var(--line);color:var(--ink)}.theme-toggle:focus-visible{background:var(--wash)}.site-nav a:focus-visible,.text-link:focus-visible,.project-copy h3 a:focus-visible{color:var(--accent)}.button-blue:focus-visible{background:var(--button-hover)}.button-white:focus-visible{background:#e5ecff}@media (hover:hover) and (pointer:fine){.language-toggle a:not([aria-current]):hover{background:var(--line);color:var(--ink)}.theme-toggle:hover{background:var(--wash)}.site-nav a:hover,.text-link:hover,.project-copy h3 a:hover{color:var(--accent)}.button-blue:hover{background:var(--button-hover)}.button-white:hover{background:#e5ecff}}@media (hover:none){.language-toggle a:not([aria-current]):active{background:var(--line);color:var(--ink)}.theme-toggle:active{background:var(--wash)}.site-nav a:active,.text-link:active,.project-copy h3 a:active{color:var(--accent)}.button-blue:active{background:var(--button-hover)}.button-white:active{background:#e5ecff}.language-toggle a:active,.theme-toggle:active,.site-nav a:active,.text-link:active,.project-copy h3 a:active,.button:active{transition:none}}@media (prefers-reduced-motion:no-preference){.arrow-icon-diagonal{--arrow-shift-y:-3px}:is(.button,.text-link,.nav-contact) .arrow-icon{transition:transform .16s}:is(.button,.text-link,.nav-contact):focus-visible .arrow-icon{transform:translate(3px, var(--arrow-shift-y,0px))}.back-link:focus-visible .arrow-icon{transform:rotate(180deg)translate(3px)}.hero-main{animation:.5s cubic-bezier(.16,1,.3,1) both hero-arrive}@keyframes hero-arrive{0%{opacity:.65;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){:is(.button,.text-link,.nav-contact):hover .arrow-icon{transform:translate(3px, var(--arrow-shift-y,0px))}.back-link:hover .arrow-icon{transform:rotate(180deg)translate(3px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
