/*
Theme Name: WC4DC Community
Theme URI: https://wc4dc.org/
Author: KQ4DLB / Dickson County Amateur Radio Club
Author URI: https://wc4dc.org/
Description: A modern, accessible community theme for WC4DC with integrated nets and ClubNet reporting, licensing, youth outreach, emergency communications, repeater status, events, resources, equipment lending, and member tools.
Version: 0.10.0
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 8.0
Text Domain: wc4dc
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: accessibility-ready, custom-logo, custom-menu, featured-images, block-styles, wide-blocks, full-width-template
*/

:root {
  --wc4dc-navy: #083b66;
  --wc4dc-blue: #0b5e96;
  --wc4dc-red: #c73832;
  --wc4dc-gold: #f4b942;
  --wc4dc-ink: #17212b;
  --wc4dc-muted: #5d6976;
  --wc4dc-surface: #ffffff;
  --wc4dc-soft: #f4f7f9;
  --wc4dc-border: #dbe3e9;
  --wc4dc-success: #2c7a4b;
  --wc4dc-radius: 18px;
  --wc4dc-shadow: 0 12px 34px rgba(8, 42, 67, .10);
  --wc4dc-max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--wc4dc-ink);
  background: #fff;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
}
a { color: var(--wc4dc-blue); text-decoration-thickness: .08em; text-underline-offset: .16em; }
a:hover { color: var(--wc4dc-red); }
img { max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; }

.screen-reader-text {
  border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
  height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px;
}
.screen-reader-text:focus {
  clip: auto !important; clip-path: none; display: block; height: auto; left: 12px;
  padding: 12px 16px; top: 12px; width: auto; z-index: 100000; background: #fff; color: #111;
}

.wc4dc-container { width: min(calc(100% - 36px), var(--wc4dc-max)); margin-inline: auto; }
.wc4dc-section { padding: 72px 0; }
.wc4dc-section--soft { background: var(--wc4dc-soft); }
.wc4dc-section__eyebrow {
  margin: 0 0 8px; color: var(--wc4dc-red); font-size: .78rem; font-weight: 800;
  letter-spacing: .12em; text-transform: uppercase;
}
.wc4dc-section__title { margin: 0; color: var(--wc4dc-navy); font-size: clamp(1.75rem, 4vw, 2.75rem); line-height: 1.15; }
.wc4dc-section__intro { max-width: 760px; margin: 12px 0 0; color: var(--wc4dc-muted); font-size: 1.06rem; }
.wc4dc-section__head { margin-bottom: 30px; }

/* Utility bar */
.wc4dc-topbar { background: #052d4e; color: #dceaf5; font-size: .9rem; }
.wc4dc-topbar__inner { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.wc4dc-topbar a { color: #fff; text-decoration: none; }
.wc4dc-topbar__identity { font-weight: 700; }
.wc4dc-topbar__links { display: flex; gap: 18px; align-items: center; }

/* Header */
.wc4dc-header { position: sticky; top: 0; z-index: 1000; background: rgba(255,255,255,.97); border-bottom: 1px solid var(--wc4dc-border); backdrop-filter: blur(10px); }
.admin-bar .wc4dc-header { top: 32px; }
.wc4dc-header__inner { min-height: 84px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.wc4dc-brand { display: flex; align-items: center; min-width: 250px; text-decoration: none; color: var(--wc4dc-navy); }
.wc4dc-brand:hover { color: var(--wc4dc-navy); }
.wc4dc-brand__logo { width: 64px; height: 64px; object-fit: contain; margin-right: 12px; }
.custom-logo { max-height: 64px; width: auto; }
.wc4dc-brand__callsign { display: block; font-size: 1.35rem; font-weight: 900; line-height: 1; letter-spacing: .05em; }
.wc4dc-brand__name { display: block; margin-top: 5px; color: var(--wc4dc-muted); font-size: .82rem; font-weight: 650; line-height: 1.2; }
.wc4dc-nav { margin-left: auto; }
.wc4dc-nav ul { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 4px; }
.wc4dc-nav li { position: relative; }
.wc4dc-nav a { display: block; padding: 11px 12px; border-radius: 9px; color: var(--wc4dc-ink); text-decoration: none; font-size: .94rem; font-weight: 700; }
.wc4dc-nav a:hover, .wc4dc-nav .current-menu-item > a, .wc4dc-nav .current_page_item > a { background: #eef4f8; color: var(--wc4dc-blue); }
.wc4dc-nav .sub-menu { display: none; position: absolute; top: calc(100% + 6px); left: 0; width: 230px; padding: 8px; background: #fff; border: 1px solid var(--wc4dc-border); border-radius: 12px; box-shadow: var(--wc4dc-shadow); }
.wc4dc-nav li:hover > .sub-menu, .wc4dc-nav li:focus-within > .sub-menu { display: block; }
.wc4dc-nav .sub-menu li { width: 100%; }
.wc4dc-menu-toggle { display: none; border: 1px solid var(--wc4dc-border); background: #fff; color: var(--wc4dc-navy); border-radius: 10px; padding: 9px 12px; font-weight: 800; cursor: pointer; }

/* Hero */
.wc4dc-hero { overflow: hidden; position: relative; background: linear-gradient(135deg, #062f50 0%, #0a4f7d 58%, #0b638f 100%); color: #fff; }
.wc4dc-hero::before {
  content: ""; position: absolute; inset: 0; opacity: .22; pointer-events: none;
  background-image: radial-gradient(circle at 82% 50%, transparent 0 52px, rgba(255,255,255,.34) 53px 55px, transparent 56px 92px, rgba(255,255,255,.24) 93px 95px, transparent 96px 132px, rgba(255,255,255,.18) 133px 135px, transparent 136px);
}
.wc4dc-hero__inner { position: relative; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr); gap: 52px; align-items: center; min-height: 540px; padding-top: 72px; padding-bottom: 72px; }
.wc4dc-hero__kicker { margin: 0 0 12px; color: #bfe7ff; font-size: .9rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.wc4dc-hero h1 { max-width: 760px; margin: 0; font-size: clamp(2.65rem, 6.5vw, 5.35rem); line-height: .98; letter-spacing: -.035em; }
.wc4dc-hero__lead { max-width: 690px; margin: 24px 0 0; color: #e4f2fb; font-size: clamp(1.08rem, 2vw, 1.25rem); }
.wc4dc-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.wc4dc-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 8px; padding: 12px 18px; border: 1px solid transparent; border-radius: 11px; text-decoration: none; font-weight: 800; transition: .2s ease; }
.wc4dc-button:hover { transform: translateY(-1px); }
.wc4dc-button--primary { background: var(--wc4dc-gold); color: #17212b; }
.wc4dc-button--primary:hover { color: #17212b; background: #ffd16a; }
.wc4dc-button--ghost { border-color: rgba(255,255,255,.38); color: #fff; background: rgba(255,255,255,.08); }
.wc4dc-button--ghost:hover { color: #fff; background: rgba(255,255,255,.15); }
.wc4dc-button--outline { border-color: var(--wc4dc-blue); color: var(--wc4dc-blue); background: #fff; }
.wc4dc-button--outline:hover { background: #eef6fb; }

.wc4dc-live-card { position: relative; padding: 25px; border: 1px solid rgba(255,255,255,.20); border-radius: 22px; background: rgba(255,255,255,.10); box-shadow: 0 24px 60px rgba(0,0,0,.18); backdrop-filter: blur(12px); }
.wc4dc-live-card__top { display: flex; justify-content: space-between; gap: 14px; align-items: center; margin-bottom: 18px; }
.wc4dc-live-card__label { font-size: .82rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; color: #d7efff; }
.wc4dc-live-card__pulse { width: 10px; height: 10px; border-radius: 50%; background: #5af09b; box-shadow: 0 0 0 7px rgba(90,240,155,.12); }
.wc4dc-live-card h2 { margin: 0 0 8px; font-size: 1.35rem; }
.wc4dc-live-card__meta { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 18px; }
.wc4dc-live-card__meta div { padding: 11px; border-radius: 12px; background: rgba(255,255,255,.08); }
.wc4dc-live-card__meta small { display: block; color: #b9d9eb; font-size: .72rem; text-transform: uppercase; font-weight: 800; }
.wc4dc-live-card__meta strong { display: block; margin-top: 2px; color: #fff; font-size: .95rem; }
.wc4dc-live-card .repeater-activity, .wc4dc-live-card [class*="repeater"] { color: #fff; }


/* WC4DC Live dashboard strip */
.wc4dc-hero__inner--solo { grid-template-columns: 1fr; min-height: 430px; padding-bottom: 94px; }
.wc4dc-hero__copy { max-width: 900px; }
.wc4dc-live-zone { position: relative; z-index: 4; margin-top: -54px; padding-bottom: 26px; }
.wc4dc-live-strip { overflow: hidden; border: 1px solid rgba(255,255,255,.10); border-radius: 22px; background: #062f50; color: #fff; box-shadow: 0 22px 55px rgba(6,47,80,.22); }
.wc4dc-live-strip__header { display: flex; align-items: center; justify-content: space-between; gap: 22px; padding: 17px 20px; border-bottom: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.035); }
.wc4dc-live-strip__header h2 { margin: 2px 0 0; color: #fff; font-size: 1.05rem; line-height: 1.2; }
.wc4dc-live-strip__eyebrow { display: flex; align-items: center; gap: 8px; color: #bfe7ff; font-size: .7rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.wc4dc-live-strip__dot { width: 8px; height: 8px; border-radius: 50%; background: #5af09b; box-shadow: 0 0 0 5px rgba(90,240,155,.10); }
.wc4dc-live-strip__note { color: #a9cada; font-size: .76rem; font-weight: 700; }
.wc4dc-live-grid { display: grid; grid-template-columns: 1.18fr 1fr 1fr 1.28fr; }
.wc4dc-live-tile { min-width: 0; padding: 18px 19px; border-right: 1px solid rgba(255,255,255,.11); background: transparent; color: #fff; text-decoration: none; }
.wc4dc-live-tile:last-child { border-right: 0; }
a.wc4dc-live-tile { transition: background .18s ease, transform .18s ease; }
a.wc4dc-live-tile:hover { color: #fff; background: rgba(255,255,255,.07); }
.wc4dc-live-tile__top { display: flex; align-items: center; gap: 8px; min-height: 21px; }
.wc4dc-live-tile__icon { display: inline-grid; place-items: center; width: 21px; height: 21px; border-radius: 7px; background: rgba(255,255,255,.10); color: #bfe7ff; font-size: .72rem; }
.wc4dc-live-tile__label { color: #bfe7ff; font-size: .68rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.wc4dc-live-tile__primary { display: block; overflow: hidden; margin-top: 10px; color: #fff; font-size: 1rem; line-height: 1.2; text-overflow: ellipsis; }
.wc4dc-live-tile__secondary { display: block; overflow: hidden; margin-top: 5px; color: #bed4e1; font-size: .78rem; line-height: 1.35; text-overflow: ellipsis; }
.wc4dc-live-tile__footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 14px; color: #d8e7ef; font-size: .76rem; }
.wc4dc-live-tile__footer b { color: #fff; white-space: nowrap; }
.wc4dc-live-tile__footer span { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.wc4dc-live-state.ram-state-text { position: static; width: auto; height: auto; margin-left: auto; overflow: visible; clip: auto; clip-path: none; color: #b9cbd8; font-size: .61rem; font-weight: 900; letter-spacing: .08em; }
.wc4dc-live-tile.ram-green .wc4dc-live-state { color: #70f1a6; }
.wc4dc-live-tile.ram-red .wc4dc-live-state { color: #ffb2a9; }
.wc4dc-live-tile.ram-unknown .wc4dc-live-state { color: #c2cbd2; }
.wc4dc-live-tile--repeater.ram-green { box-shadow: inset 0 3px 0 #4de58f; }
.wc4dc-live-tile--repeater.ram-red { box-shadow: inset 0 3px 0 #ff7568; }
.wc4dc-live-tile--repeater.ram-unknown { box-shadow: inset 0 3px 0 #94a3ad; }
.wc4dc-live-tile__details { display: grid; grid-template-columns: 1fr auto; gap: 12px; margin-top: 13px; }
.wc4dc-live-tile__details span { min-width: 0; }
.wc4dc-live-tile__details small { display: block; color: #8fb4c8; font-size: .62rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.wc4dc-live-tile__details b { display: block; overflow: hidden; margin-top: 2px; color: #fff; font-size: .72rem; white-space: nowrap; text-overflow: ellipsis; }
.wc4dc-live-tile--conditions { display: grid; grid-template-columns: 1fr; gap: 0; padding-top: 11px; padding-bottom: 11px; }
.wc4dc-condition-row { min-width: 0; padding: 6px 0 10px; }
.wc4dc-condition-row + .wc4dc-condition-row { padding-top: 10px; border-top: 1px solid rgba(255,255,255,.10); }
.wc4dc-condition-link { display: block; margin-top: 6px; color: #fff; text-decoration: none; }
.wc4dc-condition-link:hover { color: #fff; }
.wc4dc-condition-link strong, .wc4dc-weather-main { display: block; color: #fff; font-size: .87rem; line-height: 1.25; }
.wc4dc-condition-link strong span { color: #7299af; }
.wc4dc-condition-link small, .wc4dc-weather-detail { display: block; margin-top: 3px; color: #a9c7d7; font-size: .68rem; line-height: 1.3; }
.wc4dc-weather-main { margin-top: 6px; }
.wc4dc-weather-main > span { color: #c9deea; font-size: .72rem; font-weight: 650; }
.wc4dc-condition-empty { display: block; margin-top: 6px; color: #a9c7d7; font-size: .74rem; }

/* Homepage event cards */
.wc4dc-events-heading { display: flex; align-items: end; justify-content: space-between; gap: 32px; margin-bottom: 30px; }
.wc4dc-events-heading .wc4dc-button { flex: 0 0 auto; }
.wc4dc-event-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
.wc4dc-event-card { overflow: hidden; border: 1px solid var(--wc4dc-border); border-radius: 17px; background: #fff; box-shadow: 0 8px 24px rgba(8,42,67,.06); transition: transform .18s ease, box-shadow .18s ease; }
.wc4dc-event-card:hover { transform: translateY(-3px); box-shadow: var(--wc4dc-shadow); }
.wc4dc-event-card__image { display: block; aspect-ratio: 16 / 8; overflow: hidden; background: #dfeaf1; }
.wc4dc-event-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.wc4dc-event-card:hover .wc4dc-event-card__image img { transform: scale(1.025); }
.wc4dc-event-card__body { display: grid; grid-template-columns: 58px minmax(0,1fr); gap: 15px; padding: 18px; }
.wc4dc-event-card__date { align-self: start; overflow: hidden; border: 1px solid #c9dbe6; border-radius: 12px; text-align: center; background: #f7fbfd; }
.wc4dc-event-card__date span { display: block; padding: 4px 4px 3px; background: var(--wc4dc-red); color: #fff; font-size: .63rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.wc4dc-event-card__date strong { display: block; padding-top: 6px; color: var(--wc4dc-navy); font-size: 1.45rem; line-height: 1; }
.wc4dc-event-card__date small { display: block; padding: 4px 0 7px; color: var(--wc4dc-muted); font-size: .62rem; font-weight: 800; text-transform: uppercase; }
.wc4dc-event-card__content { min-width: 0; }
.wc4dc-event-card__type { display: inline-block; color: var(--wc4dc-red); font-size: .64rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.wc4dc-event-card h3 { margin: 5px 0 0; color: var(--wc4dc-navy); font-size: 1.08rem; line-height: 1.2; }
.wc4dc-event-card h3 a { color: inherit; text-decoration: none; }
.wc4dc-event-card h3 a:hover { color: var(--wc4dc-blue); }
.wc4dc-event-card__meta { display: flex; flex-direction: column; gap: 2px; margin-top: 9px; color: var(--wc4dc-muted); font-size: .75rem; }
.wc4dc-event-card p { margin: 11px 0 0; color: var(--wc4dc-muted); font-size: .82rem; line-height: 1.5; }
.wc4dc-event-card__more { display: inline-block; margin-top: 12px; color: var(--wc4dc-blue); font-size: .76rem; font-weight: 850; text-decoration: none; }

/* Cards */
.wc4dc-card-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
.wc4dc-card { display: flex; flex-direction: column; min-height: 245px; padding: 24px; border: 1px solid var(--wc4dc-border); border-radius: var(--wc4dc-radius); background: #fff; box-shadow: 0 7px 22px rgba(8,42,67,.055); text-decoration: none; color: inherit; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.wc4dc-card:hover { color: inherit; transform: translateY(-4px); border-color: #b9cbd8; box-shadow: var(--wc4dc-shadow); }
.wc4dc-card__icon { width: 50px; height: 50px; display: inline-grid; place-items: center; margin-bottom: 22px; border-radius: 14px; background: #eaf4fa; color: var(--wc4dc-blue); font-size: 1.5rem; font-weight: 900; }
.wc4dc-card h3 { margin: 0; color: var(--wc4dc-navy); font-size: 1.22rem; line-height: 1.2; }
.wc4dc-card p { margin: 10px 0 22px; color: var(--wc4dc-muted); font-size: .95rem; }
.wc4dc-card__link { margin-top: auto; color: var(--wc4dc-blue); font-weight: 800; font-size: .9rem; }

/* Split sections */
.wc4dc-split { display: grid; grid-template-columns: 1fr 1fr; gap: 42px; align-items: center; }
.wc4dc-panel { padding: 30px; border: 1px solid var(--wc4dc-border); border-radius: var(--wc4dc-radius); background: #fff; box-shadow: var(--wc4dc-shadow); }
.wc4dc-checklist { list-style: none; padding: 0; margin: 22px 0 0; }
.wc4dc-checklist li { position: relative; padding-left: 30px; margin: 11px 0; }
.wc4dc-checklist li::before { content: "✓"; position: absolute; left: 0; top: 0; color: var(--wc4dc-success); font-weight: 900; }

/* Events and plugin compatibility */
.wc4dc-events-shell .em-event, .wc4dc-events-shell .event, .wc4dc-events-shell .em-item,
.wc4dc-content .em-event, .wc4dc-content .em-item {
  border: 1px solid var(--wc4dc-border); border-radius: 14px; background: #fff;
}
.wc4dc-plugin-box { min-height: 110px; padding: 20px; border: 1px solid var(--wc4dc-border); border-radius: 14px; background: #fff; }
.wc4dc-plugin-placeholder { margin: 0; color: var(--wc4dc-muted); }

/* Standard content */
.wc4dc-page-hero { padding: 54px 0 42px; background: linear-gradient(180deg, #eef6fb, #fff); border-bottom: 1px solid var(--wc4dc-border); }
.wc4dc-page-hero h1 { margin: 0; color: var(--wc4dc-navy); font-size: clamp(2.1rem, 5vw, 3.6rem); line-height: 1.08; }
.wc4dc-page-hero p { max-width: 780px; color: var(--wc4dc-muted); font-size: 1.1rem; }
.wc4dc-content { width: min(calc(100% - 36px), 900px); margin: 0 auto; padding: 56px 0 78px; }
.wc4dc-content--wide { width: min(calc(100% - 36px), var(--wc4dc-max)); }
.wc4dc-content h2, .wc4dc-content h3, .wc4dc-content h4 { color: var(--wc4dc-navy); line-height: 1.22; }
.wc4dc-content table { width: 100%; border-collapse: collapse; }
.wc4dc-content th, .wc4dc-content td { padding: 11px 12px; border: 1px solid var(--wc4dc-border); text-align: left; }
.wc4dc-content th { background: var(--wc4dc-soft); }
.wc4dc-content input[type="text"], .wc4dc-content input[type="email"], .wc4dc-content input[type="password"], .wc4dc-content input[type="search"], .wc4dc-content select, .wc4dc-content textarea {
  max-width: 100%; border: 1px solid #b9c7d2; border-radius: 8px; padding: 10px 12px; background: #fff;
}
.wc4dc-content button, .wc4dc-content input[type="submit"] { border: 0; border-radius: 9px; background: var(--wc4dc-blue); color: #fff; padding: 10px 16px; font-weight: 800; cursor: pointer; }
.alignwide { width: min(1100px, calc(100vw - 36px)); max-width: none; margin-left: 50%; transform: translateX(-50%); }
.alignfull { width: 100vw; max-width: none; margin-left: 50%; transform: translateX(-50%); }

/* Library / forms / UM compatibility */
.document-library-pro, .dlp-table, .dg-wrapper, .um, .wpforms-container, .clubnet-log-wrap { max-width: 100%; }
.um input[type=text], .um input[type=password], .um input[type=email] { border-radius: 8px !important; }

/* Footer */
.wc4dc-footer { background: #062c4b; color: #d9e8f2; }
.wc4dc-footer a { color: #fff; }
.wc4dc-footer__main { display: grid; grid-template-columns: 1.3fr .8fr .9fr; gap: 45px; padding: 58px 0 42px; }
.wc4dc-footer__brand { display: flex; align-items: center; gap: 14px; margin-bottom: 14px; }
.wc4dc-footer__brand img { width: 62px; height: 62px; object-fit: contain; }
.wc4dc-footer h2, .wc4dc-footer h3 { color: #fff; margin-top: 0; }
.wc4dc-footer ul { list-style: none; padding: 0; margin: 0; }
.wc4dc-footer li { margin: 7px 0; }
.wc4dc-footer__bottom { border-top: 1px solid rgba(255,255,255,.14); padding: 18px 0; color: #b9cfdd; font-size: .88rem; }
.wc4dc-footer__bottom-inner { display: flex; justify-content: space-between; gap: 20px; }

/* 404 */
.wc4dc-404 { text-align: center; padding: 90px 0; }
.wc4dc-404__code { color: var(--wc4dc-red); font-size: 5rem; font-weight: 950; line-height: 1; }

@media (max-width: 1000px) {
  .wc4dc-live-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .wc4dc-live-tile:nth-child(2) { border-right: 0; }
  .wc4dc-live-tile:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.11); }
  .wc4dc-event-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .wc4dc-card-grid { grid-template-columns: repeat(2, 1fr); }
  .wc4dc-hero__inner { grid-template-columns: 1fr; min-height: auto; }
  .wc4dc-live-card { max-width: 650px; }
  .wc4dc-footer__main { grid-template-columns: 1fr 1fr; }
  .wc4dc-footer__main > :first-child { grid-column: 1 / -1; }
  .wc4dc-menu-toggle { display: inline-flex; }
  .wc4dc-nav { display: none; position: absolute; top: 100%; left: 0; right: 0; margin: 0; padding: 10px 18px 18px; background: #fff; border-bottom: 1px solid var(--wc4dc-border); box-shadow: 0 12px 20px rgba(8,42,67,.08); }
  .wc4dc-nav.is-open { display: block; }
  .wc4dc-nav ul { align-items: stretch; flex-direction: column; }
  .wc4dc-nav li { width: 100%; }
  .wc4dc-nav .sub-menu { display: block; position: static; width: auto; border: 0; border-left: 2px solid var(--wc4dc-border); border-radius: 0; box-shadow: none; margin-left: 12px; padding: 0 0 0 8px; }
}
@media (max-width: 782px) { .admin-bar .wc4dc-header { top: 46px; } }
@media (max-width: 700px) {
  .wc4dc-hero__inner.wc4dc-hero__inner--solo { padding-bottom: 82px; }
  .wc4dc-live-zone { margin-top: -42px; }
  .wc4dc-live-strip__header { align-items: flex-start; flex-direction: column; gap: 7px; }
  .wc4dc-live-grid { grid-template-columns: 1fr; }
  .wc4dc-live-tile, .wc4dc-live-tile:nth-child(2) { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.11); }
  .wc4dc-live-tile:last-child { border-bottom: 0; }
  .wc4dc-event-grid { grid-template-columns: 1fr; }
  .wc4dc-events-heading { align-items: flex-start; flex-direction: column; }
  .wc4dc-section { padding: 54px 0; }
  .wc4dc-topbar__links { display: none; }
  .wc4dc-header__inner { min-height: 72px; }
  .wc4dc-brand { min-width: 0; }
  .wc4dc-brand__logo, .custom-logo { max-height: 52px; width: auto; }
  .wc4dc-brand__callsign { font-size: 1.12rem; }
  .wc4dc-brand__name { display: none; }
  .wc4dc-card-grid, .wc4dc-split { grid-template-columns: 1fr; }
  .wc4dc-hero__inner { padding-top: 56px; padding-bottom: 56px; gap: 34px; }
  .wc4dc-live-card__meta { grid-template-columns: 1fr; }
  .wc4dc-footer__main { grid-template-columns: 1fr; }
  .wc4dc-footer__main > :first-child { grid-column: auto; }
  .wc4dc-footer__bottom-inner { flex-direction: column; }
}

/* Repeater Activity owns the site-wide floating badge. v0.7.0 restores it. */
body .ram-badge.ram-floating { top: 50px; right: 14px; }
body.admin-bar .ram-badge.ram-floating { top: 82px; }

/* ==========================================================
   New Ham Center
   ========================================================== */
.wc4dc-new-ham { background: #fff; }
.wc4dc-ham-hero { position: relative; overflow: hidden; background: linear-gradient(135deg,#052d4e 0%,#0a507e 62%,#0a6b93 100%); color: #fff; }
.wc4dc-ham-hero::after { content:""; position:absolute; width:520px; height:520px; right:-160px; top:-185px; border:1px solid rgba(255,255,255,.14); border-radius:50%; box-shadow:0 0 0 55px rgba(255,255,255,.035),0 0 0 110px rgba(255,255,255,.025); }
.wc4dc-ham-hero__inner { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); gap:60px; align-items:center; min-height:500px; padding-top:76px; padding-bottom:76px; }
.wc4dc-ham-hero h1 { max-width:760px; margin:0; color:#fff; font-size:clamp(2.8rem,6vw,5.25rem); line-height:.98; letter-spacing:-.045em; }
.wc4dc-ham-hero__copy > p:not(.wc4dc-hero__kicker) { max-width:720px; margin:24px 0 0; color:#dfeef7; font-size:1.16rem; }
.wc4dc-ham-hero__radio { padding:27px; border:1px solid rgba(255,255,255,.2); border-radius:20px; background:rgba(255,255,255,.1); box-shadow:0 24px 60px rgba(0,0,0,.16); backdrop-filter:blur(12px); }
.wc4dc-ham-hero__radio-label { display:block; color:#bfe7ff; font-size:.72rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.wc4dc-ham-hero__radio strong { display:block; margin-top:14px; color:#fff; font-size:2.25rem; line-height:1; letter-spacing:.02em; }
.wc4dc-ham-hero__radio > span:not(.wc4dc-ham-hero__radio-label) { display:block; margin-top:9px; color:#fff; font-weight:800; }
.wc4dc-ham-hero__radio small { display:block; margin-top:22px; padding-top:18px; border-top:1px solid rgba(255,255,255,.16); color:#cfe3ef; line-height:1.55; }

.wc4dc-ham-path { position:sticky; top:84px; z-index:20; border-bottom:1px solid var(--wc4dc-border); background:rgba(255,255,255,.96); box-shadow:0 7px 22px rgba(8,42,67,.06); backdrop-filter:blur(10px); }
.admin-bar .wc4dc-ham-path { top:116px; }
.wc4dc-ham-path__inner { display:grid; grid-template-columns:repeat(6,1fr); }
.wc4dc-ham-path a { display:flex; align-items:center; justify-content:center; gap:8px; min-height:68px; padding:10px 9px; border-right:1px solid var(--wc4dc-border); color:var(--wc4dc-muted); text-decoration:none; font-size:.78rem; font-weight:800; text-align:center; transition:.18s ease; }
.wc4dc-ham-path a:last-child { border-right:0; }
.wc4dc-ham-path a:hover { background:#eef6fb; color:var(--wc4dc-blue); }
.wc4dc-ham-path b { display:grid; place-items:center; width:25px; height:25px; flex:0 0 25px; border-radius:50%; background:#e5f0f7; color:var(--wc4dc-blue); font-size:.7rem; }

.wc4dc-ham-step { scroll-margin-top:88px; padding:82px 0; }
.wc4dc-ham-step--light { background:#f5f8fa; }
.wc4dc-ham-step--blue { background:linear-gradient(135deg,#083b66,#0a5d8c); color:#e5f2fa; }
.wc4dc-ham-step--dark { background:#062c4b; color:#dbeaf3; }
.wc4dc-ham-step__heading { display:grid; grid-template-columns:72px minmax(0,1fr); gap:24px; align-items:start; max-width:960px; margin-bottom:40px; }
.wc4dc-ham-step__heading--compact { margin-bottom:22px; }
.wc4dc-ham-step__number { display:grid; place-items:center; width:64px; height:64px; border-radius:18px; background:#e7f2f8; color:var(--wc4dc-blue); font-size:1.15rem; font-weight:950; letter-spacing:.04em; }
.wc4dc-ham-step__heading h2 { margin:4px 0 10px; color:var(--wc4dc-navy); font-size:clamp(2rem,4vw,3.05rem); line-height:1.07; letter-spacing:-.025em; }
.wc4dc-ham-step__heading p:not(.wc4dc-section__eyebrow) { max-width:850px; margin:0; color:var(--wc4dc-muted); font-size:1.04rem; }
.wc4dc-ham-step--blue .wc4dc-ham-step__heading h2,.wc4dc-ham-step--dark .wc4dc-ham-step__heading h2 { color:#fff; }
.wc4dc-ham-step--blue .wc4dc-ham-step__heading p:not(.wc4dc-section__eyebrow),.wc4dc-ham-step--dark .wc4dc-ham-step__heading p:not(.wc4dc-section__eyebrow) { color:#cfe2ee; }
.wc4dc-ham-step--blue .wc4dc-section__eyebrow,.wc4dc-ham-step--dark .wc4dc-section__eyebrow { color:#9fdcff; }
.wc4dc-ham-step--blue .wc4dc-ham-step__number,.wc4dc-ham-step--dark .wc4dc-ham-step__number { background:rgba(255,255,255,.11); color:#c7ebff; }

.wc4dc-ham-capabilities { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.wc4dc-ham-capabilities article { padding:27px; border:1px solid var(--wc4dc-border); border-radius:17px; background:#fff; box-shadow:0 8px 24px rgba(8,42,67,.05); }
.wc4dc-ham-capabilities article > span { display:grid; place-items:center; width:48px; height:48px; border-radius:14px; background:#e9f4fa; color:var(--wc4dc-blue); font-size:1.35rem; }
.wc4dc-ham-capabilities h3 { margin:18px 0 7px; color:var(--wc4dc-navy); }
.wc4dc-ham-capabilities p { margin:0; color:var(--wc4dc-muted); }
.wc4dc-ham-note { margin-top:25px; padding:17px 20px; border-left:4px solid var(--wc4dc-gold); border-radius:0 12px 12px 0; background:#fff8e7; color:#4b4024; }
.wc4dc-ham-note a { font-weight:800; }

.wc4dc-ham-two-col { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr); gap:54px; align-items:center; }
.wc4dc-ham-action-list { counter-reset:ham-actions; list-style:none; margin:27px 0 30px; padding:0; }
.wc4dc-ham-action-list li { display:grid; grid-template-columns:100px minmax(0,1fr); gap:16px; padding:14px 0; border-bottom:1px solid var(--wc4dc-border); }
.wc4dc-ham-action-list b { color:var(--wc4dc-navy); }
.wc4dc-ham-action-list span { color:var(--wc4dc-muted); }
.wc4dc-ham-live-card { overflow:hidden; position:relative; padding:29px; border-radius:20px; background:#07395f; color:#fff; box-shadow:var(--wc4dc-shadow); }
.wc4dc-ham-live-card::after { content:""; position:absolute; width:180px; height:180px; right:-70px; top:-70px; border:2px solid rgba(255,255,255,.08); border-radius:50%; box-shadow:0 0 0 28px rgba(255,255,255,.03); }
.wc4dc-ham-live-card__label { position:relative; z-index:1; margin:0; color:#a9d8f2; font-size:.72rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.wc4dc-ham-live-card__call { position:relative; z-index:1; display:block; margin-top:12px; font-size:2.35rem; line-height:1; }
.wc4dc-ham-live-card__specs { position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:22px; }
.wc4dc-ham-live-card__specs span { padding:12px; border-radius:12px; background:rgba(255,255,255,.08); }
.wc4dc-ham-live-card__specs small,.wc4dc-ham-next small { display:block; color:#9dc4da; font-size:.65rem; font-weight:850; letter-spacing:.05em; text-transform:uppercase; }
.wc4dc-ham-live-card__specs b { display:block; margin-top:3px; }
.wc4dc-ham-next { position:relative; z-index:1; margin-top:19px; padding-top:18px; border-top:1px solid rgba(255,255,255,.13); }
.wc4dc-ham-next a { display:block; margin-top:5px; color:#fff; text-decoration:none; }
.wc4dc-ham-next a b,.wc4dc-ham-next a span { display:block; }
.wc4dc-ham-next a span { color:#bed6e4; font-size:.8rem; }
.wc4dc-ham-live-card__warning { position:relative; z-index:1; margin:18px 0 0; color:#f5d68c; font-size:.8rem; }

.wc4dc-license-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:17px; }
.wc4dc-license-card { padding:27px; border:1px solid rgba(255,255,255,.15); border-radius:17px; background:rgba(255,255,255,.07); }
.wc4dc-license-card--featured { border-color:#f3c454; background:rgba(244,185,66,.12); box-shadow:inset 0 3px 0 var(--wc4dc-gold); }
.wc4dc-license-card > span { color:#9fdcff; font-size:.67rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.wc4dc-license-card--featured > span { color:#ffd777; }
.wc4dc-license-card h3 { margin:8px 0 8px; color:#fff; font-size:1.45rem; }
.wc4dc-license-card p { margin:0; color:#cfe1ec; }
.wc4dc-testing-panel { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-top:26px; padding:25px 28px; border:1px solid rgba(255,255,255,.16); border-radius:17px; background:#fff; color:var(--wc4dc-ink); }
.wc4dc-testing-panel__eyebrow { margin:0; color:var(--wc4dc-red); font-size:.7rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.wc4dc-testing-panel h3 { margin:5px 0 2px; color:var(--wc4dc-navy); font-size:1.3rem; }
.wc4dc-testing-panel p { margin:3px 0 0; color:var(--wc4dc-muted); }
.wc4dc-testing-panel__actions { display:flex; align-items:center; flex-wrap:wrap; gap:14px; }
.wc4dc-testing-link { color:var(--wc4dc-blue); font-weight:800; text-decoration:none; }
.wc4dc-ham-process { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; overflow:hidden; margin-top:25px; border:1px solid rgba(255,255,255,.14); border-radius:14px; background:rgba(255,255,255,.13); }
.wc4dc-ham-process span { display:flex; align-items:center; gap:9px; min-height:70px; padding:13px 15px; background:#083d68; color:#e2f0f8; font-size:.82rem; font-weight:750; }
.wc4dc-ham-process b { display:grid; place-items:center; width:25px; height:25px; flex:0 0 25px; border-radius:50%; background:rgba(255,255,255,.12); color:#fff; }

.wc4dc-practice-layout { display:grid; gap:28px; }
.wc4dc-practice-intro { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr); gap:42px; align-items:end; }
.wc4dc-practice-intro__copy > p { max-width:820px; margin:18px 0 0; color:var(--wc4dc-muted); font-size:1.02rem; }
.wc4dc-practice-intro__tools { display:flex; flex-direction:column; align-items:flex-end; gap:14px; }
.wc4dc-practice-chips { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; margin:0; }
.wc4dc-practice-chips span { padding:7px 11px; border:1px solid #c9dbe6; border-radius:999px; background:#fff; color:var(--wc4dc-navy); font-size:.76rem; font-weight:800; }
.wc4dc-practice-trainer { width:100%; max-width:1120px; margin:0 auto; }
.wc4dc-practice-trainer > .wc4dc-exam-app { width:100%; margin:0; }
.wc4dc-practice-trainer .wc4dc-exam-launcher,
.wc4dc-practice-trainer .wc4dc-exam-session,
.wc4dc-practice-trainer .wc4dc-results { width:100%; }
.wc4dc-practice-panel { display:flex; flex-direction:column; justify-content:center; padding:30px; border:1px solid #cddce6; border-radius:20px; background:#fff; box-shadow:var(--wc4dc-shadow); }
.wc4dc-practice-panel--fallback { max-width:760px; margin:0 auto; }
.wc4dc-practice-panel__tag { align-self:flex-start; padding:5px 9px; border-radius:999px; background:#fff2d4; color:#77560f; font-size:.65rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.wc4dc-practice-panel h3 { margin:13px 0 7px; color:var(--wc4dc-navy); font-size:1.55rem; }
.wc4dc-practice-panel p { color:var(--wc4dc-muted); }
.wc4dc-practice-panel .wc4dc-button { align-self:flex-start; }
.wc4dc-practice-mock { margin-top:10px; padding:17px; border-radius:14px; background:#f3f7f9; }
.wc4dc-practice-mock > span { display:block; color:var(--wc4dc-blue); font-size:1.7rem; font-weight:950; }
.wc4dc-practice-mock > b { display:block; color:var(--wc4dc-muted); font-size:.72rem; }
.wc4dc-practice-mock > div { overflow:hidden; height:7px; margin-top:11px; border-radius:999px; background:#dce8ee; }
.wc4dc-practice-mock i { display:block; height:100%; border-radius:inherit; background:var(--wc4dc-success); }

.wc4dc-radio-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.wc4dc-radio-grid article { padding:28px; border:1px solid var(--wc4dc-border); border-radius:18px; background:#fff; box-shadow:0 7px 22px rgba(8,42,67,.05); }
.wc4dc-radio-grid__recommended { border-color:#8cbcd7 !important; box-shadow:inset 0 3px 0 var(--wc4dc-blue),0 7px 22px rgba(8,42,67,.07) !important; }
.wc4dc-radio-grid article > span { color:var(--wc4dc-red); font-size:.66rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.wc4dc-radio-grid h3 { margin:8px 0; color:var(--wc4dc-navy); }
.wc4dc-radio-grid p { margin:0; color:var(--wc4dc-muted); }
.wc4dc-radio-grid small { display:block; margin-top:20px; padding-top:14px; border-top:1px solid var(--wc4dc-border); color:var(--wc4dc-blue); font-weight:800; }

.wc4dc-ham-step--dark .wc4dc-ham-qso-checklist { list-style:none; margin:24px 0 0; padding:0; }
.wc4dc-ham-qso-checklist li { position:relative; margin:10px 0; padding-left:28px; color:#d3e5ef; }
.wc4dc-ham-qso-checklist li::before { content:"✓"; position:absolute; left:0; color:#69e7a0; font-weight:900; }
.wc4dc-qso-script { padding:29px; border:1px solid rgba(255,255,255,.15); border-radius:20px; background:rgba(255,255,255,.07); }
.wc4dc-qso-script > span { color:#9fdcff; font-size:.7rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.wc4dc-qso-script blockquote { margin:14px 0; padding:17px 19px; border-left:3px solid var(--wc4dc-gold); border-radius:0 11px 11px 0; background:rgba(255,255,255,.07); color:#fff; font-size:1.08rem; font-weight:700; }
.wc4dc-qso-script p,.wc4dc-qso-script small { color:#c7dce8; }

.wc4dc-ham-help { padding:72px 0; background:#eef6fa; }
.wc4dc-ham-help__inner { display:flex; align-items:center; justify-content:space-between; gap:48px; }
.wc4dc-ham-help h2 { max-width:760px; margin:4px 0 9px; color:var(--wc4dc-navy); font-size:clamp(2rem,4vw,3rem); line-height:1.08; }
.wc4dc-ham-help p:not(.wc4dc-section__eyebrow) { max-width:780px; margin:0; color:var(--wc4dc-muted); }
.wc4dc-ham-help__actions { display:flex; flex-wrap:wrap; gap:10px; flex:0 0 auto; }
.wc4dc-admin-note { margin:24px 0; padding:13px 16px; border:1px dashed #b8c9d5; border-radius:10px; background:#f8fbfd; color:#5e6b76; font-size:.8rem; }

@media (max-width: 900px) {
  .wc4dc-ham-hero__inner,.wc4dc-ham-two-col { grid-template-columns:1fr; }
  .wc4dc-ham-hero__radio { max-width:560px; }
  .wc4dc-ham-capabilities,.wc4dc-license-grid,.wc4dc-radio-grid { grid-template-columns:1fr; }
  .wc4dc-ham-process { grid-template-columns:repeat(2,1fr); }
  .wc4dc-ham-path__inner { overflow-x:auto; justify-content:start; grid-template-columns:repeat(6,minmax(135px,1fr)); }
  .wc4dc-ham-path a { white-space:nowrap; }
  .wc4dc-practice-intro { grid-template-columns:1fr; gap:22px; align-items:start; }
  .wc4dc-practice-intro__tools { align-items:flex-start; }
  .wc4dc-practice-chips { justify-content:flex-start; }
  .wc4dc-ham-help__inner { align-items:flex-start; flex-direction:column; }
}
@media (max-width: 782px) { .admin-bar .wc4dc-ham-path { top:130px; } }
@media (max-width: 700px) { .wc4dc-ham-path { top:72px; } .admin-bar .wc4dc-ham-path { top:118px; } }
@media (max-width: 600px) {
  .wc4dc-ham-hero__inner { min-height:0; padding-top:58px; padding-bottom:58px; gap:34px; }
  .wc4dc-ham-hero h1 { font-size:clamp(2.55rem,13vw,3.7rem); }
  .wc4dc-ham-step { padding:58px 0; }
  .wc4dc-ham-step__heading { grid-template-columns:48px minmax(0,1fr); gap:15px; }
  .wc4dc-ham-step__number { width:46px; height:46px; border-radius:13px; font-size:.88rem; }
  .wc4dc-ham-action-list li { grid-template-columns:1fr; gap:2px; }
  .wc4dc-testing-panel { align-items:flex-start; flex-direction:column; }
  .wc4dc-ham-process { grid-template-columns:1fr; }
  .wc4dc-ham-live-card__specs { grid-template-columns:1fr 1fr; }
  .wc4dc-ham-help { padding:55px 0; }
}


/* =========================================================
   0.4.0 — Radio Library + Youth Radio Lab
   ========================================================= */
.wc4dc-library-hero{background:linear-gradient(135deg,#062f53,#0b5e96);color:#fff;padding:70px 0 58px;overflow:hidden;position:relative}.wc4dc-library-hero:after{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(255,255,255,.09);border-radius:50%;right:-150px;top:-180px;box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.018)}.wc4dc-library-hero__inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:end}.wc4dc-library-hero__eyebrow,.wc4dc-lab-hero__eyebrow{display:block;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#ffd36d;margin-bottom:9px}.wc4dc-library-hero h1,.wc4dc-lab-hero h1{font-size:clamp(2.35rem,5vw,4.5rem);line-height:.98;letter-spacing:-.045em;margin:0;color:#fff;max-width:850px}.wc4dc-library-hero p{font-size:1.08rem;line-height:1.65;color:#dcecf6;max-width:760px;margin:18px 0 0}.wc4dc-library-hero__stats{display:grid;grid-template-columns:repeat(3,minmax(105px,1fr));gap:10px;min-width:390px}.wc4dc-library-stat{border:1px solid rgba(255,255,255,.2);border-radius:15px;padding:16px;background:rgba(255,255,255,.07);backdrop-filter:blur(4px)}.wc4dc-library-stat strong{display:block;font-size:1.65rem;color:#fff}.wc4dc-library-stat span{display:block;font-size:.72rem;color:#cbe0ed;text-transform:uppercase;letter-spacing:.06em;font-weight:700}.wc4dc-library-main{background:#f4f7f9;padding:44px 0 72px}.wc4dc-library-note{display:flex;gap:12px;align-items:flex-start;margin-bottom:24px;padding:14px 16px;border:1px solid #d5e0e7;border-radius:14px;background:#fff;color:#5d6976;font-size:.9rem}.wc4dc-library-note strong{color:#083b66}.wc4dc-library-note>span{display:flex;flex:0 0 30px;width:30px;height:30px;border-radius:50%;align-items:center;justify-content:center;background:#eaf4fb;color:#0b5e96;font-weight:900}
.wc4dc-lab-page{background:#f3f8fb}.wc4dc-lab-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 35%,rgba(69,219,168,.2),transparent 20%),radial-gradient(circle at 15% 70%,rgba(244,185,66,.15),transparent 24%),linear-gradient(135deg,#062f53 0%,#083b66 48%,#0b5e96 100%);color:#fff;padding:72px 0 64px}.wc4dc-lab-hero__inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.65fr);gap:54px;align-items:center}.wc4dc-lab-hero p{max-width:720px;color:#d9ebf5;font-size:1.08rem;line-height:1.65;margin:18px 0 0}.wc4dc-lab-hero__chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.wc4dc-lab-hero__chips span{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);border-radius:999px;padding:7px 10px;color:#e8f5fb;font-size:.78rem;font-weight:700}.wc4dc-lab-orbit{position:relative;height:300px;display:flex;align-items:center;justify-content:center}.wc4dc-lab-orbit__center{position:relative;z-index:5;width:96px;height:96px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:#083b66;font-weight:900;letter-spacing:.05em;box-shadow:0 14px 34px rgba(0,0,0,.18)}.wc4dc-lab-orbit__ring{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.22)}.wc4dc-lab-orbit__ring--1{width:160px;height:160px}.wc4dc-lab-orbit__ring--2{width:235px;height:235px}.wc4dc-lab-orbit__ring--3{width:300px;height:300px}.wc4dc-lab-orbit__node{position:absolute;z-index:6;width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#0d6ba8;border:1px solid rgba(255,255,255,.25);font-size:1.15rem;box-shadow:0 8px 20px rgba(0,0,0,.12)}.wc4dc-lab-orbit__node--1{top:24px;left:52%}.wc4dc-lab-orbit__node--2{right:18px;top:46%}.wc4dc-lab-orbit__node--3{bottom:25px;left:56%}.wc4dc-lab-orbit__node--4{left:20px;top:49%}.wc4dc-lab-main{padding:48px 0 76px}.wc4dc-lab-for-adults{margin-top:28px;display:grid;grid-template-columns:auto 1fr;gap:14px;padding:20px;border-radius:18px;background:#fff;border:1px solid #d8e2e8}.wc4dc-lab-for-adults__icon{display:flex;width:45px;height:45px;border-radius:13px;align-items:center;justify-content:center;background:#eaf4fb;color:#0b5e96;font-size:1.15rem}.wc4dc-lab-for-adults h3{font-size:1rem;color:#083b66;margin:0 0 5px}.wc4dc-lab-for-adults p{font-size:.9rem;color:#5d6976;line-height:1.55;margin:0}
.wc4dc-resource-single{background:#f4f7f9;padding:50px 0 72px}.wc4dc-resource-single__layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px}.wc4dc-resource-single__article,.wc4dc-resource-single__aside{border:1px solid #dbe3e9;border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(8,42,67,.06)}.wc4dc-resource-single__article{padding:30px}.wc4dc-resource-single__article h1{font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;color:#083b66;margin:.15em 0 .35em}.wc4dc-resource-single__article .entry-content{line-height:1.72;color:#34434f}.wc4dc-resource-single__aside{padding:20px;height:max-content}.wc4dc-resource-single__aside h2{font-size:1rem;color:#083b66}.wc4dc-resource-detail-list{display:grid;gap:12px;margin:15px 0}.wc4dc-resource-detail-list div{border-top:1px solid #edf1f4;padding-top:10px}.wc4dc-resource-detail-list span{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:#778590;font-weight:800}.wc4dc-resource-detail-list strong{display:block;margin-top:3px;color:#263642;font-size:.9rem}.wc4dc-resource-single__actions{display:grid;gap:8px;margin-top:18px}
@media(max-width:900px){.wc4dc-library-hero__inner,.wc4dc-lab-hero__inner,.wc4dc-resource-single__layout{grid-template-columns:1fr}.wc4dc-library-hero__stats{max-width:520px}.wc4dc-lab-orbit{max-width:380px;margin:auto;width:100%}}
@media(max-width:640px){.wc4dc-library-hero,.wc4dc-lab-hero{padding:50px 0 44px}.wc4dc-library-hero__stats{grid-template-columns:1fr 1fr;min-width:0}.wc4dc-lab-orbit{height:240px}.wc4dc-lab-orbit__ring--1{width:125px;height:125px}.wc4dc-lab-orbit__ring--2{width:185px;height:185px}.wc4dc-lab-orbit__ring--3{width:235px;height:235px}.wc4dc-resource-single__article{padding:20px}}

/* 0.5.0 — Equipment Lending */
.wc4dc-home-community-actions{display:flex;gap:10px;flex-wrap:wrap}.wc4dc-equipment-hero{background:linear-gradient(135deg,#07385f 0%,#0b5e96 58%,#147aa9 100%);color:#fff;overflow:hidden}.wc4dc-equipment-hero__inner{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:40px;align-items:center;padding-top:62px;padding-bottom:62px}.wc4dc-equipment-hero__eyebrow{display:block;font-size:.74rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase;color:#b9def0;margin-bottom:8px}.wc4dc-equipment-hero h1{color:#fff;font-size:clamp(2.35rem,5vw,4.3rem);line-height:1.02;letter-spacing:-.045em;max-width:850px;margin:0 0 16px}.wc4dc-equipment-hero p{color:#e2eff6;max-width:760px;font-size:1.05rem;line-height:1.65}.wc4dc-equipment-hero__chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.wc4dc-equipment-hero__chips span{border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:7px 10px;font-size:.75rem;font-weight:800}.wc4dc-equipment-hero__mark{height:190px;position:relative;display:flex;align-items:center;justify-content:center}.wc4dc-equipment-hero__mark span{position:absolute;border:2px solid rgba(255,255,255,.14);border-radius:50%;width:105px;height:105px}.wc4dc-equipment-hero__mark span:nth-child(2){width:165px;height:165px}.wc4dc-equipment-hero__mark strong{position:relative;z-index:1;display:flex;width:80px;height:80px;align-items:center;justify-content:center;border-radius:23px;background:#fff;color:var(--wc4dc-navy);box-shadow:0 15px 35px rgba(0,0,0,.2);font-size:.9rem;letter-spacing:.08em}.wc4dc-equipment-main{padding:42px 0 70px;background:#f7fafb}.wc4dc-equipment-intro{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr);gap:34px;margin:0 0 30px;padding:23px 25px;border:1px solid var(--wc4dc-border);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(8,42,67,.05)}.wc4dc-equipment-intro>div>span{display:block;color:var(--wc4dc-red);font-size:.7rem;font-weight:900;letter-spacing:.1em}.wc4dc-equipment-intro h2{font-size:1.55rem;color:var(--wc4dc-navy);margin:5px 0 0}.wc4dc-equipment-intro ol{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;margin:0;padding-left:22px;color:#4d5d69}.wc4dc-equipment-intro li{padding-left:3px;line-height:1.5}.wc4dc-equipment-item-hero{background:#eef5f8;border-bottom:1px solid var(--wc4dc-border)}.wc4dc-equipment-item-hero__grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:42px;align-items:center;padding-top:48px;padding-bottom:48px}.wc4dc-equipment-item-hero__image{display:flex;height:340px;align-items:center;justify-content:center;border-radius:22px;overflow:hidden;background:#fff;box-shadow:var(--wc4dc-shadow)}.wc4dc-equipment-item-hero__image img{width:100%;height:100%;object-fit:cover}.wc4dc-equipment-item-hero__image>span{font-size:4rem;color:var(--wc4dc-blue)}.wc4dc-equipment-item-hero__copy h1{font-size:clamp(2.2rem,4vw,3.65rem);line-height:1.05;color:var(--wc4dc-navy);margin:6px 0}.wc4dc-equipment-item-model{font-weight:800;color:#435864;font-size:1.1rem}.wc4dc-equipment-item-status{display:inline-flex;margin:9px 0 12px;border-radius:999px;padding:6px 10px;background:#edf1f3;color:#4f5b64;font-size:.72rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.wc4dc-equipment-item-status--available{background:#e5f5eb;color:#23643d}.wc4dc-equipment-item-status--reserved{background:#fff2d3;color:#74530c}.wc4dc-equipment-item-status--checked_out{background:#e7edf8;color:#445582}.wc4dc-equipment-item-status--maintenance{background:#fff0ef;color:#8b3833}.wc4dc-equipment-item-lead{font-size:1.05rem;line-height:1.65;color:#50616e;max-width:700px}.wc4dc-equipment-item-content{max-width:900px;margin:0 auto}
@media(max-width:800px){.wc4dc-equipment-hero__inner,.wc4dc-equipment-intro,.wc4dc-equipment-item-hero__grid{grid-template-columns:1fr}.wc4dc-equipment-hero__mark{display:none}.wc4dc-equipment-intro ol{grid-template-columns:1fr}.wc4dc-equipment-item-hero__image{height:280px}}

/* =========================================================
   Member Resource Center page
   ========================================================= */
.wc4dc-member-hero{position:relative;overflow:hidden;padding:66px 0 58px;background:linear-gradient(118deg,#071e31 0%,#0a4268 58%,#0b608b 100%);color:#fff}.wc4dc-member-hero:after{content:"";position:absolute;width:470px;height:470px;border-radius:50%;right:-150px;top:-210px;border:70px solid rgba(255,255,255,.045)}
.wc4dc-member-hero__inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(230px,.55fr);align-items:center;gap:55px}.wc4dc-member-hero__eyebrow{display:block;margin-bottom:9px;color:#8dd9f4;font-size:.76rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.wc4dc-member-hero h1{max-width:800px;margin:0;color:#fff;font-size:clamp(2.3rem,5vw,4.35rem);line-height:1.02;letter-spacing:-.035em}.wc4dc-member-hero p{max-width:750px;margin:19px 0 0;color:rgba(255,255,255,.78);font-size:1.05rem;line-height:1.7}.wc4dc-member-hero__chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.wc4dc-member-hero__chips span{padding:6px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.07);font-size:.72rem;font-weight:800;color:#fff}
.wc4dc-member-hero__graphic{position:relative;display:grid;place-items:center;aspect-ratio:1;max-width:265px;margin-left:auto;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.09),rgba(255,255,255,.015) 66%,transparent 67%)}.wc4dc-member-hero__graphic span{position:absolute;border:1px solid rgba(139,218,246,.35);border-radius:50%}.wc4dc-member-hero__graphic span:nth-child(1){inset:17%}.wc4dc-member-hero__graphic span:nth-child(2){inset:30%}.wc4dc-member-hero__graphic span:nth-child(3){width:9px;height:9px;background:#8dd9f4;border:0;box-shadow:0 0 18px #8dd9f4}.wc4dc-member-hero__graphic strong{position:absolute;bottom:17%;font-size:.64rem;letter-spacing:.19em;color:rgba(255,255,255,.76)}
.wc4dc-member-page__content{padding:42px 0 72px;background:#f4f7f9}
@media(max-width:820px){.wc4dc-member-hero{padding:48px 0}.wc4dc-member-hero__inner{grid-template-columns:1fr}.wc4dc-member-hero__graphic{display:none}.wc4dc-member-hero h1{font-size:clamp(2.15rem,10vw,3.35rem)}}


/* v0.7.0: Nets hub + club social links */
.wc4dc-topbar__socials {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin-left: .35rem;
}
.wc4dc-social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  height: 2rem;
  padding: 0 .6rem;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 999px;
  color: #fff;
  font-size: .76rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  letter-spacing: .01em;
}
.wc4dc-social-link:hover,
.wc4dc-social-link:focus-visible {
  background: rgba(255,255,255,.14);
  color: #fff;
}
.wc4dc-nets-hero {
  background: linear-gradient(135deg, #082f52 0%, #0b5e96 68%, #1475ac 100%);
  color: #fff;
  padding: clamp(3.4rem, 7vw, 6rem) 0;
}
.wc4dc-nets-hero h1 { color: #fff; margin-bottom: .75rem; }
.wc4dc-nets-hero p { max-width: 780px; color: rgba(255,255,255,.88); font-size: 1.08rem; }
.wc4dc-nets-live {
  margin-top: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: .7rem 1.25rem;
  align-items: center;
}
.wc4dc-nets-live__label {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .4rem .75rem;
  border-radius: 999px;
  background: rgba(255,255,255,.13);
  border: 1px solid rgba(255,255,255,.22);
  font-weight: 800;
  font-size: .82rem;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.wc4dc-net-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
  margin: 2rem 0 2.5rem;
}
.wc4dc-net-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 1.5rem;
  background: #fff;
  border: 1px solid var(--wc4dc-border);
  border-radius: var(--wc4dc-radius);
  box-shadow: var(--wc4dc-shadow);
}
.wc4dc-net-card__eyebrow {
  margin-bottom: .6rem;
  color: var(--wc4dc-blue);
  font-size: .75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.wc4dc-net-card h2 { margin: 0 0 .55rem; font-size: 1.45rem; }
.wc4dc-net-card p { margin-top: 0; }
.wc4dc-net-card__facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
  margin: .7rem 0 1.2rem;
}
.wc4dc-net-card__fact {
  padding: .75rem;
  border-radius: 12px;
  background: var(--wc4dc-soft);
}
.wc4dc-net-card__fact small {
  display: block;
  color: var(--wc4dc-muted);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.wc4dc-net-card__fact strong { display: block; margin-top: .1rem; }
.wc4dc-net-card__actions { margin-top: auto; display: flex; gap: .65rem; flex-wrap: wrap; }
.wc4dc-net-note {
  padding: 1.25rem 1.4rem;
  border-left: 4px solid var(--wc4dc-gold);
  border-radius: 0 14px 14px 0;
  background: #fff8e8;
}
.wc4dc-footer__socials { display: flex; gap: .55rem; flex-wrap: wrap; margin-top: 1rem; }
.wc4dc-footer__socials .wc4dc-social-link { color: #fff; border-color: rgba(255,255,255,.25); }

@media (max-width: 820px) {
  .wc4dc-net-grid { grid-template-columns: 1fr; }
  .wc4dc-topbar__socials { width: 100%; justify-content: center; margin: .25rem 0 0; }
}
@media (max-width: 520px) {
  .wc4dc-net-card__facts { grid-template-columns: 1fr; }
  .wc4dc-social-link { min-width: 2.2rem; padding: 0 .55rem; }
}

@media (max-width: 600px) { body .ram-badge.ram-floating { top: 46px; right: 8px; } body.admin-bar .ram-badge.ram-floating { top: 92px; } }

/* v0.8.0 — integrated Nets + ClubNet */
.wc4dc-nets-hero--integrated .wc4dc-net-detail-actions { margin-top: 1.4rem; }
.wc4dc-nets-live a { color: #fff; font-weight: 800; }
.wc4dc-net-card { overflow: hidden; }
.wc4dc-net-card::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 5px; background: var(--wc4dc-blue); }
.wc4dc-net-card--red::before { background: var(--wc4dc-red); }
.wc4dc-net-card--green::before { background: var(--wc4dc-success); }
.wc4dc-net-card--gold::before { background: var(--wc4dc-gold); }
.wc4dc-net-card__next { margin: -.35rem 0 1rem; padding: .72rem .82rem; border: 1px dashed var(--wc4dc-border); border-radius: 11px; background: #fbfcfd; }
.wc4dc-net-card__next span { display: block; color: var(--wc4dc-muted); font-size: .74rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.wc4dc-net-card__next strong { display: block; margin-top: .15rem; color: var(--wc4dc-navy); }
.wc4dc-net-card__report-link { display: inline-flex; align-items: center; min-height: 48px; padding: 0 .35rem; font-weight: 850; text-decoration: none; }

.wc4dc-net-detail-hero { position: relative; overflow: hidden; padding: clamp(3.5rem, 7vw, 6.2rem) 0; color: #fff; background: linear-gradient(135deg, #062f50 0%, #0b5e96 100%); }
.wc4dc-net-detail-hero::after { content: ""; position: absolute; width: 420px; height: 420px; right: -150px; top: -130px; border-radius: 50%; border: 2px solid rgba(255,255,255,.12); box-shadow: 0 0 0 55px rgba(255,255,255,.035), 0 0 0 110px rgba(255,255,255,.025); pointer-events: none; }
.wc4dc-net-detail-hero--red { background: linear-gradient(135deg, #4b1720 0%, #922f32 55%, #c73832 100%); }
.wc4dc-net-detail-hero--green { background: linear-gradient(135deg, #143f31 0%, #23684b 55%, #2c7a4b 100%); }
.wc4dc-net-detail-hero--gold { background: linear-gradient(135deg, #614412 0%, #93691c 55%, #bd8a28 100%); }
.wc4dc-net-detail-hero h1 { position: relative; z-index: 1; margin: .35rem 0 .9rem; color: #fff; font-size: clamp(2.55rem, 6vw, 4.7rem); line-height: 1; }
.wc4dc-net-detail-hero .wc4dc-eyebrow { color: #d5edff; }
.wc4dc-net-detail-hero__lead { position: relative; z-index: 1; max-width: 820px; margin: 0; color: rgba(255,255,255,.9); font-size: clamp(1.05rem, 2vw, 1.22rem); }
.wc4dc-net-breadcrumb { position: relative; z-index: 1; display: flex; gap: .5rem; align-items: center; margin-bottom: 1.15rem; color: rgba(255,255,255,.7); font-size: .85rem; }
.wc4dc-net-breadcrumb a { color: #fff; text-decoration: none; font-weight: 750; }
.wc4dc-net-detail-facts { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; max-width: 900px; margin-top: 1.6rem; }
.wc4dc-net-detail-facts > div { padding: .85rem 1rem; border: 1px solid rgba(255,255,255,.2); border-radius: 13px; background: rgba(255,255,255,.09); backdrop-filter: blur(8px); }
.wc4dc-net-detail-facts small { display: block; color: rgba(255,255,255,.68); font-size: .7rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.wc4dc-net-detail-facts strong { display: block; margin-top: .18rem; color: #fff; font-size: 1rem; }
.wc4dc-net-detail-actions { position: relative; z-index: 1; display: flex; gap: .7rem; flex-wrap: wrap; margin-top: 1.45rem; }
.wc4dc-net-detail-hero .wc4dc-button--ghost { border-color: rgba(255,255,255,.28); }

.wc4dc-net-overview-section { padding-top: 54px; padding-bottom: 54px; }
.wc4dc-net-overview-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.wc4dc-net-info-card { padding: 1.25rem; border: 1px solid var(--wc4dc-border); border-radius: var(--wc4dc-radius); background: #fff; box-shadow: 0 8px 24px rgba(8,42,67,.06); }
.wc4dc-net-info-card h2 { margin: .25rem 0 .25rem; color: var(--wc4dc-navy); font-size: 1.35rem; }
.wc4dc-net-info-card p { margin: .45rem 0; color: var(--wc4dc-muted); }
.wc4dc-net-info-card__big { color: var(--wc4dc-ink) !important; font-size: 1.08rem; font-weight: 850; }
.wc4dc-net-info-card a { display: inline-block; margin-top: .45rem; font-weight: 800; text-decoration: none; }
.wc4dc-net-info-card--about { grid-column: auto; }

.wc4dc-net-clubnet-section .clubnet-summary { max-width: none; }
.wc4dc-net-ops-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(280px, .7fr); gap: 1.4rem; align-items: start; }
.wc4dc-net-login-card, .wc4dc-net-quick-guide { margin-top: 1.4rem; padding: 1.35rem; border: 1px solid var(--wc4dc-border); border-radius: var(--wc4dc-radius); background: #fff; box-shadow: 0 8px 24px rgba(8,42,67,.06); }
.wc4dc-net-login-card h3, .wc4dc-net-quick-guide h2 { margin-top: 0; color: var(--wc4dc-navy); }
.wc4dc-net-quick-guide { position: sticky; top: 120px; }
.wc4dc-net-quick-guide ol { margin: 1rem 0 1rem 1.25rem; padding: 0; }
.wc4dc-net-quick-guide li { margin-bottom: .65rem; }
.wc4dc-net-quick-guide a { font-weight: 850; text-decoration: none; }
.wc4dc-net-history-section .clubnet-log-table-wrapper { box-shadow: 0 8px 24px rgba(8,42,67,.05); }
.wc4dc-net-mini-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .9rem; }
.wc4dc-net-mini-card { display: flex; flex-direction: column; gap: .2rem; padding: 1.1rem; border: 1px solid var(--wc4dc-border); border-radius: 14px; background: #fff; color: var(--wc4dc-ink); text-decoration: none; box-shadow: 0 6px 18px rgba(8,42,67,.05); }
.wc4dc-net-mini-card:hover { transform: translateY(-2px); box-shadow: var(--wc4dc-shadow); }
.wc4dc-net-mini-card span { color: var(--wc4dc-red); font-size: .72rem; font-weight: 850; text-transform: uppercase; letter-spacing: .06em; }
.wc4dc-net-mini-card strong { color: var(--wc4dc-navy); font-size: 1.08rem; }
.wc4dc-net-mini-card small { color: var(--wc4dc-muted); }
.wc4dc-clubnet-reports-page .clubnet-report, .wc4dc-clubnet-reports-page .clubnet-summary { max-width: none; }

@media (max-width: 900px) {
  .wc4dc-net-overview-grid { grid-template-columns: 1fr; }
  .wc4dc-net-ops-grid { grid-template-columns: 1fr; }
  .wc4dc-net-quick-guide { position: static; }
  .wc4dc-net-mini-grid { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
  .wc4dc-net-detail-facts { grid-template-columns: 1fr; }
  .wc4dc-net-detail-actions .wc4dc-button { width: 100%; }
}

/* =========================================================
   v0.9 Integration pass — Events, ARES, About, Youth
   ========================================================= */
.wc4dc-section-hero{color:#fff;background:linear-gradient(135deg,#083b66,#0b5e96)}.wc4dc-section-hero__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:42px;align-items:center;padding-top:58px;padding-bottom:58px}.wc4dc-section-hero__eyebrow,.wc4dc-page-hero__eyebrow{display:block;margin-bottom:8px;color:#a9dff4;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.wc4dc-section-hero h1{max-width:840px;margin:0 0 14px;color:#fff;font-size:clamp(2.3rem,5vw,4rem);line-height:1.03;letter-spacing:-.04em}.wc4dc-section-hero p{max-width:780px;color:#e2eff6;font-size:1.04rem;line-height:1.65}.wc4dc-section-hero__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.wc4dc-events-hero-panel{padding:24px;border:1px solid rgba(255,255,255,.22);border-radius:19px;background:rgba(255,255,255,.09);box-shadow:0 18px 40px rgba(0,0,0,.12)}.wc4dc-events-hero-panel>span{display:block;color:#b8e1f1;font-size:.68rem;font-weight:900;letter-spacing:.12em}.wc4dc-events-hero-panel strong{display:block;margin:8px 0 5px;color:#fff;font-size:1.4rem;line-height:1.2}.wc4dc-events-hero-panel p,.wc4dc-events-hero-panel small{display:block;margin:0;color:#dceaf1}.wc4dc-events-hero-panel a{display:inline-block;margin-top:15px;color:#fff;font-weight:900;text-decoration:none}.wc4dc-events-quick{border-bottom:1px solid var(--wc4dc-border);background:#fff}.wc4dc-events-quick__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.wc4dc-events-quick__grid>a{display:grid;grid-template-columns:auto 1fr;gap:11px;padding:20px 18px;border-right:1px solid var(--wc4dc-border);text-decoration:none}.wc4dc-events-quick__grid>a:first-child{border-left:1px solid var(--wc4dc-border)}.wc4dc-events-quick__grid>a>span{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;background:#eaf5fb;color:var(--wc4dc-blue);font-weight:900}.wc4dc-events-quick__grid small,.wc4dc-events-quick__grid strong,.wc4dc-events-quick__grid em{display:block}.wc4dc-events-quick__grid small{color:var(--wc4dc-red);font-size:.62rem;font-weight:900;letter-spacing:.08em}.wc4dc-events-quick__grid strong{margin:2px 0;color:var(--wc4dc-navy);font-size:.94rem}.wc4dc-events-quick__grid em{color:var(--wc4dc-muted);font-size:.72rem;font-style:normal}.wc4dc-event-grid--events-page{grid-template-columns:repeat(3,minmax(0,1fr))}.wc4dc-events-calendar-section{padding:54px 0 72px;background:#fff}.wc4dc-events-calendar-shell{margin-top:22px;padding:20px;border:1px solid var(--wc4dc-border);border-radius:20px;background:#fff;box-shadow:var(--wc4dc-shadow);overflow:hidden}.wc4dc-events-calendar-shell .em.pixelbones,.wc4dc-events-calendar-shell .em{font-family:inherit}.wc4dc-events-calendar-shell .em-cal-head,.wc4dc-events-calendar-shell .fc-toolbar{color:var(--wc4dc-navy)}.wc4dc-events-calendar-shell button,.wc4dc-events-calendar-shell .em-calnav{border-radius:8px!important}.wc4dc-empty-state{padding:30px;border:1px dashed #bfd0db;border-radius:16px;background:#fff;text-align:center}.wc4dc-empty-state strong{display:block;color:var(--wc4dc-navy);font-size:1.1rem}.wc4dc-empty-state p{color:var(--wc4dc-muted)}
.wc4dc-page-hero--events{background:linear-gradient(135deg,#083b66,#0b5e96)}.wc4dc-single-event-hero{padding:52px 0;background:linear-gradient(135deg,#083b66,#0b5e96);color:#fff}.wc4dc-single-event-hero h1{max-width:900px;margin:8px 0 12px;color:#fff;font-size:clamp(2.2rem,5vw,3.7rem)}.wc4dc-single-event-hero__eyebrow{display:block;color:#a9dff4;font-size:.7rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.wc4dc-single-event-hero__meta{display:flex;gap:8px;flex-wrap:wrap}.wc4dc-single-event-hero__meta span{padding:6px 9px;border:1px solid rgba(255,255,255,.25);border-radius:999px;color:#eef8fc;font-size:.78rem}.wc4dc-back-link{display:inline-block;margin-bottom:17px;color:#d9eff8;text-decoration:none;font-weight:800}.wc4dc-single-event-main{padding:42px 0 70px;background:#f6f9fb}.wc4dc-event-content{max-width:900px;margin:auto;padding:28px;border:1px solid var(--wc4dc-border);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(8,42,67,.06)}
/* ARES hub */
.wc4dc-ares-hero{background:linear-gradient(135deg,#5d1716 0%,#9c2825 50%,#c33d35 100%);color:#fff}.wc4dc-ares-hero__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:42px;align-items:center;padding-top:62px;padding-bottom:62px}.wc4dc-ares-hero__eyebrow{display:block;color:#ffd5ce;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.wc4dc-ares-hero h1{max-width:840px;margin:8px 0 16px;color:#fff;font-size:clamp(2.35rem,5vw,4.2rem);line-height:1.02;letter-spacing:-.04em}.wc4dc-ares-hero p{max-width:780px;color:#ffeae6;font-size:1.03rem;line-height:1.65}.wc4dc-ares-hero__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.wc4dc-ares-callout{padding:26px;border:1px solid rgba(255,255,255,.28);border-radius:20px;background:rgba(255,255,255,.09)}.wc4dc-ares-callout span{color:#ffd8cf;font-size:.7rem;font-weight:900;letter-spacing:.11em}.wc4dc-ares-callout strong{display:block;margin:8px 0 4px;color:#fff;font-size:1.55rem}.wc4dc-ares-callout p{margin:0;color:#fff;font-weight:800}.wc4dc-ares-callout small{display:block;margin-top:13px;color:#ffe5df;line-height:1.45}.wc4dc-ares-status{background:#fff;border-bottom:1px solid var(--wc4dc-border)}.wc4dc-ares-status__grid{display:grid;grid-template-columns:repeat(3,1fr)}.wc4dc-ares-status__grid>div{padding:20px;border-left:1px solid var(--wc4dc-border)}.wc4dc-ares-status__grid>div:last-child{border-right:1px solid var(--wc4dc-border)}.wc4dc-ares-status small,.wc4dc-ares-status strong,.wc4dc-ares-status a{display:block}.wc4dc-ares-status small{color:var(--wc4dc-red);font-size:.65rem;font-weight:900;letter-spacing:.08em}.wc4dc-ares-status strong{margin:4px 0;color:var(--wc4dc-navy);font-size:1rem}.wc4dc-ares-status a{color:var(--wc4dc-blue);font-size:.75rem;font-weight:850;text-decoration:none}.wc4dc-ares-pillar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.wc4dc-ares-pillar-grid article{padding:21px;border:1px solid var(--wc4dc-border);border-radius:17px;background:#fff;box-shadow:0 7px 21px rgba(8,42,67,.05)}.wc4dc-ares-pillar-grid article>span{color:var(--wc4dc-red);font-size:.67rem;font-weight:900}.wc4dc-ares-pillar-grid h3{margin:8px 0;color:var(--wc4dc-navy);font-size:1.05rem}.wc4dc-ares-pillar-grid p{color:var(--wc4dc-muted);font-size:.86rem;line-height:1.55}.wc4dc-ares-pillar-grid a{color:var(--wc4dc-blue);font-size:.77rem;font-weight:850;text-decoration:none}.wc4dc-ares-resource-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:34px;align-items:center}.wc4dc-ares-resource-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.wc4dc-ares-resource-cards a{display:flex;min-height:160px;flex-direction:column;gap:6px;padding:18px;border:1px solid var(--wc4dc-border);border-radius:15px;background:#fff;text-decoration:none}.wc4dc-ares-resource-cards a>span{font-size:1.4rem;color:var(--wc4dc-red)}.wc4dc-ares-resource-cards strong{color:var(--wc4dc-navy)}.wc4dc-ares-resource-cards small{color:var(--wc4dc-muted);line-height:1.4}.wc4dc-ares-cta{padding:42px 0;background:#112b3e;color:#fff}.wc4dc-ares-cta .wc4dc-container{display:flex;align-items:center;justify-content:space-between;gap:34px}.wc4dc-ares-cta span{color:#ffb7ae;font-size:.7rem;font-weight:900;letter-spacing:.12em}.wc4dc-ares-cta h2{margin:5px 0;color:#fff}.wc4dc-ares-cta p{max-width:780px;margin:0;color:#cddce5;line-height:1.55}
/* About */
.wc4dc-about-hero{background:linear-gradient(135deg,#092c49,#0b5e96);color:#fff}.wc4dc-about-hero__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(240px,.7fr);gap:44px;align-items:center;padding-top:64px;padding-bottom:64px}.wc4dc-about-hero__eyebrow{color:#a9dff4;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.wc4dc-about-hero h1{margin:8px 0 14px;color:#fff;font-size:clamp(2.35rem,5vw,4.15rem);line-height:1.02;letter-spacing:-.04em}.wc4dc-about-hero p{max-width:760px;color:#e1eef5;font-size:1.05rem;line-height:1.65}.wc4dc-about-hero__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.wc4dc-about-year{display:flex;min-height:230px;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(255,255,255,.08);text-align:center}.wc4dc-about-year small{color:#bee4f3;font-weight:900;letter-spacing:.12em}.wc4dc-about-year strong{font-size:4.2rem;line-height:1;color:#fff}.wc4dc-about-year span{margin-top:7px;color:#e2eff6;font-size:.8rem}.wc4dc-about-pillars{background:#fff;border-bottom:1px solid var(--wc4dc-border)}.wc4dc-about-pillar-grid{display:grid;grid-template-columns:repeat(4,1fr)}.wc4dc-about-pillar-grid article{padding:24px 22px;border-left:1px solid var(--wc4dc-border)}.wc4dc-about-pillar-grid article:last-child{border-right:1px solid var(--wc4dc-border)}.wc4dc-about-pillar-grid article>span{display:block;color:var(--wc4dc-blue);font-size:1.35rem}.wc4dc-about-pillar-grid strong{display:block;margin:7px 0;color:var(--wc4dc-navy);font-size:1.04rem}.wc4dc-about-pillar-grid p{margin:0;color:var(--wc4dc-muted);font-size:.82rem;line-height:1.5}.wc4dc-about-story-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:44px;align-items:start}.wc4dc-about-story p{color:#465a67;font-size:.96rem;line-height:1.72}.wc4dc-about-attribution{font-size:.8rem!important;font-weight:800;color:#71818a!important}.wc4dc-about-side{display:grid;gap:13px;position:sticky;top:100px}.wc4dc-about-side>div{padding:21px;border:1px solid var(--wc4dc-border);border-radius:16px;background:#f7fafb}.wc4dc-about-side span,.wc4dc-about-side strong,.wc4dc-about-side small{display:block}.wc4dc-about-side span{color:var(--wc4dc-red);font-size:.65rem;font-weight:900;letter-spacing:.08em}.wc4dc-about-side strong{margin:5px 0;color:var(--wc4dc-navy);font-size:1.1rem}.wc4dc-about-side small{color:var(--wc4dc-muted);line-height:1.45}.wc4dc-about-action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.wc4dc-about-action-grid a{display:flex;min-height:155px;flex-direction:column;gap:7px;padding:20px;border:1px solid var(--wc4dc-border);border-radius:16px;background:#fff;text-decoration:none}.wc4dc-about-action-grid a>span{font-size:1.45rem;color:var(--wc4dc-blue)}.wc4dc-about-action-grid strong{color:var(--wc4dc-navy)}.wc4dc-about-action-grid small{color:var(--wc4dc-muted);line-height:1.45}.wc4dc-about-social{display:flex;align-items:center;gap:9px;margin-top:22px}.wc4dc-about-social>span{margin-right:5px;color:var(--wc4dc-muted);font-size:.76rem;font-weight:800}
/* Youth deeper */
.wc4dc-lab-hero__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.wc4dc-lab-intro-strip{border-bottom:1px solid var(--wc4dc-border);background:#fff}.wc4dc-lab-intro-strip__grid{display:grid;grid-template-columns:repeat(3,1fr)}.wc4dc-lab-intro-strip__grid>div{display:grid;grid-template-columns:auto 1fr;column-gap:12px;padding:20px;border-left:1px solid var(--wc4dc-border)}.wc4dc-lab-intro-strip__grid>div:last-child{border-right:1px solid var(--wc4dc-border)}.wc4dc-lab-intro-strip span{grid-row:1/3;display:grid;width:38px;height:38px;place-items:center;border-radius:10px;background:#eaf5fb;color:var(--wc4dc-blue);font-size:.7rem;font-weight:900}.wc4dc-lab-intro-strip strong{color:var(--wc4dc-navy)}.wc4dc-lab-intro-strip small{color:var(--wc4dc-muted);line-height:1.35}.wc4dc-lab-next-step{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:32px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#0d314c,#0b5e96);color:#fff}.wc4dc-lab-next-step span{color:#a9dff4;font-size:.68rem;font-weight:900;letter-spacing:.11em}.wc4dc-lab-next-step h2{margin:5px 0 7px;color:#fff}.wc4dc-lab-next-step p{max-width:760px;margin:0;color:#dcebf3;line-height:1.55}.wc4dc-lab-next-step__actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:1000px){.wc4dc-section-hero__grid,.wc4dc-ares-hero__grid,.wc4dc-about-hero__grid,.wc4dc-ares-resource-layout,.wc4dc-about-story-grid{grid-template-columns:1fr}.wc4dc-events-quick__grid,.wc4dc-ares-pillar-grid,.wc4dc-about-action-grid{grid-template-columns:repeat(2,1fr)}.wc4dc-event-grid--events-page{grid-template-columns:repeat(2,minmax(0,1fr))}.wc4dc-about-year{width:230px;min-height:230px}.wc4dc-about-side{position:static;grid-template-columns:1fr 1fr}.wc4dc-ares-resource-cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.wc4dc-events-quick__grid,.wc4dc-event-grid--events-page,.wc4dc-ares-status__grid,.wc4dc-ares-pillar-grid,.wc4dc-ares-resource-cards,.wc4dc-about-pillar-grid,.wc4dc-about-action-grid,.wc4dc-lab-intro-strip__grid{grid-template-columns:1fr}.wc4dc-events-quick__grid>a,.wc4dc-events-quick__grid>a:first-child,.wc4dc-about-pillar-grid article,.wc4dc-about-pillar-grid article:last-child,.wc4dc-lab-intro-strip__grid>div,.wc4dc-lab-intro-strip__grid>div:last-child{border-left:1px solid var(--wc4dc-border);border-right:1px solid var(--wc4dc-border);border-bottom:1px solid var(--wc4dc-border)}.wc4dc-ares-status__grid>div,.wc4dc-ares-status__grid>div:last-child{border-right:1px solid var(--wc4dc-border);border-bottom:1px solid var(--wc4dc-border)}.wc4dc-ares-cta .wc4dc-container,.wc4dc-lab-next-step{align-items:stretch;flex-direction:column}.wc4dc-about-side{grid-template-columns:1fr}.wc4dc-about-year{display:none}.wc4dc-lab-next-step__actions{justify-content:flex-start}}


/* ==========================================================
   v0.10.0 release-candidate QA / polish
   ========================================================== */

/* Keyboard accessibility and motion preferences */
:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--wc4dc-gold);
  outline-offset: 3px;
}
.wc4dc-nav a:focus-visible,
.wc4dc-social-link:focus-visible {
  border-radius: 8px;
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
  .wc4dc-button:hover { transform: none; }
}

/* Keep legacy/general content inside the viewport. */
.wc4dc-content,
.wc4dc-content * { min-width: 0; }
.wc4dc-content iframe,
.wc4dc-content video,
.wc4dc-content object,
.wc4dc-content embed { max-width: 100%; }
.wc4dc-content pre,
.wc4dc-content code { overflow-wrap: anywhere; }
.wc4dc-content pre { max-width: 100%; overflow-x: auto; padding: 16px; border-radius: 12px; background: #f3f6f8; }
.wc4dc-content .wp-block-table { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.wc4dc-content .wp-block-table table { min-width: 620px; }
.wc4dc-content > table { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.wc4dc-content .wp-block-file { padding: 14px 16px; border: 1px solid var(--wc4dc-border); border-radius: 12px; background: #f8fafb; }
.wc4dc-content .wp-block-button__link {
  border-radius: 10px;
  background: var(--wc4dc-blue);
  color: #fff;
  font-weight: 800;
}
.wc4dc-content .wp-block-button__link:hover { background: var(--wc4dc-navy); color: #fff; }

/* Generic plugin/forms styling so old pages no longer look like another site. */
.wc4dc-content .wpforms-container,
.wc4dc-content .um,
.wc4dc-content .dg-wrapper,
.wc4dc-content .document-library-pro,
.wc4dc-content .dlp-table,
.wc4dc-content .em,
.wc4dc-content .em.pixelbones {
  width: 100%;
  max-width: 100%;
}
.wc4dc-content .wpforms-container .wpforms-field-label,
.wc4dc-content .um-field-label label { color: var(--wc4dc-navy); font-weight: 800; }
.wc4dc-content .wpforms-container input:not([type="checkbox"]):not([type="radio"]),
.wc4dc-content .wpforms-container select,
.wc4dc-content .wpforms-container textarea,
.wc4dc-content .um input[type="text"],
.wc4dc-content .um input[type="email"],
.wc4dc-content .um input[type="password"],
.wc4dc-content .um select,
.wc4dc-content .um textarea {
  width: 100%;
  max-width: 100%;
  border: 1px solid #b9c7d2 !important;
  border-radius: 9px !important;
  background: #fff !important;
  box-shadow: none !important;
}
.wc4dc-content .wpforms-submit,
.wc4dc-content .um-button {
  min-height: 44px !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: var(--wc4dc-blue) !important;
  color: #fff !important;
  font-weight: 800 !important;
}
.wc4dc-content .wpforms-submit:hover,
.wc4dc-content .um-button:hover { background: var(--wc4dc-navy) !important; }
.wc4dc-content .em-item,
.wc4dc-content .em-event {
  overflow: hidden;
  padding: 18px;
  box-shadow: 0 6px 20px rgba(8,42,67,.05);
}
.wc4dc-content .em button,
.wc4dc-content .em .button,
.wc4dc-content .em a.button {
  border-radius: 9px !important;
}

/* Search/archive cards */
.wc4dc-page-hero__description { max-width: 780px; margin-top: 12px; color: var(--wc4dc-muted); }
.wc4dc-result-card h2 { margin: 6px 0 8px; font-size: 1.25rem; }
.wc4dc-result-card h2 a { color: var(--wc4dc-navy); text-decoration: none; }
.wc4dc-result-card__meta {
  display: inline-block;
  color: var(--wc4dc-red);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.wc4dc-page-hero .search-form { display: flex; max-width: 620px; gap: 8px; margin-top: 22px; }
.wc4dc-page-hero .search-field { min-width: 0; flex: 1; padding: 11px 13px; border: 1px solid #aebfca; border-radius: 9px; }
.wc4dc-page-hero .search-submit { border: 0; border-radius: 9px; padding: 10px 16px; background: var(--wc4dc-blue); color: #fff; font-weight: 800; cursor: pointer; }
.wc4dc-404 > .wc4dc-container { max-width: 780px; }
.wc4dc-404 h1 { color: var(--wc4dc-navy); }
.wc4dc-404 p { color: var(--wc4dc-muted); font-size: 1.05rem; }
.wc4dc-404__actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; margin-top: 26px; }

/* Meetings page */
.wc4dc-section-hero--meetings { background: linear-gradient(135deg,#072f50,#0b5e96); color:#fff; }
.wc4dc-section-hero--meetings h1 { color:#fff; }
.wc4dc-section-hero--meetings p { color:#dcebf4; }
.wc4dc-meeting-facts { padding: 24px; border: 1px solid rgba(255,255,255,.25); border-radius: 18px; background: rgba(255,255,255,.09); }
.wc4dc-meeting-facts span,
.wc4dc-meeting-facts strong,
.wc4dc-meeting-facts p,
.wc4dc-meeting-facts small,
.wc4dc-meeting-facts em { display:block; }
.wc4dc-meeting-facts span { color:#b9e2f4; font-size:.68rem; font-weight:900; letter-spacing:.1em; }
.wc4dc-meeting-facts strong { margin:7px 0 5px; color:#fff; font-size:1.45rem; }
.wc4dc-meeting-facts p { margin:0; color:#fff; font-weight:800; }
.wc4dc-meeting-facts small { margin-top:3px; color:#dcebf4; }
.wc4dc-meeting-facts em { margin-top:15px; padding-top:14px; border-top:1px solid rgba(255,255,255,.17); color:#d9e9f2; font-size:.78rem; font-style:normal; line-height:1.5; }
.wc4dc-meeting-purpose { border-bottom:1px solid var(--wc4dc-border); background:#fff; }
.wc4dc-meeting-purpose__grid { display:grid; grid-template-columns:repeat(4,1fr); }
.wc4dc-meeting-purpose__grid>div { display:grid; grid-template-columns:auto 1fr; column-gap:12px; padding:20px; border-left:1px solid var(--wc4dc-border); }
.wc4dc-meeting-purpose__grid>div:last-child { border-right:1px solid var(--wc4dc-border); }
.wc4dc-meeting-purpose span { grid-row:1/3; display:grid; width:35px; height:35px; place-items:center; border-radius:10px; background:#eaf5fb; color:var(--wc4dc-blue); font-size:.68rem; font-weight:900; }
.wc4dc-meeting-purpose strong { color:var(--wc4dc-navy); }
.wc4dc-meeting-purpose small { color:var(--wc4dc-muted); line-height:1.35; }
.wc4dc-meeting-notes-cta { padding:38px 0; background:#eef5f8; }
.wc4dc-meeting-notes-cta .wc4dc-container { display:flex; align-items:center; justify-content:space-between; gap:32px; }
.wc4dc-meeting-notes-cta span { color:var(--wc4dc-red); font-size:.68rem; font-weight:900; letter-spacing:.1em; }
.wc4dc-meeting-notes-cta h2 { margin:4px 0; color:var(--wc4dc-navy); }
.wc4dc-meeting-notes-cta p { margin:0; color:var(--wc4dc-muted); }
.wc4dc-meeting-notes-cta__actions { display:flex; flex-wrap:wrap; gap:8px; }

/* Utility bar: prevent overflow before it collapses on phones. */
.wc4dc-topbar__inner { min-width: 0; }
.wc4dc-topbar__links { min-width: 0; flex-wrap: wrap; justify-content: flex-end; row-gap: 4px; }
@media (max-width: 980px) {
  .wc4dc-topbar__identity { display:none; }
  .wc4dc-topbar__inner { justify-content:flex-end; }
  .wc4dc-topbar__links { gap:12px; font-size:.82rem; }
}

/* Header navigation now collapses before the grouped menu can crowd the logo. */
@media (max-width: 1120px) {
  body.wc4dc-nav-open { overflow: hidden; }
  .wc4dc-menu-toggle { display: inline-flex; align-items:center; gap:7px; }
  .wc4dc-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    max-height: calc(100vh - 110px);
    overflow-y: auto;
    margin: 0;
    padding: 10px 18px 22px;
    background: #fff;
    border-bottom: 1px solid var(--wc4dc-border);
    box-shadow: 0 12px 20px rgba(8,42,67,.10);
  }
  .wc4dc-nav.is-open { display: block; }
  .wc4dc-nav ul { align-items: stretch; flex-direction: column; gap:2px; }
  .wc4dc-nav li { width: 100%; }
  .wc4dc-nav a { min-height:44px; display:flex; align-items:center; padding:10px 12px; }
  .wc4dc-nav .sub-menu {
    display: block;
    position: static;
    width: auto;
    border: 0;
    border-left: 2px solid var(--wc4dc-border);
    border-radius: 0;
    box-shadow: none;
    margin: 0 0 7px 14px;
    padding: 0 0 0 8px;
  }
  .wc4dc-nav .sub-menu a { color:var(--wc4dc-muted); font-size:.9rem; font-weight:700; }
}

/* Repeater badge remains useful but should visually belong to the site. */
body .ram-badge.ram-floating {
  max-width: min(310px, calc(100vw - 28px));
  border: 1px solid rgba(8,59,102,.18);
  border-radius: 13px;
  box-shadow: 0 9px 26px rgba(8,42,67,.16);
}

/* Mobile finishing pass */
@media (max-width: 700px) {
  .wc4dc-container,
  .wc4dc-content { width:min(calc(100% - 28px), var(--wc4dc-max)); }
  .wc4dc-page-hero { padding:40px 0 32px; }
  .wc4dc-content { padding-top:38px; padding-bottom:58px; }
  .wc4dc-panel { padding:22px; }
  .wc4dc-page-hero .search-form { flex-direction:column; }
  .wc4dc-page-hero .search-submit { min-height:44px; }
  .wc4dc-404 { padding:62px 0; }
  .wc4dc-404__actions { align-items:stretch; flex-direction:column; }
  .wc4dc-meeting-purpose__grid { grid-template-columns:1fr; }
  .wc4dc-meeting-purpose__grid>div,
  .wc4dc-meeting-purpose__grid>div:last-child { border-right:1px solid var(--wc4dc-border); border-bottom:1px solid var(--wc4dc-border); }
  .wc4dc-meeting-notes-cta .wc4dc-container { align-items:stretch; flex-direction:column; }
  .wc4dc-meeting-notes-cta__actions .wc4dc-button { width:100%; }
  body .ram-badge.ram-floating { right:8px; max-width:calc(100vw - 16px); }
}

@media (max-width: 430px) {
  .wc4dc-brand__logo, .custom-logo { max-height:46px; }
  .wc4dc-menu-toggle { padding:8px 10px; }
  .wc4dc-button { width:100%; }
  .wc4dc-hero__actions,
  .wc4dc-section-hero__actions,
  .wc4dc-about-hero__actions,
  .wc4dc-ares-hero__actions,
  .wc4dc-lab-hero__actions { align-items:stretch; flex-direction:column; }
}
