:root{--night:#030a12;--ink:#07111f;--blue:#2f508f;--electric:#075dff;--paper:#f3f0e9;--white:#fff;--amber:#f0a21a;--line:rgba(7,17,31,.2);--pad:clamp(24px,4vw,72px);--font-display:"Arial Narrow","Helvetica Neue Condensed","Aptos Narrow",sans-serif;--font-body:"Helvetica Neue","Aptos",sans-serif}
*{box-sizing:border-box}html{background:var(--night);scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body),sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-shell{overflow:hidden}.section-index{margin:0;font:700 10px/1.3 var(--font-body);letter-spacing:.14em;text-transform:uppercase}.section-index:before{content:"";display:inline-block;width:24px;height:1px;margin:0 12px 3px 0;background:var(--amber)}
.site-header{position:absolute;z-index:30;top:0;left:0;width:100%;height:112px;padding:22px var(--pad);display:grid;grid-template-columns:180px 1fr auto;align-items:center;gap:32px}.brand{display:inline-flex;width:142px;height:68px;align-items:center}.brand img{width:100%;height:100%;object-fit:contain}.desktop-nav{justify-self:center;display:flex;align-items:center;gap:clamp(24px,3vw,54px);font-size:12px;font-weight:650;letter-spacing:.04em}.desktop-nav>a,.nav-solutions>summary,.header-cta{transition:color 180ms ease}.desktop-nav>a:hover,.nav-solutions>summary:hover,.header-cta:hover{color:var(--amber)}.header-cta{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:750}.on-dark{color:var(--paper)}.on-light{color:var(--ink)}.nav-solutions{position:relative}.nav-solutions summary{cursor:pointer;list-style:none}.nav-solutions summary::-webkit-details-marker{display:none}.nav-solutions summary span{margin-left:7px}.nav-panel{position:absolute;top:32px;left:-24px;width:340px;padding:8px;background:rgba(3,10,18,.97);color:var(--paper);border:1px solid rgba(255,255,255,.15);box-shadow:0 22px 50px rgba(0,0,0,.25)}.nav-panel a{display:grid;grid-template-columns:34px 1fr;padding:15px;border-bottom:1px solid rgba(255,255,255,.12);font-size:12px}.nav-panel a:last-child{border:0}.nav-panel a span{color:var(--amber)}.mobile-menu{display:none}
.hero{position:relative;min-height:100svh;isolation:isolate;display:flex;align-items:flex-end;padding:150px var(--pad) 116px;color:var(--paper)}.hero-media{z-index:-5;object-fit:cover;filter:saturate(.82) contrast(1.05)}.hero-shade{position:absolute;z-index:-4;inset:0;background:linear-gradient(90deg,rgba(3,10,18,.98),rgba(3,10,18,.78) 28%,rgba(3,10,18,.1) 66%),linear-gradient(0deg,rgba(3,10,18,.84),transparent 36%)}.orbit{position:absolute;z-index:-2;border:1px solid rgba(64,119,255,.5);border-radius:50%;pointer-events:none}.orbit-a{width:min(58vw,920px);aspect-ratio:1;left:-23vw;top:-18vw}.orbit-b{width:min(72vw,1120px);aspect-ratio:1;right:-48vw;bottom:-48vw}.hero-content{width:min(760px,62vw)}.eyebrow{margin:0 0 22px;color:rgba(241,238,231,.72);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.eyebrow span{color:var(--amber);margin-right:16px}.hero h1,.page-hero h1,.tp-hero h1,.about-hero h1,.thanks h1{margin:0;font:500 clamp(84px,10.5vw,178px)/.77 var(--font-display);letter-spacing:-.045em;text-transform:uppercase;text-wrap:balance}.hero h1 span,.tp-hero h1 span,.thanks h1 span{color:var(--amber)}.hero-subtitle{margin:26px 0 0;font:400 clamp(28px,3vw,46px)/1 var(--font-display);text-transform:uppercase}.hero-copy{max-width:520px;margin:18px 0 0;color:rgba(241,238,231,.76);font-size:14px;line-height:1.65}.hero-actions{margin-top:28px;display:flex;align-items:center;gap:30px}.primary-link{min-height:50px;padding:0 22px;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;border:0;background:var(--electric);color:white;font-size:12px;font-weight:750;cursor:pointer;transition:background 180ms,color 180ms}.primary-link:hover,.primary-link:focus-visible{background:var(--amber);color:var(--night)}.text-link{padding-bottom:5px;border-bottom:1px solid currentColor;font-size:12px;font-weight:700}.hero-index{position:absolute;right:var(--pad);bottom:46px;display:flex;gap:28px;color:rgba(241,238,231,.58);font-size:9px;font-weight:650;letter-spacing:.09em;text-transform:uppercase}.hero-index span+span:before{content:"";display:inline-block;width:18px;height:1px;margin-right:28px;vertical-align:middle;background:var(--amber)}.placeholder-note{position:absolute;right:var(--pad);top:124px;margin:0;color:rgba(255,255,255,.48);font-size:8px;letter-spacing:.1em;text-transform:uppercase}
.manifesto{padding:clamp(90px,12vw,190px) var(--pad);display:grid;grid-template-columns:1fr 3.2fr 1.1fr;gap:4vw;background:var(--paper)}.manifesto>div>p{margin:0 0 18px;color:var(--electric);font:700 12px var(--font-body)}.manifesto h2{margin:0;font:500 clamp(52px,7vw,112px)/.9 var(--font-display);letter-spacing:-.035em;text-transform:uppercase}.manifesto h2 em{display:block;color:var(--blue);font-style:normal}.manifesto aside{align-self:end;padding-top:20px;border-top:1px solid var(--ink);font-size:13px;line-height:1.7}.operations-band{padding:60px var(--pad);background:#d8d3c8}.ops-line{display:flex;align-items:center;justify-content:space-between;gap:20px;font:500 clamp(44px,7vw,116px)/.8 var(--font-display);letter-spacing:-.035em}.ops-line i{color:var(--amber);font-style:normal}.operations-band>p{max-width:680px;margin:42px 0 0 auto;font-size:14px;line-height:1.7}
.solutions{background:#151411;color:var(--paper)}.solutions>header{padding:110px var(--pad) 70px;display:grid;grid-template-columns:1fr 3fr}.solutions>header h2{margin:0;font:500 clamp(56px,7vw,112px)/.87 var(--font-display);text-transform:uppercase}.solution-row{position:relative;min-height:720px;display:grid;grid-template-columns:15% 52% 33%;border-top:1px solid rgba(255,255,255,.22);overflow:hidden}.solution-number{padding:42px var(--pad) 42px 30px;display:flex;flex-direction:column;justify-content:space-between}.solution-number span{font:500 54px var(--font-display);color:var(--amber)}.solution-number small{font-size:10px;line-height:1.6;letter-spacing:.08em;text-transform:uppercase}.solution-media{position:relative;margin:36px 0}.solution-media img{object-fit:cover;transition:transform 900ms cubic-bezier(.2,.7,.2,1)}.solution-row:hover .solution-media img{transform:scale(1.025)}.solution-copy{padding:42px var(--pad) 60px 42px;align-self:end}.solution-copy h3{margin:0;font:500 clamp(42px,5vw,76px)/.9 var(--font-display);text-transform:uppercase}.solution-copy p{margin:28px 0;max-width:430px;color:rgba(255,255,255,.7);font-size:13px;line-height:1.7}.solution-copy a,.proof-pending a{display:inline-flex;gap:30px;padding-bottom:7px;border-bottom:1px solid currentColor;font-size:12px;font-weight:700}.solution-row.day{background:#39372e}.solution-row.light{background:#ddd8ce;color:var(--ink)}.solution-row.light .solution-copy p{color:rgba(7,17,31,.7)}.image-status{position:absolute;right:18px;top:18px;margin:0;padding:6px 8px;background:rgba(0,0,0,.55);color:white;font-size:8px;letter-spacing:.09em;text-transform:uppercase}
.method{padding:120px var(--pad);background:#fff}.method-intro{margin-top:54px;display:grid;grid-template-columns:1.2fr 1fr;gap:8vw}.method h2,.case-message h2,.statement-section h2,.capability-list h2,.scale-section h2,.proof-pending h2,.portfolio-intro h2,.about-facts h2{margin:0;font:500 clamp(52px,6vw,96px)/.9 var(--font-display);letter-spacing:-.03em;text-transform:uppercase}.method-intro>p{align-self:end;max-width:500px;font-size:14px;line-height:1.8}.method ol{list-style:none;margin:86px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}.method li{min-height:250px;padding:24px;border-right:1px solid var(--line)}.method li span{display:block;color:var(--amber);font-size:10px}.method li b{display:block;margin-top:54px;font:500 32px var(--font-display);text-transform:uppercase}.method li p{font-size:12px;line-height:1.65}.case-preview{padding:120px var(--pad);display:grid;grid-template-columns:1fr 2.4fr;gap:8vw;background:var(--amber)}.case-label{display:flex;flex-direction:column;justify-content:space-between}.case-label>span{font:500 42px var(--font-display);text-transform:uppercase}.case-message p{max-width:620px;font-size:14px;line-height:1.75}.dark-link{display:inline-flex;gap:32px;margin-top:20px;padding:16px 0;border-bottom:1px solid currentColor;font-size:12px;font-weight:750}
.site-footer{padding:110px var(--pad) 34px;background:var(--night);color:var(--paper)}.footer-lead{display:grid;grid-template-columns:1fr 3fr 170px;align-items:end;gap:4vw;padding-bottom:100px}.footer-lead h2{margin:0;font:500 clamp(58px,7vw,110px)/.82 var(--font-display);text-transform:uppercase}.circle-link{width:160px;aspect-ratio:1;border:1px solid rgba(255,255,255,.42);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:18px;font-size:11px}.footer-grid{padding:44px 0;border-top:1px solid rgba(255,255,255,.2);display:grid;grid-template-columns:minmax(520px,2.4fr) 1fr 1fr;gap:clamp(34px,5vw,86px)}.footer-grid div{display:flex;flex-direction:column;gap:10px;font-size:11px}.footer-grid b{margin-bottom:10px;color:var(--amber);text-transform:uppercase;letter-spacing:.12em}.footer-grid p{margin:0;line-height:1.7;color:rgba(255,255,255,.65)}.footer-grid>.footer-brand-contact{display:grid;grid-template-columns:132px minmax(0,1fr);align-items:start;gap:32px}.footer-brand-contact>img{width:132px;height:92px;object-fit:contain}.footer-brand-contact address{display:flex;flex-direction:column;gap:11px;font-style:normal}.footer-brand-contact address p,.footer-brand-contact address a{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;margin:0;color:rgba(255,255,255,.72);font-size:12px;line-height:1.65}.footer-brand-contact address a:hover{color:var(--amber)}.footer-contact-icon{color:var(--amber);font-size:17px;line-height:1.2}.footer-brand-contact address a:last-child span:last-child{overflow-wrap:anywhere}.footer-bottom{padding-top:26px;border-top:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:space-between;gap:28px}.footer-socials{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:12px}.footer-socials li{width:42px;height:42px;border:1px solid rgba(255,255,255,.34);border-radius:50%;display:grid;place-items:center;color:var(--paper);transition:border-color .2s ease,color .2s ease,background .2s ease}.footer-socials li:hover{border-color:var(--amber);background:var(--amber);color:var(--night)}.footer-socials span{display:grid;place-items:center;font-weight:750;line-height:1}.social-linkedin{font-size:16px;letter-spacing:-.06em}.social-facebook{font:700 22px/1 Arial,sans-serif}.social-instagram{position:relative;width:17px;height:17px;border:1.8px solid currentColor;border-radius:5px}.social-instagram:before{content:"";width:6px;height:6px;border:1.6px solid currentColor;border-radius:50%}.social-instagram:after{content:"";position:absolute;right:2.5px;top:2.5px;width:2px;height:2px;border-radius:50%;background:currentColor}.social-tiktok{font:700 23px/1 Arial,sans-serif;transform:translateY(-1px)}.footer-note{margin:0;color:rgba(255,255,255,.35);font-size:9px}
.page-hero{position:relative;min-height:92svh;padding:180px var(--pad) 90px;display:flex;align-items:flex-end;isolation:isolate;color:white}.page-hero-image{z-index:-3;object-fit:cover}.page-hero-overlay{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(3,10,18,.92),rgba(3,10,18,.55) 45%,rgba(3,10,18,.1)),linear-gradient(0deg,rgba(3,10,18,.68),transparent 50%)}.page-hero.warm .page-hero-image{filter:saturate(.78)}.page-hero-copy{max-width:1100px}.page-hero h1{max-width:1050px;font-size:clamp(72px,9vw,148px)}.page-hero-copy>p:not(.eyebrow){max-width:600px;margin:30px 0;font-size:15px;line-height:1.7}.statement-section{padding:120px var(--pad);display:grid;grid-template-columns:1fr 3fr;gap:6vw;background:#fff}.statement-section>div>p{max-width:750px;margin:34px 0 0;font-size:16px;line-height:1.8}.capability-list{padding:110px var(--pad);display:grid;grid-template-columns:1.15fr 2fr;gap:8vw;background:#dcd6cc}.capability-list>div{border-top:1px solid}.capability-list article{display:grid;grid-template-columns:50px 1fr 1.2fr;gap:28px;padding:31px 0;border-bottom:1px solid}.capability-list article>span{color:var(--amber);font-size:10px}.capability-list h3{margin:0;font:500 30px/1 var(--font-display);text-transform:uppercase}.capability-list article p{margin:0;font-size:12px;line-height:1.7}.scale-section{padding:110px var(--pad);display:grid;grid-template-columns:2fr 1fr;gap:9vw;background:#24231f;color:white}.scale-copy>p:not(.section-index){max-width:650px;line-height:1.8;color:rgba(255,255,255,.7)}.scale-section ol{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.4)}.scale-section li{display:flex;gap:24px;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.4);font:500 26px var(--font-display);text-transform:uppercase}.scale-section li span{color:var(--amber);font:700 10px var(--font-body)}.proof-pending{padding:110px var(--pad);background:var(--amber)}.proof-pending h2{max-width:1100px}.proof-pending>p:not(.section-index){max-width:700px;line-height:1.75}
.tp-hero{position:relative;min-height:100svh;padding:170px var(--pad) 80px;display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:8vw;background:#07101d;color:white;overflow:hidden}.tp-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(79,117,191,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(79,117,191,.13) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to right,transparent,black)}.tp-hero>div:not(.tp-grid){position:relative}.tp-hero h1{font-size:clamp(84px,11vw,178px)}.tp-hero>div>p:not(.eyebrow){max-width:600px;line-height:1.7;color:rgba(255,255,255,.7)}.live-panel{height:520px;padding:28px;border:1px solid rgba(255,255,255,.35);display:flex;flex-direction:column;background:rgba(3,10,18,.45)}.chart{height:310px;margin:36px 0;display:flex;align-items:end;gap:12px}.chart i{flex:1;background:var(--electric)}.live-panel p{margin-top:auto!important;font:500 32px var(--font-display)!important;text-transform:uppercase}.live-panel p span{color:var(--amber);font-size:16px}.tp-list{background:#d9dde5}
.portfolio-intro{padding:110px var(--pad);display:grid;grid-template-columns:1fr 2.2fr 1fr;gap:5vw;background:#fff}.portfolio-intro>p:last-child{align-self:end;font-size:13px;line-height:1.7}.case-list{background:#171816;color:white}.case-list article{min-height:280px;padding:42px var(--pad);display:grid;grid-template-columns:1fr 2.4fr 1.3fr auto;gap:36px;align-items:center;border-top:1px solid rgba(255,255,255,.26)}.case-list article>div{display:flex;flex-direction:column;gap:60px}.case-list article>div>span{color:var(--amber);font:500 42px var(--font-display)}.case-list h3{margin:0;font:500 clamp(38px,4vw,66px)/.9 var(--font-display);text-transform:uppercase}.case-list p{font-size:11px;line-height:1.6;color:#dfb15f}.case-list button{background:none;color:rgba(255,255,255,.4);border:1px solid rgba(255,255,255,.3);padding:12px;font-size:9px;text-transform:uppercase}
.about-hero{position:relative;min-height:100svh;padding:170px var(--pad) 80px;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;color:white}.about-hero>img{z-index:-3;object-fit:cover}.about-hero>div{position:absolute;z-index:-2;inset:0;background:linear-gradient(0deg,rgba(3,10,18,.9),rgba(3,10,18,.15)),linear-gradient(90deg,rgba(3,10,18,.72),transparent)}.about-hero h1{max-width:1300px;font-size:clamp(74px,9vw,146px)}.about-hero>p:not(.section-index){max-width:580px;font-size:15px;line-height:1.7}.about-principles{padding:0 var(--pad) 120px;display:grid;grid-template-columns:repeat(3,1fr);background:#fff}.about-principles article{padding:35px;border-top:1px solid;border-right:1px solid var(--line)}.about-principles article>span{color:var(--amber);font-size:10px}.about-principles h3{margin:70px 0 15px;font:500 34px var(--font-display);text-transform:uppercase}.about-principles p{font-size:12px;line-height:1.7}.about-facts{padding:110px var(--pad);display:grid;grid-template-columns:1.5fr 1fr;gap:8vw;background:#dcd6cc}.about-facts ul{list-style:none;margin:0;padding:0;border-top:1px solid}.about-facts li{padding:26px 0;border-bottom:1px solid;font-size:12px}
.contact-page{background:var(--night);color:var(--paper)}.contact-hero{min-height:100svh;padding:180px var(--pad) 110px;display:grid;grid-template-columns:1.05fr 1fr;gap:9vw;background:radial-gradient(circle at 12% 58%,rgba(47,80,143,.22),transparent 36%),var(--night)}.contact-hero h1,.legal-page h1{margin:25px 0;font:500 clamp(70px,8vw,130px)/.82 var(--font-display);text-transform:uppercase}.contact-hero>div>p:not(.section-index){max-width:580px;color:rgba(255,255,255,.74);font-size:15px;line-height:1.8}.contact-meta{margin-top:70px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;border-top:1px solid rgba(255,255,255,.36)}.contact-meta span{padding-top:20px;color:rgba(255,255,255,.72);font-size:12px;line-height:1.7}.contact-meta b{display:block;margin-bottom:8px;color:var(--amber);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.project-form{align-self:start;display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:44px;background:#fff;color:var(--ink);box-shadow:0 30px 90px rgba(0,0,0,.32)}.project-form label{display:flex;flex-direction:column;gap:10px}.project-form label>span{font-size:11px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.project-form input,.project-form select,.project-form textarea{width:100%;padding:15px 0;border:0;border-bottom:1px solid rgba(7,17,31,.55);border-radius:0;background:transparent;color:var(--ink);outline:none;font-size:16px;line-height:1.45}.project-form input::placeholder,.project-form textarea::placeholder{color:rgba(7,17,31,.52)}.project-form input:focus,.project-form select:focus,.project-form textarea:focus{border-color:var(--electric);box-shadow:0 1px 0 var(--electric)}.project-form .full{grid-column:1/-1}.project-form .privacy{display:grid;grid-template-columns:20px 1fr;align-items:center}.project-form .privacy input{width:18px;height:18px}.project-form .privacy span{font-size:11px;line-height:1.5;letter-spacing:0;text-transform:none}.project-form .primary-link{font-size:13px}.contact-note{padding:30px var(--pad);background:var(--amber);color:var(--ink)}.contact-note p{max-width:720px;margin:auto;text-align:center;font-size:11px;line-height:1.6}.thanks{min-height:100svh;padding:170px var(--pad) 80px;background:var(--night);color:white}.thanks>div{max-width:1100px}.thanks h1{font-size:clamp(76px,10vw,160px)}.thanks>div>p:not(.eyebrow){max-width:620px;line-height:1.7;color:rgba(255,255,255,.65)}.legal-page{background:#f2efe8}.legal-page>article{max-width:980px;padding:180px var(--pad) 110px}.legal-page h1{font-size:clamp(64px,8vw,120px)}.legal-page h2{margin-top:60px;font:500 36px var(--font-display);text-transform:uppercase}.legal-page p,.legal-page li{line-height:1.8;font-size:14px}.legal-alert{padding:24px;border-left:4px solid var(--amber);background:white}
@media(max-width:900px){.site-header{height:88px;padding:12px 20px;grid-template-columns:110px 1fr auto}.brand{width:105px;height:58px}.desktop-nav,.header-cta{display:none}.mobile-menu{display:block;justify-self:end}.mobile-menu summary{width:40px;height:40px;display:flex;flex-direction:column;justify-content:center;gap:7px;list-style:none;cursor:pointer}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu i{width:28px;height:1px;background:currentColor}.mobile-menu nav{position:absolute;left:0;top:0;width:100%;min-height:100svh;padding:110px 24px 40px;display:flex;flex-direction:column;background:var(--night);color:white}.mobile-menu nav a{padding:16px 0;border-bottom:1px solid rgba(255,255,255,.2);font:500 25px var(--font-display);text-transform:uppercase}.mobile-menu[open] summary{position:relative;z-index:2;color:white}.hero{padding:126px 20px 76px}.hero-media{object-position:61% center}.hero-shade{background:linear-gradient(0deg,rgba(3,10,18,.98),rgba(3,10,18,.7) 58%,rgba(3,10,18,.2))}.hero-content{width:100%}.hero h1{font-size:clamp(64px,20vw,112px)}.hero-subtitle{font-size:clamp(24px,8vw,38px)}.hero-copy{max-width:88%;font-size:12px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-index,.placeholder-note{display:none}.manifesto,.solutions>header,.statement-section,.portfolio-intro{grid-template-columns:1fr}.manifesto{gap:42px;padding:90px 20px}.manifesto h2{font-size:clamp(48px,14vw,76px)}.ops-line{flex-wrap:wrap;font-size:clamp(38px,12vw,64px)}.operations-band{padding:60px 20px}.solutions>header{padding:80px 20px 50px}.solution-row{min-height:auto;grid-template-columns:1fr;padding:0 20px 60px}.solution-number{height:130px;padding:25px 0}.solution-media{height:54svh;margin:0}.solution-copy{padding:34px 0 0}.solution-copy h3{font-size:50px}.image-status{top:140px;right:28px}.method,.case-preview,.capability-list,.scale-section,.about-facts,.contact-hero{padding:80px 20px}.method-intro,.case-preview,.capability-list,.scale-section,.about-facts,.contact-hero{grid-template-columns:1fr}.method ol{grid-template-columns:1fr 1fr}.case-preview{gap:50px}.case-label{gap:70px}.footer-lead{grid-template-columns:1fr;gap:34px}.circle-link{width:130px}.footer-grid{grid-template-columns:1fr 1fr}.site-footer{padding:80px 20px 30px}.page-hero{min-height:90svh;padding:140px 20px 70px}.page-hero h1{font-size:clamp(60px,17vw,92px)}.capability-list{gap:50px}.capability-list article{grid-template-columns:35px 1fr}.capability-list article p{grid-column:2}.scale-section{gap:50px}.tp-hero{padding:150px 20px 70px;grid-template-columns:1fr}.tp-hero h1{font-size:clamp(76px,21vw,122px)}.live-panel{height:400px}.portfolio-intro{gap:35px}.case-list article{padding:35px 20px;grid-template-columns:1fr}.case-list article>div{gap:15px}.about-hero{padding:140px 20px 70px}.about-hero h1{font-size:clamp(60px,16vw,96px)}.about-principles{padding:0 20px 80px;grid-template-columns:1fr}.contact-hero{padding-top:140px}.contact-meta{grid-template-columns:1fr}.project-form{grid-template-columns:1fr;padding:24px}.project-form label{grid-column:1}.thanks{padding:140px 20px 70px}.legal-page>article{padding:140px 20px 80px}}
@media(max-width:520px){.hero h1{font-size:13.8vw;line-height:.82;letter-spacing:-.055em}.hero-subtitle{font-size:7vw}.method ol{grid-template-columns:1fr}.method li{min-height:190px}.footer-grid{grid-template-columns:1fr}.capability-list article{grid-template-columns:28px 1fr}.ops-line i{display:none}.ops-line span{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Interaction and motion refinement */
a,button{transition:color .22s ease,background-color .22s ease,border-color .22s ease,transform .22s ease,opacity .22s ease}
a:focus-visible,button:focus-visible{outline:2px solid var(--amber);outline-offset:5px}
.site-header{position:fixed;height:118px;grid-template-columns:240px 1fr auto;transition:top .4s cubic-bezier(.2,.8,.2,1),width .4s cubic-bezier(.2,.8,.2,1),height .4s cubic-bezier(.2,.8,.2,1),padding .4s cubic-bezier(.2,.8,.2,1),background-color .3s ease,box-shadow .3s ease,color .25s ease,border-color .25s ease}
.brand{position:relative;width:220px;height:72px}
.brand img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:left center;transition:opacity .25s ease,transform .4s cubic-bezier(.2,.8,.2,1)}
.brand-dark,.brand-compact{opacity:0;pointer-events:none}.on-light .brand-light{opacity:0}.on-light .brand-dark{opacity:1}
.desktop-nav{font-size:14px;font-weight:700;gap:clamp(30px,3.2vw,58px)}
.desktop-nav>a,.nav-solutions>a,.header-cta{position:relative;padding:10px 0}
.desktop-nav>a:after,.nav-solutions>a:after,.header-cta:after{content:"";position:absolute;left:0;bottom:4px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .28s ease}
.desktop-nav>a:hover:after,.nav-solutions>a:hover:after,.header-cta:hover:after{transform:scaleX(1);transform-origin:left}
.header-cta{font-size:13px}.nav-solutions{position:relative}.nav-solutions>a{display:block}.nav-panel{top:42px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px);transition:opacity .2s ease,transform .2s ease,visibility .2s}.nav-solutions:hover .nav-panel,.nav-solutions:focus-within .nav-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.nav-panel a:hover,.nav-panel a:focus-visible{background:#112039;color:var(--amber);padding-left:20px}
.site-header.is-condensed{top:0;left:0;width:100%;max-width:none;height:72px;padding:7px var(--pad);grid-template-columns:92px 1fr auto;transform:none;background:rgba(3,10,18,.84);color:var(--paper);border:0;border-bottom:1px solid rgba(255,255,255,.14);box-shadow:0 12px 36px rgba(3,10,18,.2);backdrop-filter:blur(18px)}
.site-header.is-condensed .brand{width:78px;height:56px}.site-header.is-condensed .brand-horizontal{opacity:0}.site-header.is-condensed .brand-compact{opacity:1;filter:grayscale(1) brightness(0) invert(1)}.site-header.is-condensed .desktop-nav{font-size:13px}.site-header.is-condensed .nav-panel{top:38px}
.mobile-menu-toggle,.mobile-navigation{display:none}

.hero .eyebrow{animation:hero-in .7s .1s both cubic-bezier(.2,.8,.2,1)}.hero h1{animation:hero-in .9s .18s both cubic-bezier(.2,.8,.2,1)}.hero-subtitle{animation:hero-in .8s .32s both cubic-bezier(.2,.8,.2,1)}.hero-copy{animation:hero-in .8s .4s both cubic-bezier(.2,.8,.2,1)}.hero-actions{animation:hero-in .8s .48s both cubic-bezier(.2,.8,.2,1)}.hero-media{animation:hero-media-in 1.5s both cubic-bezier(.2,.8,.2,1)}.orbit-a{animation:orbit-in 1.4s .25s both ease}.orbit-b{animation:orbit-in 1.6s .35s both ease}
@keyframes hero-in{from{opacity:0;transform:translateY(36px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-media-in{from{opacity:.25;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes orbit-in{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}
[data-reveal].reveal-ready{opacity:0;transform:translate3d(0,44px,0);will-change:opacity,transform;transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1)}
[data-reveal="from-left"].reveal-ready{transform:translate3d(-84px,0,0);transition-duration:.95s}
[data-reveal="from-right"].reveal-ready{transform:translate3d(84px,0,0);transition-duration:.95s}
[data-reveal].reveal-ready.is-visible,[data-reveal="from-left"].reveal-ready.is-visible,[data-reveal="from-right"].reveal-ready.is-visible{opacity:1;transform:translate3d(0,0,0);will-change:auto}
.solution-media.reveal-ready:not(.is-visible) img{transform:scale(1.04)}.solution-media.reveal-ready.is-visible img{transform:scale(1)}.solution-row:hover .solution-media.is-visible img{transform:scale(1.025)}
.method li:nth-child(2).reveal-ready,.capability-list article:nth-child(2).reveal-ready{transition-delay:.08s}.method li:nth-child(3).reveal-ready,.capability-list article:nth-child(3).reveal-ready{transition-delay:.16s}.method li:nth-child(4).reveal-ready,.capability-list article:nth-child(4).reveal-ready{transition-delay:.24s}

.line-icon{position:relative;width:64px;height:64px;display:block;border:1px solid currentColor;border-radius:50%;color:var(--electric);transition:transform .35s ease,background-color .35s ease,color .35s ease}.line-icon:before,.line-icon:after,.line-icon i,.line-icon b{content:"";position:absolute;display:block}.icon-focus:before{inset:15px;border:1px solid currentColor;border-radius:50%}.icon-focus:after{width:8px;height:8px;left:27px;top:27px;border-radius:50%;background:currentColor}.icon-focus i{width:18px;height:1px;right:5px;top:31px;background:currentColor}.icon-design:before{width:24px;height:24px;left:19px;top:19px;border:1px solid currentColor;transform:rotate(45deg)}.icon-design:after{width:30px;height:1px;left:16px;top:31px;background:currentColor;transform:rotate(-35deg)}.icon-integrate:before{width:8px;height:8px;left:27px;top:27px;background:currentColor;box-shadow:-18px -13px 0 -1px currentColor,18px -13px 0 -1px currentColor,0 21px 0 -1px currentColor}.icon-integrate:after{width:34px;height:28px;left:14px;top:18px;border-left:1px solid currentColor;border-right:1px solid currentColor;transform:skewY(35deg)}.icon-operate:before{width:0;height:0;left:25px;top:20px;border-top:12px solid transparent;border-bottom:12px solid transparent;border-left:19px solid currentColor}.icon-operate:after{width:34px;height:34px;left:14px;top:14px;border:1px solid currentColor;border-radius:50%}
.method li:hover .line-icon,.about-principles article:hover .line-icon,.capability-list article:hover .line-icon{transform:rotate(7deg) scale(1.06);background:var(--electric);color:white}.method li{transition:background-color .25s ease}.method li:hover{background:#f3f0e9}.method li .line-icon{margin-top:32px}.method li b{margin-top:24px}.capability-list article{grid-template-columns:44px 68px 1fr 1.2fr;align-items:center;transition:background-color .25s ease,padding-left .25s ease}.capability-list article:hover{padding-left:12px;background:rgba(255,255,255,.35)}.about-principles .line-icon{margin-top:42px}.about-principles h3{margin-top:28px}

.primary-link:hover,.primary-link:focus-visible{transform:translateY(-3px);box-shadow:0 12px 28px rgba(7,93,255,.22)}.solution-copy a,.proof-pending a,.dark-link,.text-link{transition:padding .25s ease,color .25s ease,border-color .25s ease}.solution-copy a:hover,.proof-pending a:hover,.dark-link:hover,.text-link:hover{color:var(--amber);padding-left:10px;padding-right:10px}.site-footer a:not(.circle-link):hover{color:var(--amber);transform:translateX(4px)}
.case-preview .dark-link:hover,.case-preview .dark-link:focus-visible,.proof-pending a:hover,.proof-pending a:focus-visible{color:var(--night);border-color:var(--night)}.solution-row.light .solution-copy a:hover,.solution-row.light .solution-copy a:focus-visible{color:var(--electric);border-color:var(--electric)}.portfolio-cta .primary-link:hover,.portfolio-cta .primary-link:focus-visible{background:var(--paper);color:var(--night);box-shadow:0 12px 28px rgba(3,10,18,.18)}
.circle-link{width:176px;display:flex;flex-direction:column;gap:12px;font-size:16px;font-weight:700}.circle-link b{font-weight:700}.circle-link span{font-size:30px;line-height:1}.circle-link:hover{background:var(--amber);border-color:var(--amber);color:var(--night);transform:rotate(-4deg) scale(1.04)}

@media(max-width:900px){.site-header{height:92px;padding:12px 20px;grid-template-columns:190px 1fr;transition:height .3s ease,top .3s ease,width .3s ease}.brand{width:184px;height:62px}.desktop-nav,.header-cta{display:none}.mobile-menu-toggle{position:relative;z-index:42;justify-self:end;width:48px;height:48px;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:0;background:transparent;color:currentColor;cursor:pointer}.mobile-menu-toggle i{width:29px;height:1px;background:currentColor;transition:transform .25s ease}.mobile-menu-toggle[aria-expanded="true"]{color:white}.mobile-menu-toggle[aria-expanded="true"] i:first-child{transform:translateY(4.5px) rotate(45deg)}.mobile-menu-toggle[aria-expanded="true"] i:last-child{transform:translateY(-4.5px) rotate(-45deg)}.mobile-navigation{position:fixed;z-index:40;inset:0;padding:110px 24px 38px;display:flex;flex-direction:column;justify-content:center;background:var(--night);color:white;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-14px);transition:opacity .25s ease,transform .25s ease,visibility .25s ease}.mobile-navigation.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.mobile-navigation a{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.2);font:500 clamp(25px,7vw,38px)/1 var(--font-display);text-transform:uppercase}.mobile-navigation a span{color:var(--amber);font-size:18px}.site-header.is-condensed{top:0;height:66px;width:100%;padding:5px 16px;grid-template-columns:78px 1fr}.site-header.is-condensed .brand{width:70px;height:54px}.site-header.is-condensed .mobile-menu-toggle{color:var(--paper)}.site-header.is-condensed .mobile-menu-toggle[aria-expanded="true"]{color:white}.capability-list article{grid-template-columns:30px 58px 1fr}.capability-list article p{grid-column:3}.line-icon{width:54px;height:54px}.icon-focus:before{inset:13px}.icon-focus:after{left:23px;top:23px}.icon-focus i{top:26px}.icon-design:before{left:16px;top:16px}.icon-design:after{left:12px;top:26px}.icon-integrate:before{left:23px;top:23px}.icon-integrate:after{left:10px;top:15px}.icon-operate:before{left:21px;top:15px}.icon-operate:after{left:10px;top:10px}.footer-lead{grid-template-columns:1fr}.circle-link{width:154px}}

@media(max-width:900px){[data-reveal="from-left"].reveal-ready{transform:translate3d(-36px,0,0)}[data-reveal="from-right"].reveal-ready{transform:translate3d(36px,0,0)}}
@media(prefers-reduced-motion:reduce){.hero .eyebrow,.hero h1,.hero-subtitle,.hero-copy,.hero-actions{animation-name:reduced-fade!important;animation-duration:.35s!important;transform:none!important}.hero-media,.orbit-a,.orbit-b{animation:none!important}[data-reveal].reveal-ready,[data-reveal="from-left"].reveal-ready,[data-reveal="from-right"].reveal-ready{transform:none;transition:opacity .3s ease}[data-reveal].reveal-ready.is-visible{opacity:1}.solution-media.reveal-ready img{transform:none!important}.site-header{transition:background-color .2s ease,height .2s ease}}
@keyframes reduced-fade{from{opacity:0}to{opacity:1}}

/* Case studies */
.portfolio-hero,.case-detail-hero{position:relative;min-height:92svh;padding:170px var(--pad) 88px;display:flex;align-items:flex-end;isolation:isolate;overflow:hidden;color:white}.portfolio-hero>img,.case-detail-hero>img{z-index:-3;object-fit:cover}.portfolio-hero-shade,.case-detail-shade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(3,10,18,.93),rgba(3,10,18,.48) 54%,rgba(3,10,18,.12)),linear-gradient(0deg,rgba(3,10,18,.78),transparent 55%)}.portfolio-hero>div:not(.portfolio-hero-shade){max-width:980px}.portfolio-hero h1,.case-detail-hero h1{margin:0;font:500 clamp(78px,9.4vw,156px)/.79 var(--font-display);letter-spacing:-.045em;text-transform:uppercase}.portfolio-hero>div>p:last-child{max-width:590px;margin:30px 0 0;color:rgba(255,255,255,.77);font-size:14px;line-height:1.75}.portfolio-intro-live{background:var(--paper)}
.case-index{background:#11120f;color:white}.case-index-row{min-height:720px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,1fr);overflow:hidden;border-top:1px solid rgba(255,255,255,.2)}.case-index-row:nth-child(even){grid-template-columns:minmax(360px,1fr) minmax(0,1.45fr)}.case-index-row:nth-child(even) .case-index-media{order:2}.case-index-media{position:relative;min-height:720px;overflow:hidden}.case-index-media img{object-fit:cover;transition:transform .9s cubic-bezier(.2,.75,.2,1),filter .5s ease}.case-index-media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,10,18,.48),transparent 45%);transition:background .35s ease}.case-index-media>span{position:absolute;z-index:2;right:24px;bottom:22px;padding:11px 14px;background:var(--amber);color:var(--night);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.08em;transform:translateY(8px);opacity:0;transition:opacity .3s ease,transform .3s ease}.case-index-media:hover img{transform:scale(1.035);filter:saturate(1.08)}.case-index-media:hover>span,.case-index-media:focus-visible>span{opacity:1;transform:translateY(0)}.case-index-copy{padding:54px clamp(30px,4vw,70px);display:flex;flex-direction:column;justify-content:flex-end}.case-index-copy>div:first-child{margin-bottom:auto;display:flex;justify-content:space-between;align-items:flex-start;border-top:1px solid rgba(255,255,255,.35);padding-top:18px}.case-index-copy>div b{color:var(--amber);font:500 48px var(--font-display)}.case-index-copy>div small{max-width:150px;text-align:right;font-size:9px;line-height:1.5;letter-spacing:.1em;text-transform:uppercase}.case-index-copy h2{margin:80px 0 24px;font:500 clamp(46px,5vw,82px)/.84 var(--font-display);text-transform:uppercase;letter-spacing:-.025em}.case-index-copy h2 a:hover{color:var(--amber)}.case-index-copy>p{max-width:520px;color:rgba(255,255,255,.7);font-size:13px;line-height:1.75}.case-index-copy dl{margin:40px 0 0;padding-top:22px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;border-top:1px solid rgba(255,255,255,.24)}.case-index-copy dl div{min-width:0}.case-index-copy dt{font:500 31px var(--font-display);color:var(--amber)}.case-index-copy dd{margin:4px 0 0;color:rgba(255,255,255,.56);font-size:8px;line-height:1.45;text-transform:uppercase;letter-spacing:.06em}.portfolio-cta{padding:120px var(--pad);display:grid;grid-template-columns:1fr 2.4fr auto;align-items:end;gap:5vw;background:var(--amber)}.portfolio-cta h2{margin:0;font:500 clamp(50px,6vw,94px)/.88 var(--font-display);text-transform:uppercase;letter-spacing:-.03em}.portfolio-cta .primary-link{background:var(--night)}

.case-detail-hero{min-height:96svh}.case-detail-title{max-width:1180px}.case-detail-title h1{max-width:1120px;font-size:clamp(70px,8.6vw,142px)}.case-detail-title>p:last-child{margin:28px 0 0;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.case-overview{padding:120px var(--pad);display:grid;grid-template-columns:minmax(0,2.4fr) minmax(300px,1fr);gap:9vw;background:var(--paper)}.case-overview h2{max-width:1040px;margin:46px 0 0;font:500 clamp(52px,6.5vw,102px)/.88 var(--font-display);text-transform:uppercase;letter-spacing:-.035em}.case-overview aside{align-self:end;border-top:1px solid var(--ink)}.case-overview aside div{padding:18px 0;display:grid;grid-template-columns:100px 1fr;gap:18px;border-bottom:1px solid var(--line)}.case-overview aside span{font-size:8px;letter-spacing:.1em;text-transform:uppercase}.case-overview aside b{font-size:11px;line-height:1.5}.case-metrics{position:relative;padding:0 var(--pad) 84px;display:grid;grid-template-columns:repeat(4,1fr);background:var(--paper)}.case-metrics>div{min-height:230px;padding:25px;border-top:1px solid var(--ink);border-right:1px solid var(--line);display:flex;flex-direction:column}.case-metrics>div>span{color:var(--amber);font-size:9px}.case-metrics strong{margin-top:auto;font:500 clamp(52px,6vw,92px)/.8 var(--font-display);letter-spacing:-.04em}.case-metrics>div>p{margin:17px 0 0;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.case-narrative{display:grid;grid-template-columns:1fr 1fr;background:#161713;color:white}.case-narrative article{min-height:670px;padding:90px var(--pad);display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.2)}.case-narrative article:nth-child(2){background:#2e2d27}.case-narrative article>span{color:var(--amber);font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.case-narrative h2{max-width:640px;margin:auto 0 32px;font:500 clamp(52px,5.4vw,88px)/.88 var(--font-display);text-transform:uppercase;letter-spacing:-.025em}.case-narrative p{max-width:580px;margin:0;color:rgba(255,255,255,.68);font-size:13px;line-height:1.85}.case-scope{padding:110px var(--pad);display:grid;grid-template-columns:1.35fr 1fr;gap:9vw;background:#ddd7cc}.case-scope h2{max-width:750px;margin:46px 0 0;font:500 clamp(52px,6vw,94px)/.88 var(--font-display);text-transform:uppercase}.case-scope ul{list-style:none;margin:0;padding:0;border-top:1px solid}.case-scope li{padding:25px 0;display:flex;gap:30px;border-bottom:1px solid;font:500 26px var(--font-display);text-transform:uppercase}.case-scope li span{color:var(--amber);font:700 9px var(--font-body)}
.case-gallery-section{padding:110px var(--pad);background:#f7f5ef}.case-gallery-section>header{display:grid;grid-template-columns:1fr 2fr 1fr;gap:5vw;align-items:end;margin-bottom:70px}.case-gallery-section>header h2{margin:0;font:500 clamp(52px,6vw,94px)/.88 var(--font-display);text-transform:uppercase}.case-gallery-section>header>p:last-child{font-size:11px;line-height:1.7}.case-gallery-grid{display:grid;grid-template-columns:1.25fr .75fr;grid-auto-rows:clamp(280px,34vw,560px);gap:14px;overflow:hidden}.case-gallery-item{position:relative;min-width:0;padding:0;border:0;background:#111;overflow:hidden;cursor:zoom-in;color:white;text-align:left}.case-gallery-item:nth-child(3n){grid-column:1/-1}.case-gallery-item img{object-fit:cover;transition:transform .8s cubic-bezier(.2,.75,.2,1),filter .35s ease}.case-gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,10,18,.62),transparent 45%);transition:background .3s ease}.case-gallery-item>span{position:absolute;z-index:2;left:22px;bottom:20px;display:flex;gap:18px;align-items:center;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.case-gallery-item>span b{color:var(--amber)}.case-gallery-item:hover img,.case-gallery-item:focus-visible img{transform:scale(1.035);filter:saturate(1.08)}.case-gallery-item:hover:after{background:linear-gradient(0deg,rgba(3,10,18,.75),rgba(3,10,18,.06) 60%)}.case-lightbox{position:fixed;z-index:100;inset:0;padding:4vh 6vw;display:flex;align-items:center;justify-content:center;background:rgba(3,10,18,.96);color:white}.lightbox-backdrop{position:absolute;z-index:0;inset:0;width:100%;height:100%;border:0;background:transparent;cursor:zoom-out}.case-lightbox figure{position:relative;z-index:1;width:min(1280px,84vw);margin:0}.case-lightbox figure>div{position:relative;height:78vh}.case-lightbox img{object-fit:contain}.case-lightbox figcaption{padding-top:14px;display:flex;gap:24px;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.case-lightbox figcaption span{color:var(--amber)}.lightbox-close,.lightbox-nav{position:absolute;z-index:2;border:1px solid rgba(255,255,255,.4);border-radius:50%;background:transparent;color:white;cursor:pointer}.lightbox-close{right:24px;top:24px;width:52px;height:52px;font-size:32px}.lightbox-nav{top:50%;width:48px;height:48px;font-size:20px}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-close:hover,.lightbox-nav:hover{background:var(--amber);border-color:var(--amber);color:var(--night)}.case-result{padding:120px var(--pad);display:grid;grid-template-columns:1fr 3fr;gap:7vw;background:var(--amber)}.case-result blockquote{max-width:1050px;margin:0;font:500 clamp(48px,6vw,92px)/.9 var(--font-display);text-transform:uppercase;letter-spacing:-.025em}.next-case{padding:55px var(--pad);background:#171816;color:white}.next-case>p{margin:0 0 25px;color:rgba(255,255,255,.55);font-size:9px;text-transform:uppercase;letter-spacing:.1em}.next-case>a{padding-top:28px;display:grid;grid-template-columns:80px 1fr auto;gap:30px;align-items:center;border-top:1px solid rgba(255,255,255,.35);font:500 clamp(42px,5vw,78px)/.9 var(--font-display);text-transform:uppercase}.next-case>a span{color:var(--amber);font-size:28px}.next-case>a b{font-weight:400;transition:transform .25s ease}.next-case>a:hover{color:var(--amber)}.next-case>a:hover b{transform:translateX(10px)}

@media(max-width:900px){.portfolio-hero,.case-detail-hero{min-height:90svh;padding:138px 20px 78px}.portfolio-hero h1,.case-detail-title h1{font-size:clamp(58px,16vw,92px)}.case-detail-title>p:last-child{max-width:100%;line-height:1.6;overflow-wrap:anywhere}.portfolio-intro-live{padding:80px 20px}.case-index-row,.case-index-row:nth-child(even){min-height:auto;grid-template-columns:1fr}.case-index-row:nth-child(even) .case-index-media{order:0}.case-index-media{min-height:58svh}.case-index-copy{min-height:520px;padding:34px 20px 48px}.case-index-copy h2{margin:70px 0 20px;font-size:clamp(48px,14vw,72px)}.case-index-copy dl{gap:10px}.case-index-copy dt{font-size:27px}.portfolio-cta{padding:80px 20px;grid-template-columns:1fr;gap:38px}.case-overview{padding:85px 20px;grid-template-columns:1fr;gap:60px}.case-overview h2{font-size:clamp(48px,13vw,74px)}.case-metrics{padding:0 20px 78px;grid-template-columns:1fr 1fr}.case-metrics>div{min-height:180px}.case-narrative{grid-template-columns:1fr}.case-narrative article{min-height:570px;padding:70px 20px}.case-narrative h2{font-size:clamp(48px,13vw,70px)}.case-scope{padding:80px 20px;grid-template-columns:1fr;gap:55px}.case-scope h2{font-size:clamp(48px,13vw,72px)}.case-gallery-section{padding:80px 20px}.case-gallery-section>header{grid-template-columns:1fr;gap:26px;margin-bottom:45px}.case-gallery-grid{grid-template-columns:1fr;grid-auto-rows:52svh;gap:10px}.case-gallery-item:nth-child(3n){grid-column:auto}.case-lightbox{padding:65px 14px 24px}.case-lightbox figure{width:100%}.case-lightbox figure>div{height:70vh}.lightbox-nav{top:auto;bottom:22px}.lightbox-prev{left:14px}.lightbox-next{right:14px}.lightbox-close{right:14px;top:12px}.case-result{padding:80px 20px;grid-template-columns:1fr;gap:44px}.case-result blockquote{font-size:clamp(46px,13vw,70px)}.next-case{padding:48px 20px}.next-case>a{grid-template-columns:44px 1fr auto;gap:14px;font-size:clamp(38px,11vw,60px)}}
@media(max-width:520px){.case-index-copy dl{grid-template-columns:1fr 1fr}.case-metrics{grid-template-columns:1fr}.case-metrics>div{min-height:150px}.case-gallery-grid{grid-auto-rows:44svh}.case-overview aside div{grid-template-columns:78px 1fr}.next-case>a{grid-template-columns:1fr}.next-case>a span{font-size:18px}.next-case>a b{display:none}}

@media(max-width:900px){.footer-grid>.footer-brand-contact{grid-column:1/-1;grid-template-columns:132px minmax(0,1fr)}}
@media(max-width:520px){.footer-grid>.footer-brand-contact{grid-template-columns:1fr;gap:24px}.footer-brand-contact>img{width:120px;height:82px}.footer-bottom{align-items:flex-start;flex-direction:column}.footer-socials li{width:44px;height:44px}}

/* Trayectoria GTG */
.trajectory{padding:120px var(--pad);overflow:hidden;background:#dcd6cc}.trajectory>header{display:grid;grid-template-columns:1fr 2.2fr 1.05fr;gap:5vw;align-items:end}.trajectory h2{margin:0;font:500 clamp(58px,7vw,108px)/.86 var(--font-display);letter-spacing:-.035em;text-transform:uppercase}.trajectory>header>p:last-child{margin:0;font-size:13px;line-height:1.75}.trajectory-rail{position:relative;margin-top:78px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.trajectory-rail:before{content:"";position:absolute;z-index:2;left:0;top:-2px;width:100%;height:3px;background:var(--electric);transform:scaleX(0);transform-origin:left}.trajectory.is-active .trajectory-rail:before{animation:trajectory-line 1.15s cubic-bezier(.2,.75,.2,1) both}.trajectory-rail article{min-height:340px;padding:28px 26px 25px;display:flex;flex-direction:column;border-right:1px solid var(--line);opacity:0;transform:translateY(36px)}.trajectory-rail article:last-child{border-right:0}.trajectory.is-active .trajectory-rail article{animation:trajectory-rise .75s cubic-bezier(.2,.75,.2,1) var(--stat-delay) both}.trajectory-rail strong{margin-top:auto;font:500 clamp(68px,7vw,112px)/.76 var(--font-display);letter-spacing:-.045em}.trajectory-rail h3{margin:18px 0 5px;font:600 26px/1 var(--font-display);text-transform:uppercase}.trajectory-rail article>p{margin:0;color:rgba(7,17,31,.62);font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.trajectory-icon{position:relative;width:66px;height:66px;display:block;border:1px solid currentColor;border-radius:50%;color:var(--electric);transition:background-color .3s ease,color .3s ease,transform .3s ease}.trajectory-icon:before,.trajectory-icon:after,.trajectory-icon i,.trajectory-icon b{content:"";position:absolute;display:block}.trajectory-icon-origin:before{inset:15px;border:1px solid currentColor;border-radius:50%}.trajectory-icon-origin:after{width:8px;height:8px;left:28px;top:28px;border-radius:50%;background:currentColor}.trajectory-icon-origin i{left:32px;top:7px;width:1px;height:19px;background:currentColor}.trajectory-icon-origin b{left:7px;top:32px;width:19px;height:1px;background:currentColor}.trajectory-icon-projects:before{left:16px;top:17px;width:30px;height:22px;border:1px solid currentColor;box-shadow:5px 6px 0 -1px #dcd6cc,5px 6px 0 0 currentColor,10px 12px 0 -1px #dcd6cc,10px 12px 0 0 currentColor}.trajectory-icon-projects:after{left:21px;top:24px;width:14px;height:1px;background:currentColor;box-shadow:0 6px 0 currentColor}.trajectory-icon-cities:before{left:13px;top:14px;width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:31px 7px 0 -1px currentColor,9px 31px 0 -1px currentColor}.trajectory-icon-cities:after{left:18px;top:22px;width:31px;height:24px;border-left:1px solid currentColor;border-bottom:1px solid currentColor;transform:skewX(-29deg) rotate(-8deg)}.trajectory-icon-people:before{left:16px;top:16px;width:13px;height:13px;border:1px solid currentColor;border-radius:50%;box-shadow:21px 3px 0 -1px #dcd6cc,21px 3px 0 0 currentColor}.trajectory-icon-people:after{left:11px;top:36px;width:27px;height:14px;border:1px solid currentColor;border-radius:20px 20px 4px 4px;box-shadow:18px 2px 0 -1px #dcd6cc,18px 2px 0 0 currentColor}.trajectory.is-active .trajectory-icon{animation:trajectory-icon .65s cubic-bezier(.2,.75,.2,1) calc(var(--stat-delay) + 260ms) both}.trajectory-rail article:hover .trajectory-icon{background:var(--electric);color:#fff;transform:rotate(7deg) scale(1.06)}
@keyframes trajectory-line{to{transform:scaleX(1)}}@keyframes trajectory-rise{to{opacity:1;transform:translateY(0)}}@keyframes trajectory-icon{0%{transform:scale(.72) rotate(-12deg)}65%{transform:scale(1.08) rotate(4deg)}100%{transform:scale(1) rotate(0)}}
@media(max-width:900px){.trajectory{padding:85px 20px}.trajectory>header{grid-template-columns:1fr;gap:28px}.trajectory>header>p:last-child{max-width:540px}.trajectory-rail{margin-top:58px;grid-template-columns:1fr 1fr}.trajectory-rail article{min-height:285px}.trajectory-rail article:nth-child(2){border-right:0}.trajectory-rail article:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:520px){.trajectory-rail{grid-template-columns:1fr}.trajectory-rail article{min-height:250px;border-right:0;border-bottom:1px solid var(--line)}.trajectory-rail article:nth-child(2){border-right:0}.trajectory-rail article:last-child{border-bottom:0}.trajectory-rail strong{font-size:84px}}
@media(prefers-reduced-motion:reduce){.trajectory-rail:before,.trajectory.is-active .trajectory-rail:before,.trajectory-rail article,.trajectory.is-active .trajectory-rail article,.trajectory.is-active .trajectory-icon{animation:none;transform:none;opacity:1}}

/* TurningPoint */
.tp-experience-hero{position:relative;min-height:100svh;padding:155px var(--pad) 78px;display:flex;align-items:flex-end;overflow:hidden;background:#060b0f;color:#fff}.tp-hero-photo{z-index:0;object-fit:cover;object-position:center center;scale:1.035;animation:tp-photo-enter 1.7s cubic-bezier(.2,.75,.2,1) both}.tp-hero-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(2,7,11,.94) 0%,rgba(2,7,11,.82) 28%,rgba(2,7,11,.42) 52%,rgba(2,7,11,.08) 76%),linear-gradient(0deg,rgba(2,7,11,.72) 0%,transparent 50%,rgba(2,7,11,.25) 100%)}.tp-experience-copy{position:relative;z-index:2;width:min(790px,65vw)}.tp-logo{width:min(470px,64%);height:auto;opacity:0;filter:drop-shadow(0 7px 22px rgba(0,0,0,.35));animation:tp-enter .65s .12s cubic-bezier(.2,.75,.2,1) forwards}.tp-reseller{margin:20px 0 34px;color:rgba(255,255,255,.72);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:0;animation:tp-enter .65s .22s cubic-bezier(.2,.75,.2,1) forwards}.tp-reseller span{color:#42b5e6;margin-right:12px}.tp-experience-copy h1{margin:0;font:500 clamp(78px,8.9vw,146px)/.79 var(--font-display);letter-spacing:-.045em;text-transform:uppercase;text-wrap:balance;opacity:0;animation:tp-enter .8s .3s cubic-bezier(.2,.75,.2,1) forwards}.tp-experience-copy h1 span{color:#42b5e6}.tp-lead{max-width:610px;margin:28px 0;color:rgba(255,255,255,.78);font-size:14px;line-height:1.75;text-wrap:pretty;opacity:0;animation:tp-enter .7s .42s cubic-bezier(.2,.75,.2,1) forwards}.tp-experience-copy .primary-link{opacity:0;animation:tp-enter .7s .52s cubic-bezier(.2,.75,.2,1) forwards}.tp-hero-caption{position:absolute;z-index:2;right:var(--pad);bottom:80px;margin:0;padding-left:54px;color:rgba(255,255,255,.68);font-size:8px;font-weight:700;letter-spacing:.1em;line-height:1.65;text-align:right;text-transform:uppercase}.tp-hero-caption:before{content:"";position:absolute;top:8px;left:0;width:38px;height:1px;background:#42b5e6}
.tp-position{padding:120px var(--pad);display:grid;grid-template-columns:1fr 3fr;gap:6vw;background:var(--amber)}.tp-position h2,.tp-flow h2,.tp-applications h2,.tp-partner h2{margin:0;font:500 clamp(60px,7vw,110px)/.85 var(--font-display);letter-spacing:-.035em;text-transform:uppercase}.tp-position h2 em{color:var(--electric);font-style:normal}.tp-position>div>p{max-width:680px;margin:36px 0 0;font-size:15px;line-height:1.8}
.tp-flow{padding:115px var(--pad);background:#171816;color:#fff}.tp-flow>header{display:grid;grid-template-columns:1fr 3fr;gap:6vw}.tp-flow ol{list-style:none;margin:78px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.35)}.tp-flow li{min-height:330px;padding:28px 25px;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.18)}.tp-flow li:last-child{border-right:0}.tp-flow li>span{color:#29a6dd;font-size:9px;font-weight:700}.tp-flow .line-icon{margin:34px 0 auto;color:#29a6dd}.tp-flow h3{margin:26px 0 12px;font:500 34px/1 var(--font-display);text-transform:uppercase}.tp-flow li>p{margin:0;color:rgba(255,255,255,.62);font-size:11px;line-height:1.7}.tp-flow li:hover .line-icon{background:#29a6dd;color:#fff;transform:rotate(7deg) scale(1.06)}.tp-flow li:nth-child(2).reveal-ready{transition-delay:.08s}.tp-flow li:nth-child(3).reveal-ready{transition-delay:.16s}.tp-flow li:nth-child(4).reveal-ready{transition-delay:.24s}
.tp-applications{padding:120px var(--pad);display:grid;grid-template-columns:1.15fr 1fr;gap:9vw;background:#f2efe8}.tp-applications>div:last-child{border-top:1px solid var(--ink)}.tp-applications article{padding:29px 0;display:grid;grid-template-columns:42px minmax(140px,.8fr) 1.3fr;gap:26px;align-items:start;border-bottom:1px solid var(--line)}.tp-applications article>span{color:#29a6dd;font-size:9px;font-weight:700}.tp-applications h3{margin:0;font:500 31px/1 var(--font-display);text-transform:uppercase}.tp-applications article>p{margin:0;font-size:11px;line-height:1.75}.tp-applications article:hover h3{color:#167ca9}
.tp-value-band{padding:58px var(--pad);display:grid;grid-template-columns:1fr repeat(3,1.2fr);gap:0;background:#0a6f9e;color:#fff}.tp-value-band>.section-index{padding-right:35px}.tp-value-band>div{min-height:190px;padding:0 30px;display:flex;flex-direction:column;justify-content:flex-end;border-left:1px solid rgba(255,255,255,.28)}.tp-value-band .line-icon{margin-bottom:auto;color:#fff;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3)}.tp-value-band>div:hover .line-icon{color:#0a6f9e;background:#fff;transform:translateY(-4px) rotate(4deg)}.tp-value-band strong{font:500 34px/1 var(--font-display);text-transform:uppercase}.tp-value-band span{max-width:260px;margin-top:13px;color:rgba(255,255,255,.72);font-size:10px;line-height:1.6}
.tp-partner{padding:120px var(--pad);display:grid;grid-template-columns:1fr 2.2fr;gap:8vw;background:#dcd6cc}.tp-partner>div:first-child{min-height:360px;padding:30px;display:flex;flex-direction:column;justify-content:space-between;background:#08111d}.tp-partner>div:first-child .section-index{color:rgba(255,255,255,.58)}.tp-partner>div:first-child img{width:min(430px,100%);height:auto}.tp-partner-label{margin:0 0 30px;color:#167ca9;font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.tp-partner>div:last-child>p:not(.tp-partner-label){max-width:680px;font-size:14px;line-height:1.8}.tp-partner-services{list-style:none;margin:38px 0 48px;padding:0;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink)}.tp-partner-services li{padding:18px 0;border-bottom:1px solid var(--line);font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.tp-partner-services li:nth-child(odd){border-right:1px solid var(--line)}.tp-partner-services li:nth-child(even){padding-left:24px}
@keyframes tp-photo-enter{from{opacity:.35;scale:1.09}to{opacity:1;scale:1.035}}@keyframes tp-enter{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.tp-experience-hero{min-height:920px;padding:150px 20px 70px}.tp-hero-photo{object-position:62% center}.tp-hero-shade{background:linear-gradient(90deg,rgba(2,7,11,.93) 0%,rgba(2,7,11,.7) 55%,rgba(2,7,11,.2)),linear-gradient(0deg,rgba(2,7,11,.78),transparent 58%)}.tp-experience-copy{width:min(680px,86vw)}.tp-logo{width:min(460px,80%)}.tp-experience-copy h1{font-size:clamp(74px,15vw,118px)}.tp-hero-caption{right:20px;bottom:72px}.tp-position,.tp-flow,.tp-applications,.tp-partner{padding:82px 20px;grid-template-columns:1fr;gap:46px}.tp-flow>header{grid-template-columns:1fr;gap:32px}.tp-flow ol{grid-template-columns:1fr 1fr}.tp-flow li:nth-child(2){border-right:0}.tp-flow li:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.18)}.tp-applications article{grid-template-columns:35px minmax(120px,.7fr) 1.3fr}.tp-value-band{padding:54px 20px;grid-template-columns:1fr 1fr}.tp-value-band>.section-index{grid-column:1/-1;margin-bottom:42px}.tp-value-band>div{min-height:165px}.tp-value-band>div:last-child{grid-column:1/-1;margin-top:30px;padding-top:30px;border-top:1px solid rgba(255,255,255,.28)}.tp-partner>div:first-child{min-height:280px;gap:50px}}
@media(max-width:520px){.tp-experience-hero{min-height:820px;padding:128px 20px 54px;align-items:flex-end}.tp-hero-photo{object-position:67% center}.tp-hero-shade{background:linear-gradient(90deg,rgba(2,7,11,.86),rgba(2,7,11,.34)),linear-gradient(0deg,rgba(2,7,11,.94) 0%,rgba(2,7,11,.54) 58%,rgba(2,7,11,.18) 100%)}.tp-experience-copy{width:100%}.tp-logo{width:min(390px,92%)}.tp-reseller{margin:18px 0 26px;line-height:1.7}.tp-reseller span{display:block}.tp-experience-copy h1{font-size:clamp(60px,18.3vw,88px);line-height:.82}.tp-lead{max-width:92%;margin:22px 0;font-size:12px}.tp-hero-caption{display:none}.tp-flow ol{grid-template-columns:1fr}.tp-flow li{min-height:285px;border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}.tp-flow li:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.18)}.tp-flow li:last-child{border-bottom:0}.tp-applications article{grid-template-columns:30px 1fr}.tp-applications article>p{grid-column:2}.tp-value-band{grid-template-columns:1fr}.tp-value-band>div{padding:28px 0;border-left:0;border-top:1px solid rgba(255,255,255,.28)}.tp-value-band>div:last-child{grid-column:auto;margin-top:0}.tp-partner>div:first-child{min-height:240px;padding:24px}.tp-partner>div:first-child img{width:100%}.tp-partner-services{grid-template-columns:1fr}.tp-partner-services li:nth-child(odd){border-right:0}.tp-partner-services li:nth-child(even){padding-left:0}}
@media(prefers-reduced-motion:reduce){.tp-hero-photo,.tp-logo,.tp-reseller,.tp-experience-copy h1,.tp-lead,.tp-experience-copy .primary-link{animation:none;opacity:1;transform:none;scale:1}}
.project-form{scroll-margin-top:100px}
body{overflow-x:clip}
@media(max-width:900px){.contact-hero,.tp-position,.tp-flow,.tp-applications,.tp-partner{grid-template-columns:minmax(0,1fr)}.contact-hero>*,.tp-position>*,.tp-flow>*,.tp-applications>*,.tp-partner>*{min-width:0}.contact-meta span,.footer-brand-contact address{overflow-wrap:anywhere}.project-form,.project-form label,.project-form input,.project-form select,.project-form textarea{min-width:0}}

/* Integración WordPress: replica el comportamiento de next/image fill sin exponer el layout al editor. */
body{--font-display:"Barlow Condensed","Arial Narrow","Helvetica Neue Condensed",sans-serif;--font-body:"Manrope","Helvetica Neue","Aptos",sans-serif}
.hero-media,.page-hero-image,.about-hero>img,.portfolio-hero>img,.case-detail-hero>img,.tp-hero-photo,.solution-media>img,.case-index-media>img,.case-gallery-item>img,.case-lightbox figure>div>img{position:absolute;inset:0;width:100%;height:100%}
.form-demo-note{grid-column:1/-1;margin:0;padding:12px 14px;border-left:3px solid var(--amber);background:rgba(240,162,26,.12);font-size:11px;line-height:1.55}
.case-lightbox[hidden]{display:none}
html.menu-open,html.lightbox-open{overflow:hidden}
body.admin-bar .site-header{top:32px}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}
@media(max-width:900px){.case-detail-title{min-width:0;width:100%}.case-detail-title>p:last-child{width:min(100%,350px);max-width:100%;line-height:1.6;white-space:normal!important;overflow-wrap:anywhere}}

/* Casos — vista mosaico paralela */
.cases-mosaic-page{background:var(--paper)}
.cases-mosaic-hero{position:relative;min-height:72svh;padding:155px var(--pad) 76px;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate;color:#fff}
.cases-mosaic-hero>img{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 46%;filter:saturate(.82) contrast(1.04)}
.cases-mosaic-hero-shade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(3,10,18,.95),rgba(3,10,18,.5) 58%,rgba(3,10,18,.12)),linear-gradient(0deg,rgba(3,10,18,.75),transparent 58%)}
.cases-mosaic-hero-copy{width:min(980px,80vw)}
.cases-mosaic-hero h1{max-width:900px;margin:0;font:500 clamp(72px,8.4vw,136px)/.8 var(--font-display);letter-spacing:-.04em;text-transform:uppercase;text-wrap:balance}
.cases-mosaic-hero-copy>p:last-child{max-width:600px;margin:28px 0 0;color:rgba(255,255,255,.76);font-size:14px;line-height:1.75}
.cases-explorer{padding:0 var(--pad) 125px;background:var(--night);color:#fff}
.cases-explorer-intro{margin:0 calc(var(--pad) * -1);padding:110px var(--pad);display:grid;grid-template-columns:.8fr 2.1fr 1fr;gap:5vw;align-items:end;background:var(--paper);color:var(--ink)}
.cases-explorer-intro h2{margin:0;font:500 clamp(54px,6.2vw,96px)/.86 var(--font-display);letter-spacing:-.035em;text-transform:uppercase}
.cases-explorer-intro .section-index{color:var(--ink)}
.cases-explorer-intro>p:last-child{max-width:420px;margin:0;color:var(--ink);font-size:12px;line-height:1.75}
.cases-toolbar{margin:0 0 48px;padding-top:76px;display:grid;grid-template-columns:minmax(270px,.8fr) 2.2fr auto;gap:38px;align-items:end}
.cases-search{position:relative;display:block}
.cases-search>span{display:block;margin-bottom:11px;font-size:9px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}
.cases-search input{width:100%;height:48px;padding:0 40px 0 0;border:0;border-bottom:1px solid rgba(255,255,255,.65);border-radius:0;background:transparent;color:#fff;outline:0;font-size:14px}
.cases-search input::placeholder{color:rgba(255,255,255,.42)}
.cases-search input:focus{border-bottom-color:var(--electric);box-shadow:0 1px 0 var(--electric)}
.cases-search i{position:absolute;right:4px;bottom:12px;font:400 22px/1 var(--font-display)}
.cases-filters{display:flex;flex-wrap:wrap;gap:7px 20px;align-items:center}
.cases-filters button{min-height:42px;padding:3px 0;border:0;border-bottom:1px solid transparent;background:transparent;color:rgba(255,255,255,.58);font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:color .2s,border-color .2s}
.cases-filters button span{margin-left:5px;color:var(--amber)}
.cases-filters button:hover,.cases-filters button:focus-visible{color:#fff;border-bottom-color:#fff}
.cases-filters button[aria-pressed="true"]{color:#fff;border-bottom-color:var(--electric)}
.cases-status{min-width:76px;margin:0;text-align:right;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.cases-mosaic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,2.7vw,46px)}
.cases-mosaic-card{min-width:0;transition:opacity .35s ease,transform .35s ease}
.cases-mosaic-card[hidden]{display:none!important}
.cases-mosaic-card>a{position:relative;display:block;aspect-ratio:.82;overflow:hidden;background:var(--night);color:#fff;box-shadow:0 18px 45px rgba(3,10,18,.12)}
.cases-mosaic-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(1.04);transition:transform .75s cubic-bezier(.2,.75,.2,1),filter .35s ease}
.cases-mosaic-number{position:absolute;z-index:3;left:22px;top:5px;font:500 clamp(74px,7.4vw,124px)/1 var(--font-display);letter-spacing:-.045em;color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.32)}
.cases-mosaic-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(0deg,rgba(3,10,18,.5),transparent 58%)}
.cases-mosaic-band{position:absolute;z-index:4;left:0;right:0;bottom:8%;min-height:132px;padding:22px 70px 22px 24px;display:flex;flex-direction:column;justify-content:center;background:rgba(3,10,18,.94);border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.cases-mosaic-band small{margin-bottom:13px;color:var(--amber);font-size:8px;font-weight:700;line-height:1.45;letter-spacing:.09em;text-transform:uppercase}
.cases-mosaic-band strong{font:500 clamp(25px,2.25vw,36px)/.95 var(--font-display);text-transform:uppercase;text-wrap:balance}
.cases-mosaic-band i{position:absolute;right:24px;top:50%;font:400 28px/1 var(--font-display);transform:translateY(-50%);transition:transform .25s,color .25s}
.cases-mosaic-card a:hover img,.cases-mosaic-card a:focus-visible img{transform:scale(1.045);filter:saturate(1)}
.cases-mosaic-card a:hover .cases-mosaic-band i,.cases-mosaic-card a:focus-visible .cases-mosaic-band i{color:var(--amber);transform:translate(5px,-55%)}
.cases-mosaic-card a:focus-visible{outline:3px solid var(--electric);outline-offset:4px}
.cases-empty{padding:74px 24px;text-align:center;border-top:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25)}
.cases-empty[hidden]{display:none!important}
.cases-empty strong{font:500 38px var(--font-display);text-transform:uppercase}
.cases-empty p{margin:12px 0 0;font-size:12px}
.cases-more-wrap{padding-top:65px;display:flex;justify-content:center}
.cases-more-wrap[hidden]{display:none!important}
.cases-more{min-width:230px;min-height:58px;padding:0 22px;display:inline-flex;align-items:center;justify-content:space-between;gap:22px;border:1px solid rgba(255,255,255,.72);background:transparent;color:#fff;font-size:10px;font-weight:750;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s}
.cases-more span{color:var(--electric)}
.cases-more i{font-size:18px;transition:transform .2s}
.cases-more:hover,.cases-more:focus-visible{background:#fff;color:var(--night)}
.cases-more:hover i{transform:translateY(3px)}
@media(max-width:1024px){.cases-explorer-intro{grid-template-columns:1fr 2.3fr}.cases-explorer-intro>p:last-child{grid-column:2}.cases-toolbar{grid-template-columns:minmax(240px,.8fr) 2fr}.cases-status{grid-column:1/-1;text-align:left}.cases-mosaic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cases-mosaic-band strong{font-size:34px}}
@media(max-width:700px){.cases-mosaic-hero{min-height:68svh;padding:130px 20px 62px}.cases-mosaic-hero-copy{width:100%}.cases-mosaic-hero h1{font-size:clamp(62px,18vw,94px)}.cases-mosaic-hero-copy>p:last-child{max-width:92%;font-size:12px}.cases-explorer{padding:0 20px 90px}.cases-explorer-intro{margin:0 -20px;padding:78px 20px;grid-template-columns:1fr;gap:27px}.cases-explorer-intro>p:last-child{grid-column:auto}.cases-explorer-intro h2{font-size:clamp(50px,14vw,72px)}.cases-toolbar{margin:0 0 34px;padding-top:55px;grid-template-columns:1fr;gap:26px}.cases-filters{gap:5px 18px}.cases-filters button{min-height:38px}.cases-status{grid-column:auto}.cases-mosaic-grid{grid-template-columns:1fr;gap:22px}.cases-mosaic-card>a{aspect-ratio:.9}.cases-mosaic-number{font-size:92px}.cases-mosaic-band{min-height:118px;padding:19px 62px 19px 20px}.cases-mosaic-band strong{font-size:32px}.cases-more-wrap{padding-top:45px}}
@media(prefers-reduced-motion:reduce){.cases-mosaic-card,.cases-mosaic-card img,.cases-mosaic-band i{transition:none!important}}

/* Heroes — acercamiento cinematográfico progresivo ligado al scroll */
[data-scroll-zoom-hero]{overflow:hidden}
.hero-media-frame{position:absolute;z-index:-5;inset:0}
.hero-media-frame,[data-scroll-zoom-hero]>img{transform:translateZ(0) scale(var(--hero-scroll-zoom,1));transform-origin:center center;backface-visibility:hidden;will-change:transform}
.hero-media-frame .hero-media{z-index:0;object-fit:cover;filter:saturate(.82) contrast(1.05)}
@media(prefers-reduced-motion:reduce){.hero-media-frame,[data-scroll-zoom-hero]>img{transform:none!important;will-change:auto}}

/* Sistema tipográfico de legibilidad — conserva títulos y amplía lectura/UI */
:root{--gtg-text-body:clamp(15px,1vw,17px);--gtg-text-small:clamp(14px,.92vw,15.5px);--gtg-text-ui:clamp(12px,.82vw,13px);--gtg-text-micro:clamp(11px,.74vw,12px)}
.section-index,.eyebrow{font-size:var(--gtg-text-micro);line-height:1.45}
.hero-index{font-size:var(--gtg-text-micro);line-height:1.5}
.hero-copy,.manifesto aside,.solution-copy p,.method-intro>p,.case-message p,.page-hero-copy>p:not(.eyebrow),.statement-section>div>p,.scale-copy>p:not(.section-index),.proof-pending>p:not(.section-index),.portfolio-intro>p:last-child,.about-hero>p:not(.section-index),.trajectory>header>p:last-child,.about-facts>div>p,.contact-hero>div>p:not(.section-index),.thanks>div>p:not(.eyebrow),.cases-mosaic-hero-copy>p:last-child,.cases-explorer-intro>p:last-child,.case-index-copy>p,.case-narrative p,.case-gallery-section>header>p:last-child,.tp-lead,.tp-position>div>p,.tp-partner>div:last-child>p:not(.tp-partner-label){font-size:var(--gtg-text-body);line-height:1.75}
.method li p,.capability-list article p,.about-principles p,.about-facts li,.case-overview aside b,.tp-flow li>p,.tp-applications article>p,.tp-value-band span,.cases-empty p,.form-demo-note,.project-form .privacy span,.contact-note p{font-size:var(--gtg-text-small);line-height:1.7}
.solution-copy a,.proof-pending a,.dark-link,.text-link,.primary-link,.case-index-media>span,.cases-more{font-size:var(--gtg-text-ui)}
.solution-number small,.method li span,.capability-list article>span,.about-principles article>span,.contact-meta b,.project-form label>span,.case-index-copy>div small,.case-overview aside span,.case-metrics>div>span,.case-metrics>div>p,.case-narrative article>span,.case-scope li span,.case-gallery-item>span,.case-lightbox figcaption,.next-case>p,.trajectory-rail article>p,.tp-reseller,.tp-hero-caption,.tp-flow li>span,.tp-applications article>span,.tp-partner-label,.tp-partner-services li,.cases-search>span,.cases-filters button,.cases-status,.cases-mosaic-band small{font-size:var(--gtg-text-ui);line-height:1.55}
.case-index-copy dd{font-size:var(--gtg-text-micro);line-height:1.55}
.case-detail-title>p:last-child{font-size:var(--gtg-text-small);line-height:1.65}
.footer-grid div{font-size:var(--gtg-text-small);line-height:1.55}
.footer-brand-contact address p,.footer-brand-contact address a{font-size:var(--gtg-text-small);line-height:1.7}
.footer-note{font-size:var(--gtg-text-micro);line-height:1.5}
.contact-meta span{font-size:var(--gtg-text-small);line-height:1.7}
.project-form label>span{line-height:1.45}
.tp-partner-services li{line-height:1.45}
@media(max-width:700px){:root{--gtg-text-body:15px;--gtg-text-small:14px;--gtg-text-ui:12px;--gtg-text-micro:11px}.cases-filters{gap:8px 20px}.cases-filters button{line-height:1.45}.case-gallery-section>header>p:last-child{max-width:32rem}.footer-grid div{line-height:1.6}}
