/*
Theme Name: Ascendance Collaborative Child
Theme URI: https://ascendance.care
Description: Divi child theme for Ascendance Collaborative — a functional medicine practice. Brand colors, typography (Cinzel · Cormorant Garamond · Mulish), and component styling baked in. Built on the Divi theme.
Author: Particular Collective
Author URI: https://particular-collective.com
Template: Divi
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ascendance-child
*/

/* ============================================================
   ASCENDANCE COLLABORATIVE — BRAND TOKENS
   Drawn from the Ascendance brand guide. Lead with sage & paper;
   let forest carry weight. Clay is an accent only (<5%).
   ============================================================ */
:root {
  --asc-paper:  #F5F4F2; /* primary ground */
  --asc-sage:   #747F61; /* brand signature */
  --asc-forest: #4B5743; /* anchor / headlines */
  --asc-pine:   #39422F; /* text on light */
  --asc-mist:   #A2A898; /* secondary / UI */
  --asc-pale:   #C8CDBF; /* fills / dividers */
  --asc-linen:  #E4E2D8; /* warm panels */
  --asc-clay:   #B07A72; /* accent · warmth */

  --asc-font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --asc-font-caps:    "Cinzel", Georgia, serif;
  --asc-font-body:    "Mulish", -apple-system, "Segoe UI", sans-serif;

  --asc-radius: 2px;
  --asc-maxw: 1200px;
}

/* ============================================================
   BASE / TYPOGRAPHY
   ============================================================ */
body {
  background-color: var(--asc-paper);
  font-family: var(--asc-font-body);
  font-size: 17px;
  line-height: 1.7;
  color: var(--asc-pine);
  -webkit-font-smoothing: antialiased;
}

p { line-height: 1.7; }

h1, h2, h3, h4, h5, h6,
.et_pb_module h1, .et_pb_module h2, .et_pb_module h3,
.et_pb_module h4, .et_pb_module h5, .et_pb_module h6 {
  font-family: var(--asc-font-display);
  font-weight: 600;
  color: var(--asc-forest);
  line-height: 1.15;
  letter-spacing: 0;
}

h1 { font-size: 3.25rem; }
h2 { font-size: 2.5rem; }
h3 { font-size: 1.9rem; }
h4 { font-size: 1.45rem; }

/* Eyebrow / kicker — engraved, ceremonial, used sparingly */
.asc-eyebrow,
.et_pb_text .asc-eyebrow {
  font-family: var(--asc-font-caps);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  font-size: 0.72rem;
  color: var(--asc-sage);
}

/* Links */
a { color: var(--asc-sage); transition: color .2s ease; }
a:hover { color: var(--asc-forest); }

/* Selection */
::selection { background: var(--asc-pale); color: var(--asc-pine); }

/* ============================================================
   BUTTONS — calm, squared, generous tracking
   ============================================================ */
.et_pb_button,
.woocommerce a.button,
.woocommerce button.button,
a.et_pb_button {
  font-family: var(--asc-font-body);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 13px;
  color: var(--asc-paper) !important;
  background-color: var(--asc-forest);
  border: 1px solid var(--asc-forest);
  border-radius: var(--asc-radius);
  padding: 0.95em 1.9em !important;
  transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}
.et_pb_button:hover,
a.et_pb_button:hover {
  color: var(--asc-paper) !important;
  background-color: var(--asc-pine);
  border-color: var(--asc-pine);
  padding: 0.95em 1.9em !important;
}
.et_pb_button:after { display: none !important; }

/* Secondary / outline button — add class "asc-btn-outline" in Divi */
.asc-btn-outline.et_pb_button {
  background-color: transparent;
  color: var(--asc-forest) !important;
  border-color: var(--asc-sage);
}
.asc-btn-outline.et_pb_button:hover {
  background-color: var(--asc-sage);
  color: var(--asc-paper) !important;
  border-color: var(--asc-sage);
}

/* Accent button — Clay, use sparingly. Add class "asc-btn-clay" */
.asc-btn-clay.et_pb_button {
  background-color: var(--asc-clay);
  border-color: var(--asc-clay);
}
.asc-btn-clay.et_pb_button:hover {
  background-color: #9c6a62;
  border-color: #9c6a62;
}

/* ============================================================
   COMPONENTS — light brand defaults for common Divi modules
   ============================================================ */

/* Blurbs / cards on paper */
.et_pb_blurb .et_pb_blurb_content .et_pb_module_header { color: var(--asc-pine); }
.et_pb_blurb .et_pb_main_blurb_image .et-pb-icon { color: var(--asc-sage); }

/* Pricing tables */
.et_pb_pricing .et_pb_pricing_heading { background-color: var(--asc-sage); }
.et_pb_pricing li span.et_pb_pricing_currency,
.et_pb_pricing .et_pb_dollar_sign { color: var(--asc-sage); }
.et_pb_pricing_table_button.et_pb_button { background-color: var(--asc-forest); }
.et_pb_featured_table { border-color: var(--asc-forest); }

/* Accordion / toggles */
.et_pb_toggle_title { font-family: var(--asc-font-display); color: var(--asc-pine); }
.et_pb_toggle_open { background-color: var(--asc-paper); }
.et_pb_toggle_close { background-color: var(--asc-linen); }
.et_pb_accordion .et_pb_toggle { border-color: var(--asc-pale); }

/* Testimonials */
.et_pb_testimonial_description { font-family: var(--asc-font-display); font-style: italic; color: var(--asc-forest); }
.et_pb_testimonial_author { font-family: var(--asc-font-caps); text-transform: uppercase; letter-spacing: .14em; color: var(--asc-sage); }

/* Forms — Contact form / inputs */
.et_pb_contact_form_container .et_pb_contact_field input,
.et_pb_contact_field textarea,
input[type="text"], input[type="email"], input[type="tel"], textarea, select {
  background-color: var(--asc-paper);
  border: 1px solid var(--asc-pale);
  border-radius: var(--asc-radius);
  font-family: var(--asc-font-body);
  color: var(--asc-pine);
}
.et_pb_contact_field input:focus,
.et_pb_contact_field textarea:focus {
  border-color: var(--asc-sage);
  outline: none;
}
.et_pb_contact_form_label,
.et_pb_contact_field p.et_pb_contact_field_options_title { color: var(--asc-forest); }

/* Dividers */
.et_pb_divider_internal { border-top-color: var(--asc-pale); }

/* Menu — active / hover */
#top-menu li a:hover,
#top-menu li.current-menu-item > a { color: var(--asc-forest); opacity: 1; }
#top-menu li a { color: var(--asc-sage); }

/* Utility background helpers (add as Divi CSS classes) */
.asc-bg-paper  { background-color: var(--asc-paper) !important; }
.asc-bg-linen  { background-color: var(--asc-linen) !important; }
.asc-bg-pale   { background-color: var(--asc-pale) !important; }
.asc-bg-sage   { background-color: var(--asc-sage) !important; }
.asc-bg-forest { background-color: var(--asc-forest) !important; }
.asc-bg-pine   { background-color: var(--asc-pine) !important; }
.asc-text-paper, .asc-text-paper * { color: var(--asc-paper) !important; }

/* Footer */
#main-footer { background-color: var(--asc-pine); }
#footer-bottom { background-color: rgba(0,0,0,.12); }
#main-footer, #main-footer p, #footer-widgets .footer-widget li a { color: var(--asc-linen); }
#main-footer .footer-widget h4 { font-family: var(--asc-font-caps); text-transform: uppercase; letter-spacing: .14em; color: var(--asc-mist); font-size: .8rem; }

/* ============================================================
   YOUR CUSTOM CSS — add site-specific overrides below
   ============================================================ */
