body.gate-modal-open{overflow:hidden}
.gate-modal{position:fixed;inset:0;z-index:20;display:none}
.gate-modal.is-open{display:block}
.gate-modal__backdrop{position:absolute;inset:0;background:rgba(6,10,20,.7);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.gate-modal.is-open .gate-modal__backdrop{animation:gateFade .25s ease both}
.gate-modal__dialog{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(84vw,390px);overflow:hidden;border-radius:24px;background:#f8fbff;color:#111827;box-shadow:0 30px 80px rgba(0,0,0,.5),0 2px 0 rgba(255,255,255,.6) inset}
.gate-modal.is-open .gate-modal__dialog{animation:gateIn .32s cubic-bezier(.22,1.1,.35,1) both}
.gate-modal__close{position:absolute;right:14px;top:14px;z-index:2;width:40px;height:40px;border:0;border-radius:50%;background:rgba(15,23,42,.28);color:#fff;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:background .15s,transform .1s}
.gate-modal__close:hover{background:rgba(15,23,42,.45)}
.gate-modal__close:active{transform:scale(.92)}
.gate-modal__hero{height:216px;background:var(--gate-gradient,linear-gradient(135deg,#2b5be8,#38bdf8));display:flex;align-items:center;justify-content:center;position:relative}
.gate-modal__hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 18%,rgba(255,255,255,.28),transparent 46%);pointer-events:none}
.gate-modal__phone{width:136px;height:174px;border:11px solid #0b1220;border-radius:34px;position:relative;background:linear-gradient(180deg,#eaf4ff,#9cc8f6);box-shadow:0 16px 34px rgba(0,0,0,.3)}
.gate-modal__phone-notch{position:absolute;left:50%;top:32px;transform:translateX(-50%);width:34px;height:15px;border-radius:99px;background:rgba(255,255,255,.8)}
.gate-modal__phone-screen{position:absolute;left:28px;right:28px;bottom:44px;height:34px;border-radius:14px;background:rgba(255,255,255,.92);box-shadow:0 3px 10px rgba(30,64,175,.14)}
.gate-modal__phone-home{position:absolute;left:50%;bottom:-7px;transform:translateX(-50%);width:38px;height:5px;border-radius:99px;background:#6b7280}
.gate-modal__body{padding:26px 24px 26px;text-align:center}
.gate-modal__title{font-size:20px;line-height:1.35;margin:0 0 10px;color:#0f172a;font-weight:800;letter-spacing:-.01em}
.gate-modal__text{font-size:14.5px;line-height:1.7;color:#475569;margin:0 0 20px;font-weight:500}
.gate-modal__cta{display:flex;align-items:center;justify-content:center;height:56px;border-radius:999px;background:var(--gate-gradient,linear-gradient(135deg,#2b5be8,#38bdf8));color:#fff;text-decoration:none;font-size:17px;font-weight:800;box-shadow:0 12px 28px rgba(30,64,175,.32);transition:transform .12s,filter .15s}
.gate-modal__cta:hover{filter:brightness(1.06)}
.gate-modal__cta:active{transform:scale(.97)}
@keyframes gateIn{from{opacity:0;transform:translate(-50%,-46%) scale(.94)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes gateFade{from{opacity:0}to{opacity:1}}
@media (max-width:480px){.gate-modal__dialog{width:min(90vw,390px)}.gate-modal__hero{height:190px}.gate-modal__title{font-size:19px}.gate-modal__body{padding:24px 20px 26px}}
