/* v17 overrides for infographics / grape / legal components – editorial restraint */
/* process */
.process .steps li{border-top:1px solid var(--line)}
/* map */
.info-sec{padding:var(--sec) 0 0}
.info-sec .sec-head{border-top:1px solid var(--ink)}
.map-wrap{border:1px solid var(--line);padding:clamp(10px,2vw,24px);background:#fff}
.map-src{color:var(--muted);font-size:.8rem}
/* process: plain numbered columns instead of chevron bands */
.chev{--d:0px;--gap:0px;max-width:none;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:clamp(24px,3.4vw,52px)}
.band,.band:last-child{clip-path:none;border-radius:0;background:none!important;color:var(--ink);text-align:start;text-shadow:none;margin-top:0;padding:20px 0 0;border-top:1px solid var(--line)}
.band .bn{font-family:var(--display);font-weight:300;font-size:3rem;line-height:1;letter-spacing:0;opacity:1;color:var(--wine);margin-bottom:16px}
.band h3,.band.b1 h3,.band.b2 h3,.band.b3 h3{font-family:var(--display);font-weight:600;font-size:1.3rem;line-height:1.3;letter-spacing:0;margin-bottom:8px;color:var(--ink)}
.band p,.band.b1 p,.band.b2 p,.band.b3 p{color:var(--muted);font-weight:400;font-size:.98rem;line-height:1.65;letter-spacing:0;max-width:none;margin:0}
@media(max-width:1000px){.chev{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.chev{grid-template-columns:minmax(0,1fr);--d:0px}.band{padding:20px 0 16px}.band h3{font-size:1.3rem}}
.gmap .sea{fill:#9a9290}
.map-key{margin-top:14px;font-size:.88rem;color:var(--muted)}
.info-sec .sec-head{max-width:none;text-align:start;margin-inline:0}

/* RTL: caption follows the text direction */
html[dir="rtl"] .hero-fig figcaption{direction:rtl;text-align:right;font-size:.82rem}



/* ===== v18: second accent (petrol teal), flat band, bold map ===== */
:root{--teal:#0f5c5c;--teal-d:#0a4444;--teal-l:#e3eeec;--teal-m:#2f8380}
.eyebrow{color:var(--teal)}
.pill{border-color:var(--teal);color:var(--teal)}
.steps .n,.band .bn{color:var(--teal)}
summary::after{color:var(--teal)}
.why-grid{border-top:3px solid var(--teal)}
.svc .ic{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--teal-l);color:var(--teal);margin-bottom:18px}
.svc .ic svg{width:32px;height:32px;stroke-width:2.8}
.svc.feature .ic{background:var(--wine);color:#fff}
.travel{background:var(--teal-l)}
.travel .eyebrow{color:var(--teal)}
.contact::before{background:var(--teal)}

/* hero: single column, flat band underneath */
.hero{padding-top:clamp(32px,4.4vw,64px);padding-bottom:clamp(32px,4vw,56px)}
.hero-grid{grid-template-columns:minmax(0,1fr)}
.hero-text{max-width:46rem}
.flat-band{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);line-height:0;overflow:hidden}
.flatband{display:block;width:100%;height:clamp(150px,23vw,300px)}
.why{padding-top:var(--sec)}

/* map */
.map-wrap{background:#eef4f3;border:1px solid var(--line);padding:clamp(6px,1.4vw,18px)}
.gmap .lead{stroke-width:1.6}
.gmap .ld{fill:#fff;stroke-width:2}
.gmap .lbl{font-family:var(--label)}
.gmap .lbl .nm{font-weight:700;font-size:18px}
.gmap .lbl .cy{font-weight:600;font-size:15px;fill:var(--ink)}
.gmap .lbl .v{font-size:13.5px;fill:var(--muted)}
.gmap .lbl.gw .nm{fill:var(--teal)}
.gmap .lbl.ge .nm{fill:var(--wine)}
.gmap .lbl.gc .nm{fill:#3d0c1c}
.gmap .lbl.gx .nm{fill:#5d6867}
.gmap .sea{fill:#7ba7a3;font-size:19px;font-style:italic}
.map-groups{display:flex;flex-wrap:wrap;gap:8px 28px;list-style:none;margin:16px 0 0;padding:0;font-family:var(--label);font-size:.86rem;font-weight:600}
.map-groups i{display:inline-block;width:14px;height:14px;margin-inline-end:8px;vertical-align:-2px}
.map-legend li{grid-template-columns:16px 1fr}
.map-legend i{width:14px;height:14px;border-radius:0}
.map-legend b{font-family:var(--label);font-weight:700;color:var(--ink)}
.map-legend .cy{font-weight:600}
.map-legend .lv{grid-column:2}
@media(max-width:720px){.map-legend{grid-template-columns:1fr 1fr}}
.gmap{direction:ltr}
html[dir="rtl"] .gmap .lbl{unicode-bidi:plaintext}
@media(min-width:900px){.hero{padding-top:36px;padding-bottom:32px}.hero h1{font-size:clamp(2.4rem,3.6vw,3.3rem)}}
