/**
 * ACOS Design Tokens — single source of truth for colors, type, spacing, and buttons.
 * Enqueued globally before all other theme stylesheets.
 */
:root {
  /* ── Brand colors ── */
  --acos-color-primary:     #104573;
  --acos-color-secondary:   #12B0A6;
  --acos-color-accent:      #3588C0;
  --acos-color-gold:        #F6DD5A;
  --acos-color-text:        #242627;
  --acos-color-text-muted:  #555555;
  --acos-color-caption:     #616161;
  --acos-color-white:       #ffffff;
  --acos-color-black:       #000000;
  --acos-color-forest-blue: #E1E7F0;
  --acos-color-cream:       #F4EEE0;
  --acos-color-off-white:   #FCFAF5;
  --acos-color-border:      #C2C2C2;
  --acos-color-rule:        #B8D1E0;
  --acos-color-hero-rule:   #8AADC4;
  --acos-color-light-bg:    #E8EDF4;

  /* Legacy aliases (site-style.css + Elementor) */
  --primary:      var(--acos-color-primary);
  --secondary:    var(--acos-color-secondary);
  --text:         var(--acos-color-text);
  --gold:         var(--acos-color-gold);
  --accent:       var(--acos-color-accent);
  --white:        var(--acos-color-white);
  --black:        var(--acos-color-black);
  --forest-blue:  var(--acos-color-forest-blue);
  --cream:        var(--acos-color-cream);
  --off-white:    var(--acos-color-off-white);

  /* ── Typography ── */
  --acos-font-heading: 'Oswald', Arial, sans-serif;
  --acos-font-body:    'Roboto', Arial, sans-serif;

  --acos-h1-size:     36px;
  --acos-h1-weight:   500;
  --acos-h1-spacing:  1.44px;
  --acos-h1-lh:       normal;

  --acos-h2-size:     30px;
  --acos-h2-weight:   500;
  --acos-h2-lh:       normal;

  --acos-h3-size:     24px;
  --acos-h3-weight:   500;
  --acos-h3-lh:       normal;

  --acos-h4-size:     20px;
  --acos-h4-weight:   500;
  --acos-h4-spacing:  0.8px;
  --acos-h4-lh:       normal;

  --acos-h5-size:     18px;
  --acos-h5-weight:   700;
  --acos-h5-spacing:  0.8px;
  --acos-h5-lh:       normal;

  --acos-body-size:     16px;
  --acos-body-weight:   400;
  --acos-body-lh:       24px;
  --acos-body-spacing:  0.64px;

  --acos-link-color:       var(--acos-color-secondary);
  --acos-link-decoration:  underline;

  /* ── Layout / spacing ── */
  --acos-container-max:  1200px;
  --acos-space-section:  40px;
  --acos-space-gutter:   60px;
  --acos-space-column:   40px;

  /* ── Buttons ── */
  --acos-btn-font:           var(--acos-font-heading);
  --acos-btn-radius:         6px;
  --acos-btn-radius-sm:      3px;
  --acos-btn-lg-size:        16px;
  --acos-btn-lg-weight:      600;
  --acos-btn-lg-padding:     6px 15px;
  --acos-btn-lg-bg:          var(--acos-color-secondary);
  --acos-btn-lg-color:       var(--acos-color-white);
  --acos-btn-lg-hover-bg:    var(--acos-color-primary);
  --acos-btn-sm-size:        14px;
  --acos-btn-sm-weight:      400;
  --acos-btn-sm-padding:     0 7px;
  --acos-btn-sm-bg:          var(--acos-color-secondary);
  --acos-btn-sm-hover-bg:    var(--acos-color-primary);
  --acos-btn-uppercase:      uppercase;
  --acos-btn-spacing:        0.07em;
}
