body.visitor-popup-open{overflow:hidden}
.visitor-popup{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:24px;font-family:"Inter",Arial,sans-serif}
.visitor-popup[hidden]{display:none}
.visitor-popup__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.88);backdrop-filter:blur(7px);animation:visitor-popup-fade .2s ease both}
.visitor-popup__dialog{position:relative;isolation:isolate;width:min(680px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid rgba(255,212,0,.42);border-top:3px solid #ffd400;border-radius:13px;background:linear-gradient(145deg,#171717,#080808);box-shadow:0 28px 90px rgba(0,0,0,.8);animation:visitor-popup-in .24s ease both}
.visitor-popup__image{position:absolute;z-index:-1;inset:0;width:100%;height:100%;object-fit:contain;object-position:right center;pointer-events:none;filter:saturate(.9)}
.visitor-popup__dialog:after{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(8,8,8,.98) 5%,rgba(8,8,8,.86) 58%,rgba(8,8,8,.48));content:"";pointer-events:none}
.visitor-popup__content{position:relative;padding:clamp(28px,6vw,54px)}
.visitor-popup__eyebrow{margin:0 48px 10px 0;color:#ffd400;font-size:11px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.visitor-popup h2{max-width:560px;margin:0 48px 18px 0;color:#fff;font:700 clamp(25px,5vw,39px)/1.13 "Cinzel",Georgia,serif}
.visitor-popup__body{max-width:560px;color:#c7c7c7;font-size:clamp(14px,2vw,16px);line-height:1.7}
.visitor-popup__close{position:absolute;z-index:3;top:13px;right:14px;width:40px;height:40px;border:1px solid rgba(255,255,255,.15);border-radius:50%;background:rgba(0,0,0,.42);color:#ccc;font-size:29px;line-height:1;cursor:pointer}
.visitor-popup__close:hover,.visitor-popup__close:focus-visible{border-color:#ffd400;color:#ffd400;outline:0}
.visitor-popup__button{min-width:150px;min-height:44px;margin-top:25px;padding:0 24px;border:1px solid #ffd400;border-radius:7px;background:#ffd400;color:#111;font-size:13px;font-weight:900;cursor:pointer}
.visitor-popup__button:hover,.visitor-popup__button:focus-visible{background:#ffe13d;outline:2px solid rgba(255,212,0,.3);outline-offset:3px}
.visitor-popup.is-closing .visitor-popup__backdrop,.visitor-popup.is-closing .visitor-popup__dialog{opacity:0;transition:opacity .16s ease}
@keyframes visitor-popup-fade{from{opacity:0}to{opacity:1}}
@keyframes visitor-popup-in{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:600px){.visitor-popup{padding:12px}.visitor-popup__dialog{max-height:calc(100vh - 24px)}.visitor-popup__content{padding:30px 22px}.visitor-popup h2{margin-right:34px}.visitor-popup__dialog:after{background:rgba(8,8,8,.84)}}
@media(prefers-reduced-motion:reduce){.visitor-popup__backdrop,.visitor-popup__dialog{animation:none!important;transition:none!important}}

.visitor-popup__countdown{display:grid;grid-template-columns:repeat(4,minmax(68px,1fr));gap:8px;max-width:500px;margin-top:23px}
.visitor-popup__countdown[hidden]{display:none}.visitor-popup__countdown span{padding:12px 8px;border:1px solid rgba(255,212,0,.28);border-radius:8px;background:rgba(0,0,0,.45);text-align:center}.visitor-popup__countdown strong,.visitor-popup__countdown small{display:block}.visitor-popup__countdown strong{color:#ffd400;font:700 clamp(22px,4vw,31px)/1 Cinzel,Georgia,serif}.visitor-popup__countdown small{margin-top:6px;color:#aaa;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:480px){.visitor-popup__countdown{grid-template-columns:repeat(2,1fr)}}
