/* ITS ITALY — restrained black-on-white editorial system */
:root{--forest:#111;--forest2:#101010;--dark:#151515;--ink:#161616;--muted:#777;--light:#f7f8f7;--edge:#e8e8e8;--accent:#237b4c;--mint:#e5f3e9;--bg:#fff;--white:#fff;--radius:11px}
body{background:#fff;color:#171717}
button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{outline-color:#2584db}
.topbar{background:white;color:#111;height:84px;border-bottom:1px solid #e8e8e8;padding:0 3.2%;position:relative}
.topbar::before{position:absolute;content:"";height:3px;left:0;right:0;top:0;background:linear-gradient(90deg,#209653 0 33.33%,#f3f3f3 33.33% 66.66%,#d94444 66.66%)}
.brand{gap:16px;letter-spacing:0;min-width:0}
.brand-stack{display:flex;flex-direction:column;align-items:flex-start;gap:4px;white-space:nowrap}
.atlas-wordmark{font-size:20px;font-weight:450;color:#1a1a1a;letter-spacing:-.55px;line-height:1}
.atlas-wordmark strong{font-weight:900;letter-spacing:-.8px}
.powered-row{display:flex;align-items:center;justify-content:flex-end;align-self:flex-end;gap:3px;font-size:6.5px;letter-spacing:.65px;font-weight:800;color:#818181;height:10px}
/* Original registered wordmark downloaded from the live ITS ITALY homepage.
   No retyped or screenshot-cropped letters; the asset has no tricolour stripe. */
.its-wordmark-original{display:block;width:32px;height:auto;flex:none;object-fit:contain}
.mini-brand-logo{position:relative;display:inline-block;width:84px;height:17px;flex-shrink:0}
.mini-brand-logo img{display:block;width:84px;height:17px;object-fit:contain;object-position:left;filter:brightness(18) invert(1);mix-blend-mode:multiply}
.mini-brand-logo strong{position:absolute;left:30px;top:4px;color:#151515;font-size:10px;line-height:1;letter-spacing:1.2px;font-weight:900}
.brand-logo-wrap{position:relative;display:flex;align-items:center;width:150px;height:32px;flex-shrink:0}
.its-logo{width:148px;height:30px;object-fit:contain;object-position:left;filter:brightness(18) invert(1);mix-blend-mode:multiply;flex-shrink:0}
.italy-wordmark{position:absolute;left:51px;top:8px;font-size:16px;font-weight:850;letter-spacing:2.1px;color:#101010}
.brand-divider{display:block;height:25px;width:1px;background:#dadada}
.product-name{font-size:11px;font-weight:500;letter-spacing:1.55px;white-space:nowrap;color:#333}
.product-name b{font-weight:900;color:#111}
.topbar-center{color:#555;font-size:11px}
.dot-live,.map-live-dot{background:#259252;box-shadow:0 0 0 3px #e4f4e9}
.edition{color:#777}
.btn-ghost{color:#171717;background:#fff;border:1px solid #cfcfcf;border-radius:7px}
.btn-ghost:hover{border-color:#111;background:#f7f7f7}
.intro{min-height:260px;background:#fff;color:#111;border-bottom:1px solid #e8e8e8;padding:43px 4% 42px;position:relative}
.intro::after{content:"";height:4px;position:absolute;bottom:-1px;left:4%;width:68px;background:linear-gradient(90deg,#218753 0 33.33%,#2f81c4 33.33% 66.66%,#d94743 66.66%)}
.intro h1{font-size:clamp(37px,3.1vw,56px);font-weight:760;letter-spacing:-2.2px;line-height:1.07;margin:16px 0 17px}
.intro h1 em{color:#171717;font-style:normal;font-family:inherit;font-weight:350;letter-spacing:-2.2px}
.intro p{color:#707070;max-width:680px;font-size:13px;line-height:1.65}
.intro-shortcuts{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin-top:17px}
.intro-shortcuts>span{font-size:10px;color:#888;line-height:1.4}
.euro-home-shortcut{display:flex;align-items:center;gap:12px;background:#181818;color:white;border:1px solid #181818;border-radius:7px;padding:9px 13px;font-size:12px;font-weight:750;cursor:pointer;transition:background .16s}
.euro-home-shortcut:hover{background:#343434}
.euro-home-shortcut span{font-size:11px;background:#fff;color:#111;border-radius:99px;min-width:23px;padding:3px 6px;text-align:center}
.its-network-shortcut{display:flex;align-items:center;gap:10px;background:#fff;color:#171717;border:1px solid #bbb;border-radius:7px;padding:9px 13px;font-size:12px;font-weight:750;cursor:pointer}
.its-network-shortcut:hover{background:#f3f5f4;border-color:#222}
.its-network-shortcut span{font-size:11px;background:#edf1ee;color:#171717;border-radius:99px;min-width:22px;padding:3px 6px;text-align:center}
.choice-grid button[data-value="its-active"],.choice-grid button[data-value="its-projects"]{flex-direction:row;gap:5px;font-size:10px;border-color:#b9cfc1;color:#1e4935}
.choice-grid button[data-value="its-active"].active{background:#247949;color:white;border-color:#247949}
.choice-grid button[data-value="its-projects"].active{background:#215e90;color:white;border-color:#215e90}
.choice-grid button[data-value="demanio"]{font-size:11px;border-color:#b9c0c8;color:#293d58}
.choice-grid button[data-value="demanio"].active{background:#213e58;color:white;border-color:#213e58}
.its-network-shortcut.active-shortcut{border-color:#a8ceba;color:#19613b}
.its-network-shortcut.active-shortcut span{background:#e2f4e9;color:#1d7745}
.its-network-shortcut.projects-shortcut{border-color:#b7cadd;color:#20577d}
.its-network-shortcut.projects-shortcut span{background:#e8f1f8;color:#20577d}
.its-network-note{grid-column:1/-1;background:#f7f7f7;border:1px solid #e2e2e2;border-radius:10px;color:#656565;font-size:11px;line-height:1.55;padding:13px 15px;margin-bottom:9px}
.its-network-note strong{display:block;color:#181818;font-size:12px;margin-bottom:5px}
.project-quicklinks{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid #e0e5e8}
.project-quicklinks span{font-size:10px;font-weight:750;color:#43505a;margin-right:2px}
.project-quicklinks button{font:inherit;font-size:10px;font-weight:700;color:#20577d;background:white;border:1px solid #c8d7e1;border-radius:5px;padding:5px 7px;cursor:pointer}
.project-quicklinks button:hover,.project-quicklinks button:focus-visible{background:#e7f1f8;outline-color:#215e90}
.project-themes{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:10px}
.project-themes span:first-child{display:block;flex-basis:100%;font-size:10px;font-weight:800;color:#313d46;margin-bottom:2px}
.project-themes span:not(:first-child){border:1px solid #d6e0e7;background:#fff;color:#486477;border-radius:99px;padding:4px 8px;font-size:10px;font-weight:650}
.project-stage-filter{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid #e1e6ea;border-radius:9px;padding:10px 12px;margin-bottom:10px}
.project-stage-filter label{font-size:11px;font-weight:750;color:#323c45}
.project-stage-filter select{font:inherit;font-size:11px;font-weight:650;max-width:64%;min-width:165px;padding:8px 26px 8px 10px;border:1px solid #c9d7e2;border-radius:6px;background:#f9fbfc;color:#214c6d;cursor:pointer}
.its-network-empty{grid-column:1/-1;padding:22px 14px;text-align:center;color:#687783;font-size:12px}
.project-stage-badge{display:inline-block;padding:6px 10px;border-radius:99px;background:#eef3f8;color:#285a80;font-size:11px;font-weight:800;margin:0 0 8px}
.project-stage-badge.stage-considering{background:#e8f4e9;color:#246a41}
.project-stage-badge.stage-concluded{background:#efefef;color:#555}
.project-stage-badge.stage-paused{background:#fbf2e8;color:#8a5a1f}
.project-stage-badge.stage-historic,.project-stage-badge.stage-framework{background:#edf0f9;color:#3b5286}
.project-stage-badge.stage-outreach{background:#f4f4f4;color:#767676}
.project-concept p{font-size:14px;line-height:1.65}
.project-position p{line-height:1.6}
.external-programme-note{grid-column:1/-1;padding:13px 15px;border:1px solid #cbdbe5;border-left:4px solid #2c6a94;background:#f3f8fc;color:#526475;border-radius:7px;font-size:11px;line-height:1.55;margin-bottom:10px}
.external-programme-note strong{display:block;color:#173f5b;font-size:12px;margin-bottom:4px}
.external-home-badge{font-size:9px!important;letter-spacing:.15px;font-weight:800;background:#e5eef8;color:#205580;padding:4px 6px;border-radius:4px}
.external-card-label{margin:8px 0 0;color:#245a7a;font-size:10px;line-height:1.4;font-weight:700}
.external-detail-notice{border-left:3px solid #2e719a;background:#eef6fb;color:#294d65;padding:11px 12px;margin:11px 0;line-height:1.5}
.its-network-card .card-meta .level-pill{background:#eceeed;color:#2a2a2a}
.its-network-card .amount-block strong{font-size:14px;color:#202020;line-height:1.25;letter-spacing:0}
.its-network-card.active-location{border-left:3px solid #268753}
.its-network-card.projects-location{border-left:3px solid #3778aa}
.crossing-preview{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}
.crossing-preview span{font-size:9px;line-height:1.3;background:#edf5ef;color:#31714d;border-radius:4px;padding:4px 6px}
.crossing-level{font-size:11px;color:#555;font-weight:800;letter-spacing:.6px;text-transform:uppercase;margin:15px 0 6px}
.crossing-entry{display:block;padding:9px 0;border-bottom:1px solid #ededed;color:#246a46;text-decoration:none;font-size:12px;font-weight:750}
.crossing-entry small{display:block;color:#707070;font-weight:450;font-size:10px;margin-top:3px;line-height:1.45}
.crossing-empty{color:#777;font-size:11px}
.demanio-note{background:#f4f7fa;border-color:#dfe5eb}
.demanio-card{border-left:3px solid #3b6b98}
.asset-tabs{display:flex;gap:5px;margin:0 0 14px}
.asset-tabs button{cursor:pointer;border:1px solid #d3dbe3;background:#fff;color:#536272;font-size:10px;font-weight:750;border-radius:6px;padding:8px 9px}
.asset-tabs button.active{background:#234e70;color:#fff;border-color:#234e70}
.intro .eyebrow{color:#22844d;letter-spacing:2px}
.atlas-beta-badge{display:inline-block;vertical-align:middle;margin-left:10px;border:1px solid #c9d8e4;border-radius:4px;background:#f0f6fa;color:#346b92;padding:4px 6px;letter-spacing:.7px;font-size:8px;font-weight:850}
.line-small{background:#237a4b}
.intro-stats{gap:24px}
.intro-stat{border-left:1px solid #ddd;padding-left:21px;max-width:160px}
.intro-stat strong{color:#151515;font-size:34px;font-weight:720}
.intro-stat span{color:#777;font-size:10.5px}
.intro-stat:nth-child(2) strong{color:#277d51}
.small-stat .source-check{background:#e0f2e8;color:#26844f}
.workspace{border-color:#ededed;grid-template-columns:298px minmax(410px,1fr) 374px}
.filters-panel,.results-panel{background:#fff}
.filters-panel{border-right:1px solid #e8e8e8}
.results-panel{border-left:1px solid #e8e8e8;max-height:1050px}
.section-index{color:#888;letter-spacing:1.65px}
.panel-heading h2,.map-header h2{color:#161616;font-weight:770;letter-spacing:-.5px}
.reset-link{color:#287a53}
.field-label,.filter-label{color:#333}
.filter-label span{color:#b4b4b4}
.search-wrap svg{stroke:#777}
.search-wrap input,.filters-panel select{background:#fff;border-color:#dedede;color:#181818;border-radius:7px}
.search-wrap input::placeholder{color:#a1a1a1}
.filter-divider{border-color:#ebebeb}
.segmented button,.choice-grid button,.topic-chips button{border:1px solid #e3e3e3;color:#666;border-radius:6px}
.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.segmented button.active,.choice-grid button.active,.topic-chips button.active{color:#111;border-color:#111;background:#f5f5f5;box-shadow:inset 0 0 0 1px #111}
.segmented button:hover,.choice-grid button:hover,.topic-chips button:hover{border-color:#257e52;color:#176841}
.tip-box{border:1px solid #e8eee9;background:#fafcfb;border-radius:8px}
.tip-box p{color:#777}.tip-box b{color:#262626}.tip-symbol{color:#287d50;border-color:#9fcbac}
.map-column{background:#fbfbfb;padding:25px 25px 17px}
.map-actions{display:flex;align-items:center;gap:12px;margin:-5px 0 14px;flex-wrap:wrap}
.map-mode{display:flex;gap:2px;padding:3px;border:1px solid #dedede;border-radius:9px;background:#f4f4f4}
.map-mode button{background:transparent;border:0;color:#6b6b6b;font-weight:750;letter-spacing:.1px;font-size:10px;padding:8px 14px;border-radius:6px}
.map-mode button:hover{color:#111}
.map-mode button.active{background:#fff;box-shadow:0 1px 5px #00000013;color:#191919}
.map-current-view{font-size:10px;font-weight:650;color:#777;max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.candidate-toggle{display:flex;align-items:center;gap:6px;color:#777;font-size:9px;line-height:1.3;font-weight:650;cursor:pointer}
.candidate-toggle[hidden]{display:none}
.candidate-toggle input{accent-color:#1f6ea8;width:13px;height:13px;margin:0}
.expand-map{margin-left:auto;background:#fff;border:1px solid #d9d9d9;padding:9px 12px;color:#292929;font-size:10px;font-weight:750;border-radius:8px}
.expand-map:hover,.expand-map[aria-pressed=true]{background:#151515;color:#fff;border-color:#151515}
.map-level{position:absolute;top:114px;left:22px;z-index:3;color:#7f8c92;font-size:8px;font-weight:850;letter-spacing:1.5px;pointer-events:none}
.map-header-right{color:#858585}
.map-stage{background:#f6f8f9;border:1px solid #e6e9ea;border-radius:12px;box-shadow:none;min-height:700px}
.map-stage::before{background-image:radial-gradient(#cbd5d7 .65px,transparent .65px);opacity:.5}
.map-stage::after{border-color:#e5e7e8}
.map-compass{border-color:#e2e2e2;color:#555;background:#fff}
.map-compass span{color:#333}
#regionLayer path{fill:#e4e8e7;stroke:#fff;stroke-width:1.25}
#regionLayer path.has-data{fill:#b7d5c5}
#regionLayer path.has-open{fill:#9ec8b3}
#regionLayer path.selected{fill:#6ba48a;stroke:#155a3d;stroke-width:2.4}
#regionLayer path:hover{fill:#80b5a0;stroke:#217953}
#mapPoints .pin-ring{fill:#ffedec;stroke:#fff}
#mapPoints .pin-core{fill:#bf4e4b}
#mapPoints .pin-label{fill:#262626;stroke:#f8f8f8}
#mapPoints .town-pin{cursor:pointer;outline:none}
#mapPoints .town-ring{fill:#d5ecf6;stroke:#fff;stroke-width:1.1}
#mapPoints .town-core{fill:#287eb7}
#mapPoints .town-pin:hover .town-ring,#mapPoints .town-pin:focus .town-ring{fill:#186da4;stroke:#fff}
.zoom-hint{position:absolute;top:65px;left:22px;z-index:5;display:flex;align-items:center;gap:8px;background:#fffdfaf2;border:1px solid #e8ebeb;border-radius:7px;padding:8px 10px;box-shadow:0 4px 14px #00000009;color:#777;font-size:10px;font-weight:650;pointer-events:none}
.zoom-hint-icon{color:#2a7eb7;font-size:18px;font-weight:400;line-height:1}
#mapPoints .map-cluster,#mapPoints .map-single{cursor:pointer;outline:none}
#mapPoints .cluster-ring{fill:#206fa8;stroke:white;stroke-width:1.8;filter:url(#softshadow)}
#mapPoints .cluster-count{font-weight:850;text-anchor:middle;fill:#fff;pointer-events:none}
#mapPoints .map-cluster:hover .cluster-ring,#mapPoints .map-cluster:focus .cluster-ring{fill:#155c91;stroke:#fff;stroke-width:2}
#mapPoints .single-ring{fill:#d3e8f5;stroke:#fff;stroke-width:1.6}
#mapPoints .single-core{fill:#206fa8}
#mapPoints .home-marker .single-ring{fill:#d3e8f5}
#mapPoints .home-marker .single-core{fill:#206fa8}
#mapPoints .home-glyph{fill:#fff;font-weight:900;text-anchor:middle;pointer-events:none}
#mapPoints .its-active-marker .cluster-ring{fill:#237d4a}
#mapPoints .its-active-marker .single-ring{fill:#d8eee0;stroke:#237d4a;stroke-width:2.8}
#mapPoints .its-active-marker .single-core{fill:#237d4a}
#mapPoints .its-projects-marker .cluster-ring{fill:#497d9f}
#mapPoints .its-projects-marker .single-ring{fill:#fff;stroke:#39759f;stroke-width:3.3;stroke-dasharray:3 2}
#mapPoints .its-projects-marker .single-core{fill:#39759f}
#mapPoints .its-active-marker:hover .cluster-ring,#mapPoints .its-active-marker:focus .cluster-ring{fill:#0d6536}
.legend-swatch.active-pin{background:#237d4a;border:2px solid #d9eee2;width:12px;height:12px;border-radius:50%}
.legend-swatch.projects-pin{background:white;border:2px dashed #39759f;width:12px;height:12px;border-radius:50%}
.map-tooltip{background:#181818;color:#fff;border-radius:5px}
.national-bubble{border-color:#e0e0e0;border-radius:8px;box-shadow:0 5px 18px #0000000b;color:#111}
.national-bubble:hover{border-color:#297d54}
.national-icon{background:#e7f4eb;color:#247849}
.national-bubble small{color:#777}
.map-controls{border-color:#e4e4e4;border-radius:7px}
.map-controls button{border-color:#e8e8e8;color:#444}.map-controls button:hover{background:#f2f6f3}
.map-legend{border:1px solid #e3e3e3;background:#ffffffea;color:#777;align-items:center}
.legend-swatch.filled{background:#9dc9b2}.legend-swatch.pin{background:#206fa8;border-color:#d3e8f5}.legend-swatch.outline{border-color:#206c49}
.legend-swatch.cluster{width:16px;height:16px;border-radius:50%;background:#206fa8;display:grid;place-items:center}
.legend-swatch.cluster::before{content:'3';font-size:9px;color:white;font-weight:900}
.map-credit{color:#999}
.map-footnote{color:#888}.map-footnote strong{color:#333}.pulse-icon{background:#e7f4ea;color:#238352}
.results-panel .result-heading{padding:26px 22px 0}
.result-count-chip{background:#f5f8f6;color:#277f4d;border-color:#d7e7dd}
.view-tabs{display:grid;grid-template-columns:1fr 1fr;padding:0 22px;gap:10px;margin-bottom:15px}
.view-tabs button{font-size:12px;font-weight:750;color:#777;border:1px solid #e3e3e3;border-radius:7px;background:#fff;padding:11px 9px;text-align:center;white-space:nowrap}
.view-tabs button span{font-size:10px;color:#888;margin-left:4px}
.view-tabs button.active{background:#181818;color:#fff;border-color:#181818}
.view-tabs button.active span{color:#b4e2c3}
.results-subbar{border-color:#eee;color:#777}
.results-list{padding:17px 14px 18px 19px;scrollbar-color:#ddd transparent}
.result-card{border:1px solid #e7e7e7;border-radius:9px;box-shadow:none;padding:16px}
.result-card:hover{border-color:#aaa;box-shadow:0 8px 25px #0000000a}
.result-card h3{color:#191919;font-size:15px}
.card-location,.card-deadline{color:#777}.loc-icon{color:#287e56}
.card-divider{border-color:#eee}
.amount-block strong{color:#237e50}
.amount-block small{color:#888}
.card-arrow{background:#f6f6f6;color:#333;border-color:#e4e4e4}
.card-deadline b{color:#444}
.status-pill.aperto,.status-pill.vigente{background:#e2f2e7;color:#187143}
.status-pill.futuro{background:#e5effb;color:#28629a}
.status-pill.verifica{background:#fff0e0;color:#9e5b16}
.status-pill.chiuso{background:#f0f0f0;color:#666}
.status-pill.elenco{background:#e5f4e8;color:#1e744a}
.purpose-pill{font-size:9px;color:#2878a5;background:#edf5fa;border-radius:15px;padding:4px 7px;font-weight:700}
.result-card .locate-button{background:#f3f7fa;border:1px solid #d7e7f0;border-radius:6px;padding:6px 9px;font-size:9px;color:#246b9b;font-weight:750;margin-top:10px}
.result-card .locate-button:hover{background:#e5f1f9}
.level-pill{background:#f4f4f4;color:#777}
.type-pill{background:#edf5f9;color:#306c93}
.town-explainer{background:#f7f9fa;border-left:3px solid #297ab7;padding:12px 13px;color:#777;font-size:11px;line-height:1.6;margin:0 0 14px;border-radius:2px 7px 7px 2px}
.town-explainer strong{color:#202020;display:block}
.town-programme{display:flex;gap:10px;justify-content:space-between;align-items:center;font-size:11px;line-height:1.5}
.town-programme b{font-size:11px;color:#333;font-weight:650}.town-programme span{white-space:nowrap;color:#237d50;font-weight:800}
.town-coverage{margin-top:12px;color:#888;font-size:9px;text-transform:uppercase;letter-spacing:.5px}
.load-more{display:block;width:100%;padding:13px 10px;color:#fff;background:#1d1d1d;border:0;border-radius:8px;font-weight:700;margin-bottom:18px}
.load-more:hover{background:#2b7b53}
.results-footer{border-color:#eee;color:#999}
.site-footer{background:#141414;color:#bdbdbd;border-top:3px solid #238551}
.modal-backdrop{background:#1515159c}
.about-modal h2,.detail-modal h2{color:#111;font-family:inherit;font-weight:700}
.about-modal p,.detail-section p,.detail-section li{color:#666}
.detail-eyebrow{color:#277f4e}
.detail-amount{background:#f6faf7;border-color:#e3efe6;border-radius:9px}
.detail-amount strong{color:#1e7849}
.detail-amount span{color:#777}
.detail-section{border-color:#ececec}.detail-section h3{color:#333}
.detail-warning{color:#745c3a;background:#fff8ed}
.official-link,.primary-action{background:#161616;border-radius:7px}.official-link:hover,.primary-action:hover{background:#29794e}
.detail-back{color:#277f51}
.detail-locate{margin-top:13px;width:100%;border:1px solid #c8dbe7;color:#176ba0;background:#f0f7fa;border-radius:7px;padding:12px;font-size:12px;font-weight:750}
.detail-locate:hover{background:#dfeefa}
.detail-consult{display:block;width:100%;padding:13px 14px;margin-top:17px;border:0;border-radius:8px;background:#20764b;color:#fff;font-size:12px;font-weight:850;text-align:center;cursor:pointer}
.detail-consult:hover{background:#125c36}
.detail-town-context{font-size:12px;padding:12px;border:1px solid #d2e9f5;background:#f2f9fd;border-radius:7px;color:#35677c;margin:15px 0}
body.map-expanded .intro{display:none}
body.map-expanded .workspace{display:block}
body.map-expanded .filters-panel,body.map-expanded .results-panel{display:none}
body.map-expanded .map-column{padding:20px 3%;min-height:calc(100vh - 84px)}
body.map-expanded .map-stage{height:calc(100vh - 205px);min-height:580px;flex:none}
body.map-expanded .map-footnote{max-width:880px}
@media(max-width:1300px){.workspace{grid-template-columns:255px minmax(340px,1fr) 350px}.map-column{padding:23px 14px}.product-name{font-size:10px}}
@media(max-width:1080px){.workspace{grid-template-columns:270px minmax(0,1fr)}.results-panel{max-height:none}.results-list{grid-template-columns:repeat(2,minmax(0,1fr))}.town-explainer,.load-more{grid-column:1/-1}}
@media(max-width:700px){.topbar{height:70px;padding:0 14px}.atlas-wordmark{font-size:16px}.powered-row{font-size:6px;letter-spacing:.55px;gap:3px}.its-wordmark-original{width:29px}.topbar-actions{gap:5px}.btn-ghost{font-size:10px;padding:8px}.btn-ghost span{display:none}.intro{padding:30px 20px 34px}.intro h1{font-size:37px;letter-spacing:-1.4px}.intro h1 em{letter-spacing:-1.4px}.intro-stats{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.intro-stat{padding-left:10px;max-width:110px}.intro-stat strong{font-size:25px}.intro-stat span{font-size:9px}.intro-stat.small-stat{display:none}.map-column{padding:22px 12px}.map-stage{min-height:520px}.zoom-hint{top:56px;left:10px;font-size:9px}.map-actions{gap:7px}.map-mode button{padding:7px 9px}.map-current-view{font-size:9px;max-width:100px}.expand-map{padding:8px 9px}.map-level{top:100px;left:12px}.results-list{grid-template-columns:1fr}.view-tabs{padding:0 18px}.town-explainer,.load-more{grid-column:auto}body.map-expanded .map-stage{height:calc(100vh - 180px);min-height:460px}body.map-expanded .map-column{min-height:calc(100vh - 70px)}}

/* Editorial assurance and optional advisory journey. No external form backend. */
.review-banner{display:flex;align-items:center;gap:12px;margin-top:22px;max-width:760px;padding:11px 12px;background:#f6faf8;border:1px solid #dae9e1;border-radius:9px;color:#5b6f65;font-size:11px;line-height:1.55}
.review-banner b{color:#216b44}
.review-indicator{width:26px;height:26px;flex:none;display:grid;place-items:center;border-radius:50%;background:#257b51;color:#fff;font-size:14px;font-weight:800}
.review-banner button{flex:none;margin-left:auto;border:1px solid #a8c9b5;background:#fff;border-radius:6px;padding:10px 12px;color:#226b46;font-size:10px;font-weight:800;cursor:pointer}
.review-banner button:hover{background:#e7f5ed}
.seven-percent-note{border:1px solid #d7e4eb;border-left:3px solid #287eaf;border-radius:7px;padding:14px;margin-top:17px;background:#f7fbfe}
.seven-percent-note>span{display:block;color:#427896;letter-spacing:1px;font-size:9px;font-weight:800;margin-bottom:5px}
.seven-percent-note strong{display:block;font-size:16px;color:#172c3c;letter-spacing:-.4px}
.seven-percent-note p{font-size:10px;color:#63717a;line-height:1.6;margin:8px 0}
.seven-percent-note button{background:transparent;border:0;color:#226b9b;font-size:10px;font-weight:800;padding:3px 0;text-align:left;cursor:pointer}
.seven-percent-note button:hover{text-decoration:underline}
.atlas-advisor{position:fixed;right:20px;bottom:20px;z-index:45;display:flex;align-items:flex-end;flex-direction:column;gap:11px;font-family:inherit}
.advisor-launch{display:flex;align-items:center;gap:11px;background:#1b1b1b;color:#fff;padding:10px 13px 10px 10px;box-shadow:0 10px 30px #00000035;border:1px solid #373737;border-radius:13px;cursor:pointer;min-width:255px;text-align:left;transition:transform .18s,box-shadow .18s}
.advisor-launch:hover{transform:translateY(-2px);box-shadow:0 12px 36px #00000048}
.advisor-launch-mark{display:grid;place-items:center;width:36px;height:36px;background:#258252;color:#fff;border-radius:10px;font-size:22px;flex:none}
.advisor-launch b{display:block;font-size:12px;letter-spacing:.1px}
.advisor-launch small{display:block;font-size:10px;color:#bdc8c0;margin-top:3px}
.advisor-chevron{margin-left:auto;color:#83d1a5;font-weight:800;font-size:16px}
.advisor-panel{width:min(390px,calc(100vw - 24px));max-height:min(740px,calc(100dvh - 106px));background:white;border:1px solid #e1e8e4;border-radius:17px;box-shadow:0 24px 75px #132e2345;overflow:hidden;display:flex;flex-direction:column}
.advisor-panel[hidden]{display:none}
.advisor-header{background:#1b2922;color:#fff;padding:19px 19px 17px;display:flex;justify-content:space-between;align-items:start;gap:12px;border-bottom:3px solid #2c985e}
.advisor-header h2{font-size:23px;letter-spacing:-.8px;line-height:1.15;margin:7px 0 0;color:#fff}
.advisor-overline{font-size:9px;letter-spacing:1.6px;font-weight:850;color:#a9d5bb}
.advisor-header button{background:#ffffff19;border:1px solid #ffffff44;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;color:#fff;font-size:20px;cursor:pointer;flex:none}
.advisor-conversation{overflow-y:auto;padding:18px 19px 15px;scrollbar-color:#cbd7d0 transparent}
.advisor-bubble{color:#334d41;background:#eaf5ee;border-radius:12px 12px 12px 2px;font-size:12px;line-height:1.65;padding:13px 14px;margin:0 0 19px}
#advisorForm{display:flex;flex-direction:column;gap:6px}
#advisorForm label{font-size:10px;font-weight:850;letter-spacing:.3px;color:#28352d;margin-top:12px}
#advisorForm label span{color:#88928b;font-weight:500}
#advisorForm select,#advisorForm input{border:1px solid #dae2dc;border-radius:8px;background:#fff;color:#202820;min-height:42px;padding:10px 11px;width:100%;font-size:12px;outline-color:#31835a}
#advisorForm input::placeholder{color:#a1aaa4}
.advisor-preview{border:1px solid #d8e9de;border-left:3px solid #29965b;background:#f6faf7;border-radius:7px;margin-top:15px;padding:11px 12px}
.advisor-preview span{display:block;font-size:9px;letter-spacing:1px;font-weight:850;color:#37865b}
.advisor-preview strong{display:block;font-size:13px;color:#26352b;margin-top:3px}
.advisor-preview small{display:block;color:#697b6e;margin-top:4px;line-height:1.5}
.advisor-send{background:#1c1f1d;color:#fff;border:0;border-radius:8px;padding:13px 14px;font-size:12px;font-weight:850;cursor:pointer;margin-top:8px;display:flex;align-items:center;justify-content:space-between}
.advisor-send:hover{background:#237248}
.advisor-register{color:#236d49;text-decoration:none;font-size:11px;font-weight:750;text-align:center;padding:6px}
.advisor-register:hover{text-decoration:underline}
.advisor-privacy{color:#8b938d;font-size:9px;line-height:1.5;padding-top:6px;border-top:1px solid #eef0ee;margin:0}
@media(max-width:840px){.review-banner{flex-wrap:wrap}.review-banner button{margin-left:38px}.advisor-panel{max-height:calc(100dvh - 98px)}}
@media(max-width:700px){.atlas-advisor{right:10px;bottom:10px}.advisor-launch{min-width:218px}.advisor-panel{width:min(380px,calc(100vw - 20px));max-height:calc(100dvh - 91px)}.review-banner{margin-top:17px;padding:10px}.review-banner button{margin-left:37px}}
