/* ==========================================================
   The Running Man in Blue: sitewide brand skin
   Palette sampled from Gareth's own graphics, Oct 2026
   ========================================================== */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=IBM+Plex+Mono:wght@500;600&display=swap');

:root {
  --trmib-navy: #2E5871;
  --trmib-navy-deep: #244A60;
  --trmib-tile: #43708A;
  --trmib-pink: #E051A1;
  --trmib-mint: #DCF2F0;
  --trmib-mint-row: #C5E6E3;
  --trmib-head: 'Barlow Condensed', 'Arial Narrow', sans-serif;
  --trmib-mono: 'IBM Plex Mono', ui-monospace, monospace;
}

/* ---------- Base text ---------- */
body, button, input, select, textarea { color: var(--trmib-navy); }
.entry-content, .entry-summary, .site-main { color: #24323a; }

/* ---------- Headings: condensed, upright, navy ---------- */
h1, h2, h3, h4, h5, h6,
.entry-title, .page-title, .wp-block-heading,
.widget-title, .comments-title {
  font-family: var(--trmib-head) !important;
  font-style: normal !important;
  font-weight: 700 !important;
  letter-spacing: 0.005em;
  line-height: 1.05 !important;
}
/* navy only for headings sitting on the light page, never inside dark blocks */
.entry-content > :is(h1,h2,h3,h4,h5,h6),
.entry-content > .wp-block-group :is(h1,h2,h3,h4,h5,h6),
.entry-content > .wp-block-columns :is(h1,h2,h3,h4,h5,h6),
.entry-header .entry-title, .page-title, .widget-title, .comments-title,
.site-main > .page-header h1 {
  color: var(--trmib-navy) !important;
}
.entry-content h2, .entry-content .wp-block-heading { text-transform: uppercase; }
.entry-title, .page-title { text-transform: uppercase; font-size: clamp(34px, 6vw, 52px) !important; }
.entry-title a { color: var(--trmib-navy) !important; }
.entry-title a:hover { color: var(--trmib-pink) !important; }

/* keep the white headings inside the brand blocks white */
.tmb-offer h2, .tmb-offer h3, .tmb-band--dark h2, .tmb-tool h2,
.tmb-hero h1, .tmb-hero h2,
.wp-block-coblocks-pricing-table-item.has-white-background-color * ,
.trmib-fw h3 { color: #fff !important; }
.tmb-offer .tmb-offer__card:not(.tmb-offer__card--dark) h3 { color: var(--trmib-navy) !important; }

/* ---------- Links ---------- */
.entry-content a:not(.wp-block-button__link):not([class*="btn"]):not(.custom-logo-link),
.widget a {
  color: var(--trmib-navy);
  text-decoration: underline;
  text-decoration-color: var(--trmib-pink);
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}
.entry-content a:not(.wp-block-button__link):not([class*="btn"]):hover,
.widget a:hover { color: var(--trmib-pink); }

/* links inside dark brand blocks stay light */
.entry-content :is(.tmb-offer, .tmb-band--dark, .tmb-tool, .tmb-hero, .tma-cta, .trmib-pp, .trmib-fw, .trmib-proof__card--quote) a:not([class*="btn"]) {
  color: #fff !important;
}
.entry-content :is(.tmb-offer, .tmb-band--dark, .tmb-tool, .tmb-hero, .tma-cta, .trmib-pp, .trmib-fw) a:not([class*="btn"]):hover { color: var(--trmib-pink) !important; }

/* ---------- Pace predictor plugin: brand colours ---------- */
.trmib-pp {
  --pp-teal: #2E5871; --pp-teal-deep: #244A60; --pp-teal-soft: #43708A;
  --pp-pink: #E051A1; --pp-muted: #C5E6E3; --pp-line: rgba(220, 242, 240, 0.22);
  border-left: 6px solid var(--trmib-pink);
}
.trmib-pp :is(h1,h2,h3,h4), .trmib-pp .trmib-pp-title, .trmib-pp-results h3, .trmib-pp .trmib-pp-h4, .trmib-pp-cta-title { color: #fff !important; }
.trmib-pp .trmib-pp-error { background: rgba(224, 81, 161, 0.16); border-color: rgba(224, 81, 161, 0.55); }
.trmib-pp select option { color: var(--trmib-navy); }

/* ---------- Homepage latest posts (titles over photos) ---------- */
.wpnbha.image-alignbehind article.post-has-image .post-thumbnail::after,
.wpnbha.image-alignbehind article.post-has-image figure::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(36,74,96,.55) 0%, rgba(36,74,96,.88) 100%);
}
.wpnbha.image-alignbehind article.post-has-image .post-thumbnail,
.wpnbha.image-alignbehind article.post-has-image figure { position: absolute; }
.wpnbha.image-alignbehind article.post-has-image .entry-wrapper { position: relative; z-index: 2; }
.wpnbha.image-alignbehind article.post-has-image :is(.entry-title, .entry-title a, p, .entry-meta, .entry-meta a, time, .more-link) {
  color: #fff !important;
  text-decoration: none !important;
}
.wpnbha .entry-title { text-transform: uppercase; font-size: clamp(24px, 3vw, 30px) !important; }
.wpnbha.image-alignbehind article.post-has-image .entry-title a:hover { color: var(--trmib-pink) !important; }
.wpnbha.image-alignbehind article.post-has-image .entry-title { border-bottom: 3px solid var(--trmib-pink); padding-bottom: 8px; display: inline-block; }

/* ---------- Buttons ---------- */
.wp-block-button__link, .wp-element-button,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce a.button.alt, .woocommerce button.button.alt,
button[type="submit"], input[type="submit"] {
  background: var(--trmib-pink) !important;
  color: #fff !important;
  border: 2px solid var(--trmib-pink) !important;
  border-radius: 6px !important;
  font-family: var(--trmib-head) !important;
  font-weight: 700 !important;
  font-style: normal !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 17px !important;
  padding: 12px 22px !important;
  box-shadow: none !important;
  transition: background .15s ease, color .15s ease;
}
.wp-block-button__link:hover, .wp-element-button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover,
button[type="submit"]:hover, input[type="submit"]:hover {
  background: var(--trmib-navy) !important;
  border-color: var(--trmib-navy) !important;
  color: #fff !important;
}
.is-style-outline .wp-block-button__link { background: transparent !important; color: var(--trmib-pink) !important; }

/* ---------- Header and navigation ---------- */
.site-header { border-bottom: 4px solid var(--trmib-pink); }
.site-title, .site-title a { font-family: var(--trmib-head) !important; font-style: normal !important; color: var(--trmib-navy) !important; text-transform: uppercase; }
.site-description {
  font-family: var(--trmib-mono) !important;
  font-style: normal !important;
  font-weight: 500 !important;
  font-size: 12px !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--trmib-tile) !important;
  line-height: 1.6 !important;
}
.main-navigation a, .main-navigation .menu-toggle {
  font-family: var(--trmib-head) !important;
  font-style: normal !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--trmib-navy) !important;
}
.main-navigation a:hover,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a { color: var(--trmib-pink) !important; }
.main-navigation ul ul { background: var(--trmib-navy) !important; }
.main-navigation ul ul a { color: #fff !important; }
.main-navigation ul ul a:hover { color: var(--trmib-pink) !important; }

/* ---------- Footer ---------- */
.site-footer { background: var(--trmib-navy); color: var(--trmib-mint); border-top: 4px solid var(--trmib-pink); }
.site-footer a { color: var(--trmib-mint) !important; }
.site-footer .site-info a[href*="wordpress.com"] { display: none !important; }
.site-footer .site-info::before {
  content: "The Running Man in Blue  /  Online running coaching from Barnsley, Yorkshire";
  font-family: var(--trmib-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--trmib-mint-row);
}

/* ---------- Sidebar widgets ---------- */
.widget-title { text-transform: uppercase; border-bottom: 3px solid var(--trmib-pink); padding-bottom: 6px; }

/* ---------- Store notice banner: retired ---------- */
.woocommerce-store-notice, .woocommerce-store-notice__dismiss-link, p.demo_store { display: none !important; }

/* ---------- Social proof plugin: brand colours ---------- */
.trmib-proof {
  --tp-teal: #2E5871; --tp-deep: #244A60; --tp-pink: #E051A1;
  --tp-surface: #DCF2F0; --tp-ink: #2E5871; --tp-muted: #43708A;
}
.trmib-proof__card--quote .trmib-proof__meta { color: var(--trmib-mint-row) !important; }
.trmib-proof__head { color: var(--trmib-navy) !important; }

/* ---------- Free week signup and popup: brand colours ---------- */
.trmib-fw { --trmib-teal: #2E5871; --trmib-pink: #E051A1; border-left: 6px solid var(--trmib-pink); }
.trmib-fw h3 { font-family: var(--trmib-head) !important; text-transform: uppercase; font-size: 1.9rem !important; }
.trmib-fw button { font-family: var(--trmib-head) !important; text-transform: uppercase; letter-spacing: .06em; font-size: 18px !important; border-radius: 6px !important; }
.trmib-fw-overlay__backdrop { background: rgba(36, 74, 96, 0.78) !important; }
.trmib-fw-overlay__skip { background: var(--trmib-navy-deep) !important; }

/* ---------- Streak counter ---------- */
.trmib-streak__number { color: var(--trmib-pink) !important; font-family: var(--trmib-head) !important; font-size: 5rem !important; }
.trmib-streak__label { color: var(--trmib-navy) !important; font-family: var(--trmib-mono) !important; }

/* ---------- Quotes ---------- */
.wp-block-quote { border-left: 5px solid var(--trmib-pink) !important; background: var(--trmib-mint); padding: 18px 22px !important; font-style: normal; }
.wp-block-quote cite { font-family: var(--trmib-mono); font-size: 12px; text-transform: uppercase; letter-spacing: .08em; color: var(--trmib-tile); font-style: normal; }

/* ---------- Pricing table (coaching page) ---------- */
.wp-block-coblocks-pricing-table-item__title { font-family: var(--trmib-head) !important; text-transform: uppercase; font-weight: 700; font-size: 26px !important; letter-spacing: .04em; }
.wp-block-coblocks-pricing-table-item__amount { font-family: var(--trmib-head) !important; font-weight: 800 !important; }

/* ---------- WooCommerce shop ---------- */
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: var(--trmib-head) !important; text-transform: uppercase; color: var(--trmib-navy) !important; font-size: 22px !important; }
.woocommerce ul.products li.product .price, .woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--trmib-pink) !important; font-family: var(--trmib-head) !important; font-weight: 700; font-size: 22px !important; }
.woocommerce span.onsale { background: var(--trmib-pink) !important; }

/* ---------- Separators ---------- */
hr.wp-block-separator { border-color: var(--trmib-mint-row) !important; opacity: 1 !important; }