

    /* ── LOVE EVENT page styles ── */

    .le-hero { position: relative; min-height: 100vh; display: flex; align-items: center; background: var(--onyx); overflow: hidden; }

    .le-hero__video { position: absolute; inset: 0; pointer-events: none; z-index: 0; }

    .le-hero__video iframe { position: absolute; top: 50%; left: 50%; width: 177.78vh; min-width: 100%; min-height: 100%; transform: translate(-50%,-50%); border: 0; }

    .le-hero__overlay { position: absolute; inset: 0; background:var(--onyx); z-index: 1; }

    .le-hero__content { position: relative; z-index: 2; padding: clamp(8.75rem,16vh,12.5rem) clamp(1.5rem,6vw,6rem) clamp(5rem,10vh,7.5rem); max-width: 51.25rem; }



    .program-badge { display: inline-flex; align-items: center; gap: 0.625rem; background: var(--gold); color: var(--onyx); font: 800 0.625rem/1 var(--font-b); letter-spacing: 0.1875rem; text-transform: uppercase; padding: 0.5rem 1.125rem; border-radius:0; margin-bottom: 2rem; }

    .program-badge::before { content: ''; width: 0.5rem; height: 0.5rem; border-radius:0; background: var(--onyx); animation: dot-pulse 1.4s infinite; }

    @keyframes dot-pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.35;transform:scale(1.4)} }



    .le-hero__title { font: 400 clamp(3.5rem,9vw,7.5rem)/0.95 var(--font-d); letter-spacing: 0.1875rem; color: #fff; margin-bottom: 0.5rem; }

    .le-hero__title span { color: var(--gold); }

    .le-hero__subtitle { font: 600 0.875rem/1 var(--font-b); letter-spacing: 0.1875rem; text-transform: uppercase; color: var(--gold); margin-bottom: 1.75rem; }

    .le-hero__desc { font: 400 1.0625rem/1.75 var(--font-b); color: rgba(255,255,255,0.8); max-width: 36.25rem; margin-bottom: 2.75rem; }

    .le-hero__scroll { position: absolute; bottom: 2.5rem; left: clamp(1.5rem,6vw,6rem); z-index: 2; display: flex; align-items: center; gap: 0.875rem; font: 600 0.625rem/1 var(--font-b); letter-spacing: 0.1875rem; text-transform: uppercase; color: rgba(255,255,255,0.45); }

    .le-hero__scroll-line { width: 2.5rem; height: 0.0625rem; background: rgba(255,255,255,0.3); }



    /* Venue strip */

    .venue-strip { background: rgba(0,0,0,0.6); backdrop-filter: blur(0.75rem); border-top: 0.0625rem solid rgba(255,255,255,0.08); padding: 1.25rem 0; }

    .venue-strip__inner { display: flex; align-items: center; gap: 0; overflow: hidden; }

    .venue-strip__label { flex-shrink: 0; font: 700 0.625rem/1 var(--font-b); letter-spacing: 0.125rem; text-transform: uppercase; color: var(--gold); padding: 0 clamp(1.5rem,4vw,3.75rem); white-space: nowrap; border-right: 0.0625rem solid rgba(255,255,255,0.12); margin-right: 2rem; }

    .venue-tags-strip { display: flex; flex-wrap: wrap; gap: 0.625rem; padding: 0 clamp(1.5rem,4vw,3.75rem); }

    .venue-tag { font: 600 0.6875rem/1 var(--font-b); letter-spacing: 0.0625rem; text-transform: uppercase; padding: 0.375rem 1rem; border-radius:0; border: 0.0625rem solid rgba(255,255,255,0.25); color: rgba(255,255,255,0.75); }



    /* What is section */

    .what-section { background: var(--onyx); color: #fff; padding: clamp(5rem,10vw,8.125rem) 0; }

    .what-inner { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(3rem,6vw,6.25rem); align-items: center; }

    .what-inner__img { border-radius:0; overflow: hidden; aspect-ratio: 4/3; }

    .what-inner__img img { width: 100%; height: 100%; object-fit: cover; display: block; }

    .what-inner__copy { }

    .what-inner__copy h2 { font: 400 clamp(2.25rem,4vw,3.375rem)/1.05 var(--font-d); letter-spacing: 0.125rem; margin-bottom: 1.5rem; }

    .what-inner__copy h2 span { color: var(--gold); }

    .what-inner__copy p { font: 400 1rem/1.8 var(--font-b); color: rgba(255,255,255,0.72); margin-bottom: 1.25rem; }



    /* Benefits */

    .benefits-section { background: #0d0b07; padding: clamp(5rem,10vw,8.125rem) 0; }

    .benefits-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; margin-top: 3.5rem; }

    .benefit-card { padding: 2.25rem 2rem; border: 0.0625rem solid rgba(255,255,255,0.08); border-radius:0; background: rgba(255,255,255,0.03); transition: border-color 0.3s, background 0.3s; }

    .benefit-card:hover { border-color: var(--gold); background: rgba(201,160,53,0.05); }

    .benefit-card__icon { font-size: 1.75rem; margin-bottom: 1rem; }

    .benefit-card__title { font: 700 0.8125rem/1.2 var(--font-b); letter-spacing: 0.09375rem; text-transform: uppercase; color: var(--gold); margin-bottom: 0.625rem; }

    .benefit-card__text { font: 400 0.875rem/1.7 var(--font-b); color: rgba(255,255,255,0.62); }



    /* Quote strip */

    .quote-strip { background: var(--gold); padding: clamp(3.75rem,8vw,6.25rem) 0; text-align: center; }

    .quote-strip blockquote { font: 400 clamp(1.5rem,3.5vw,2.75rem)/1.2 var(--font-d); letter-spacing: 0.125rem; color: var(--onyx); max-width: 51.25rem; margin: 0 auto 1.25rem; }

    .quote-strip cite { font: 700 0.6875rem/1 var(--font-b); letter-spacing: 0.125rem; text-transform: uppercase; color: rgba(10,8,3,0.6); }



    /* CTA section */

    .le-cta { background: var(--onyx); padding: clamp(5rem,10vw,8.125rem) 0; text-align: center; position: relative; overflow: hidden; }

    .le-cta::before { content: ''; position: absolute; inset: 0; background:var(--onyx); }

    .le-cta__inner { position: relative; z-index: 1; }

    .le-cta__title { font: 400 clamp(2.25rem,5vw,4.25rem)/1.05 var(--font-d); letter-spacing: 0.125rem; color: #fff; margin-bottom: 1rem; }

    .le-cta__title span { color: var(--gold); }

    .le-cta__sub { font: 400 1rem/1.7 var(--font-b); color: rgba(255,255,255,0.6); max-width: 33.75rem; margin: 0 auto 2.5rem; }

    .le-cta__contact { margin-top: 2rem; font: 400 0.875rem/1.6 var(--font-b); color: rgba(255,255,255,0.45); }

    .le-cta__contact a { color: var(--gold); text-decoration: none; }

    .le-cta__contact a:hover { text-decoration: underline; }



    /* Limited notice */

    .limited-notice { display: inline-flex; align-items: center; gap: 0.625rem; border: 0.0625rem solid rgba(255,255,255,0.15); border-radius:0; padding: 0.625rem 1.375rem; margin-bottom: 3rem; font: 600 0.6875rem/1 var(--font-b); letter-spacing: 0.125rem; text-transform: uppercase; color: rgba(255,255,255,0.55); }

    .limited-notice::before { content: ''; width: 0.4375rem; height: 0.4375rem; border-radius:0; background: var(--gold); animation: dot-pulse 1.4s infinite; }



    /* Back link — fixed at top of hero, separate from content */

    .back-link { position: absolute; top: calc(5rem + 1.5rem); left: clamp(1.5rem,6vw,6rem); z-index: 3; display: inline-flex; align-items: center; gap: 0.5rem; font: 600 0.625rem/1 var(--font-b); letter-spacing: 0.125rem; text-transform: uppercase; color: rgba(255,255,255,0.5); text-decoration: none; transition: color 0.2s; }

    .back-link:hover { color: var(--gold); }

    .back-link svg { width: 0.875rem; height: 0.875rem; }



    @media(max-width:51.25rem){

      .what-inner { grid-template-columns: 1fr; }

      .benefits-grid { grid-template-columns: 1fr; }

      .what-inner__img { aspect-ratio: 3/2; }

    }

  