/* HMODS membership plan banners (VIP + PLUS). Used on membership.html and the cinema VIP gate. */
.hm-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;direction:rtl}
.hm-plan{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;gap:14px;min-height:430px;padding:clamp(20px,3.4vw,32px);border-radius:24px;color:#fff;font-family:inherit;box-shadow:0 24px 60px rgba(0,0,0,.45)}
.hm-plan__art{position:absolute;inset:0;z-index:-1;pointer-events:none}
.hm-plan__art::before,.hm-plan__art::after{content:"";position:absolute}
.hm-plan::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.13) 48%,transparent 60%);transform:translateX(-130%);animation:hmPlanShine 6.5s ease-in-out infinite}
.hm-plan__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.hm-plan__tag{display:inline-block;font-size:11px;font-weight:900;letter-spacing:.32em;opacity:.8}
.hm-plan__mark{margin:2px 0 0;font-size:clamp(46px,7vw,68px);line-height:1;font-weight:950;letter-spacing:.02em;direction:ltr;text-align:right}
.hm-plan__sub{margin:6px 0 0;font-size:14px;opacity:.85;line-height:1.7}
.hm-plan__emblem{flex:0 0 auto;width:74px;height:74px;display:grid;place-items:center;border-radius:22px}
.hm-plan__emblem svg{width:42px;height:42px}
.hm-plan__price{display:flex;align-items:baseline;gap:8px;direction:ltr;justify-content:flex-end;margin-top:4px}
.hm-plan__price b{font-size:clamp(40px,6vw,54px);font-weight:950;line-height:1}
.hm-plan__price small{font-size:14px;opacity:.8}
.hm-plan__note{margin:-6px 0 0;font-size:13px;opacity:.85;text-align:right}
.hm-plan__save{display:inline-block;margin-inline-start:6px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:900}
.hm-plan__features{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:10px}
.hm-plan__features li{display:flex;align-items:center;gap:10px;font-size:14.5px;line-height:1.5}
.hm-plan__features li svg{flex:0 0 22px;width:22px;height:22px}
.hm-plan__features li.is-off{opacity:.45;text-decoration:line-through}
.hm-plan__trial{margin-top:auto;padding:10px 12px;border-radius:12px;font-size:13px;font-weight:800;text-align:center}
body .hm-plan .hm-plan__cta{appearance:none;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:52px;padding:14px 18px;border:0!important;border-radius:14px!important;font-family:inherit;font-weight:900;font-size:16px;line-height:1.2;cursor:pointer;text-decoration:none;transition:transform .2s ease,filter .2s ease;box-shadow:none}
body .hm-plan .hm-plan__cta:hover{transform:translateY(-2px);filter:brightness(1.06)}
body .hm-plan .hm-plan__cta:focus-visible{outline:3px solid #fff;outline-offset:3px}
body .hm-plan .hm-plan__cta[disabled]{opacity:.6;cursor:wait;transform:none}
.hm-plan__badge{position:absolute;top:18px;left:-46px;transform:rotate(-45deg);padding:6px 52px;font-size:11px;font-weight:950;letter-spacing:.12em}

/* VIP — black and gold */
.hm-plan--vip{background:radial-gradient(120% 80% at 0% 0%,rgba(245,197,66,.28),transparent 55%),radial-gradient(90% 70% at 100% 100%,rgba(184,120,32,.3),transparent 60%),linear-gradient(160deg,#17120a,#0a0806 60%,#120d05);border:1px solid rgba(245,197,66,.45)}
.hm-plan--vip .hm-plan__art::before{width:520px;height:520px;left:-170px;top:-230px;border-radius:50%;border:1px solid rgba(245,197,66,.18);box-shadow:0 0 0 46px rgba(245,197,66,.04),0 0 0 92px rgba(245,197,66,.03)}
.hm-plan--vip .hm-plan__art::after{inset:0;background:repeating-linear-gradient(135deg,rgba(245,197,66,.035) 0 2px,transparent 2px 14px)}
.hm-plan--vip .hm-plan__mark{background:linear-gradient(180deg,#fff6d1 0%,#f5c542 45%,#b8801f 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 6px 18px rgba(245,197,66,.25))}
.hm-plan--vip .hm-plan__tag,.hm-plan--vip .hm-plan__price b{color:#f5c542}
.hm-plan--vip .hm-plan__emblem{background:linear-gradient(145deg,rgba(245,197,66,.25),rgba(245,197,66,.05));border:1px solid rgba(245,197,66,.5);color:#f5c542;animation:hmPlanFloat 5s ease-in-out infinite}
.hm-plan--vip .hm-plan__features svg{color:#f5c542}
.hm-plan--vip .hm-plan__save{background:#f5c542;color:#1a1204}
.hm-plan--vip .hm-plan__trial{background:rgba(245,197,66,.12);border:1px solid rgba(245,197,66,.35);color:#ffe7a3}
body .hm-plan--vip .hm-plan__cta{background:linear-gradient(110deg,#ffe28a,#f5c542 45%,#d9982b)!important;color:#1a1204!important}
.hm-plan--vip .hm-plan__badge{background:#f5c542;color:#1a1204}

/* PLUS — stadium blue and lime */
.hm-plan--plus{background:radial-gradient(110% 80% at 100% 0%,rgba(30,139,255,.38),transparent 55%),radial-gradient(90% 70% at 0% 100%,rgba(184,243,74,.16),transparent 60%),linear-gradient(160deg,#071a3a,#050d1f 60%,#061430);border:1px solid rgba(80,170,255,.45)}
.hm-plan--plus .hm-plan__art::before{width:140%;height:120%;left:-20%;top:-60%;background:conic-gradient(from 200deg at 50% 0%,transparent 0deg,rgba(120,190,255,.12) 8deg,transparent 16deg,transparent 30deg,rgba(120,190,255,.1) 38deg,transparent 46deg,transparent 60deg,rgba(184,243,74,.08) 68deg,transparent 76deg)}
.hm-plan--plus .hm-plan__art::after{left:0;right:0;bottom:0;height:42%;background:linear-gradient(0deg,rgba(184,243,74,.08),transparent),repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px 48px)}
.hm-plan--plus .hm-plan__mark{background:linear-gradient(180deg,#ffffff 0%,#9fd0ff 55%,#1e8bff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 6px 18px rgba(30,139,255,.3))}
.hm-plan--plus .hm-plan__mark i{font-style:normal;color:#b8f34a;-webkit-text-fill-color:#b8f34a}
.hm-plan--plus .hm-plan__tag{color:#9fd0ff}
.hm-plan--plus .hm-plan__price b{color:#b8f34a}
.hm-plan--plus .hm-plan__emblem{background:linear-gradient(145deg,rgba(30,139,255,.3),rgba(30,139,255,.06));border:1px solid rgba(120,190,255,.55);color:#b8f34a;animation:hmPlanFloat 5s ease-in-out -2.5s infinite}
.hm-plan--plus .hm-plan__features svg{color:#b8f34a}
.hm-plan--plus .hm-plan__save{background:#b8f34a;color:#06200a}
.hm-plan--plus .hm-plan__trial{background:rgba(30,139,255,.14);border:1px solid rgba(120,190,255,.35);color:#cfe6ff}
body .hm-plan--plus .hm-plan__cta{background:linear-gradient(110deg,#d4ff7a,#b8f34a 50%,#7fd42a)!important;color:#06200a!important}

.hm-plan.is-current{outline:3px solid #fff;outline-offset:4px}

/* monthly / yearly switch */
.hm-interval{display:inline-flex;gap:4px;padding:5px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14)}
body .hm-interval button{appearance:none;border:0!important;border-radius:999px!important;padding:10px 18px;background:transparent!important;color:#cdd6e6!important;font-family:inherit;font-weight:800;font-size:14px;cursor:pointer;box-shadow:none!important}
body .hm-interval button[aria-pressed="true"]{background:#fff!important;color:#0a1020!important}

@keyframes hmPlanShine{0%,60%{transform:translateX(-130%)}85%,100%{transform:translateX(130%)}}
@keyframes hmPlanFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media (max-width:760px){.hm-plans{grid-template-columns:1fr}.hm-plan{min-height:0}}
@media (prefers-reduced-motion:reduce){.hm-plan::after,.hm-plan__emblem{animation:none!important}}

/* VIP gate modal (cinema) */
.hm-gate{position:fixed;inset:0;z-index:9995;display:grid;place-items:center;padding:16px;background:rgba(3,5,10,.78);backdrop-filter:blur(6px);direction:rtl}
.hm-gate[hidden]{display:none}
.hm-gate__box{position:relative;width:min(460px,100%);max-height:calc(100vh - 32px);overflow:auto;border-radius:24px}
.hm-gate .hm-plan{min-height:0}
body .hm-gate .hm-gate__close{position:absolute;top:12px;left:12px;z-index:3;width:38px;height:38px;padding:0;border-radius:999px!important;border:1px solid rgba(255,255,255,.3)!important;background:rgba(0,0,0,.45)!important;color:#fff!important;font-size:20px;line-height:1;cursor:pointer}
.hm-gate__msg{margin:0;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.08);font-size:14px;line-height:1.8}
.hm-vip-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:10px clamp(12px,3vw,30px) 0;padding:14px 18px;border-radius:16px;direction:rtl;color:#ffe7a3;text-decoration:none;background:linear-gradient(110deg,#17120a,#0a0806);border:1px solid rgba(245,197,66,.45)}
.hm-vip-strip b{color:#f5c542}
.hm-vip-strip span:last-child{padding:8px 14px;border-radius:999px;background:#f5c542;color:#1a1204;font-weight:900;font-size:13px}
.hm-plans--one{grid-template-columns:1fr}
.hm-gate .hm-plan__badge{display:none}
