/*
 * cabin-font.css — Cabin font trial (sitewide frontend override).
 *
 * Context: Caelin is evaluating Cabin as the replacement for Gill Sans / Roboto
 * (TaskClear, 2026-06-16: "Roboto is too much like Helvetica, try Cabin or Lato").
 * This flips the FRONTEND to Cabin everywhere so he can approve before we commit
 * the proper sitewide change.
 *
 * How it works: every Elementor widget on this site has font-family:"Roboto" baked
 * into its own generated CSS (per-widget, NOT a global token), so changing the kit
 * token alone would not move them. Those per-widget rules carry NO !important, so a
 * single low-specificity :where() rule with !important beats all of them at once
 * without a specificity war, and lets us re-assert Gill Sans on the brand lockup.
 *
 * Scope note: text elements + Elementor text classes only. <i>/<svg> icon elements
 * are deliberately NOT targeted, so Font Awesome / SVG icons keep their own family.
 *
 * Reversible: dequeue pl-cabin-font + pl-cabin-override in functions.php and delete
 * this file. Does NOT touch the kit JSON or any _elementor_data — that is the
 * rollout step once Cabin (or Lato) is approved.
 */

:where(
  h1, h2, h3, h4, h5, h6,
  p, a, span, li, ul, ol, dl, dt, dd, blockquote, em, strong, small, label, time, th, td, figcaption,
  button, input, textarea, select, optgroup, option,
  .elementor-heading-title,
  .elementor-widget-text-editor,
  .elementor-button, .elementor-button-text,
  .elementor-icon-list-text,
  .elementor-accordion-title, .elementor-tab-title, .elementor-tab-content,
  .elementor-nav-menu .elementor-item, .e-n-menu-title-text, .e-n-menu-item,
  .pl-md-link, .pl-md-cta,
  [class^="pl-lp-"], [class*=" pl-lp-"], .pl-proj-list a
) {
  font-family: 'Cabin', sans-serif !important;
}

/* Gravity Forms (RLP = form 5, contact = 4, newsletter = 1/6) */
.gform_wrapper :where(label, input, textarea, select, button, span, a, li, p, h1, h2, h3, h4, .gfield_label, .gform_title, .gform_description) {
  font-family: 'Cabin', sans-serif !important;
}

/*
 * Preserve the deliberate Gill Sans brand lockup — wins over Cabin above because
 * these selectors carry real specificity (> the 0-specificity :where rule) and
 * also use !important. Header desktop wordmark, mobile drawer lockup, footer wordmark.
 */
.pl-brand__name, .pl-brand__tagline,
.pl-md-brand-name, .pl-md-brand-tagline,
.elementor-41 .elementor-element-b8d63c0 .elementor-heading-title {
  font-family: 'Gill Sans', 'Gill Sans MT', sans-serif !important;
}
