:root{--ink:#15231c;--muted:#64726a;--paper:#f7f6f0;--paper2:#eef2eb;--card:#fffefa;--line:#dbe2da;--green:#15583c;--green2:#103d2d;--green3:#2f7557;--gold:#e5b45e;--warn:#fff3dc;--blue:#2b677e;--shadow:0 10px 30px rgba(24,49,36,.07)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.wrap{width:min(1160px,calc(100% - 34px));margin:0 auto}.topbar{position:sticky;top:0;z-index:1000;background:rgba(16,61,45,.97);color:#fff;backdrop-filter:blur(10px);box-shadow:0 1px 0 rgba(255,255,255,.08)}.navwrap{min-height:68px;display:flex;align-items:center;gap:26px}.brand{font-weight:860;letter-spacing:-.02em;line-height:1.06;cursor:pointer}.brand small{display:block;margin-top:4px;text-transform:uppercase;font-size:9px;letter-spacing:.14em;color:#c5d9ce}.nav{margin-left:auto;display:flex;gap:5px;align-items:center;overflow:auto}.nav a{white-space:nowrap;padding:9px 11px;border-radius:9px;color:#dfece5;font-size:14px;font-weight:700}.nav a:hover,.nav a.active{background:#ffffff14;color:#fff}.hero{background:radial-gradient(circle at 80% 10%,#6b927b 0,#285d45 26%,#123d2f 65%);color:#fff;padding:58px 0 64px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:850;color:#5b7567}.hero .eyebrow{color:#c9dbd1}.hero h1,.pagehero h1,h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em}.hero h1{font-size:clamp(43px,7vw,72px);line-height:.96;margin:11px 0 18px;max-width:800px}.hero p{font-size:18px;max-width:780px;color:#e5eee8}.free-line{font-size:14px!important;color:#d6e5dc!important}.pagehero{padding:42px 0 34px;background:#e8eee7;border-bottom:1px solid #d4ddd5}.pagehero h1{font-size:clamp(38px,6vw,58px);line-height:1;margin:8px 0 12px}.pagehero p{max-width:840px}.section{padding:44px 0}.section.alt{background:var(--paper2)}.section h2{font-size:31px;margin:0 0 8px}.head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}.muted,.fine,.meta{color:var(--muted)}.fine{font-size:12px}.meta{font-size:12px}.under{text-decoration:underline;color:#21634b}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card,.panel,.resultcard,.mapcard{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:0 1px 0 rgba(0,0,0,.02)}.click{cursor:pointer;transition:.15s ease}.click:hover{transform:translateY(-1px);border-color:#acc0b2;box-shadow:var(--shadow)}.card h3,.mapcard h3{margin:7px 0;font-size:18px;line-height:1.25}.card p{margin:8px 0}.tagrow{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.tag{display:inline-block;border-radius:999px;background:#e8efe9;color:#315844;padding:4px 9px;font-size:11px;font-weight:780}.tag.warn{background:#fff0d4;color:#795322}.tag.safety1{background:#e2f1e5;color:#21643a}.tag.safety2{background:#fff0d4;color:#795322}.tag.safety3,.tag.safety4{background:#f6ddd5;color:#8a3f30}.searchbox{position:relative;display:flex;gap:8px;max-width:850px;margin-top:22px}.searchbox input{flex:1;padding:14px 15px;border-radius:11px;border:1px solid #ced8d0;background:#fff;font-size:16px}.hero .searchbox input{border:0;box-shadow:0 12px 35px #0003}.btn{border:0;border-radius:10px;background:var(--green);color:#fff;padding:11px 15px;font-weight:800;cursor:pointer}.hero .btn,.qa .btn{background:var(--gold);color:#213128}.btn:hover{filter:brightness(.97)}.searchresults{display:none;position:absolute;top:55px;left:0;right:70px;background:#fff;color:var(--ink);z-index:1200;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 60px #0003;max-height:400px;overflow:auto}.searchresult{display:block;padding:10px 13px;border-bottom:1px solid #edf1ed}.searchresult:hover{background:#f1f4f0}.searchresult small{text-transform:uppercase;letter-spacing:.09em;color:#718078}.planner,.filters{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px}.filters{grid-template-columns:repeat(3,minmax(0,1fr))}.field label{display:block;margin:0 0 5px;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.1em;color:#526259}.field select{width:100%;padding:11px 12px;border-radius:10px;border:1px solid #ccd6ce;background:#fff}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.stat{background:#eef2ed;border-radius:10px;padding:12px}.stat span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#6b786f}.stat b{display:block;margin-top:3px;font-size:17px}.columns{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(260px,.8fr);gap:28px;align-items:start}.side{position:sticky;top:92px}.factgroup{margin-top:30px}.factgroup h3{font-family:Georgia,"Times New Roman",serif;font-size:24px;margin:0 0 12px}.fact{background:#fffdf8;border-left:3px solid #8ba696;padding:12px 14px;margin:10px 0;border-radius:0 10px 10px 0}.fact p{margin:4px 0}.fact .source{font-size:12px;color:var(--blue);text-decoration:underline}.warning{padding:12px 14px;background:var(--warn);border:1px solid #ead3a8;border-radius:10px;color:#68491e}.qa{background:#153d30;color:#fff;border-radius:16px;padding:22px}.qa p{color:#dce8e1}.qa textarea{width:100%;min-height:110px;border:0;border-radius:10px;padding:13px;resize:vertical}.qa-actions{margin-top:8px;display:flex;gap:10px;align-items:center}.answer{display:none;margin-top:15px;padding:16px;border-radius:10px;background:#ffffff13;white-space:pre-wrap}.answer-meta{font-size:11px;margin-top:10px;color:#c6d9ce}.sourcechips{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.sourcechips a{font-size:11px;text-decoration:underline}.map{height:610px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#dfe8df}.mapfallback{display:none;padding:16px;background:#fff;border:1px dashed #c9d4cb;border-radius:11px}.maplist{margin-top:18px}.mapcard p{margin:6px 0}.empty{padding:18px;background:#fff;border:1px dashed #c8d2ca;border-radius:12px;color:#657269}.about{display:grid;grid-template-columns:160px 1fr;gap:26px;align-items:start}.about img{width:160px;height:160px;object-fit:cover;border-radius:18px;border:4px solid #fff;box-shadow:var(--shadow)}.crumb{font-size:12px;color:#596a61}.loading{padding:70px 0;color:#68766e}.list{display:grid;gap:10px}.listrow{background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px 14px}.footergrid{display:grid;grid-template-columns:2fr 1fr;gap:30px}footer{margin-top:36px;padding:34px 0;background:#0f3025;color:#cad9d1}footer p{margin:8px 0}footer .fine{color:#9fb5aa}.hide{display:none!important}
@media(max-width:850px){.grid,.grid.two,.columns,.footergrid,.about,.stats,.planner,.filters{grid-template-columns:1fr}.navwrap{align-items:flex-start;flex-direction:column;padding:13px 0 10px;gap:9px}.nav{width:100%;margin-left:0}.hero{padding-top:42px}.side{position:static}.map{height:500px}.searchresults{right:0}}
@media(max-width:560px){.wrap{width:calc(100% - 24px)}.hero h1{font-size:44px}.nav{gap:2px}.nav a{padding:8px 8px;font-size:12px}.searchbox{flex-direction:column}.searchresults{top:52px}.head{align-items:flex-start;flex-direction:column}.about img{width:120px;height:120px}}

/* Connected visual guide components */
.home-map{height:460px;margin-top:12px;box-shadow:var(--shadow)}
.routecard{padding:0;overflow:hidden}.routecard-media{position:relative;height:190px;background:#dce7df}.routecard-media img{display:block;width:100%;height:100%;object-fit:cover}.routecard-body{padding:18px}
.photo-credit{position:absolute;right:8px;bottom:7px;max-width:calc(100% - 16px);padding:4px 7px;border-radius:6px;background:#102a22d9;color:#fff;font-size:9px;line-height:1.25}.photo-credit a{text-decoration:underline}
.route-photo-feature{padding:24px 0 0}.route-photo-feature figure{margin:0;position:relative;border-radius:18px;overflow:hidden;background:#dfe8df;box-shadow:var(--shadow)}.route-photo-feature img{display:block;width:100%;height:min(48vw,520px);min-height:260px;object-fit:cover}.route-photo-feature figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;gap:14px;align-items:end;padding:36px 16px 12px;background:linear-gradient(transparent,#071b14d9);color:#fff}.route-photo-feature figcaption>span:first-child{font-family:Georgia,"Times New Roman",serif;font-size:20px}.route-photo-feature .photo-credit{position:static;background:transparent;padding:0;text-align:right}
.countries-intro{max-width:760px;font-size:17px}.country-region{padding:18px 0 34px;border-bottom:1px solid var(--line)}.country-region:last-child{border-bottom:0}.country-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.countryfeature{padding:0;overflow:hidden}.countryfeature img{display:block;width:100%;height:175px;object-fit:cover}.countryfeature-body{padding:16px}.countryfeature h3{margin:5px 0}.countryfeature .photo-credit{position:static;background:transparent;color:var(--muted);padding:8px 0 0}.countryfeature .photo-credit a{color:var(--green)}
.country-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:16px}.countryrow{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:12px 13px;background:#fff;border:1px solid var(--line);border-radius:11px}.countryflag{font-size:22px}.countryrow small{display:block;color:var(--muted);font-size:11px}.countryarrow{color:var(--green);font-weight:900}.photo-credits{display:grid;gap:8px}.photo-credit-row{padding:10px 0;border-bottom:1px solid var(--line)}
@media(max-width:850px){.country-feature-grid,.country-list{grid-template-columns:1fr}.home-map{height:390px}.route-photo-feature figcaption{position:static;background:var(--green2);align-items:start;flex-direction:column}.route-photo-feature .photo-credit{text-align:left}}
@media(max-width:560px){.home-map{height:330px}.routecard-media{height:165px}.route-photo-feature img{height:250px;min-height:0}}
.routecard-photo{display:block;height:190px;background:#dce7df}.routecard-photo img{display:block;width:100%;height:100%;object-fit:cover}.routecard-credit{position:relative;height:0}.routecard-credit .photo-credit{bottom:7px;transform:translateY(-100%)}
.routecard,.routecard-body{min-width:0}.routecard-body{display:block;text-align:center}.routecard-body .tagrow{justify-content:center}.routecard-body h3,.routecard-body p{overflow-wrap:anywhere;word-break:normal}.routecard-body>p:not(.meta){max-width:38ch;margin-left:auto;margin-right:auto;line-height:1.48}.country-selection{display:flex;align-items:center;gap:12px;margin:18px 0;padding:14px 16px;border:1px solid var(--line);border-radius:13px;background:#fffefa}.country-selection b{font-family:Georgia,"Times New Roman",serif;font-size:24px}.country-selection p{margin:3px 0}.browse-regions{margin-top:24px}
.country-feature{position:relative;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:var(--card);box-shadow:0 1px 0 rgba(0,0,0,.02)}.country-feature-link{position:relative;display:block;height:210px}.country-feature-link img{display:block;width:100%;height:100%;object-fit:cover}.country-feature-shade{position:absolute;inset:0;background:linear-gradient(transparent 35%,#071b14dc)}.country-feature-copy{position:absolute;left:16px;right:16px;bottom:15px;color:#fff;display:grid;grid-template-columns:auto 1fr;gap:0 10px;align-items:center}.country-feature-copy .countryflag{grid-row:1/3}.country-feature-copy b{font-family:Georgia,"Times New Roman",serif;font-size:22px}.country-feature-copy small{color:#e3eee7}.country-feature-credit{position:absolute;right:7px;top:7px}.country-feature-credit .photo-credit{position:static;display:block}.photo-credit-list{display:grid;gap:8px}
@media(max-width:560px){.routecard-photo{height:165px}.country-feature-link{height:190px}}

/* Field-guide structure */
.guide-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.btn.ghost{background:#e8efe9;color:#18523b}.guide-nav{position:sticky;top:68px;z-index:40;border-bottom:1px solid var(--line);background:#fffdfa}.guide-nav .wrap{display:flex;gap:16px;overflow:auto;padding:10px 0}.guide-nav a{white-space:nowrap;font-size:13px;font-weight:760;color:#2b664e}.notice-section{padding:20px 0}.guide-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:32px;align-items:start}.guide-aside{position:sticky;top:126px}.guide-section{padding:30px 0;border-bottom:1px solid var(--line);scroll-margin-top:120px}.guide-section:first-child{padding-top:0}.guide-section:last-child{border-bottom:0}.guide-section h2{font-size:29px}.guide-units{display:grid;gap:12px}.guide-unit{padding:16px 18px;border-left:4px solid var(--green3);border-radius:0 12px 12px 0;background:#edf3ed}.guide-unit h3{margin:0 0 6px;font-size:18px}.guide-unit p{margin:7px 0}.segments{display:grid;gap:9px}.segment-card{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:15px;border:1px solid var(--line);border-radius:13px;background:#fffefa}.segment-number{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--green2);color:#fff;font-weight:850}.segment-card h3{margin:3px 0;font-size:18px}.guide-facts{display:grid;gap:10px}.more-facts{margin-top:10px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fafbf8}.more-facts summary{cursor:pointer;color:#256148;font-weight:760}.more-facts .fact{margin-top:12px}.question-chips{display:flex;gap:9px;flex-wrap:wrap}.question-chips a{display:block;padding:8px 11px;border:1px solid #b8cabb;border-radius:999px;background:#f2f6f1;font-size:13px;text-decoration:none}.question-chips a:hover{border-color:#69947d;background:#e5efe6}.mapcard h3 a{color:inherit;text-decoration:underline;text-decoration-color:#b7c9bb;text-underline-offset:3px}
.guide-warning{margin:0 0 12px;padding:10px 13px;border-radius:10px;background:var(--warn);border:1px solid #ead3a8;color:#68491e;font-size:14px}.more-facts .source{display:block;margin-top:10px;font-size:13px;color:var(--blue);text-decoration:underline}.answer-evidence{margin-top:10px;font-size:12px}.answer-evidence summary{cursor:pointer;color:#e6f1e9}
.guide-unit-group{display:grid;gap:10px}.guide-unit-group+.guide-unit-group{margin-top:10px}.country-topic-copy{max-width:78ch}.country-topic-copy p{margin:0 0 16px}.country-topic-copy .meta{display:block;margin-top:5px}.country-topic-label{color:#2b664e;font-weight:680}.country-topic-subhead{margin:22px 0 9px;font-size:16px;letter-spacing:.01em}
@media(max-width:850px){.guide-layout{grid-template-columns:1fr}.guide-aside{position:static}.guide-nav{top:111px}.guide-nav .wrap{width:calc(100% - 24px)}.guide-section{scroll-margin-top:150px}}
@media print{.topbar,footer,.guide-nav,.guide-actions,.searchbox,.guide-aside,.route-photo-feature{display:none!important}.pagehero{padding:18px 0;background:#fff;border:0}.section{padding:18px 0}.guide-layout{display:block}.guide-section{break-inside:avoid}.more-facts{display:none}.map{display:none}}

/* Home field-guide entry points */
.home-topics{margin-top:34px;padding-top:28px;border-top:1px solid var(--line)}
.topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.topic-bin{display:flex;min-height:176px;flex-direction:column;align-items:flex-start;padding:17px;border:1px solid #c7d5c9;border-radius:15px;background:#f9fcf8;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.topic-bin:hover{transform:translateY(-2px);border-color:#789d83;box-shadow:var(--shadow)}
.topic-bin h3{margin:13px 0 6px;font-family:Georgia,"Times New Roman",serif;font-size:21px;letter-spacing:-.02em}
.topic-bin p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}
.topic-bin .under{margin-top:auto;padding-top:14px;font-size:13px;font-weight:750}
.topic-bin-count{display:inline-block;padding:4px 8px;border-radius:999px;background:#dceadf;color:#2b6247;font-size:11px;font-weight:800}
@media(max-width:850px){.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.topic-grid{grid-template-columns:1fr}.topic-bin{min-height:0}}

/* Quieter reader-facing emphasis: links stay clear without underlining every sentence. */
.under{text-decoration:none;border-bottom:1px solid transparent}.under:hover{border-bottom-color:currentColor}.btn{font-weight:700}.nav a{font-weight:650}.tag{font-weight:700}
.browse-notice{max-width:760px;margin:0 0 22px;padding:10px 13px;border-left:3px solid #d2b16e;color:#5d5645;background:#f7f2e6;font-size:14px}
.routecard-photo{height:158px}.routecard-body{padding:15px}.routecard-body>p:not(.meta){line-height:1.42}@media(max-width:560px){.routecard-photo{height:138px}}
.answer-notice{margin:15px 0 0;padding:9px 11px;border-left:2px solid #e5b45e;background:#ffffff12;color:#e9efe9;font-size:13px}
.home-ask{margin-top:30px;padding:22px;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:rgba(7,35,25,.3);box-shadow:0 18px 44px rgba(0,0,0,.12)}.home-ask .head{margin-bottom:12px}.home-ask h2{margin:4px 0 0;font-size:28px;color:#fff}.home-ask .under{color:#d9eadf}.home-ask .qa{padding:0;background:transparent}.home-ask .qa textarea{min-height:86px}.ask-examples{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.ask-examples a{padding:6px 10px;border:1px solid rgba(255,255,255,.25);border-radius:999px;color:#e6f2e9;font-size:12px}.ask-examples a:hover{background:rgba(255,255,255,.12)}@media(max-width:560px){.home-ask{margin-top:22px;padding:16px}.home-ask h2{font-size:24px}}

/* Map confidence is a location-evidence signal, never an availability claim. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.map-filters{grid-template-columns:repeat(4,minmax(0,1fr))}
.map-legend{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:16px 0 12px;padding:13px 15px;border:1px solid var(--line);border-radius:13px;background:#fbfcf8}.map-legend strong{display:block;font-size:14px}.map-legend p{margin:3px 0 0;max-width:46ch}.confidence-key{display:flex;gap:8px 13px;flex-wrap:wrap;justify-content:flex-end}.confidence-key>span{display:inline-flex;align-items:center;gap:6px;max-width:29ch;color:var(--muted);font-size:12px;line-height:1.35}
.confidence-badge{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;padding:3px 7px;border:1px solid #d7dfd7;border-radius:999px;background:#f4f7f3;color:#405147;font-size:11px;font-weight:760;line-height:1.2}.confidence-dot{width:7px;height:7px;border-radius:50%;background:#b1822c;box-shadow:0 0 0 1px rgba(0,0,0,.1)}.confidence-high .confidence-dot{background:#287655}.confidence-medium .confidence-dot{background:#bd8623}.confidence-low .confidence-dot{background:#85618b}.confidence-low{border-style:dashed}.mapcard-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.mapcard-top .eyebrow{padding-top:3px}.mapcard-top .confidence-badge{flex:0 0 auto}
.map-popup{min-width:205px;max-width:280px;line-height:1.45}.map-popup>p{margin:8px 0}.map-popup-note{padding-top:7px;border-top:1px solid #e3e8e2;color:#536159;font-size:12px}.map-popup-actions,.map-popup-sources,.contact-actions,.source-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.map-popup-actions .tag,.contact-actions .tag{padding:5px 8px;text-decoration:none}.map-popup-sources a,.source-actions a{font-size:12px}.stop-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.stop-detail{padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#fbfcf9}.stop-detail h3,.stop-contact-block h3,.stop-source-block h3{margin:0 0 5px;font-size:15px}.stop-detail p{margin:0}.stop-detail .meta{margin-top:5px}.stop-contact-block,.stop-source-block{margin-top:18px}.stop-contact-block .meta{margin:0 0 8px}
@media(max-width:850px){.map-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.map-legend{align-items:stretch;flex-direction:column}.confidence-key{justify-content:flex-start}.stop-detail-list{grid-template-columns:1fr}}
@media(max-width:560px){.map-filters{grid-template-columns:1fr}.map-legend{padding:12px}.confidence-key{display:grid;gap:8px}.confidence-key>span{max-width:none}.confidence-badge{padding:3px 6px}}

/* Landing refresh: a coastal-blue field-guide palette and a route-first
   information hierarchy.  Existing guide pages keep their calm paper ground. */
:root{--ink:#102a43;--muted:#587087;--paper:#f5f8fa;--paper2:#eaf2f7;--card:#fff;--line:#d4e0e8;--green:#126d88;--green2:#0a4260;--green3:#2d90aa;--gold:#f2b653;--warn:#fff5dc;--blue:#126d88;--shadow:0 14px 34px rgba(18,56,79,.10)}
.topbar{background:rgba(8,54,78,.97)}
.hero,.landing-hero{color:#fff;background:radial-gradient(circle at 86% 7%,#4ba7bc 0,#146882 31%,#0b3855 70%)}
.landing-hero{padding:50px 0 56px}
.landing-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.92fr);gap:38px;align-items:center}
.landing-copy .eyebrow,.landing-map-panel .eyebrow{color:#c9e7ec}
.landing-copy h1{max-width:720px;margin:9px 0 16px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(43px,5.8vw,68px);line-height:.98;letter-spacing:-.04em}
.landing-lede{max-width:660px;margin:0;color:#e1f0f4;font-size:18px;line-height:1.55}
.landing-copy .searchbox{max-width:680px;margin-top:24px}
.landing-copy .searchbox input{border:1px solid rgba(255,255,255,.7);box-shadow:0 14px 32px rgba(0,29,45,.25)}
.landing-copy .searchbox .btn{background:var(--gold);color:#163646}
.landing-actions{display:flex;align-items:center;gap:18px;margin-top:18px}
.landing-ask{background:#f2b653!important;color:#17394a!important}
.landing-map-link{color:#e7f5f7;font-size:14px;font-weight:700}.landing-map-link:hover{color:#fff}
.landing-note{margin:18px 0 0;color:#bcdce4;font-size:13px}
.landing-map-panel{min-width:0;padding:16px;border:1px solid rgba(218,245,249,.28);border-radius:19px;background:rgba(1,27,43,.28);box-shadow:0 20px 52px rgba(0,24,39,.22)}
.landing-map-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.landing-map-head h2{margin:3px 0 0;color:#fff;font-size:28px}
.map-count{padding:5px 9px;border:1px solid rgba(217,244,246,.36);border-radius:999px;color:#e3f5f7;font-size:11px;font-weight:800;white-space:nowrap}
.landing-map-status{min-height:19px;margin:11px 0;color:#c7e4e9;font-size:12px}
.landing-map-panel .home-map{height:360px;margin:0;border:1px solid rgba(223,245,247,.55);border-radius:12px;box-shadow:none}
.landing-map-panel .mapfallback{margin-top:10px;background:rgba(255,255,255,.92)}
.featured-rides{padding-top:50px;background:#f8fbfc}
.featured-head{align-items:flex-end}.featured-head .muted{max-width:650px;margin:5px 0 0}
.feature-routes-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.feature-routes-grid .routecard{display:flex;flex-direction:column;border-radius:14px;background:#fff;box-shadow:0 4px 18px rgba(18,56,79,.06)}
.feature-routes-grid .routecard:hover{box-shadow:0 16px 32px rgba(18,56,79,.13)}
.feature-routes-grid .routecard-photo{height:145px}.feature-routes-grid .routecard-body{padding:13px 13px 14px;text-align:left}
.feature-routes-grid .routecard-body .tagrow{justify-content:flex-start;margin:0 0 7px}.feature-routes-grid .routecard-body h3{margin:3px 0 5px;font-family:Georgia,"Times New Roman",serif;font-size:18px;line-height:1.1}
.feature-routes-grid .routecard-body>p:not(.meta){display:none}.feature-routes-grid .routecard-body .meta{margin:0;font-size:11px;line-height:1.35}.feature-routes-grid .routecard-body .meta:last-child{display:none}
.home-discovery{padding-top:48px;padding-bottom:54px}.home-discovery .planner{max-width:930px}
.home-discovery .topic-bin{background:#fff;border-color:#cedee7}.home-discovery .topic-bin-count{background:#e2f0f4;color:#126d88}.home-discovery .topic-bin:hover{border-color:#72aeba}
@media(max-width:1000px){.landing-hero-grid{grid-template-columns:1fr;gap:25px}.landing-map-panel .home-map{height:350px}.feature-routes-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.landing-hero{padding:38px 0 42px}.landing-copy h1{font-size:43px}.landing-actions{align-items:flex-start;flex-direction:column;gap:12px}.landing-map-panel .home-map{height:300px}.feature-routes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.feature-routes-grid .routecard-photo{height:125px}.feature-routes-grid .routecard-body{padding:11px}.feature-routes-grid .routecard-body h3{font-size:16px}}
@media(max-width:420px){.feature-routes-grid{grid-template-columns:1fr}.feature-routes-grid .routecard-photo{height:160px}}

/* Landing-page hierarchy: tools first, country browsing later. */
.landing-hero{padding:42px 0 48px}
.landing-hero-grid{align-items:stretch;gap:28px}
.landing-copy{display:flex;flex-direction:column;justify-content:center}
.landing-copy h1{max-width:640px;font-size:clamp(42px,5.1vw,64px)}
.landing-lede{max-width:620px;font-size:17px}
.landing-tools{display:grid;gap:16px;margin-top:23px}
.landing-tool-label{margin:0 0 -13px;color:#c9e7ec;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.landing-copy .searchbox{margin-top:0}
.landing-ask-panel{padding:17px 18px 15px;border:1px solid rgba(219,242,246,.29);border-radius:16px;background:rgba(3,35,53,.34);box-shadow:0 15px 32px rgba(0,23,38,.12)}
.landing-ask-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:9px}
.landing-ask-head .eyebrow{color:#bfe0e7}
.landing-ask-head h2{margin:2px 0 0;color:#fff;font-size:24px;line-height:1.05}
.landing-ask-more{color:#e1f3f6;font-size:12px;font-weight:750;white-space:nowrap}.landing-ask-more:hover{color:#fff}
.landing-ask-panel .qa{padding:0;background:transparent}.landing-ask-panel .qa>p{display:none}.landing-ask-panel .qa textarea{min-height:76px;padding:11px 12px;line-height:1.35}.landing-ask-panel .qa-actions{margin-top:7px}.landing-ask-panel .qa .btn{padding:9px 13px;background:#f2b653;color:#17394a}.landing-ask-panel .answer{margin-top:12px}.landing-ask-hint{margin:9px 0 0;color:#c7e4e9;font-size:11px}
.qa-voice{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 12px;border:1px solid rgba(255,255,255,.42);border-radius:10px;background:transparent;color:#eff9fb;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.qa-voice:hover{background:rgba(255,255,255,.12)}.qa-voice.is-listening{border-color:#f2b653;background:#f2b653;color:#153d30}.qa-voice[hidden]{display:none}.landing-ask-panel .qa-voice{min-height:38px;padding:8px 11px}@media(max-width:480px){.qa-actions{flex-wrap:wrap}.qa-voice{flex:0 0 auto}}
.landing-map-panel{display:flex;flex-direction:column;padding:15px}.landing-map-panel .home-map{height:100%;min-height:420px;flex:1}.landing-map-footer{display:flex;align-items:center;justify-content:space-between;margin:12px 2px 0;color:#e5f4f7;font-size:13px;font-weight:760}.landing-map-footer:hover{color:#fff}
.home-next-step{padding:38px 0}.home-next-step-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.home-next-step h2{margin:4px 0 6px;font-size:27px}.home-next-step p{max-width:650px;margin:0}.home-next-links{display:flex;align-items:center;gap:17px;flex:0 0 auto}.home-next-country{color:#155d78;font-size:14px;font-weight:760}.home-next-country:hover{text-decoration:underline}
@media(max-width:1000px){.landing-map-panel .home-map{height:370px;min-height:0}.landing-copy{display:block}}
@media(max-width:700px){.landing-hero{padding:34px 0 39px}.landing-ask-panel{padding:15px}.landing-map-panel .home-map{height:310px}.home-next-step-inner{align-items:flex-start;flex-direction:column}.home-next-links{gap:13px}}
@media(max-width:480px){.landing-ask-head{align-items:flex-start;flex-direction:column;gap:5px}.landing-map-panel .home-map{height:280px}.home-next-links{align-items:flex-start;flex-direction:column}}

/* ASK uses structured plain text from the server. Keep practical detail
   scannable without ever treating generated text as trusted HTML. */
.answer{white-space:normal}.answer-section{max-width:78ch}.answer-section+.answer-section{margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.18)}.answer-eyebrow{margin:0 0 8px;color:#bfe0e7;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.answer-section{overflow-wrap:anywhere}.answer-section h3{margin:20px 0 7px;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:20px;line-height:1.18}.answer-section h3:first-of-type{margin-top:0}.answer-section p{margin:0 0 13px;line-height:1.62}.answer-section ul{margin:0 0 14px;padding-left:1.2rem}.answer-section li{margin:0 0 7px;padding-left:2px;line-height:1.55}.answer-section .answer-meta{margin-top:16px}.answer-general{color:#e6f2f4}.answer-general .answer-eyebrow{color:#f2c36d}.answer-caption{margin-top:10px!important;color:#c5dce1;font-size:12px}.answer-notice{max-width:78ch}


/* Map legend + category-first marker visual language */
.map-tools{display:block;margin:14px 0 12px;padding:0;overflow:hidden;border:1px solid #bfd5df;border-radius:14px;background:#fbfdfe}
.map-tools>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;cursor:pointer;list-style:none;background:#f2f8fa;color:#173f55}
.map-tools>summary::-webkit-details-marker{display:none}.map-tools>summary strong{display:block;font-size:14px}.map-tools>summary small{display:block;margin-top:2px;color:#637d8b;font-size:11px;font-weight:600}.map-tools-toggle{font-size:11px;font-weight:800;color:#18708d}
.map-legend-body{display:grid;grid-template-columns:1.1fr .9fr;gap:14px 20px;padding:14px;border-top:1px solid #d5e4ea}.map-legend-block>strong{display:block;margin-bottom:8px;font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:#365b6d}
.map-category-key-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px}.map-category-key{display:flex;align-items:center;gap:7px;min-width:0;color:#465f6e;font-size:12px;line-height:1.25}
.map-category-dot{display:inline-grid;place-items:center;width:18px;height:18px;flex:0 0 18px;border:2px solid #234b5c;border-radius:50%;background:var(--marker-fill);color:#fff;font-size:9px;font-weight:900;box-shadow:0 1px 2px rgba(18,55,74,.18)}
.map-tools .confidence-key{display:grid;grid-template-columns:1fr;justify-content:start;gap:7px}.pin-style-sample{display:inline-block;width:17px;height:17px;border-radius:50%;background:#4f98b1}.pin-style-exact{border:2px solid #274c5c}.pin-style-approx{border:2px dashed #6f6678;opacity:.72}
.rolling-around-callout{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 13px;border:1px solid #d7d9bd;border-radius:11px;background:#fffbea}.rolling-around-callout strong{color:#354b36}.rolling-around-callout p{margin:2px 0 0;max-width:70ch;color:#61705e;font-size:12px;line-height:1.4}.rolling-around-link{flex:0 0 auto;white-space:nowrap}.map-report-link{grid-column:1/-1;margin:0}
.leaflet-tooltip{border:1px solid #c4d7df!important;border-radius:8px!important;box-shadow:0 4px 14px rgba(15,54,73,.14)!important;color:#173f55!important;font-weight:700!important}
@media(max-width:760px){.map-legend-body{grid-template-columns:1fr}.map-category-key-grid{grid-template-columns:1fr 1fr}.rolling-around-callout{align-items:flex-start;flex-direction:column;gap:9px}.rolling-around-link{width:100%;text-align:center}}
@media(max-width:460px){.map-category-key-grid{grid-template-columns:1fr}.map-tools>summary{padding:11px 12px}.map-legend-body{padding:12px}.map-tools-toggle{font-size:10px}}
