/* Hallmark · component: signup dialog · theme: TempleOS amber · P5 H4 E4 S5 R5 V4 */
:root{--signup-paper:#fffaf4;--signup-ink:#151515;--signup-muted:#555b61;--signup-orange:#f36b00;--signup-gold:#ffad00;--signup-line:#ffe0ae;--signup-free:#fff4d9;--signup-paid:#ffeddf;--signup-green:#229f25;--signup-white:#fff;--signup-shadow:0 18px 65px #a85d0033;--signup-font:Sora,system-ui,sans-serif;--signup-backdrop:#1a100bd6}
.signup-launcher{position:fixed;right:24px;bottom:24px;z-index:90;display:flex;align-items:center;gap:10px;min-height:58px;padding:12px 22px;border:1px solid var(--signup-gold);border-radius:32px;background:linear-gradient(115deg,var(--signup-orange),var(--signup-gold));color:var(--signup-ink);font:700 15px/1.2 var(--signup-font);box-shadow:var(--signup-shadow);cursor:pointer;white-space:nowrap}
.signup-launcher svg{width:25px;height:25px;flex:none}.signup-launcher:hover,.signup-cta:hover{filter:brightness(1.07)}.signup-launcher:active,.signup-cta:active{transform:translateY(1px)}.signup-launcher:focus-visible,.signup-close:focus-visible,.signup-cta:focus-visible{outline:3px solid var(--signup-orange);outline-offset:4px}
.signup-dialog{position:fixed;inset:auto 24px 24px auto;margin:0;width:min(740px,calc(100vw - 48px));max-height:calc(100dvh - 48px);padding:34px;border:1px solid var(--signup-gold);border-radius:32px;background:var(--signup-paper);color:var(--signup-ink);box-shadow:var(--signup-shadow);font-family:var(--signup-font);overflow-y:auto;overscroll-behavior:contain}
.signup-dialog::backdrop{background:var(--signup-backdrop);backdrop-filter:blur(7px)}.signup-dialog:not([open]){display:none}.signup-close{position:absolute;top:16px;right:16px;width:42px;height:42px;border:0;border-radius:50%;background:var(--signup-white);color:var(--signup-muted);box-shadow:0 4px 12px #0001;cursor:pointer;font:400 32px/1 var(--signup-font)}
.signup-top{display:grid;grid-template-columns:180px minmax(0,1fr);gap:25px;align-items:center;margin:18px 0 28px}.signup-art{width:100%;height:180px;object-fit:contain}.signup-title{margin:0;font-size:clamp(26px,3vw,40px);line-height:1.22;letter-spacing:-1px;overflow-wrap:anywhere;font-weight:500;font-style:normal;color:var(--signup-ink)}.signup-title strong{display:block;margin-top:8px;font-weight:800}.signup-title em{color:var(--signup-orange);font-style:normal}.signup-intro{margin:14px 0 0;color:var(--signup-muted);font-size:17px;line-height:1.5}
.signup-offers{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.signup-offer{display:flex;align-items:center;gap:14px;padding:20px 16px;border:1px solid var(--signup-line);border-radius:18px;background:var(--signup-free);min-width:0}.signup-offer:last-child{background:var(--signup-paid)}.signup-offer svg{width:42px;height:42px;flex:none;color:var(--signup-orange)}.signup-offer strong{display:block;font-size:23px;line-height:1.25;color:var(--signup-ink)}.signup-offer p{margin:5px 0 0;color:var(--signup-muted);font-size:14px;line-height:1.45}.signup-benefits{list-style:none;margin:25px 0;padding:0;display:grid;gap:17px}.signup-benefits li{display:flex;align-items:center;gap:14px;font-size:19px;line-height:1.45;color:var(--signup-ink)}.signup-check{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:50%;background:var(--signup-green);color:var(--signup-white);font-size:23px;font-weight:800}.signup-benefits strong{font-weight:800}
.signup-cta{display:flex;align-items:center;justify-content:center;gap:16px;min-height:76px;padding:18px 20px;border:1px solid var(--signup-gold);border-radius:20px;background:linear-gradient(115deg,var(--signup-orange),var(--signup-gold));box-shadow:var(--signup-shadow);color:var(--signup-white);font-size:27px;font-weight:800;text-decoration:none;white-space:nowrap}.signup-cta svg{width:30px;height:30px;flex:none}
@media(max-width:600px){.signup-launcher{right:16px;bottom:16px;padding:12px 17px}.signup-dialog{inset:auto 12px 12px;width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:24px 20px;border-radius:24px}.signup-top{grid-template-columns:90px minmax(0,1fr);gap:14px;margin-top:32px;margin-bottom:20px}.signup-art{height:100px}.signup-title{font-size:24px;letter-spacing:-.6px}.signup-intro{font-size:13px}.signup-offers{gap:10px}.signup-offer{flex-direction:column;align-items:flex-start;padding:15px 12px;gap:8px}.signup-offer strong{font-size:17px}.signup-offer svg{width:30px;height:30px}.signup-offer p{font-size:12px}.signup-benefits li{font-size:15px}.signup-check{width:28px;height:28px;font-size:19px}.signup-cta{min-height:60px;font-size:20px;gap:10px}}
@media(prefers-reduced-motion:reduce){.signup-launcher:active,.signup-cta:active{transform:none}}

.signup-offer>div{min-width:0;overflow-wrap:anywhere}.signup-benefits li>span:last-child,.signup-benefits li>strong{min-width:0;overflow-wrap:anywhere}
@media(max-width:375px){.signup-cta{font-size:17px;padding-inline:12px}.signup-cta svg{width:24px}.signup-title{font-size:22px}}

/* Match the supplied signup reference; the original artwork is displayed through a CSS crop. */
.signup-art--reference{aspect-ratio:1;height:auto;background-image:url('../images/signup-reference.png');background-size:570% 570%;background-position:42.75% 32.6%;background-repeat:no-repeat}
@media(min-width:601px){.signup-dialog{padding:40px 34px;border-radius:38px}.signup-top{grid-template-columns:190px minmax(0,1fr);gap:28px;margin:12px 0 34px}.signup-title{font-size:38px;line-height:1.2}.signup-intro{font-size:21px;line-height:1.45}.signup-offer{padding:22px 20px;min-height:126px;gap:18px}.signup-offer svg{width:52px;height:52px}.signup-offer strong{font-size:29px}.signup-offer p{font-size:19px;line-height:1.3}.signup-benefits{margin:25px 0 34px;gap:17px}.signup-benefits li{font-size:24px;line-height:1.35;gap:20px}.signup-check{width:40px;height:40px;font-size:27px}.signup-cta{min-height:100px;font-size:36px;border-radius:23px}.signup-close{width:52px;height:52px;font-size:38px;top:20px;right:20px}}
