@import url('https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700;800;900&display=swap');
:root{color-scheme:dark;--navy:#06101e;--panel:#0a1a2c;--green:#47ee92;--cyan:#35c6ec;--purple:#ad6cff;--muted:#a8bacb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:radial-gradient(ellipse at 85% 0%,#182543 0,transparent 35%),var(--navy);color:#f7faff;font-family:Figtree,Arial,sans-serif;font-size:16px;line-height:1.5}a{color:inherit}button,input,select,textarea{font:inherit}button,a,select,input,textarea{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}[hidden]{display:none!important}header,main,footer{width:min(1440px,calc(100% - 64px));margin:auto}header{display:flex;align-items:center;justify-content:space-between;padding:26px 0;border-bottom:1px solid #26384b;gap:24px}header img{width:290px;display:block}nav{display:flex;gap:25px;align-items:center}nav a{text-decoration:none;font-size:14px;font-weight:700}.nav-cta{border:1px solid #6e49a2;border-radius:8px;padding:11px 18px}.intro{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:100px;padding:65px 0 48px}.eyebrow{color:var(--purple);font-weight:800;letter-spacing:.16em;font-size:11px;margin:0 0 14px}h1{font-size:clamp(48px,6.3vw,86px);letter-spacing:-.05em;line-height:1.02;margin:0 0 22px}h1 span,.request h2 span{color:var(--green)}.lede{max-width:680px;color:#bacbd9;font-size:19px;line-height:1.65}.promise{padding:12px 0 12px 30px;border-left:2px solid var(--purple);max-width:410px}.promise strong{font-size:28px;line-height:1.2}.promise p{color:var(--muted)}.promise span{font-size:12px;font-weight:800;color:var(--green);text-transform:uppercase;letter-spacing:.1em}.explorer{display:grid;grid-template-columns:340px 1fr;border:1px solid #2b425a;border-radius:20px;overflow:hidden;background:linear-gradient(130deg,#0d2032,#081321)}.controls{padding:28px;border-right:1px solid #2b425a}.controls h2{font-size:25px;margin:0 0 22px}.controls label{font-size:13px;font-weight:700;display:block;margin:15px 0 8px}select,input,textarea{width:100%;padding:12px;border:1px solid #3a5065;border-radius:7px;background:#071321;color:#fff;min-width:0}select{min-height:48px}.small{font-size:12px;color:var(--muted)}.county-list{max-height:230px;overflow:auto;margin:10px 0;scrollbar-color:#734dc2 #0b1929}.county-list label{display:flex;gap:10px;align-items:center;margin:0;padding:7px 5px;font-size:13px;font-weight:500}.county-list input{width:17px;height:17px;accent-color:#a04ff9;margin:0}.selection{margin-top:25px;padding-top:22px;border-top:1px solid #2b425a}.selection h3{margin:7px 0;font-size:21px}.selection p{font-size:13px;color:#c2d0de;overflow-wrap:anywhere}.selection small{display:block;margin-top:12px;color:#a9bac9;font-size:11px}.primary{display:block;border:0;background:var(--green);color:#052217;font-weight:800;text-decoration:none;text-align:center;padding:14px 18px;border-radius:7px;font-size:14px}.selection button,.map-heading button,.zoom-controls button{border:1px solid #445a71;border-radius:7px;color:#d8e4f3;background:#102538;padding:8px 12px}#clear-counties{margin:0 0 14px;font-size:12px}.map-card{min-width:0;padding:28px}.map-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.map-heading h2{margin:0;font-size:25px}.map-heading .eyebrow{margin-bottom:5px}.map-heading button{font-size:12px;white-space:nowrap}.map-stage{position:relative;margin:24px -8px 8px;background:radial-gradient(ellipse,#102c38 0%,#081724 70%);border-radius:14px;overflow:hidden}#us-map{width:100%;height:auto;display:block;min-height:260px;touch-action:none}.region{fill:#164938;stroke:#50d4ab;stroke-width:1;vector-effect:non-scaling-stroke;cursor:pointer}.region:hover{fill:#277c59;stroke:#c7ffec;stroke-width:2}.region.selected{fill:#8a3ef0;stroke:#f0d5ff;stroke-width:2}.state-label{fill:#c0eada;font-size:11px;font-weight:700;text-anchor:middle;pointer-events:none}.zoom-controls{position:absolute;right:12px;bottom:12px;display:flex;gap:6px}.zoom-controls button{font-size:22px;width:38px;height:38px;padding:0}#map-message{position:absolute;left:18px;top:4px;max-width:90%;font-size:13px;color:#d7f6e7;pointer-events:none}.map-legend{display:flex;gap:22px;flex-wrap:wrap;font-size:12px;color:#bdcddd}.map-legend i{display:inline-block;width:10px;height:10px;background:#43d394;border-radius:3px;margin-right:7px}.map-legend i.chosen{background:#a75bff}.map-caption{font-size:13px;color:#c3d0dd}.map-source{font-size:11px;color:#8ca3b7;max-width:700px;margin-top:25px}.territory-model{padding:72px 0}.territory-model>h2{font-size:36px;letter-spacing:-.025em;line-height:1.15;margin:10px 0 30px}.model-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.model-grid article{padding:25px 25px 10px;border:1px solid #2c4054;border-radius:12px;background:#0b1928}.model-grid b{font-size:11px;letter-spacing:.15em;color:var(--cyan)}.model-grid h3{font-size:23px;margin:14px 0}.model-grid p,.model-note{color:#aebfcd;font-size:14px}.model-note{max-width:1000px;margin-top:24px}.request{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;padding:45px 0 75px;border-top:1px solid #2c4054}.request h2{font-size:43px;line-height:1.1;letter-spacing:-.035em}.request p{color:#b2c4d5}.request a{color:var(--green);font-size:14px}.request-summary{border-left:2px solid var(--purple);background:#0d1d30;padding:18px;margin:24px 0;font-size:14px;overflow-wrap:anywhere}form{display:grid;grid-template-columns:1fr 1fr;gap:18px}form label{font-weight:700;font-size:12px}form input,form textarea,form select{display:block;margin-top:7px}.wide{grid-column:1/-1}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:32px 0;border-top:1px solid #2c4054;color:#aabcca;font-size:12px}footer img{width:240px}@media(min-width:1500px){.map-stage{margin-top:45px}}@media(max-width:1050px){header,main,footer{width:calc(100% - 40px)}.intro{gap:40px}.explorer{grid-template-columns:300px 1fr}.controls,.map-card{padding:20px}.request{gap:30px}.map-heading{align-items:flex-start}.map-heading h2{font-size:21px}}@media(max-width:760px){header{flex-wrap:wrap;padding:18px 0}header img{width:235px}nav{gap:16px;flex-wrap:wrap}nav a{font-size:12px}.nav-cta{padding:8px 10px}.intro{grid-template-columns:1fr;gap:22px;padding:35px 0}.intro h1{font-size:56px}.lede{font-size:17px}.promise{padding:4px 0 4px 18px}.promise strong{font-size:21px}.promise strong br{display:none}.promise p{font-size:13px;margin:8px 0}.explorer{display:flex;flex-direction:column}.controls{border-right:0;border-bottom:1px solid #2b425a}.map-card{order:0}.controls{order:1}.map-stage{margin-top:12px}#us-map{min-height:220px}.model-grid{grid-template-columns:1fr;gap:12px}.territory-model{padding:45px 0}.territory-model>h2{font-size:29px}.request{grid-template-columns:1fr}.request h2{font-size:36px}.request form{gap:15px}footer{flex-wrap:wrap}.county-list{max-height:190px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.territory-country-switch{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.territory-country-switch a{display:inline-flex;padding:11px 17px;border:1px solid #63768e;border-radius:8px;color:#d9e6f3;text-decoration:none;font-size:14px;font-weight:800}.territory-country-switch a[aria-current="page"]{border-color:#55efa2;background:#153c30;color:#9affc5}

/* Match the established UK neon green / purple territory map. */
:root{--green:#31ed7d;--purple:#9b48ff}
.explorer{border-color:#293953;background:linear-gradient(150deg,#091526,#030912);box-shadow:0 28px 85px #0007,0 0 50px #6f31d114}
.map-card{background:radial-gradient(circle at 85% 15%,#6324aa16,transparent 42%)}
.map-stage{isolation:isolate;background:radial-gradient(circle at 25% 30%,#8338ee3d,transparent 34%),radial-gradient(circle at 78% 72%,#14c47724,transparent 30%),#030914;box-shadow:inset 0 0 65px #01040dad;border:1px solid #68449755}
.region{fill:#09271d;stroke:#31ed7d;stroke-width:1.15;filter:drop-shadow(0 0 2px #31ed7d70)}
.region:hover{fill:#173e2c;stroke:#a3ffd0;stroke-width:1.8;filter:drop-shadow(0 0 4px #31ed7db8)}
.region.selected{fill:#6024a0;stroke:#bf8aff;stroke-width:1.8;filter:drop-shadow(0 0 4px #9b48ff99)}
.map-marker{fill:#8139ed;stroke:#c394ff;stroke-width:1;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 4px #9b48ffbb);cursor:pointer}
.map-marker.selected{fill:#31ed7d;stroke:#effff5;filter:drop-shadow(0 0 5px #31ed7dcc)}
.state-label{fill:#dcf7e8;paint-order:stroke;stroke:#030914;stroke-width:3px;stroke-linejoin:round}
.zoom-controls button{border-color:#a269ff6b;background:#070d1cec;box-shadow:0 12px 34px #0006;color:#f4edff}
.zoom-controls button:hover{color:#31ed7d;background:#120c28f5}
.map-legend i{background:#31ed7d;box-shadow:0 0 7px #31ed7d80}.map-legend i.chosen{background:#9b48ff;box-shadow:0 0 7px #9b48ff99}
