.home-hero { position:relative; display:flex; align-items:center; min-height:88vh; min-height:88svh; background:var(--ink-950); overflow:hidden; isolation:isolate; }
.home-hero-images,.home-hero-shade { position:absolute; inset:0; pointer-events:none; }
.home-hero-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 60%; opacity:0; transition:opacity 1s ease; }
.home-hero-image-driver { object-position:65% 70%; }
.home-hero-image.is-active { opacity:1; }
.home-hero-shade { background:linear-gradient(90deg,rgba(var(--brand-rgb),.96),rgba(var(--brand-rgb),.88) 25%,rgba(var(--brand-rgb),.24) 55%,rgba(var(--brand-rgb),.03) 80%),linear-gradient(0deg,rgba(var(--brand-rgb),.22),transparent 45%); }
.home-hero-content { position:relative; z-index:1; width:100%; max-width:1280px; margin:0 auto; padding:164px 24px 52px; color:white; }
.home-hero-stack { display:grid; grid-template-columns:minmax(0,510px); }
.home-hero-copy { grid-area:1/1; align-self:start; min-width:0; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .35s ease; }
.home-hero-copy.is-active { opacity:1; visibility:visible; pointer-events:auto; }
.home-hero-kicker { font:600 12px/1.5 var(--font-mono); letter-spacing:.14em; color:var(--sand-300); }
.home-hero-title { font-family:var(--font-display); font-size:clamp(2.2rem,3.6vw,3.6rem); line-height:1.24; font-weight:600; white-space:pre-line; overflow-wrap:anywhere; margin:18px 0; text-shadow:0 2px 18px rgba(0,0,0,.2); }
.home-hero-description { max-width:440px; font-size:16px; line-height:1.85; color:rgba(255,255,255,.94); overflow-wrap:anywhere; }
.home-hero-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:26px; align-items:center; }
.home-hero-actions .btn-cta { min-height:48px; }
.home-hero-secondary { font-size:14px; text-decoration:underline; text-underline-offset:4px; padding:12px 0; }
.home-hero-controls { max-width:510px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 16px; margin-top:28px; min-height:44px; }
.home-hero-controls[hidden] { display:none; }
.home-hero-dots,.home-hero-arrows { display:flex; align-items:center; gap:4px; flex-wrap:wrap; }
.home-hero-dots button { width:24px; height:44px; display:grid; place-items:center; }
.home-hero-dots span { width:7px; height:7px; background:#ffffff70; border-radius:100px; transition:width .2s; }
.home-hero-dots [aria-pressed=true] span { background:white; width:21px; }
.home-hero-arrows button { width:44px; height:44px; border:1px solid #ffffff70; border-radius:50%; display:grid; place-items:center; background:rgba(var(--brand-rgb),.3); }
.home-hero-count { font:500 11px/1 var(--font-mono); padding:0 8px; white-space:nowrap; }
.home-hero-controls button:hover { background:#ffffff20; border-radius:100px; }
.home-hero a:focus-visible,.home-hero button:focus-visible { outline:3px solid white; outline-offset:3px; }
@media (max-width:1023px) and (min-width:768px) {
  .home-hero-content { padding-top:150px; }
  .home-hero-stack { grid-template-columns:minmax(0,440px); }
  .home-hero-title { font-size:2.5rem; }
}
@media (max-width:767px) {
  .home-hero { min-height:0; }
  .home-hero-images { top:64px; height:320px; }
  .home-hero-image { object-position:50% 65%; }
  .home-hero-image-driver { object-position:62% 73%; }
  .home-hero-shade { background:linear-gradient(180deg,transparent 280px,rgba(var(--brand-rgb),.3) 330px,var(--ink-950) 388px); }
  .home-hero-content { padding:402px 24px 32px; }
  .home-hero-title { font-size:clamp(1.8rem,7.3vw,2.8rem); margin:12px 0; }
  .home-hero-description { font-size:15px; line-height:1.8; }
  .home-hero-actions { margin-top:22px; }
  .home-hero-controls { margin-top:24px; gap:4px 16px; }
}
@media (prefers-reduced-motion:reduce) { .home-hero-image,.home-hero-copy,.home-hero-dots span { transition:none; } }
