.home-page{overflow-x:clip}
.home-screen-scroll{scroll-snap-type:y proximity;scroll-behavior:smooth}
.home-screen-scroll .home-page main>section{scroll-snap-align:start;scroll-snap-stop:always}
.home-hero{min-height:min(750px,calc(100svh - 114px));display:flex;flex-direction:column;justify-content:center;padding-top:65px;padding-bottom:28px;background:radial-gradient(ellipse at 90% 5%,#35382c60,transparent 60%)}
.home-hero>.eyebrow{color:var(--muted)}
.home-hero h1{margin:44px 0 42px;font-size:clamp(56px,9vw,144px);line-height:1.02;letter-spacing:0}
.home-hero h1>span{display:block}
.home-hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:32px}
.home-hero-bottom>p{font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.65;color:#bec2b4;max-width:530px}
.home-actions{display:flex;gap:12px;flex-wrap:wrap}
.home-button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:50px;padding:15px 20px;border:1px solid var(--orange);border-radius:var(--button-radius);background:var(--orange);color:var(--bg);font-size:.875rem;transition:background .2s,border-color .2s}
.home-button-outline{background:transparent;color:var(--cream);border-color:#ffffff40}
.home-button:hover{background:var(--cream);border-color:var(--cream);color:var(--bg)}
.home-hero-foot{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:24px;margin-top:68px;font-size:.8125rem;color:var(--muted)}
.home-hero-foot a:hover{color:var(--cream)}
.home-introduction{display:grid;grid-template-columns:1fr 1.5fr;gap:10%;border-top:1px solid var(--line)}
.home-intro-label>.eyebrow{color:var(--muted);margin-bottom:42px}
.home-studio-word{display:block;font-size:clamp(2.4rem,4.4vw,4.5rem);font-weight:700;letter-spacing:0;line-height:1.05;color:#858c75}
.home-studio-word em{color:var(--orange);font-weight:400}
.home-intro-copy h2{margin-bottom:38px}
.home-intro-copy p{font-size:1.125rem;line-height:1.75;color:var(--muted);max-width:650px}
.home-intro-copy .home-intro-lead{font-size:clamp(1.3rem,2.05vw,2rem);line-height:1.5;color:var(--cream);margin-bottom:24px;letter-spacing:0}
.home-page .expertise{border-bottom:1px solid var(--line)}
.home-explore{display:grid;grid-template-columns:1fr 1.1fr;gap:9%;align-items:start}
.home-explore .eyebrow{color:var(--muted);margin-bottom:26px}
.home-explore-links{display:flex;flex-direction:column;gap:12px}
.home-explore-links>a{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:25px 28px;border:1px solid #ffffff25;border-radius:var(--button-radius);background:#1a1d16;transition:background .2s,border-color .2s}
.home-explore-links>a:hover{background:#242a1c;border-color:var(--orange)}
.home-explore-links strong{display:block;font-size:1.5rem;font-weight:400;letter-spacing:0}
.home-explore-links small{display:block;font-size:.875rem;color:var(--muted);margin-top:8px;line-height:1.45}
.home-explore-links>a>span:last-child{font-size:1.75rem;color:var(--orange)}
/* Content is visible by default; only a working observer opts into animation. */
.reveal-ready{opacity:0;transform:translate3d(0,26px,0);transition:opacity .75s ease var(--reveal-delay,0ms),transform .85s cubic-bezier(.2,.65,.2,1) var(--reveal-delay,0ms)}
.reveal-ready.is-revealed{opacity:1;transform:none}
/* Typography enters in short word sequences, keeping its original spacing. */
.type-mask{display:inline-block;vertical-align:bottom;overflow:clip;padding:.12em .08em;margin:-.12em -.08em}
.type-word{display:inline-block;transform-origin:0 100%}
.type-ready:not(.is-revealed) .type-word{opacity:0;transform:translate3d(0,115%,0) rotate(3deg);filter:blur(4px)}
.type-ready.is-revealed .type-word{animation:type-arrive .85s cubic-bezier(.16,1,.3,1) var(--word-delay,0ms) both}
.home-intro-lead.type-ready.is-revealed .type-word{animation-name:type-focus;animation-duration:.65s}
@keyframes type-arrive{from{opacity:0;transform:translate3d(0,115%,0) rotate(3deg);filter:blur(4px)}to{opacity:1;transform:translate3d(0,0,0) rotate(0);filter:blur(0)}}
@keyframes type-focus{from{opacity:.15;transform:translate3d(0,12px,0);filter:blur(3px)}to{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.type-ready .type-word{animation:none!important;opacity:1!important;transform:none!important;filter:none!important}}
@media(max-width:1050px){.home-hero-bottom{align-items:flex-start;flex-direction:column;gap:28px}.home-introduction{gap:6%}.home-explore{gap:6%}}
@media(max-width:720px){.home-hero{min-height:0;padding-top:50px;padding-bottom:25px}.home-hero h1{font-size:clamp(36px,9vw,65px);margin:42px 0 30px;line-height:1.08}.home-hero .eyebrow{max-width:290px}.home-hero-bottom>p{font-size:1rem}.home-actions{gap:10px}.home-button{gap:14px;padding:14px 17px}.home-hero-foot{margin-top:45px;font-size:.75rem}.home-introduction{grid-template-columns:1fr;gap:32px}.home-intro-label>.eyebrow{margin-bottom:18px}.home-studio-word{font-size:2.2rem;display:none}.home-intro-copy h2{margin-bottom:27px}.home-intro-copy .home-intro-lead{font-size:1.4rem}.home-intro-copy p{font-size:1rem}.home-explore{grid-template-columns:1fr;gap:34px}.home-explore-links>a{padding:22px}.home-explore-links strong{font-size:1.4rem}.home-hero-foot{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none;transition:none}}
@supports(-webkit-hyphens:none){.type-ready:not(.is-revealed) .type-word{filter:none}.type-ready.is-revealed .type-word{animation-duration:.62s}}
@media(max-width:900px){.home-screen-scroll{scroll-snap-type:none;scroll-behavior:auto}}
/* Scroll motion enhances the existing type composition without moving layout. */
.home-scroll-progress{position:fixed;inset:0 0 auto;height:3px;z-index:100;background:var(--orange);transform:scaleX(var(--page-progress,0));transform-origin:left;pointer-events:none}
.home-hero{position:relative;isolation:isolate;overflow:clip}
.home-hero::before{content:"";position:absolute;inset:-15%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 80% 35%,#ba912e16,transparent 55%),radial-gradient(ellipse at 20% 85%,#d35a271c,transparent 50%);translate:0 var(--hero-glide,0px)}
.home-motion .home-hero h1>span:first-child{translate:calc(var(--hero-progress,0) * -32px) 0}
.home-motion .home-hero h1>span:last-child{translate:calc(var(--hero-progress,0) * 32px) 0}
.home-motion .home-studio-word{translate:0 var(--studio-glide,0px)}
.home-page main>section:not(.home-hero){position:relative}
.home-page main>section:not(.home-hero)::before{content:"";position:absolute;top:0;left:var(--pad);right:var(--pad);height:1px;background:var(--orange);transform:scaleX(var(--section-progress,0));transform-origin:left;pointer-events:none}
.home-motion .contact-heading h2 em{display:inline-block;translate:var(--contact-glide,0px) 0}
@media(max-width:720px){.home-motion .home-hero h1>span:first-child{translate:calc(var(--hero-progress,0) * -12px) 0}.home-motion .home-hero h1>span:last-child{translate:calc(var(--hero-progress,0) * 12px) 0}}
@media(prefers-reduced-motion:reduce){.home-scroll-progress{display:none}.home-hero::before,.home-motion .home-hero h1>span,.home-motion .home-studio-word,.home-motion .contact-heading h2 em{translate:none!important}.home-page main>section::before{display:none}}
.home-ripple-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:4}
.clients-section{padding:60px 0 80px;border-top:1px solid var(--line);overflow:hidden}.clients-section[hidden]{display:none}.clients-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-top:0;padding-bottom:36px}.clients-heading h2{margin-top:22px}.clients-heading button{border:1px solid var(--line);background:transparent;color:var(--cream);padding:12px 18px;min-height:44px;border-radius:var(--button-radius);font:inherit;font-size:.875rem}.client-marquee{overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}.client-track{display:flex;width:max-content;animation:client-loop var(--client-duration,40s) linear infinite}.client-group{display:flex;align-items:center;gap:64px;padding-right:64px;flex-shrink:0}.client-group img{width:180px;height:90px;object-fit:contain;filter:brightness(0) invert(1);opacity:.85}.client-marquee:hover .client-track{animation-play-state:paused!important}
@keyframes client-loop{to{transform:translateX(-50%)}}
@media(max-width:720px){.clients-section{padding:44px 0 56px}.clients-heading{align-items:center}.clients-heading h2{font-size:2.8rem}.client-group{gap:36px;padding-right:36px}.client-group img{width:125px;height:65px}.home-ripple-canvas{display:none}}
@media(prefers-reduced-motion:reduce){.client-track{animation:none;width:100%}.client-group{flex-wrap:wrap;justify-content:center;gap:28px;padding:0 24px;width:100%}.client-group[aria-hidden=true]{display:none}.client-group img[aria-hidden=true]{display:none}.client-marquee{mask-image:none}.home-ripple-canvas{display:none}}
