    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    :root {
      /* ── Logo System Palette ── */
      --deep-black:  #0A1F0A;
      --carbon:      #1A3A1A;
      --dark:        #244824;
      --dim:         #3A6A3A;
      --muted-green: #5A7A5A;
      --sage:        #A8C4A0;
      --pale-sage:   #E8F4E0;
      --ivory:       #F2D9B0;
      --gold:        #A07850;
      --wine:        #E8530A;
      --wine-bright: #F07030;
      --border:      rgba(42,90,42,0.3);
      /* Legacy aliases */
      --black:       #E8F4E0;
      --cream:       #E8F4E0;
      --muted:       #A8C4A0;
      --racing-red:  #E8530A;
      --gold-dim:    #3A6A3A;
      --olive:       #3A6A3A;
      --choco-text:  #F2D9B0;
    }

    :root {
      --nav-height: 100px;  /* Updated dynamically by JS or fallback */
    }

    html {
      scroll-behavior: smooth;
      scroll-padding-top: calc(var(--nav-height) + 0.75rem);
    }
    section[id] {
      scroll-margin-top: calc(var(--nav-height) + 0.75rem);
    }
    body.nav-open { overflow: hidden; }
    .skip-link {
      position: absolute;
      left: 1rem;
      top: -3rem;
      z-index: 10000;
      background: var(--ivory);
      color: var(--carbon);
      padding: .6rem .9rem;
      text-decoration: none;
      border-radius: 4px;
      transition: top .2s ease;
    }
    .skip-link:focus { top: 1rem; }

    body {
      background: var(--carbon);
      color: var(--cream);
      font-family: 'DM Sans', sans-serif;
      font-weight: 300;
      overflow-x: hidden;
      cursor: auto;
    }

    /* Signal Orange top bar across entire site */
    body::before {
      content: '';
      position: fixed; top: 0; left: 0; right: 0;
      height: 5px; z-index: 9999; pointer-events: none;
      background: linear-gradient(to right, var(--wine-bright), var(--wine), #B83C06);
    }

    /* ── CURSOR ─────────────────────────────── */
    #cur, #cur-ring {
      position: fixed;
      pointer-events: none;
      opacity: 0;
      visibility: hidden;
      z-index: 9998;
    }
    #cur {
      width: 6px;
      height: 6px;
      background: var(--wine);
      border-radius: 50%;
      z-index: 9999;
      transform: translate(-50%, -50%);
      transition: width .25s, height .25s, background .25s, opacity .2s;
    }
    #cur-ring {
      width: 32px;
      height: 32px;
      border: 1px solid rgba(232,83,10,.4);
      border-radius: 50%;
      transform: translate(-50%, -50%);
      transition: width .3s, height .3s, opacity .2s;
    }
    @media (pointer: fine) and (prefers-reduced-motion: no-preference) {
      html.has-custom-cursor body,
      html.has-custom-cursor a,
      html.has-custom-cursor button,
      html.has-custom-cursor .form-chip,
      html.has-custom-cursor .form-submit {
        cursor: none;
      }
      html.has-custom-cursor #cur,
      html.has-custom-cursor #cur-ring {
        opacity: 1;
        visibility: visible;
      }
    }

    /* ── GRAIN ───────────────────────────────── */
    body::after {
      content:''; position:fixed; inset:0; pointer-events:none; z-index:999;
      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='0.9' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
      opacity:.03;
    }

    /* ── NAV ─────────────────────────────────── */
    nav {
      position:fixed; top:0; left:0; right:0; z-index:200;
      padding:0.6rem 4rem;
      display:flex; justify-content:space-between; align-items:center;
      background:rgba(242,217,176,.97);
      border-bottom: 2px solid rgba(160,120,80,.3);
      box-shadow: 0 2px 20px rgba(232,83,10,.06);
    }
    .nav-brand {
      display: flex;
      align-items: center;
      gap: .9rem;
      text-decoration: none;
      position: relative;
    }
    .nav-brand::before {
      content: '';
      position: absolute;
      left: -1.2rem; top: 50%;
      transform: translateY(-50%);
      width: 3px; height: 52px;
      background: linear-gradient(to bottom, var(--wine-bright), var(--wine));
      border-radius: 2px;
    }
    .nav-brand-gtr {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 0;
      position: relative;
      z-index: 1;
      line-height: 1;
    }
    .nav-brand-gt {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 3.2rem;
      font-weight: 400;
      font-style: normal;
      letter-spacing: .04em;
      color: var(--wine);
      line-height: .95;
    }
    .nav-brand-rare {
      font-family: 'Bebas Neue', sans-serif;
      font-size: .75rem;
      font-weight: 400;
      font-style: normal;
      letter-spacing: .55em;
      text-transform: uppercase;
      color: var(--gold);
      line-height: 1.4;
    }
    .nav-links { display:flex; gap:2.5rem; list-style:none; }
    .nav-links a {
      font-size:.68rem; letter-spacing:.22em; text-transform:uppercase;
      color:var(--dark); text-decoration:none; transition:color .3s;
    }
    .nav-links a:hover { color:var(--wine); }
    .nav-cta {
      font-size:.68rem; letter-spacing:.2em; text-transform:uppercase;
      color:var(--ivory); background:var(--wine);
      padding:.55em 1.4em; text-decoration:none;
      border: none;
      outline: none;
      border-radius: 6px;
      transition:background .3s, color .3s;
    }
    .nav-cta:hover { background:var(--carbon); color:var(--wine); }

    /* ── HERO ────────────────────────────────── */
    .hero {
      min-height:85vh; position:relative; display:flex;
      flex-direction:column; justify-content:flex-end;
      padding:0 4rem 0; overflow:hidden; max-width:100vw;
    }

    /* Diagonal split background */
    .hero-bg {
      position:absolute; inset:0;
      background: linear-gradient(135deg,
        var(--carbon) 0%,
        var(--carbon) 40%,
        var(--carbon) 70%,
        var(--carbon) 100%);
    }

    /* Racing stripe accent */
    .hero-stripe {
      position:absolute; top:0; right:28%; width:3px; height:100%;
      background:linear-gradient(to bottom, transparent, rgba(232,83,10,.6) 30%, rgba(232,83,10,.4) 70%, transparent);
      opacity:.6;
    }
    .hero-stripe2 {
      position:absolute; top:0; right:calc(28% + 8px); width:1px; height:100%;
      background:linear-gradient(to bottom, transparent, var(--gold-dim) 40%, transparent);
      opacity:.4;
    }
    /* Porsche 5-band horizontal stripe across the hero — ivory & sepia */
    .hero-porsche-stripe {
      position: absolute;
      left: 0; right: 0;
      top: 50%;
      transform: translateY(-50%);
      height: 58px;
      pointer-events: none;
      display: flex;
      flex-direction: column;
      opacity: 0.18;
    }
    .hero-porsche-stripe span {
      display: block;
      width: 100%;
    }

    /* Big GTR watermark */
    .hero-wm {
      position:absolute; right:-2rem; top:50%; transform:translateY(-50%);
      font-family:'Bebas Neue', sans-serif;
      font-size:clamp(14rem, 22vw, 28rem);
      letter-spacing:-.02em;
      color:transparent;
      -webkit-text-stroke: 1px rgba(232,83,10,.06);
      line-height:1; pointer-events:none; user-select:none;
    }

    /* Tachometer ring graphic */
    .hero-ring-wrap {
      position:absolute; right:4rem; top:50%; transform:translateY(-50%);
      width:380px; height:380px; pointer-events:none;
    }
    .hero-ring {
      width:100%; height:100%; border-radius:50%;
      border:1px solid rgba(232,83,10,.1);
      position:relative;
      animation: slowSpin 40s linear infinite;
    }
    /* Gulf Blue ring — outermost, thin, crisp */
    .hero-ring-wrap::before {
      content:''; position:absolute;
      inset:-10px; border-radius:50%;
      border:2px solid rgba(42,90,42,.4);
      pointer-events:none;
    }
    /* Second Gulf Blue inner accent ring */
    .hero-ring-wrap::after {
      content:''; position:absolute;
      inset:-18px; border-radius:50%;
      border:1px solid rgba(42,90,42,.18);
      pointer-events:none;
    }
    .hero-ring::before {
      content:''; position:absolute; inset:20px; border-radius:50%;
      border:1px solid rgba(232,83,10,.06);
    }
    .hero-ring::after {
      content:''; position:absolute; inset:50px; border-radius:50%;
      border:1px dashed rgba(160,120,16,.1);
    }
    .hero-ring-inner {
      position:absolute; inset:80px; border-radius:50%;
      background:radial-gradient(circle, rgba(232,83,10,.1) 0%, transparent 70%);
      border:1px solid rgba(232,83,10,.06);
    }
    .tick {
      position:absolute; top:0; left:50%; transform-origin:0 190px;
      width:1px; height:12px; background:rgba(232,83,10,.14);
    }

    .ring-wine-names {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 400px;
      height: 400px;
      pointer-events: none;
      animation: spinFromCenter 60s linear infinite;
    }
    @keyframes spinFromCenter {
      from {
        transform: translate(-50%, -50%) rotate(0deg);
      }
      to {
        transform: translate(-50%, -50%) rotate(360deg);
      }
    }
    /* Inner champagne text counter-rotates */
    .ring-wine-names text:nth-child(2) {
      animation: spinReverseFromCenter 45s linear infinite;
      transform-origin: 200px 200px;
    }

    @keyframes spinReverseFromCenter { to { transform: rotate(-360deg); } }

    @keyframes slowSpin { to { transform: rotate(360deg); } }

    .hero-content { position:relative; z-index:2; max-width:700px; padding-top: 8rem; padding-bottom: 4rem; }

    .hero-eyebrow {
      display:flex; align-items:center; gap:1.2rem;
      font-size:.65rem; letter-spacing:.35em; text-transform:uppercase;
      color:var(--wine); margin-bottom:2rem;
      opacity:0; animation: fadeUp .9s ease .3s forwards;
    }
    .hero-eyebrow::before {
      content:''; display:block; width:40px; height:1px; background:var(--wine);
    }

    .hero-title {
      font-family:'Bebas Neue', sans-serif;
      font-size:clamp(4rem, 9vw, 9rem);
      line-height:.95; letter-spacing:.02em;
      color:var(--ivory); margin-bottom:1rem;
      opacity:0; animation: fadeUp .9s ease .5s forwards;
    }
    .hero-title .accent { color:var(--wine); }
    .hero-title .wine-word {
      color:transparent;
      -webkit-text-stroke:2px var(--dim);
    }

    .hero-sub {
      font-family:'Cormorant Garamond', serif;
      font-size:clamp(1.1rem, 2vw, 1.5rem);
      font-style:italic; font-weight:300;
      color:rgba(232,244,224,.8); margin-bottom:0;
      opacity:0; animation: fadeUp .9s ease .7s forwards;
      max-width:55ch; line-height:1.6;
    }

    .hero-actions {
      display:flex; align-items:center; gap:3rem;
      opacity:0; animation: fadeUp .9s ease .9s forwards;
    }
    .btn-primary {
      display:inline-flex; align-items:center; gap:1rem;
      background:transparent; color:var(--ivory); letter-spacing:.2em; text-transform:uppercase;
      padding:.9em 2em; text-decoration:none; font-weight:500;
      border: none;
      outline: none;
      border-radius: 6px;
      transition:background .3s, color .3s, transform .2s;
    }
    .btn-primary:hover { background:rgba(232,83,10,.1); color:var(--ivory); transform:translateX(3px); }
    .btn-primary .arrow { font-size:1rem; color:var(--wine); }

    .btn-ghost {
      display:inline-flex; align-items:center; gap:1rem;
      font-size:.72rem; letter-spacing:.2em; text-transform:uppercase;
      color:var(--muted); text-decoration:none;
      transition:color .3s;
    }
    .btn-ghost::after { content:''; display:block; width:40px; height:1px; background:currentColor; transition:width .4s; }
    .btn-ghost:hover { color:var(--wine); }
    .btn-ghost:hover::after { width:70px; }

    /* CTA Strip below hero */
    .hero-cta-strip {
      display:flex; align-items:center; gap:3rem;
      padding:2.5rem 4rem;
      background:var(--carbon);
      border-top: 4px solid var(--wine);
      border-bottom:1px solid rgba(232,83,10,.1);
    }

    .hero-stats {
      position:relative;
      display:flex;
      flex-direction: row;
      border-top:1px solid rgba(232,83,10,.18);
      background:rgba(26,58,26,.8); backdrop-filter:blur(10px);
      opacity:0; animation:fadeIn 1s ease 1.2s forwards;
      width: 100%;
    }
    .stat {
      flex:1; padding:1.5rem 2rem;
      border-right:1px solid rgba(232,83,10,.1);
      display:flex; flex-direction:column; gap:.3rem;
    }
    .stat:last-child { border-right:none; }
    .stat-value {
      font-family:'Bebas Neue', sans-serif;
      font-size:1.8rem; letter-spacing:.05em; color:var(--wine);
    }
    .stat-label {
      font-size:.6rem; letter-spacing:.25em; text-transform:uppercase; color:rgba(232,244,224,.7);
    }

    /* ══ GLOBAL SECTION HEADING SYSTEM ══════════ */
    .section-heading-wrap {
      margin-bottom: 5rem;
    }

    /* Eyebrow — orange pill label above every heading */
    .section-eyebrow {
      display: inline-flex;
      align-items: center;
      gap: .75rem;
      font-family: 'DM Sans', sans-serif;
      font-size: .72rem;
      font-weight: 500;
      letter-spacing: .45em;
      text-transform: uppercase;
      color: var(--wine);
      margin-bottom: 1rem;
    }
    .section-eyebrow::before {
      content: '';
      display: block;
      width: 36px;
      height: 3px;
      background: var(--wine);
      flex-shrink: 0;
    }

    /* Section h2 — on light (ivory) backgrounds */
    .section-h2 {
      font-family: 'Bebas Neue', sans-serif;
      font-size: clamp(4.5rem, 8vw, 7.5rem);
      line-height: .92;
      letter-spacing: .02em;
      color: var(--pale-sage);
      margin-bottom: 0;
    }
    /* Section h2 — on light (tan) backgrounds */
    .section-h2-light {
      color: var(--ivory) !important;
    }
    .section-h2 .orange { color: var(--wine); }
    .section-h2 .yellow { color: var(--wine-bright); }

    /* Thick orange + yellow double underline bar */
    .section-h2-underline {
      display: block;
      margin-top: 1rem;
      margin-bottom: 2.5rem;
      width: 120px;
      height: 6px;
      background: var(--wine);
      position: relative;
    }
    .section-h2-underline::after {
      content: '';
      position: absolute;
      left: 0; top: 9px;
      width: 60px; height: 3px;
      background: #A07810;
    }

    /* ── ALL SECTION HEADINGS — bright on dark green ── */
    section h2 {
      font-family: 'Bebas Neue', sans-serif;
      font-size: clamp(4.5rem, 8vw, 7.5rem);
      line-height: .92;
      letter-spacing: .02em;
      color: var(--pale-sage);
      margin-bottom: 0;
    }
    section h2 .gold,
    section h2 .orange { color: var(--wine); }

    /* Sections with tan/light backgrounds — headings go dark green */
    .section-cross h2,
    .section-prov h2,
    .section-testimonials h2,
    .section-about h2 {
      color: var(--ivory);
    }
    .section-cross h2 .gold { color: var(--wine); }
    .section-prov h2 .gold { color: var(--wine); }


    /* ── COLLECTOR CROSSOVER ─────────────────── */
    .section-cross {
      padding:4rem 4rem;
      position:relative; overflow:hidden;
      background: linear-gradient(180deg, var(--pale-sage) 0%, var(--ivory) 100%);
      border-top: 1px solid rgba(42,90,42,.15);
    }
    /* Orange left racing stripe on cross section */
    .section-cross::before {
      content:''; position:absolute;
      top:0; left:0; bottom:0; width:6px;
      background: linear-gradient(to bottom, var(--wine-bright), var(--wine), #C04010);
    }
    .cross-header {
      display:grid; grid-template-columns:1fr 1fr; gap:4rem;
      align-items:end; margin-bottom:5rem;
    }
    @media (max-width:960px) {
      .cross-header { grid-template-columns:1fr; gap:2rem; margin-bottom:3rem; }
    }
    .cross-header h2 {
      font-family:'Bebas Neue', sans-serif;
      font-size:clamp(4.5rem,8vw,7.5rem); line-height:.92;
      letter-spacing:.02em; color:var(--ivory);
    }
    .cross-header h2 .gold { color:var(--wine); }
    .cross-header p {
      font-size:.9rem; line-height:2; color:var(--dim);
      border-left:2px solid var(--wine); padding-left:1.5rem;
      max-width: 75ch;
    }

    .cross-cards {
      display:grid; grid-template-columns:repeat(4, 1fr); gap:1px;
      background:rgba(232,83,10,.1);
    }
    .cross-card {
      background:var(--carbon); padding:3rem 2.5rem;
      position:relative; overflow:hidden;
      transition:background .4s;
      border-top: 3px solid transparent;
      transition: background .4s, border-color .3s;
    }
    .cross-card:hover {
      background:var(--carbon);
      border-top-color: var(--wine);
    }
    .cross-card-icon {
      font-size:2.2rem; margin-bottom:1.8rem;
      display:block; filter:grayscale(.3);
    }
    .cross-card-title {
      font-family:'Bebas Neue', sans-serif;
      font-size:1.5rem; letter-spacing:.05em;
      color:var(--carbon); margin-bottom:.8rem;
    }
    .cross-card-text {
      font-size:.8rem; line-height:1.85; color:var(--muted-green);
    }
    .cross-card-bar {
      position:absolute; bottom:0; left:0; right:0;
      height:2px; background:var(--border);
      overflow:hidden;
    }
    .cross-card-bar::after {
      content:''; position:absolute; top:0; left:-100%; bottom:0;
      width:100%; background:linear-gradient(to right, var(--wine), #D4A017);
      transition:left .5s ease;
    }
    .cross-card:hover .cross-card-bar::after { left:0; }

    .cross-insight {
      margin-top:4rem; padding:3rem;
      border:1px solid rgba(232,83,10,.14);
      border-left: 5px solid var(--wine);
      display:grid; grid-template-columns:auto 1fr; gap:3rem; align-items:center;
      background: rgba(232,83,10,.04);
    }
    .cross-insight-label {
      font-family:'Bebas Neue', sans-serif;
      font-size:4rem; color:var(--wine); opacity:1; line-height:1;
      white-space:nowrap;
    }
    .cross-insight-text {
      font-family:'Cormorant Garamond', serif;
      font-size:1.4rem; font-style:italic; font-weight:300;
      color:var(--muted); line-height:1.6;
    }

    /* ── PHOTO GRIDS ─────────────────────────── */
    .photo-grid {
      display: grid;
      grid-template-columns: 3fr 2fr;
      gap: 6px;
      height: 420px;
    }
    .photo-frame-col {
      display: flex; flex-direction: column; gap: 6px;
    }
    .photo-frame {
      overflow: hidden;
      position: relative;
      flex: 1;
      background: var(--deep-black);
    }
    .photo-frame--tall {
      overflow: hidden;
      background: var(--deep-black);
    }
    .photo-frame img, .photo-frame--tall img {
      width: 100%; height: 100%;
      object-fit: cover;
      display: block;
      filter: sepia(15%) contrast(1.05) brightness(0.95);
      transition: transform .6s ease, filter .4s ease;
    }
    .photo-frame:hover img, .photo-frame--tall:hover img {
      transform: scale(1.04);
      filter: sepia(5%) contrast(1.08) brightness(1.0);
    }
    /* Signal Orange border accent on hover */
    .photo-frame::after, .photo-frame--tall::after {
      content: '';
      position: absolute; inset: 0;
      border: 2px solid transparent;
      transition: border-color .3s;
      pointer-events: none;
    }
    .photo-frame:hover::after, .photo-frame--tall:hover::after {
      border-color: rgba(232,83,10,.4);
    }

    /* Full-bleed cinematic band */
    .prov-full-bleed {
      position: relative;
      height: 420px;
      overflow: hidden;
      margin: 4rem -4rem;
    }
    .prov-full-bleed img {
      width: 100%; height: 100%;
      object-fit: cover;
      object-position: center 40%;
      filter: sepia(20%) contrast(1.1) brightness(0.75);
      display: block;
    }
    .prov-full-bleed-caption {
      position: absolute;
      bottom: 0; left: 0; right: 0;
      padding: 3rem 4rem 2rem;
      background: linear-gradient(to top, rgba(44,26,14,.8) 0%, transparent 100%);
    }
    .prov-full-bleed-caption span {
      font-family: 'Cormorant Garamond', Georgia, serif;
      font-size: clamp(1.1rem, 2vw, 1.6rem);
      font-style: italic; font-weight: 300;
      color: var(--carbon); letter-spacing: .02em;
      line-height: 1.4;
    }
    .prov-full-bleed-caption span::before {
      content: '"'; color: var(--wine); margin-right: .2em;
    }
    .prov-full-bleed-caption span::after {
      content: '"'; color: var(--wine); margin-left: .2em;
    }

    /* ── PROVENANCE EDITORIAL ────────────────── */
    .prov-editorial {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 6rem;
      align-items: center;
      margin: 5rem 0;
      padding: 4rem 0;
      border-top: 1px solid rgba(232,83,10,.06);
    }
    @media (max-width:960px) {
      .prov-editorial { grid-template-columns:1fr; gap:2rem; margin:2.5rem 0; }
      .prov-editorial--reverse { direction:ltr; }
    }
    .prov-editorial--reverse { direction: rtl; }
    .prov-editorial--reverse > * { direction: ltr; }
    .prov-image-wrap {
      position: relative;
    }
    .prov-image-caption {
      font-family: Georgia, serif;
      font-size: .7rem; font-style: italic;
      letter-spacing: .1em; color: var(--gold);
      margin-top: .8rem; text-align: center;
      opacity: 0.8;
    }
    .prov-text { display: flex; flex-direction: column; gap: 0; }
    .prov-label {
      font-size: .62rem; letter-spacing: .4em;
      text-transform: uppercase; color: var(--wine);
      display: flex; align-items: center; gap: 1rem;
      margin-bottom: 1.2rem;
    }
    .prov-label::before {
      content: '';
      display: inline-block; width: 36px; height: 3px;
      background: var(--wine);
    }
    .prov-heading {
      font-family: 'Cormorant Garamond', Georgia, serif;
      font-size: clamp(1.8rem, 3vw, 2.8rem);
      font-weight: 400; font-style: italic;
      color: var(--carbon); line-height: 1.2;
      margin-bottom: 1.8rem;
    }
    .prov-text p {
      font-size: .88rem; line-height: 2;
      color: var(--gold); margin-bottom: 1.2rem;
      max-width: 75ch;
    }
    .prov-stat-row {
      display: grid; grid-template-columns: 1fr 1fr;
      gap: 2rem; margin-top: 2rem;
      padding-top: 2rem;
      border-top: 1px solid rgba(232,83,10,.1);
    }
    .prov-stat {}
    .prov-stat-val {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 1.6rem; color: var(--wine);
      display: block; line-height: 1;
    }
    .prov-stat-key {
      font-size: .72rem; line-height: 1.6;
      color: var(--gold); display: block;
      margin-top: .4rem; letter-spacing: .05em;
    }

    /* ── WHY GTR ─────────────────────────────── */
    .section-why {
      padding:8rem 4rem;
      background:var(--carbon);
      position:relative; overflow:hidden;
    }
    .why-grid {
      display:grid; grid-template-columns:1fr 1fr; gap:8rem; align-items:center;
    }
    @media (max-width:960px) {
      .why-grid { grid-template-columns:1fr; gap:3rem; }
    }
    .why-left h2 {
      font-family:'Bebas Neue', sans-serif;
      font-size:clamp(4.5rem,8vw,7.5rem); line-height:.92;
      letter-spacing:.02em; margin-bottom:0; color:var(--carbon);
    }
    .why-left .section-h2-underline { margin-bottom: 2.5rem; }
    .why-left h2 .gold { color:var(--wine); }
    .why-left h2 .outline {
      color:transparent; -webkit-text-stroke:1.5px rgba(232,244,224,.35);
    }
    .why-left p {
      font-size:.9rem; line-height:2; color:rgba(232,244,224,.8); margin-bottom:2rem;
    }
    .why-left .btn-primary { margin-top:1rem; }

    .why-right {
      display:flex; flex-direction:column; gap:0;
      border:1px solid rgba(232,83,10,.14);
    }
    .why-item {
      padding:2.2rem 2.5rem; border-bottom:1px solid rgba(232,83,10,.1);
      display:grid; grid-template-columns:auto 1fr; gap:2rem; align-items:start;
      transition:background .3s;
    }
    .why-item:last-child { border-bottom:none; }
    .why-item:hover { background:rgba(232,83,10,.06); }
    .why-item-num {
      font-family:'Bebas Neue', sans-serif;
      font-size:1.2rem; color:var(--wine); line-height:1; padding-top:.1rem;
    }
    .why-item-body {}
    .why-item-title {
      font-family:'Cormorant Garamond', serif;
      font-size:1.15rem; font-weight:400; color:var(--ivory);
      margin-bottom:.5rem;
    }
    .why-item-text { font-size:.8rem; line-height:1.85; color:rgba(232,244,224,.75); }

    /* ── REGIONS ─────────────────────────────── */
    .section-regions {
      padding: 8rem 4rem;
      background: var(--carbon);
      border-top: 1px solid rgba(232,83,10,.1);
      position: relative;
    }
    .section-regions::after {
      content:''; position:absolute;
      top:0; right:0; bottom:0; width:6px;
      background: linear-gradient(to bottom, var(--dim), var(--carbon), var(--deep-black));
    }
    .regions-head { margin-bottom: 5rem; max-width: 800px; }
    .regions-head h2 {
      font-family:'Bebas Neue', sans-serif;
      font-size:clamp(4.5rem,8vw,7.5rem); line-height:.92; letter-spacing:.02em;
      color: var(--carbon);
    }
    .regions-intro {
      font-size: .9rem; line-height: 1.9;
      color: rgba(232,244,224,.75); margin-top: 1.5rem;
      max-width: 75ch;
    }

    /* Region blocks */
    .region-block {
      margin-bottom: 5rem;
      padding-bottom: 5rem;
      border-bottom: 1px solid rgba(232,83,10,.06);
    }
    .region-block:last-child { border-bottom: none; margin-bottom: 0; }
    .region-block-header {
      display: grid;
      grid-template-columns: 80px auto 1fr;
      gap: 3rem; align-items: start;
      margin-bottom: 3rem;
    }
    @media (max-width:768px) {
      .region-block-header { grid-template-columns:1fr; gap:1rem; }
      .region-block-num { font-size:3rem; }
      .region-block-desc { border-left:none; padding-left:0; border-top:2px solid rgba(232,83,10,.3); padding-top:1rem; }
    }
    .region-block-num {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 5rem; color: var(--wine);
      opacity: 0.25; line-height: 1;
    }
    .region-block-title-wrap { padding-top: .5rem; }
    .region-block-title {
      font-family: 'Bebas Neue', sans-serif;
      font-size: clamp(2.8rem,5vw,4.5rem);
      color: var(--ivory); line-height: .92;
      letter-spacing: .03em; margin: 0;
    }
    .region-block-sub {
      font-size: .65rem; letter-spacing: .25em;
      text-transform: uppercase; color: var(--wine);
      display: block; margin-top: .5rem;
    }
    .region-block-desc {
      font-size: .88rem; line-height: 1.95;
      color: rgba(232,244,224,.75);
      border-left: 2px solid rgba(232,83,10,.3);
      padding-left: 1.5rem; align-self: center;
      max-width: 75ch;
    }

    /* Region images */
    .region-img-wrap {
      width: 100%; height: 320px;
      overflow: hidden; margin-bottom: 3rem;
      position: relative;
      background: linear-gradient(135deg, var(--dark) 0%, var(--carbon) 100%);
    }
    .region-img-wrap::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(to right,
        rgba(44,26,14,.55) 0%, rgba(44,26,14,.08) 35%,
        rgba(44,26,14,.08) 65%, rgba(44,26,14,.55) 100%
      );
      pointer-events: none;
    }
    .region-img-wrap img {
      width: 100%; height: 100%;
      object-fit: cover; object-position: center 60%;
      filter: sepia(20%) saturate(85%) brightness(0.78);
      transition: transform 8s ease;
    }
    .region-img-wrap:hover img { transform: scale(1.04); }
    .region-img-label {
      position: absolute; bottom: 1.2rem; right: 1.8rem;
      font-family: 'Bebas Neue', sans-serif;
      font-size: .7rem; letter-spacing: .3em;
      color: rgba(232,244,224,.55); z-index: 1;
    }

    /* Road sign sub-headers */
    .region-sub-head { margin-bottom: 2rem; }
    .road-sign {
      display: inline-flex; flex-direction: column;
      padding: .9rem 1.8rem;
      position: relative;
      background: transparent;
      border: none;
      box-shadow: none;
    }
    .road-sign--left,
    .road-sign--right,
    .road-sign--burg,
    .road-sign--italy,
    .road-sign--spain {
      background: transparent;
      border: none;
    }
    .road-sign::after { display: none; }
    .road-sign::before { display: none; }
    .road-sign-text {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 1.5rem; letter-spacing: .14em;
      color: var(--ivory); line-height: 1;
    }
    .road-sign-appellation {
      font-size: .58rem; letter-spacing: .14em;
      text-transform: uppercase; color: var(--sage);
      margin-top: .35rem;
    }

    /* Château cards grid */
    .chateau-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2px;
      background: rgba(232,83,10,.18);
      margin-bottom: 1rem;
    }
    .chateau-card {
      background: rgba(22,40,22,0.008);
      background: var(--dark);
      padding: 2.2rem 2rem;
      position: relative;
      border-top: 3px solid transparent;
      transition: border-color .3s, background .3s;
      overflow: hidden;
    }
    .chateau-card:hover {
      background: var(--carbon);
      border-top-color: var(--wine);
    }
    .chateau-card--right  { background: var(--dark); }
    .chateau-card--right:hover  { background: var(--dark); border-top-color: #8A1A1A; }
    .chateau-card--burg   { background: var(--dark); }
    .chateau-card--burg:hover   { background: var(--dark); border-top-color: #6B2A6B; }
    .chateau-card--italy  { background: var(--dark); }
    .chateau-card--italy:hover  { background: var(--dark); border-top-color: #1A6B2A; }
    .chateau-card--spain  { background: var(--dark); }
    .chateau-card--spain:hover  { background: var(--dark); border-top-color: #8A5A1A; }

    /* The châeau road-sign name plate */
    .chateau-sign {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 1.45rem; letter-spacing: .06em;
      color: var(--ivory); line-height: 1.1;
      margin-bottom: .5rem;
      padding-bottom: .6rem;
      border-bottom: 1px solid rgba(232,83,10,.14);
    }
    .chateau-appellation {
      font-size: .62rem; letter-spacing: .18em;
      text-transform: uppercase; color: var(--wine);
      margin-bottom: 1.1rem; display: block;
    }
    .chateau-notes {
      font-size: .8rem; line-height: 1.85;
      color: rgba(238,244,232,.62);
    }
    .chateau-meta {
      display: flex; gap: 1.5rem;
      margin-top: 1.5rem;
      padding-top: 1rem;
      border-top: 1px solid rgba(232,83,10,.1);
      font-size: .62rem; letter-spacing: .1em;
      text-transform: uppercase; color: rgba(232,244,224,.55);
    }
    .chateau-meta span { white-space: nowrap; }

    /* ── AVAILABILITY ───────────────────────── */
    .section-availability {
      padding: 8rem 4rem;
      background: var(--dark);
      position: relative;
    }
    .section-availability::before {
      content: '';
      position: absolute; top: 0; left: 4rem; right: 4rem;
      height: 1px;
      background: linear-gradient(to right, transparent, rgba(232,83,10,.3), transparent);
    }
    .avail-head { margin-bottom: 4rem; }
    .avail-head h2 {
      font-family: 'Bebas Neue', sans-serif;
      font-size: clamp(3rem,6vw,5.5rem);
      color: var(--ivory); line-height: .92; margin: .5rem 0 0;
    }
    .avail-note {
      font-size: .75rem; letter-spacing: .18em; text-transform: uppercase;
      color: rgba(232,244,224,.6); margin-top: 1rem;
    }
    .avail-table-wrap {
      overflow-x: auto;
    }
    .avail-table {
      width: 100%; border-collapse: collapse;
      font-family: 'DM Sans', sans-serif;
    }
    .avail-table thead tr {
      border-bottom: 2px solid rgba(232,83,10,.3);
    }
    .avail-table th {
      font-size: .6rem; letter-spacing: .25em; text-transform: uppercase;
      color: var(--wine); font-weight: 500;
      padding: .8rem 1.2rem .8rem 0; text-align: left;
    }
    .avail-table tbody tr {
      border-bottom: 1px solid rgba(238,244,232,.06);
      transition: background .2s;
    }
    .avail-table tbody tr:hover { background: rgba(232,83,10,.04); }
    .avail-table td {
      padding: 1rem 1.2rem 1rem 0;
      font-size: .82rem; color: rgba(232,244,224,.92);
      line-height: 1.5;
    }
    .avail-table td:first-child {
      color: var(--ivory); font-weight: 500;
    }
    .avail-table td.avail-price {
      color: var(--wine); font-family: 'Bebas Neue', sans-serif;
      font-size: 1rem; letter-spacing: .05em;
    }
    .avail-badge {
      display: inline-block;
      font-size: .55rem; letter-spacing: .2em; text-transform: uppercase;
      padding: .25em .7em; border-radius: 3px; font-weight: 500;
    }
    .avail-badge--stock {
      background: rgba(232,83,10,.15); color: var(--wine);
      border: 1px solid rgba(232,83,10,.3);
    }
    .avail-badge--bond {
      background: rgba(168,196,160,.1); color: var(--sage);
      border: 1px solid rgba(168,196,160,.25);
    }
    .avail-region-row td {
      font-size: .6rem; letter-spacing: .3em; text-transform: uppercase;
      color: var(--wine); padding-top: 1.8rem; padding-bottom: .5rem;
      border-bottom: 1px solid rgba(232,83,10,.2) !important;
    }
    .avail-loading {
      color: rgba(232,244,224,.55); font-size: .8rem;
      letter-spacing: .15em; text-transform: uppercase;
      padding: 3rem 0;
    }
    .avail-empty {
      color: rgba(232,244,224,.55); font-size: .8rem;
      letter-spacing: .1em; padding: 2rem 0;
    }

    .section-process {
      padding:8rem 4rem;
      background:var(--carbon);
      position:relative; overflow:hidden;
      border-left: 8px solid var(--dim);
    }
    .process-head h2 { color:var(--ivory); font-family:'Bebas Neue',sans-serif; font-size:clamp(4.5rem,8vw,7.5rem); line-height:.92; letter-spacing:.02em; margin-bottom:0; }
    .process-head h2 .gold { color:var(--wine); }
    .process-head p { font-size:.88rem; line-height:2; color:rgba(232,244,224,.9); }

    .process-grid {
      display:grid; grid-template-columns:repeat(4,1fr); gap:3px;
      background:rgba(232,83,10,.18);
    }
    .process-step {
      background:var(--dark); padding:3rem 2rem;
      position:relative; overflow:hidden;
    }
    .process-step::before {
      content:attr(data-n);
      position:absolute; top:-1rem; right:1rem;
      font-family:'Bebas Neue', sans-serif;
      font-size:8rem; color:rgba(232,83,10,.07); line-height:1;
      pointer-events:none;
    }
    .step-icon { font-size:1.6rem; margin-bottom:1.5rem; }
    .step-tag {
      font-size:.58rem; letter-spacing:.3em; text-transform:uppercase;
      color:var(--wine); margin-bottom:1rem; display:block; font-weight:500;
    }
    .step-title {
      font-family:'Cormorant Garamond', serif;
      font-size:1.3rem; font-weight:400; color:var(--ivory);
      margin-bottom:.8rem;
    }
    .step-text { font-size:.8rem; line-height:1.85; color:rgba(232,244,224,.75); }

    /* ── BURGUNDY ALLOCATION BLOCK ───────────── */
    .alloc-block {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 5rem;
      margin-top: 5rem;
      padding-top: 5rem;
      border-top: 1px solid rgba(232,83,10,.2);
    }
    .alloc-title {
      font-family: 'Bebas Neue', sans-serif;
      font-size: clamp(3rem, 5vw, 5rem);
      line-height: .92; letter-spacing: .03em;
      color: var(--ivory);
      margin: .8rem 0 1.5rem;
    }
    .alloc-rule {
      width: 50px; height: 3px;
      background: var(--wine);
      margin-bottom: 2rem;
    }
    .alloc-body {
      font-size: .87rem; line-height: 2;
      color: rgba(232,244,224,.82);
      margin-bottom: 1.2rem;
    }
    .alloc-stat-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 2px;
      background: rgba(232,83,10,.18);
      margin-bottom: 2px;
    }
    .alloc-stat {
      background: var(--dark);
      padding: 2rem 1.8rem;
      display: flex;
      flex-direction: column;
      gap: .6rem;
    }
    .alloc-stat-val {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 2rem; color: var(--wine);
      letter-spacing: .04em; line-height: 1;
    }
    .alloc-stat-label {
      font-size: .72rem; line-height: 1.6;
      color: var(--sage);
    }
    .alloc-cta-wrap {
      background: var(--dark);
      padding: 2rem 1.8rem;
      display: flex;
      align-items: center;
    }
    @media (max-width: 900px) {
      .alloc-block { grid-template-columns: 1fr; gap: 3rem; }
      .alloc-stat-grid { grid-template-columns: 1fr; }
    }

    /* ── QUOTE ───────────────────────────────── */
    .section-quote {
      padding:8rem 4rem; text-align:center; position:relative;
      background: linear-gradient(180deg, var(--carbon) 0%, var(--dark) 100%);
      border-top: 5px solid var(--wine);
      border-bottom: 5px solid var(--wine);
    }
    .quote-bg-text {
      position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
      font-family:'Bebas Neue', sans-serif;
      font-size:clamp(8rem,15vw,18rem); letter-spacing:.05em;
      color:transparent; -webkit-text-stroke:1px rgba(232,83,10,.1);
      white-space:nowrap; pointer-events:none; user-select:none;
    }
    .quote-inner { position:relative; z-index:2; max-width:800px; margin:0 auto; }
    .quote-line {
      width:80px; height:4px;
      background: linear-gradient(to right, var(--wine), #D4A017);
      margin:0 auto 3rem;
    }
    .quote-text {
      font-family:'Cormorant Garamond', serif;
      font-size:clamp(1.6rem,2.8vw,2.4rem);
      font-style:italic; font-weight:300; line-height:1.5;
      color:var(--black); margin-bottom:2rem;
    }
    .quote-text .gold { color:var(--wine); font-style:normal; font-weight:500; }
    .quote-attr {
      font-size:.65rem; letter-spacing:.3em; text-transform:uppercase; color:var(--gold-dim);
    }

    /* ── ABOUT ───────────────────────────────── */
    .section-about {
      padding: 8rem 4rem;
      background: var(--carbon);
      position: relative; overflow: hidden;
      border-top: 5px solid var(--wine);
    }
    .section-about::before {
      content: '';
      position: absolute; left: 0; top: 0; bottom: 0;
      width: 6px;
      background: linear-gradient(to bottom, var(--wine), #D4A017);
    }
    /* Header row */
    .about-header {
      display: grid;
      grid-template-columns: auto 1fr;
      gap: 5rem;
      align-items: end;
      margin-bottom: 5rem;
    }
    .about-header h2 {
      font-family: 'Bebas Neue', sans-serif;
      font-size: clamp(4.5rem, 8vw, 7.5rem);
      line-height: .92; letter-spacing: .02em;
      color: var(--pale-sage); margin-bottom: 0;
    }
    .about-header h2 .outline {
      color: transparent; -webkit-text-stroke: 1.5px var(--wine);
    }
    .about-header-rule {
      width: 100%; height: 1px;
      background: linear-gradient(to right, var(--wine), rgba(232,83,10,0));
      margin-bottom: 0.6rem;
    }
    /* Full-width founder statement */
    .section-about .reveal { opacity: 1 !important; transform: none !important; }
    .section-regions .reveal { opacity: 1 !important; transform: none !important; }
    .section-cross .reveal { opacity: 1 !important; transform: none !important; }
    .section-why .reveal { opacity: 1 !important; transform: none !important; }
    .section-process .reveal { opacity: 1 !important; transform: none !important; }
    .section-quote .reveal { opacity: 1 !important; transform: none !important; }
    .section-contact .reveal { opacity: 1 !important; transform: none !important; }
    .founder-full {
      position: relative;
      max-width: 100%;
      padding: 4rem 5rem 3.5rem;
      border: 1px solid rgba(232,83,10,.18);
      border-left: 5px solid var(--wine);
      background: var(--dark);
      margin-bottom: 4rem;
    }
    .founder-full-quote {
      font-family: 'Cormorant Garamond', Georgia, serif;
      font-size: 14rem; line-height: 0.6;
      color: var(--wine); opacity: 0.12;
      position: absolute; top: 2rem; left: 3rem;
      pointer-events: none; user-select: none;
    }
    .founder-full-body {
      position: relative; z-index: 1;
      max-width: 860px;
    }
    .founder-full-body p {
      font-family: 'Cormorant Garamond', Georgia, serif;
      font-size: clamp(1.25rem, 2.2vw, 1.65rem);
      font-weight: 300; line-height: 1.75;
      color: var(--pale-sage); margin-bottom: 1.4rem;
      letter-spacing: 0.01em;
    }
    .founder-full-body p:last-child { margin-bottom: 0; }
    .founder-full-body em {
      color: var(--wine); font-style: italic;
    }
    .founder-full-sig {
      display: flex;
      align-items: center;
      gap: 3rem;
      margin-top: 3rem;
      padding-top: 2rem;
      border-top: 1px solid rgba(232,83,10,.14);
    }
    .founder-person {
      display: flex;
      align-items: center;
      gap: 1.5rem;
    }
    .founder-divider {
      width: 1px;
      height: 60px;
      background: linear-gradient(to bottom, transparent, rgba(232,83,10,.3), transparent);
      flex-shrink: 0;
    }
    .founder-full-name {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 3.5rem; color: var(--wine);
      line-height: 1; letter-spacing: .05em;
    }
    .founder-full-meta {
      display: flex; flex-direction: column; gap: .3rem;
    }
    .founder-full-title {
      font-size: .72rem; letter-spacing: .25em;
      text-transform: uppercase; color: var(--sage);
      opacity: 1;
    }
    .founder-full-sub {
      font-family: 'Cormorant Garamond', Georgia, serif;
      font-size: .9rem; font-style: italic;
      color: var(--ivory); opacity: 0.9;
    }
    /* Stats strip */
    .about-stats-strip {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 0;
      border: 1px solid rgba(232,83,10,.1);
      margin-bottom: 3rem;
    }
    .about-stats-strip .about-stat {
      border-left: none;
      padding: 2.2rem 2rem;
      border-right: 1px solid rgba(232,83,10,.1);
    }
    .about-stats-strip .about-stat:last-child { border-right: none; }
    .about-stats-strip .about-stat:hover {
      background: rgba(232,83,10,.06);
    }
    .about-stat-val {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 1.8rem; color: var(--wine);
      display: block; line-height: 1;
    }
    .about-stat-label {
      font-size: .72rem; line-height: 1.6;
      color: var(--gold); display: block;
      margin-top: .5rem; letter-spacing: .05em;
    }
    .about-gulf-rule {
      width: 100%; height: 4px;
      background: linear-gradient(to right,
        #40B4E5 0%, #40B4E5 30%,
        var(--dim) 30%, var(--dim) 45%,
        var(--carbon) 45%, var(--carbon) 55%,
        var(--dim) 55%, var(--dim) 70%,
        #40B4E5 70%, #40B4E5 100%);
      opacity: 0.45;
    }

    .section-contact {
      padding:8rem 4rem;
      background:var(--carbon);
      display:grid; grid-template-columns:1fr 1fr; gap:8rem; align-items:start;
      border-top: 5px solid var(--wine);
    }
    .section-faq {
      padding: 6rem 4rem;
      background: linear-gradient(180deg, rgba(26,58,26,.98) 0%, rgba(20,45,20,1) 100%);
      border-top: 1px solid rgba(232,83,10,.12);
    }
    .faq-intro {
      max-width: 75ch;
      color: rgba(232,244,224,.78);
      line-height: 1.85;
      margin-bottom: 2.5rem;
    }
    .faq-list {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 1rem;
    }
    .faq-item {
      border: 1px solid rgba(232,83,10,.14);
      background: rgba(238,244,232,.04);
      padding: 1.5rem 1.4rem;
    }
    .faq-item h3 {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 1.35rem;
      letter-spacing: .08em;
      color: var(--ivory);
      margin-bottom: .75rem;
    }
    .faq-item p {
      font-size: .88rem;
      line-height: 1.8;
      color: rgba(232,244,224,.78);
    }
    .contact-left {}
    .contact-left h2 {
      font-family:'Bebas Neue', sans-serif;
      font-size:clamp(4.5rem,8vw,7.5rem); line-height:.92;
      letter-spacing:.02em; margin-bottom:0; color:var(--ivory);
      word-break: normal;
      overflow-wrap: normal;
      white-space: normal;
      text-wrap: balance;
    }
    .contact-left .section-h2-underline { margin-bottom: 2.5rem; }
    .contact-left h2 .gold { color:var(--wine); }
    .contact-left p {
      font-size:.88rem; line-height:2; color:rgba(232,244,224,.75); margin-bottom:3rem;
      max-width:45ch;
    }
    .contact-meta { display:flex; flex-direction:column; gap:1.5rem; }
    .contact-meta-item { display:flex; gap:1.5rem; align-items:baseline; }
    .contact-meta-key {
      font-size:.6rem; letter-spacing:.25em; text-transform:uppercase;
      color:var(--wine); width:90px; flex-shrink:0;
    }
    .contact-meta-val { font-size:.85rem; color:rgba(232,244,224,.8); }
    .contact-meta-val a { color:inherit; text-decoration:none; transition:color .3s; }
    .contact-meta-val a:hover { color:var(--wine); }

    .contact-right {
      border:1px solid rgba(232,83,10,.14); padding:3.5rem;
      position:relative; background:rgba(238,244,232,.08);
    }
    .contact-right::before {
      content:''; position:absolute; top:0; left:0; right:0; height:2px;
      background:linear-gradient(to right, var(--wine), #D4A017, transparent);
    }
    .form-eyebrow {
      font-size:.62rem; letter-spacing:.3em; text-transform:uppercase;
      color:var(--wine); margin-bottom:2.5rem; display:block;
    }
    .form-row { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; }
    .form-field { margin-bottom:1rem; }
    .form-label {
      display:block; font-size:.6rem; letter-spacing:.2em; text-transform:uppercase;
      color:rgba(232,244,224,.65); margin-bottom:.35rem;
    }
    .form-control {
      width:100%; background:transparent;
      border:none; border-bottom:1px solid rgba(232,83,10,.14);
      color:var(--ivory);
      font-family:'DM Sans', sans-serif; font-weight:300; font-size:.9rem;
      padding:.6rem 0; outline:none; transition:border-color .3s;
    }
    .form-control:focus { border-bottom-color:var(--wine); }
    .form-control::placeholder { color:rgba(232,244,224,.4); }
    textarea.form-control { resize:none; height:80px; }
    .form-help {
      display:block;
      margin-top:.55rem;
      font-size:.7rem;
      color:rgba(232,244,224,.55);
      line-height:1.6;
    }

    .form-select-group { display:flex; gap:.8rem; flex-wrap:wrap; margin-bottom:1.8rem; }
    .form-chip {
      font-size:.6rem; letter-spacing:.15em; text-transform:uppercase;
      border:1px solid rgba(232,83,10,.14); color:rgba(232,244,224,.7);
      padding:.45em .9em; background:none; cursor:pointer;
      transition:all .3s; font-family:'DM Sans', sans-serif;
    }
    .form-chip:hover, .form-chip.active {
      border-color:var(--wine); color:var(--wine); background:rgba(232,83,10,.06);
    }

    .form-submit {
      display:flex; align-items:center; gap:1.2rem;
      background:none; border:none; cursor:pointer;
      font-family:'DM Sans', sans-serif; font-weight:500;
      font-size:.7rem; letter-spacing:.25em; text-transform:uppercase;
      color:var(--ivory); padding:0; margin-top:2.5rem;
      transition:color .3s;
    }
    .form-submit-line {
      width:50px; height:1px; background:var(--wine); transition:width .4s;
    }
    .form-submit:hover { color:var(--wine); }
    .form-submit:hover .form-submit-line { width:80px; }
    .form-status {
      margin-top: 1rem;
      font-size: .72rem;
      line-height: 1.6;
      color: rgba(232,244,224,.72);
    }
    .form-status:empty { display: none; }
    .form-status.is-error { color: #ffb08c; }
    .form-status.is-success { color: var(--sage); }
    .form-submit[disabled] {
      opacity: .6;
      cursor: wait;
    }
    a:focus-visible,
    button:focus-visible,
    input:focus-visible,
    textarea:focus-visible {
      outline:2px solid var(--wine);
      outline-offset:4px;
    }

    footer {
      padding:2.5rem 4rem;
      border-top:1px solid rgba(232,83,10,.14);
      border-bottom: 5px solid var(--wine);
      background:var(--carbon);
      display:flex; justify-content:space-between; align-items:center;
    }
    .footer-rest {
      font-family: 'Arial Black', Impact, sans-serif;
      font-size: 1rem;
      font-weight: 900;
      letter-spacing: -.02em;
      color: var(--wine);
      display: inline-flex;
      align-items: baseline;
      gap: 0;
    }
    .footer-gt { font-style: normal; }
    .footer-rare {
      font-family: Impact, 'Arial Narrow', sans-serif;
      font-style: italic;
      display: inline-block;
      transform: skewX(-10deg);
      letter-spacing: -.01em;
    }
    .footer-note { font-size:.6rem; letter-spacing:.15em; color:rgba(232,244,224,.45); }

    /* ── ANIMATIONS ──────────────────────────── */
    @keyframes fadeUp {
      from { opacity:0; transform:translateY(22px); }
      to   { opacity:1; transform:translateY(0); }
    }
    @keyframes fadeIn {
      from { opacity:0; } to { opacity:1; }
    }

    .reveal {
      opacity:0; transform:translateY(26px);
      transition:opacity .9s ease, transform .9s ease;
    }
    .reveal.visible { opacity:1; transform:translateY(0); }
    .reveal-delay-1 { transition-delay:.1s; }
    .reveal-delay-2 { transition-delay:.2s; }
    .reveal-delay-3 { transition-delay:.3s; }
    .reveal-delay-4 { transition-delay:.4s; }

    /* ── RESPONSIVE ──────────────────────────────────────────────────── */

    /* ── MOBILE HAMBURGER MENU ── */
    .nav-toggle {
      display: none;
      flex-direction: column;
      gap: 5px;
      cursor: pointer;
      padding: 4px;
      background: none;
      border: none;
    }
    .nav-toggle span {
      display: block;
      width: 24px;
      height: 2px;
      background: var(--dark);
      transition: all .3s;
    }
    .nav-mobile {
      display: none;
      position: fixed;
      top: 0; left: 0; right: 0; bottom: 0;
      background: rgba(10,31,10,.97);
      z-index: 300;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 2.5rem;
    }
    .nav-mobile.open { display: flex; }
    .nav-mobile[aria-hidden="true"] { display:none; }
    .nav-mobile a {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 2.5rem;
      letter-spacing: .1em;
      color: var(--ivory);
      text-decoration: none;
      transition: color .3s;
    }
    .nav-mobile a:hover { color: var(--wine); }
    .nav-mobile-close {
      position: absolute;
      top: 1.5rem; right: 1.5rem;
      background: none; border: none;
      color: var(--ivory);
      font-size: 2rem;
      cursor: pointer;
    }

    /* ── LAPTOP 1280px ── */
    @media (max-width: 1280px) {
      nav { padding: 0.6rem 2.5rem; }
      .section-cross, .section-regions,
      .section-quote, .section-contact, .section-faq { padding: 6rem 2.5rem; }
      .section-availability { padding: 6rem 2.5rem; }
      .section-about { padding: 6rem 2.5rem; }
      .hero { padding: 0 2.5rem 10rem; }
      .chateau-grid { grid-template-columns: repeat(3, 1fr); }
      .region-block { padding: 3rem 0; }
    }

    /* ── TABLET 768px–960px ── */
    @media (max-width: 960px) {
      h1, h2, h3,
      .section-eyebrow,
      .form-eyebrow,
      .contact-meta-key,
      .form-submit,
      .btn-primary,
      .btn-ghost {
        writing-mode: horizontal-tb !important;
        text-orientation: mixed !important;
      }

      /* NAV */
      nav { padding: 0.8rem 1.8rem; }
      .nav-links { display: none; }
      .nav-cta { display: none; }
      .nav-toggle { display: flex; }

      /* HERO */
      .hero {
        padding: 0 1.8rem 8rem;
        min-height: 80vh;
        justify-content: flex-end;
      }
      .hero-title {
        font-size: clamp(3.5rem, 10vw, 6rem);
      }
      .hero-sub { font-size: .85rem; }
      .hero-ring-wrap { display: none; }
      .hero-wm { font-size: 45vw; right: -1rem; }
      .hero-stats { flex-wrap: wrap; }
      .stat { min-width: 50%; border-bottom: 1px solid rgba(232,83,10,.1); }

      /* SECTIONS */
      .section-cross, .section-regions,
      .section-quote, .section-contact, .section-faq { padding: 3rem 1.8rem; }
      .section-availability { padding: 4rem 1.8rem; }
      .section-about { padding: 4rem 1.8rem; }

      /* GRIDS */
      .chateau-grid { grid-template-columns: repeat(2, 1fr); }
      .cross-cards { grid-template-columns: 1fr 1fr; }
      .about-stats-strip { grid-template-columns: repeat(2, 1fr); }
      .about-stats-strip .about-stat:nth-child(2) { border-right: none; }
      .about-stats-strip .about-stat:nth-child(3) { border-top: 1px solid rgba(232,83,10,.1); }

      /* CONTACT */
      .section-contact { grid-template-columns: 1fr; gap: 3rem; }
      .faq-list { grid-template-columns: 1fr; }
      .contact-meta { gap: 1rem; }
      .section-h2,
      .about-header h2,
      .contact-left h2,
      .avail-head h2 {
        font-size: clamp(3.4rem, 10vw, 5.2rem) !important;
        line-height: .96 !important;
        letter-spacing: .015em !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        white-space: normal !important;
      }
      .section-eyebrow,
      .form-eyebrow,
      .contact-meta-key,
      .footer-note {
        word-break: normal !important;
        overflow-wrap: normal !important;
      }
      .contact-left,
      .contact-right,
      .contact-meta,
      .contact-meta-item {
        min-width: 0;
      }
      .contact-left {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
      }
      .contact-left p {
        max-width: 75ch;
        margin-bottom: 2rem;
      }
      .contact-meta {
        width: 100%;
      }
      .contact-meta-item {
        display: grid !important;
        grid-template-columns: minmax(96px, 118px) 1fr;
        gap: .45rem 1rem !important;
        align-items: start;
      }
      .contact-meta-key {
        width: auto !important;
        margin-top: .15rem;
      }
      .contact-right {
        width: 100%;
        padding: 2.2rem 1.4rem !important;
      }
      .contact-right > p {
        margin-bottom: 1.4rem !important;
        line-height: 1.7;
      }
      .form-select-group {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .55rem;
      }
      .form-chip {
        width: 100%;
        text-align: center;
      }

      /* FORM */
      .form-row { grid-template-columns: 1fr; }

      /* FOUNDER */
      .founder-full { padding: 2.5rem 2rem; }
      .founder-full-quote { font-size: 8rem; }

      /* AVAILABILITY TABLE */
      .td-desc { display: none; }
      .td-bar { display: none; }
      .avail-table th, .avail-table td { padding: .7rem .8rem; font-size: .7rem; }

      /* REGION BLOCKS */
      .region-block { padding: 2.5rem 0; }
      .region-block-header { gap: 1rem; }
      .region-block-num { font-size: 4rem; }

      /* FOOTER */
      footer { flex-direction: column; gap: 1rem; text-align: center; padding: 2rem 1.8rem; }
      .footer-links { flex-wrap: wrap; justify-content: center; }
    }

    /* ── MOBILE 480px–768px ── */
    @media (max-width: 768px) {
      h1, h2, h3,
      .section-eyebrow,
      .form-eyebrow,
      .contact-meta-key,
      .form-submit,
      .btn-primary,
      .btn-ghost {
        word-break: normal !important;
        overflow-wrap: normal !important;
        white-space: normal !important;
      }

      /* NAV */
      nav { padding: 0.7rem 1.2rem; }

      /* HERO */
      .hero {
        padding: 0 1.2rem 7rem;
        min-height: 90vh;
      }
      .hero-title { font-size: clamp(3rem, 12vw, 5rem); }
      .hero-sub { font-size: .78rem; max-width: 100%; }
      .hero-wm { display: none; }
      .hero-stats { flex-direction: column; }
      .stat { min-width: 100%; border-right: none; border-bottom: 1px solid rgba(232,83,10,.1); }

      /* SECTIONS */
      .section-cross, .section-regions,
      .section-quote, .section-contact, .section-faq { padding: 3rem 1.2rem; }
      .section-availability { padding: 3rem 1.2rem; }
      .section-about { padding: 3rem 1.2rem; }

      /* GRIDS — single column */
      .chateau-grid,
      .chateau-grid[style*="repeat(2"],
      .chateau-grid[style*="repeat(3"] { grid-template-columns: 1fr !important; }
      .cross-cards { grid-template-columns: 1fr; }
      .about-stats-strip { grid-template-columns: 1fr; }
      .about-stats-strip .about-stat { border-right: none; border-bottom: 1px solid rgba(232,83,10,.1); }

      /* CONTACT */
      .section-contact { grid-template-columns: 1fr; gap: 2rem; }
      .faq-list { grid-template-columns: 1fr; }
      .contact-left p {
        max-width: none;
        margin-bottom: 1.5rem;
        line-height: 1.75;
      }
      .contact-meta-item {
        grid-template-columns: 1fr !important;
        gap: .3rem !important;
      }
      .contact-meta-key { font-size: .55rem; }
      .section-h2,
      .about-header h2,
      .contact-left h2,
      .avail-head h2 {
        font-size: clamp(2.9rem, 12vw, 4.2rem) !important;
        line-height: .98 !important;
        letter-spacing: .01em !important;
      }
      .contact-left h2 br,
      .section-h2 br {
        display: block;
      }

      /* FORM */
      .form-row { grid-template-columns: 1fr; }
      .form-select-group { gap: .5rem; }
      .form-chip { font-size: .55rem; padding: .5em .9em; }
      .form-control { font-size: .85rem; }
      .form-submit {
        width: 100%;
        justify-content: space-between;
        gap: 1rem;
      }

      /* FOUNDER */
      .founder-full { padding: 2rem 1.2rem; }
      .founder-full-quote { font-size: 5rem; }
      .founder-full-sig { flex-direction: column; gap: 1rem; }
      .founder-person { flex-direction: column; gap: .5rem; }

      /* AVAILABILITY */
      .avail-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
      .avail-table { min-width: 500px; }
      .avail-head h2 { font-size: 2.5rem; }

      /* REGION */
      .region-block-num { font-size: 3rem; }
      .region-block-title { font-size: 1.6rem; }
      .region-block-desc { font-size: .75rem; }
      .road-sign { padding: .6rem 1rem; }

      /* ABOUT */
      .about-stats-strip { grid-template-columns: 1fr 1fr; }
      .about-stat-val { font-size: 1.4rem; }

      /* PROV */
      .prov-editorial { grid-template-columns: 1fr; }
      .prov-heading { font-size: 1.6rem; }

      /* FOOTER */
      footer { padding: 2rem 1.2rem; gap: 1.5rem; }
      .footer-links { flex-direction: column; align-items: center; gap: .8rem; }
    }

    /* ── SMALL MOBILE under 480px ── */
    @media (max-width: 480px) {
      nav { padding: 0.6rem 1rem; }
      .nav-brand-gt { font-size: 1.6rem; }
      .nav-brand-rare { font-size: .55rem; }

      .hero { padding: 0 1rem 6rem; }
      .hero-title { font-size: clamp(2.6rem, 14vw, 4rem); }

      .section-cross, .section-regions,
      .section-quote, .section-contact, .section-faq,
      .section-availability, .section-about { padding: 2.5rem 1rem; }

      .chateau-card { padding: 1.5rem 1.2rem; }
      .chateau-sign { font-size: 1.1rem; }

      .avail-table th, .avail-table td { padding: .5rem .6rem; font-size: .65rem; }

      .founder-full { padding: 1.5rem 1rem; }
      .founder-full-name { font-size: 1.4rem; }

      .form-field { margin-bottom: .8rem; }
      .form-control { padding: .7rem .9rem; }

      footer { padding: 1.5rem 1rem; }
    }
    /* ── BACK TO TOP ─────────────────────────── */
    #btt {
      position: fixed !important;
      bottom: 24px !important;
      right: 24px !important;
      width: 44px !important;
      height: 44px !important;
      background: rgba(26,58,26,.76) !important;
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px);
      color: rgba(242,217,176,.92) !important;
      font-size: 16px !important;
      font-weight: 600 !important;
      text-align: center !important;
      line-height: 42px !important;
      text-decoration: none !important;
      display: block !important;
      z-index: 2147483647 !important;
      border: 1px solid rgba(242,217,176,.24) !important;
      border-radius: 999px !important;
      box-shadow: 0 10px 30px rgba(10,31,10,.22) !important;
      cursor: pointer !important;
      opacity: 0 !important;
      visibility: hidden !important;
      pointer-events: none !important;
      transform: translateY(12px) scale(.96);
      transition: opacity .25s ease, transform .25s ease, visibility .25s ease, background .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;
    }
    #btt.is-visible {
      opacity: 1 !important;
      visibility: visible !important;
      pointer-events: auto !important;
      transform: translateY(0) scale(1);
    }
    #btt:hover,
    #btt:focus-visible {
      background: rgba(232,83,10,.12) !important;
      border-color: rgba(232,83,10,.45) !important;
      color: #F2D9B0 !important;
      box-shadow: 0 14px 34px rgba(10,31,10,.28) !important;
      transform: translateY(-2px) scale(1) !important;
      outline: none !important;
    }

    /* ── GLOBAL MOBILE OVERFLOW FIX ─────────────── */
    html { overflow-x: hidden !important; }
    body { overflow-x: hidden !important; max-width: 100vw !important; }

    /* ── TABLET 960px ── */
    @media (max-width: 960px) {

      /* Hide large decorative layers on touch layouts */
      .hero-wm, .hero-ring-wrap, .hero-ring, #cur, #cur-ring { display: none !important; }
      .hero-stripe, .hero-stripe2, .hero-porsche-stripe { max-width: 100vw !important; }

      /* Consistent section padding */
      section { padding-left: 1.2rem !important; padding-right: 1.2rem !important; }
      nav { padding-left: 1.2rem !important; padding-right: 1.2rem !important; }
      .hero { padding-left: 1.2rem !important; padding-right: 1.2rem !important; }

      /* Two-col grids → single column */
      .section-contact { grid-template-columns: 1fr !important; gap: 3rem !important; padding: 3rem 1.2rem !important; }
      .section-faq { padding: 3rem 1.2rem !important; }
      .about-header { grid-template-columns: 1fr !important; gap: 2rem !important; }
      .cross-header { grid-template-columns: 1fr !important; gap: 2rem !important; margin-bottom: 3rem !important; }
      .why-grid { grid-template-columns: 1fr !important; gap: 3rem !important; }
      .prov-editorial { grid-template-columns: 1fr !important; gap: 2rem !important; direction: ltr !important; }
      .prov-editorial--reverse { direction: ltr !important; }

      /* Region block header → stack */
      .region-block-header { grid-template-columns: 1fr !important; gap: 1rem !important; }
      .region-block-num { font-size: 3rem !important; }
      .region-block-desc { border-left: none !important; padding-left: 0 !important; border-top: 2px solid rgba(232,83,10,.3) !important; padding-top: 1rem !important; }

      /* Chateau grids → 2 columns max */
      .chateau-grid { grid-template-columns: repeat(2, 1fr) !important; }
      .chateau-card { padding: 1.5rem 1.2rem !important; }

      /* About stats → 2 cols */
      .about-stats-strip { grid-template-columns: repeat(2, 1fr) !important; }

      /* Availability table */
      .avail-table-wrap { overflow-x: auto !important; -webkit-overflow-scrolling: touch !important; width: 100% !important; }
      .avail-table { min-width: 480px !important; }
      .td-desc, .td-bar { display: none !important; }

      /* Forms */
      .form-control, input, textarea, select { width: 100% !important; max-width: 100% !important; }
      .form-row { grid-template-columns: 1fr !important; }
      .form-select-group { flex-wrap: wrap !important; }

      /* Hero stats */
      .hero-stats { flex-wrap: wrap !important; }
      .stat { min-width: 50% !important; border-bottom: 1px solid rgba(232,83,10,.1) !important; }

      /* Founder */
      .founder-full { padding: 2rem 1.2rem !important; overflow: hidden !important; }
      .founder-full-quote { font-size: 6rem !important; }

      /* Footer */
      footer { flex-direction: column !important; gap: 1rem !important; text-align: center !important; padding: 2rem 1.2rem !important; }
      .footer-links { flex-wrap: wrap !important; justify-content: center !important; }

      /* Text overflow */
      .chateau-sign,
      .contact-meta-val,
      .contact-meta-val a { overflow-wrap: anywhere; }
    }

    /* ── MOBILE 768px ── */
    @media (max-width: 768px) {
      section { padding-left: 1rem !important; padding-right: 1rem !important; }
      nav { padding-left: 1rem !important; padding-right: 1rem !important; }
      .hero { padding-left: 1rem !important; padding-right: 1rem !important; }

      /* Single column grids */
      .chateau-grid { grid-template-columns: 1fr !important; }
      .about-stats-strip { grid-template-columns: 1fr 1fr !important; }
      .cross-cards { grid-template-columns: 1fr !important; }
      .faq-list { grid-template-columns: 1fr !important; }

      /* Hero */
      .hero-title { font-size: clamp(2.8rem, 13vw, 4.5rem) !important; }
      .hero-stats { flex-direction: column !important; }
      .stat { min-width: 100% !important; border-right: none !important; }

      /* Region */
      .region-block-title { font-size: 2rem !important; }
      .road-sign { max-width: 100% !important; }

      /* Contact */
      .contact-meta-item { flex-direction: column !important; gap: .3rem !important; }

      /* Avail table */
      .avail-table { min-width: 400px !important; }
      .avail-head h2 { font-size: 2.2rem !important; }
    }

    /* ── SMALL MOBILE 480px ── */
    @media (max-width: 480px) {
      section { padding-left: .9rem !important; padding-right: .9rem !important; }
      .hero-content { padding-top: 6rem; padding-bottom: 2.5rem; }
      .hero-eyebrow,
      .section-eyebrow,
      .avail-note,
      .quote-attr,
      .form-eyebrow,
      .footer-note {
        letter-spacing: .16em !important;
      }
      .hero-eyebrow {
        gap: .7rem;
        flex-wrap: wrap;
      }
      .hero-eyebrow::before { width: 24px; }
      .hero-cta-strip {
        flex-direction: column;
        align-items: stretch;
        gap: 1rem;
        padding: 1.25rem .9rem;
      }
      .btn-primary,
      .btn-ghost {
        width: 100%;
        justify-content: space-between;
      }
      .hero-stats {
        overflow: hidden;
        border-inline: 1px solid rgba(232,83,10,.08);
      }
      .stat { padding: 1rem .9rem !important; }
      .stat-value { font-size: 1.45rem; }
      .stat-label { letter-spacing: .14em; line-height: 1.5; }
      .chateau-card { padding: 1.2rem .9rem !important; }
      .chateau-sign { font-size: .95rem !important; }
      .about-stats-strip { grid-template-columns: 1fr !important; }
      .about-stat-val { font-size: 1.3rem !important; }
      .hero-title { font-size: clamp(2.4rem, 15vw, 3.8rem) !important; }
      .nav-brand-gt { font-size: 1.5rem !important; }
      .nav-brand::before { left: -.7rem; height: 36px; }
      .section-h2,
      .about-header h2,
      .contact-left h2 {
        font-size: clamp(2.7rem, 17vw, 3.8rem) !important;
        line-height: 1 !important;
        letter-spacing: .01em !important;
      }
      .quote-text {
        font-size: 1.35rem;
        line-height: 1.4;
      }
      .road-sign {
        display: flex;
        width: 100%;
        padding: .75rem 0 !important;
      }
      .road-sign-text { font-size: 1.15rem; }
      .road-sign-appellation {
        font-size: .54rem;
        line-height: 1.5;
        overflow-wrap: anywhere;
      }
      .founder-full { padding: 1.4rem .9rem !important; }
      .founder-full-quote {
        font-size: 4rem !important;
        top: 1rem;
        left: 1rem;
      }
      .founder-full-body p {
        font-size: 1.05rem;
        line-height: 1.65;
      }
      .about-stats-strip .about-stat {
        padding: 1.25rem .9rem;
        border-right: none;
      }
      .about-stat-label { font-size: .66rem; }
      .section-contact { gap: 1.5rem !important; }
      .contact-left p {
        max-width: none;
        line-height: 1.75;
      }
      .contact-meta-key { width: auto !important; }
      .contact-right {
        padding: 1.25rem .95rem !important;
        overflow: hidden;
      }
      .contact-right > p {
        margin-bottom: 1.1rem !important;
      }
      .form-chip { font-size: .55rem !important; padding: .4em .8em !important; }
      .form-chip {
        max-width: 100%;
        overflow-wrap: normal;
        word-break: normal;
      }
      .form-select-group {
        grid-template-columns: 1fr;
      }
      .form-submit {
        width: 100%;
        justify-content: space-between;
      }
      .footer-rest {
        font-size: .82rem;
        flex-wrap: wrap;
        justify-content: center;
      }
      .footer-note {
        text-align: center;
        line-height: 1.6;
      }

      .avail-head { margin-bottom: 1.75rem; }
      .avail-note { font-size: .62rem; line-height: 1.6; }
      .avail-table-wrap {
        overflow: visible !important;
        width: 100%;
      }
      .avail-table,
      .avail-table thead,
      .avail-table tbody,
      .avail-table th,
      .avail-table td,
      .avail-table tr {
        display: block;
        width: 100%;
      }
      .avail-table {
        min-width: 0 !important;
        border-collapse: separate;
      }
      .avail-table thead { display: none; }
      .avail-table tbody {
        display: grid;
        gap: .8rem;
      }
      .avail-table tbody tr {
        padding: .85rem .9rem;
        border: 1px solid rgba(232,83,10,.14);
        background: rgba(26,58,26,.45);
      }
      .avail-table tbody tr.avail-region-row {
        padding: .25rem 0 0;
        border: 0;
        background: transparent;
      }
      .avail-region-row td {
        padding: 0 !important;
        color: var(--wine) !important;
        font-size: .72rem !important;
        letter-spacing: .2em;
        text-transform: uppercase;
      }
      .avail-table tbody tr:not(.avail-region-row) td {
        padding: .25rem 0 !important;
        display: grid;
        grid-template-columns: minmax(82px, 34%) 1fr;
        gap: .75rem;
        align-items: start;
        font-size: .76rem !important;
      }
      .avail-table tbody tr:not(.avail-region-row) td::before {
        font-size: .55rem;
        letter-spacing: .16em;
        text-transform: uppercase;
        color: rgba(232,244,224,.55);
      }
      .avail-table tbody tr:not(.avail-region-row) td:nth-child(1)::before { content: "Wine"; }
      .avail-table tbody tr:not(.avail-region-row) td:nth-child(2)::before { content: "Appellation"; }
      .avail-table tbody tr:not(.avail-region-row) td:nth-child(3)::before { content: "Vintage"; }
      .avail-table tbody tr:not(.avail-region-row) td:nth-child(4)::before { content: "Format"; }
      .avail-table tbody tr:not(.avail-region-row) td:nth-child(5)::before { content: "Status"; }
      .avail-table tbody tr:not(.avail-region-row) td:nth-child(6)::before { content: "Guide Price"; }
      .avail-table td.avail-price {
        font-size: .92rem !important;
        white-space: normal;
      }
      .avail-badge {
        white-space: normal;
        line-height: 1.4;
      }
    }

    @media (max-width: 360px) {
      .hero-title { font-size: clamp(2.1rem, 14vw, 3.2rem) !important; }
      .section-h2,
      .about-header h2,
      .contact-left h2,
      .avail-head h2 {
        font-size: clamp(2.35rem, 15vw, 3.1rem) !important;
      }
      .section-contact {
        padding-left: .8rem !important;
        padding-right: .8rem !important;
      }
      .contact-right {
        padding: 1rem .85rem !important;
      }
      .stat-value { font-size: 1.25rem; }
      .contact-right { padding: 1rem .85rem !important; }
      .avail-table tbody tr:not(.avail-region-row) td {
        grid-template-columns: 1fr;
        gap: .2rem;
      }
      .avail-table tbody tr:not(.avail-region-row) td::before {
        margin-bottom: .08rem;
      }
    }
