/* FullHydro: consistent navigation, scientific reading, and map workspaces. */
body.geo-site {
  --gs-ink:#183b48; --gs-muted:#526b75; --gs-line:#dce5e8;
  --gs-accent:#196373; --gs-soft:#edf4f5;
  --ink:#183b48; --muted:#526b75; --accent:#196373; --line:#dce5e8;
  --ov-ink:#183b48; --ov-text:#405d68; --ov-muted:#526b75;
  --ov-line:#dce5e8; --ov-line-strong:#c8d8dd; --ov-accent:#196373;
  --ov-accent-ink:#164f5d; --ov-accent-soft:#edf4f5; --ov-surface:#f5f8f9;
  --ov-radius:2px; --ov-radius-sm:2px;
  margin:0 0 0 244px; color:var(--gs-ink); background:white;
  font:400 16px/1.8 var(--sans);
}
body.geo-site .wrap { width:calc(100% - 88px); max-width:1140px; margin-inline:auto; }
body.geo-site a { text-underline-offset:4px; }
body.geo-site p { text-wrap:pretty; }
body.geo-site :focus-visible { outline:2px solid #267487; outline-offset:4px; }
body.geo-site ::selection, body.geo-site .hm-hero ::selection, body.geo-site .data-top ::selection { color:#183b48; background:#d6e9ed; }
.gs-skip { position:fixed; top:-100px; left:264px; z-index:2000; padding:10px 18px; background:white; }
.gs-skip:focus { top:12px; }

/* The only filled navigation state is the current page. */
.gs-rail { position:fixed; inset:0 auto 0 0; width:244px; z-index:500; display:flex; flex-direction:column; overflow-y:auto; padding:30px 20px 20px; border-right:1px solid var(--gs-line); background:#f6f8f9; }
body.geo-site .gs-rail .site-nav { display:block; min-height:0; border:0; }
body.geo-site .gs-rail .brand { display:inline-flex; gap:9px; color:#183b48; font:600 23px/1.25 var(--sans); letter-spacing:-1px; }
body.geo-site .gs-rail .brand::before { width:24px; height:24px; border-radius:5px; }
body.geo-site .gs-rail .nav-links { display:flex; flex-direction:column; align-items:stretch; gap:0; margin-top:25px; }
body.geo-site .gs-rail .nav-link { display:flex; align-items:center; justify-content:flex-start; gap:8px; padding:8px 12px; min-height:40px; color:#526b75; font:400 14px/1.5 var(--sans); }
body.geo-site .gs-rail .nav-link::after { display:none; }
body.geo-site .gs-rail .nav-link.is-active { color:#185b6c; background:#e7eff2; border-radius:2px; }
.gs-product-nav { display:flex; align-items:center; gap:8px; margin:25px 12px 10px; color:#244c5c !important; text-decoration:none; font:600 15px/1.5 var(--sans); }
body.geo-site .gs-rail .status { padding:0; border:0; background:none; margin-left:auto; color:#73858c; opacity:1; font:400 12px/1.4 var(--sans); letter-spacing:0; text-transform:none; }
body.geo-site .gs-rail .steps { position:static; background:none; border:0; padding:0; backdrop-filter:none; }
body.geo-site .gs-rail .steps .wrap { display:flex; flex-direction:column; align-items:stretch; flex-wrap:nowrap; width:100%; max-width:none; gap:2px; margin:0; padding:0; overflow:visible; border:0; }
body.geo-site .gs-rail .step { display:flex; align-items:baseline; flex:none; gap:9px; min-height:39px; margin:0; padding:9px 10px; border:0; border-left:2px solid transparent; border-radius:0; color:#536b74; background:none; box-shadow:none; white-space:normal; font:400 14px/1.55 var(--sans); text-decoration:none; }
body.geo-site .gs-rail .step b { display:block; flex:0 0 18px; width:18px; height:auto; margin:0; border:0; border-radius:0; background:none; color:#718991; font:400 12px/1.5 var(--mono); }
body.geo-site .gs-rail .step::after { display:none; }
body.geo-site .gs-rail .step.is-here { color:#164f60; background:#e7eff2; border-left-color:#236b7c; box-shadow:none; font-weight:500; }
body.geo-site .gs-rail .step.is-here b { color:#185e70; background:none; }
body.geo-site .gs-rail .step:hover { color:#164f60; background:#edf3f5; }
.gs-task-label { display:block; margin:17px 12px 7px; color:#7b8d94; font:400 12px/1.5 var(--sans); }
.gs-rail-label { margin:22px 12px 8px; color:#7b8d94; font:400 12px/1.5 var(--sans); text-transform:none; letter-spacing:0; }
.gs-local { display:grid; }
.gs-local a { padding:8px 12px; color:#526b75; text-decoration:none; font:400 14px/1.55 var(--sans); }
.gs-rail-end { margin-top:auto; padding-top:28px; }
body.geo-site .gs-rail-end .nav-disabled { display:flex; padding:13px 12px; border-top:1px solid var(--gs-line); font-size:14px; }
body.geo-site .gs-rail .phone-btn { display:block; min-height:38px; margin:8px 0 0; padding:8px 12px; color:#71868f; background:none; border:0; border-radius:0; font:400 12px/1.5 var(--sans); text-align:left; }

/* Shared reading rhythm. */
body.geo-site .hm-kicker, body.geo-site .ov-kicker, body.geo-site .eyebrow { color:#728990; font:500 12px/1.6 var(--sans); letter-spacing:.035em; text-transform:none; }
body.geo-site .hm-actions { display:flex; flex-wrap:wrap; gap:12px; margin:26px 0 0; align-items:center; justify-content:flex-start; }
body.geo-site .hm-btn, body.geo-site .get-data-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:44px; padding:11px 18px; border:1px solid #245a6b; border-radius:2px; color:white !important; background:#245a6b; box-shadow:none; font:500 14px/1.5 var(--sans); text-decoration:none; }
body.geo-site .hm-btn.is-ghost { border-color:#c7d8de; color:#305d6d !important; background:white; }
body.geo-site .hm-btn:hover, body.geo-site .get-data-btn:hover { background:#194a5b; }
body.geo-site .hm-btn.is-ghost:hover { color:#194a5b !important; background:#f0f5f7; }
body.geo-site .hm-btn span, body.geo-site .hm-btn:hover span { transform:none; transition:none; }
body.geo-site .hm-card, body.geo-site .ov-tier, body.geo-site .ov-cta, body.geo-site .ov-map { opacity:1 !important; transform:none !important; transition:none !important; }

/* Home: premise, dataset rows, scientific provenance. */
body.geo-site .hm-hero { min-height:0; background:white; color:#183b48; border:0; }
body.geo-site .hm-hero::before, body.geo-site .hm-hero::after { display:none; }
body.geo-site .hm-hero-body { display:block; padding:52px 0 40px; }
body.geo-site .hm-hero h1 { max-width:24ch; margin:18px 0 26px; color:#183b48; font:500 clamp(40px,4.2vw,62px)/1.14 var(--sans); letter-spacing:-.045em; }
body.geo-site .hm-hero-side { display:block; max-width:760px; padding:0; border:0; }
body.geo-site .hm-lede { max-width:none; margin:0; color:#46616d; font-size:17px; line-height:1.85; }
body.geo-site .hm-hero .hm-lede strong { color:#244653; font-weight:500; }
body.geo-site .hm-main { background:white; }
body.geo-site .hm-products { padding:10px 0 54px; }
body.geo-site .hm-section-head { margin-bottom:18px; padding-top:22px; border-top:1px solid var(--gs-line); }
body.geo-site h2.hm-kicker { color:#254b5b; font:500 18px/1.5 var(--sans); letter-spacing:-.015em; }
body.geo-site .hm-cards { display:block; }
body.geo-site a.hm-card.is-out, body.geo-site .hm-card { display:block; margin:0; padding:25px 0; min-height:0; border:0; border-bottom:1px solid var(--gs-line); border-radius:0; background:white; box-shadow:none; }
body.geo-site a.hm-card.is-out:hover { background:#f8fafb; box-shadow:none; }
.gs-product-copy { display:grid; grid-template-columns:190px minmax(0,1fr); column-gap:38px; row-gap:8px; }
body.geo-site .hm-state { grid-column:1; padding:0; margin:0; border:0; border-radius:0; background:none; color:#447482; font:400 12px/1.5 var(--sans); text-transform:none; letter-spacing:0; }
body.geo-site .is-soon .hm-state { color:#7a8b93; }
body.geo-site .hm-card b { grid-column:1; grid-row:2; margin:0; color:#254653; font:500 27px/1.2 var(--sans); letter-spacing:-.035em; }
body.geo-site .hm-card p { grid-column:2; grid-row:1 / span 3; max-width:72ch; margin:0; color:#4a6470; font-size:16px; line-height:1.85; }
body.geo-site .hm-card em { grid-column:1; margin:8px 0 0; color:#286b7c; font:400 13px/1.6 var(--sans); }

/* Overview: one fact register and one continuous scientific reading column. */
body.geo-site .ov-hero { background:white; color:#183b48; border:0; padding:46px 0 32px; }
body.geo-site .ov-hero-grid { display:block; }
body.geo-site .ov-hero h1 { margin:18px 0 20px; color:#183b48; font:500 clamp(48px,5vw,68px)/1.08 var(--sans); letter-spacing:-.045em; }
body.geo-site .ov-lede { max-width:76ch; margin:0; color:#44616d; font-size:18px; line-height:1.8; }
body.geo-site .ov-actions { margin-top:24px; }
body.geo-site .gs-facts { padding:0; }
body.geo-site .ov-facts { display:block; margin:0; padding:0; background:white; border:0; border-top:1px solid var(--gs-line); border-radius:0; box-shadow:none; }
body.geo-site .ov-facts > div { display:grid; grid-template-columns:126px minmax(0,1fr); gap:24px; padding:12px 0; border:0; border-bottom:1px solid var(--gs-line); }
body.geo-site .ov-facts dt { margin:0; padding:0; color:#70848d; font:400 13px/1.7 var(--sans); text-transform:none; letter-spacing:0; }
body.geo-site .ov-facts dd { margin:0; color:#3b5d6a; font-size:14px; line-height:1.7; }
body.geo-site.overview-page .ov-facts code { color:#365d6b; background:#f0f5f7; border:0; }
body.geo-site .ov-mapblock { padding:30px 0 0; background:white; }
body.geo-site .ov-map { height:400px; border:0; border-radius:2px; background:#0b1a26; box-shadow:none; }
body.geo-site .ov-map-caption { position:static; max-width:none; padding:14px 0 26px; background:none; color:#687f89; font-size:13px; line-height:1.7; }
body.geo-site .ov-map-caption b { color:#375b69; font-weight:500; }
body.geo-site .ov-main { padding:0; background:white; }
.gs-toc { position:static; z-index:400; display:flex; align-items:baseline; flex-wrap:wrap; gap:6px 23px; padding:18px 0; background:white; border-top:1px solid var(--gs-line); border-bottom:1px solid var(--gs-line); }
.gs-contents-label { color:#86979e; font:400 12px/1.5 var(--sans); }
.gs-toc a { padding:0; color:#4b6b78; text-decoration:none; font:400 13px/1.7 var(--sans); }
.gs-toc a:hover { color:#1a5f73; text-decoration:underline; }
body.geo-site .ov-section { display:block; padding:40px 0; margin:0; border:0; border-bottom:1px solid var(--gs-line); scroll-margin-top:24px; }
body.geo-site .ov-label { position:static; margin:0 0 20px; }
body.geo-site .ov-label h2 { margin:6px 0 0; color:#244653; font:500 28px/1.25 var(--sans); letter-spacing:-.03em; }
body.geo-site .ov-body { max-width:82ch; }
body.geo-site .ov-body p, body.geo-site .ov-tier p { max-width:82ch; margin:0 0 18px; color:#405d69; font:400 16px/1.9 var(--sans); }
body.geo-site .ov-body p:last-child, body.geo-site .ov-tier p:last-child { margin-bottom:0; }
body.geo-site .ov-standfirst { font:400 17px/1.85 var(--sans); }
body.geo-site .ov-standfirst strong { display:block; margin-bottom:18px; color:#294e5c; font:500 23px/1.5 var(--sans); letter-spacing:-.02em; }
body.geo-site .ov-tiers { display:block; }
body.geo-site .ov-tier { display:block; position:relative; padding:27px 0; border:0; border-bottom:1px solid #e6edef; border-radius:0; background:white; box-shadow:none; }
body.geo-site .ov-tier:last-child { padding-bottom:0; border-bottom:0; }
body.geo-site .ov-tier:hover { background:white; box-shadow:none; }
body.geo-site .ov-tier h3 { display:block; margin:0 0 14px; color:#2a5261; font:500 22px/1.45 var(--sans); letter-spacing:-.02em; }
body.geo-site .ov-tier h3 span { display:inline-block; margin:0 14px 0 0; color:#71909a; font:400 13px/1.5 var(--mono); letter-spacing:0; }
body.geo-site .ov-tier-go { display:block; position:static; margin-top:14px; color:#4e7c8b; font:400 22px/1 var(--sans); }
body.geo-site #layers { padding:30px 0; background:white; margin:0; }
body.geo-site .video-frame { max-width:850px; border:1px solid var(--gs-line); border-radius:2px; box-shadow:none; }
body.geo-site .ov-body p.aside, body.geo-site .ov-cta-section .aside { color:#6a8089; font-size:14px; line-height:1.8; }
body.geo-site .ov-table { width:100%; table-layout:fixed; margin:20px 0; font-size:14px; }
body.geo-site .ov-table th, body.geo-site .ov-table td { position:static; padding:14px 16px 14px 0; color:#3e5e6b; background:none; border-bottom:1px solid var(--gs-line); text-align:left; white-space:normal; }
body.geo-site .ov-table th:first-child, body.geo-site .ov-table td:first-child { width:150px; white-space:normal; }
body.geo-site .ov-cta-section { display:block; padding:30px 0 46px; margin:0; background:white; border:0; }
body.geo-site .ov-cta { margin:0; padding:24px; border:0; border-radius:2px; background:#f1f6f7; box-shadow:none; }
body.geo-site .ov-cta span { color:#4b6976; font-size:14px; line-height:1.75; }

/* Maps: aligned title, controls, results, then complete method text. */
body.geo-site.gs-work { background:white; }
body.geo-site .data-top { color:#183b48; background:white; border-bottom:0; }
.gs-title { padding:36px 0 25px; border-bottom:1px solid var(--gs-line); }
.gs-page-kicker { display:block; margin:0 0 12px; color:#718993; font:400 12px/1.5 var(--sans); }
.gs-title h1 { max-width:900px; margin:0; color:#244653; font:500 clamp(28px,3vw,40px)/1.25 var(--sans); letter-spacing:-.035em; }
.gs-method-jump { display:inline-block; margin-top:13px; color:#597d8c; text-decoration:none; font:400 13px/1.5 var(--sans); }
body.geo-site.gs-work .data-main { padding:24px 0 0; }
body.geo-site.gs-work .data-main > .wrap { width:calc(100% - 88px); max-width:1140px; }
body.geo-site .viewswitch { display:flex; gap:0; margin:0 0 20px; border:0; border-bottom:1px solid var(--gs-line); border-radius:0; background:white; }
body.geo-site .viewswitch button { padding:13px 16px; border:0; border-right:1px solid #e2eaed; background:white; color:#59727d; }
body.geo-site .viewswitch button:last-child { border-right:0; }
body.geo-site .viewswitch button strong { font:500 14px/1.6 var(--sans); }
body.geo-site .viewswitch button em { margin-top:4px; color:#71868f; font:400 13px/1.7 var(--sans); }
body.geo-site .viewswitch button.is-on { background:#f2f6f8; box-shadow:inset 0 -2px #39768a; }
body.geo-site .viewswitch button:disabled, body.geo-site .viewswitch button:disabled strong { color:#7f929a; background:white; }
body.geo-site .section-intro { max-width:85ch; color:#526d79; font:400 15px/1.8 var(--sans); }
body.geo-site.gs-work .data-section { padding:20px 0; }
body.geo-site.gs-work .data-section .split-head { grid-template-columns:1fr; gap:16px; }
body.geo-site.gs-work .map-frame { border:1px solid #d2e0e5; border-radius:2px; background:#edf4f6; box-shadow:none; }
body.geo-site.gs-work .map-frame.is-split, body.geo-site.gs-work .map-frame:has(> .map-controls) { display:grid; grid-template-columns:minmax(0,1fr) 292px; }
body.geo-site.gs-work .map-frame #map, body.geo-site.gs-work .map-frame #exmap, body.geo-site.gs-work .map-frame #attrmap { height:65vh !important; min-height:470px !important; max-height:760px; }
body.geo-site.gs-work .map-frame .map-side, body.geo-site.gs-work .map-frame > .map-controls { position:static; width:auto; height:65vh; min-height:470px; max-height:760px; overflow:auto; padding:20px; margin:0; background:white; border:0; border-left:1px solid var(--gs-line); border-radius:0; box-shadow:none; }
body.geo-site.gs-work .map-frame > .map-controls { grid-column:2; grid-row:1; }
body.geo-site .panel-label { color:#5b7c8b; font:500 12px/1.6 var(--sans); letter-spacing:0; text-transform:none; }
body.geo-site .map-side .selection-summary { color:#526e7a; font-size:14px; line-height:1.75; }
body.geo-site .map-side .merit-callout { padding:12px 0; margin-top:12px; color:#71868f; background:none; border:0; border-top:1px solid var(--gs-line); font-size:12px; line-height:1.8; }
body.geo-site .map-side select { width:100%; min-height:42px; font-size:14px; border-radius:2px; }
body.geo-site .map-side button, body.geo-site .map-controls button { min-height:36px; border-radius:2px; font-size:13px; }
body.geo-site .map-side .filelist { font-size:12px; line-height:1.8; }
body.geo-site .map-controls .fd-group { margin:0 0 20px; }
body.geo-site .map-controls .fd-label { color:#718b96; font-size:12px; }
body.geo-site .map-controls label { font-size:13px; line-height:1.6; }
body.geo-site .map-controls .map-formula { overflow-wrap:anywhere; }
body.geo-site .map-panel.is-block { margin:20px 0 0; padding:22px; border:1px solid var(--gs-line); border-radius:2px; background:white; box-shadow:none; }
body.geo-site .map-frame .example-jump { right:307px; }
body.geo-site .gs-method { padding:34px 0; margin:34px 0 0; background:white; border:0; border-top:1px solid var(--gs-line); scroll-margin-top:22px; }
body.geo-site .gs-method .data-hero { padding:0; }
body.geo-site .gs-method .data-lede { max-width:82ch; margin:0; color:#47636f; font-size:16px; line-height:1.9; }
.gs-availability { display:block; padding:0 0 26px; margin:0 0 26px; border-bottom:1px solid var(--gs-line); color:#748b95; font:400 14px/1.8 var(--sans); }
.gs-availability strong { display:block; margin-bottom:8px; color:#617e8a; font-weight:500; }
.gs-availability em { font-style:normal; }
body.geo-site .pager { margin:0; border-top:1px solid var(--gs-line); background:white; }
body.geo-site .pager-inner { gap:30px; padding:20px 0; }
body.geo-site .pager-link { border:0; border-radius:0; padding:8px 0; background:none; box-shadow:none; }
body.geo-site .pager-link:hover { color:#195c70; background:none; box-shadow:none; }
body.geo-site .pager-link small { color:#85969e; font:400 12px/1.5 var(--sans); text-transform:none; letter-spacing:0; }
body.geo-site .pager-link span { font-size:14px; }

/* Downloads: full-width section titles and evenly aligned file rows. */
body.geo-site.doc-page .data-top .data-hero { padding:40px 0 32px; }
body.geo-site.doc-page .data-top .data-hero .split-head { display:block; }
body.geo-site.doc-page .data-top .data-hero h1 { margin:0 0 22px; color:#244653; font:500 clamp(38px,4vw,54px)/1.15 var(--sans); letter-spacing:-.035em; }
body.geo-site.doc-page .data-top .data-lede { max-width:80ch; margin:0 0 12px; color:#486571; font-size:16px; line-height:1.85; }
body.geo-site.doc-page .data-top .data-lede strong { color:#294f60; }
body.geo-site.doc-page .cite-block { display:block; padding:0; margin:20px 0 0; border:0; border-radius:0; color:#6a8693; background:none; font-size:13px; }
body.geo-site.doc-page .cite-label { display:inline; margin-right:12px; color:#879da6; font:400 12px/1.5 var(--sans); text-transform:none; letter-spacing:0; }
body.geo-site.doc-page .data-main { padding-top:0; background:white; }
body.geo-site.doc-page .data-section { padding:36px 0; border-bottom:1px solid var(--gs-line); scroll-margin-top:24px; }
body.geo-site.doc-page .data-section .split-head { display:block; }
body.geo-site.doc-page .sh-head { position:static; margin-bottom:20px; }
body.geo-site.doc-page .data-section h2 { margin:6px 0 0; color:#2a5161; font:500 27px/1.3 var(--sans); letter-spacing:-.025em; }
body.geo-site.doc-page .sh-body p { max-width:85ch; color:#496570; font-size:16px; line-height:1.85; }
body.geo-site.doc-page .sh-body p.aside { max-width:95ch; color:#748b95; font-size:14px; }
body.geo-site.doc-page .table-shell { border:1px solid var(--gs-line); border-radius:2px; box-shadow:none; }
body.geo-site.doc-page .table-scroll { overflow-x:auto; max-width:100%; }
body.geo-site.doc-page table { width:100%; color:#456673; font-size:14px; }
body.geo-site.doc-page .rel-table th, body.geo-site.doc-page .rel-table td { white-space:normal; text-align:left; padding:12px 15px; }
body.geo-site.doc-page th { position:static; color:#5d7b8a; background:#f1f6f8; font-weight:500; }
body.geo-site.doc-page .dl-line { display:grid; grid-template-columns:minmax(220px,.9fr) minmax(0,1.4fr); gap:26px; margin:0; padding:17px 0; max-width:none !important; border-bottom:1px solid #e5ecef; }
body.geo-site.doc-page .dl-line > a { display:block; align-self:start; min-width:0; color:#306d81; font:400 13px/1.8 var(--mono); overflow-wrap:anywhere; }
body.geo-site.doc-page .dl-line > span { display:block; color:#68808c; font-size:14px; line-height:1.8; }
body.geo-site.doc-page .sub-h { margin:30px 0 12px; color:#416574; font:500 19px/1.5 var(--sans); }
body.geo-site.doc-page .home-get { margin-top:20px; border-top:0; }
body.geo-site.doc-page .home-get > span { color:#738b96; font-size:13px; line-height:1.8; }
body.geo-site.doc-page pre { padding:24px; color:#d7e8ef; background:#183b48; border-radius:2px; }
body.geo-site.doc-page pre code { color:inherit; background:none; }

/* Provenance, contact and operational notes share one quiet footer. */
body.geo-site .data-footer, body.geo-site .hm-footer { margin:0; padding:0; color:#718792; background:#f7f9fa; border-top:1px solid var(--gs-line); }
body.geo-site .hm-footer-cols { display:grid; grid-template-columns:1fr; gap:30px; padding:34px 0; }
body.geo-site .hm-footer-cols > div { display:grid; grid-template-columns:190px minmax(0,1fr); gap:38px; }
body.geo-site .hm-footer .hm-kicker { margin:0; color:#78909b; font:400 13px/1.7 var(--sans); }
body.geo-site .hm-body p { max-width:85ch; margin:0 0 13px; color:#6b838f; font-size:14px; line-height:1.85; }
body.geo-site .hm-body p:last-child { margin-bottom:0; }
body.geo-site .hm-footer-bar { padding:24px 0; color:#7b919b; border-color:var(--gs-line); font-size:12px; line-height:1.8; }
body.geo-site .hm-footer-bar > span { max-width:85ch; }
body.geo-site .gs-hosting { padding:24px 0 0; }
body.geo-site .budget-note { max-width:105ch; margin:0; color:#82959e; font-size:12px; line-height:1.85; }
body.geo-site .dev-banner { margin:0; padding:8px 0; border:0; border-bottom:1px solid #d6ac60; color:#705b3b; background:#fff3d9; text-align:left; font:400 13px/1.6 var(--sans); }
body.geo-site .dev-banner .wrap { padding:0; }
body.geo-site .dev-banner a { color:#785018; text-decoration:underline; text-decoration-thickness:1px; }
body.geo-site .dev-banner strong { display:inline; margin:0 5px 0 0; color:#674414; font:600 14px/1.5 var(--sans); }

@media(min-width:1700px) { body.geo-site { margin-left:260px; } .gs-rail { width:260px; padding-inline:28px; } }
@media(max-width:1180px) and (min-width:901px) {
  body.geo-site { margin-left:224px; }
  .gs-rail { width:224px; padding-inline:16px; }
  body.geo-site .wrap, body.geo-site.gs-work .data-main > .wrap { width:calc(100% - 56px); }
  body.geo-site.gs-work .map-frame.is-split, body.geo-site.gs-work .map-frame:has(> .map-controls) { grid-template-columns:minmax(0,1fr) 250px; }
  body.geo-site .map-frame .example-jump { right:265px; }
  .gs-product-copy { grid-template-columns:160px minmax(0,1fr); gap:8px 26px; }
  body.geo-site .hm-footer-cols > div { grid-template-columns:160px minmax(0,1fr); gap:26px; }
}
@media(max-width:900px) {
  body.geo-site { margin-left:0; }
  body.geo-site .wrap, body.geo-site.gs-work .data-main > .wrap { width:calc(100% - 40px); }
  .gs-rail { position:relative; display:grid; grid-template-columns:1fr auto; gap:0 15px; width:auto; padding:18px 20px 0; overflow:visible; border-right:0; border-bottom:1px solid var(--gs-line); }
  body.geo-site .gs-rail .site-nav { grid-row:1; grid-column:1 / -1; display:flex; align-items:center; justify-content:space-between; gap:15px; }
  body.geo-site .gs-rail .brand { font-size:22px; }
  body.geo-site .gs-rail .nav-links { flex-direction:row; margin:0; }
  .gs-product-nav { grid-row:2; grid-column:1; justify-content:flex-start; margin:14px 0 9px; gap:8px; font-size:14px; }
  body.geo-site .gs-rail .status { margin-left:4px; font-size:11px; }
  .gs-rail-end { grid-row:2; grid-column:2; padding:0; margin:0; align-self:center; }
  body.geo-site .gs-rail-end .nav-disabled { min-height:0; padding:0; border:0; font-size:13px; }
  body.geo-site .gs-rail .phone-btn { display:none; }
  body.geo-site .gs-rail .steps { grid-column:1 / -1; grid-row:3; min-width:0; }
  body.geo-site .gs-rail .steps .wrap { display:flex; flex-direction:row; overflow-x:auto; gap:6px; padding:5px 0 12px; scrollbar-width:thin; }
  body.geo-site .gs-rail .step { flex:0 0 auto; align-items:center; max-width:178px; min-height:42px; padding:8px 10px; border-left:0; border-bottom:2px solid transparent; font-size:12px; }
  body.geo-site .gs-rail .step.is-here { border-bottom-color:#236b7c; }
  .gs-task-label { display:none; }
  .gs-rail-label { display:none; }
  .gs-local { grid-column:1 / -1; grid-row:3; display:flex; flex-wrap:wrap; padding-bottom:10px; }
  .gs-local a { padding:7px 20px 7px 0; font-size:12px; }
  .gs-skip { left:20px; }
  body.geo-site .hm-hero-body { padding:36px 0 32px; }
  body.geo-site .hm-hero h1 { font-size:clamp(36px,6vw,54px); }
  body.geo-site .ov-hero { padding-top:36px; }
}
@media(max-width:700px) {
  body.geo-site.gs-work .map-frame.is-split, body.geo-site.gs-work .map-frame:has(> .map-controls) { display:block; }
  body.geo-site.gs-work .map-frame #map, body.geo-site.gs-work .map-frame #exmap, body.geo-site.gs-work .map-frame #attrmap { height:52vh !important; min-height:340px !important; max-height:520px; }
  body.geo-site.gs-work .map-frame .map-side, body.geo-site.gs-work .map-frame > .map-controls { width:auto; height:auto; min-height:0; max-height:none; overflow:visible; padding:20px; border:0; border-top:1px solid var(--gs-line); }
  body.geo-site .map-frame .example-jump { right:12px; }
  body.geo-site .viewswitch { display:flex !important; }
  body.geo-site .viewswitch button { padding:12px; }
  body.geo-site .viewswitch button strong { font-size:13px; }
  body.geo-site .viewswitch button em { font-size:12px; }
  body.geo-site .gs-method { margin-top:26px; padding-top:26px; }
}
@media(max-width:620px) {
  body.geo-site .hm-hero h1 { font-size:clamp(33px,8vw,44px); max-width:24ch; margin-top:14px; }
  body.geo-site .hm-lede { font-size:16px; }
  body.geo-site .hm-hero .hm-kicker { max-width:32ch; }
  body.geo-site .hm-actions { gap:10px; margin-top:22px; }
  body.geo-site .hm-btn { padding:10px 13px; font-size:13px; }
  .gs-product-copy { grid-template-columns:1fr; gap:9px; }
  body.geo-site .hm-card p { grid-column:1; grid-row:auto; margin-top:7px; }
  body.geo-site .hm-card em { margin-top:5px; }
  body.geo-site .hm-footer-cols > div { grid-template-columns:1fr; gap:14px; }
  body.geo-site .hm-footer-cols { gap:28px; padding:28px 0; }
  body.geo-site .ov-hero h1 { font-size:52px; }
  body.geo-site .ov-lede { font-size:16px; }
  body.geo-site .ov-facts > div { grid-template-columns:85px minmax(0,1fr); gap:15px; padding:11px 0; }
  body.geo-site .ov-facts dd { font-size:13px; }
  body.geo-site .ov-map { height:240px; }
  .gs-toc { gap:8px 18px; padding:15px 0; }
  .gs-contents-label { flex-basis:100%; }
  body.geo-site .ov-section { padding:28px 0; }
  body.geo-site .ov-label h2 { font-size:25px; }
  body.geo-site .ov-standfirst strong { font-size:21px; }
  body.geo-site .ov-tier h3 { font-size:21px; }
  body.geo-site .ov-tier h3 span { display:block; margin-bottom:8px; }
  body.geo-site .ov-body p, body.geo-site .ov-tier p { line-height:1.85; }
  body.geo-site .ov-table { font-size:12px; }
  body.geo-site .ov-table th:first-child, body.geo-site .ov-table td:first-child { width:90px; }
  body.geo-site .ov-table th, body.geo-site .ov-table td { padding-right:10px; }
  .gs-title { padding:28px 0 22px; }
  .gs-title h1 { font-size:29px; }
  body.geo-site.doc-page .data-top .data-hero { padding:32px 0 25px; }
  body.geo-site.doc-page .data-section { padding:28px 0; }
  body.geo-site.doc-page .data-section h2 { font-size:25px; }
  body.geo-site.doc-page .dl-line { grid-template-columns:1fr; gap:5px; padding:17px 0; }
  body.geo-site.doc-page .dl-line > a { font-size:13px; }
  body.geo-site.doc-page .rel-table { font-size:12px; }
  body.geo-site.doc-page .rel-table th, body.geo-site.doc-page .rel-table td { padding:10px; }
  body.geo-site .pager-inner { grid-template-columns:1fr 1fr; gap:18px; }
  body.geo-site .pager-link span { font-size:13px; }
  body.geo-site .pager-link.is-next { align-items:flex-end; text-align:right; }
}
@media(prefers-reduced-motion:reduce) { body.geo-site *, body.geo-site *::before, body.geo-site *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }

body.geo-site.overview-page .gs-toc { border-top:0; }

/* Method summaries and nested view selection. */
body.geo-site .gs-brief { max-width:84ch; margin:15px 0 0; color:#506e7b; font:400 16px/1.8 var(--sans); }
body.geo-site .gs-subnav { display:grid; gap:3px; margin:3px 0 12px 29px; padding:0 0 0 12px; border-left:1px solid #cfdee4; }
body.geo-site .gs-subnav button { display:block; width:100%; min-height:35px; padding:7px 9px; text-align:left; color:#607c89; background:none; border:0; border-radius:2px; cursor:pointer; font:400 13px/1.6 var(--sans); }
body.geo-site .gs-subnav button strong { font:inherit; }
body.geo-site .gs-subnav button.is-on { color:#235f73; background:#eaf1f4; }
body.geo-site .gs-subnav button:hover { background:#e7eff3; }
body.geo-site .gs-map-context { margin:0 0 17px; color:#6b8590; font:400 14px/1.75 var(--sans); }
body.geo-site .gs-map-context em { font:inherit; }
body.geo-site .gs-method .data-hero { display:block; }
body.geo-site .gs-method .data-section { padding-bottom:0; }
body.geo-site .map-side .map-legend { position:static !important; max-width:none; width:auto; margin:24px 0 0; padding:18px 0 0; color:#64808d; background:none; border:0; border-top:1px solid var(--gs-line); box-shadow:none; font-size:13px; line-height:1.75; }
body.geo-site .map-side .example-jump { position:static; display:block; width:100%; max-width:none; margin-top:22px; padding:12px; color:#466b7b; background:#f2f6f8; border:1px solid #d9e5ea; border-radius:2px; box-shadow:none; text-align:left; }
body.geo-site .map-side .example-jump .ej-line { font-size:13px; }
body.geo-site .map-side .example-jump em { color:#7a929d; font-size:12px; }
body.geo-site #exampleView > .data-section { padding-top:28px !important; }

/* The old two-column document layout extended these elements 312px left.
   The sidebar now owns that space: keep all document content in its column. */
body.geo-site.doc-page .data-main, body.geo-site.doc-page .data-main > .wrap,
body.geo-site.doc-page .split-head, body.geo-site.doc-page .sh-head,
body.geo-site.doc-page .sh-body { min-width:0; }
body.geo-site.doc-page .sh-body { width:100%; max-width:100%; }
body.geo-site.doc-page .sh-body .table-shell,
body.geo-site.doc-page .sh-body .dl-line,
body.geo-site.doc-page .sh-body .method-note,
body.geo-site.doc-page .sh-body .key-fact,
body.geo-site.doc-page .sh-body .home-get { margin-left:0; margin-right:0; width:100%; max-width:100%; min-width:0; }
body.geo-site.doc-page .table-scroll,
body.geo-site.doc-page .table-scroll.is-full { display:block; width:100%; max-width:100%; max-height:none; overflow-x:auto; overflow-y:auto; }
body.geo-site.doc-page .table-shell { contain:inline-size; }
body.geo-site.doc-page figure { max-width:100%; margin-inline:0; }
body.geo-site.doc-page figure img { display:block; max-width:100%; height:auto; }
body.geo-site.doc-page .data-main > .wrap { padding-bottom:42px; }
body.geo-site.gs-work .data-main > .wrap { padding-bottom:18px; }
@media(max-width:900px) {
  body.geo-site .gs-subnav { flex:0 0 auto; display:flex; align-items:center; gap:4px; margin:0 8px 0 0; padding-left:8px; }
  body.geo-site .gs-subnav button { width:auto; white-space:nowrap; padding:8px 10px; font-size:12px; }
}
@media(max-width:620px) {
  body.geo-site .gs-brief { font-size:15px; }
  body.geo-site .gs-map-context { font-size:13px; }
}

body.geo-site .gs-view-option { display:block; min-height:35px; padding:7px 9px; color:#607c89; font:400 13px/1.6 var(--sans); }
body.geo-site .gs-view-option strong { font:inherit; }
body.geo-site .gs-view-option.is-on { color:#235f73; background:#eaf1f4; border-radius:2px; }
body.geo-site .gs-view-option.is-unavailable { color:#788d97; }
@media(max-width:900px) { body.geo-site .gs-view-option { white-space:nowrap; font-size:12px; } }


/* One navigation rail; complete methods, controls, then a full-width map. */
body.geo-site .gs-rail .gs-rail-toc { display:grid; gap:2px; margin:2px 0 12px 13px; padding:4px 0 4px 15px; border:0; border-left:1px solid #cfdee4; background:none; }
body.geo-site .gs-rail-toc .gs-contents-label { margin:3px 0 4px; color:#84959c; font-size:10px; letter-spacing:.06em; }
body.geo-site .gs-rail-toc a { display:block; padding:4px 6px; font-size:12px; line-height:1.5; }
body.geo-site .hm-card { cursor:default; }
body.geo-site .hm-card:hover { border-color:var(--gs-line); }
body.geo-site.gs-work .gs-title { padding-bottom:22px; border-bottom:0; }
body.geo-site.gs-work .gs-method { margin:0; padding:0 0 26px; border:0; }
body.geo-site.gs-work .data-top .gs-method .data-hero { padding:0; }
body.geo-site.gs-work .data-top .gs-method .data-lede strong,
body.geo-site.gs-work .data-top .gs-method .data-lede b,
body.geo-site.gs-work .data-top .gs-method .data-lede em { color:inherit; }
body.geo-site.gs-work .data-top .gs-method .data-lede code { color:#285c6e; background:#eef4f6; }
body.geo-site.gs-work .gs-method .data-lede { max-width:112ch; font-size:15px; line-height:1.8; }
body.geo-site.gs-work .gs-method .section-intro { margin:12px 0 0; max-width:112ch; font-size:14px; line-height:1.8; }
body.geo-site.gs-work .gs-availability { margin:0 0 20px; padding:12px 16px; border:0; border-left:2px solid #c6d7de; background:#f7fafb; font-size:13px; line-height:1.7; }
body.geo-site.gs-work .gs-availability strong { display:inline; margin-right:8px; }
body.geo-site.gs-work .gs-view-method,
body.geo-site.gs-work #exampleView > .gs-view-method { padding:0 0 20px !important; margin:0; border:0; }
body.geo-site.gs-work .gs-view-method h2 { margin:8px 0 10px; font-size:22px; }
body.geo-site.gs-work .gs-view-method .section-intro { margin:0; max-width:112ch; font-size:14px; line-height:1.8; }
body.geo-site.gs-work .map-frame { display:block; width:100%; min-width:0; margin:0; }
body.geo-site.gs-work .gs-map-tools { min-width:0; margin:0 0 16px; border:1px solid var(--gs-line); border-radius:2px; background:#fff; }
body.geo-site.gs-work .gs-map-tools .map-side,
body.geo-site.gs-work .gs-map-tools .map-controls,
body.geo-site.gs-work .gs-map-tools .map-panel,
body.geo-site.gs-work .gs-map-tools .map-readout { position:static; inset:auto; z-index:auto; width:auto; height:auto; min-height:0; max-height:none; margin:0; padding:18px 20px; overflow:visible; border:0; border-radius:0; background:none; box-shadow:none; }
body.geo-site.gs-work .gs-map-tools .map-panel { display:block; border-top:1px solid var(--gs-line); }
body.geo-site.gs-work .gs-map-tools .map-readout { border-top:1px solid var(--gs-line); }
body.geo-site.gs-work .gs-map-tools .map-side { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:18px 28px; }
body.geo-site.gs-work .gs-map-tools .gs-region-tools { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }
body.geo-site.gs-work .gs-tool-selection,
body.geo-site.gs-work .gs-tool-files,
body.geo-site.gs-work .gs-tool-legend { min-width:0; }
body.geo-site.gs-work .gs-region-tools > .gs-tool-legend { grid-column:1/-1; display:flex; align-items:flex-start; justify-content:space-between; gap:16px 28px; padding-top:16px; border-top:1px solid var(--gs-line); }
body.geo-site.gs-work .gs-region-tools .merit-callout { margin:0; padding:0; border:0; color:#5b7380; font-size:13px; line-height:1.7; }
body.geo-site.gs-work .gs-map-tools .filelist { max-height:150px; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; }
body.geo-site.gs-work .gs-map-tools .selection-summary { max-width:none; max-height:280px; margin:8px 0 0; overflow:auto; color:#526e7a; font-size:14px; line-height:1.75; }
body.geo-site.gs-work .gs-map-tools .panel-actions { display:flex; flex-wrap:wrap; margin:12px 0 0; gap:8px; }
body.geo-site.gs-work .gs-map-tools .panel-label { margin:0 0 10px; }
body.geo-site.gs-work .gs-map-tools .map-legend,
body.geo-site.gs-work .gs-map-tools .map-legend-inline { position:static !important; width:auto; max-width:none; max-height:none; margin:0; padding:0; border:0; background:none; box-shadow:none; font-size:13px; line-height:1.75; }
body.geo-site.gs-work .gs-map-tools .example-jump { max-width:340px; margin:14px 0 0; }
body.geo-site.gs-work .gs-map-tools .grid-toggle,
body.geo-site.gs-work .gs-map-tools .map-toggles { position:static; inset:auto; z-index:auto; margin:0; padding:0; border:0; border-radius:0; background:none; box-shadow:none; }
body.geo-site.gs-work .gs-map-tools > .map-toggles { display:flex; flex-wrap:wrap; gap:12px 24px; padding:14px 20px; border-top:1px solid var(--gs-line); }
body.geo-site.gs-work .gs-map-tools .grid-toggle { flex-shrink:0; padding-top:2px; font-size:13px; }
body.geo-site.gs-work .gs-map-tools .map-controls .fd-group { display:flex; flex-direction:row; flex-wrap:wrap; align-items:center; gap:10px 20px; margin:0 0 14px; overflow:visible; }
body.geo-site.gs-work .gs-map-tools .fd-label { min-width:84px; margin:0; }
body.geo-site.gs-work .gs-map-tools .fd-group.is-modes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; align-items:stretch; }
body.geo-site.gs-work .gs-map-tools .fd-group.is-modes > .fd-label { grid-column:1/-1; margin-bottom:3px; }
body.geo-site.gs-work .gs-map-tools .mode-opt { display:grid; grid-template-columns:15px 46px minmax(0,1fr); align-items:center; gap:8px; padding:10px; }
body.geo-site.gs-work .gs-map-tools .map-formula { margin:10px 0 0; overflow-wrap:anywhere; }
body.geo-site.gs-work .gs-map-tools .map-note { margin:8px 0 0; }
body.geo-site.gs-work .gs-map-tools .mode-note { margin:10px 0 0; }
body.geo-site.gs-work #zenodoFile:empty,
body.geo-site.gs-work .gs-map-tools .map-legend-inline:empty,
body.geo-site.gs-work .gs-map-tools .map-formula:empty,
body.geo-site.gs-work .gs-map-tools .map-note:empty,
body.geo-site.gs-work .gs-map-tools .mode-note:empty { display:none; }
body.geo-site.gs-work [hidden] { display:none !important; }
@media(max-width:1100px) {
  body.geo-site.gs-work .gs-map-tools .fd-group.is-modes { grid-template-columns:1fr; }
  body.geo-site.gs-work .gs-map-tools .mode-opt { grid-template-columns:15px 46px minmax(0,1fr); }
}
@media(max-width:900px) {
  body.geo-site .gs-rail .gs-rail-toc { flex:0 0 auto; display:flex; flex-wrap:wrap; align-content:center; gap:2px 6px; max-width:310px; margin:0 8px 0 0; padding:0 10px; }
  body.geo-site .gs-rail-toc .gs-contents-label { flex-basis:100%; }
  body.geo-site .gs-rail-toc a { padding:4px; white-space:nowrap; }
}
@media(max-width:700px) {
  body.geo-site.gs-work .gs-method { padding-bottom:22px; }
  body.geo-site.gs-work .gs-map-tools .map-side { grid-template-columns:1fr; }
  body.geo-site.gs-work .gs-region-tools > .gs-tool-legend { display:flex; flex-direction:column; gap:12px; }
  body.geo-site.gs-work .gs-basin-tools > .gs-tool-legend { padding-top:14px; border-top:1px solid var(--gs-line); }
  body.geo-site.gs-work .gs-map-tools .map-side,
  body.geo-site.gs-work .gs-map-tools .map-controls,
  body.geo-site.gs-work .gs-map-tools .map-panel,
  body.geo-site.gs-work .gs-map-tools .map-readout { padding:16px; }
  body.geo-site.gs-work .gs-map-tools .fd-group > .fd-label { flex-basis:100%; }
}
