.hero{background:#fff;color:var(--ink);border-bottom:1px solid var(--line);display:flex;align-items:center;height:calc(100svh - 170px);min-height:540px;max-height:880px;overflow:hidden}
.hero-inner{padding-top:28px;padding-bottom:28px}
.hero-meta{display:flex;justify-content:space-between;gap:20px;margin-bottom:24px;color:var(--muted)}
.hero h1.hero-wordmark{font-size:inherit;line-height:1;margin:0 0 28px;max-width:1000px;transform:translateY(var(--hero-shift,0px))}
.hero-wordmark svg{display:block;width:100%;height:auto;aspect-ratio:1121/341;overflow:visible}
.stroke-animate{font-family:Arial,sans-serif;font-size:180px;font-weight:900;fill:transparent;stroke:var(--ink);stroke-width:1.5;stroke-dasharray:2000;stroke-dashoffset:2000;animation:wordmark-stroke 3s cubic-bezier(.4,0,.2,1) .15s both}
.stroke-animate.second-line{animation-delay:.5s}
.wordmark-dot{fill:var(--accent);animation:dot-appear .6s ease 1.1s both}
.hero-bottom{display:flex;justify-content:space-between;gap:40px;align-items:flex-end}
.hero-lead{font-size:23px;line-height:1.7}
.hero-sub{margin-top:0;color:var(--muted);font-size:11px}
.hero-next{margin-top:12px;border-color:var(--ink);min-width:240px;color:var(--ink)}
.hero-meta,.hero-bottom{animation:hero-enter .9s cubic-bezier(.2,.7,.3,1) .2s both}
.hero-bottom{animation-delay:.55s}
.motion-ready .reveal{opacity:0;transform:translateY(36px);transition:opacity .85s ease var(--reveal-delay,0ms),transform 1s cubic-bezier(.2,.7,.3,1) var(--reveal-delay,0ms)}
.motion-ready .reveal.is-visible,.motion-ready .reveal:focus-within{opacity:1;transform:translateY(0)}
.section-head h2,.partner-title h2{clip-path:inset(0 0 100% 0);transition:clip-path 1.1s cubic-bezier(.2,.7,.3,1)}
.is-visible h2{clip-path:inset(0)}
html:not(.motion-ready) .section-head h2,html:not(.motion-ready) .partner-title h2{clip-path:none}
.project-image img{transform:translateY(var(--image-shift,0px)) scale(1.04);transition:transform .5s cubic-bezier(.2,.7,.3,1)}
.project a:hover img{transform:translateY(var(--image-shift,0px)) scale(1.075)}
.project-heading span,.text-link span{transition:transform .3s}
.project a:hover .project-heading span,.text-link:hover span{transform:translate(3px,-3px)}
.youtube-link{border-top:1px solid var(--line);margin-top:28px;padding-top:20px}
.youtube-link a{display:flex;align-items:center;gap:14px;font-size:14px}
.youtube-label{font-size:11px;color:#c02c27;font-weight:700}
.youtube-link a>span:last-child{margin-left:auto}
.about .youtube-link p{font-size:12px!important;color:var(--muted);margin:8px 0 0!important}
@keyframes wordmark-stroke{0%{stroke-dashoffset:2000;opacity:.25}10%{opacity:1}100%{stroke-dashoffset:0;opacity:1}}
@keyframes dot-appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-enter{from{opacity:1;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.hero{min-height:540px}.hero-bottom{gap:24px}.hero-lead{font-size:21px}.hero-sub{font-size:10px}}
@media(max-width:600px){.hero{height:calc(100svh - 150px);min-height:480px;max-height:720px}.hero-inner{padding:32px 0}.hero-meta{margin-bottom:48px;gap:10px}.hero-meta .eyebrow{font-size:9px}.hero h1.hero-wordmark{margin:0 0 46px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:26px}.hero-lead{font-size:19px}.hero-sub{font-size:10px}.hero-next{font-size:12px;width:240px}.hero-wordmark svg{min-height:0}.stroke-animate{stroke-width:2.2}.youtube-link a{font-size:13px;gap:10px}}
@media(max-width:360px){.hero-meta .eyebrow{font-size:8px}.hero-lead{font-size:17px}.hero-meta{margin-bottom:38px}.hero h1.hero-wordmark{margin-bottom:36px}}
@media(prefers-reduced-motion:reduce){.stroke-animate,.wordmark-dot,.hero-meta,.hero-bottom{animation:none;stroke-dashoffset:0;opacity:1}.hero h1.hero-wordmark{transform:none}.motion-ready .reveal{opacity:1;transform:none;transition:none}.section-head h2,.partner-title h2{clip-path:none;transition:none}.project-image img,.project a:hover img{transform:none;transition:none}}
.motion-paused .reveal{opacity:1;transform:none;transition:none}.motion-paused h2{clip-path:none}.motion-paused .hero-wordmark{transform:none!important}
.motion-paused .stroke-animate,.motion-paused .wordmark-dot,.motion-paused .hero-meta,.motion-paused .hero-bottom{animation:none;stroke-dashoffset:0;opacity:1}
