/* Visual direction: photographic, warm and restrained. */
:root{--paper:#151817;--ink:#f0eee8;--muted:#b4b8b1;--blue:#d4b18b;--line:#373d37;--navy:#202721}
body{background:var(--paper)}h1,h2{letter-spacing:-.055em}em{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;color:#d4b18b;letter-spacing:-.045em}::selection{background:#d4b18b;color:#151817}.header{height:100px}.header nav a:last-child{border-color:#73796f;border-radius:30px}.brand>span:first-child{color:#d4b18b}.button{background:#d4b18b;color:#161b18;border-radius:40px;padding:18px 26px}.button:hover{background:#efdbbf}.button.light{background:#eeeae0;color:#19221a}.text-link{border-color:#70766f}.home-visual .header{position:absolute;top:0;left:50%;transform:translateX(-50%);z-index:5;border-bottom-color:#ffffff40;color:#fff}.home-visual .header nav a[aria-current]{color:#ead0ae}.home-visual .header nav a:last-child{border-color:#ffffff70}.home-visual .brand-caption{border-color:#ffffff50}
.visual-hero{min-height:760px;height:100svh;max-height:1100px;position:relative;isolation:isolate;overflow:hidden}.hero-slides,.hero-slide,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-slide{object-fit:cover;object-position:center;opacity:0;transform:scale(1.075);transition:opacity 1.4s ease,transform 8s linear}.hero-slide.active{opacity:1;transform:scale(1)}.hero-slide:nth-child(2){object-position:center 48%}.hero-shade{background:linear-gradient(90deg,#101714a3,transparent 95%),linear-gradient(0deg,#101714d9,transparent 45%,#10171440);z-index:1}.visual-hero-content{position:relative;z-index:2;width:calc(100% - 112px);max-width:1328px;margin:auto;padding-top:clamp(200px,27vh,320px)}.visual-hero .eyebrow{color:#eeece5;font-size:10px;letter-spacing:2.5px}.visual-hero h1{font-size:clamp(68px,8.6vw,128px);line-height:1.03;color:#fff;margin-top:28px;letter-spacing:-.065em}.visual-hero h1 em{color:#e8cdb0;font-size:1.13em;letter-spacing:-.055em}.visual-hero-content>p:not(.eyebrow){color:#e5e6de;font-size:16px;margin:23px 0 12px}.visual-hero .button{margin-top:18px}.hero-footer{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);width:calc(100% - 112px);max-width:1328px;display:flex;align-items:center;gap:35px;z-index:3;color:white;border-top:1px solid #ffffff40;padding-top:24px}.scroll-cue{font-size:9px;letter-spacing:2px;display:flex;gap:15px;align-items:center}.scroll-cue>span{font-size:24px;animation:cue-down 2s ease-in-out 3}.hero-footer>a:nth-child(2){margin-left:auto}.hero-footer strong{font-size:14px;font-weight:500;display:block;margin-top:7px}.hero-footer>a>span:not(:first-child),#hero-project>span{font-size:8px;letter-spacing:1.6px;color:#d0d6ce}.slide-controls{display:flex;gap:5px;margin-left:30px}.slide-controls button{background:none;color:#e7e8e3;border:0;border-bottom:1px solid #ffffff40;font-size:11px;min-width:42px;height:44px;cursor:pointer}.slide-controls button[aria-pressed=true]{border-bottom:2px solid #efd3af;color:#efd3af}.slide-controls .pause-slides{border:1px solid #ffffff40;border-radius:50%;margin-left:14px;font-size:15px}.home-visual .work-section{padding-top:95px}.section-heading.compact{align-items:flex-end;margin-bottom:38px}.section-heading.compact .eyebrow{margin-bottom:20px}.project-grid{gap:50px 28px}.project-image{border-radius:2px;aspect-ratio:1.1}.project-image.bondo{aspect-ratio:2.05}.project-image img{object-position:center;transition:transform 1.2s cubic-bezier(.2,.65,.3,1),filter .8s;filter:saturate(.8)}.project-image:hover img{transform:scale(1.055);filter:saturate(1)}.project-image.bondo img{object-position:center}.project-visit{background:#f0eee8;color:#19221a;transition:transform .3s}.project-image:hover .project-visit{transform:rotate(45deg)}.image-label{background:#f0eee8;color:#263025;letter-spacing:1.6px}.project-info h3{font-size:23px}.tag{color:#c4c8bf}.bondo-wordmark{font-size:80px}.visual-services{border-top:1px solid var(--line);padding-top:65px}.visual-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-art{aspect-ratio:1.15;position:relative;overflow:hidden;border-radius:2px;display:flex;align-items:center;justify-content:center}.service-art img{width:100%;height:100%;object-fit:cover;transition:transform 1s}.visual-service:hover .service-art img{transform:scale(1.045)}.web-art{background:#b4a991;padding:25px}.web-art img{height:auto;max-height:90%;object-fit:cover;object-position:top;transform:rotate(-7deg);box-shadow:10px 20px 40px #171e2350;border:5px solid #e7e4de;border-radius:4px}.visual-service:hover .web-art img{transform:rotate(-2deg) translateY(-8px)}.portfolio-art:after{content:'';position:absolute;inset:0;background:#17211640}.art-type{position:absolute;left:25px;bottom:27px;color:white;font-size:30px;line-height:1.1;z-index:1;letter-spacing:-1px}.art-type i{font-family:'Cormorant Garamond',Georgia,serif;font-size:39px}.service-caption{padding:23px 0}.service-caption>span{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.service-caption h3{font-size:23px;margin-top:12px}.service-caption b{float:right;font-size:24px;font-weight:400}.software-art{background:#52665a;padding:28px}.abstract-window{background:#e4e7df;width:100%;border-radius:7px;transform:perspective(800px) rotateY(-12deg) rotateZ(5deg);box-shadow:14px 25px 40px #15201860;transition:transform .8s}.visual-service:hover .abstract-window{transform:perspective(800px) rotateY(0) rotateZ(0) translateY(-5px)}.window-top{display:block;font-size:8px;letter-spacing:1px;color:#526353;padding:14px;border-bottom:1px solid #c6cdc3}.window-top i{float:right}.abstract-body{display:flex;padding:15px;gap:14px}.abstract-side{width:18%;display:grid;align-content:start;gap:12px}.abstract-side i{height:5px;background:#bec8ba;border-radius:3px}.abstract-main{flex:1}.abstract-stats{display:flex;gap:9px}.abstract-stats i{height:35px;background:#c2cbbc;flex:1;border-radius:3px}.abstract-stats i:last-child{background:#d4bb96}.chart-bars{height:90px;display:flex;align-items:end;gap:7px;padding:16px 0 4px}.chart-bars i{flex:1;background:#708976;border-radius:3px 3px 0 0;height:35%;transform-origin:bottom;animation:bar-reveal 1.3s ease both}.chart-bars i:nth-child(2){height:55%}.chart-bars i:nth-child(3){height:42%}.chart-bars i:nth-child(4){height:68%}.chart-bars i:nth-child(5){height:60%}.chart-bars i:nth-child(6){height:82%}.chart-bars i:nth-child(7){height:100%}.abstract-lines{display:grid;gap:7px;padding-top:12px}.abstract-lines i{height:4px;background:#c3cabe;border-radius:2px}.abstract-lines i:last-child{width:70%}.cta{padding-top:85px;padding-bottom:85px;background:#252f28;border-top:1px solid #4b5549}.cta h2{font-size:clamp(42px,4.4vw,64px)}.cta .eyebrow{color:#c7cfbf}.footer-top p{color:var(--muted)}.page-hero{padding-bottom:60px}.page-hero h1{font-size:clamp(48px,6.2vw,90px)}.page-hero+.visual-services{border:0;padding-top:0}.mini-process{border-top:1px solid var(--line)}.mini-process>div{display:flex;justify-content:space-between;margin-top:30px;font-size:24px;letter-spacing:-.8px}.contact-photo{width:100%;height:245px;object-fit:cover;border-radius:2px;margin-bottom:28px}.contact-copy h2{font-size:32px}form{background:#202620;border-color:#454e42}input,textarea,select{background:#181e19;border-color:#4d5849;color:var(--ink)}input::placeholder,textarea::placeholder{color:#a0aa9c}.faq{padding-top:50px}.menu-toggle{color:var(--ink)}.footer-top{padding-bottom:25px}.section{scroll-margin-top:24px}.reveal-ready{opacity:0;transform:translateY(32px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.65,.3,1)}.reveal-ready.is-visible{opacity:1;transform:none}.visual-hero-content>*{animation:hero-enter 1s ease both}.visual-hero-content h1{animation-delay:.12s}.visual-hero-content>p:not(.eyebrow){animation-delay:.25s}.visual-hero-content>.button{animation-delay:.4s}.motion-paused .hero-slide{transition:none}.motion-paused .scroll-cue>span{animation-play-state:paused}
@keyframes hero-enter{from{opacity:0;transform:translateY(23px)}to{opacity:1;transform:none}}@keyframes cue-down{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes bar-reveal{from{transform:scaleY(.2)}to{transform:scaleY(1)}}
@media(max-width:1000px){.visual-hero-content,.hero-footer{width:calc(100% - 64px)}.visual-hero{min-height:740px}.visual-service-grid{gap:16px}.service-caption h3{font-size:19px}.service-art{aspect-ratio:1}.web-art,.software-art{padding:18px}.art-type{font-size:25px;left:20px}.art-type i{font-size:33px}}
@media(max-width:650px){.header{height:84px}.home-visual .header nav{background:#182019;box-shadow:0 15px 30px #0005;border-color:#5c6656}.home-visual .menu-toggle{color:white;border-color:#ffffff70}.visual-hero{height:92svh;min-height:650px;max-height:900px}.visual-hero-content{width:calc(100% - 40px);padding-top:195px}.visual-hero h1{font-size:clamp(48px,12vw,76px);line-height:1.05;margin-top:24px}.visual-hero .eyebrow{font-size:8px;letter-spacing:1.5px}.visual-hero-content>p:not(.eyebrow){font-size:13px;margin-top:22px}.visual-hero .button{font-size:11px;padding:16px 20px}.hero-footer{width:calc(100% - 40px);bottom:22px;padding-top:18px;gap:16px;flex-wrap:wrap}.scroll-cue{display:none}.hero-footer>a:nth-child(2){margin-left:0;flex:1;min-width:115px}.hero-footer strong{font-size:11px}#hero-project>span{font-size:7px;letter-spacing:1px}.slide-controls{margin-left:0;gap:2px}.slide-controls button{min-width:30px;height:40px;font-size:10px}.slide-controls .pause-slides{margin-left:5px;min-width:36px}.hero-shade{background:linear-gradient(90deg,#0e171585,#0e171520),linear-gradient(0deg,#101714ed,transparent 60%,#10171450)}.hero-slide{object-position:57% center}.home-visual .work-section{padding-top:50px}.section-heading.compact{display:block;margin-bottom:26px}.section-heading.compact .eyebrow{font-size:9px;margin-bottom:18px}.section-heading.compact .text-link{display:inline-block;font-size:11px;margin-top:22px}.project-grid{gap:33px}.project-image{aspect-ratio:1.15}.project-image.bondo{aspect-ratio:1.05}.bondo-wordmark{font-size:52px}.project-info h3{font-size:20px}.project-info{align-items:center}.project-info .tag{font-size:8px}.visual-service-grid{grid-template-columns:1fr;gap:18px}.service-art{aspect-ratio:1.35}.web-art{padding:35px}.web-art img{max-width:88%}.software-art{padding:40px}.abstract-window{max-width:270px}.service-caption h3{font-size:23px}.visual-services{padding-top:45px}.art-type{font-size:34px}.art-type i{font-size:44px}.cta{padding:48px 20px}.cta h2{font-size:42px}.mini-process>div{flex-direction:column;gap:22px;font-size:23px}.contact-photo{height:200px}.page-hero h1{font-size:clamp(38px,9vw,58px)}.contact-method a{overflow-wrap:anywhere}.footer-top p{font-size:12px}.hero-footer a:focus-visible,.slide-controls button:focus-visible{outline-color:white}}
@media(prefers-reduced-motion:reduce){.hero-slide{transform:none;transition:none}.reveal-ready{opacity:1;transform:none}.visual-hero-content>*{animation:none}.scroll-cue>span{animation:none}.chart-bars i{animation:none}}
.skip-link{top:12px;left:20px;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;color:#151817}.skip-link:focus{width:auto;height:auto;padding:15px;clip-path:none}
/* Technology, agency and delivery details. */
.stack-section,.included-section{border-top:1px solid var(--line)}.stack-section .section-heading>p{font-size:13px;max-width:220px}.stack-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stack-card{position:relative;overflow:hidden;min-height:176px;border:1px solid #414b40;padding:25px;background:#1b221d;transition:background .35s,border-color .35s,transform .5s}.stack-card:hover{background:#273128;border-color:#a78e70;transform:translateY(-5px)}.tech-symbol{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;font-size:25px;letter-spacing:-1px;font-weight:600;color:#d4b18b;transition:transform .65s}.stack-card:hover .tech-symbol{transform:translateY(-3px) rotate(-7deg)}.stack-card:nth-child(3) .tech-symbol{font-size:38px}.stack-card:nth-child(3):hover .tech-symbol{transform:rotate(90deg)}.stack-card h3{font-size:19px;margin-top:19px}.stack-card p{font-size:11px;margin:6px 0 0}.tech-spark{position:absolute;right:20px;top:24px;color:#778573;transition:transform .4s,color .4s}.stack-card:hover .tech-spark{transform:translate(3px,-3px);color:#d4b18b}.stack-note{display:grid;grid-template-columns:1fr 2fr;gap:25px;padding-top:26px}.stack-note>span{font-size:9px;letter-spacing:1.5px;color:#d4b18b;padding-top:5px}.stack-note p{font-size:13px;margin:0;max-width:680px}.story-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding-top:35px;padding-bottom:95px}.story-visual{height:580px;position:relative;overflow:hidden}.story-visual>img{height:100%;width:100%;object-fit:cover;transition:transform 1.3s}.story-visual:hover>img{transform:scale(1.04)}.story-visual:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#142116a8);pointer-events:none}.story-stamp{position:absolute;top:30px;left:30px;width:135px;height:135px;border:1px solid #f2e8d494;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#fff4de;font-size:39px;letter-spacing:-3px;backdrop-filter:blur(6px);background:#18221930}.story-stamp span{font-size:8px;line-height:1.5;letter-spacing:1px;text-align:center;margin-top:8px}.story-photo-label{position:absolute;bottom:24px;left:25px;font-size:8px;letter-spacing:1.6px;color:#efe8db;z-index:1}.story-copy .eyebrow{margin-bottom:26px}.story-copy h2{font-size:clamp(35px,3.3vw,49px);margin-bottom:27px}.story-copy>p:not(.eyebrow){font-size:14px;line-height:1.85;max-width:450px}.story-copy .text-link{display:inline-block;margin-top:15px}.included-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.included-card{border-top:1px solid #465141;padding:28px 8px 16px;transition:border-color .4s}.included-card:hover{border-color:#d4b18b}.included-card>span{font-size:28px;color:#d4b18b;display:inline-block;transition:transform .5s}.included-card:hover>span{transform:translateX(7px)}.included-card h3{font-size:21px;margin-top:20px}.included-card p{font-size:13px;max-width:270px;margin-bottom:0}.service-caption p{font-size:13px;max-width:320px}.stack-card.reveal-ready,.included-card.reveal-ready{transition:opacity .8s,transform .8s,background .35s,border-color .35s;transition-delay:var(--entrance-delay,0ms)}.stack-card.is-visible,.included-card.is-visible{transition-delay:0ms}.story-visual.reveal-ready{transform:translateY(25px) scale(.975)}.story-visual.is-visible{transform:none}.mini-process>div>span{position:relative;padding-bottom:15px}.mini-process>div>span:after{content:'';position:absolute;bottom:0;left:0;height:1px;width:0;background:#d4b18b;transition:width 1.2s ease}.mini-process.is-visible>div>span:after{width:100%}.mini-process.is-visible>div>span:nth-child(2):after{transition-delay:.2s}.mini-process.is-visible>div>span:nth-child(3):after{transition-delay:.4s}
@media(max-width:1000px){.stack-grid{grid-template-columns:repeat(2,1fr)}.story-section{gap:40px}.story-visual{height:530px}.header nav{gap:23px}}
@media(max-width:650px){.stack-grid{gap:10px}.stack-card{padding:19px 15px;min-height:165px}.stack-card h3{font-size:17px}.stack-card p{font-size:10px}.tech-spark{right:14px;top:21px}.tech-symbol{font-size:23px}.stack-note{grid-template-columns:1fr;gap:12px}.stack-note p{font-size:12px}.stack-section .section-heading>p{max-width:none;margin-top:20px}.story-section{grid-template-columns:1fr;gap:32px;padding-top:10px;padding-bottom:55px}.story-visual{height:370px}.story-copy h2{font-size:36px}.story-copy>p:not(.eyebrow){font-size:13px}.story-stamp{width:110px;height:110px;left:20px;top:20px;font-size:34px}.story-photo-label{left:20px;font-size:7px}.included-grid{grid-template-columns:repeat(2,1fr);gap:18px}.included-card h3{font-size:17px}.included-card p{font-size:12px}.header nav{gap:8px}}
@media(prefers-reduced-motion:reduce){.story-visual.reveal-ready{transform:none}.mini-process>div>span:after{width:100%}}
/* Mobile usability: comfortable touch targets and readable form fields. */
@media(max-width:760px){
  .header{position:relative;height:84px}
  .menu-toggle{display:flex;align-items:center;justify-content:center;gap:12px;min-width:88px;min-height:44px;padding:10px 14px;border:1px solid #626c5d;border-radius:4px;background:transparent;color:var(--ink);font-size:13px}
  .header nav{display:none;position:absolute;top:76px;left:0;right:0;z-index:10;flex-direction:column;align-items:stretch;gap:5px;padding:14px;background:#182019;border:1px solid #5c6656;border-radius:4px;box-shadow:0 15px 30px #0005;max-height:calc(100svh - 100px);overflow-y:auto;overscroll-behavior:contain}
  .header nav.open{display:flex}
  .header nav a{display:flex;align-items:center;min-height:46px;padding:12px 14px;font-size:15px}
  .header nav a:last-child{justify-content:space-between;margin-top:4px}
  .home-visual .header nav{background:#182019}
  input,select,textarea{font-size:16px;min-height:48px}
  label{font-size:13px}
  .button{min-height:48px}
  .slide-controls button,.slide-controls .pause-slides{min-width:44px;min-height:44px;height:44px}
  .slide-controls{gap:3px}
  .slide-controls .pause-slides{margin-left:5px}
  .hero-footer{gap:16px}
  .hero-footer>a:nth-child(2){min-width:130px}
  .project-visit,.circle-link{min-width:44px;min-height:44px}
  .text-link{display:inline-flex;align-items:center;min-height:44px}
  .contact-method a{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere;max-width:100%}
  .footer-bottom a,.footer-top>a:last-child{display:inline-flex;align-items:center;min-height:44px}
  summary{min-height:44px;align-content:center;line-height:1.5}
  .hero-footer{padding-bottom:env(safe-area-inset-bottom,0px)}
}
@media(max-width:380px){
  .hero-footer{display:grid;grid-template-columns:1fr;gap:12px;bottom:20px;padding-top:16px}
  .slide-controls{justify-self:start;margin:0}
  .hero-footer>a:nth-child(2){min-width:0}
  .visual-hero-content{padding-top:160px}
  .visual-hero{min-height:700px}
  .visual-hero h1{font-size:clamp(42px,12vw,48px)}
  .stack-card{padding:16px 12px}.stack-card h3{font-size:16px}
  .project-info{gap:9px}.project-info .tag{white-space:normal}
  form{padding:20px}
}
@media(max-width:950px) and (max-height:500px) and (orientation:landscape){
  .visual-hero{height:auto;min-height:670px;max-height:none}
  .visual-hero-content{padding-top:155px;padding-bottom:180px}
  .visual-hero h1{font-size:64px}
  .hero-footer{bottom:22px}
}
@media(hover:none){
  .button:hover,.stack-card:hover,.project-image:hover img,.visual-service:hover .service-art img,.story-visual:hover>img{transform:none}
  .visual-service:hover .web-art img{transform:rotate(-7deg)}
  .visual-service:hover .abstract-window{transform:perspective(800px) rotateY(-12deg) rotateZ(5deg)}
}
/* Shared SVG icon system and bilingual navigation. */
.ui-icon{display:inline-block;width:20px;height:20px;flex-shrink:0;vertical-align:middle;stroke:currentColor;stroke-width:1.6;fill:none;letter-spacing:normal}.tech-symbol .ui-icon{width:31px;height:31px;fill:currentColor;stroke:none}.tech-symbol .ui-icon[stroke="currentColor"]{fill:none;stroke:currentColor}.whatsapp-float .ui-icon{fill:currentColor;stroke:none;width:25px;height:25px}.button .ui-icon{width:19px;height:19px}.project-visit .ui-icon,.circle-link .ui-icon{width:22px;height:22px}.included-card>span .ui-icon{width:29px;height:29px}.scroll-cue>span .ui-icon{width:23px;height:23px}.header>.brand{order:0}.header>nav{order:1;margin-left:auto}.header-actions{order:2;margin-left:24px}.menu-toggle{order:3}.language-switch{display:flex;gap:2px;align-items:center;white-space:nowrap}.language-switch button{background:transparent;border:0;color:#aeb7a7;min-height:44px;min-width:36px;cursor:pointer;font-size:11px;padding:8px}.language-switch button[aria-pressed=true]{color:#e7c9a3;text-decoration:underline;text-underline-offset:7px}.language-switch>span{font-size:10px;color:#88907f}.home-visual .language-switch button{color:#eee}.home-visual .language-switch button[aria-pressed=true]{color:#f1d2ad}.whatsapp-float{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:30;display:flex;align-items:center;gap:10px;min-height:56px;padding:15px 19px;background:#236842;color:#fff;border:1px solid #669c75;border-radius:40px;box-shadow:0 6px 28px #0004;transition:background .25s,transform .35s;animation:contact-enter .8s 1s both}.whatsapp-float span{font-size:12px}.whatsapp-float:hover{background:#1a7743;transform:translateY(-4px)}.whatsapp-float:focus-visible{outline:3px solid #f0d5ae;outline-offset:4px}.footer{padding-bottom:100px}.project-image .ui-icon,.button .ui-icon,.text-link .ui-icon{transition:transform .4s}.button:hover .ui-icon,.text-link:hover .ui-icon{transform:translate(3px,-3px)}.included-card:hover .ui-icon{transform:rotate(-8deg);transition:transform .4s}.header nav a{position:relative}.header nav a:not(:last-child):after{content:'';height:1px;background:currentColor;position:absolute;left:0;right:0;bottom:6px;transform:scaleX(0);transform-origin:left;transition:transform .35s}.header nav a:hover:after{transform:scaleX(1)}
@keyframes contact-enter{from{opacity:0;transform:translateY(25px) scale(.9)}to{opacity:1;transform:none}}
@media(max-width:1000px){.header nav{gap:15px}.header-actions{margin-left:12px}.header nav a{font-size:12px}}
@media(max-width:760px){.header-actions{margin-left:auto;margin-right:12px}.language-switch button{min-width:30px;font-size:11px}.header nav{margin-left:0}.header nav a{font-size:15px}.menu-toggle{min-width:78px;padding:10px}.whatsapp-float{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:54px;height:54px;min-height:54px;padding:14px;justify-content:center}.whatsapp-float span{display:none}.home-visual .hero-footer{padding-right:58px}.slide-controls{flex-wrap:nowrap}.hero-footer{padding-bottom:12px}.header .brand-caption{font-size:7px;letter-spacing:1px}.hero-footer>a:nth-child(2){min-width:100px}.footer{padding-bottom:96px}}
@media(max-width:380px){.header-actions{margin-right:6px}.header .brand-caption{display:none}.home-visual .hero-footer{padding-right:58px}.language-switch button{min-width:32px}.visual-hero-content{padding-top:150px}}
@media(prefers-reduced-motion:reduce){.whatsapp-float{animation:none}}
/* Persistent navigation, with an opaque surface over page content. */
.header,.home-visual .header{position:sticky;top:0;left:auto;transform:none;z-index:50;background:#151817f5;box-shadow:none;border-bottom-color:#414b40}
.home-visual .header{position:fixed;left:50%;transform:translateX(-50%)}
.header nav{scrollbar-width:thin}
#contenido,#nosotros,#tecnologias,#trabajo,.section{scroll-margin-top:120px}
@media(max-width:760px){#contenido,#nosotros,#tecnologias,#trabajo,.section{scroll-margin-top:104px}}

.header:before{content:"";position:absolute;inset:0 calc((100% - 100vw)/2);background:#151817f5;border-bottom:1px solid #414b40;z-index:-1;pointer-events:none}
/* The home navigation blends into the cover until the visitor scrolls. */
.home-visual .header{background:transparent;transition:border-color .35s ease}
.home-visual .header:before{opacity:0;transition:opacity .35s ease}
.home-visual .header:not(.is-scrolled){border-bottom-color:#ffffff40}
.home-visual .header.is-scrolled:before{opacity:1}
/* Natural-flow cover keeps the CTA and lower navigation apart at any height. */
.visual-hero{height:auto;min-height:max(760px,100svh);max-height:none;display:flex;flex-direction:column}
.visual-hero-content{flex:1;padding-top:clamp(185px,24vh,290px);padding-bottom:64px}
.hero-footer{position:relative;left:auto;bottom:auto;transform:none;flex-shrink:0;margin:0 auto 30px;padding-top:24px}
/* Original metallic contour artwork, with a restrained agency monogram. */
.page-hero{position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:none;padding:90px max(56px,calc((100vw - 1328px)/2)) 88px;min-height:440px;margin-bottom:48px;background:#19241f}
.page-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#121c18fa 0%,#16211ae8 35%,#18231b75 70%,#18231b22);pointer-events:none}
.page-hero h1{position:relative;max-width:1050px;font-size:clamp(44px,5.7vw,82px)}
.interior-art{position:absolute;inset:0;z-index:-2;overflow:hidden;background:radial-gradient(ellipse at 80% 50%,#52665955,transparent 70%)}
.interior-art>img{position:absolute;width:125%;height:155%;max-width:none;right:-19%;top:-25%;object-fit:cover;opacity:.75;animation:metal-drift 22s ease-in-out infinite alternate;transform-origin:75% 50%}
.interior-monogram{position:absolute;right:5%;top:50%;transform:translateY(-50%);font-family:Manrope,Arial,sans-serif;font-weight:800;font-size:clamp(150px,23vw,350px);letter-spacing:-.1em;color:#bdbda540;line-height:1;animation:brand-breathe 10s ease-in-out infinite alternate}
.interior-monogram>span{color:#d4b18b60}.background-motion{position:absolute;bottom:20px;right:32px;display:grid;place-items:center;width:44px;height:44px;border:1px solid #a9b19b70;border-radius:50%;color:#e8e7dd;background:#17231988;cursor:pointer}
.page-hero.motion-stopped .interior-art>*{animation-play-state:paused}
@keyframes metal-drift{from{transform:translate(-2%,-2%) rotate(-7deg) scale(1.02)}to{transform:translate(3%,3%) rotate(5deg) scale(1.12)}}
@keyframes brand-breathe{from{opacity:.5}to{opacity:1}}
@media(max-width:1000px){.page-hero{padding-left:32px;padding-right:32px}}
@media(max-width:760px){.visual-hero{min-height:max(740px,100svh)}.visual-hero-content{padding-top:175px;padding-bottom:54px}.hero-footer{margin-bottom:24px}.page-hero{padding:64px 20px 80px;min-height:340px;margin-bottom:32px}.page-hero h1{font-size:clamp(38px,8.5vw,60px)}.interior-art>img{width:180%;right:-55%;opacity:.6}.interior-monogram{font-size:210px;right:3%;top:60%;opacity:.7}.background-motion{right:20px;bottom:16px}.page-hero:after{background:linear-gradient(90deg,#121c18eb,#16211aa6 70%,#18231b77)}}
@media(max-width:380px){.visual-hero-content{padding-top:150px}.visual-hero{min-height:740px}.hero-footer{bottom:auto;padding-top:18px}}
@media(max-width:950px) and (max-height:500px) and (orientation:landscape){.visual-hero-content{padding-top:155px;padding-bottom:54px}.visual-hero{min-height:670px}.hero-footer{bottom:auto}}
@media(prefers-reduced-motion:reduce){.interior-art>*{animation:none!important}.background-motion{display:none}}
/* Each destination has its own visual identity. */
.page-proyectos .interior-art{background:linear-gradient(120deg,#18231b,#684e35)}
.page-proyectos .interior-art>img{content:url('../assets/bondo-piaya.jpeg');width:100%;height:120%;inset:-10% 0;object-fit:cover;opacity:.8;animation:project-pan 24s ease-in-out infinite alternate}
.page-proyectos .interior-monogram{display:none}
.page-proyectos .page-hero:after{background:linear-gradient(90deg,#152018eb,#152018b3 50%,#15201833)}
.page-contacto .interior-art{background:radial-gradient(ellipse at 80% 80%,#a2775555,transparent 65%),#1f2326}
.page-contacto .interior-art>img{display:none}
.page-contacto .interior-art:before,.page-contacto .interior-art:after{content:'';position:absolute;width:650px;height:650px;border:1px solid #dac4a473;border-radius:50%;right:-50px;top:-100px;box-shadow:0 0 0 40px #d6b6930b,0 0 0 80px #d6b69310,0 0 0 120px #d6b6930a;animation:orbit-drift 18s ease-in-out infinite alternate}
.page-contacto .interior-art:after{width:400px;height:400px;right:15%;top:30%;border-color:#a4bac773;animation-direction:alternate-reverse}
.page-contacto .interior-monogram{display:none}
.page-nosotros .interior-art{background:radial-gradient(ellipse at 80% 50%,#6a745557,transparent 70%),#19231e}
.page-nosotros .interior-art>img{display:none}
.page-nosotros .interior-monogram{color:#eee8d347;right:8%;font-size:clamp(220px,28vw,400px);text-shadow:0 15px 80px #d8b38c20;animation:monogram-float 12s ease-in-out infinite alternate}
.page-nosotros .interior-art:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#ccd3b00b 1px,transparent 1px),linear-gradient(90deg,#ccd3b00b 1px,transparent 1px);background-size:65px 65px;transform:perspective(600px) rotateY(-15deg) scale(1.2)}
.page-gracias .interior-art{background:radial-gradient(ellipse at 80% 40%,#a1845759,transparent 55%),radial-gradient(ellipse at 50% 90%,#48715c66,transparent 65%),#15211c}
.page-gracias .interior-art>img{display:none}
.page-gracias .interior-monogram{opacity:.35}
.page-gracias .interior-art:after{content:'';position:absolute;width:70%;height:140%;right:-10%;top:-30%;background:conic-gradient(from 45deg,transparent,#c7b08a26,transparent,#729d842b,transparent);filter:blur(40px);animation:ambient-turn 24s linear infinite}
.page-hero.motion-stopped .interior-art:before,.page-hero.motion-stopped .interior-art:after{animation-play-state:paused}
@keyframes project-pan{from{transform:scale(1)}to{transform:scale(1.09) translateX(-1%)}}
@keyframes orbit-drift{from{transform:translate(0,0)}to{transform:translate(-50px,25px)}}
@keyframes monogram-float{from{transform:translateY(-48%) rotate(-3deg)}to{transform:translateY(-54%) rotate(2deg)}}
@keyframes ambient-turn{to{transform:rotate(360deg)}}
@media(max-width:760px){.page-proyectos .interior-art>img{width:100%;right:0;object-position:65% center}.page-contacto .interior-art:before{right:-370px}.page-contacto .interior-art:after{right:-150px}.page-nosotros .interior-monogram{right:5%;font-size:240px}}
@media(prefers-reduced-motion:reduce){.interior-art:before,.interior-art:after{animation:none!important}}
/* Services: liquid chrome. Projects: an actual client photograph. */
.page-servicios .mercury-art{background:radial-gradient(ellipse at 75% 15%,#b6bac1,transparent 30%),radial-gradient(ellipse at 65% 80%,#646a72,transparent 45%),#20242b}
.mercury-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.page-servicios .page-hero:after{background:linear-gradient(90deg,#111719d9,#11171999 45%,#11171915 100%)}
.page-proyectos .interior-art>img{content:normal}
/* Background-only scroll softening; content stays crisp and interactive. */
.visual-hero,.page-hero{--scroll-softness:0px}
.hero-slides,.page-hero .interior-art{filter:blur(var(--scroll-softness));transition:filter .1s linear}
.hero-slides{inset:-12px;width:calc(100% + 24px);height:calc(100% + 24px)}
.visual-hero:after{content:'';position:absolute;inset:auto 0 0;height:170px;background:linear-gradient(transparent,var(--paper));z-index:1;pointer-events:none}
.page-hero:before{content:'';position:absolute;inset:auto 0 0;height:110px;background:linear-gradient(transparent,var(--paper));z-index:0;pointer-events:none}
.page-hero>.eyebrow,.page-hero>h1,.page-hero>p,.page-hero>.button,.page-hero>.background-motion{position:relative;z-index:1}
.page-hero>.background-motion{position:absolute}
.home-visual .work-section{padding-top:65px}
.services-home,.visual-services,.stack-section,.included-section,.mini-process{border-top-color:transparent}
.cta{border-top:0;background:linear-gradient(var(--paper),#252f28 25%,#252f28 80%,var(--paper));padding-top:105px;padding-bottom:105px}
@media(max-width:760px){.visual-hero:after{height:130px}.page-hero:before{height:90px}.home-visual .work-section{padding-top:40px}.cta{padding-top:70px;padding-bottom:70px}}
@media(prefers-reduced-motion:reduce){.hero-slides,.page-hero .interior-art{filter:none;transition:none}}
/* Ambient page surface and richer process/contact sections. */
body{background-color:var(--paper);background-image:radial-gradient(ellipse at 0% 35%,#35534620,transparent 45%),radial-gradient(ellipse at 100% 75%,#a37b4620,transparent 45%);background-attachment:fixed}
.detailed-process{padding-top:55px;padding-bottom:65px}.detailed-process>h2{margin:23px 0 38px}.steps-grid,.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.step-card{position:relative;padding:30px;background:linear-gradient(140deg,#35453565,#1a221cb3);border:1px solid #7c8a6338;border-radius:8px;overflow:hidden}.step-card:after{content:'';position:absolute;right:-50px;top:-65px;width:170px;height:170px;border:1px solid #bdaf8130;border-radius:50%;pointer-events:none}.step-icon{display:block;width:32px;height:32px;color:#d4b18b;margin-bottom:30px}.step-card .eyebrow{display:block;font-size:10px;letter-spacing:1px;color:#c7b38f}.step-card h3{font-size:23px;margin:17px 0 12px}.step-card p{font-size:14px;line-height:1.8;margin:0 0 25px}.step-tags{font-size:10px;letter-spacing:.3px;color:#c4b799;border-top:1px solid #74826840;display:block;padding-top:18px}.step-card:hover .step-icon{transform:translateY(-4px);transition:transform .4s}.values-grid article{padding:28px 0;border-top:1px solid #87957255}.values-grid article>span{font-size:11px;color:#d4b18b}.values-grid h3{margin-top:20px;font-size:24px}.values-grid p{font-size:14px;line-height:1.8}.about-project-strip{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.about-project-strip>img{width:100%;height:400px;object-fit:cover;border-radius:6px}.about-project-strip h2{margin-top:22px}.about-project-strip p:not(.eyebrow){font-size:14px;line-height:1.8}.shared-contact{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding-top:75px;padding-bottom:90px;border-top:1px solid #56664855}.shared-contact-copy h2{margin-top:24px}.shared-contact-copy>p:not(.eyebrow){font-size:15px;max-width:390px;margin:25px 0}.shared-contact form{position:relative;background:linear-gradient(135deg,#29342bea,#1b241ef5);box-shadow:0 22px 80px #0002}.contact-mini-brand{font-size:100px;letter-spacing:-10px;font-weight:700;line-height:1;margin-top:45px;color:#a9b5a224}.contact-mini-brand span{color:#c6a97d38}
@media(max-width:1000px){.shared-contact{gap:35px}.step-card{padding:22px}.about-project-strip{gap:35px}}
@media(max-width:760px){body{background-attachment:scroll}.steps-grid,.values-grid{grid-template-columns:1fr;gap:18px}.detailed-process{padding-top:30px;padding-bottom:40px}.step-card{padding:25px}.step-icon{margin-bottom:22px}.step-card p{font-size:13px}.step-card h3{font-size:22px}.about-project-strip{grid-template-columns:1fr;gap:28px}.about-project-strip>img{height:290px}.shared-contact{grid-template-columns:1fr;gap:30px;padding-top:45px;padding-bottom:45px}.shared-contact-copy h2{font-size:36px}.shared-contact-copy>p:not(.eyebrow){font-size:14px}.contact-mini-brand{display:none}.values-grid h3{font-size:23px}}
.case-studies>h2{margin:24px 0 50px}.case-study{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center;padding:40px 0;border-bottom:1px solid #57694e40}.case-study:nth-of-type(even) .case-photo{order:2}.case-photo{position:relative;overflow:hidden;border-radius:6px}.case-photo img{display:block;width:100%;height:420px;object-fit:cover;transition:transform 1s}.case-photo:hover img{transform:scale(1.04)}.case-photo>span{position:absolute;bottom:20px;left:20px;background:#182019e0;padding:10px 16px;border:1px solid #8d97784d;border-radius:20px;font-size:11px}.case-copy h3{font-size:34px;line-height:1.2;margin:22px 0}.case-copy p:not(.eyebrow){font-size:14px;line-height:1.8}.case-copy ul,.brief-guide ul{list-style:none;padding:0;margin:24px 0}.case-copy li,.brief-guide li{padding:12px 0 12px 22px;border-bottom:1px solid #67775840;font-size:13px;position:relative}.case-copy li:before,.brief-guide li:before{content:'';width:5px;height:5px;border-radius:50%;background:#d4b18b;position:absolute;left:0;top:19px}.project-next{background:radial-gradient(ellipse at 80% 50%,#59735125,transparent 70%)}.project-next h2{margin:24px 0}.project-next>p:not(.eyebrow){max-width:650px;font-size:15px}.capability-chips{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.capability-chips span{border:1px solid #64785566;border-radius:24px;padding:12px 18px;font-size:12px}.conversation-section{padding-top:10px}.conversation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.conversation-grid article{padding:28px;border:1px solid #687e5540;background:linear-gradient(140deg,#2f3e2f70,#19221c88);border-radius:6px}.conversation-grid article>span{font-size:11px;color:#d4b18b}.conversation-grid h3{font-size:24px;margin:24px 0 15px}.conversation-grid p{font-size:14px;line-height:1.8;margin:0}.contact-next,.brief-guide{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start;border-top:1px solid #6a7c5140}.contact-next h2,.brief-guide h2{margin-top:24px}.contact-next ol{padding:0;list-style:none;counter-reset:steps;margin:0}.contact-next li{counter-increment:steps;padding:0 0 24px 45px;position:relative}.contact-next li:before{content:'0' counter(steps);position:absolute;left:0;top:5px;color:#d4b18b;font-size:12px}.contact-next li h3{font-size:23px}.contact-next li p,.brief-guide p{font-size:14px;line-height:1.8}.brief-guide ul{margin:0}.brief-guide li{font-size:14px;padding-bottom:20px;padding-top:18px}.brief-guide li:before{top:26px}
@media(max-width:1000px){.case-study{gap:32px}.case-copy h3{font-size:28px}.conversation-grid{gap:15px}.conversation-grid article{padding:22px}.contact-next,.brief-guide{gap:35px}}
@media(max-width:760px){.case-study,.conversation-grid,.contact-next,.brief-guide{grid-template-columns:1fr;gap:28px}.case-study:nth-of-type(even) .case-photo{order:0}.case-photo img{height:300px}.case-study{padding:30px 0}.case-copy h3{font-size:28px}.case-studies>h2{margin-bottom:20px}.conversation-grid h3{font-size:23px}.conversation-grid p,.case-copy p:not(.eyebrow){font-size:13px}.contact-next,.brief-guide{gap:32px}.capability-chips{gap:8px}.capability-chips span{font-size:11px;padding:10px 14px}}
/* Featured case study, inspired by the supplied browser-and-cards reference. */
.featured-case{position:relative;padding:65px 40px;margin-block:40px 70px;border:1px solid #76866345;border-radius:14px;background:radial-gradient(ellipse at 100% 100%,#536a4355,transparent 70%),linear-gradient(135deg,#1b2821,#243a30);isolation:isolate;overflow:hidden}.featured-case:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#e1d6b408 1px,transparent 1px),linear-gradient(90deg,#e1d6b408 1px,transparent 1px);background-size:40px 40px;z-index:-1}.case-heading{text-align:center;max-width:820px;margin:auto}.case-heading h2{margin:23px 0}.case-heading>p:not(.eyebrow){font-size:15px;max-width:640px;margin:0 auto;line-height:1.8}.case-browser{max-width:950px;margin:42px auto 56px;border:1px solid #afbb9355;background:#ced7b609;border-radius:14px;overflow:hidden;box-shadow:0 20px 50px #10181033}.case-browser-toolbar{display:flex;align-items:center;gap:25px;padding:15px 20px;border-bottom:1px solid #9aaf7d40;background:#d2dabe0a}.browser-dots{display:flex;gap:7px}.browser-dots i{width:8px;height:8px;border-radius:50%;background:#a88868}.browser-dots i:nth-child(2){background:#c1ad77}.browser-dots i:nth-child(3){background:#83a887}.case-browser-toolbar>a{display:flex;align-items:center;justify-content:space-between;padding:9px 13px;flex:1;background:#e0e8cc0c;border-radius:5px;font-size:12px;color:#d0d7c6}.case-highlights{display:grid;grid-template-columns:repeat(3,1fr);padding:36px 15px}.case-highlights>div{display:flex;flex-direction:column;align-items:center;gap:10px;padding:15px;border-right:1px solid #8d9e7350;text-align:center}.case-highlights>div:last-child{border:0}.case-highlights strong{font:500 clamp(22px,2.6vw,36px) Manrope,Arial,sans-serif;letter-spacing:-1px}.case-highlights span{font-size:12px;color:#b7c1ae}.case-story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.case-story-grid article{position:relative;border:1px solid #a8b58a40;border-radius:10px;padding:38px 24px 24px;background:#d1dabb09}.case-step{position:absolute;top:-18px;left:24px;display:grid;place-items:center;width:38px;height:38px;background:#9c7956;color:#fff;border-radius:8px;font-size:12px}.case-story-grid article:nth-child(2) .case-step{background:#60777c}.case-story-grid article:nth-child(3) .case-step{background:#57836a}.case-story-grid h3{font-size:23px}.case-story-grid p{font-size:14px;line-height:1.85;color:#bfc9b8}.case-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:23px}.case-tags span{background:#ccd5b510;border:1px solid #b7c69d20;border-radius:4px;padding:5px 7px;font-size:10px;color:#d8d2b9}.case-live-link{display:flex;width:fit-content;margin:35px auto 0}.case-story-grid article:hover{border-color:#c4b38b99;transition:border-color .4s}
@media(max-width:1000px){.featured-case{padding:50px 25px}.case-story-grid{gap:15px}.case-story-grid article{padding:36px 18px 22px}}
@media(max-width:760px){.featured-case{padding:40px 18px;margin-block:25px 40px}.case-heading h2{font-size:32px}.case-heading>p:not(.eyebrow){font-size:13px}.case-browser{margin:30px auto 42px}.case-browser-toolbar{gap:12px;padding:12px}.browser-dots{gap:4px}.browser-dots i{width:6px;height:6px}.case-browser-toolbar>a{font-size:10px;padding:8px}.case-highlights{grid-template-columns:1fr;padding:10px 20px}.case-highlights>div{border-right:0;border-bottom:1px solid #8d9e7350;padding:22px 0}.case-highlights strong{font-size:28px}.case-story-grid{grid-template-columns:1fr;gap:32px}.case-story-grid p{font-size:13px}.case-live-link{font-size:12px;padding:16px 18px;gap:15px}}
