:root{--orange:#f79622;--orange2:#ffab45;--ink:#4d4d4d;--dark:#202224;--black:#17191b;--gray:#858585;--light:#f5f4f0;--paper:#e4e3df;--line:rgba(255,255,255,.17)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--dark);color:#fff;font-family:"Alexandria",sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}::selection{background:var(--orange);color:#fff}
.brand-loader{position:fixed;z-index:999;inset:0;background:var(--light);display:grid;place-items:center;align-content:center;gap:22px;transition:.7s}.brand-loader.done{opacity:0;visibility:hidden}.brand-loader img{width:clamp(150px,19vw,230px);z-index:2;animation:loaderLogo 1.15s cubic-bezier(.16,1,.3,1) both}.brand-loader p{margin:0;color:var(--ink);font-size:11px;letter-spacing:.18em}.loader-orbit{position:absolute;width:min(56vw,410px);aspect-ratio:1;border:1px solid #4d4d4d22;border-radius:50%;animation:spin 2.6s linear infinite}.loader-orbit:before,.loader-orbit:after{content:"";position:absolute;border-radius:50%;inset:10%;border:1px dashed #f7962255}.loader-orbit:after{inset:27%;border-style:solid}.loader-orbit span{position:absolute;width:13px;height:13px;background:var(--orange);border-radius:50%;top:8%;left:18%}.loader-orbit span:last-child{width:7px;height:30px;top:auto;left:auto;right:8%;bottom:24%;border-radius:0;background:var(--ink)}
.nav{position:fixed;z-index:50;top:0;left:0;width:100%;height:92px;padding:0 4.5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:linear-gradient(#1c1d1fd9,transparent);backdrop-filter:blur(5px);transition:.35s}.nav.solid,.nav.scrolled{background:#383838f7;height:78px}.brand{direction:ltr;display:flex;align-items:center}.brand>img{width:118px;height:82px;object-fit:contain;filter:drop-shadow(0 3px 9px #0006)}.nav.solid .brand>img,.nav.scrolled .brand>img{height:68px}.nav nav{display:flex;gap:31px;font-size:13px}.nav nav a{opacity:.72;transition:.25s}.nav nav a:hover,.nav nav a[aria-current=page]{opacity:1;color:var(--orange)}.mini-cta{font-size:13px;border:1px solid #ffffff77;padding:12px 16px;display:flex;gap:18px;transition:.25s}.mini-cta:hover,.mini-cta.active{background:var(--orange);border-color:var(--orange)}.menu-toggle{display:none;background:none;border:0;color:#fff}
.hero{min-height:100svh;position:relative;display:flex;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;background:url('assets/home.jpg') 52% center/cover no-repeat;transform:scale(1.04);animation:heroIn 1.8s cubic-bezier(.16,1,.3,1) forwards}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(38,38,38,.12),rgba(38,38,38,.54) 43%,rgba(38,38,38,.98) 84%)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(90deg,transparent calc(25% - 1px),rgba(255,255,255,.07) 25%,transparent calc(25% + 1px)),linear-gradient(90deg,transparent calc(50% - 1px),rgba(255,255,255,.07) 50%,transparent calc(50% + 1px)),linear-gradient(90deg,transparent calc(75% - 1px),rgba(255,255,255,.07) 75%,transparent calc(75% + 1px))}.crane-line{position:absolute;z-index:3;top:0;left:18.5vw;width:1px;height:37vh;background:linear-gradient(transparent,var(--orange));animation:lowerHook 1.4s 1.1s both}.crane-line span{position:absolute;left:-4px;bottom:-1px;width:9px;height:9px;border:2px solid var(--orange);border-top:0;border-left:0;border-radius:0 0 7px 0}.crane-line b{position:absolute;width:45px;height:45px;left:-22px;bottom:-54px;border:1px solid #ffffff44;transform:rotate(45deg);animation:loadFloat 3.4s ease-in-out infinite}.hero-brand-seal{position:absolute;z-index:3;left:5vw;top:18vh;width:138px;height:138px;border:1px solid #ffffff33;border-radius:50%;display:grid;place-items:center;animation:sealFloat 5s ease-in-out infinite}.hero-brand-seal:before{content:"";position:absolute;inset:13px;border:1px dashed #f7962288;border-radius:50%;animation:spin 15s linear infinite}.hero-brand-seal i{position:absolute;font:600 8px Manrope;letter-spacing:.24em;color:#fff8;transform:rotate(-28deg);top:-17px;left:0;white-space:nowrap}.mark-crop{position:relative;width:68px;height:68px;overflow:hidden;display:block}.mark-crop img{position:absolute;width:105px;height:105px;max-width:none;left:50%;top:50%;transform:translate(-50%,-43%)}
.hero-copy{position:relative;z-index:2;width:min(680px,72vw);margin-right:8vw;padding-top:80px}.eyebrow{font-size:13px;color:#ddd;display:flex;align-items:center;gap:12px}.eyebrow span{width:42px;height:3px;background:var(--orange)}h1{font-size:clamp(4rem,8.4vw,9.2rem);line-height:.86;letter-spacing:-.07em;margin:35px 0 28px;font-weight:700}h1 em{color:var(--orange);font-style:normal}.hero-lead{max-width:610px;color:#ddd;font-size:clamp(1rem,1.25vw,1.2rem);line-height:2;font-weight:300}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.primary-btn{display:flex;align-items:center;justify-content:space-between;min-width:270px;background:var(--orange);padding:18px 20px;font-size:14px;border:0;color:#fff;cursor:pointer;transition:.3s}.primary-btn b{font:20px Manrope}.primary-btn:hover{background:var(--orange2);transform:translateY(-3px)}.text-btn,.text-link{font-size:13px;border-bottom:1px solid #aaa;padding:12px 0;display:inline-flex;gap:20px}.hero-note{position:absolute;z-index:2;left:4.5vw;bottom:8vh;direction:ltr;border-left:2px solid var(--orange);padding-left:18px;font:600 12px/1.5 Manrope;letter-spacing:.22em}.hero-note span{color:var(--orange);font-size:11px}.scroll-cue{position:absolute;z-index:2;right:4.5vw;bottom:25px;font-size:10px;color:#bbb;display:flex;gap:10px;align-items:center}.scroll-cue span{height:1px;width:48px;background:var(--orange)}
.statement{background:var(--light);color:var(--ink);padding:110px 8vw;display:grid;grid-template-columns:1fr 3fr;align-items:start}.split-statement{grid-template-columns:.7fr 2.3fr 1fr;gap:4vw}.statement>p:first-child{color:var(--orange);font:700 12px Manrope;letter-spacing:.2em}.statement h2,.section-head h2,.process-intro h2,.about-copy h2,.project-intro h2,.compact-cta h2,.values-head h2{font-size:clamp(3rem,6vw,7rem);letter-spacing:-.055em;line-height:1.15;margin:0}.statement h2 span,.section-head h2 span,.process-intro h2 span,.about-copy h2 span,.project-intro h2 span,.compact-cta h2 span,.values-head h2 span{color:var(--orange)}.statement-copy{color:#6d6d6d;line-height:2;margin:14px 0 0;font-size:14px}
.section-dark{background:var(--dark);padding:110px 8vw}.section-head{display:grid;grid-template-columns:1fr 2fr 1.1fr;gap:4vw;align-items:end;margin-bottom:80px}.kicker{color:var(--orange);font:700 11px/1.4 Manrope,sans-serif;letter-spacing:.22em;direction:ltr}.section-head .intro{color:#b9b9b9;line-height:1.9;font-size:15px}.service-list{border-top:1px solid #555}.service-card{position:relative;display:grid;grid-template-columns:90px 1fr auto;gap:24px;padding:36px 18px 36px 0;border-bottom:1px solid #555;align-items:center;overflow:hidden;transition:.35s}.service-card:before{content:"";position:absolute;inset:0;background:var(--orange);transform:translateX(102%);transition:.55s cubic-bezier(.16,1,.3,1)}.service-card:hover:before{transform:translateX(0)}.service-card>*{position:relative;z-index:1}.service-card .index{font:500 12px Manrope;color:var(--orange)}.service-card:hover .index{color:#fff}.service-card h3{font-size:clamp(1.4rem,2.5vw,2.5rem);margin:0 0 10px}.service-card p{color:#aaa;line-height:1.8;margin:0;max-width:700px;font-size:14px}.service-card:hover p{color:#fff}.card-arrow{font:300 34px Manrope;transition:.35s}.service-card:hover .card-arrow{transform:rotate(45deg)}.section-link{text-align:left;margin-top:36px}.section-link a{display:inline-flex;gap:25px;border-bottom:1px solid #777;padding:12px 0;font-size:13px}
.design-break{min-height:82vh;background:var(--paper);color:var(--ink);position:relative;display:flex;align-items:center;padding:9vw 8vw;overflow:hidden}.brand-monument{position:absolute;left:-5vw;top:50%;width:min(59vw,850px);aspect-ratio:1;opacity:.38;transform:translateY(-45%) rotate(-8deg)}.brand-monument:before{content:"";position:absolute;inset:11%;border:1px solid #4d4d4d33;border-radius:50%;animation:spin 30s linear infinite}.brand-monument img{width:100%;height:100%;object-fit:contain}.design-copy{position:relative;z-index:2;width:min(760px,58vw);margin-left:auto;text-align:right}.design-copy:before{content:"";position:absolute;z-index:-1;inset:-14% -8%;background:radial-gradient(ellipse at 78% 50%,rgba(228,227,223,.94),rgba(228,227,223,.7) 46%,rgba(228,227,223,.18) 70%,transparent 84%)}.design-copy .kicker{text-align:right;color:#555}.design-copy blockquote{margin:28px 0;font-size:clamp(2.35rem,3.65vw,3.65rem);line-height:1.45;font-weight:300}.design-lead,.design-line{display:block;white-space:nowrap}.design-line{color:var(--orange)}.design-copy em,.design-copy strong{position:relative;display:inline-block;padding:0 .14em .025em;color:#fff;font-style:normal;font-weight:600;isolation:isolate}.design-copy em:before,.design-copy strong:before{content:"";position:absolute;z-index:-1;inset:.14em -.04em .07em;border-radius:.12em;transform:rotate(-2deg) scaleX(0);transform-origin:right;transition:.75s cubic-bezier(.16,1,.3,1)}.design-copy em:before{background:var(--orange);transform:rotate(1.5deg) scaleX(0);box-shadow:-.07em .07em 0 #4d4d4d2e}.design-copy strong:before{background:#4d4d4de0;box-shadow:.09em .09em 0 #f796223d}.design-copy.visible em:before{transform:rotate(1.5deg) scaleX(1)}.design-copy.visible strong:before{transform:rotate(-2deg) scaleX(1)}.material-tags{position:absolute;z-index:3;right:4vw;bottom:4vw;display:flex;gap:8px;direction:ltr}.material-tags span{background:var(--ink);padding:11px 14px;font:600 10px Manrope;letter-spacing:.14em;color:#fff}
.featured-projects{background:#17191b;padding:120px 8vw}.project-intro{display:grid;grid-template-columns:.7fr 2fr 1fr;gap:4vw;align-items:end;margin-bottom:70px}.project-intro>p:last-child{color:#aaa;line-height:1.9}.project-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.project-card-wide{grid-row:span 2}.project-card figure{height:100%;min-height:340px;margin:0;position:relative;overflow:hidden;background:#303234}.project-card-wide figure{min-height:700px}.project-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1),filter .5s}.project-card figure:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,#111d)}.project-card figcaption{position:absolute;z-index:2;bottom:0;right:0;left:0;padding:30px}.project-card figcaption span{font-size:11px;color:#ddd}.project-card h3{font-size:clamp(1.8rem,3vw,3.5rem);margin:8px 0}.project-card i{font-style:normal;font-size:12px;color:var(--orange);opacity:0;transform:translateY(12px);display:block;transition:.4s}.project-card:hover img{transform:scale(1.045);filter:saturate(1.08)}.project-card:hover i{opacity:1;transform:none}.outline-link{display:flex;width:max-content;gap:35px;border:1px solid #777;padding:16px 20px;margin-top:45px;font-size:13px;transition:.3s}.outline-link:hover{background:var(--orange);border-color:var(--orange)}
.process{background:var(--light);color:var(--ink);padding:120px 8vw;display:grid;grid-template-columns:1fr 1.2fr;gap:9vw}.process-intro{position:sticky;top:130px;align-self:start}.process-intro .kicker{text-align:right}.process-intro>p{line-height:2;color:#686b6d;max-width:520px;margin-top:35px}.process-intro .text-link{color:var(--ink)}.steps{border-top:1px solid #bbb}.step{display:grid;grid-template-columns:45px 35px 1fr;gap:20px;padding:35px 0;border-bottom:1px solid #bbb}.step b{font:600 12px Manrope;color:var(--orange)}.step>span{width:12px;height:12px;border:3px solid var(--orange);transform:rotate(45deg);margin-top:6px}.step h3{font-size:clamp(1.5rem,2.4vw,2.4rem);margin:0 0 10px}.step p{margin:0;color:#707274;line-height:1.8;font-size:14px}
.about-band{background:var(--ink);padding:100px 8vw;display:grid;grid-template-columns:1fr 1.4fr;gap:9vw;align-items:center;overflow:hidden}.about-number{display:flex;align-items:center;direction:ltr}.about-number strong{font:800 clamp(10rem,26vw,28rem)/.7 Manrope;color:transparent;-webkit-text-stroke:1px #ffffff38}.about-number span{font:600 11px/1.8 Manrope;letter-spacing:.25em;color:var(--orange);margin-left:-2vw}.about-copy p:not(.kicker){color:#bbb;line-height:2;max-width:650px}.outline-link.light{border-color:#ffffff66}
.final-cta{min-height:90vh;background:var(--orange);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:100px 24px;overflow:hidden}.final-cta .kicker{color:var(--ink)}.final-cta h2{font-size:clamp(4rem,8vw,9rem);line-height:1.15;margin:25px 0;position:relative;z-index:2}.final-cta h2 span{color:var(--ink)}.final-cta>p:not(.kicker){font-size:17px;line-height:1.8;max-width:600px;position:relative;z-index:2}.primary-btn.large{background:var(--ink);min-width:320px;margin-top:20px;z-index:2}.cta-orbit{position:absolute;width:min(75vw,880px);aspect-ratio:1;border:1px solid #4d4d4d4d;border-radius:50%;display:grid;place-items:center;animation:spin 24s linear infinite}.cta-orbit:after{content:"";width:70%;aspect-ratio:1;border:1px dashed #4d4d4d4d;border-radius:50%}.cta-orbit span{position:absolute;width:16px;height:16px;background:var(--ink);top:12%;left:12%;border-radius:50%}.cta-orbit b{position:absolute;right:1%;width:23%;height:23%;opacity:.42}.cta-orbit b img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}
.site-footer{background:#272727;padding:48px 5vw;display:grid;grid-template-columns:1fr auto auto 1fr;gap:4vw;align-items:center;font-size:12px;color:#aaa}.site-footer .footer-brand img{width:122px;height:86px}.site-footer>div{display:flex;gap:22px}.site-footer>div a:hover{color:var(--orange)}.site-footer>a:last-child{text-align:left;direction:ltr;color:#fff}.progress{position:fixed;z-index:60;top:0;right:0;height:3px;width:0;background:var(--orange)}.floating-contact{position:fixed;z-index:45;left:24px;bottom:22px;background:var(--orange);width:54px;height:54px;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px #0004;transition:.35s;overflow:hidden;direction:ltr}.floating-contact .mark-crop{flex:0 0 48px;width:48px;height:48px}.floating-contact .mark-crop img{width:74px;height:74px}.floating-contact em{width:0;opacity:0;white-space:nowrap;font:600 11px Alexandria;font-style:normal;transition:.35s}.floating-contact:hover{width:158px;gap:7px}.floating-contact:hover em{width:auto;opacity:1}.reveal{opacity:0;transform:translateY(42px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}
/* Shared inner pages */
.page-hero{min-height:78vh;background:var(--light);color:var(--ink);padding:180px 8vw 100px;position:relative;overflow:hidden}.page-hero h1{font-size:clamp(4rem,8vw,9rem);max-width:1100px;margin:40px 0;position:relative;z-index:2}.page-hero h1 span{color:var(--orange)}.page-hero>p:last-child{max-width:680px;line-height:2;color:#666;position:relative;z-index:2}.page-hero-art{position:absolute;left:-8vw;top:2vh;width:min(58vw,800px);opacity:.1;transform:rotate(-9deg)}.projects-hero{background:var(--black);color:#fff}.projects-hero>p:last-child{color:#aaa}.about-hero{background:var(--paper)}.giant-q{position:absolute;left:-3vw;bottom:-13vw;font:800 46vw/.7 Manrope;color:transparent;-webkit-text-stroke:1px #4d4d4d18;direction:ltr}.process-hero{background:var(--orange);color:#fff}.process-hero .kicker,.process-hero h1 span{color:var(--ink)}.process-hero>p:last-child{color:#fff}
.service-catalog{background:var(--dark);padding:0 8vw 120px}.catalog-row{display:grid;grid-template-columns:90px 1.2fr 1fr 60px;gap:30px;align-items:center;padding:45px 0;border-bottom:1px solid #555;position:relative}.catalog-row:first-child{border-top:1px solid #555}.catalog-row>b{font:600 12px Manrope;color:var(--orange)}.catalog-row h2{font-size:clamp(2rem,4vw,4rem);margin:0}.catalog-row p{color:#aaa;line-height:1.8;font-size:14px}.catalog-row i{font:300 36px Manrope;font-style:normal;transition:.3s}.catalog-row:hover h2{color:var(--orange)}.catalog-row:hover i{transform:rotate(45deg)}.service-principles{background:var(--paper);color:var(--ink);padding:120px 8vw}.service-principles>div:first-child{display:grid;grid-template-columns:1fr 3fr;gap:5vw}.service-principles h2{font-size:clamp(3rem,6vw,7rem);margin:0;line-height:1.15}.service-principles h2 span{color:var(--orange)}.principle-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:0!important;margin-top:80px;border-top:1px solid #bbb}.principle-grid article{padding:35px;border-left:1px solid #bbb}.principle-grid article:last-child{border-left:0}.principle-grid b{color:var(--orange);font:600 12px Manrope}.principle-grid h3{font-size:1.7rem}.principle-grid p{color:#707274;line-height:1.9;font-size:14px}
.compact-cta{background:var(--orange);padding:85px 8vw;display:flex;align-items:end;justify-content:space-between;color:#fff}.compact-cta .kicker{color:var(--ink)}.compact-cta h2{font-size:clamp(3rem,5.5vw,6.5rem)}.compact-cta .primary-btn{background:var(--ink);margin-bottom:12px}
/* Dynamic service */
.detail-hero{min-height:92vh;position:relative;display:flex;align-items:end;padding:160px 8vw 80px;overflow:hidden}.detail-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#111e 0,#1115 70%,#1117)}.detail-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.detail-hero-content{position:relative;z-index:2;max-width:1050px}.detail-hero h1{font-size:clamp(4rem,8vw,9rem);margin:25px 0;line-height:1}.detail-hero h1 span{color:var(--orange)}.detail-hero p:last-child{max-width:720px;line-height:2;color:#ddd}.service-overview{background:var(--light);color:var(--ink);padding:110px 8vw;display:grid;grid-template-columns:1fr 1.5fr;gap:10vw}.service-overview h2{font-size:clamp(2.7rem,5vw,5.7rem);margin:0;line-height:1.25}.service-overview h2 span{color:var(--orange)}.service-overview p{line-height:2;color:#666}.deliverables{background:var(--dark);padding:110px 8vw}.deliverables-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:60px}.deliverables h2{font-size:clamp(3rem,5vw,6rem);margin:0}.deliverable-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #555}.deliverable-grid article{padding:28px 15px;border-bottom:1px solid #555;display:flex;gap:25px}.deliverable-grid b{color:var(--orange);font:600 12px Manrope}.service-flow{background:var(--paper);color:var(--ink);padding:110px 8vw}.service-flow h2{font-size:clamp(3rem,5vw,6rem);margin:0 0 55px}.flow-row{display:grid;grid-template-columns:repeat(4,1fr);direction:rtl}.flow-row article{padding:30px;border:1px solid #bbb;margin-left:-1px;min-height:180px}.flow-row b{font:600 12px Manrope;color:var(--orange)}.flow-row h3{font-size:1.5rem;margin-top:45px}.fit-block{background:var(--ink);padding:90px 8vw;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.fit-block h2{font-size:clamp(2.7rem,5vw,5.5rem);margin:0}.fit-block p{color:#bbb;line-height:2}
/* Projects */
.projects-browser{background:var(--light);color:var(--ink);padding:70px 8vw 120px}.filter-bar{display:flex;gap:8px;margin-bottom:55px;flex-wrap:wrap}.filter-bar button{border:1px solid #aaa;background:transparent;padding:12px 22px;color:var(--ink);cursor:pointer}.filter-bar button.active,.filter-bar button:hover{background:var(--orange);border-color:var(--orange);color:#fff}.projects-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.browser-card{min-height:540px;position:relative;overflow:hidden}.browser-card img{width:100%;height:100%;object-fit:cover;transition:.7s}.browser-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,#111e)}.browser-card .card-copy{position:absolute;z-index:2;bottom:0;right:0;left:0;padding:30px;color:#fff}.browser-card h2{font-size:clamp(2rem,3.7vw,4.5rem);margin:8px 0}.browser-card small{color:#ddd}.browser-card:hover img{transform:scale(1.04)}.portfolio-note{background:var(--paper);color:var(--ink);padding:100px 8vw;display:grid;grid-template-columns:1fr 2fr;gap:7vw}.portfolio-note>span{font:300 23vw/.6 Manrope;color:var(--orange)}.portfolio-note h2{font-size:clamp(3rem,6vw,7rem);margin:20px 0;line-height:1.15}.portfolio-note h2 span{color:var(--orange)}.portfolio-note p:last-child{color:#666;line-height:2}
.project-detail-hero{min-height:100svh;position:relative;display:flex;align-items:end;padding:160px 8vw 75px}.project-detail-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#111e,#1111 70%,#1117)}.project-detail-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.project-title{position:relative;z-index:2;width:100%}.project-title .demo-badge{display:inline-block;background:var(--orange);padding:8px 11px;font-size:10px}.project-title h1{font-size:clamp(4rem,9vw,10rem);margin:25px 0}.project-meta{display:flex;gap:50px;border-top:1px solid #ffffff66;padding-top:25px}.project-meta span{font-size:12px;color:#bbb}.project-meta b{display:block;color:#fff;margin-top:6px}.case-study{background:var(--light);color:var(--ink);padding:110px 8vw}.case-intro{display:grid;grid-template-columns:1fr 1.6fr;gap:9vw}.case-intro h2{font-size:clamp(2.8rem,5vw,5.5rem);margin:0;line-height:1.2}.case-intro h2 span{color:var(--orange)}.case-intro p{line-height:2;color:#666}.case-columns{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#bbb;margin-top:80px;border:1px solid #bbb}.case-columns article{background:var(--light);padding:45px}.case-columns b{font:600 11px Manrope;color:var(--orange)}.case-columns h3{font-size:2rem}.case-columns p{line-height:2;color:#666}.project-gallery{background:var(--black);padding:18px;display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.gallery-shot{overflow:hidden;min-height:420px}.gallery-shot:first-child{grid-row:span 2;min-height:858px}.gallery-shot img{width:100%;height:100%;object-fit:cover}.gallery-shot:nth-child(2) img{object-position:left}.gallery-shot:nth-child(3) img{object-position:right}.demo-disclaimer{background:var(--ink);padding:35px 8vw;display:flex;gap:20px;align-items:center;color:#ddd;font-size:12px}.demo-disclaimer b{background:var(--orange);padding:8px;color:#fff}.next-project{background:var(--paper);color:var(--ink);padding:90px 8vw;display:flex;justify-content:space-between;align-items:end}.next-project h2{font-size:clamp(3rem,6vw,7rem);margin:10px 0}.next-project a{border-bottom:1px solid #888;padding:12px 0}
/* About */
.about-story{background:var(--light);color:var(--ink);padding:120px 8vw;display:grid;grid-template-columns:1.1fr 1fr;gap:9vw;align-items:center}.story-media{position:relative}.story-media img{width:100%;height:650px;object-fit:cover}.story-media span{position:absolute;bottom:0;right:0;background:var(--orange);padding:15px 20px;color:#fff;font:600 10px Manrope;letter-spacing:.15em}.story-copy h2{font-size:clamp(3rem,5.5vw,6.5rem);line-height:1.15;margin:25px 0}.story-copy h2 span{color:var(--orange)}.story-copy p:not(.kicker){line-height:2;color:#666}.values-section{background:var(--dark);padding:120px 8vw}.values-head{display:grid;grid-template-columns:1fr 2fr;gap:6vw}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid #555}.values-grid article{padding:35px;border-left:1px solid #555}.values-grid article:last-child{border-left:0}.values-grid b{color:var(--orange);font:600 12px Manrope}.values-grid h3{font-size:2rem}.values-grid p{color:#aaa;line-height:1.9}.manifesto{min-height:70vh;background:var(--ink);padding:100px 8vw;display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:6vw;overflow:hidden}.manifesto-mark img{width:100%;opacity:.18}.manifesto blockquote{font-size:clamp(2.5rem,5vw,6rem);line-height:1.5;margin:0}.manifesto blockquote span{color:var(--orange)}
/* Process */
.process-timeline{background:var(--light);color:var(--ink);padding:80px 8vw 120px}.timeline-step{display:grid;grid-template-columns:80px 1fr 1fr;gap:4vw;align-items:center;border-top:1px solid #bbb;padding:40px 0}.timeline-step:last-child{border-bottom:1px solid #bbb}.timeline-step>b{font:700 13px Manrope;color:var(--orange)}.timeline-step span{font:700 10px Manrope;letter-spacing:.2em;color:#888}.timeline-step h2{font-size:clamp(2rem,4vw,4.6rem);margin:6px 0}.timeline-step p{line-height:2;color:#666}.decision-band{background:var(--ink);padding:110px 8vw}.decision-band h2{font-size:clamp(3.2rem,6vw,7rem);line-height:1.15}.decision-band h2 span{color:var(--orange)}.decision-band>div{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px}.decision-band>div span{border:1px solid #555;padding:25px;text-align:center;margin-left:-1px}
/* Contact */
.contact-main{min-height:100svh;background:var(--paper);color:var(--ink);padding:155px 8vw 90px;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.contact-intro h1{font-size:clamp(3.6rem,6.5vw,7.5rem);line-height:1.08;margin:30px 0}.contact-intro h1 span{color:var(--orange)}.contact-intro>p{color:#666;line-height:2;max-width:600px}.contact-direct{margin-top:65px;border-top:1px solid #aaa;padding-top:25px;display:grid;gap:12px}.contact-direct span,.contact-direct small{font-size:11px;color:#777}.contact-direct a{font:600 18px Manrope;direction:ltr;text-align:right}.brief-panel{background:#fff;padding:45px}.brief-panel form{display:grid;grid-template-columns:1fr 1fr;gap:28px 22px}.field{display:grid;gap:10px}.field.full{grid-column:1/-1}.field label{font-size:12px;color:#555}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid #bbb;background:transparent;padding:13px 0;color:var(--ink);outline:0}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--orange)}.submit-btn{grid-column:1/-1}.form-note{grid-column:1/-1;font-size:10px!important;color:#888!important;margin:0}.brief-result h2{font-size:2.6rem}.brief-result textarea{width:100%;padding:18px;border:1px solid #bbb;line-height:1.8}.brief-result>div{display:flex;gap:10px;margin-top:15px}.brief-result button,.brief-result a{border:0;background:var(--ink);color:#fff;padding:13px 18px;cursor:pointer}.brief-result a{background:var(--orange)}
.not-found{min-height:80vh;background:var(--light);color:var(--ink);padding:180px 8vw}.not-found h1{font-size:5rem}.not-found a{color:var(--orange)}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes loaderLogo{from{opacity:0;transform:scale(.72) rotate(-8deg)}to{opacity:1;transform:scale(1)}}@keyframes lowerHook{from{height:0}to{height:37vh}}@keyframes loadFloat{0%,100%{transform:translateY(0) rotate(45deg)}50%{transform:translateY(11px) rotate(45deg)}}@keyframes sealFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(12px) rotate(2deg)}}@keyframes heroIn{from{transform:scale(1.14);filter:brightness(.5)}to{transform:scale(1.04);filter:brightness(1)}}
@media(max-width:1100px){.nav nav{gap:18px}.split-statement,.project-intro{grid-template-columns:1fr 2fr}.split-statement .statement-copy,.project-intro>p:last-child{grid-column:2}.brand-monument{left:-21vw;width:82vw;opacity:.35}.design-copy{width:min(690px,69vw)}.site-footer{grid-template-columns:1fr 1fr}.site-footer>div{justify-content:flex-end}.projects-list{grid-template-columns:1fr}.browser-card{min-height:620px}.contact-main{gap:4vw}.brief-panel{padding:30px}}
@media(max-width:760px){.nav{height:78px;padding:0 20px}.nav .brand>img{width:92px;height:68px}.nav nav{position:fixed;inset:78px 0 auto;background:#303030;display:grid;gap:0;padding:18px 24px;transform:translateY(-140%);transition:.45s;z-index:-1}.nav.menu-open nav{transform:none}.nav nav a{padding:16px 0;border-bottom:1px solid #ffffff1f}.menu-toggle{display:grid;gap:6px;padding:10px;order:2}.menu-toggle span{display:block;width:25px;height:1px;background:#fff;transition:.3s}.nav.menu-open .menu-toggle span:first-child{transform:translateY(3.5px) rotate(45deg)}.nav.menu-open .menu-toggle span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mini-cta{font-size:10px;padding:9px;gap:7px}.hero-copy{width:auto;margin:0 24px;padding-top:45px}.hero-shade{background:linear-gradient(0deg,#2d2d2dfb,#2d2d2d55 85%)}h1{font-size:clamp(3.5rem,18vw,6rem)}.hero-lead{font-size:.94rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:8px}.hero-note,.hero-brand-seal{display:none}.crane-line{left:13vw;height:26vh}.statement,.split-statement{grid-template-columns:1fr;padding:80px 24px;gap:30px}.split-statement .statement-copy{grid-column:auto}.section-dark{padding:85px 24px}.section-head{grid-template-columns:1fr;gap:24px;margin-bottom:50px}.service-card{grid-template-columns:36px 1fr;padding:28px 0}.card-arrow{display:none}.design-break{min-height:72vh;padding:72px 24px 96px;align-items:flex-start}.brand-monument{top:56%;left:-48vw;width:128vw;opacity:.3;transform:translateY(-50%) rotate(-8deg)}.design-copy{width:100%;margin-top:8vh}.design-copy:before{inset:-16% -10%;background:radial-gradient(ellipse at 82% 45%,#e4e3dff0,#e4e3dfa8 52%,#e4e3df29 73%,transparent 86%)}.design-copy blockquote{font-size:clamp(1.95rem,9.25vw,3.15rem);line-height:1.55}.design-lead,.design-line{white-space:normal}.material-tags{right:24px;bottom:24px}.featured-projects{padding:85px 24px}.project-intro{grid-template-columns:1fr;gap:24px}.project-intro>p:last-child{grid-column:auto}.project-grid{grid-template-columns:1fr}.project-card-wide{grid-row:auto}.project-card figure,.project-card-wide figure{min-height:450px}.process{grid-template-columns:1fr;padding:90px 24px;gap:65px}.process-intro{position:static}.about-band{grid-template-columns:1fr;padding:85px 24px}.about-number{display:none}.final-cta{min-height:82vh}.site-footer{grid-template-columns:1fr;gap:20px;text-align:center}.site-footer .brand{justify-self:center}.site-footer>div{justify-content:center;flex-wrap:wrap}.site-footer>a:last-child{text-align:center}.floating-contact{left:16px;bottom:16px}.page-hero{min-height:76vh;padding:145px 24px 75px}.page-hero h1{font-size:clamp(3.6rem,15vw,6.4rem)}.page-hero-art{width:110vw;left:-48vw;top:18vh}.service-catalog,.service-principles,.projects-browser,.process-timeline,.values-section,.decision-band{padding-left:24px;padding-right:24px}.catalog-row{grid-template-columns:35px 1fr 30px;gap:15px}.catalog-row p{grid-column:2}.service-principles>div:first-child,.values-head{grid-template-columns:1fr}.principle-grid,.values-grid{grid-template-columns:1fr!important}.principle-grid article,.values-grid article{border-left:0;border-bottom:1px solid #bbb}.compact-cta{padding:65px 24px;display:grid;gap:35px}.service-overview,.fit-block{grid-template-columns:1fr;padding:80px 24px}.deliverables,.service-flow{padding:80px 24px}.deliverables-head{display:block}.deliverable-grid{grid-template-columns:1fr}.flow-row{grid-template-columns:1fr 1fr}.projects-list{grid-template-columns:1fr}.browser-card{min-height:480px}.portfolio-note{grid-template-columns:1fr;padding:80px 24px}.portfolio-note>span{font-size:45vw}.project-meta{gap:20px;flex-wrap:wrap}.case-study{padding:80px 24px}.case-intro,.case-columns{grid-template-columns:1fr}.project-gallery{grid-template-columns:1fr}.gallery-shot,.gallery-shot:first-child{grid-row:auto;min-height:420px}.next-project{padding:70px 24px;display:block}.about-story{grid-template-columns:1fr;padding:80px 24px}.story-media img{height:470px}.manifesto{grid-template-columns:1fr;padding:80px 24px}.manifesto-mark{display:none}.timeline-step{grid-template-columns:45px 1fr}.timeline-step p{grid-column:2}.decision-band>div{grid-template-columns:1fr 1fr}.contact-main{grid-template-columns:1fr;padding:135px 24px 70px}.brief-panel{padding:25px}.brief-panel form{grid-template-columns:1fr}.field.full,.submit-btn,.form-note{grid-column:auto}}
/* Mobile type has its own scale: desktop display headings must not set phone minimums. */
@media(max-width:760px){
  h1,h2,h3,blockquote{letter-spacing:0}
  .hero-copy{padding-top:110px;padding-bottom:95px}
  .hero h1{font-size:clamp(2.65rem,12vw,4rem);line-height:1.12;margin:25px 0 20px}
  .eyebrow{font-size:11px;line-height:1.8;gap:9px}
  .eyebrow span{width:28px;flex-shrink:0}
  .hero-lead{font-size:15px;line-height:1.95}
  .hero-actions{margin-top:25px}
  .page-hero h1,.detail-hero h1,.project-title h1,.contact-intro h1,.not-found h1{
    font-size:clamp(2.05rem,9.5vw,3.5rem);line-height:1.3;margin:24px 0;
  }
  .page-hero{min-height:auto;padding:135px 24px 65px}
  .detail-hero,.project-detail-hero{min-height:82svh;padding:135px 24px 55px}
  .detail-hero-content,.project-title,.contact-intro,.story-copy,.process-intro{min-width:0}
  .statement h2,.section-head h2,.process-intro h2,.about-copy h2,.project-intro h2,
  .compact-cta h2,.values-head h2,.service-principles h2,.service-overview h2,
  .deliverables h2,.service-flow h2,.fit-block h2,.portfolio-note h2,
  .case-intro h2,.next-project h2,.story-copy h2,.decision-band h2{
    font-size:clamp(1.85rem,7.8vw,2.8rem);line-height:1.4;
  }
  .design-copy blockquote{font-size:clamp(1.65rem,7.4vw,2.65rem);line-height:1.75;margin:24px 0}
  .design-copy{margin-top:3vh}
  .design-break{min-height:auto;padding-top:60px;padding-bottom:100px}
  .final-cta h2{font-size:clamp(2.15rem,10vw,3.7rem);line-height:1.4;margin:20px 0}
  .final-cta{min-height:auto;padding:75px 24px}
  .final-cta>p:not(.kicker){font-size:15px;line-height:1.95}
  .catalog-row h2,.browser-card h2,.timeline-step h2{font-size:clamp(1.5rem,6.5vw,2.2rem);line-height:1.45}
  .service-card h3,.project-card h3,.step h3,.principle-grid h3,.values-grid h3,
  .case-columns h3,.flow-row h3{font-size:clamp(1.3rem,5.6vw,1.85rem);line-height:1.55}
  .manifesto blockquote{font-size:clamp(1.75rem,7.2vw,2.6rem);line-height:1.7}
  .brief-result h2{font-size:1.6rem;line-height:1.5}
  .page-hero>p:last-child,.detail-hero p:last-child,.statement-copy,.section-head .intro,
  .project-intro>p:last-child,.process-intro>p,.about-copy p:not(.kicker),
  .service-overview p,.fit-block p,.portfolio-note p:last-child,.case-intro p,
  .case-columns p,.story-copy p:not(.kicker),.values-grid p,.timeline-step p,
  .contact-intro>p{font-size:15px;line-height:2}
  .deliverable-grid article{font-size:14px;line-height:1.9;gap:16px}
  .flow-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .flow-row article{min-width:0;padding:24px 18px}
  .principle-grid article,.values-grid article,.case-columns article{padding:28px 20px}
  .project-card figcaption,.browser-card .card-copy{padding:24px}
  .project-meta{gap:18px 24px;line-height:1.8}
  .primary-btn,.primary-btn.large{min-width:0;width:min(100%,320px);font-size:13px;line-height:1.8;padding:16px 18px}
  .brief-panel{padding:24px 18px}
  .field input,.field select,.field textarea{font-size:16px;line-height:1.7}
  .filter-bar button{font-size:13px;padding:10px 16px}
  .brief-result>div{flex-wrap:wrap}
}
@media(max-width:380px){.flow-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.brand-loader{display:none}}
