/* index2 · hero + band */
    .hero {
      min-height: 100svh;
      display: flex;
      align-items: center;
      padding: 130px 0 56px;
      position: relative;
      overflow: hidden;
      background: #1a1614;
    }
    .hero-bg {
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at 72% 40%, rgba(201,74,65,.32), transparent 44%),
        radial-gradient(circle at 18% 74%, rgba(205,228,233,.18), transparent 38%),
        linear-gradient(180deg, #211918 0%, #1a1614 100%);
    }
    .hero-noise {
      position: absolute;
      inset: 0;
      opacity: .028;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
      background-size: 200px;
    }
    .hero-content {
      position: relative;
      z-index: 2;
      color: #fff;
      width: 100%;
    }
    .hero-layout {
      position: relative;
      min-height: 820px;
      display: block;
    }
    .hero-copy {
      position: relative;
      z-index: 4;
      max-width: 760px;
      width: min(70%, 760px);
      padding-top: 88px;
      padding-left: clamp(28px, 4vw, 72px);
    }
    .hero-media {
      position: absolute;
      inset: 24px 0 0 -7%;
      width: 114%;
      min-height: 760px;
      z-index: 1;
      margin-top: 0;
      pointer-events: none;
    }
    .hero-photo-frame {
      position: absolute;
      inset: 0;
      width: 100%;
      border-radius: 34px;
      overflow: hidden;
      border: 1px solid rgba(255,255,255,.14);
      box-shadow: 0 40px 90px rgba(0,0,0,.20);
      background: rgba(255,255,255,.02);
      backdrop-filter: blur(12px);
    }
    .hero-photo-frame::before {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(0,0,0,0));
      pointer-events: none;
      z-index: 1;
    }
    .hero-photo-frame img {
      width: 100%;
      height: 100%;
      min-height: 760px;
      display: block;
      object-fit: cover;
      object-position: center 30%;
      filter: saturate(1.01) contrast(1.01);
    }
    .hero-photo-accent { display: none !important; }
.eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 20px;
      font-size: .72rem;
      letter-spacing: .26em;
      text-transform: uppercase;
      font-weight: 700;
      color: var(--coral);
      position: relative;
      z-index: 5;
    }
    .eyebrow::before {
      content: '';
      display: block;
      width: 28px;
      height: 1px;
      background: var(--coral);
    }
    .hero h1 {
      font-family: var(--serif);
      font-size: clamp(3.35rem, 7.4vw, 7.7rem);
      font-weight: 600;
      line-height: .9;
      letter-spacing: -.04em;
      max-width: 10ch;
      margin-bottom: 18px;
      position: relative;
      z-index: 5;
    }
    .hero h1 em {
      font-style: italic;
      color: rgba(255,255,255,.56);
    }
    .hero-copy > * {
      position: relative;
      left: 3.5%;
    }
   .hero-lead {
  max-width: 48ch;
  font-size: 1.02rem;
  line-height: 1.8;
  color: #fff;
  margin-bottom: 30px;
  position: relative;
  z-index: 5;
  text-shadow:
   0 2px 4px rgba(0,0,0,.68),
    0 0 12px rgba(0,0,0,.62),
    0 0 24px rgba(0,0,0,.52),
    0 0 42px rgba(0,0,0,.38),
    0 0 70px rgba(0,0,0,.24);
}

    .hero-pill-row {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-bottom: 28px;
      position: relative;
      z-index: 5;
    }
    .hero-pill {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 11px 16px;
      border-radius: 999px;
      border: 1px solid rgba(255,255,255,.15);
      background: rgba(255,255,255,.07);
      backdrop-filter: blur(12px);
      font-size: .84rem;
      color: rgba(255,255,255,.84);
    }
    .hero-pill i { color: var(--coral); font-size: .78rem; }
    .hero-actions {
      display: flex;
      gap: 12px;
      flex-wrap: wrap;
      position: relative;
      z-index: 5;
      margin-bottom: 0;
      transform: translateY(-16px);
    }
    .btn-primary,
    .btn-outline,
    .btn-secondary {
      min-height: 54px;
      padding: 0 26px;
      border-radius: 999px;
      font-size: .9rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      transition: transform .22s, box-shadow .22s, background .22s;
    }
    .btn-primary {
      background: #fff;
      color: var(--ink);
      font-weight: 700;
      box-shadow: 0 18px 38px rgba(0,0,0,.18);
    }
    .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 22px 44px rgba(0,0,0,.22); }
    .btn-outline {
      border: 1px solid rgba(255,255,255,.28);
      color: #fff;
    }
    .btn-outline:hover { background: rgba(255,255,255,.1); }
    .btn-secondary {
      background: var(--coral);
      color: #fff;
      font-weight: 700;
      box-shadow: 0 16px 32px rgba(201,74,65,.24);
    }
    .btn-secondary:hover { transform: translateY(-2px); box-shadow: 0 20px 38px rgba(201,74,65,.3); }

    .hero-scroll {
      position: absolute;
      right: 40px;
      bottom: 48px;
      z-index: 2;
      writing-mode: vertical-rl;
      font-size: .68rem;
      letter-spacing: .22em;
      text-transform: uppercase;
      color: rgba(255,255,255,.38);
      display: flex;
      align-items: center;
      gap: 14px;
    }
    .hero-scroll::after {
      content: '';
      width: 1px;
      height: 60px;
      background: linear-gradient(180deg, rgba(255,255,255,.28), transparent);
    }
    .hero-stat-strip {
      position: absolute;
      right: 0;
      bottom: 0;
      z-index: 2;
      display: flex;
      gap: 0;
    }
    .hero-stat {
      padding: 28px 32px;
      border-top: 1px solid rgba(255,255,255,.08);
      border-left: 1px solid rgba(255,255,255,.08);
      background: rgba(0,0,0,.08);
      backdrop-filter: blur(10px);
    }
    .hero-stat strong {
      display: block;
      font-family: var(--serif);
      font-size: 3rem;
      line-height: 1;
      color: #fff;
    }
    .hero-stat span {
      display: block;
      margin-top: 6px;
      font-size: .74rem;
      letter-spacing: .1em;
      color: rgba(255,255,255,.48);
      text-transform: uppercase;
    }

   .band {
      padding: 22px 0;
      background: var(--butter);
      overflow: hidden;
    }
    .band-track {
      display: flex;
      gap: 48px;
      white-space: nowrap;
      animation: marquee 22s linear infinite;
    }
    .band-item {
      display: inline-flex;
      align-items: center;
      gap: 14px;
      font-size: .78rem;
      letter-spacing: .18em;
      text-transform: uppercase;
      font-weight: 700;
      color: var(--ink);
      flex-shrink: 0;
    }
    .band-item::after {
      content: '✦';
      color: var(--coral);
    }
    @keyframes marquee {
      from { transform: translateX(0); }
      to { transform: translateX(-50%); }
    }