
:root{--navy:#0f2c4c;--teal:#127a8b;--page:#f4f6f9;--surface:#fff;--surface-2:#f8fafc;--ink:#12202f;--ink-2:#4a5768;--muted:#7a8798;--line:#e4e9f0;--line-2:#eef2f7;
--r-vlow:#1f9d57;--r-low:#7cb342;--r-mod:#e0a400;--r-high:#ef6c33;--r-vhigh:#d64045;
--vlow-bg:#e5f5ec;--vlow-tx:#0f6b3c;--low-bg:#eef6e2;--low-tx:#4a6a1f;--mod-bg:#fdf3d6;--mod-tx:#8a6800;--high-bg:#fde6d6;--high-tx:#9a4318;--vhigh-bg:#fbe0e1;--vhigh-tx:#a02c30;
--shadow:0 1px 2px rgba(16,32,54,.06),0 8px 24px rgba(16,32,54,.06);--radius:16px;--ok:#1f9d57;--ok-bg:#e5f5ec;--ok-tx:#0f6b3c;--warn:#d98a00;--warn-bg:#fdf1d6;--warn-tx:#8a5a00;--stop:#d64045;--stop-bg:#fbe0e1;--stop-tx:#a02c30;}
*{box-sizing:border-box}html,body{margin:0}
body{background:var(--page);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--teal)}
.demoband{background:var(--navy);color:#fff;font-size:12px;font-weight:600;text-align:center;padding:7px 14px;opacity:.95}
header.site{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--page) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.site .in{max-width:1120px;margin:0 auto;padding:0 16px;display:flex;align-items:center;gap:10px;height:58px;flex-wrap:nowrap}
.brand{display:flex;align-items:center;gap:9px;font-weight:800;color:var(--ink);text-decoration:none;white-space:nowrap}
.brand .mark{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,var(--teal),var(--navy));display:grid;place-items:center;color:#fff;font-weight:900}
.brand small{display:block;font-weight:600;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.3px}
.gnav{display:flex;gap:2px;margin-left:6px}
.gnav a{padding:8px 11px;border-radius:9px;font-size:13px;font-weight:700;color:var(--ink-2);text-decoration:none}
.gnav a.on{background:color-mix(in srgb,var(--teal) 14%,transparent);color:var(--teal)}
.jump{height:36px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:9px;padding:0 8px;font-size:13px;font-weight:600;cursor:pointer;max-width:190px}
.spacer{flex:1}
.navcta{display:inline-flex;align-items:center;height:36px;padding:0 13px;border-radius:9px;background:var(--teal);color:#fff;font-weight:700;font-size:12.5px;text-decoration:none;white-space:nowrap}
.view{display:none}.view.on{display:block}
#view-hub .vwrap{max-width:1120px;margin:0 auto;padding:0 20px}
.v-country .vwrap{max-width:760px;margin:0 auto;padding:0 20px}
#view-med .vwrap{max-width:820px;margin:0 auto;padding:0 20px}
footer.g{color:var(--muted);font-size:12.5px;padding:26px 0 60px;text-align:center;border-top:1px solid var(--line);margin-top:30px}
@media(max-width:700px){.gnav,.navcta{display:none}}

#view-hub .wrap{max-width:1120px;margin:0 auto;padding:0 20px}
#view-hub a{color:var(--teal)}
#view-hub .tnum{font-variant-numeric:tabular-nums}
#view-hub .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
#view-hub .brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--ink);text-decoration:none}
#view-hub .brand .mark{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--teal),var(--navy));display:grid;place-items:center;color:#fff;font-weight:900}
#view-hub .brand small{display:block;font-weight:600;color:var(--muted);font-size:11px;letter-spacing:.3px;text-transform:uppercase}
#view-hub .spacer{flex:1}
#view-hub .navcta{display:inline-flex;align-items:center;height:38px;padding:0 14px;border-radius:10px;background:var(--teal);color:#fff;font-weight:700;font-size:13px;text-decoration:none}
#view-hub .hero{padding:40px 0 6px}
#view-hub .eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--teal);background:color-mix(in srgb,var(--teal) 12%,transparent);padding:6px 12px;border-radius:999px}
#view-hub h1{font-size:clamp(30px,5vw,50px);line-height:1.04;letter-spacing:-1.4px;margin:16px 0 10px;font-weight:850}
#view-hub .lede{font-size:clamp(16px,2.2vw,20px);color:var(--ink-2);max-width:780px;margin:0}
#view-hub .eeat{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin:16px 0 0;font-size:13px;color:var(--muted);font-weight:600}
#view-hub .eeat .rev{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2)}
#view-hub .freshpill{display:inline-flex;align-items:center;gap:7px;background:var(--vlow-bg);color:var(--vlow-tx);padding:5px 11px;border-radius:999px;font-weight:750;font-size:12.5px}
#view-hub .freshpill .live{width:8px;height:8px;border-radius:50%;background:var(--r-vlow);box-shadow:0 0 0 0 rgba(31,157,87,.5);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(31,157,87,.5)}70%{box-shadow:0 0 0 7px rgba(31,157,87,0)}100%{box-shadow:0 0 0 0 rgba(31,157,87,0)}}
#view-hub .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0 6px}
#view-hub .stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
#view-hub .stat .big{font-size:30px;font-weight:850;letter-spacing:-1px;line-height:1}
#view-hub .stat .lbl{font-size:12.5px;color:var(--muted);margin-top:7px;font-weight:600}
#view-hub .tint-vlow .big{color:var(--r-vlow)}
#view-hub .tint-vhigh .big{color:var(--r-vhigh)}
#view-hub .tint-high .big{color:var(--r-high)}
#view-hub .tint-teal .big{color:var(--teal)}
#view-hub section{margin:30px 0}
#view-hub h2{font-size:26px;letter-spacing:-.6px;margin:0 0 4px}
#view-hub h2 .k{color:var(--teal)}
#view-hub .sub{color:var(--muted);font-size:14px;margin:0 0 16px}
#view-hub .panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}
#view-hub /* map */
.mapcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}
#view-hub .maptoggle{display:inline-flex;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:11px;padding:4px;margin-bottom:14px;flex-wrap:wrap}
#view-hub .maptoggle button{border:0;background:transparent;color:var(--ink-2);font-weight:700;font-size:13px;padding:8px 14px;border-radius:8px;cursor:pointer}
#view-hub .maptoggle button[aria-pressed="true"]{background:var(--teal);color:#fff}
#view-hub .mapgrid{display:grid;grid-template-columns:repeat(9,1fr);gap:7px;max-width:560px}
#view-hub .tile{aspect-ratio:1;border:0;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;padding:0;transition:transform .12s,box-shadow .12s;text-shadow:0 1px 2px rgba(0,0,0,.35)}
#view-hub .tile:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 6px 16px rgba(0,0,0,.25);z-index:2}
#view-hub .tile .iso{font-size:12px;font-weight:800}
#view-hub .tile .sc{font-size:11px;font-weight:700;opacity:.95}
#view-hub .maplegend{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px;font-size:12px;color:var(--muted)}
#view-hub .maplegend .item{display:inline-flex;align-items:center;gap:6px;font-weight:600}
#view-hub .dot{width:11px;height:11px;border-radius:50%}
#view-hub .d-vlow{background:var(--r-vlow)}
#view-hub .d-low{background:var(--r-low)}
#view-hub .d-mod{background:var(--r-mod)}
#view-hub .d-high{background:var(--r-high)}
#view-hub .d-vhigh{background:var(--r-vhigh)}
#view-hub /* cta */
.cta{background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff;border-radius:var(--radius);padding:26px 28px;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap;box-shadow:var(--shadow)}
#view-hub .cta h3{margin:0 0 6px;font-size:22px;letter-spacing:-.4px}
#view-hub .cta p{margin:0;opacity:.92;max-width:640px}
#view-hub .cta .btn{background:#fff;color:var(--navy);font-weight:800;padding:13px 22px;border-radius:11px;text-decoration:none;white-space:nowrap}
#view-hub .tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:var(--surface)}
#view-hub table.rank{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}
#view-hub table.rank th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);padding:12px;border-bottom:1px solid var(--line);background:var(--surface-2)}
#view-hub table.rank td{padding:10px 12px;border-bottom:1px solid var(--line-2)}
#view-hub table.rank tr:last-child td{border-bottom:0}
#view-hub .dcell{font-weight:700;white-space:nowrap}
#view-hub .dcell a{text-decoration:none;color:var(--ink)}
#view-hub .dcell a:hover{color:var(--teal)}
#view-hub .pill{display:inline-block;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px}
#view-hub .controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 12px}
#view-hub .search{flex:1;min-width:200px}
#view-hub .search input{width:100%;height:42px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:11px;padding:0 14px;font-size:14px}
#view-hub .search input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 22%,transparent)}
#view-hub select.ctl{height:42px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:11px;padding:0 12px;font-size:13.5px;font-weight:600;cursor:pointer}
#view-hub .count{font-size:13px;color:var(--muted);font-weight:600;margin-left:auto}
#view-hub .legend{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:0 0 14px;font-size:12px;color:var(--muted)}
#view-hub .legend .item{display:inline-flex;align-items:center;gap:6px;font-weight:600}
#view-hub .card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:14px;overflow:hidden}
#view-hub .card[hidden]{display:none}
#view-hub .card>summary{list-style:none;cursor:pointer;padding:16px 18px}
#view-hub .card>summary::-webkit-details-marker{display:none}
#view-hub .card:hover{border-color:color-mix(in srgb,var(--teal) 45%,var(--line))}
#view-hub .card.flash{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 30%,transparent)}
#view-hub .row{display:grid;grid-template-columns:52px 1fr 210px 30px;gap:16px;align-items:center}
#view-hub .rank{font-size:22px;font-weight:850;color:var(--muted);text-align:center;letter-spacing:-1px}
#view-hub .who{display:flex;align-items:center;gap:13px;min-width:0}
#view-hub .flag{font-size:30px;line-height:1}
#view-hub .who .nm{font-size:18px;font-weight:750;letter-spacing:-.3px}
#view-hub .who .rg{display:block;font-size:12.5px;color:var(--muted);font-weight:600}
#view-hub .scoretop{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
#view-hub .scoretop .num{font-size:20px;font-weight:850}
#view-hub .scoretop .bd{font-size:11px;font-weight:750;padding:3px 8px;border-radius:999px}
#view-hub .bar{height:8px;border-radius:999px;background:var(--line-2);overflow:hidden;margin-top:6px;display:block}
#view-hub .bar>span{display:block;height:100%;border-radius:999px}
#view-hub .caret{color:var(--muted);transition:transform .2s;text-align:center}
#view-hub .card[open] .caret{transform:rotate(180deg)}
#view-hub .chips{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 0 68px}
#view-hub .chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:650;padding:5px 10px;border-radius:9px}
#view-hub .chip .ck{opacity:.75}
#view-hub .t-vlow{background:var(--vlow-bg);color:var(--vlow-tx)}
#view-hub .t-low{background:var(--low-bg);color:var(--low-tx)}
#view-hub .t-mod{background:var(--mod-bg);color:var(--mod-tx)}
#view-hub .t-high{background:var(--high-bg);color:var(--high-tx)}
#view-hub .t-vhigh{background:var(--vhigh-bg);color:var(--vhigh-tx)}
#view-hub .detail{border-top:1px solid var(--line-2);background:var(--surface-2);padding:6px 18px 16px}
#view-hub .detail dl{margin:0}
#view-hub .detail dt{font-weight:750;font-size:14.5px;margin:14px 0 4px;padding-top:14px;border-top:1px solid var(--line-2)}
#view-hub .detail dt:first-of-type{border-top:0;padding-top:2px}
#view-hub .detail dd{margin:0;color:var(--ink-2);font-size:14px}
#view-hub .detail .badge{display:inline-block;font-size:11.5px;font-weight:750;padding:2px 8px;border-radius:7px;margin-right:6px}
#view-hub .cardcta{margin:16px 0 0!important;padding-top:14px;border-top:1px solid var(--line-2);font-size:13.5px;font-weight:700}
#view-hub .cardcta .ghost{color:var(--muted);font-weight:600;margin-left:14px}
#view-hub ol.findings{list-style:none;padding:0;margin:0}
#view-hub ol.findings li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line-2)}
#view-hub ol.findings li:last-child{border-bottom:0}
#view-hub .fn{flex:none;width:26px;height:26px;border-radius:8px;background:color-mix(in srgb,var(--teal) 15%,transparent);color:var(--teal);font-weight:800;display:grid;place-items:center;font-size:13px}
#view-hub .grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
#view-hub .wtable{width:100%;border-collapse:collapse;margin-top:8px;font-size:14px}
#view-hub .wtable td{padding:7px 4px;border-bottom:1px solid var(--line-2)}
#view-hub .wtable td:last-child{text-align:right;font-weight:750;color:var(--teal)}
#view-hub details.faq{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:10px;box-shadow:var(--shadow)}
#view-hub details.faq>summary{list-style:none;cursor:pointer;padding:15px 18px;display:flex;justify-content:space-between;gap:12px;align-items:center}
#view-hub details.faq>summary::-webkit-details-marker{display:none}
#view-hub details.faq .q{font-weight:750;font-size:15.5px}
#view-hub details.faq p{margin:0;padding:0 18px 16px;color:var(--ink-2)}
#view-hub details.faq[open] .caret{transform:rotate(180deg)}
#view-hub .disc{background:var(--surface-2);border:1px dashed var(--line);border-radius:12px;padding:14px 16px;color:var(--ink-2);font-size:13px;margin-top:14px}
#view-hub ul.src{margin:8px 0 0;padding-left:18px;color:var(--ink-2);font-size:13.5px;line-height:1.9}
@media(max-width:760px){#view-hub .row{grid-template-columns:40px 1fr 30px;grid-template-areas:"r w c" "s s s"}
#view-hub .rank{grid-area:r}
#view-hub .who{grid-area:w}
#view-hub .caret{grid-area:c}
#view-hub .scorewrap{grid-area:s;margin-top:8px}
#view-hub .chips{margin-left:0}
#view-hub .stats, #view-hub .grid2{grid-template-columns:1fr 1fr}
#view-hub .grid2{grid-template-columns:1fr}
#view-hub .mapgrid{gap:5px}
#view-hub .tile .sc{display:none}}
#view-hub .revcard{display:flex;gap:14px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px;box-shadow:var(--shadow);margin:24px 0}
#view-hub .revcard .av{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--navy));color:#fff;display:grid;place-items:center;font-weight:800;font-size:17px;flex:none}
#view-hub .revcard .rt b{font-size:15px}
#view-hub .revcard .rt .role{color:var(--muted);font-size:13px;font-weight:600;margin-top:1px}
#view-hub .revcard .rt .meta{color:var(--ink-2);font-size:13px;margin-top:6px;line-height:1.5}
#view-hub .revcard .rt a{font-weight:700;font-size:13px;display:inline-block;margin-top:6px;text-decoration:none}
.v-country .wrap{max-width:760px;margin:0 auto;padding:0 20px}
.v-country a{color:var(--teal)}
.v-country .brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--ink);text-decoration:none}
.v-country .brand .mark{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,var(--teal),var(--navy));display:grid;place-items:center;color:#fff;font-weight:900}
.v-country .brand small{display:block;font-weight:600;color:var(--muted);font-size:10.5px;text-transform:uppercase;letter-spacing:.3px}
.v-country .spacer{flex:1}
.v-country .navcta{display:inline-flex;align-items:center;height:36px;padding:0 13px;border-radius:9px;background:var(--teal);color:#fff;font-weight:700;font-size:12.5px;text-decoration:none}
.v-country .crumb{font-size:12.5px;color:var(--muted);padding:18px 0 0}
.v-country .crumb a{color:var(--muted);text-decoration:none}
.v-country .crumb a:hover{color:var(--teal)}
.v-country h1{font-size:clamp(27px,4.4vw,40px);line-height:1.08;letter-spacing:-1px;margin:12px 0 0;font-weight:850}
.v-country .scoreline{display:flex;align-items:center;gap:14px;margin:16px 0 0;flex-wrap:wrap}
.v-country .bigscore{font-size:34px;font-weight:850;letter-spacing:-1px}
.v-country .ratingpill{font-size:13px;font-weight:750;padding:5px 12px;border-radius:999px}
.v-country .rankchip{font-size:13px;color:var(--muted);font-weight:650}
.v-country .eeat{font-size:12.5px;color:var(--muted);margin:14px 0 0;font-weight:600}
.v-country .eeat .fresh{color:var(--vlow-tx)}
.v-country .intro{font-size:18px;color:var(--ink-2);margin:20px 0 0}
.v-country .glance{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0 8px;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.v-country .glance .g{display:flex;flex-direction:column;gap:6px}
.v-country .glance .gk{font-size:11.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.3px}
.v-country .pill{display:inline-block;font-size:12px;font-weight:750;padding:3px 10px;border-radius:999px;width:fit-content}
.v-country .t-vlow{background:var(--vlow-bg);color:var(--vlow-tx)}
.v-country .t-low{background:var(--low-bg);color:var(--low-tx)}
.v-country .t-mod{background:var(--mod-bg);color:var(--mod-tx)}
.v-country .t-high{background:var(--high-bg);color:var(--high-tx)}
.v-country .t-vhigh{background:var(--vhigh-bg);color:var(--vhigh-tx)}
.v-country section{margin:30px 0}
.v-country h2{font-size:22px;letter-spacing:-.4px;margin:0 0 12px;line-height:1.2}
.v-country h2 .pill{vertical-align:middle;margin-left:6px}
.v-country p{margin:0 0 14px}
.v-country .minicta{margin:16px 0 0;padding:14px 16px;background:var(--surface-2);border:1px solid var(--line);border-left:3px solid var(--teal);border-radius:10px;display:flex;gap:14px;justify-content:space-between;align-items:center;flex-wrap:wrap;font-size:14px}
.v-country .minicta a{font-weight:750;white-space:nowrap;text-decoration:none}
.v-country .cta{background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff;border-radius:var(--radius);padding:26px;margin:30px 0;text-align:center;box-shadow:var(--shadow)}
.v-country .cta h3{margin:0 0 8px;font-size:22px}
.v-country .cta p{opacity:.92;margin:0 auto 16px;max-width:520px}
.v-country .cta .btn{display:inline-block;background:#fff;color:var(--navy);font-weight:800;padding:13px 24px;border-radius:11px;text-decoration:none}
.v-country details.faq{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:10px;box-shadow:var(--shadow)}
.v-country details.faq>summary{list-style:none;cursor:pointer;padding:15px 18px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.v-country details.faq>summary::-webkit-details-marker{display:none}
.v-country details.faq .q{font-weight:750;font-size:15.5px}
.v-country details.faq p{margin:0;padding:0 18px 16px;color:var(--ink-2)}
.v-country .caret{color:var(--muted)}
.v-country details.faq[open] .caret{transform:rotate(180deg)}
.v-country .related{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.v-country .related a{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 14px;font-weight:700;font-size:14px;text-decoration:none}
.v-country .disc{background:var(--surface-2);border:1px dashed var(--line);border-radius:12px;padding:14px 16px;color:var(--ink-2);font-size:13px;margin-top:20px}
.v-country .liveline{background:var(--vlow-bg);color:var(--vlow-tx);border-radius:10px;padding:11px 14px;font-size:14px}
.v-country .liveline b{font-weight:800}
@media(max-width:600px){.v-country .glance{grid-template-columns:repeat(2,1fr)}}
.v-country .revcard{display:flex;gap:14px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px;box-shadow:var(--shadow);margin:24px 0}
.v-country .revcard .av{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--navy));color:#fff;display:grid;place-items:center;font-weight:800;font-size:17px;flex:none}
.v-country .revcard .rt b{font-size:15px}
.v-country .revcard .rt .role{color:var(--muted);font-size:13px;font-weight:600;margin-top:1px}
.v-country .revcard .rt .meta{color:var(--ink-2);font-size:13px;margin-top:6px;line-height:1.5}
.v-country .revcard .rt a{font-weight:700;font-size:13px;display:inline-block;margin-top:6px;text-decoration:none}
#view-med .wrap{max-width:820px;margin:0 auto;padding:0 20px}
#view-med a{color:var(--teal)}
#view-med .brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--ink);text-decoration:none}
#view-med .brand .mark{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,var(--teal),var(--navy));display:grid;place-items:center;color:#fff;font-weight:900}
#view-med .brand small{display:block;font-weight:600;color:var(--muted);font-size:10.5px;text-transform:uppercase;letter-spacing:.3px}
#view-med .spacer{flex:1}
#view-med .navcta{display:inline-flex;align-items:center;height:36px;padding:0 13px;border-radius:9px;background:var(--teal);color:#fff;font-weight:700;font-size:12.5px;text-decoration:none}
#view-med .crumb{font-size:12.5px;color:var(--muted);padding:18px 0 0}
#view-med .crumb a{color:var(--muted);text-decoration:none}
#view-med h1{font-size:clamp(27px,4.4vw,40px);line-height:1.08;letter-spacing:-1px;margin:12px 0 8px;font-weight:850}
#view-med .lede{font-size:18px;color:var(--ink-2);margin:0 0 4px}
#view-med .eeat{font-size:12.5px;color:var(--muted);margin:12px 0 0;font-weight:600}
#view-med .eeat .fresh{color:var(--ok-tx)}
#view-med /* tool */
.tool{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;margin:22px 0}
#view-med .pickers{display:grid;grid-template-columns:1fr 1fr;gap:14px}
#view-med .pickers label{display:block;font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.3px;color:var(--muted);margin:0 0 6px}
#view-med .pickers select{width:100%;height:48px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:12px;padding:0 12px;font-size:15px;font-weight:600;cursor:pointer}
#view-med .pickers select:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 22%,transparent)}
#view-med .result{margin-top:18px;border-radius:14px;overflow:hidden;border:1px solid var(--line);display:none}
#view-med .result.show{display:block}
#view-med .rbanner{padding:16px 18px;display:flex;align-items:center;gap:12px;font-weight:800;font-size:17px}
#view-med .rbanner .ic{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:none;font-size:17px;color:#fff}
#view-med .rbanner.ok{background:var(--ok-bg);color:var(--ok-tx)}
#view-med .rbanner.ok .ic{background:var(--ok)}
#view-med .rbanner.warn{background:var(--warn-bg);color:var(--warn-tx)}
#view-med .rbanner.warn .ic{background:var(--warn)}
#view-med .rbanner.stop{background:var(--stop-bg);color:var(--stop-tx)}
#view-med .rbanner.stop .ic{background:var(--stop)}
#view-med .rbody{padding:16px 18px;background:var(--surface)}
#view-med .rbody h4{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted)}
#view-med .rbody ul{margin:0 0 14px;padding-left:20px}
#view-med .rbody li{margin:0 0 6px;color:var(--ink-2)}
#view-med .schengen{background:var(--surface-2);border:1px solid var(--line);border-left:3px solid var(--teal);border-radius:10px;padding:12px 14px;margin:0 0 14px;font-size:14px}
#view-med .rcta{background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff;border-radius:12px;padding:16px 18px;display:flex;gap:14px;justify-content:space-between;align-items:center;flex-wrap:wrap}
#view-med .rcta b{display:block;font-size:15px}
#view-med .rcta span{opacity:.9;font-size:13.5px}
#view-med .rcta a{background:#fff;color:var(--navy);font-weight:800;padding:11px 18px;border-radius:10px;text-decoration:none;white-space:nowrap}
#view-med .hint{color:var(--muted);font-size:13px;margin-top:12px;text-align:center}
#view-med .disc{background:var(--surface-2);border:1px dashed var(--line);border-radius:12px;padding:14px 16px;color:var(--ink-2);font-size:13px;margin:8px 0 0}
#view-med section{margin:34px 0}
#view-med h2{font-size:23px;letter-spacing:-.4px;margin:0 0 8px}
#view-med .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
#view-med .step{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow)}
#view-med .step .n{width:26px;height:26px;border-radius:8px;background:color-mix(in srgb,var(--teal) 15%,transparent);color:var(--teal);font-weight:800;display:grid;place-items:center;font-size:13px;margin-bottom:8px}
#view-med .step b{display:block;margin-bottom:2px}
#view-med .step p{margin:0;color:var(--ink-2);font-size:14px}
#view-med table.ref{width:100%;border-collapse:collapse;font-size:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
#view-med table.ref td{padding:9px 12px;border-bottom:1px solid var(--line-2);vertical-align:top}
#view-med tr.grp td{background:var(--surface-2);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted)}
#view-med .tag{display:inline-block;font-size:11.5px;font-weight:750;padding:2px 9px;border-radius:999px;white-space:nowrap}
#view-med .tag.ok{background:var(--ok-bg);color:var(--ok-tx)}
#view-med .tag.warn{background:var(--warn-bg);color:var(--warn-tx)}
#view-med .tag.stop{background:var(--stop-bg);color:var(--stop-tx)}
#view-med .rn{color:var(--muted);font-size:12.5px}
#view-med details.faq{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:10px;box-shadow:var(--shadow)}
#view-med details.faq>summary{list-style:none;cursor:pointer;padding:15px 18px;display:flex;justify-content:space-between;gap:12px;align-items:center}
#view-med details.faq>summary::-webkit-details-marker{display:none}
#view-med details.faq .q{font-weight:750;font-size:15.5px}
#view-med details.faq p{margin:0;padding:0 18px 16px;color:var(--ink-2)}
#view-med .caret{color:var(--muted)}
#view-med details.faq[open] .caret{transform:rotate(180deg)}
@media(max-width:640px){#view-med .pickers, #view-med .steps{grid-template-columns:1fr}}
#view-med .revcard{display:flex;gap:14px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px;box-shadow:var(--shadow);margin:24px 0}
#view-med .revcard .av{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--navy));color:#fff;display:grid;place-items:center;font-weight:800;font-size:17px;flex:none}
#view-med .revcard .rt b{font-size:15px}
#view-med .revcard .rt .role{color:var(--muted);font-size:13px;font-weight:600;margin-top:1px}
#view-med .revcard .rt .meta{color:var(--ink-2);font-size:13px;margin-top:6px;line-height:1.5}
#view-med .revcard .rt a{font-weight:700;font-size:13px;display:inline-block;margin-top:6px;text-decoration:none}

/* ===== MobiDoctor brand theme — tokens extracted from mobidoctor.eu (2026-08-05) ===== */
:root{
  --navy:#0B2A22;            /* forest — dark surfaces, CTA gradient end */
  --teal:#0E7A5F;            /* primary green */
  --page:#F7FBF9;
  --surface:#ffffff;
  --surface-2:#F4FAF7;       /* tint-soft */
  --ink:#10241E;
  --ink-2:#42554D;
  --muted:#7A8C85;
  --line:#E4ECE8;
  --line-2:#EEF3F0;
  --shadow:0 1px 2px rgba(11,42,34,.05),0 10px 28px rgba(11,42,34,.07);
}
body{font-family:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
h1,h2,h3,#view-hub h1,#view-hub h2{font-family:"Source Serif 4",Georgia,"Times New Roman",serif;letter-spacing:-.3px}
#view-hub h1{font-weight:700;letter-spacing:-.8px}
#view-med h1{font-family:"Source Serif 4",Georgia,serif}
.v-country h1{font-family:"Source Serif 4",Georgia,serif}
/* pill buttons & controls, per site */
.navcta,.rcta a,.cta .btn,#view-hub .navcta{border-radius:999px;font-weight:800}
.jump{border-radius:999px}
/* Official logo (same asset as main site / health-index) + product subtitle */
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);white-space:nowrap;min-width:0}
.brand-logo{height:36px;width:auto;flex:none;display:block}
.brand .mark{display:none;width:28px;height:28px;place-items:center;color:#fff;font-weight:900;font-size:14px;background:linear-gradient(135deg,var(--teal),var(--navy));border-radius:10px;flex:none}
.brand > small{display:block;font-weight:600;color:var(--muted);font-size:11px;letter-spacing:.3px;text-transform:uppercase;line-height:1.2;border-left:1px solid var(--line);padding-left:10px}
.brand .wordmark{font-family:"Plus Jakarta Sans",sans-serif;font-weight:800;letter-spacing:.4px;color:var(--teal);font-size:17px;line-height:1}
.brand .wordmark .plus{color:var(--teal);font-weight:900}
@media(max-width:520px){
  .brand > small{display:none}
  .brand-logo{height:30px}
}
#view-hub .eyebrow{font-family:"Plus Jakarta Sans",sans-serif}
#view-hub .freshpill{font-weight:700}
a{color:var(--teal)}
/* soft cream notice band, per site's emergency band */
.notice-cream{background:#FDF1EC;color:#0E7A5F;font-weight:700;font-size:12.5px;text-align:center;padding:7px 14px}

/* ===== v3 upgrades: dark forest heroes, trust band, mobile pass, sticky CTA ===== */
html,body{overflow-x:clip}
/* dark hero — hub-style pages (uses existing header.hero) */
#view-hub .hero{background:linear-gradient(155deg,#0B2A22 0%,#0E5A45 100%);margin:0 calc(50% - 50vw) 26px;padding:44px calc(50vw - 50% + 20px) 34px;border-radius:0}
#view-hub .hero h1,#view-hub .hero h2{color:#fff}
#view-hub .hero .lede{color:#D9EAE2}
#view-hub .hero .eeat{color:#9FBFB2}
#view-hub .hero .eeat .rev{color:#D9EAE2}
#view-hub .hero .eeat a{color:#7BEBC4}
#view-hub .hero .eyebrow{background:rgba(255,255,255,.12);color:#7BEBC4}
#view-hub .hero .freshpill{background:rgba(123,235,196,.16);color:#7BEBC4}
#view-hub .hero .freshpill .live{background:#7BEBC4}
#view-hub .hero .stat{border-color:rgba(255,255,255,.14)}
/* dark hero — tool pages (build wraps crumb→eeat in .hero-dark) */
.hero-dark{background:linear-gradient(155deg,#0B2A22 0%,#0E5A45 100%);margin:0 calc(50% - 50vw) 22px;padding:30px calc(50vw - 50% + 20px) 26px;color:#fff}
#view-med .hero-dark h1{color:#fff;margin-top:6px}
.hero-dark .lede{color:#D9EAE2}
.hero-dark .crumb,.hero-dark .crumb a{color:#9FBFB2}
.hero-dark .eeat{color:#9FBFB2}
.hero-dark .eeat a{color:#7BEBC4}
.hero-dark .fresh{color:#9FBFB2}
/* trust band (mirrors mobidoctor.eu checkmark strip) */
.trustband{display:flex;gap:8px 22px;flex-wrap:wrap;justify-content:center;background:var(--surface-2);border-block:1px solid var(--line-2);margin:0 calc(50% - 50vw) 24px;padding:11px calc(50vw - 50% + 20px);font-size:12.5px;font-weight:700;color:var(--ink-2)}
.trustband span{white-space:nowrap}
.trustband span::before{content:"✓ ";color:var(--teal);font-weight:900}
/* sticky mobile consult CTA */
.mcta{display:none}
@media(max-width:700px){
  .mcta{display:block;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--page) 90%,transparent);backdrop-filter:blur(10px);border-top:1px solid var(--line)}
  .mcta a{display:block;text-align:center;background:var(--teal);color:#fff;font-weight:800;border-radius:999px;padding:13px;text-decoration:none;font-size:15px}
  body{padding-bottom:76px}
  /* mobile layout pass */
  #view-hub .stats{grid-template-columns:1fr 1fr}
  #view-hub .stat .big{font-size:24px}
  #view-med .pickers{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .grid2{grid-template-columns:1fr}
  #view-hub .hero{padding-top:30px}
  #view-hub h1{font-size:clamp(28px,8vw,38px)}
  .trustband{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}
  .jump{max-width:150px}
}
/* specificity fixes: dark-hero text must win over page-scoped colors */
#view-med .hero-dark .lede, .hero-dark .lede{color:#D9EAE2 !important}
#view-med .hero-dark .eeat, .hero-dark .eeat, #view-med .hero-dark .eeat b{color:#9FBFB2 !important}
#view-med .hero-dark .eeat a, .hero-dark .eeat a{color:#7BEBC4 !important}
#view-med .hero-dark .fresh, .hero-dark .fresh{color:#9FBFB2 !important}
#view-med .hero-dark .crumb, #view-med .hero-dark .crumb a, .hero-dark .crumb, .hero-dark .crumb a{color:#9FBFB2 !important}
#view-med .hero-dark h1{color:#fff !important}
@media(max-width:700px){.hero-dark .lede{font-size:15px}}
[hidden]{display:none !important}
/* hub landing: tool cards + country grid */
.toolgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.toolcard{display:flex;flex-direction:column;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:20px;text-decoration:none;color:var(--ink);transition:transform .14s,border-color .14s,box-shadow .14s}
.toolcard:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--teal) 45%,var(--line));box-shadow:0 10px 26px rgba(11,42,34,.13)}
.toolcard .tic{width:42px;height:42px;border-radius:12px;background:color-mix(in srgb,var(--teal) 12%,var(--surface));display:grid;place-items:center;font-size:21px}
.toolcard b{font-size:16.5px;font-family:"Plus Jakarta Sans",sans-serif}
.toolcard p{margin:0;font-size:13.5px;color:var(--ink-2);line-height:1.5;flex:1}
.toolcard .go{color:var(--teal);font-weight:800;font-size:13.5px}
.countrygrid{display:flex;flex-wrap:wrap;gap:8px}
.countrygrid a{display:inline-flex;align-items:center;gap:7px;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:13.5px;font-weight:700;color:var(--ink);text-decoration:none}
.countrygrid a:hover{border-color:var(--teal);color:var(--teal)}
@media(max-width:900px){.toolgrid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.toolgrid{grid-template-columns:1fr}}
/* live conditions strip */
.livestrip{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:10px 14px;margin:14px 0 4px;font-size:12.5px;font-weight:700}
.livestrip .ll{display:inline-flex;align-items:center;gap:6px;background:var(--vlow-bg);color:var(--vlow-tx);border-radius:999px;padding:4px 10px;font-size:11.5px;letter-spacing:.3px}
.livestrip .ll .live{width:7px;height:7px;border-radius:50%;background:var(--r-vlow);animation:pulse 2s infinite}
.livestrip .ldata{display:flex;flex-wrap:wrap;gap:8px}
.livestrip .lchip{background:var(--surface-2);border:1px solid var(--line-2);border-radius:999px;padding:4px 11px;color:var(--ink-2)}
.livestrip .lchip.warn{background:var(--mod-bg);color:var(--mod-tx);border-color:transparent}
.livestrip .attr{margin-left:auto;font-size:11px;color:var(--muted);font-weight:600;text-decoration:none}
/* v6: data table, anchor nav, pager, mega footer, mobile menu, forecast row */
.mtable{width:100%;border-collapse:collapse;font-size:13.5px;background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.mtable td{padding:11px 14px;border-bottom:1px solid var(--line-2);vertical-align:middle}
.mtable tr:last-child td{border-bottom:0}
.mtable .mm{font-weight:800;white-space:nowrap;width:180px}
.mtable .ev{color:var(--muted);font-size:12.5px}
.mtable .pill{white-space:nowrap}
.mtable-wrap{margin:6px 0 8px}
.anchornav{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 18px}
.anchornav a{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:12.5px;font-weight:700;color:var(--ink-2);text-decoration:none}
.anchornav a:hover{border-color:var(--teal);color:var(--teal)}
.pager{display:flex;justify-content:space-between;gap:10px;margin:26px 0 6px;flex-wrap:wrap}
.pager a{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:9px 16px;font-size:13.5px;font-weight:700;color:var(--ink);text-decoration:none}
.pager a:hover{border-color:var(--teal);color:var(--teal)}
footer.mega{border-top:1px solid var(--line);margin-top:34px;background:var(--surface)}
footer.mega .cols{max-width:1120px;margin:0 auto;padding:30px 20px 10px;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
footer.mega h4{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-family:"Plus Jakarta Sans",sans-serif}
footer.mega a{display:block;color:var(--ink-2);text-decoration:none;font-size:13px;padding:3px 0;font-weight:600}
footer.mega a:hover{color:var(--teal)}
footer.mega .legal{max-width:1120px;margin:0 auto;padding:14px 20px 26px;color:var(--muted);font-size:12px;border-top:1px solid var(--line-2)}
.navburger{display:none;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;height:36px;width:40px;font-size:16px;cursor:pointer}
@media(max-width:700px){
  .navburger{display:inline-flex;align-items:center;justify-content:center}
  .gnav{display:none;position:absolute;top:58px;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--line);flex-direction:column;padding:8px 14px;gap:2px;z-index:70;box-shadow:var(--shadow)}
  .gnav.open{display:flex}
  .gnav a{padding:11px 10px;font-size:15px}
  footer.mega .cols{grid-template-columns:1fr 1fr}
}
.lrow{display:flex;flex-wrap:wrap;gap:6px;width:100%;margin-top:6px}
.lrow .fday{background:var(--surface-2);border:1px solid var(--line-2);border-radius:10px;padding:4px 9px;font-size:11.5px;font-weight:700;color:var(--ink-2)}
