:root{--ink:#191b1b;--paper:#f2f0e9;--amber:#eab46a;--muted:#b7b9b5;--line:#ffffff26;--space:clamp(24px,5vw,88px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--paper);font-family:'Helvetica Neue',Arial,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--amber);outline-offset:5px}header{min-height:100px;display:flex;align-items:center;gap:35px;padding:24px var(--space);border-bottom:1px solid var(--line);position:relative;z-index:3} .brand{display:flex;gap:14px;align-items:center;font-weight:550;white-space:nowrap}.brand-icon{font-size:35px;color:var(--amber);letter-spacing:-4px;padding-right:6px}.brand small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:7px}nav{display:flex;gap:28px;margin-left:auto;font-size:14px}nav a:hover,.text-link:hover{color:var(--amber)}.languages{display:flex;align-items:center;gap:8px;font-size:13px}.languages button{border:0;background:none;color:var(--muted);padding:8px 3px;cursor:pointer}.languages button[aria-pressed=true]{color:var(--amber)}.hero{min-height:690px;position:relative;padding:95px var(--space) 0;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}.hero-content{max-width:820px;position:relative;z-index:1}.eyebrow{font-size:14px;letter-spacing:.02em;color:var(--muted);margin:0 0 30px}h1{font-weight:450;font-size:clamp(46px,6.3vw,96px);line-height:1.04;letter-spacing:-.062em;margin:0 0 32px}.intro{max-width:440px;color:#c2c3bf;font-size:19px;line-height:1.6}.actions{display:flex;align-items:center;gap:28px;margin-top:34px;flex-wrap:wrap}.button{background:var(--amber);color:var(--ink);padding:19px 24px;display:inline-flex;align-items:center;justify-content:space-between;gap:26px;font-size:14px;font-weight:550;border:1px solid transparent;border-radius:3px;cursor:pointer}.button:hover{background:#f8c789}.button span{font-size:20px}.text-link{font-size:14px;display:inline-flex;gap:15px;align-items:center}.hero-bottom{border-top:1px solid var(--line);padding:22px 0;display:flex;justify-content:space-between;margin-top:75px;font-size:12px;color:var(--muted)}.experience{padding:42px var(--space) 62px;border-top:1px solid var(--line)}.companies{display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:clamp(22px,2.8vw,40px);letter-spacing:-.05em;font-weight:600}.companies span:last-child{font-weight:400}.skip{position:fixed;top:-100px;z-index:10;background:var(--amber);color:var(--ink);padding:15px}.skip:focus{top:10px}footer{padding:30px var(--space);font-size:13px;color:var(--muted);border-top:1px solid var(--line)}@media(max-width:900px){header{gap:16px;flex-wrap:wrap}nav{order:3;width:100%;justify-content:space-between;gap:10px;margin-top:8px}.languages{margin-left:auto}.hero{padding-top:65px;min-height:660px}h1{font-size:clamp(45px,8vw,72px)}.companies{flex-wrap:wrap}.companies span{width:42%}.hero-bottom span:last-child{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.hero-art{position:absolute;z-index:-2;right:0;top:0;width:75%;height:100%;overflow:hidden}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:58% 65%;filter:brightness(.72)}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0%,#191b1bee 10%,#191b1b75 45%,#191b1b00 75%),linear-gradient(0deg,var(--ink),transparent 22%,transparent 85%,#191b1b55)}.hero{min-height:720px}.hero h1{max-width:1000px;text-shadow:0 2px 40px #191b1b55}.hero-content{max-width:1000px}.hero-bottom{background:#191b1b20}.experience-note{font-size:12px;color:#a3a6a0;margin:28px 0 0}.story{padding:64px var(--space) 90px;border-top:1px solid var(--line)}h2{font-weight:450;font-size:clamp(38px,4.7vw,70px);letter-spacing:-.05em;line-height:1.09;margin:0}h3{font-weight:450;letter-spacing:-.035em}.story-head{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:70px}.story-intro{max-width:360px;color:var(--muted);line-height:1.6}.story-intro .text-link{margin-top:16px;color:var(--paper)}.story-body{display:grid;grid-template-columns:1.1fr 1fr;gap:9%}.story-visual{align-self:start;position:sticky;top:12vh}.visual-frame{position:relative;background:#292b2b;border:1px solid #ffffff1c;overflow:hidden;aspect-ratio:1.12}.visual-frame img,.visual-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.8)}.visual-frame video{opacity:0}.visual-frame video.ready{opacity:1}.scene-caption{position:absolute;inset:auto 24px 25px;display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:12px;z-index:2;text-shadow:0 1px 8px #000}.scene-caption span:first-child{color:var(--amber)}.signal-track{position:absolute;bottom:0;height:3px;width:100%;background:#ffffff16}.signal-track span{display:block;background:var(--amber);height:100%;transform-origin:left}.motion-caption{font-size:12px;color:var(--muted)}.chapter{min-height:72vh;display:flex;flex-direction:column;justify-content:center;border-top:1px solid var(--line);padding:45px 0;position:relative}.chapter:last-child{min-height:65vh}.chapter-number{color:var(--amber);font-size:14px;margin-bottom:30px}.chapter-company{color:var(--amber)!important;font-size:13px!important;margin-bottom:12px!important}.chapter h3{font-size:clamp(28px,3vw,44px);line-height:1.13;margin:0 0 25px}.chapter p{font-size:17px;line-height:1.7;color:var(--muted);margin:0 0 20px}.chapter .lesson{color:var(--paper);padding-left:20px;border-left:2px solid #7c684d}.chapter.active .lesson{border-color:var(--amber)}.light{background:var(--paper);color:var(--ink)}.light .eyebrow{color:#62655f}.services{padding:100px var(--space) 75px}.section-head{display:grid;grid-template-columns:1.3fr 1fr;gap:12%;margin-bottom:70px;align-items:end}.section-head>p,.process-top>p{line-height:1.7;max-width:450px;color:#60635c;margin-bottom:4px;font-size:18px}.service{display:grid;grid-template-columns:65px 1fr 1.1fr;gap:25px;padding:35px 0;border-top:1px solid #191b1b35}.service-number{font-size:14px;color:#6f716b;padding-top:9px}.service h3{font-size:28px;margin:0;max-width:330px;line-height:1.2}.service p{font-size:16px;line-height:1.65;margin:3px 0 12px;color:#444941;max-width:530px}.service .service-result{font-size:14px;color:#686b64}.process{padding:75px var(--space) 95px;border-top:1px solid #191b1b26}.process-top{display:grid;grid-template-columns:1.3fr 1fr;gap:12%;align-items:end}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;margin-top:75px}.steps article{border-top:1px solid #191b1b40;padding-top:22px}.step-index{font-size:13px;color:#676c62}.steps h3{font-size:24px;margin:25px 0 17px}.steps p{font-size:15px;line-height:1.7;color:#62665d}.about{padding:85px var(--space) 110px;display:grid;grid-template-columns:1.3fr 1fr;gap:12%;border-top:1px solid #191b1b26}.about h2{font-size:clamp(35px,3.7vw,54px)}.about-copy p{font-size:19px;line-height:1.65;margin:0 0 24px}.about-copy p+p{font-size:16px;color:#62665d}.signature{font-size:24px;letter-spacing:-1px;margin-top:38px}.about-role{font-size:13px;color:#62665d}.socials{display:flex;gap:28px;margin-top:32px;font-size:14px}.socials a{border-bottom:1px solid #888;padding-bottom:7px}.contact{padding:100px var(--space);display:grid;grid-template-columns:1.2fr 1fr;gap:10%}.contact h2{font-size:clamp(42px,5.1vw,76px)}.contact-lead{font-size:17px;line-height:1.7;color:var(--muted);max-width:390px;margin:32px 0}.email-link{font-size:clamp(15px,1.65vw,22px);border-bottom:1px solid #777;padding-bottom:7px;overflow-wrap:anywhere}.contact form{padding-top:45px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{display:block;font-size:14px;color:#d0d1cb}input,textarea{display:block;width:100%;border:none;border-bottom:1px solid #72766c;border-radius:0;background:transparent;color:var(--paper);padding:18px 0 12px;margin-bottom:30px;resize:vertical;min-width:0}input:focus,textarea:focus{outline:none;border-color:var(--amber)}textarea{line-height:1.6}textarea::placeholder{color:#979c91}input{min-height:50px}.form-note{font-size:13px;line-height:1.6;color:var(--muted);margin:0 0 24px}.form-status{font-size:14px;line-height:1.65;color:var(--amber);min-height:55px}.contact .button{min-width:235px}footer{display:flex;justify-content:space-between;gap:20px}.reduced .story-visual{position:relative;top:0}.reduced .chapter{min-height:0}.reduced .motion-caption{display:none}@media(min-width:1600px){main>section,header,footer{padding-left:max(var(--space),calc((100vw - 1480px)/2));padding-right:max(var(--space),calc((100vw - 1480px)/2))}.hero-art{width:65%}}@media(max-width:1100px){nav{gap:18px}.story-body{gap:6%}.service{grid-template-columns:40px 1fr 1.1fr;gap:18px}.steps{gap:22px}.contact{gap:6%}.form-row{grid-template-columns:1fr;gap:0}}@media(max-width:900px){.hero{min-height:750px}.hero-art{width:100%;height:55%;top:auto;bottom:45px}.hero-art img{object-position:50% 65%;filter:brightness(.65)}.hero-art:after{background:linear-gradient(180deg,var(--ink),transparent 40%,#191b1b70 90%,var(--ink))}.hero-content{z-index:1}.hero .intro{max-width:430px}.hero-bottom{margin-top:200px}.story{padding-top:60px}.story-head{display:block;margin-bottom:40px}.story-intro{max-width:500px;margin-top:25px}.story-body{display:block}.story-visual{position:relative;top:0;margin-bottom:40px}.visual-frame{aspect-ratio:16/9}.visual-frame video{display:none}.motion-caption{display:none}.chapter,.chapter:last-child{min-height:0;padding:35px 0}.chapter-number{margin-bottom:20px}.chapter h3{font-size:32px}.chapter p{font-size:16px}.story{padding-bottom:45px}.section-head,.process-top{gap:8%}.service{grid-template-columns:30px 1fr;gap:20px}.service>div{grid-column:2}.service h3{max-width:none}.steps{grid-template-columns:1fr 1fr;gap:30px}.about{gap:7%;grid-template-columns:1fr 1fr}.contact{grid-template-columns:1fr;gap:30px}.contact h2{max-width:700px}.contact form{max-width:650px;padding-top:15px}.form-row{grid-template-columns:1fr 1fr;gap:24px}}@media(max-width:600px){header{padding-top:20px;padding-bottom:20px}.brand{gap:10px;font-size:15px}.brand small{font-size:10px}.brand-icon{font-size:30px}nav{font-size:13px}.hero{padding-top:48px;min-height:740px}h1{font-size:clamp(40px,8.8vw,54px);letter-spacing:-.055em;line-height:1.09}.hero .eyebrow{font-size:12px;margin-bottom:25px}.intro{font-size:17px}.actions{gap:23px;margin-top:28px;align-items:flex-start;flex-direction:column}.button{font-size:13px;padding:17px 19px;gap:14px}.hero-art{bottom:48px;height:300px}.hero-bottom{margin-top:230px}.experience{padding-top:35px;padding-bottom:35px}.experience .eyebrow{font-size:13px}.companies{gap:30px;font-size:27px}.companies span:last-child{font-size:22px}.experience-note{line-height:1.65}.story{padding-top:48px}.story-head h2,h2{font-size:43px}.scene-caption{inset:auto 14px 18px;font-size:10px}.scene-caption span:last-child{max-width:70%;text-align:right}.services,.process,.about,.contact{padding-top:65px;padding-bottom:65px}.section-head,.process-top,.about{display:block}.section-head{margin-bottom:40px}.section-head>p,.process-top>p{font-size:17px;margin-top:28px}.service{gap:12px;padding:28px 0}.service h3{font-size:25px}.service p{font-size:15px}.steps{gap:28px 24px;margin-top:40px}.steps h3{font-size:22px;line-height:1.2}.steps p{font-size:14px}.about-copy{margin-top:36px}.about-copy p{font-size:18px}.contact h2{font-size:44px}.form-row{grid-template-columns:1fr;gap:0}.contact form{padding-top:15px}.email-link{font-size:18px}.contact-lead{font-size:16px}.contact .button{width:100%}footer{flex-wrap:wrap;font-size:12px}footer span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){.visual-frame video{display:none}.story-visual{position:relative;top:0}.chapter,.chapter:last-child{min-height:0}}
/* Hero: close-up ambient film. Story: wider scene controlled by scrolling. */
.hero-art{width:100%}.hero-art img,.hero-art .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 72%;transform:scale(1.28);transform-origin:76% 70%;filter:brightness(.78)}.hero-art .hero-video{opacity:0;transition:opacity .7s ease}.hero-art .hero-video.ready{opacity:1}.hero-art:after{background:linear-gradient(90deg,#191b1bf5 0%,#191b1bcc 32%,#191b1b35 65%,#191b1b08 100%),linear-gradient(0deg,var(--ink),transparent 26%,#191b1b22)}.motion-control{position:absolute;right:var(--space);bottom:91px;z-index:2;background:#191b1bbf;color:var(--paper);border:1px solid #ffffff55;border-radius:3px;padding:11px 15px;font-size:12px;cursor:pointer;backdrop-filter:blur(8px)}.motion-control:hover{border-color:var(--amber)}.motion-control[hidden]{display:none}.visual-frame{aspect-ratio:1.42}.visual-frame img,.visual-frame video{object-fit:cover;object-position:50% 68%}
.companies{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.company{display:flex;align-items:center;gap:16px;min-width:0}.company-logo{width:74px;height:54px;flex:0 0 74px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:3px;padding:10px}.company-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.companies .company>span{font-size:clamp(13px,1.15vw,17px);font-weight:550;letter-spacing:.035em;line-height:1.4;width:auto}.companies .company>span:last-child{font-weight:550}
@media(min-width:1600px){.hero-art{width:100%}}
@media(max-width:1100px){.companies{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.companies .company>span{font-size:16px}}
@media(max-width:900px){.hero-art{height:57%;bottom:45px;top:auto}.hero-art img,.hero-art .hero-video{object-position:65% 70%;transform:scale(1.16)}.hero-art:after{background:linear-gradient(180deg,var(--ink),#191b1b22 35%,#191b1b33 78%,var(--ink))}.motion-control{bottom:88px}.visual-frame{aspect-ratio:16/9}}
@media(max-width:600px){.companies{grid-template-columns:1fr;gap:24px}.company-logo{width:64px;flex-basis:64px;height:46px}.companies .company>span{font-size:16px}.hero-art{height:300px}.hero-art img{transform:scale(1.1)}.hero-art .hero-video{display:none}}
@media(prefers-reduced-motion:reduce){.hero-video,.motion-control{display:none!important}}
/* Unified editorial system: AI delivery and experience as one continuous scene. */
.hero-art{width:74%;right:-2%;height:100%;top:0;bottom:auto;mask-image:linear-gradient(90deg,transparent 0%,#000 35%)}.hero-art img,.hero-art .hero-video{transform:none;object-fit:cover;object-position:58% 50%;filter:brightness(.55) contrast(1.35) saturate(.75)}.hero-art:after{background:linear-gradient(90deg,var(--ink) 0%,#191b1b95 22%,transparent 60%),linear-gradient(0deg,var(--ink),transparent 28%,transparent 75%,#191b1b55)}.hero .intro{max-width:480px;font-size:18px;line-height:1.65}.hero h1{font-size:clamp(46px,6vw,88px)}.hero .eyebrow{color:var(--amber)}
.companies{gap:34px}.company{gap:18px}.company-logo{background:none;border-radius:0;padding:0;width:65px;flex-basis:65px;height:40px}.company-logo img{filter:brightness(0) invert(1);opacity:.84;max-height:34px;max-width:65px}.companies .company>span{font-size:13px;color:#d4d5cf;letter-spacing:.035em}.company:last-child .company-logo{width:84px;flex-basis:84px}.company:last-child img{max-width:84px}.experience-note{max-width:750px;line-height:1.6;color:#a3a69e}.experience{padding-top:40px;padding-bottom:45px}
.story{padding-bottom:40px}.story-head{margin-bottom:36px}.story-body{display:block;position:relative;isolation:isolate}.story-visual{position:sticky;top:8vh;height:82vh;margin:0 calc(-1 * var(--space)) -82vh;z-index:-1;pointer-events:none}.visual-frame{position:absolute;inset:0;border:0;background:transparent;aspect-ratio:auto;overflow:hidden}.visual-frame img,.visual-frame video{width:100%;height:100%;object-fit:cover;object-position:32% 55%;filter:brightness(.62) saturate(.7);mask-image:linear-gradient(180deg,transparent 0%,#000 20%,#000 78%,transparent 100%)}.visual-frame:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#191b1b05 0%,#191b1b20 28%,#191b1bf2 60%,var(--ink) 100%)}.scene-caption{z-index:2;left:var(--space);right:auto;bottom:16%;display:flex;flex-direction:column;align-items:flex-start;gap:14px;font-size:13px}.scene-caption span:first-child{font-size:36px;letter-spacing:-.06em}.signal-track{left:var(--space);width:33%;bottom:12%;height:2px;z-index:2}.motion-caption{display:none}.chapters{position:relative;width:43%;margin-left:57%;z-index:1}.chapter,.chapter:last-child{min-height:76vh;padding:60px 0;border:0;justify-content:center}.chapter-number{display:none}.chapter-company{font-size:13px!important;letter-spacing:.02em}.chapter h3{font-size:clamp(30px,3.4vw,48px);line-height:1.14;margin-bottom:24px}.chapter p{font-size:17px;line-height:1.7;color:#bfc2b8}.chapter .lesson{border-left:0;border-top:1px solid #eab46a45;padding:21px 0 0;font-size:16px}.chapter.active .lesson{border-color:var(--amber)}
.ai-section{padding:95px var(--space) 80px;background:#222524;border-top:1px solid #ffffff14}.ai-section .section-head{grid-template-columns:1.2fr 1fr;gap:10%;align-items:start;margin-bottom:55px}.ai-section .eyebrow{color:var(--amber)}.ai-section h2{font-size:clamp(36px,4.3vw,64px)}.ai-section .section-head>p{color:#c0c3b9;font-size:17px;line-height:1.75;margin-top:46px}.ai-flow{display:grid;grid-template-columns:repeat(4,1fr);padding:0;margin:0 0 48px;list-style:none;border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30}.ai-flow li{padding:25px 20px;font-size:15px;position:relative}.ai-flow li:first-child{padding-left:0}.ai-flow li+li:before{content:'→';position:absolute;left:-13px;color:var(--amber)}.ai-flow li:nth-child(2){color:var(--amber)}.ai-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.ai-columns h3{font-size:24px;line-height:1.2;margin:0 0 18px;max-width:260px}.ai-columns p{font-size:16px;line-height:1.7;color:#bfc2b8;margin:0}.ai-foot{font-size:14px;color:#bfc2b8;margin:44px 0 0;padding-top:25px;border-top:1px solid #ffffff20}.light .service p{font-size:16px}.steps p{font-size:16px}.section-head>p{font-size:18px}.about-copy p+p{font-size:17px}.reduced .story-visual{position:absolute;top:0;height:100%;margin-bottom:0}.reduced .chapter{min-height:0;padding:40px 0}
@media(min-width:1600px){.hero-art{width:72%}.story-visual{margin-left:calc(-1 * max(var(--space),(100vw - 1480px)/2));margin-right:calc(-1 * max(var(--space),(100vw - 1480px)/2))}}
@media(max-width:1100px){.companies{gap:25px}.companies .company>span{font-size:14px}.chapter h3{font-size:35px}.chapter p{font-size:16px}.ai-columns{gap:28px}}
@media(max-width:900px){.hero-art{width:100%;height:52%;top:auto;bottom:45px;right:0;mask-image:linear-gradient(180deg,transparent,#000 35%)}.hero-art img,.hero-art .hero-video{object-position:center;filter:brightness(.55) contrast(1.2)}.hero-art:after{background:linear-gradient(180deg,var(--ink),transparent 38%,#191b1b50 80%,var(--ink))}.hero .intro{max-width:470px}.story-body{display:block}.story-visual,.reduced .story-visual{position:relative;top:0;height:290px;margin:0 calc(-1 * var(--space)) 10px}.visual-frame:after{background:linear-gradient(180deg,transparent 50%,var(--ink))}.visual-frame img{object-position:50% 60%;mask-image:linear-gradient(180deg,transparent,#000 20%,#000 70%,transparent)}.scene-caption,.signal-track{display:none}.chapters{width:100%;margin-left:0}.chapter,.chapter:last-child,.reduced .chapter{min-height:0;padding:32px 0;border-top:1px solid #ffffff20}.chapter h3{font-size:34px}.chapter .lesson{border:0;padding-top:0;color:var(--paper)}.story{padding-bottom:45px}.ai-section .section-head{display:block}.ai-section .section-head>p{margin-top:28px;max-width:600px}.ai-columns{grid-template-columns:1fr;gap:30px}.ai-columns article{display:grid;grid-template-columns:1fr 1.5fr;gap:25px}.ai-columns h3{font-size:24px}.ai-columns p{font-size:16px}.ai-section{padding-top:65px;padding-bottom:60px}}
@media(max-width:600px){.hero h1{font-size:43px}.hero .intro{font-size:17px}.hero-art{height:300px;bottom:45px}.hero{min-height:790px}.hero-bottom{margin-top:235px}.company-logo{width:68px;flex-basis:68px}.company:last-child .company-logo{width:68px;flex-basis:68px}.company:last-child img{max-width:68px}.companies .company>span{font-size:14px}.companies{gap:25px}.story-head h2{font-size:39px}.chapter h3{font-size:31px}.ai-section h2{font-size:37px}.ai-flow{grid-template-columns:1fr 1fr;gap:0}.ai-flow li{font-size:13px;padding:20px 12px}.ai-flow li:first-child{padding-left:12px}.ai-flow li:nth-child(3):before{display:none}.ai-flow li+li:before{left:-7px}.ai-columns article{display:block}.ai-columns h3{margin-bottom:14px}.steps{grid-template-columns:1fr}.steps h3{margin:17px 0 12px}.steps p{font-size:16px}.service p{font-size:16px}.contact h2{font-size:42px}.form-note{font-size:14px}}
@media(prefers-reduced-motion:reduce){.story-visual{position:absolute;top:0;height:100%;margin-bottom:0}.chapter,.chapter:last-child{min-height:0}}
.contact input[name="_honey"]{display:none!important}
.hero-art{right:0}
@media(max-width:900px) and (prefers-reduced-motion:reduce){.story-visual{position:relative;height:290px;margin-bottom:10px}}

/* Keep the scroll scene within its own section. */
.story{overflow:clip;position:relative;isolation:isolate}.story-body{display:grid;grid-template-columns:1fr;gap:0}.story-visual{grid-area:1/1;align-self:start;margin-bottom:0;z-index:0}.chapters{grid-area:1/1}.reduced .story-visual{position:absolute;width:calc(100% + 2 * var(--space))}
@media(max-width:900px){.story-body{display:block}.story-visual,.reduced .story-visual{position:relative;width:auto;margin-bottom:10px}}

.chapter-company{text-transform:uppercase;letter-spacing:.04em}

/* A quiet, balanced row of original company marks. */
.companies{grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:32px}.company{justify-content:center}.company-logo,.company:last-child .company-logo{width:150px;flex-basis:150px;height:48px}.company-logo img{max-width:120px;max-height:38px}.company:last-child img{max-width:150px}.company:nth-child(2) img{max-width:76px;max-height:36px}.company:nth-child(3) img{max-width:84px;max-height:45px}
@media(max-width:600px){.companies{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px}.company-logo,.company:last-child .company-logo{width:125px;flex-basis:125px;height:42px}.company-logo img{max-width:105px}.company:last-child img{max-width:125px}.company:nth-child(2) img{max-width:65px}.company:nth-child(3) img{max-width:72px;max-height:40px}}

/* Hardware scene: preserve the oscilloscope, board and travelling signal. */
.hero-art{width:100%;mask-image:none}.hero-art img,.hero-art .hero-video{object-position:center;filter:brightness(.78) saturate(.85);transform:none}.hero-art:after{background:linear-gradient(90deg,#191b1bf0 0%,#191b1baa 32%,#191b1b22 58%,transparent 80%),linear-gradient(0deg,var(--ink),transparent 18%,transparent 90%,#191b1b44)}
@media(max-width:900px){.hero-art{height:380px;bottom:45px;top:auto}.hero-art:after{background:linear-gradient(180deg,var(--ink),#191b1b22 24%,transparent 55%,var(--ink))}.hero-art img,.hero-art .hero-video{object-position:78% center;filter:brightness(.77) saturate(.85)}}
@media(max-width:700px){.hero-art{height:330px}.hero-art img{object-position:center}.hero-bottom{margin-top:270px}}

/* Preserve every frame at all viewport proportions; unused space blends into the page. */
.hero-art img,.hero-art .hero-video,.visual-frame img,.visual-frame video{object-fit:contain;object-position:center;transform:none;mask-image:none}
.hero-art{width:100%;right:0;mask-image:none}.visual-frame:after{background:linear-gradient(90deg,transparent 25%,#191b1b55 58%,#191b1b88)}
@media(max-width:900px){.hero-art img,.hero-art .hero-video,.visual-frame img,.visual-frame video{object-fit:contain;object-position:center}.story-visual,.reduced .story-visual{height:auto;aspect-ratio:16/9}.visual-frame:after{background:transparent}.hero-art{height:auto;aspect-ratio:16/9;width:100%}.hero-art:after{background:linear-gradient(0deg,#191b1b55,transparent 25%,transparent 85%,#191b1b55)}}

@media(max-width:700px){.hero-bottom{margin-top:200px}}
/* One shared composition width on large displays; fade the media canvas, not its content. */
:root{--page-gutter:max(24px,calc((100vw - 1480px)/2))}
@media(min-width:1600px){header,footer,main>section{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}.hero-art{width:min(100%,1600px);left:50%;right:auto;transform:translateX(-50%)}.story-visual{margin-left:0;margin-right:0}}
.hero-art img,.hero-art .hero-video{width:100%;height:100%;object-fit:contain;mask-image:linear-gradient(90deg,transparent 0%,#000 8%,#000 88%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 8%,#000 88%,transparent 100%)}
.story-body{max-width:1480px;margin-inline:auto}.story-visual{height:min(78vh,800px);top:11vh}.visual-frame{overflow:visible}.visual-frame img,.visual-frame video{object-fit:contain;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 91%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 91%,transparent)}
.visual-frame:after{background:linear-gradient(180deg,var(--ink),transparent 22%,transparent 75%,var(--ink)),linear-gradient(90deg,transparent 35%,#191b1b99 62%,#191b1bdd 100%)}
.story-head{max-width:1480px;margin-left:auto;margin-right:auto}.chapters{width:43%;margin-left:57%}.chapter,.chapter:last-child{min-height:min(76vh,800px)}
@media(max-width:900px){.hero-art{left:0;transform:none}.story-visual,.reduced .story-visual{height:auto;aspect-ratio:16/9;top:0}.chapters{width:100%;margin-left:0}.chapter,.chapter:last-child{min-height:0}.visual-frame:after{background:linear-gradient(180deg,var(--ink),transparent 20%,transparent 80%,var(--ink))}}
@media(prefers-reduced-motion:reduce){.chapter,.chapter:last-child{min-height:0}}
@media(min-width:1600px){main>section.hero,main>section.experience,main>section.story,main>section.services,main>section.ai-section,main>section.process,main>section.about,main>section.contact{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}}
@media(min-width:901px){.hero-art{width:min(100%,1480px);height:auto;aspect-ratio:16/9;left:50%;top:50%;bottom:auto;right:auto;transform:translate(-50%,-50%)}.story-visual{width:min(100%,1422px);height:auto;aspect-ratio:16/9;margin:0 auto;max-height:78vh}.visual-frame img,.visual-frame video{width:100%;height:100%}}
.hero-art img,.hero-art .hero-video{mask-image:linear-gradient(90deg,transparent,#000 10%,#000 78%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 78%,transparent 100%)}
@media(min-width:1600px){.hero{min-height:850px}.motion-control{right:var(--page-gutter)}}

/* Mobile playback stays inline; controls also work when autoplay is blocked. */
@media(max-width:900px){.visual-frame video{display:block}.story-visual{padding-bottom:44px}.story-motion-control{position:absolute;right:24px;bottom:0;z-index:3;background:#191b1be6;color:var(--paper);border:1px solid #ffffff55;border-radius:3px;padding:10px 14px;font-size:12px;cursor:pointer}.hero-art .hero-video{display:block}.motion-control{bottom:70px;right:24px}}
.story-motion-control[hidden]{display:none}
@media(prefers-reduced-motion:reduce){.visual-frame video,.hero-art .hero-video,.story-motion-control{display:none!important}}
/* Mobile uses the same layered composition as desktop, rather than separate media rows. */
@media(max-width:900px){
 .hero{min-height:700px;padding-bottom:0;overflow:clip}
 .hero-art{inset:0;width:100%;height:100%;aspect-ratio:auto;transform:none}
 .hero-art img,.hero-art .hero-video{object-fit:contain;object-position:center 58%;filter:brightness(.68) saturate(.8);mask-image:none;-webkit-mask-image:none}
 .hero-art:after{background:linear-gradient(180deg,#191b1b22 0%,#191b1b22 30%,#191b1b70 65%,var(--ink) 100%),linear-gradient(90deg,#191b1b88,transparent)}
 .hero-content{text-shadow:0 2px 16px #000}
 .hero .intro{color:#e0e1db}
 .hero-bottom{margin-top:100px}
 .motion-control{bottom:72px;right:var(--space)}
 .story-body{display:grid;grid-template-columns:1fr;isolation:isolate}
 .story-visual,.reduced .story-visual{grid-area:1/1;position:sticky;top:12vh;width:calc(100% + 2 * var(--space));height:72vh;max-height:none;aspect-ratio:auto;margin:0 calc(-1 * var(--space));padding:0;align-self:start;z-index:0;pointer-events:none}
 .visual-frame{inset:0;aspect-ratio:auto}
 .visual-frame img,.visual-frame video{object-fit:contain;object-position:center;filter:brightness(.52) saturate(.75);mask-image:none;-webkit-mask-image:none}
 .visual-frame:after{background:linear-gradient(180deg,var(--ink) 0%,#191b1b55 20%,#191b1b55 75%,var(--ink) 100%)}
 .chapters{grid-area:1/1;z-index:1;pointer-events:none}
 .chapter,.chapter:last-child{min-height:72vh;justify-content:center;border:0;padding:65px 0;text-shadow:0 2px 14px #000}
 .chapter p{color:#e0e1db}.chapter h3{max-width:540px}
 .story-motion-control{pointer-events:auto;z-index:3;bottom:12px;right:var(--space)}
 .story-head{margin-bottom:12px}
}
@media(max-width:600px){.hero{min-height:720px}.hero-bottom{margin-top:95px}.hero-art img,.hero-art .hero-video{object-position:center 53%}}
@media(max-width:900px) and (prefers-reduced-motion:reduce){.story-visual,.reduced .story-visual{position:absolute;top:0;height:100%;width:calc(100% + 2 * var(--space))}.chapter,.chapter:last-child{min-height:0;padding:36px 0}}
@media(max-width:900px){
 .hero-art img,.hero-art .hero-video,.visual-frame img,.visual-frame video{inset:auto 0;top:50%;height:auto;width:100%;aspect-ratio:16/9;transform:translateY(-50%);object-position:center;mask-image:linear-gradient(180deg,transparent,#000 15%,#000 82%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 15%,#000 82%,transparent)}
}

/* Final responsive type and spacing scale. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.hero-content{text-shadow:none}.hero .button{text-shadow:none}.hero .intro{max-width:470px}
@media(max-width:900px){
 .hero{min-height:660px;padding-top:42px}.hero .intro{font-size:16px;line-height:1.65;max-width:420px}
 .hero-art img,.hero-art .hero-video{width:100%;max-width:680px;left:50%;top:57%;transform:translate(-50%,-50%);filter:brightness(.52) saturate(.75)}
 .hero .actions{gap:18px;margin-top:24px}.hero .button{font-size:13px;line-height:1.35;padding:12px 16px;min-height:44px;max-width:100%;gap:16px}.hero .button span{font-size:19px}
 .hero .text-link{min-height:44px;font-size:13px}.hero-bottom{margin-top:86px}.motion-control{font-size:11px;min-height:40px;padding:8px 11px;bottom:68px}
 .chapter,.chapter:last-child{min-height:65svh;padding:44px 0}.story-visual{height:65svh;top:14svh}.chapter h3{font-size:30px;line-height:1.15}.chapter p{font-size:16px;line-height:1.65}.chapter-company{font-size:11px!important;line-height:1.5!important;letter-spacing:.06em}
 .story-head h2{font-size:clamp(32px,5.5vw,46px)}.story-intro{font-size:16px}.story-head{margin-bottom:0}
 .story-motion-control{display:none!important}input,textarea{font-size:16px}
}
@media(max-width:600px){
 .hero{min-height:640px}.hero h1{font-size:clamp(34px,9vw,42px);line-height:1.08;letter-spacing:-.045em;margin-bottom:26px}
 .hero .eyebrow{font-size:11px;margin-bottom:24px}.hero .intro{font-size:15px;line-height:1.65}
 .hero-bottom{margin-top:85px;font-size:11px}.hero .button{font-size:12px;padding:11px 14px;gap:12px}
 h2,.contact h2{font-size:34px}.ai-section h2{font-size:33px}.service h3{font-size:23px}.about h2{font-size:32px}
 .services,.ai-section,.process,.about,.contact{padding-top:52px;padding-bottom:52px}.section-head>p,.process-top>p{font-size:16px}
 .chapter h3{font-size:28px}.chapter p{font-size:15px}.about-copy p{font-size:17px}.about-copy p+p{font-size:16px}
 nav a,.languages button{min-height:40px;display:inline-flex;align-items:center}header{row-gap:6px;padding-bottom:12px}
}
@media(max-width:900px) and (prefers-reduced-motion:reduce){.chapter,.chapter:last-child{min-height:0}}
@media(min-width:901px) and (max-width:1599px){.hero-art{width:min(100%,1280px)}}

/* Approved portrait: editorial three-column About section. */
.about{grid-template-columns:minmax(230px,.78fr) minmax(240px,.72fr) minmax(300px,1fr);gap:clamp(32px,5vw,76px);align-items:start}
.about-portrait{position:relative;margin:0;aspect-ratio:4/5;overflow:hidden;background:var(--ink);border-radius:2px;box-shadow:0 18px 45px #191b1b1f}
.about-portrait:before{content:'';position:absolute;z-index:1;left:0;bottom:0;width:34%;height:3px;background:var(--amber)}
.about-portrait:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 1px #191b1b24;pointer-events:none}
.about-portrait img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:1100px){.about{grid-template-columns:minmax(220px,.78fr) minmax(0,1fr);gap:clamp(32px,6vw,64px)}.about-heading{grid-column:1}.about-portrait{grid-column:1;max-width:320px;margin-top:30px}.about-copy{grid-column:2;grid-row:1 / span 2}}
@media(max-width:600px){.about{display:block}.about-portrait{max-width:360px;margin-top:32px}.about-copy{margin-top:36px}}

/* Premium motion and tonal bridges: fluid without hijacking native scrolling. */
:root{--premium-ease:cubic-bezier(.16,1,.3,1);--tone-depth:clamp(76px,7vw,112px)}
body{overflow-x:clip}
header{position:sticky;top:0;z-index:30;background:#191b1bd1;-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);transition:background-color .55s var(--premium-ease),border-color .55s var(--premium-ease),box-shadow .55s var(--premium-ease)}
header.is-scrolled{background:#191b1bf2;border-bottom-color:#ffffff1f;box-shadow:0 14px 42px #00000025}
main>section{scroll-margin-top:100px}
nav a,.languages button,.text-link,.socials a,.button,.company-logo img{transition:color .35s ease,background-color .35s ease,border-color .35s ease,opacity .35s ease,transform .55s var(--premium-ease),box-shadow .55s var(--premium-ease)}
.button:hover{transform:translateY(-2px);box-shadow:0 14px 34px #00000025}.socials a:hover{color:#936828;border-color:var(--amber)}.company:hover .company-logo img{transform:translateY(-3px)}
.premium-reveal{opacity:0;transform:translate3d(0,28px,0);filter:blur(2px);transition:opacity .9s var(--premium-ease),transform 1s var(--premium-ease),filter .8s var(--premium-ease);transition-delay:var(--reveal-delay,0ms)}
.premium-reveal.is-visible{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}
.about-portrait.premium-reveal{transform:translate3d(0,34px,0) scale(.985)}.about-portrait.premium-reveal.is-visible{transform:translate3d(0,0,0) scale(1)}
.services,.ai-section,.process,.contact{position:relative;isolation:isolate;overflow:clip;border-top:0;padding-top:calc(var(--tone-depth) + clamp(38px,4vw,64px))}
.services>*,.ai-section>*,.process>*,.contact>*{position:relative;z-index:1}
.services:before,.ai-section:before,.process:before,.contact:before{content:'';position:absolute;z-index:0;inset:0 0 auto;height:var(--tone-depth);pointer-events:none}
.services:before{background:radial-gradient(circle at 82% 0,#eab46a24,transparent 58%),linear-gradient(180deg,var(--ink) 0%,#3d3f3d 28%,#a8a69f 65%,var(--paper) 100%)}
.ai-section:before{background:radial-gradient(circle at 18% 0,#eab46a1f,transparent 58%),linear-gradient(180deg,var(--paper) 0%,#b4b2ab 30%,#5a5c59 65%,#222524 100%)}
.process:before{background:radial-gradient(circle at 82% 0,#eab46a1f,transparent 58%),linear-gradient(180deg,#222524 0%,#5b5d5a 30%,#b6b4ad 65%,var(--paper) 100%)}
.contact:before{background:radial-gradient(circle at 18% 0,#eab46a24,transparent 58%),linear-gradient(180deg,var(--paper) 0%,#b3b1aa 30%,#575956 65%,var(--ink) 100%)}
@media(max-width:900px){main>section{scroll-margin-top:145px}}
@media(max-width:600px){:root{--tone-depth:72px}.services,.ai-section,.process,.contact{padding-top:110px}.premium-reveal{transform:translate3d(0,20px,0);transition-duration:.75s}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.premium-reveal,.about-portrait.premium-reveal{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}.button:hover,.company:hover .company-logo img{transform:none}header{transition:none}}
.languages a{min-height:40px;display:inline-flex;align-items:center;padding:8px 3px;color:var(--muted);transition:color .35s ease}
.languages a[aria-current="page"],.languages a:hover{color:var(--amber)}
