/*
Theme Name: WMF Business Club
Theme URI: https://wmf.raeitech.com/
Description: The WMF Business Club site theme. Carries its own Elementor Theme Builder locations, so the existing pages, footer and single-post templates render unchanged; what the theme owns outright is the site header, which knows who is signed in and what their membership lets them open.
Author: WMF Business Club
Version: 1.0.0
Text Domain: wmf-theme
Requires at least: 6.0
Requires PHP: 8.0
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: business, membership, elementor
*/

/* --------------------------------------------------------------------------
   Base. Deliberately thin: Elementor's kit sets typography and colour for the
   marketing pages, and the portal ships its own scoped stylesheet. The theme
   only provides what neither of them can — the document skeleton.
   -------------------------------------------------------------------------- */

:root {
  --wmf-red: #DE2028;
  --wmf-red-700: #B5171E;
  --wmf-red-050: #FDF2F2;
  --wmf-navy: #0C4166;
  --wmf-ink: #25303A;
  --wmf-muted: #6B6459;
  --wmf-line: #EFEBE2;
  --wmf-line-strong: #CFC9B9;
  --wmf-surface: #ffffff;
  --wmf-surface-2: #F4F0E9;
}

*,
*::before,
*::after { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--wmf-surface);
  color: var(--wmf-ink);
  font-family: Montserrat, system-ui, -apple-system, "Segoe UI", sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

img,
video,
svg { max-width: 100%; height: auto; }

a { color: var(--wmf-navy); }

.wmf-site-main { min-height: 40vh; }

.wmf-shell {
  max-width: 1180px;
  margin: 0 auto;
  padding: 44px 24px 64px;
}

.wmf-entry__title {
  font-size: clamp(28px, 4vw, 40px);
  line-height: 1.2;
  text-wrap: balance;
  margin: 0 0 22px;
  color: var(--wmf-navy);
}

/* The portal screens open with their own heading, so a theme title above them
   would be the same words twice. */
.wmf-entry--portal .wmf-entry__title { display: none; }

.screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%);
  white-space: nowrap; border: 0;
}

.skip-link:focus {
  position: fixed; top: 12px; left: 12px; z-index: 100000;
  width: auto; height: auto; clip: auto; clip-path: none;
  background: var(--wmf-navy); color: #fff;
  padding: 12px 18px; border-radius: 8px; text-decoration: none;
}

/* A plain footer only appears when Elementor has no footer template set. */
.wmf-fallback-footer {
  border-top: 1px solid var(--wmf-line);
  padding: 30px 24px;
  color: var(--wmf-muted);
  font-size: 14px;
}

.wmf-fallback-footer__in {
  max-width: 1180px; margin: 0 auto;
  display: flex; flex-wrap: wrap; gap: 16px;
  align-items: center; justify-content: space-between;
}

.wmf-fallback-footer ul {
  display: flex; flex-wrap: wrap; gap: 18px;
  list-style: none; margin: 0; padding: 0;
}

.wmf-fallback-footer a { color: var(--wmf-muted); text-decoration: none; }
.wmf-fallback-footer a:hover { color: var(--wmf-red); }

/* A quiet strip below the footer for the people who run the clubs. */
.wmf-adminbar {
  border-top: 1px solid var(--wmf-line);
  background: var(--wmf-surface-2);
  padding: 14px 24px;
}

.wmf-adminbar__in {
  max-width: 1180px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: var(--wmf-muted);
}

.wmf-adminbar a { color: var(--wmf-muted); text-decoration: none; }
.wmf-adminbar a:hover,
.wmf-adminbar a:focus-visible { color: var(--wmf-navy); text-decoration: underline; }
.wmf-adminbar span { opacity: .5; }
