
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }
    body {
      font-family: 'DM Sans', sans-serif;
      background: #f7f6f3;
      color: #1a0f3c;
      overflow-x: hidden;
      -webkit-font-smoothing: antialiased;
    }

    /* ══════════════════════════════════════════
       TOKENS — exact from index.html
       ══════════════════════════════════════════ */
    :root {
      --navy: #1a0f3c;
      --pink: #e63975;
      --teal: #17474a;
      --cream: #f7f6f3;
      --muted: #5a5080;
      --border: rgba(26,15,60,0.08);
      --border-solid: #e5e7eb;
      --radius-lg: 24px;
      --radius-md: 16px;
      --radius-sm: 10px;
    }

    /* ══════════════════════════════════════════
       SITE NAV — exact from index.html
       ══════════════════════════════════════════ */
    .site-nav {
      position: fixed; top: 0; left: 0; right: 0; z-index: 500;
      display: flex; align-items: center; justify-content: space-between;
      padding: 0 48px; height: 72px;
      background: var(--navy);
      border-bottom: 1px solid rgba(255,255,255,.08);
      transition: box-shadow .3s;
    }

    .nav-menu {
      display: flex; align-items: center; gap: 2px;
      list-style: none; padding: 0; margin: 0; flex: 1; justify-content: center;
    }
    .nav-item { position: relative; }
    .nav-trigger {
      display: inline-flex; align-items: center; gap: 5px;
      padding: 8px 16px; font-size: .88rem; font-weight: 500;
      color: rgba(255,255,255,.75); text-decoration: none;
      border-radius: 8px; cursor: pointer;
      transition: background .18s, color .18s;
      white-space: nowrap; background: none; border: none;
      font-family: 'DM Sans', sans-serif; line-height: 1;
    }
    .nav-trigger:hover, .nav-item:hover > .nav-trigger { background: rgba(255,255,255,.09); color: #fff; }
    .nav-trigger.active { color: var(--pink); font-weight: 600; }
    .nav-trigger .chev { font-size: .57rem; opacity: .5; transition: transform .2s; }
    .nav-item:hover > .nav-trigger .chev { transform: rotate(180deg); opacity: .9; }
    .nav-right { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
    .btn-ghost-nav {
      text-decoration: none; color: #fff; font-size: .875rem; font-weight: 500;
      padding: 10px 24px; border-radius: 50px;
      border: 1.5px solid rgba(255,255,255,.22); transition: all .2s;
    }
    .btn-ghost-nav:hover { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.5); }
    .btn-pill-nav {
      text-decoration: none; color: var(--navy); font-size: .875rem; font-weight: 700;
      padding: 11px 26px; border-radius: 50px; background: #fff;
      transition: all .25s; box-shadow: 0 4px 14px rgba(0,0,0,.2);
    }
    .btn-pill-nav:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,.3); }
    /* Dropdown */
    .nav-dropdown {
      position: absolute; top: calc(100% + 6px); left: 0;
      background: #fff; border: 1px solid #e5e7eb; border-radius: 16px;
      padding: 10px; box-shadow: 0 24px 64px rgba(0,0,0,.14);
      opacity: 0; visibility: hidden; pointer-events: none;
      transform: translateY(8px);
      transition: opacity .2s, transform .2s, visibility .2s;
      transition-delay: 0.12s;
      z-index: 600; min-width: 220px;
    }

    .nav-dropdown::before {
      content: "";
      position: absolute;
      top: -12px;
      left: 0;
      right: 0;
      height: 12px;
      background: transparent;
    }

    .nav-item:hover > .nav-dropdown { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); transition-delay: 0s; }
    .nav-dropdown.wide { min-width: 720px; padding: 22px 18px; display: grid; grid-template-columns: repeat(3,1fr); gap: 4px; }
    .nav-dropdown.wide2 { min-width: 480px; padding: 18px 14px; display: grid; grid-template-columns: 1fr 1fr; gap: 4px; }
    .ndp-item { display: flex; align-items: flex-start; gap: 10px; padding: 10px 12px; border-radius: 10px; text-decoration: none; transition: background .15s; }
    .ndp-item:hover { background: #f0fdf4; }
    .ndp-icon { width: 32px; height: 32px; border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: .9rem; flex-shrink: 0; }
    .ndp-name { font-size: .84rem; font-weight: 700; color: #0d1a0f; margin-bottom: 1px; }
    .ndp-desc { font-size: .73rem; color: #6b7280; line-height: 1.35; }
    .ndp-simple a { display: block; padding: 9px 14px; font-size: .84rem; font-weight: 500; color: #374151; text-decoration: none; border-radius: 8px; transition: all .15s; }
    .ndp-simple a:hover { background: #f0fdf4; color: #16a34a; font-weight: 600; }
    .ndp-label { font-size: .62rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: #9ca3af; padding: 4px 14px 8px; display: block; }
    .nav-hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; padding: 8px; background: none; border: none; }
    .nav-hamburger span { display: block; width: 22px; height: 2px; background: #fff; border-radius: 2px; }
    
    @media (max-width: 900px) { .site-nav { padding: 0 20px; height: 64px; } .nav-menu { display: none; } .nav-hamburger { display: flex; } }

    /* ══════════════════════════════════════════
       REVEAL — exact from index.html line 1089
       ══════════════════════════════════════════ */
    .reveal { opacity: 0; transform: translateY(28px); transition: opacity .55s cubic-bezier(.22,1,.36,1), transform .55s cubic-bezier(.22,1,.36,1); }
    .reveal.in { opacity: 1; transform: none; }

    /* ══════════════════════════════════════════
       HERO — navy, canvas animation, split layout
       ══════════════════════════════════════════ */
    .booking-hero {
      min-height: 100vh;
      padding-top: 72px;
      background: var(--navy);
      position: relative; overflow: hidden;
      display: flex; align-items: center;
    }
    #hero-canvas {
      position: absolute; inset: 0;
      width: 100%; height: 100%;
      display: block; z-index: 1; pointer-events: none;
    }
    .hero-radial {
      position: absolute; inset: 0; z-index: 2;
      background: radial-gradient(ellipse 70% 60% at 30% 50%, rgba(230,57,117,0.10) 0%, transparent 65%);
    }
    .hero-layout {
      position: relative; z-index: 10;
      max-width: 1700px; margin: 0 auto; padding: 80px 40px;
      display: grid; grid-template-columns: 1fr 1fr;
      gap: 80px; align-items: center; width: 100%;
    }

    /* Left — copy */
    .hero-eyebrow {
      display: inline-flex; align-items: center; gap: 8px;
      background: rgba(230,57,117,0.12); border: 1px solid rgba(230,57,117,0.25);
      color: #f8a4c0; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.12em;
      text-transform: uppercase; padding: 7px 16px; border-radius: 50px; margin-bottom: 28px;
    }
    .hero-eyebrow-dot {
      width: 6px; height: 6px; border-radius: 50%; background: #f8a4c0;
      animation: pulse-dot 2s ease-in-out infinite;
    }
    @keyframes pulse-dot { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.5;transform:scale(1.4)} }

    /* H1 — from index.html .h2 (the bolded override, DM Sans 800) */
    .hero-h1 {
      font-family: 'DM Sans', sans-serif;
      font-size: clamp(2.5rem, 5vw, 4.2rem);
      font-weight: 800; line-height: 1.05; letter-spacing: -0.03em;
      color: #fff; margin-bottom: 24px;
    }
    .hero-h1 em { font-weight: 800; font-style: normal; color: var(--pink); }

    /* Sub — from index.html .body-light */
    .hero-sub {
      font-size: 1.2rem; font-weight: 500;
      color: rgba(255,255,255,0.78); line-height: 1.6;
      max-width: 520px; margin-bottom: 48px;
    }

    /* What to expect list — matches index.html brand-feature style */
    .expect-list { display: flex; flex-direction: column; gap: 16px; margin-bottom: 48px; }
    .expect-item { display: flex; align-items: flex-start; gap: 16px; }
    .expect-icon {
      width: 48px; height: 48px; border-radius: 14px; flex-shrink: 0;
      display: flex; align-items: center; justify-content: center; font-size: 1.2rem;
      background: rgba(230,57,117,0.12);
    }
    .expect-text h4 {
      font-family: 'DM Sans', sans-serif; font-size: 1.05rem; font-weight: 700;
      color: #fff; margin-bottom: 4px;
    }
    .expect-text p { font-size: .9rem; color: rgba(255,255,255,0.6); line-height: 1.6; }

    /* Trust badges row */
    .trust-row {
      display: flex; align-items: center; gap: 24px;
      padding-top: 32px; border-top: 1px solid rgba(255,255,255,0.1);
      flex-wrap: wrap;
    }
    .trust-item { display: flex; align-items: center; gap: 8px; }
    .trust-num {
      font-family: 'DM Sans', sans-serif; font-size: 1.4rem; font-weight: 900;
      color: #fff; letter-spacing: -0.02em;
    }
    .trust-num span { color: #f8a4c0; }
    .trust-lbl { font-size: .75rem; color: rgba(255,255,255,0.5); line-height: 1.3; font-weight: 500; }
    .trust-divider { width: 1px; height: 32px; background: rgba(255,255,255,0.12); }

    /* Right — Calendly embed card */
    .calendly-card {
      background: #fff;
      border-radius: 28px;
      overflow: hidden;
      box-shadow: 0 40px 100px rgba(0,0,0,0.35), 0 8px 32px rgba(230,57,117,0.12);
      border: 1px solid rgba(255,255,255,0.1);
      position: relative;
    }
    .calendly-card-header {
      background: var(--navy);
      padding: 24px 28px 20px;
      border-bottom: 1px solid rgba(255,255,255,0.08);
      display: flex; align-items: center; gap: 14px;
    }
    .cc-icon {
      width: 44px; height: 44px; border-radius: 12px;
      background: rgba(230,57,117,0.15);
      display: flex; align-items: center; justify-content: center;
      font-size: 1.2rem; flex-shrink: 0;
    }
    .cc-title { font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,0.45); margin-bottom: 3px; }
    .cc-name { font-size: 1.05rem; font-weight: 800; color: #fff; letter-spacing: -0.01em; }
    .cc-meta { display: flex; align-items: center; gap: 16px; margin-top: 4px; }
    .cc-badge {
      display: inline-flex; align-items: center; gap: 5px;
      font-size: .7rem; font-weight: 700; color: #00f56e;
      background: rgba(230,57,117,0.12); padding: 3px 15px; border-radius: 20px;
    }
    .calendly-embed {
      width: 100%; height: 680px; border: none; display: block;
      background: #fff;
    }

    /* ══════════════════════════════════════════
       WHAT HAPPENS SECTION — pillar-card style
       ══════════════════════════════════════════ */
    .section-white { background: #fff; padding: 140px 0; }
    .section-cream { background: var(--cream); padding: 140px 0; }
    .section-navy { background: var(--navy); padding: 140px 0; }
    .container { max-width: 1700px; margin: 0 auto; padding: 0 40px; }

    /* Eyebrow — index.html line 478 */
    .eyebrow {
      font-size: 0.9rem; font-weight: 700; letter-spacing: 0.15em;
      text-transform: uppercase; color: var(--pink); margin-bottom: 24px;
    }
    .eyebrow-teal { color: var(--teal); }
    .eyebrow-light { color: #f8a4c0; }

    /* H2 — index.html line 487 */
    .h2 {
      font-family: 'DM Sans', sans-serif;
      font-size: clamp(2.5rem, 5vw, 4.2rem);
      font-weight: 800; line-height: 1.05; letter-spacing: -0.03em;
      color: var(--navy); margin-bottom: 24px;
    }
    .h2 em { font-weight: 800; font-style: normal; color: var(--teal); }
    .h2.light { color: #fff; }
    .h2.light em { color: #f8a4c0; }

    /* Body — index.html line 511 */
    .body-lg {
      font-size: 1.2rem; color: var(--muted);
      line-height: 1.6; max-width: 600px; font-weight: 500;
    }
    .body-light { color: rgba(255,255,255,0.78); }

    .section-header { margin-bottom: 80px; }
    .text-center { text-align: center; }

    /* Steps grid — index.html .steps-grid */
    .steps-grid {
      display: grid; grid-template-columns: repeat(4,1fr);
      gap: 40px; margin-top: 80px; position: relative;
    }
    .steps-grid::before {
      content: ''; position: absolute; top: 24px; left: 0; right: 0;
      height: 2px; background: rgba(26,15,60,0.08); z-index: 1;
    }
    .step { position: relative; z-index: 2; }
    .step-num {
      width: 48px; height: 48px; background: white;
      border: 3px solid var(--pink); border-radius: 50px;
      display: flex; align-items: center; justify-content: center;
      font-size: 1rem; font-weight: 800; color: var(--pink);
      margin-bottom: 24px; transition: all 0.3s;
    }
    .step:hover .step-num { background: var(--pink); color: white; transform: scale(1.1); }
    .step h4 { font-family: 'DM Sans', sans-serif; font-size: 1.3rem; font-weight: 700; color: var(--navy); margin-bottom: 10px; }
    .step p { font-size: 1rem; color: var(--muted); line-height: 1.6; }

 { font-family: 'DM Sans', sans-serif; font-size: 1.4rem; font-weight: 700; color: var(--navy); margin-bottom: 12px; }
    .pillar-card p { font-size: 1rem; color: var(--muted); line-height: 1.6; }

    /* ══════════════════════════════════════════
       BOTTOM CTA SECTION — navy, pink glow
       ══════════════════════════════════════════ */
    .cta-bottom {
      background: var(--navy); padding: 140px 0;
      position: relative; overflow: hidden;
    }
    .cta-glow {
      position: absolute; inset: 0;
      background: radial-gradient(ellipse 60% 70% at 50% 50%, rgba(230,57,117,0.1) 0%, transparent 65%);
    }
    .cta-inner { position: relative; z-index: 2; text-align: center; max-width: 780px; margin: 0 auto; padding: 0 40px; }
    .cta-h2 {
      font-family: 'DM Sans', sans-serif; font-size: clamp(2.5rem, 5vw, 4.2rem);
      font-weight: 800; line-height: 1.05; letter-spacing: -0.03em;
      color: #fff; margin-bottom: 24px;
    }
    .cta-h2 em { font-weight: 800; font-style: normal; color: #f8a4c0; }
    .cta-body { font-size: 1.2rem; font-weight: 500; color: rgba(255,255,255,0.78); line-height: 1.6; margin-bottom: 40px; }
    .cta-btns { display: flex; align-items: center; justify-content: center; gap: 14px; flex-wrap: wrap; }
    /* Primary btn — from index.html .btn-cta-primary */
    .btn-primary {
      text-decoration: none; color: #fff; font-size: 0.95rem; font-weight: 700;
      padding: 16px 40px; border-radius: 50px; background: var(--pink);
      box-shadow: 0 8px 32px rgba(230,57,117,0.4); transition: all 0.25s;
    }
    .btn-primary:hover { background: #c8255e; transform: translateY(-2px); box-shadow: 0 12px 40px rgba(230,57,117,0.35); }
    /* Outline btn — from index.html .btn-cta-outline */
    .btn-outline {
      text-decoration: none; color: rgba(255,255,255,0.85); font-size: 0.95rem; font-weight: 500;
      padding: 15px 36px; border-radius: 50px;
      border: 1.5px solid rgba(255,255,255,0.22); transition: all 0.25s;
    }
    .btn-outline:hover { border-color: rgba(255,255,255,0.6); color: #fff; }
    .trust-brands { margin-top: 32px; font-size: .8rem; color: rgba(255,255,255,0.3); letter-spacing: .05em; }

    /* ══════════════════════════════════════════
       FOOTER — from index.html sf- classes
       ══════════════════════════════════════════ */
    .site-footer { background: #0d1a0f; padding: 80px 0 0; }
    .sf-top {
      display: grid; grid-template-columns: 280px 1fr; gap: 80px;
      padding-bottom: 60px; border-bottom: 1px solid rgba(255,255,255,.08);
    }

    .sf-brand-desc { font-size: .88rem; line-height: 1.7; color: rgba(255,255,255,.5); }
    .sf-socials { display: flex; gap: 10px; margin-top: 20px; }
    .sf-social {
      width: 34px; height: 34px; border-radius: 50%;
      border: 1px solid rgba(255,255,255,.15);
      display: flex; align-items: center; justify-content: center;
      color: rgba(255,255,255,.5); text-decoration: none;
      font-size: .72rem; font-weight: 700; text-transform: uppercase; transition: all .2s;
    }
    .sf-social:hover { border-color: var(--pink); color: var(--pink); }
    .sf-cols { display: grid; grid-template-columns: repeat(5,1fr); gap: 32px; }
    .sf-col h5 { font-size: .78rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #fff; margin-bottom: 16px; }
    .sf-col ul { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 10px; }
    .sf-col ul a { font-size: .85rem; color: rgba(255,255,255,.5); text-decoration: none; transition: color .2s; }
    .sf-col ul a:hover { color: #fff; }
    .sf-bottom {
      display: flex; justify-content: space-between; align-items: center;
      padding: 20px 0; font-size: .78rem; color: rgba(255,255,255,.3);
    }
    .sf-bottom a { color: rgba(255,255,255,.35); text-decoration: none; }
    .sf-bottom a:hover { color: #fff; }

    /* ══════════════════════════════════════════
       RESPONSIVE
       ══════════════════════════════════════════ */
    @media (max-width: 1100px) {
      .nav-dropdown.wide { grid-template-columns: 1fr 1fr; min-width: 460px; }

      .hero-layout { grid-template-columns: 1fr; gap: 60px; padding: 60px 40px; }
      .hero-sub { max-width: 100%; }
      .trust-row { flex-wrap: wrap; }
      .steps-grid { grid-template-columns: 1fr 1fr; }
      .steps-grid::before { display: none; }
      .sf-top { grid-template-columns: 1fr; }
      .sf-cols { grid-template-columns: repeat(3,1fr); }
    }
    @media (max-width: 768px) {
      .stats-inner { grid-template-columns: 1fr 1fr; }
      .stat-item { border-right: none; border-bottom: 1px solid rgba(255,255,255,.1); padding: 20px; }
      .stat-item:last-child { border-bottom: none; }
      .sf-cols { grid-template-columns: repeat(2,1fr); }
      .section-white, .section-cream, .section-navy, .cta-bottom, .stats-strip { padding: 80px 0; }
      .h2 { font-size: clamp(2rem, 7vw, 3rem); }
      .hero-h1 { font-size: clamp(2rem, 7vw, 3rem); }
      .time-slots-grid { grid-template-columns: repeat(2,1fr); }
    }

    /* ══════════════════════════════════════════
       BOOKING FORM — date picker, time slots, fields
       ══════════════════════════════════════════ */
    .booking-form-body { padding: 28px 28px 32px; }

    .bform-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 14px; }
    .bform-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 14px; }
    .bform-field:last-of-type { margin-bottom: 0; }

    .bform-label {
      font-size: .72rem; font-weight: 700; letter-spacing: .09em;
      text-transform: uppercase; color: var(--navy); opacity: .5;
    }
    .bform-input {
      width: 100%; padding: 12px 14px; border-radius: 10px;
      border: 1.5px solid #e5e7eb; background: #fafafa;
      font-family: 'DM Sans', sans-serif; font-size: .95rem; color: var(--navy);
      transition: border-color .2s, box-shadow .2s; outline: none; -webkit-appearance: none;
    }
    .bform-input:focus { border-color: var(--pink); box-shadow: 0 0 0 3px rgba(230,57,117,.1); background: #fff; }
    .bform-input::placeholder { color: rgba(26,15,60,.3); }

    /* Flatpickr overrides */
    .flatpickr-day.selected,
    .flatpickr-day.selected:hover { background: var(--pink); border-color: var(--pink); }
    .flatpickr-day:hover { border-color: var(--pink); }

    /* Time slots */
    .bform-slots-label {
      display: block; font-size: .72rem; font-weight: 700; letter-spacing: .09em;
      text-transform: uppercase; color: var(--navy); opacity: .5;
      margin-bottom: 10px; margin-top: 2px;
    }
    .time-slots-grid {
      display: grid; grid-template-columns: repeat(3, 1fr);
      gap: 8px; margin-bottom: 18px;
    }
    .time-slot {
      padding: 10px 6px; border-radius: 10px;
      border: 1.5px solid #e5e7eb; background: #fafafa;
      text-align: center; font-family: 'DM Sans', sans-serif;
      font-size: .82rem; font-weight: 600; color: var(--navy);
      cursor: pointer; transition: all .18s; user-select: none; line-height: 1.3;
    }
    .time-slot:hover { border-color: var(--pink); color: var(--pink); background: rgba(230,57,117,.04); }
    .time-slot.selected {
      border-color: var(--pink); background: var(--pink); color: #fff;
      box-shadow: 0 4px 12px rgba(230,57,117,.28);
    }

    /* Submit button */
    .bform-submit {
      width: 100%; padding: 15px 24px; border-radius: 50px; border: none;
      cursor: pointer; background: var(--pink); color: #fff;
      font-family: 'DM Sans', sans-serif; font-size: 1rem; font-weight: 700;
      letter-spacing: .01em; box-shadow: 0 8px 28px rgba(230,57,117,.35);
      transition: all .25s; margin-top: 4px;
    }
    .bform-submit:hover { background: #c8255e; transform: translateY(-2px); box-shadow: 0 12px 36px rgba(230,57,117,.4); }
    .bform-submit:disabled { opacity: .6; transform: none; cursor: not-allowed; }

    /* Inline error */
    .bform-error {
      display: none; background: #fff1f4; border: 1px solid #fecdd3;
      border-radius: 10px; padding: 10px 14px; margin-top: 10px;
      font-size: .84rem; color: #9f1239; font-weight: 500; text-align: center;
    }
    .bform-error.show { display: block; }

    /* Success state */
    .bform-success {
      display: none; text-align: center; padding: 48px 28px 52px;
      flex-direction: column; align-items: center; gap: 8px;
    }
    .bform-success.show { display: flex; }
    .bform-success-icon {
      width: 68px; height: 68px; border-radius: 50%;
      background: rgba(230,57,117,.1);
      display: flex; align-items: center; justify-content: center;
      font-size: 1.9rem; margin-bottom: 12px;
    }
    .bform-success h3 {
      font-family: 'DM Sans', sans-serif; font-size: 1.35rem; font-weight: 800;
      color: var(--navy); margin-bottom: 8px;
    }
    .bform-success p { font-size: .95rem; color: var(--muted); line-height: 1.65; max-width: 290px; }
    @media (max-width: 600px) {
      .container { padding: 0 20px; }
      .stats-inner { padding: 0 20px; }
      .steps-grid { grid-template-columns: 1fr; }
      .hero-layout { padding: 40px 20px; }
      .sf-cols { grid-template-columns: 1fr 1fr; }
      .sf-bottom { flex-direction: column; gap: 8px; text-align: center; }
    }
  
        /* ── BOOKING: Responsive section padding ── */
        @media (max-width: 1024px) {
          .hero-layout                                            { padding: 64px 32px; }
          .section-white, .section-cream, .section-navy          { padding: 100px 0; }
          .cta-bottom                                             { padding: 100px 0; }
          .stats-strip                                            { padding: 56px 0; }
          .container                                              { padding: 0 32px; }
        }
        @media (max-width: 768px) {
          .hero-layout                                            { padding: 48px 20px; }
          .section-white, .section-cream,
          .section-navy, .cta-bottom, .stats-strip               { padding: 72px 0; }
          .container                                              { padding: 0 20px; }
        }
        @media (max-width: 480px) {
          .hero-layout                                            { padding: 40px 16px; }
          .section-white, .section-cream,
          .section-navy, .cta-bottom                             { padding: 56px 0; }
          .stats-strip                                            { padding: 36px 0; }
          .container                                              { padding: 0 16px; }
        }
    
        /* ── BOOKING HERO — responsive (matches index.html page-hero scale) ── */
        @media (max-width: 1024px) {
          .booking-hero { padding-top: 80px; min-height: 90vh; }
        }
        @media (max-width: 768px) {
          .booking-hero { padding-top: 72px; min-height: 80vh; }
          .bform-wrap   { padding: 0 20px; }
        }
        @media (max-width: 480px) {
          .booking-hero { padding-top: 72px; min-height: auto; padding-bottom: 48px; }
          .bform-wrap   { padding: 0 16px; }
        }
        