/*
 Theme Name:   Outshine — BLF
 Theme URI:    https://outshine.io
 Description:  GeneratePress child theme, Outshine base 1.1, BLF build (The Betz Law Firm)
 Author:       Outshine Media
 Author URI:   https://outshine.io
 Template:     generatepress
 Version:      1.0.0
 Text Domain:  outshine-blf

 ============================================================
 OUTSHINE BASE 1.1  |  PER-CLIENT FILE
 ============================================================
 This file holds the theme header and design tokens ONLY.
 It is the one stylesheet edited when a new client theme is
 cut from the base.

   style.css        header + tokens          (edit per client)
   css/base.css     shared components        (never edit per client)
   css/client.css   client-specific sections (edit per client)
   functions.php    performance layer        (never edit per client)
   inc/client.php   client PHP (font preload) (edit per client)
   fonts/           self-hosted woff2        (copy the faces this file uses)

 Load order is set in functions.php:
   GP parent  >  this file (tokens)  >  css/base.css  >  css/client.css

 Rules:
 - Every color and font in base.css and client.css is a token from
   this file. If a component needs a value that does not exist here,
   add a token, do not hardcode it in base.css.
 - Change values, not names. Renaming a token breaks base.css.
 - No Additional CSS in the Customizer. functions.php removes the panel.
 ============================================================
*/

/* ============================================================
   TOKENS — BLF (The Betz Law Firm)
   St. Louis family law. Calm, trustworthy, non-salesy.
   Colors derived from the logo: navy wordmark, steel gray mark.
   Sampled live 2026-10-08: navy #113965 (header, H1), steel #707880.
   Amber CTA accent added for contrast against the navy; steel kept
   for lines and icons so the logo still reads as the source.
   ============================================================ */
:root {
    /* Brand */
    --os-brand:          #113965;   /* navy: headings, nav, links, phone CTA */
    --os-brand-hover:    #0C2B4E;
    --os-brand-text:     #ffffff;   /* text placed ON brand */

    --os-brand-2:        #E0A33A;   /* amber: primary buttons, eyebrows, icons */
    --os-brand-2-hover:  #C48C2C;
    --os-brand-2-text:   #1C2430;   /* text placed ON brand-2. Amber needs dark text to pass AA (7.0:1) */

    --os-brand-3:        #0B2545;   /* deep navy: dark bands, secondary buttons */
    --os-brand-3-hover:  #071A32;
    --os-brand-3-text:   #ffffff;

    /* Text */
    --os-ink:            #1C2430;   /* body text, dark bands */
    --os-muted:          #5B6570;

    /* Surfaces */
    --os-chrome:         #ffffff;   /* page background, header, cards */
    --os-surface:        #F4F6F8;   /* light band */
    --os-surface-2:      #E7EBEF;   /* deeper light band */
    --os-line:           #D8DEE4;
    --os-line-strong:    #8E99A6;   /* logo steel */

    /* Text on dark bands (ink / brand-3 backgrounds) */
    --os-on-dark:        #ffffff;
    --os-on-dark-soft:   rgba(255, 255, 255, 0.85);
    --os-on-dark-muted:  rgba(255, 255, 255, 0.72);
    --os-on-dark-faint:  rgba(255, 255, 255, 0.55);
    --os-on-dark-line:   rgba(255, 255, 255, 0.15);

    /* States */
    --os-focus:          #113965;
    --os-urgent:         #B23A2C;

    /* Closer band (final CTA). Defaults to brand-2 with brand-2 text. */
    --os-cta-band:       var(--os-brand-2);
    --os-cta-band-text:  var(--os-brand-2-text);

    /* Seasonal calendar accents (unused on BLF, kept for base compatibility) */
    --os-season-1:       #5C9F5F;   /* spring */
    --os-season-2:       #E0A33A;   /* summer (amber) */
    --os-season-3:       #C26A2C;   /* fall */
    --os-season-4:       #4A6F8C;   /* winter */

    /* Shape. 0 = square (house style). 4px softens a professional-services build. */
    --os-radius:         4px;

    /* ---- Fonts (families declared in base.css, files in /fonts/) ----
       BLF: serif headings and display, sans body and UI. No condensed face.
       Files needed in /fonts/: source-sans-3-400/500/600/700,
       source-serif-4-600/700. Roboto and Anton are not used and need not ship. */
    --os-font-body:      "Source Sans 3", "Source Sans 3 Fallback", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    --os-font-head:      "Source Serif 4", "Source Serif 4 Fallback", Georgia, "Times New Roman", serif;
    --os-font-ui:        "Source Sans 3", "Source Sans 3 Fallback", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;   /* buttons, nav, eyebrows, badges */
    --os-font-display:   "Source Serif 4", "Source Serif 4 Fallback", Georgia, "Times New Roman", serif;

    /* Display treatment (hero titles, section heads, component titles).
       Base default is 400 / uppercase / 0.01em / 1 for a condensed face.
       BLF: sentence case serif at 600. */
    --os-display-weight:   600;
    --os-display-case:     none;
    --os-display-tracking: -0.015em;
    --os-display-leading:  1.08;

    /* Layout */
    --os-wrap:           1200px;
    --os-gutter:         clamp(16px, 3vw, 48px);

    /* GeneratePress aliases (GP reads these for a few internal rules) */
    --accent:     var(--os-brand);
    --contrast:   var(--os-ink);
    --contrast-2: var(--os-muted);
    --base:       var(--os-chrome);
    --base-2:     #ffffff;
    --base-3:     #ffffff;
}
