/* RiverWatch Ure — authoritative visual theme
   Keeps the established river palette while standardising type, spacing, radii,
   elevation and secondary-page presentation across the product. */
:root{
  --rw-ink:#10231a;
  --rw-ink-soft:#41544a;
  --rw-muted:#6b7b73;
  --rw-line:rgba(16,35,26,.11);
  --rw-line-strong:rgba(16,35,26,.17);
  --rw-surface:#fff;
  --rw-surface-soft:#f5f8f5;
  --rw-canvas:#eef2ee;
  --rw-green:#153f2c;
  --rw-green-2:#2d6a4b;
  --rw-green-soft:#e7efe9;
  --rw-river:#286d82;
  --rw-gold:#b77a24;
  --rw-danger:#a6463f;
  --rw-radius-control:10px;
  --rw-radius-card:14px;
  --rw-radius-feature:18px;
  --rw-radius-shell:24px;
  --rw-shadow-float:0 16px 42px rgba(15,38,27,.10);
  --rw-content:1240px;
  /* Compatibility aliases for existing specialist/page CSS. */
  --premium-ink:var(--rw-ink);
  --premium-ink-soft:var(--rw-ink-soft);
  --premium-muted:var(--rw-muted);
  --premium-line:var(--rw-line);
  --premium-line-strong:var(--rw-line-strong);
  --premium-surface:var(--rw-surface);
  --premium-surface-soft:var(--rw-surface-soft);
  --premium-canvas:var(--rw-canvas);
  --premium-green:var(--rw-green);
  --premium-green-2:var(--rw-green-2);
  --premium-green-soft:var(--rw-green-soft);
  --premium-blue:var(--rw-river);
  --premium-gold:var(--rw-gold);
  --premium-danger:var(--rw-danger);
  --premium-radius-sm:var(--rw-radius-control);
  --premium-radius:var(--rw-radius-card);
  --premium-radius-lg:var(--rw-radius-feature);
  --premium-shadow-sm:none;
  --premium-shadow:var(--rw-shadow-float);
  --premium-content:var(--rw-content);
}

html{background:var(--rw-canvas)}
body.premium{color:var(--rw-ink);background:linear-gradient(180deg,#f8faf8 0%,var(--rw-canvas) 76%)}
body.premium .page-shell{border-radius:var(--rw-radius-shell);box-shadow:0 20px 64px rgba(15,38,27,.085)}
body.premium .site-header{min-height:68px;border-radius:var(--rw-radius-shell) var(--rw-radius-shell) 0 0;padding-inline:22px}
body.premium .brand-mark{width:38px;height:38px;border-radius:11px}
body.premium .brand-mark svg{width:22px;height:22px}
body.premium .brand-name{font-weight:720}
body.premium .brand-subtitle{font-weight:600;letter-spacing:.045em}
body.premium .site-nav>a,body.premium .nav-more>summary{min-height:36px;padding:0 11px;border-radius:var(--rw-radius-control);font-weight:650;box-shadow:none}
body.premium .site-nav>a[aria-current="page"],body.premium .nav-more-active>summary{color:var(--rw-green);background:var(--rw-green-soft);box-shadow:none}
body.premium .nav-more-menu{border-radius:var(--rw-radius-card);box-shadow:var(--rw-shadow-float)}

/* Type scale */
body.premium h1,body.premium h2,body.premium h3{color:var(--rw-ink)}
body.premium h1{font-weight:720;letter-spacing:-.045em}
body.premium h2{font-weight:700;letter-spacing:-.032em}
body.premium h3{font-weight:680;letter-spacing:-.015em}
body.premium .eyebrow{font-size:.68rem;font-weight:680;letter-spacing:.105em}
body.premium .helper-text,body.premium .lede{color:var(--rw-ink-soft)}

/* Surfaces: borders do the work; elevation is reserved for floating UI. */
body.premium .panel,
body.premium .station-card,
body.premium .weather-card,
body.premium .weather-metric-card,
body.premium .weather-insight-card,
body.premium .threshold-card,
body.premium .chart-summary-card,
body.premium .fly-card,
body.premium .guide-card,
body.premium .overflow-card,
body.premium .summary-card,
body.premium .note-card,
body.premium .section-intelligence-card,
body.premium .fm-catalog-card{
  border-color:var(--rw-line)!important;
  border-radius:var(--rw-radius-card)!important;
  background:var(--rw-surface)!important;
  box-shadow:none!important;
}
body.premium .station-card:hover,body.premium .fly-card:hover,body.premium .overflow-card:hover,body.premium .fm-catalog-card:hover{transform:none!important;box-shadow:none!important}
body.premium .button,body.premium button,body.premium .actions a,body.premium .premium-primary,body.premium .premium-secondary{border-radius:var(--rw-radius-control);box-shadow:none}
body.premium .count-pill,body.premium .confidence-pill,body.premium .condition-badge,body.premium .status,body.premium .relevance-pill{border-radius:999px}

/* Homepage: identity first, then get users to the decision quickly. */
body.premium.page-overview .simplified-hero{min-height:330px}
body.premium.page-overview .simplified-hero .premium-hero-content{max-width:700px;padding:48px clamp(26px,5vw,58px) 46px}
body.premium.page-overview .simplified-hero h1{max-width:650px;font-size:clamp(2.45rem,5vw,4rem);line-height:1;letter-spacing:-.048em}
body.premium.page-overview .simplified-hero .lede{max-width:560px;font-size:clamp(.98rem,1.35vw,1.08rem)}
body.premium.page-overview .simplified-decision{border-radius:var(--rw-radius-feature);box-shadow:var(--rw-shadow-float)}
body.premium.page-overview .home-river-summary,
body.premium.page-overview .compact-conditions,
body.premium.page-overview .stage2-intelligence-card{border-radius:var(--rw-radius-card)}

/* Secondary pages: compact editorial/application headers rather than marketing heroes. */
body.premium:not(.page-overview) .site-status-strip{min-height:34px;margin-bottom:8px;padding:6px 22px;border-radius:0;background:#f8faf8;font-size:.72rem}
body.premium:not(.page-overview) .page-hero,
body.premium:not(.page-overview) .hero:not(.premium-hero){min-height:190px;padding:34px clamp(24px,5vw,56px) 36px;justify-content:flex-end;background-position:center 52%}
body.premium:not(.page-overview) .page-hero::before,
body.premium:not(.page-overview) .hero:not(.premium-hero)::before{background:linear-gradient(90deg,rgba(5,22,15,.84),rgba(5,22,15,.58) 52%,rgba(5,22,15,.18)),linear-gradient(0deg,rgba(5,22,15,.22),transparent 55%)}
body.premium:not(.page-overview) .page-hero h1,
body.premium:not(.page-overview) .hero:not(.premium-hero) h1{max-width:760px;margin:4px 0 8px;font-size:clamp(2.05rem,4vw,2.8rem);font-weight:720;line-height:1.04;letter-spacing:-.04em}
body.premium:not(.page-overview) .page-hero .lede,
body.premium:not(.page-overview) .hero:not(.premium-hero) .lede{max-width:680px;margin:0;font-size:clamp(.94rem,1.25vw,1.04rem);line-height:1.52}
body.premium:not(.page-overview) .panel,
body.premium:not(.page-overview) .fly-main-section,
body.premium:not(.page-overview) .fly-conditions-summary{margin-top:18px;margin-bottom:18px;padding:clamp(20px,2.8vw,30px);border-radius:var(--rw-radius-feature)!important;box-shadow:none!important}
body.premium:not(.page-overview) .section-heading,body.premium:not(.page-overview) .fly-section-heading{margin-bottom:16px}
body.premium:not(.page-overview) .section-heading h2,
body.premium:not(.page-overview) .fly-section-heading h2,
body.premium:not(.page-overview) .fly-conditions-copy h2,
body.premium.page-weather .weather-section-intro h2{font-size:clamp(1.45rem,2.3vw,2rem);font-weight:700;line-height:1.12}
body.premium:not(.page-overview) .helper-text,
body.premium:not(.page-overview) .fly-section-heading p,
body.premium:not(.page-overview) .fly-refine-copy p,
body.premium:not(.page-overview) .fly-adapt-heading p{max-width:720px;color:var(--rw-muted);font-size:.88rem;line-height:1.55}

/* River Data and Weather: keep numerical information visually dominant. */
body.premium.page-river-levels .station-grid,body.premium.page-weather .weather-metric-grid,body.premium.page-weather .weather-insight-grid{gap:10px}
body.premium.page-river-levels .station-card,body.premium.page-weather .weather-metric-card,body.premium.page-weather .weather-insight-card{padding:17px}
body.premium.page-river-levels .threshold-grid{gap:0;border:1px solid var(--rw-line);border-radius:var(--rw-radius-card);overflow:hidden;background:#fff}
body.premium.page-river-levels .threshold-card{border:0!important;border-right:1px solid var(--rw-line)!important;border-radius:0!important;padding:16px!important}
body.premium.page-weather .weather-note-list{display:none}
body.premium.page-weather .weather-insight-card p,body.premium.page-weather .weather-metric-card p{font-size:.78rem;line-height:1.45}

/* Overflows remain deliberately sober. */
body.premium.page-storm-overflows #overflow-count{display:none}
body.premium.page-storm-overflows .overflow-summary,body.premium.page-storm-overflows .note-grid{gap:10px}
body.premium.page-storm-overflows .overflow-record-link:hover,body.premium.page-storm-overflows .overflow-record-link:focus-visible{transform:none;box-shadow:none}

/* Map: map first, chrome second. */
body.premium.page-catchment-map .map-panel{padding-top:18px}
body.premium.page-catchment-map .map-panel>.section-heading{display:none}
body.premium.page-catchment-map .map-toolbar{margin-top:0}
body.premium.page-catchment-map .map-utility-controls button{box-shadow:none}
body.premium.page-catchment-map .section-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}
body.premium.page-catchment-map .section-summary article{padding:13px 15px;border-radius:var(--rw-radius-card);box-shadow:none}

/* Fly Guide: make the interaction read as three simple steps. */
body.premium.page-fly-guide .fly-guide-page{gap:18px}
body.premium.page-fly-guide .guide-step{margin:0 0 6px;color:var(--rw-green-2);font-size:.67rem;font-weight:720;letter-spacing:.11em;text-transform:uppercase}
body.premium.page-fly-guide .fly-conditions-summary{padding:clamp(20px,3vw,28px)}
body.premium.page-fly-guide .fly-main-section{padding-top:clamp(22px,3vw,30px)}
body.premium.page-fly-guide .fly-choice-grid{gap:12px}
body.premium.page-fly-guide .fly-refine-panel{margin-top:22px;border:1px solid var(--rw-line);border-radius:var(--rw-radius-card);background:var(--rw-surface-soft)}
body.premium.page-fly-guide .fly-observation-status[data-fly-decision-summary]{font-weight:680;color:var(--rw-green)}
body.premium.page-fly-guide .fly-compact-context{padding:20px;border:1px solid var(--rw-line);border-radius:var(--rw-radius-card);background:#f8faf8}
body.premium.page-fly-guide .fly-adapt-block{border-top:1px solid var(--rw-line)}

/* Footer is quiet product chrome, not a second hero. */
body.premium .site-footer{margin-top:clamp(34px,5vw,58px);padding-top:24px;padding-bottom:28px}

@media(max-width:900px){
  body.premium.page-river-levels .threshold-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.premium.page-catchment-map .section-summary{grid-template-columns:1fr}
}
@media(max-width:760px){
  body.premium .page-shell,body.premium .home-shell{width:min(calc(100% - 16px),var(--rw-content));margin-top:8px;border-radius:18px}
  body.premium .site-header{top:4px;min-height:62px;border-radius:18px 18px 0 0;padding-inline:16px}
  body.premium .site-nav-toggle{border-radius:var(--rw-radius-control)}
  body.premium:not(.page-overview) .page-hero,body.premium:not(.page-overview) .hero:not(.premium-hero){min-height:160px;padding:28px 20px 30px}
  body.premium:not(.page-overview) .page-hero h1,body.premium:not(.page-overview) .hero:not(.premium-hero) h1{font-size:clamp(1.9rem,8vw,2.45rem)}
  body.premium.page-overview .simplified-hero{min-height:300px}
  body.premium.page-overview .simplified-hero .premium-hero-content{padding:40px 22px 38px}
  body.premium.page-overview .simplified-hero h1{font-size:clamp(2.25rem,10vw,3.35rem)}
  body.premium.page-fly-guide .fly-refine-panel{padding:18px}
}
