/* ============================================================
   Age gate — 21+
   Markup ships in the page so crawlers still see the content
   underneath. A pre-paint check in <head> adds .lh-verified to
   <html>, so a returning visitor never sees a flash of the gate.
   ============================================================ */

.lh-gate{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;
  padding:20px;background:rgba(6,4,14,.86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);}
html.lh-verified .lh-gate{display:none;}
html:not(.lh-verified) body{overflow:hidden;}

.lh-gate__card{position:relative;width:min(520px,100%);border-radius:26px;overflow:hidden;text-align:center;
  padding:44px 34px 34px;color:#fff;border:1px solid rgba(255,255,255,.16);
  background:radial-gradient(120% 100% at 50% -20%,#2A1B52 0%,#150C28 46%,#0A0714 100%);
  box-shadow:0 40px 120px rgba(0,0,0,.7);
  animation:lh-gate-in .45s cubic-bezier(.2,.8,.2,1) both;}
@keyframes lh-gate-in{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}

/* the same aurora as the hero, held still so it never distracts */
.lh-gate__card::before{content:"";position:absolute;inset:-40%;z-index:0;filter:blur(48px);opacity:.55;
  background:
    conic-gradient(from 200deg at 28% 26%, transparent 0deg, #FF8A3D 44deg, transparent 124deg),
    conic-gradient(from 20deg  at 74% 22%, transparent 0deg, #5BC8F0 50deg, transparent 130deg),
    conic-gradient(from 300deg at 60% 84%, transparent 0deg, #7B3DF5 46deg, transparent 124deg);}
.lh-gate__inner{position:relative;z-index:1;}

.lh-gate__logo{line-height:0;}
.lh-gate__logo img{height:46px;width:auto;display:block;filter:saturate(1.06) brightness(1.12);}
@media(max-width:520px){.lh-gate__logo img{height:36px}}
.lh-gate__eyebrow{font-family:"Bebas Neue","Montserrat",Impact,sans-serif;font-size:13px;letter-spacing:.24em;
  text-transform:uppercase;color:#B9AFD4;margin-top:22px;}
.lh-gate__q{font-family:"Bebas Neue","Montserrat",Impact,sans-serif;font-size:clamp(38px,8vw,58px);line-height:.92;
  text-transform:uppercase;margin:8px 0 0;color:#fff;text-wrap:balance;}
.lh-gate__sub{font-size:15px;line-height:1.6;color:#CFC8E2;margin:14px auto 0;max-width:38ch;}

.lh-gate__actions{display:flex;gap:11px;justify-content:center;flex-wrap:wrap;margin-top:28px;}
.lh-gate__btn{font-family:"Bebas Neue","Montserrat",Impact,sans-serif;font-size:19px;letter-spacing:.09em;
  padding:15px 34px;border-radius:999px;border:0;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease;}
.lh-gate__btn:hover{transform:translateY(-3px);}
.lh-gate__btn:focus-visible{outline:3px solid #fff;outline-offset:3px;}
.lh-gate__yes{color:#fff;background:linear-gradient(100deg,#7B3DF5,#FF4D9D);box-shadow:0 12px 32px rgba(255,77,157,.4);}
.lh-gate__no{color:#fff;background:transparent;border:2px solid rgba(255,255,255,.42);}
.lh-gate__no:hover{background:rgba(255,255,255,.1);}

.lh-gate__legal{font-size:11.5px;line-height:1.7;color:#8D85A8;margin-top:26px;
  padding-top:18px;border-top:1px solid rgba(255,255,255,.1);}
.lh-gate__legal strong{color:#B9AFD4;font-weight:600;}

/* the declined state reuses the same card */
.lh-gate__denied{display:none;}
.lh-gate.is-denied .lh-gate__ask{display:none;}
.lh-gate.is-denied .lh-gate__denied{display:block;}
.lh-gate__back{margin-top:22px;background:none;border:0;color:#B9AFD4;font-size:13.5px;cursor:pointer;
  text-decoration:underline;text-underline-offset:3px;font-family:inherit;}
.lh-gate__back:hover{color:#fff;}

@media (prefers-reduced-motion:reduce){.lh-gate__card{animation:none;}}

/* the middle door — quieter than the two main buttons, but a real target */
.lh-gate__alt{
  display:block;margin:18px auto 0;padding:11px 20px;
  background:none;border:1px solid rgba(255,255,255,.34);border-radius:999px;
  color:rgba(255,255,255,.88);font:inherit;font-size:14px;letter-spacing:.01em;
  cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease;
}
.lh-gate__alt:hover{border-color:#fff;background:rgba(255,255,255,.12);color:#fff;}
.lh-gate__alt:focus-visible{outline:3px solid #fff;outline-offset:3px;}
@media(max-width:480px){.lh-gate__alt{font-size:13px;padding:10px 16px;}}
