/* Nutrien Harcourts theme (brand guide 2026, audit of 3 Nov 2026). Loaded only when the tour's theme is nutrien-harcourts. */
@font-face { font-family: "Source Sans 3"; src: url("../themes/nutrien-harcourts/fonts/source-sans-3-latin-wght-normal.woff2") format("woff2"); font-weight: 200 900; font-style: normal; font-display: swap; }
@font-face { font-family: "SS3 Fallback"; src: local("Arial"); size-adjust: 94%; }
:root[data-theme="nutrien-harcourts"] {
  --surface: #002920; --graze: #00594C; --accent: #9ED21A; --on-accent: #002920; --accent-ink: #002920;
  --here: #00AEEF; --ink: #FFFFFF; --muted: #C2D3CC; --glass: rgba(0, 41, 32, .9); --solid: #002920; --glass-line: rgba(255, 255, 255, .18);
  --field-line: #7FA89B; --error: #FF8A80; --focus-inner: #002920; --water: #7DD3FC; --dam: #1F6FB5;
  --on-light: #002920; --on-light-muted: #5C6B64; --on-light-accent: #00594C;
  --shadow: 0 6px 24px rgba(0, 0, 0, .35);
  font-family: "Source Sans 3", "Source Sans Pro", "SS3 Fallback", Arial, sans-serif;
  font-size: 18px;
}
[data-theme="nutrien-harcourts"] button, [data-theme="nutrien-harcourts"] input { font-family: inherit; }
[data-theme="nutrien-harcourts"] .btn { font-weight: 600; font-size: 16px; }
[data-theme="nutrien-harcourts"] .btn.primary { color: #002920; }
[data-theme="nutrien-harcourts"] .btn:focus-visible, [data-theme="nutrien-harcourts"] .pin:focus-visible, [data-theme="nutrien-harcourts"] .shot:focus-visible,
[data-theme="nutrien-harcourts"] .spot:focus-visible, [data-theme="nutrien-harcourts"] .mini:focus-visible, [data-theme="nutrien-harcourts"] .menu button:focus-visible { outline: 3px solid #fff; outline-offset: 2px; box-shadow: 0 0 0 2px #002920; }
html[data-theme="nutrien-harcourts"], html[data-theme="nutrien-harcourts"] body { background: #002920; }

/* Type scale */
[data-theme="nutrien-harcourts"] .head h1 { font-size: 19px; font-weight: 700; }
[data-theme="nutrien-harcourts"] .head .facts { font-size: 13.5px; }
[data-theme="nutrien-harcourts"] .d-step, [data-theme="nutrien-harcourts"] .v-words span, [data-theme="nutrien-harcourts"] .dock p#dMore { font-size: 15px; }
[data-theme="nutrien-harcourts"] .d-step { font-weight: 600; }
[data-theme="nutrien-harcourts"] .dock h2 { font-size: 22px; font-weight: 700; }
[data-theme="nutrien-harcourts"] .dock p#dText { font-size: 18px; line-height: 1.45; }
[data-theme="nutrien-harcourts"] .pin, [data-theme="nutrien-harcourts"] .ring-lbl, [data-theme="nutrien-harcourts"] .spot i { font-weight: 700; font-variant-numeric: tabular-nums; }
@media (max-width: 640px) {
  [data-theme="nutrien-harcourts"] .head h1 { font-size: 18px; }
  [data-theme="nutrien-harcourts"] .head .facts { font-size: 13.5px; }
  [data-theme="nutrien-harcourts"] .dock h2 { font-size: 20px; }
  [data-theme="nutrien-harcourts"] .dock p#dText { font-size: 17px; }
  [data-theme="nutrien-harcourts"] .brand-logo { height: 18px; }
}

/* Panels and surfaces */
[data-theme="nutrien-harcourts"] .map, [data-theme="nutrien-harcourts"] .leaflet-container, [data-theme="nutrien-harcourts"] .mini { background: #002920; }
[data-theme="nutrien-harcourts"] .strip { background: linear-gradient(to top, rgba(0, 41, 32, .92), rgba(0, 41, 32, 0)); }
[data-theme="nutrien-harcourts"] .credit { background: rgba(0, 41, 32, .7) !important; }
[data-theme="nutrien-harcourts"] .scale, [data-theme="nutrien-harcourts"] .mini::after { background: rgba(0, 41, 32, .88); }
[data-theme="nutrien-harcourts"] .leaflet-tooltip.peek { background: #002920; }
[data-theme="nutrien-harcourts"] .photo { background: #002920; }
[data-theme="nutrien-harcourts"] .photo-bar { background: #002920; }
[data-theme="nutrien-harcourts"] .ph-step { color: #9ED21A; }
[data-theme="nutrien-harcourts"] .photo-bar small { color: #C2D3CC; }
[data-theme="nutrien-harcourts"] .hint, [data-theme="nutrien-harcourts"] .spot span, [data-theme="nutrien-harcourts"] .lbl span, [data-theme="nutrien-harcourts"] .place { background: rgba(0, 41, 32, .9); }
[data-theme="nutrien-harcourts"] .place.k-road, [data-theme="nutrien-harcourts"] .place.k-highway { background: rgba(0, 41, 32, .78); }
[data-theme="nutrien-harcourts"] .lg-dot { background: #002920; }
[data-theme="nutrien-harcourts"] .lg-line { border-top-color: #fff; }
[data-theme="nutrien-harcourts"] .lg-fill { background: rgba(158, 210, 26, .55); }
[data-theme="nutrien-harcourts"] .lg-route { border-top-color: #9ED21A; }
[data-theme="nutrien-harcourts"] .loading span { border-color: rgba(255, 255, 255, .25); border-top-color: #9ED21A; }
[data-theme="nutrien-harcourts"] .toast { background: #fff; color: #002920; }
[data-theme="nutrien-harcourts"] .better { color: #002920; }
[data-theme="nutrien-harcourts"] .menu button:hover { background: rgba(255, 255, 255, .12); }
[data-theme="nutrien-harcourts"] .menu button[aria-checked="true"] i::after { border-color: #002920; }
[data-theme="nutrien-harcourts"] .needle b { color: #9ED21A; }

/* Pins (change 8, 7) */
[data-theme="nutrien-harcourts"] .pin { background: #002920; color: #fff; border: 2.5px solid #fff; }
[data-theme="nutrien-harcourts"] .pin.seen { background: #00594C; border-color: #9ED21A; }
[data-theme="nutrien-harcourts"] .pin:hover, [data-theme="nutrien-harcourts"] .pin.hot { background: #9ED21A; color: #002920; border-color: #fff; }
[data-theme="nutrien-harcourts"] .pin.here { background: #fff; color: #002920; border: 3px solid #00AEEF; box-shadow: 0 0 0 1.5px #002920, 0 2px 10px rgba(0, 0, 0, .5); transform: scale(1.15); }
[data-theme="nutrien-harcourts"] .pins-dots .pin.seen { background: #9ED21A; }
[data-theme="nutrien-harcourts"] .pins-dots .pin.here { background: #fff; }
[data-theme="nutrien-harcourts"] path.cone { fill: rgba(0, 174, 239, .28); stroke: #00AEEF; }

/* Boundary, roads, routes (changes 9, 10). Leaflet writes colours as attributes; CSS overrides them. */
[data-theme="nutrien-harcourts"] .leaflet-overlay-pane path[fill="#000"] { fill: #000; fill-opacity: .24; }   /* a light neutral shade outside the property, no green cast (3 Nov 2026, round 2) */
[data-theme="nutrien-harcourts"] .leaflet-pane path[stroke="#000"]:not([class*="road"]):not([class*="route"]) { stroke: #000; stroke-opacity: .35; stroke-width: 4px; }
[data-theme="nutrien-harcourts"] .leaflet-pane path[stroke="#fff"]:not([class*="fence"]):not([class*="here"]):not([class*="road"]):not([class*="track"]):not([class*="route"]):not([class*="ring"]) { stroke: #fff; stroke-width: 2px; }   /* white boundary, as the v2 video */
[data-theme="nutrien-harcourts"] .mini .leaflet-pane path[stroke="#000"]:not([class*="road"]):not([class*="route"]) { stroke-width: 4px; }
[data-theme="nutrien-harcourts"] .mini .leaflet-pane path[stroke="#fff"]:not([class*="fence"]):not([class*="here"]):not([class*="road"]):not([class*="track"]):not([class*="route"]):not([class*="ring"]) { stroke-width: 2px; }
[data-theme="nutrien-harcourts"] path.prop-fill { fill: #9ED21A; }
[data-theme="nutrien-harcourts"] path.road { stroke: #F8F6EF; stroke-opacity: .55; }
[data-theme="nutrien-harcourts"] path.road.highway { stroke-opacity: .7; }
[data-theme="nutrien-harcourts"] path.track { stroke: #fff; stroke-opacity: .55; }
[data-theme="nutrien-harcourts"] path.route-case { stroke: #002920; stroke-opacity: .6; }
[data-theme="nutrien-harcourts"] path.route-core { stroke: #9ED21A; stroke-width: 3px; stroke-opacity: .85; filter: none; }
[data-theme="nutrien-harcourts"] path.route-case { stroke-width: 6px; stroke-opacity: .35; }
[data-theme="nutrien-harcourts"] .place.k-road svg, [data-theme="nutrien-harcourts"] .place.k-highway svg,
[data-theme="nutrien-harcourts"] .lbl.k-road span svg, [data-theme="nutrien-harcourts"] .lbl.k-highway span svg { color: #fff; }
[data-theme="nutrien-harcourts"] .place.k-highway { background: #002920; color: #fff; }
[data-theme="nutrien-harcourts"] .place.k-highway svg { color: #9ED21A; }
/* Mini map dots: "here" is white with a cyan ring, seen is Light Green */
[data-theme="nutrien-harcourts"] .mini path[fill="#ef4444"] { fill: #fff; stroke: #00AEEF; }
[data-theme="nutrien-harcourts"] .mini path[fill="#a3e635"] { fill: #9ED21A; }
[data-theme="nutrien-harcourts"] .mini path[fill="#0f1412"] { fill: #002920; }

/* Dams (17), towns (12) */
[data-theme="nutrien-harcourts"] .dam-pin { background: #1F6FB5; }
[data-theme="nutrien-harcourts"] .dam-pin:hover, [data-theme="nutrien-harcourts"] .dam-pin.lit { background: #fff; }
[data-theme="nutrien-harcourts"] .dam-pin:hover svg, [data-theme="nutrien-harcourts"] .dam-pin.lit svg { fill: #1F6FB5; }
[data-theme="nutrien-harcourts"] path.water-area { stroke: #7DD3FC; }
[data-theme="nutrien-harcourts"] .leaflet-tooltip.town-tip { color: #002920; }
[data-theme="nutrien-harcourts"] .town-card b, [data-theme="nutrien-harcourts"] .town-card p { color: #002920; }
[data-theme="nutrien-harcourts"] .town-card .tc-dist { color: #00594C; }
[data-theme="nutrien-harcourts"] .town-card small { color: #5C6B64; font-size: 12px; }
[data-theme="nutrien-harcourts"] .place.k-town, [data-theme="nutrien-harcourts"] .lbl.k-town span { background: #fff; color: #002920; }
[data-theme="nutrien-harcourts"] .place.k-town svg, [data-theme="nutrien-harcourts"] .lbl.k-town span svg { color: #00594C; }
[data-theme="nutrien-harcourts"] .place.k-town em, [data-theme="nutrien-harcourts"] .lbl.k-town span em { color: #5C6B64; }
[data-theme="nutrien-harcourts"] .place.k-town .town-dot { background: #00594C; box-shadow: 0 0 0 1px #002920; }

/* 360 labels (25) */
[data-theme="nutrien-harcourts"] .spot i { background: #9ED21A; color: #002920; border: 3px solid #fff; }
[data-theme="nutrien-harcourts"] .spot.ground .foot { background: #9ED21A; }
[data-theme="nutrien-harcourts"] .spot.far i { background: rgba(0, 41, 32, .6); color: #fff; }
[data-theme="nutrien-harcourts"] .lbl.focus span { outline-color: #9ED21A; }
[data-theme="nutrien-harcourts"] .lbl.tap span { outline-color: #7DD3FC; }
[data-theme="nutrien-harcourts"] .lbl.k-mark span { background: #fff; color: #002920; }
[data-theme="nutrien-harcourts"] .lbl.k-mark u { background: #fff; border-color: #00AEEF; }
[data-theme="nutrien-harcourts"] .place.k-mark { background: #fff; color: #002920; }

/* Photo strip badges (18) */
[data-theme="nutrien-harcourts"] .shot { border-color: rgba(255, 255, 255, .6); background: #00594C; }
[data-theme="nutrien-harcourts"] .shot b { background: rgba(0, 41, 32, .9); }
[data-theme="nutrien-harcourts"] .shot.seen b { background: #9ED21A; color: #002920; }
[data-theme="nutrien-harcourts"] .shot:hover, [data-theme="nutrien-harcourts"] .shot.hot { border-color: #9ED21A; }
[data-theme="nutrien-harcourts"] .strip { padding-left: calc(24px + var(--safe-l)); padding-right: calc(24px + var(--safe-r)); scroll-padding: 0 24px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 20px, #000 calc(100% - 20px), transparent); mask-image: linear-gradient(90deg, transparent, #000 20px, #000 calc(100% - 20px), transparent); }

/* Download IM */
[data-theme="nutrien-harcourts"] .im-btn { border-color: #9ED21A; color: #fff; }
[data-theme="nutrien-harcourts"] .im-btn:hover { background: rgba(158, 210, 26, .12); }
[data-theme="nutrien-harcourts"] .field input { color: #002920; }
[data-theme="nutrien-harcourts"] .field input:focus { border-color: #9ED21A; box-shadow: 0 0 0 3px rgba(158, 210, 26, .45); }
[data-theme="nutrien-harcourts"] .btn.small[aria-pressed="true"] { color: #002920; }

/* Map controls (round 2, 3 Nov 2026): off-white with Rich Green type, brand colours as accents, so they sit lightly on
   the satellite map and on the white area map */
[data-theme="nutrien-harcourts"] .btn.fit, [data-theme="nutrien-harcourts"] .more-btn, [data-theme="nutrien-harcourts"] .zoom-hint,
[data-theme="nutrien-harcourts"] .leaflet-control-zoom a { background: #F8F6EF !important; color: #002920 !important; border: 1px solid rgba(0, 41, 32, .16) !important; -webkit-backdrop-filter: none; backdrop-filter: none; }
[data-theme="nutrien-harcourts"] body.viewing #map .btn.fit, [data-theme="nutrien-harcourts"] body.viewing #map .more-btn { background: #F8F6EF !important; }
[data-theme="nutrien-harcourts"] .btn.fit:hover, [data-theme="nutrien-harcourts"] .zoom-hint:hover, [data-theme="nutrien-harcourts"] .leaflet-control-zoom a:hover { background: #fff !important; filter: none; }
[data-theme="nutrien-harcourts"] .zoom-hint svg { color: #4E9B47; }
[data-theme="nutrien-harcourts"] .more-btn[aria-pressed="true"] { background: #9ED21A !important; }
[data-theme="nutrien-harcourts"] .leaflet-control-zoom a:first-child { border-bottom-color: rgba(0, 41, 32, .1) !important; }
[data-theme="nutrien-harcourts"] .area map-anim-live { --map-anim-bg: #F8F6EF; }
[data-theme="nutrien-harcourts"] .area-card { box-shadow: 0 6px 22px rgba(0, 41, 32, .28); }
[data-theme="nutrien-harcourts"] .as-dot { background: #4E9B47; box-shadow: 0 0 0 4px rgba(78, 155, 71, .25), 0 1px 4px rgba(0, 41, 32, .35); }
[data-theme="nutrien-harcourts"] .area-spot, [data-theme="nutrien-harcourts"] .area-site, [data-theme="nutrien-harcourts"] .area-head { color: #002920; }
[data-theme="nutrien-harcourts"] .as-text b { text-decoration-color: #4E9B47; }
[data-theme="nutrien-harcourts"] .as-text small, [data-theme="nutrien-harcourts"] .ah-more { color: #00594C; opacity: 1; }
[data-theme="nutrien-harcourts"] .area-site i { border-color: #002920; }
