#tspn-newsletter { font-family:'Stratos',Arial,sans-serif; font-size:16px; line-height:1.45; color:#101010; text-align:left; }
#tspn-newsletter *, #tspn-newsletter *::before, #tspn-newsletter *::after { box-sizing:border-box; }
#tspn-newsletter [hidden] { display:none!important; }
#tspn-newsletter button, #tspn-newsletter input { font:inherit; letter-spacing:normal; text-transform:none; }
#tspn-newsletter button { cursor:pointer; min-height:44px; box-shadow:none; }
#tspn-newsletter button:focus-visible, #tspn-newsletter a:focus-visible, #tspn-newsletter input:focus-visible { outline:3px solid #126491; outline-offset:3px; }
#tspn-newsletter .tspn-launch { position:fixed; z-index:999990; right:0; bottom:32px; border:0; border-radius:18px 0 0 18px; padding:14px 22px; background:#148ac6; color:white; font-weight:700; box-shadow:0 4px 24px #0002; }
#tspn-newsletter .tspn-launch span { margin-left:14px; }
#tspn-panel { position:fixed; z-index:999991; right:0; bottom:24px; width:420px; max-width:calc(100vw - 24px); max-height:calc(100vh - 72px); max-height:calc(100dvh - 72px); overflow-y:auto; overscroll-behavior:contain; border:0; border-top:6px solid #14a750; border-radius:28px 0 0 28px; background:#fff; box-shadow:0 10px 60px #063d3930; transform:translateX(110%); visibility:hidden; transition:transform .22s ease, visibility .22s; }
#tspn-panel.tspn-open { transform:translateX(0); visibility:visible; }
#tspn-newsletter .tspn-content { padding:24px 30px 22px; }
#tspn-newsletter .tspn-close { position:sticky; display:block; top:6px; margin:6px 8px -40px auto; width:44px; height:44px; padding:0; z-index:2; background:white; color:#126b59; border:1px solid #dce9e4; border-radius:50%; font-family:Arial,sans-serif; font-size:30px; line-height:1; }
#tspn-newsletter .tspn-eyebrow { max-width:270px; padding-right:25px; margin:4px 0 17px; font-size:10px; letter-spacing:1.3px; line-height:1.5; color:#126b59; font-weight:700; }
#tspn-newsletter h2 { margin:0 0 14px; padding:0; font:700 36px/1.08 'Stratos',Arial,sans-serif; color:#149a81; letter-spacing:-.7px; }
#tspn-newsletter #tspn-intro { margin:0 0 22px; font-size:16px; line-height:1.5; }
#tspn-newsletter label { display:block; margin:14px 0 6px; color:#101010; font-size:14px; font-weight:700; }
#tspn-newsletter label span { font-weight:400; color:#5c6864; }
#tspn-newsletter input { display:block; width:100%; height:44px; margin:0; padding:9px 12px; color:#101010; background:#fff; border:1px solid #8ba79e; border-radius:5px; box-shadow:none; }
#tspn-newsletter .tspn-consent { margin:16px 0; font-size:12px; line-height:1.5; color:#4c5c56; }
#tspn-newsletter a { color:#126491; text-decoration:underline; }
#tspn-newsletter .tspn-submit { display:flex; justify-content:space-between; align-items:center; width:100%; padding:12px 18px; border:0; border-radius:6px; background:#148ac6; color:#fff; font-weight:700; }
#tspn-newsletter .tspn-submit:hover, #tspn-newsletter .tspn-launch:hover { background:#007bb5; }
#tspn-newsletter .tspn-submit:disabled { opacity:.65; cursor:wait; }
#tspn-newsletter .tspn-later { display:block; padding:8px 12px; margin:8px auto 0; border:0; background:transparent; color:#425e54; text-decoration:underline; font-size:13px; }
#tspn-newsletter .tspn-status { margin:12px 0 0; font-size:14px; color:#126b59; }
#tspn-newsletter .tspn-status:empty { display:none; }
#tspn-newsletter .tspn-trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
@media(max-width:480px) { #tspn-panel { bottom:max(12px,env(safe-area-inset-bottom)); max-width:calc(100vw - 58px); border-radius:20px 0 0 20px; } #tspn-newsletter .tspn-content { padding:20px 20px 12px; } #tspn-newsletter h2 { font-size:30px; } #tspn-newsletter .tspn-launch { bottom:max(14px,env(safe-area-inset-bottom)); font-size:14px; padding:10px 16px; } }
@media(prefers-reduced-motion:reduce) { #tspn-panel { transition:none; } }
