.newsletter-shell{position:fixed;z-index:95;inset:0;display:grid;place-items:center;padding:24px;background:rgba(4,4,3,.82);backdrop-filter:blur(14px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s ease,visibility .35s ease}.newsletter-shell.is-open{opacity:1;visibility:visible;pointer-events:auto}.newsletter-panel{position:relative;width:min(760px,100%);display:grid;grid-template-columns:.8fr 1.2fr;background:#f0ede6;color:#111;box-shadow:0 35px 110px rgba(0,0,0,.62);overflow:hidden;transform:translateY(24px) scale(.985);transition:transform .45s cubic-bezier(.2,.8,.2,1)}.newsletter-shell.is-open .newsletter-panel{transform:none}.newsletter-art{min-height:470px;background:linear-gradient(180deg,rgba(9,9,7,.08),rgba(9,9,7,.72)),url('assets/marching-thunder-parade.jpg') 43% center/cover}.newsletter-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(44px,6vw,76px)}.newsletter-kicker{color:#9a6c20;font:700 9px/1 Arial;letter-spacing:.2em}.newsletter-copy h2{font:400 clamp(2.7rem,5.5vw,5.2rem)/.85 Georgia;margin:18px 0 22px;letter-spacing:-.045em;text-transform:uppercase}.newsletter-copy h2 em{display:block;color:#b9822b;font-style:normal}.newsletter-copy>p{max-width:390px;margin:0 0 28px;color:#4e4b44;line-height:1.55}.newsletter-form{display:grid;gap:14px}.newsletter-fields{display:grid;grid-template-columns:.75fr 1.25fr;gap:12px}.newsletter-form label{font:700 8px/1 Arial;letter-spacing:.13em}.newsletter-form input[type="text"],.newsletter-form input[type="email"]{width:100%;margin-top:7px;padding:13px 0;border:0;border-bottom:1px solid #111;background:transparent;color:#111;font-size:16px;border-radius:0}.newsletter-consent{display:flex;align-items:flex-start;gap:9px;color:#5a564e;font:400 10px/1.4 Arial!important;letter-spacing:0!important}.newsletter-consent input{margin:1px 0 0;accent-color:#111}.newsletter-form button{justify-self:start;border:0;background:#111;color:#f0ede6;padding:16px 20px;font:700 9px/1 Arial;letter-spacing:.14em;cursor:pointer}.newsletter-form button:disabled{opacity:.6;cursor:wait}.newsletter-status{min-height:18px;margin:0!important;color:#6b4a16!important;font-size:11px!important}.newsletter-close{position:absolute;z-index:2;top:14px;right:14px;width:42px;height:42px;border:1px solid currentColor;background:#f0ede6;color:#111;font:300 28px/1 Arial;cursor:pointer}.newsletter-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.newsletter-open:focus-visible,.newsletter-close:focus-visible,.newsletter-form input:focus-visible,.newsletter-form button:focus-visible{outline:2px solid #c79a4a;outline-offset:4px}

@media(max-width:680px){.newsletter-shell{padding:10px}.newsletter-panel{display:block;max-height:calc(100dvh - 20px);overflow:auto}.newsletter-art{min-height:190px;background-position:center 38%}.newsletter-copy{padding:38px 24px 30px}.newsletter-copy h2{font-size:clamp(2.55rem,13vw,3.6rem)}.newsletter-fields{grid-template-columns:1fr}.newsletter-close{position:sticky;float:right;top:10px;margin:10px 10px -52px 0}}

@media(prefers-reduced-motion:reduce){.newsletter-shell,.newsletter-panel{transition:none}}
