/* ==========================================================================
   L Catterton brand override
   ==========================================================================
   Loaded AFTER styles.css. Overrides tokens; adds no layout.

   This is the per-client override pattern: ~70 lines against a 330-line
   base. Compare variants/sapphire-2026-03/, which hard-forked the whole
   stylesheet. See ../TOKEN-LAYER.md.

   Sources, both read 2026-09-09, not inferred:
     - live lcatt ACF Branding options (page / content / admin colour groups)
     - 0909 - Opus - LCatt/lcatt-custom-css-WORKING.css, submit-button rule
   ========================================================================== */

:root {
  /* --- L Catterton brand ------------------------------------------------ */
  --brand-primary:        #032d55;  /* L Catterton navy. ACF page + content. */
  --brand-primary-hover:  #021f3b;  /* darkened; not from source            */
  --brand-accent:         #6eabdd;  /* ACF content link + link hover        */
  --brand-body-text:      #535456;  /* ACF content text                     */

  /* --- Map the base stylesheet's token names onto the brand -------------
     The base names are legacy: --accent-brown dates from the generic Opus
     campus palette and now carries a navy. Renaming them in the base is
     proposed in ../TOKEN-LAYER.md and deliberately NOT done here, so the
     generic default serving every other Opus event stays untouched.      */
  --accent-brown:        var(--brand-primary);
  --accent-brown-hover:  var(--brand-primary-hover);
  --border-focus:        var(--brand-primary);
  --accent-blue:         var(--brand-accent);
  --text-body:           var(--brand-body-text);

  /* --- Navy ground, white card, matching lcatt.opusadvisors.events ------ */
  --bg:            var(--brand-primary);
  --frame-bg:      var(--brand-primary);
  --frame-border:  var(--brand-primary);
  --card-bg:       #ffffff;
}

/* Chrome outside the card sits on navy and needs light text. Inside .card
   the base already sets color: var(--text-primary), so card copy stays
   dark on white without help. */

body { color: #ffffff; }

.brand__tag {
  color: #cfe0f0;
  border-color: #2a4a72;
}

.site-footer { color: #cfe0f0; }
.footer__powered strong { color: #ffffff; }

/* The live registration form's submit button is 6px, not a pill. Overriding
   --radius-pill would square the header tag too, so this is scoped to .btn
   deliberately. Source: lcatt-custom-css-WORKING.css -- background #032d55,
   white, 1px solid #032d55, border-radius 6px. */
.btn { border-radius: 6px; }

/* L Catterton wordmark in the card. The base caps the sponsor slot at
   380px, which oversizes a 270x86 wordmark. */
.event__sponsor-logo { max-width: 260px; }

/* Focus ring keyed to navy rather than the base's brown rgba. */
.field input:focus {
  box-shadow: 0 0 0 3px rgba(3, 45, 85, 0.18);
}
