/* Exit offer (public/exit-offer.js): demo by email, 25% off for life by text. Uses the site's theme tokens. */
.exit-offer-open{overflow:hidden}
.exit-offer{padding:0;border:1px solid var(--line);border-top:4px solid #dc689f;border-radius:12px;width:min(860px,calc(100% - 24px));max-height:calc(100dvh - 24px);background:var(--base);color:var(--text);overflow:auto;box-shadow:0 24px 100px #0009}
.exit-offer[open]{display:grid;grid-template-columns:.7fr 1.3fr}
.exit-offer::backdrop{background:#110b19c4;backdrop-filter:blur(5px)}
.exit-offer-close{position:absolute;right:12px;top:10px;width:40px;height:40px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:50%;font:26px/1 var(--sans);cursor:pointer;z-index:1}
.exit-offer-close:focus-visible,.exit-offer button:focus-visible,.exit-offer a:focus-visible{outline:2px solid var(--accent,#ff99c3);outline-offset:3px}
.exit-offer-art{background:linear-gradient(155deg,#3f225d,#813061 62%,#b45d40);color:#fff;padding:56px 26px;display:flex;flex-direction:column;justify-content:center;font:700 44px/1.05 var(--serif);letter-spacing:-1.5px}
.exit-offer-art small{display:block;font:400 15px/1.6 var(--sans);letter-spacing:0;margin-top:22px;color:#f5dcea}
.exit-offer-art b{display:block;margin-top:26px;font:700 13px/1.4 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:#ffe3f0}
.exit-offer-body{padding:38px 32px 26px;min-width:0}
.exit-offer-body .eyebrow{font-size:12px;margin-bottom:10px}
.exit-offer-body h2{font-size:clamp(28px,3.4vw,36px);letter-spacing:-1px;margin-bottom:12px}
.exit-offer-lede{font-size:14px;color:var(--muted);line-height:1.65;margin-bottom:18px}
.exit-offer label{display:block;font-size:13px;font-weight:600;margin:14px 0 6px}
.exit-offer input:not([type=checkbox]){width:100%;border:1px solid var(--line);background:var(--raised);color:var(--text);border-radius:6px;padding:12px;font:16px var(--sans);min-height:46px}
.exit-offer input:not([type=checkbox]):focus-visible{outline:2px solid var(--accent,#ff99c3);outline-offset:1px}
.exit-offer input[aria-invalid=true]{border-color:#e5484d}
.exit-offer-field-error{display:block;color:#ff8a8f;font-size:12px;margin-top:6px}
html[data-theme=light] .exit-offer-field-error{color:#b42318}
.exit-offer-text{margin-top:20px;padding:16px;border:1px dashed var(--line);border-radius:10px;background:var(--surface)}
.exit-offer-text h3{font:700 17px/1.3 var(--sans);letter-spacing:-.2px;margin:0 0 4px}
.exit-offer-text h3 span{color:var(--accent,#ff99c3)}
.exit-offer-text>p{font-size:12.5px;color:var(--muted);line-height:1.55;margin:0}
.exit-offer-text label{margin-top:12px}
.exit-offer-text label small{font-weight:400;color:var(--muted);margin-left:6px}
.exit-offer label.exit-offer-consent{display:flex;align-items:flex-start;gap:9px;margin:12px 0 0;font-size:11px;font-weight:400;line-height:1.55;color:var(--muted)}
.exit-offer-consent input{width:17px;height:17px;flex-shrink:0;margin:2px 0;accent-color:var(--accent,#ff99c3)}
.exit-offer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;margin-top:20px}
.exit-offer-actions .button{min-height:48px}
.exit-offer-skip{border:0;background:none;color:var(--muted);font:500 13px var(--sans);text-decoration:underline;text-underline-offset:4px;cursor:pointer;padding:4px 0}
.exit-offer-fine{font-size:11px;color:var(--muted);margin:14px 0 0;line-height:1.5}
.exit-offer-status{font-size:13px;margin:14px 0 0;color:#ff8a8f}
html[data-theme=light] .exit-offer-status{color:#b42318}
.exit-offer-status:empty{display:none}
.exit-offer-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.exit-offer-done h2{margin-bottom:10px}
.exit-offer-done>p{font-size:15px;line-height:1.6}
.exit-offer-sms{display:flex;gap:10px;align-items:flex-start;margin-top:16px;padding:14px 16px;border-radius:10px;background:var(--surface);border:1px solid var(--line);font-size:14px;line-height:1.5}
.exit-offer-sms i{flex:0 0 18px;height:18px;margin-top:2px;border-radius:50%;border:2px solid var(--muted);border-top-color:transparent;animation:exit-offer-spin .9s linear infinite}
.exit-offer-sms[data-state=ok] i{animation:none;border:0;background:#2f9e64}
.exit-offer-sms[data-state=ok] i::after{content:'✓';display:block;color:#fff;font:700 12px/18px var(--sans);text-align:center}
.exit-offer-sms[data-state=failed]{border-color:#e5484d}
.exit-offer-sms[data-state=failed] i{animation:none;border:0;background:#e5484d}
.exit-offer-sms[data-state=failed] i::after{content:'!';display:block;color:#fff;font:700 12px/18px var(--sans);text-align:center}
.exit-offer-retry{margin-top:12px}
.exit-offer-retry .exit-offer-retry-row{display:flex;gap:10px}
.exit-offer-retry .button{min-height:46px;white-space:nowrap}
@keyframes exit-offer-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.exit-offer-sms i{animation:none;border-top-color:var(--muted)}}
@media (max-width:720px){
  .exit-offer[open]{grid-template-columns:1fr}
  .exit-offer-art{padding:30px 22px 24px;font-size:32px}
  .exit-offer-art small{margin-top:10px;font-size:14px}
  .exit-offer-art b{display:none}
  .exit-offer-body{padding:24px 18px 20px}
  .exit-offer-retry .exit-offer-retry-row{flex-direction:column}
}
