:root{--sp-bg:#faf6ef;--sp-ink:#241d16;--sp-accent:#a8754a;--sp-line:#ddd2c2;--sp-glow:rgba(168,117,74,.16);}
.subpop-overlay{position:fixed;inset:0;z-index:99990;background:rgba(18,14,10,.55);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:18px;opacity:0;pointer-events:none;transition:opacity .3s ease}
.subpop-overlay.open{opacity:1;pointer-events:auto}
.subpop-card{position:relative;background:var(--sp-bg);color:var(--sp-ink);max-width:430px;width:100%;border-radius:20px;padding:38px 34px 30px;box-shadow:0 30px 80px rgba(0,0,0,.35);transform:translateY(16px) scale(.98);transition:transform .35s cubic-bezier(.2,.8,.25,1);font-family:inherit;text-align:center;border:1px solid var(--sp-line)}
.subpop-overlay.open .subpop-card{transform:none}
.subpop-close{position:absolute;top:10px;right:12px;width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:var(--sp-ink);font-size:24px;line-height:1;cursor:pointer;opacity:.55}
.subpop-close:hover{opacity:1;background:rgba(0,0,0,.06)}
.subpop-eyebrow{display:block;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--sp-accent);font-weight:700;margin-bottom:12px}
.subpop-title{font-size:clamp(24px,5vw,30px);line-height:1.15;margin:0 0 12px;font-weight:700}
.subpop-text{margin:0 auto 22px;font-size:15px;line-height:1.55;opacity:.78;max-width:34ch}
.subpop-form{display:flex;flex-direction:column;gap:10px}
.subpop-form input[type=email]{width:100%;box-sizing:border-box;padding:14px 18px;border-radius:999px;border:1px solid var(--sp-line);background:#fff;color:#241d16;font-size:15px;outline:none}
.subpop-form input[type=email]:focus{border-color:var(--sp-accent);box-shadow:0 0 0 3px var(--sp-glow)}
.subpop-btn{padding:14px 18px;border-radius:999px;border:0;background:var(--sp-accent);color:#fff;font-size:15px;font-weight:700;cursor:pointer;letter-spacing:.02em}
.subpop-btn:hover{filter:brightness(1.07)}
.subpop-btn:disabled{opacity:.6;cursor:wait}
.subpop-note{margin:14px 0 0;font-size:12px;opacity:.55}
.subpop-msg{margin:12px 0 0;font-size:13.5px;min-height:18px}
.subpop-msg.err{color:#a3412f}
.subpop-done{display:none}
.subpop-done .subpop-check{width:54px;height:54px;margin:0 auto 14px;border-radius:50%;background:var(--sp-glow);color:var(--sp-accent);display:flex;align-items:center;justify-content:center;font-size:26px}
.subpop-card.success .subpop-main{display:none}
.subpop-card.success .subpop-done{display:block}
@media (max-width:560px){.subpop-overlay{align-items:flex-end;padding:0}.subpop-card{border-radius:20px 20px 0 0;padding:30px 22px 26px}}
