/* Alerts signup (style B · lake dawn). Scoped to #al / .al-* */
#al{--al-ink:#10283f;--al-ink2:#3f5871;--al-mut:#5b6f82;--al-coral:#b8461a;--al-coral2:#e0703f;--al-sun:#f4a259;--al-lake:#0a6597;--al-lake2:#e4f2fb;--al-line:#e8dfd5;--al-hunt:#a63f14;--al-spring:cubic-bezier(.34,1.56,.64,1);--al-ease:cubic-bezier(.22,.8,.24,1);position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;font:15px/1.5 Inter,system-ui,sans-serif;color:var(--al-ink)}
#al[hidden]{display:none}
#al .al-bd{position:absolute;inset:0;background:rgba(16,40,63,.42);backdrop-filter:blur(3px);animation:al-fade .3s ease}
#al .al-card{position:relative;width:min(760px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:#fff;border-radius:22px;box-shadow:0 30px 80px -20px rgba(16,40,63,.5);overflow:hidden;animation:al-up .45s var(--al-ease)}
#al .al-card:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--al-sun),var(--al-coral2),var(--al-lake));z-index:2}
@keyframes al-fade{from{opacity:0}}@keyframes al-up{from{opacity:0;transform:translateY(24px) scale(.98)}}
#al .al-x{position:absolute;top:14px;right:14px;z-index:3;width:40px;height:40px;border-radius:50%;border:0;background:#f5f0ea;color:var(--al-ink2);cursor:pointer;display:grid;place-items:center;transition:transform .3s var(--al-spring),background .2s}
#al .al-x:hover{transform:rotate(90deg);background:#ece4da}
#al .al-grab{display:none}
#al h2,#al h3{font-family:Fraunces,Georgia,serif;font-weight:650;letter-spacing:-.015em}
#al .al-prog{display:flex;align-items:center;padding:22px 70px 6px 26px;list-style:none;margin:0}
#al .al-prog li{display:flex;align-items:center;flex:1;gap:8px;font-size:12px;font-weight:600;color:var(--al-mut)}
#al .al-prog li:last-child{flex:none}
#al .al-dot{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--al-line);background:#fff;font-size:12px;transition:all .45s var(--al-spring);flex:none}
#al .al-bar{flex:1;height:3px;border-radius:3px;background:var(--al-line);margin:0 8px;position:relative;overflow:hidden}
#al .al-bar:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--al-sun),var(--al-coral2));transform:scaleX(0);transform-origin:left;transition:transform .6s var(--al-ease)}
#al .al-prog li.done .al-bar:after{transform:scaleX(1)}
#al .al-prog li.on,#al .al-prog li.done{color:var(--al-ink)}
#al .al-prog li.on .al-dot{border-color:var(--al-coral2);color:var(--al-coral);transform:scale(1.12);box-shadow:0 0 0 5px rgba(244,162,89,.22)}
#al .al-prog li.done .al-dot{background:linear-gradient(135deg,var(--al-sun),var(--al-coral2));border-color:transparent;color:#fff}
#al .al-vp{position:relative;overflow:hidden auto;flex:1;transition:height .5s var(--al-ease)}
#al .al-track{display:flex;align-items:flex-start;transition:transform .6s var(--al-ease)}
#al .al-step{flex:0 0 100%;padding:12px 26px 6px;opacity:.25;transition:opacity .5s;min-width:0}
#al .al-step.cur{opacity:1}
#al .al-step h3{font-size:24px;margin:2px 0 4px}#al .al-sub{color:var(--al-ink2);margin:0 0 16px;font-size:14px}
#al .al-eb{font:700 11px Inter,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:var(--al-coral)}
#al .al-places{display:grid;grid-template-columns:1.2fr 1fr;gap:14px}
#al .al-mapw{position:relative;height:300px;border-radius:16px;overflow:hidden;border:1px solid var(--al-line);background:linear-gradient(160deg,#eaf4f8,#d6e9f2)}
#al .al-map{position:absolute;inset:0}
#al .maplibregl-ctrl-attrib{font-size:10px}
#al .al-rip{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;border:2px solid var(--al-lake);pointer-events:none;animation:al-rip 1s var(--al-ease) forwards;z-index:3}
#al .al-rip.d2{animation-delay:.15s;opacity:0}#al .al-rip.d3{animation-delay:.3s;opacity:0}
@keyframes al-rip{0%{transform:scale(.4);opacity:.9}100%{transform:scale(5);opacity:0}}
#al .al-hint{position:absolute;left:10px;top:10px;z-index:2;background:rgba(255,255,255,.94);padding:6px 10px;border-radius:999px;font-size:12px;font-weight:600;color:var(--al-ink2);box-shadow:0 2px 8px rgba(0,0,0,.08)}
#al .al-search{position:relative}#al .al-search input{width:100%;height:44px;border:1.5px solid var(--al-line);border-radius:12px;padding:0 12px 0 38px;font:inherit;color:var(--al-ink);transition:border-color .2s,box-shadow .2s;background:#fff}
#al .al-search input:focus{outline:none;border-color:var(--al-lake);box-shadow:0 0 0 4px rgba(10,101,151,.15)}
#al .al-search svg{position:absolute;left:12px;top:13px;color:var(--al-mut)}
#al .al-list{list-style:none;margin:8px 0 0;padding:0;height:248px;overflow:auto;scrollbar-width:thin}
#al .al-list li{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;cursor:pointer;transition:background .2s;font-size:14px;min-height:44px}
#al .al-list li:hover,#al .al-list li.hl{background:var(--al-lake2)}
#al .al-list li:focus-visible{outline:2px solid var(--al-lake);outline-offset:-2px;background:var(--al-lake2)}
#al .al-k{font-size:11px;color:var(--al-mut);margin-left:auto;font-weight:500;text-align:right}
#al .al-cb{width:20px;height:20px;border-radius:6px;border:2px solid #8fa1b1;display:grid;place-items:center;flex:none;transition:all .3s var(--al-spring)}
#al li[aria-selected=true] .al-cb{background:var(--al-lake);border-color:var(--al-lake);transform:scale(1.08)}
#al .al-cb svg{opacity:0;transform:scale(.3);transition:all .3s var(--al-spring);color:#fff}
#al li[aria-selected=true] .al-cb svg{opacity:1;transform:none}
#al .al-grp{font:700 11px Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--al-mut);padding:10px 10px 4px!important;cursor:default!important;min-height:0!important;background:none!important}
#al .al-chips{display:flex;flex-wrap:wrap;gap:8px;min-height:38px;margin-top:14px;align-items:center}
#al .al-empty{color:var(--al-mut);font-size:13px}
#al .al-chip{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#eaf5fc,#d9edf9);color:#08527a;border:1px solid #bfdcef;border-radius:999px;padding:5px 6px 5px 12px;font-size:13px;font-weight:600;animation:al-pop .5s var(--al-spring)}
#al .al-chip button{width:28px;height:28px;border-radius:50%;border:0;background:rgba(10,101,151,.1);color:var(--al-lake);cursor:pointer;display:grid;place-items:center;transition:background .2s,transform .2s}
#al .al-chip button:hover{background:var(--al-lake);color:#fff;transform:rotate(90deg)}
#al .al-chip.out{animation:al-popout .25s ease forwards}
@keyframes al-pop{0%{transform:scale(.3);opacity:0}100%{transform:none;opacity:1}}@keyframes al-popout{to{transform:scale(.4);opacity:0}}
#al .al-seg{display:inline-flex;background:#f1ece6;border-radius:14px;padding:4px;position:relative;margin-bottom:16px}
#al .al-seg button{position:relative;z-index:1;border:0;background:none;font:600 14px Inter,sans-serif;color:var(--al-ink2);padding:10px 18px;border-radius:11px;cursor:pointer;display:flex;gap:8px;align-items:center;min-height:44px;transition:color .3s}
#al .al-seg button[aria-pressed=true]{color:#fff}
#al .al-pill{position:absolute;top:4px;bottom:4px;border-radius:11px;background:var(--al-lake);transition:all .45s var(--al-spring);box-shadow:0 4px 12px rgba(10,101,151,.3)}
#al .al-seg.hunt .al-pill{background:var(--al-hunt);box-shadow:0 4px 12px rgba(166,63,20,.3)}
#al .al-spg{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
#al .al-sp{position:relative;border:1.5px solid var(--al-line);background:#fff;border-radius:14px;padding:14px 8px 10px;text-align:center;cursor:pointer;font:600 13px Inter,sans-serif;color:var(--al-ink);transition:transform .35s var(--al-spring),border-color .2s,box-shadow .25s,background .2s;min-height:96px}
#al .al-sp:hover{transform:translateY(-3px);box-shadow:0 10px 22px -10px rgba(16,40,63,.3)}
#al .al-sp:active{transform:scale(.95)}
#al .al-ic{width:46px;height:46px;margin:0 auto 6px;border-radius:12px;display:grid;place-items:center;background:var(--al-lake2);color:#0a5a87;transition:transform .4s var(--al-spring)}
#al .al-sp.h .al-ic{background:#fde6db;color:var(--al-hunt)}
#al .al-sp[aria-pressed=true]{border-color:var(--al-lake);background:#f4fafe;box-shadow:0 0 0 3px rgba(10,101,151,.14)}
#al .al-sp.h[aria-pressed=true]{border-color:var(--al-hunt);background:#fff7f3;box-shadow:0 0 0 3px rgba(166,63,20,.14)}
#al .al-sp[aria-pressed=true] .al-ic{transform:rotate(-8deg) scale(1.1)}
#al .al-tick{position:absolute;top:7px;right:7px;width:20px;height:20px;border-radius:50%;background:var(--al-lake);color:#fff;display:grid;place-items:center;transform:scale(0);transition:transform .35s var(--al-spring)}
#al .al-sp.h .al-tick{background:var(--al-hunt)}#al .al-sp[aria-pressed=true] .al-tick{transform:scale(1)}
#al .al-sp small{display:block;color:var(--al-mut);font-weight:500;font-size:11px}
#al .al-pane[hidden]{display:none}#al .al-pane{animation:al-fade .4s var(--al-ease)}
#al .al-opt{display:flex;gap:14px;align-items:center;border:1.5px solid var(--al-line);border-radius:16px;padding:14px 16px;margin-bottom:10px;cursor:pointer;transition:border-color .2s,background .2s}
#al .al-opt.on{border-color:var(--al-lake);background:#f6fbfe}
#al .al-oi{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#ffe8d2,#fcd0b0);color:var(--al-coral);flex:none}
#al .al-ot{flex:1}#al .al-ot b{display:block;font-size:15px}#al .al-ot span{font-size:13px;color:var(--al-ink2)}
#al .al-sw{position:relative;width:52px;height:30px;border-radius:999px;background:#8a9aa8;border:0;cursor:pointer;flex:none;transition:background .3s}
#al .al-sw:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.2);transition:transform .4s var(--al-spring),width .2s}
#al .al-sw:active:after{width:30px}
#al .al-sw[aria-checked=true]{background:var(--al-lake)}#al .al-sw[aria-checked=true]:after{transform:translateX(22px)}
#al .al-sw[aria-checked=true]:active:after{transform:translateX(16px)}
#al .al-when{display:flex;gap:8px;margin:-2px 0 12px 72px;flex-wrap:wrap}
#al .al-when button{border:1.5px solid var(--al-line);background:#fff;border-radius:999px;padding:8px 14px;font:600 13px Inter,sans-serif;color:var(--al-ink2);cursor:pointer;min-height:44px;transition:all .3s var(--al-spring)}
#al .al-when button[aria-pressed=true]{background:var(--al-ink);border-color:var(--al-ink);color:#fff;transform:scale(1.04)}
#al .al-when button:disabled{opacity:.5;cursor:not-allowed}
#al .al-tl{margin:6px 0 4px;padding:34px 20px 32px;border-radius:14px;background:linear-gradient(90deg,#fff1e4,#fde3cf 60%,#e4f2fb);font-size:12px;color:var(--al-ink2)}
#al .al-rail{position:relative;height:6px;border-radius:6px;background:rgba(255,255,255,.85);margin:8px 0 0}
#al .al-m{position:absolute;top:50%;width:14px;height:14px;margin:-7px;border-radius:50%;background:var(--al-coral2);border:2px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.15);transition:opacity .3s,transform .4s var(--al-spring)}
#al .al-m.off{opacity:.2;transform:scale(.6)}#al .al-m.end{background:var(--al-lake)}
#al .al-m i{position:absolute;top:16px;left:50%;transform:translateX(-50%);white-space:nowrap;font-style:normal;font-size:12px;color:var(--al-ink2)}
#al .al-m.end i{top:auto;bottom:16px;left:auto;right:-4px;transform:none;font-weight:700;color:var(--al-ink)}
#al .al-field label{display:block;font-weight:600;font-size:13px;margin-bottom:6px}
#al .al-field input{width:100%;height:50px;border:1.5px solid var(--al-line);border-radius:14px;padding:0 14px;font:16px Inter,sans-serif;color:var(--al-ink);transition:border-color .2s,box-shadow .2s}
#al .al-field input:focus{outline:none;border-color:var(--al-lake);box-shadow:0 0 0 4px rgba(10,101,151,.15)}
#al .al-err{color:#a8261b;font-size:13px;min-height:20px;margin-top:4px}
#al .al-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
#al .al-sum{border:1px dashed #d8cbbd;border-radius:16px;padding:14px 16px;margin:6px 0 12px;background:#fffbf7}
#al .al-sum dl{display:grid;grid-template-columns:88px 1fr;gap:6px 12px;margin:0;font-size:13px}#al .al-sum dt{color:var(--al-mut);font-weight:600}#al .al-sum dd{margin:0}
#al .al-sum a{color:var(--al-lake);font-weight:600;font-size:12px}
#al .al-fine{font-size:12px;color:var(--al-mut);margin:0}#al .al-fine a{color:var(--al-lake)}
#al .al-done{text-align:center;padding:4px 0 10px}
#al .al-pond{position:relative;height:190px;margin:0 auto 22px;max-width:420px}
#al .al-pond svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.al-leap{transform-box:view-box;transform-origin:0 0;animation:al-leap 1.9s cubic-bezier(.45,.05,.55,.95) .2s both}
@keyframes al-leap{0%{transform:translate(70px,160px) rotate(-60deg);opacity:0}10%{opacity:1}25%{transform:translate(130px,80px) rotate(-38deg)}50%{transform:translate(210px,40px) rotate(0)}75%{transform:translate(290px,80px) rotate(38deg)}90%{opacity:1}100%{transform:translate(350px,160px) rotate(60deg);opacity:0}}
#al .al-splash{transform-box:fill-box;transform-origin:center;animation:al-spl .9s ease-out both}
#al .al-splash.a{animation-delay:.25s}#al .al-splash.b{animation-delay:1.95s}
@keyframes al-spl{0%{transform:scale(.2);opacity:0}30%{opacity:1}100%{transform:scale(2.6);opacity:0}}
#al .al-mail{display:inline-flex;gap:10px;align-items:center;background:var(--al-lake2);color:#08527a;padding:10px 14px;border-radius:12px;font-weight:600;font-size:14px;margin:6px 0 10px;word-break:break-all}
#al .al-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 26px 22px;border-top:1px solid #f1ebe4}
#al .al-btn{position:relative;overflow:hidden;border:0;border-radius:14px;font:600 15px Inter,sans-serif;padding:0 22px;height:50px;cursor:pointer;display:inline-flex;gap:8px;align-items:center;justify-content:center;transition:transform .25s var(--al-spring),box-shadow .25s,opacity .2s}
#al .al-pri{background:linear-gradient(135deg,#c9541f,var(--al-coral));color:#fff;box-shadow:0 8px 20px -6px rgba(184,70,26,.55)}
#al .al-pri:hover{transform:translateY(-2px)}#al .al-pri:active{transform:scale(.97)}
#al .al-pri svg{transition:transform .3s var(--al-spring)}#al .al-pri:hover svg{transform:translateX(4px)}
#al .al-btn[disabled]{opacity:.45;cursor:not-allowed;transform:none!important;box-shadow:none}
#al .al-btn.busy{pointer-events:none;opacity:.8}
#al .al-gh{background:none;color:var(--al-ink2)}#al .al-gh:hover{background:#f5f0ea}
#al .al-wv{position:absolute;border-radius:50%;background:rgba(255,255,255,.45);transform:scale(0);animation:al-wv .6s ease-out;pointer-events:none}
@keyframes al-wv{to{transform:scale(4);opacity:0}}
#al .al-cnt{font-size:13px;color:var(--al-mut)}#al .al-cnt b{color:var(--al-ink)}
#al :focus-visible{outline:3px solid var(--al-lake);outline-offset:2px}
.al-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* CTA blocks on site pages */
.al-cta{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin:34px 0;padding:26px 28px;border-radius:22px;background:linear-gradient(110deg,#fde3cf 0,#fff1e4 45%,#e4f2fb 100%);border:1px solid #f0dccb}
.al-cta h2{margin:6px 0 6px;font-size:26px}.al-cta p{margin:0;color:#3d5770;max-width:560px}
.al-cta .al-kick{font:700 11px Inter,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:#a8411a}
.al-cta .al-go{border:0;cursor:pointer;background:linear-gradient(135deg,#c9541f,#b8461a);color:#fff;font:600 15px Inter,sans-serif;padding:0 22px;height:52px;border-radius:14px;box-shadow:0 8px 20px -6px rgba(184,70,26,.55);display:inline-flex;gap:8px;align-items:center;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}
.al-cta .al-go:hover{transform:translateY(-2px)}
.al-cta .al-fish{position:absolute;right:210px;bottom:-6px;width:120px;opacity:.16;color:#0a6597;pointer-events:none}
.al-cta.slim{margin:28px 0 8px;padding:20px 22px}.al-cta.slim h2{font-size:21px}
/* result pages */
.al-page .al-res{max-width:560px;margin:60px auto;text-align:center;background:#fff;border-radius:22px;padding:34px 28px;box-shadow:0 18px 50px -12px rgba(16,40,63,.22)}
.al-res-fish{width:100%;max-width:360px;height:130px;overflow:visible}
.al-page form{margin-top:18px}
@media (max-width:760px){
 #al{padding:0;place-items:end stretch}
 #al .al-card{width:100%;max-height:92vh;border-radius:26px 26px 0 0;animation:al-sheet .5s var(--al-ease)}
 #al .al-card:before{display:none}
 @keyframes al-sheet{from{transform:translateY(100%)}}
 #al .al-grab{display:block;width:42px;height:5px;border-radius:5px;background:#d5ccc2;margin:10px auto 0;flex:none}
 #al .al-x{top:12px;right:10px;width:36px;height:36px}
 #al .al-prog{padding:10px 56px 2px 18px}#al .al-prog .al-lbl{display:none}#al .al-prog li.on .al-lbl{display:inline}
 #al .al-step{padding:10px 18px 4px}#al .al-step h3{font-size:21px}
 #al .al-places{grid-template-columns:1fr}#al .al-mapw{height:200px}#al .al-list{height:auto;max-height:200px}
 #al .al-spg{grid-template-columns:repeat(3,1fr);gap:8px}#al .al-sp{min-height:92px;padding:12px 4px 8px}
 #al .al-when{margin-left:0}
 #al .al-foot{padding:12px 18px calc(14px + env(safe-area-inset-bottom))}
 #al .al-foot .al-pri{flex:1;height:54px}#al .al-cnt{display:none}
 .al-cta{grid-template-columns:1fr;padding:22px 20px}.al-cta .al-go{width:100%;justify-content:center}.al-cta .al-fish{display:none}
}
@media (prefers-reduced-motion:reduce){#al *,#al *:before,#al *:after,#al .al-bd,#al .al-card,.al-leap,.al-cta *{animation:none!important;transition:none!important}.al-leap{transform:translate(210px,60px)}}
