html:has(.drop-popup[open]){overflow:hidden;scrollbar-gutter:stable}
.drop-popup{position:fixed;inset:0;width:min(600px,calc(100vw - 36px));max-width:600px;max-height:calc(100dvh - 36px);margin:auto;padding:35px 45px 14px;border:2px solid var(--cream);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--ink);color:var(--cream);box-shadow:9px 9px 0 var(--gold);text-align:left;isolation:isolate}
.drop-popup:not([open]){display:none}
.drop-popup[open]{display:flex;flex-direction:column;align-items:flex-start}
.drop-popup::backdrop{background:#070806bf;backdrop-filter:blur(4px)}
.drop-popup::before{content:"";position:absolute;top:0;left:0;right:0;height:10px;background:repeating-linear-gradient(135deg,var(--gold) 0 8px,var(--ink) 8px 17px);pointer-events:none}
.drop-popup::after{content:"";position:absolute;inset:10px 0 0;z-index:-1;background:url("halloween-print-texture.svg") repeat;opacity:.28;pointer-events:none}
.drop-popup-close{position:absolute;top:23px;right:22px;display:grid;place-items:center;width:46px;height:46px;padding:10px;border:1px solid var(--cream);background:var(--ink);color:var(--cream);box-shadow:3px 3px 0 var(--gold)}
.drop-popup-close:hover{background:var(--gold);color:var(--ink)}
.drop-popup-brand{display:flex;align-items:center;gap:14px;margin-bottom:20px;padding-right:45px}
.drop-popup-brand img{width:58px;height:58px;padding:4px;object-fit:contain;background:var(--cream);transform:rotate(-8deg)}
.drop-popup-brand span{font:600 11px/1.3 var(--font-body);text-transform:uppercase;letter-spacing:.16em}
.drop-popup-eyebrow{color:var(--gold);font:600 13px/1.4 var(--font-body);letter-spacing:.12em;text-transform:uppercase;margin:0 0 13px}
.drop-popup h2{margin:0;max-width:490px;font:400 clamp(40px,7.5vw,67px)/.96 var(--font-display);letter-spacing:-.055em;text-transform:uppercase;overflow-wrap:normal;text-wrap:balance}
.drop-popup-title-word{display:block;white-space:nowrap}
.drop-popup-text{max-width:440px;margin:17px 0 18px;font-size:19px;line-height:1.45}
.drop-popup-form{width:100%;margin:0}
.drop-popup-label{display:block;margin-bottom:9px;font-size:14px;font-weight:600;line-height:1.3;letter-spacing:.06em;text-transform:uppercase}
.drop-popup-entry{display:grid;grid-template-columns:minmax(0,1fr) 54px;min-height:56px;border:2px solid var(--cream);background:var(--paper)}
.drop-popup-entry:focus-within,.drop-popup-entry:has([aria-invalid="true"]){border-color:var(--gold)}
.drop-popup input.drop-popup-email{display:block;width:100%;min-width:0;min-height:52px;margin:0;padding:12px 14px;border:0;border-radius:0;background:transparent;color:var(--ink);font:400 17px/1.4 var(--font-body);box-shadow:none}
.drop-popup-email::placeholder{color:#59594f;opacity:1}
.drop-popup-consent{margin:12px 0 0;font-size:13px;line-height:1.5;color:var(--cream)}
.drop-popup-consent a{text-decoration:underline;text-underline-offset:3px}
.drop-popup-errors,.drop-popup-success{padding:15px 17px;border:1px solid var(--gold);font-size:17px;line-height:1.45;background:#ffffff0a}
.drop-popup-errors{margin:0 0 20px}
.drop-popup-errors ul{padding-left:20px}
.drop-popup-success{margin:0}
.drop-popup-submit{position:relative;display:grid;place-items:center;align-self:stretch;width:54px;min-height:52px;margin:0;padding:10px;border:0;border-left:1px solid var(--ink);background:var(--gold);color:var(--ink)}
.drop-popup-submit::after{content:"";position:absolute;inset:4px;border:1px solid #16171145;pointer-events:none}
.drop-popup-submit svg{transition:transform .16s ease}
.drop-popup-submit:hover svg{transform:translateX(2px)}
.drop-popup-submit:hover{background:#f3c861}
.drop-popup-dismiss{align-self:center;min-height:44px;margin-top:8px;padding:9px 15px;border:0;background:transparent;color:var(--cream);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.09em;text-decoration:underline;text-underline-offset:5px}
.drop-popup-dismiss:hover{color:var(--gold)}
.drop-popup :focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.drop-popup .drop-popup-email:focus-visible,.drop-popup-submit:focus-visible{outline:2px solid var(--ink);outline-offset:-4px}
@media(max-width:650px){.drop-popup{width:calc(100vw - 30px);max-height:calc(100dvh - 30px);padding:29px 25px 10px;box-shadow:5px 5px 0 var(--gold)}.drop-popup-close{top:20px;right:18px;width:44px;height:44px}.drop-popup-brand{gap:11px;margin-bottom:18px;padding-right:45px}.drop-popup-brand img{width:49px;height:49px}.drop-popup-brand span{font-size:10px;letter-spacing:.11em}.drop-popup-eyebrow{font-size:11px;letter-spacing:.09em;margin-bottom:13px}.drop-popup h2{font-size:clamp(30px,10vw,56px)}.drop-popup-text{font-size:17px;margin:15px 0 17px}.drop-popup-dismiss{font-size:12px}}
@media(max-width:360px){.drop-popup{padding-inline:20px}.drop-popup input.drop-popup-email{padding-inline:10px;font-size:16px}}
@media(max-height:700px){.drop-popup{padding-top:24px}.drop-popup-brand{margin-bottom:15px}.drop-popup-brand img{width:44px;height:44px}.drop-popup h2{font-size:clamp(30px,10vw,40px)}.drop-popup-text{margin-block:14px;font-size:17px}.drop-popup-dismiss{margin-top:6px}.drop-popup-consent{margin:10px 0 0}}
@media(prefers-reduced-motion:reduce){.drop-popup-submit svg{transition:none}}
@media(forced-colors:active){.drop-popup,.drop-popup-close,.drop-popup-submit,.drop-popup-entry{border:2px solid CanvasText}.drop-popup::before,.drop-popup::after{display:none}}
