.hero{position:relative;width:100%;overflow:hidden;background:var(--color-bg-dark);margin-top:-64px;height:100svh;height:100vh;min-height:600px;max-height:1080px}.hero-images{position:absolute;inset:0}.hero-img{position:absolute;inset:0;opacity:0;transition:opacity .8s var(--ease-out);will-change:opacity}.hero-img.is-active{opacity:1}.hero-img img{width:100%;height:100%;object-fit:cover;object-position:center top}@media(prefers-reduced-motion:no-preference){.hero-img.is-active img{animation:ken-burns 8s var(--ease-out) forwards}}@keyframes ken-burns{0%{transform:scale(1.05)}to{transform:scale(1)}}.hero-overlay{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to bottom,#1a1a188c,#1a1a1800 22%),linear-gradient(to top,#1a1a18d1,#1a1a1859 45%,#1a1a1800 72%),linear-gradient(to right,#1a1a1880,#1a1a1800 50%)}.hero-texts{position:absolute;inset:0;z-index:2;pointer-events:none}.hero-text{position:absolute;inset:0;display:flex;justify-content:flex-start;align-items:center;padding:clamp(96px,12vh,140px) max(var(--pad-x),calc((100% - var(--max-w)) / 2 + var(--pad-x))) clamp(100px,15vh,168px);opacity:0;transition:opacity var(--dur-slow) var(--ease-out);pointer-events:none}.hero-text[data-pos^=left-]{justify-content:flex-start}.hero-text[data-pos^=center-]{justify-content:center}.hero-text[data-pos^=right-]{justify-content:flex-end}.hero-text[data-pos$=-top]{align-items:flex-start}.hero-text[data-pos$=-middle]{align-items:center}.hero-text[data-pos$=-bottom]{align-items:flex-end}.hero-text-content{max-width:580px;transform:translateY(20px);transition:transform var(--dur-slow) var(--ease-out)}.hero-text[data-align=center] .hero-text-content{text-align:center}.hero-text[data-align=right] .hero-text-content{text-align:right}.hero-text.is-active{opacity:1}.hero-text.is-active .hero-text-content{transform:translateY(0);pointer-events:auto}@media(prefers-reduced-motion:reduce){.hero-text-content{transform:none}.hero-text{transition:opacity var(--dur-base) var(--ease-out)}}.hero-title{font-size:clamp(2rem,4.5vw,var(--text-display));font-weight:var(--fw-bold);color:var(--color-text-invert);line-height:var(--lh-tight);letter-spacing:-.04em;white-space:pre-line;margin-bottom:16px;word-break:keep-all}.hero-sub{font-size:var(--text-body);font-weight:var(--fw-regular);color:#ffffffb8;line-height:var(--lh-loose);margin-bottom:32px;word-break:keep-all}.hero-cta{display:inline-flex;align-items:center;gap:8px;background:var(--color-text-invert);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--fw-semibold);text-decoration:none;padding:13px 28px;border-radius:var(--radius-sm);letter-spacing:.01em;transition:background var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.hero-cta:hover{background:#ffffffe0}.hero-cta svg{transition:transform var(--dur-fast) var(--ease-out)}.hero-cta:hover svg{transform:translate(3px)}.hero-cta:focus-visible{outline:2px solid var(--color-text-invert);outline-offset:3px}.hero-bar{position:absolute;bottom:0;left:0;right:0;z-index:3;padding:0 max(var(--pad-x),calc((100% - var(--max-w)) / 2 + var(--pad-x))) 32px}.hero-bar-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.hero-dots{display:flex;gap:24px;align-items:flex-end}.hero-dot{display:flex;flex-direction:column;gap:8px;background:none;border:none;cursor:pointer;padding:4px 0;opacity:.4;transition:opacity var(--dur-base) var(--ease-out)}.hero-dot:hover{opacity:.7}.hero-dot.is-active{opacity:1}.hero-dot:focus-visible{outline:2px solid rgba(255,255,255,.8);outline-offset:4px;border-radius:2px}.hero-dot-label{font-size:11px;font-weight:var(--fw-medium);color:var(--color-text-invert);letter-spacing:.03em;white-space:nowrap;text-align:left}.hero-dot-bar{display:block;width:48px;height:1.5px;background:#ffffff40;border-radius:1px;overflow:hidden}.hero-dot-progress{display:block;height:100%;width:0;background:var(--color-text-invert);border-radius:1px}.hero-dot.is-active .hero-dot-progress{animation:dot-fill 5s linear forwards}@media(prefers-reduced-motion:reduce){.hero-dot.is-active .hero-dot-progress{animation:none;width:100%}}@keyframes dot-fill{0%{width:0}to{width:100%}}.hero-controls{display:flex;align-items:center;gap:10px;flex-shrink:0}.hero-counter{font-size:11px;font-weight:var(--fw-medium);color:var(--color-text-invert);letter-spacing:.06em;min-width:48px;text-align:center}.hero-counter-sep{color:#ffffff4d;margin:0 2px}@media(max-width:768px){.hero{margin-top:-52px;height:100svh;height:100vh;min-height:480px}.hero-text{padding:80px 20px clamp(80px,11vh,120px)}.hero-text[data-pos-m^=left-]{justify-content:flex-start}.hero-text[data-pos-m^=center-]{justify-content:center}.hero-text[data-pos-m^=right-]{justify-content:flex-end}.hero-text[data-pos-m$=-top]{align-items:flex-start}.hero-text[data-pos-m$=-middle]{align-items:center}.hero-text[data-pos-m$=-bottom]{align-items:flex-end}.hero-text[data-align-m=left] .hero-text-content{text-align:left}.hero-text[data-align-m=center] .hero-text-content{text-align:center}.hero-text[data-align-m=right] .hero-text-content{text-align:right}.hero-text-content{max-width:100%}.hero-title{font-size:clamp(1.5rem,6vw,2rem)}.hero-sub{font-size:13px;margin-bottom:24px}.hero-cta{padding:11px 22px;font-size:13px}.hero-bar{padding:0 20px 24px}.hero-dot-label{display:none}.hero-dot-bar{width:28px}.hero-counter{font-size:10px;min-width:40px}.hero-dots{gap:14px}}@media(max-width:480px){.hero-title{font-size:1.375rem}.hero-eyebrow{margin-bottom:10px}.hero-sub{margin-bottom:20px}}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
