.elementor-kit-7{--e-global-color-primary:#F68036;--e-global-color-secondary:#561E4C;--e-global-color-text:#3F1539;--e-global-color-accent:#47CB7F;--e-global-color-6e6ef0c:#4ECDF6;--e-global-color-e9fd266:#CA68B3;--e-global-color-3c339d7:#FDC236;--e-global-color-b74daa4:#870808;--e-global-color-7441a1d:#ED6283;--e-global-color-b3ecd04:#FFF9F1;--e-global-color-a920ab1:#414141;--e-global-color-c51caf5:#000000;--e-global-color-b0282db:#FFFFFF;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-size:16px;--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Fraunces";--e-global-typography-secondary-font-size:16px;--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:700;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ==========================================================================
   CASA Q — Custom CSS
   Paste into: Elementor → Site Settings → Custom CSS
   --------------------------------------------------------------------------
   This stylesheet handles things that are awkward to express through the
   Elementor UI controls — most importantly, the multi-color logo letters
   and the chunky drop-shadow buttons that define the Casa Q brand.

   All brand colors are duplicated here as CSS variables in case you want
   to use them in custom HTML widgets without going through Elementor's
   global colors.
   ========================================================================== */

:root {
  /* Main palette */
  --casaq-m1: #47CB7F;   /* green */
  --casaq-m2: #4F6E22;   /* deep green */
  --casaq-m3: #F68036;   /* orange — primary CTA */
  --casaq-m4: #FDC236;   /* yellow */
  --casaq-m5: #870808;   /* red — crisis */
  --casaq-m6: #ED6283;   /* coral */
  --casaq-m7: #4ECDF6;   /* cyan — TEENS brand */
  --casaq-m8: #484B5C;   /* slate */
  --casaq-m9: #CA68B3;   /* pink — YOUNG ADULTS brand */
  --casaq-m10: #561E4C;  /* deep purple */
  /* Secondary muted */
  --casaq-s1: #7E935A;
  --casaq-s2: #BA5050;
  --casaq-s3: #F9CB64;
  /* Text */
  --casaq-t1: #3F1539;   /* primary text — deep plum */
  --casaq-t2: #414141;   /* body text */
  --casaq-t3: #000000;
  /* Surfaces */
  --casaq-bg: #FFF9F1;          /* warm off-white page bg */
  --casaq-bg-cream: #FFF2E0;
  --casaq-ring: rgba(63, 21, 57, .08);
}

/* ==========================================================================
   1) MULTI-COLOR LOGO
   --------------------------------------------------------------------------
   Use this when you build the logo as an HTML widget (instead of an image).
   HTML structure:

       <a href="/" class="casaq-logo">
         <span class="casaq-logo__letters">
           <span>C</span><span>A</span><span>S</span><span>A</span><span>Q</span>
         </span>
         <span class="casaq-logo__tag">Your place to be you</span>
       </a>
   ========================================================================== */

.casaq-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  line-height: 1;
}
.casaq-logo:hover { text-decoration: none; }
.casaq-logo__letters {
  display: inline-flex;
  gap: 2px;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
  font-size: clamp(1.6rem, 2vw, 2rem);
  line-height: 1;
}
.casaq-logo__letters span:nth-child(1) { color: var(--casaq-m5); }   /* C - red */
.casaq-logo__letters span:nth-child(2) { color: var(--casaq-m3); }   /* A - orange */
.casaq-logo__letters span:nth-child(3) { color: var(--casaq-m4); }   /* S - yellow */
.casaq-logo__letters span:nth-child(4) { color: var(--casaq-m1); }   /* A - green */
.casaq-logo__letters span:nth-child(5) { color: var(--casaq-m9); }   /* Q - pink */
.casaq-logo__tag {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: .65rem;
  letter-spacing: .2em;
  color: var(--casaq-t1);
  text-transform: uppercase;
  font-weight: 600;
}
/* Hide tag on small screens */
@media (max-width: 640px) {
  .casaq-logo__tag { display: none; }
}

/* ==========================================================================
   2) UTILITY BAR (top dark strip with crisis line, newsletter, search)
   --------------------------------------------------------------------------
   Apply class .casaq-utility to the outer container in Elementor
   (Container settings → Advanced → CSS Classes: casaq-utility).
   ========================================================================== */

.casaq-utility {
  background: var(--casaq-t1);
  color: #fff;
  font-size: .85rem;
}
.casaq-utility a { color: rgba(255,255,255,.92); text-decoration: none; }
.casaq-utility a:hover { color: #fff; text-decoration: underline; }
.casaq-utility .casaq-crisis .elementor-button,
.casaq-utility .casaq-crisis {
  background: var(--casaq-m5) !important;
  background-color: var(--casaq-m5) !important;
  color: #fff !important;
  padding: 4px 12px !important;
  border-radius: 999px !important;
  font-weight: 600 !important;
  font-size: .82rem !important;
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  border: 0 !important;
}
.casaq-utility .casaq-crisis .elementor-button:hover,
.casaq-utility .casaq-crisis:hover {
  background: var(--casaq-m5) !important;
  background-color: var(--casaq-m5) !important;
  color: #fff !important;
  text-decoration: none !important;
  opacity: .92;
}

/* ==========================================================================
   3) MAIN HEADER POLISH (sticky, translucent, soft shadow on scroll)
   --------------------------------------------------------------------------
   Apply .casaq-main-header to the outer header container.
   ========================================================================== */

.casaq-main-header {
  background: rgba(255, 249, 241, .92) !important;   /* warm cream, translucent */
  /* backdrop-filter: blur(10px); */
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--casaq-ring);
}
/* If using Elementor's "sticky" effect, give it a slight shadow when scrolled */
.elementor-sticky--effects.casaq-main-header {
  box-shadow: 0 6px 24px rgba(63, 21, 57, .08);
}

/* Nav menu link colors + program-path hover accents */
.casaq-main-header .elementor-nav-menu a {
  color: var(--casaq-t1) !important;
  font-weight: 600;
}
.casaq-main-header .elementor-nav-menu a:hover {
  color: var(--casaq-m10) !important;
}
/* Program-path color cues — add a CSS class to the menu item in WP Menus
   (Screen Options → CSS Classes), eg. "casaq-link--teens" / "casaq-link--ya". */
.elementor-nav-menu .casaq-link--teens > a:hover,
.elementor-nav-menu .casaq-link--teens.current-menu-item > a {
  color: var(--casaq-m7) !important;
  border-bottom: 3px solid var(--casaq-m7);
}
.elementor-nav-menu .casaq-link--ya > a:hover,
.elementor-nav-menu .casaq-link--ya.current-menu-item > a {
  color: var(--casaq-m9) !important;
  border-bottom: 3px solid var(--casaq-m9);
}
.elementor-nav-menu .casaq-link--gethelp > a:hover,
.elementor-nav-menu .casaq-link--gethelp.current-menu-item > a {
  color: var(--casaq-m1) !important;
  border-bottom: 3px solid var(--casaq-m1);
}
.elementor-nav-menu .casaq-link--getinvolved > a:hover,
.elementor-nav-menu .casaq-link--getinvolved.current-menu-item > a {
  color: var(--casaq-m3) !important;
  border-bottom: 3px solid var(--casaq-m3);
}
.elementor-nav-menu .casaq-link--about > a:hover,
.elementor-nav-menu .casaq-link--about.current-menu-item > a {
  color: var(--casaq-m10) !important;
  border-bottom: 3px solid var(--casaq-m10);
}
.elementor-nav-menu .casaq-link--contact > a:hover,
.elementor-nav-menu .casaq-link--contact.current-menu-item > a {
  color: var(--casaq-m8) !important;
  border-bottom: 3px solid var(--casaq-m8);
}


/* ==========================================================================
   4) CHUNKY OFFSET-SHADOW BUTTONS
   --------------------------------------------------------------------------
   Add class .casaq-btn--primary, .casaq-btn--ghost, .casaq-btn--pink, etc.
   to any Elementor Button widget (Advanced → CSS Classes).

   When you add a CSS class to an Elementor Button widget, the class lands
   on the widget's WRAPPER (.elementor-element.casaq-btn--primary), not on
   the actual <a class="elementor-button"> inside it. Elementor's default
   button styles are on .elementor-button, so we target the inner element
   to win the specificity battle. The bare .casaq-btn... .elementor-kit-7s remain
   as a fallback for the (rare) case the class ends up on an anchor tag
   directly (e.g. inside an HTML widget).
   ========================================================================== */

.casaq-btn .elementor-button,
.casaq-btn--primary .elementor-button,
.casaq-btn--ghost .elementor-button,
.casaq-btn--pink .elementor-button,
.casaq-btn--cyan .elementor-button,
.casaq-btn--green .elementor-button {
  border-radius: 999px !important;
  font-weight: 700 !important;
  font-family: 'Inter', sans-serif !important;
  transition: transform .15s ease, box-shadow .15s ease !important;
  border: 0 !important;
}

.casaq-btn--primary .elementor-button {
  background: var(--casaq-m3) !important;
  background-color: var(--casaq-m3) !important;
  color: #fff !important;
  box-shadow: 0 8px 0 rgba(246, 128, 54, .25) !important;
}
.casaq-btn--red .elementor-button {
  background: var(--casaq-m5) !important;
  background-color: var(--casaq-m5) !important;
  color: #fff !important;
  box-shadow: 0 8px 0 rgba(246, 128, 54, .25) !important;
}
.casaq-btn--ghost .elementor-button {
  background: #fff !important;
  background-color: #fff !important;
  color: var(--casaq-t1) !important;
  box-shadow: 0 8px 0 rgba(63, 21, 57, .08) !important;
}
.casaq-btn--pink .elementor-button {
  background: var(--casaq-m9) !important;
  background-color: var(--casaq-m9) !important;
  color: #fff !important;
  box-shadow: 0 8px 0 rgba(202, 104, 179, .25) !important;
}
.casaq-btn--cyan .elementor-button {
  background: var(--casaq-m7) !important;
  background-color: var(--casaq-m7) !important;
  color: #fff !important;
  box-shadow: 0 8px 0 rgba(78, 205, 246, .25) !important;
}

.casaq-btn--green .elementor-button {
  background: var(--casaq-m1) !important;
  background-color: var(--casaq-m1) !important;
  color: #fff !important;
  box-shadow: 0 8px 0 rgba(71, 203, 127, .25) !important;
}

.casaq-btn--purple .elementor-button {
  background: var(--casaq-m10) !important;
  background-color: var(--casaq-m10) !important;
  color: #fff !important;
  box-shadow: 0 8px 0 rgba(86, 30, 76, .25);
}


.casaq-btn .elementor-button:hover,
.casaq-btn--primary .elementor-button:hover,
.casaq-btn--ghost .elementor-button:hover,
.casaq-btn--pink .elementor-button:hover,
.casaq-btn--cyan .elementor-button:hover,
.casaq-btn--green .elementor-button:hover {
  transform: translateY(-2px);
}

/* Keep the colored background on hover (Elementor otherwise swaps to a
   default hover color that doesn't match the brand palette). */
.casaq-btn--primary .elementor-button:hover {
  background: var(--casaq-m3) !important;
  background-color: var(--casaq-m3) !important;
  color: #fff !important;
}
.casaq-btn--ghost .elementor-button:hover {
  background: #fff !important;
  background-color: #fff !important;
  color: var(--casaq-t1) !important;
}
.casaq-btn--pink .elementor-button:hover {
  background: var(--casaq-m9) !important;
  background-color: var(--casaq-m9) !important;
  color: #fff !important;
}
.casaq-btn--cyan .elementor-button:hover {
  background: var(--casaq-m7) !important;
  background-color: var(--casaq-m7) !important;
  color: #fff !important;
}

/* ==========================================================================
   5) FOOTER STYLING
   --------------------------------------------------------------------------
   Apply .casaq-footer to the outer footer container.
   ========================================================================== */

.casaq-footer {
  background: var(--casaq-t1);
  color: rgba(255,255,255,.8);
}
.casaq-footer a { color: rgba(255,255,255,.8); text-decoration: none; }
.casaq-footer a:hover { color: #fff; text-decoration: underline; }
.casaq-footer h4,
.casaq-footer .elementor-heading-title {
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: .85rem !important;
  letter-spacing: .2em;
  text-transform: uppercase;
  margin-bottom: 18px;
}

/* Crisis box inside footer */
.casaq-footer .casaq-crisis-box {
  background: var(--casaq-m5);
  color: #fff;
  padding: 16px 18px;
  border-radius: 16px;
  margin-top: 14px;
  font-size: .92rem;
  line-height: 1.45;
}
.casaq-footer .casaq-crisis-box b { display: block; margin-bottom: 4px; }

/* Footer menu item spacing */
.casaq-footer .elementor-nav-menu li { margin-bottom: 8px; }
.casaq-footer .elementor-nav-menu a {
  color: rgba(255,255,255,.85) !important;
  font-weight: 400 !important;
  padding: 0 !important;
}
.casaq-footer .elementor-nav-menu a:hover { color: #fff !important; }

/* Legal bar (the bottom strip) */
.casaq-legal-bar {
  border-top: 1px solid rgba(255,255,255,.15);
  font-size: .85rem;
  color: rgba(255,255,255,.7);
}
.casaq-legal-bar a { color: rgba(255,255,255,.7); }

/* Social icon circles */
.casaq-footer .elementor-social-icon {
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
  border-radius: 50% !important;
}
.casaq-footer .elementor-social-icon:hover {
  background: rgba(255,255,255,.22) !important;
}

/* ==========================================================================
   6) MOBILE-SPECIFIC POLISH
   ========================================================================== */

@media (max-width: 1024px) {
  /* Make sure the donate button stays visible on tablet/mobile next to the burger */
  .casaq-main-header .casaq-btn--primary .elementor-button,
  .casaq-main-header .casaq-btn--primary {
    padding: 10px 18px !important;
    font-size: .9rem !important;
  }
}
@media (max-width: 767px) {
  /* Tighter utility bar on phones */
  .casaq-utility { font-size: .78rem; padding: 6px 12px !important; }
  .casaq-utility .casaq-crisis .elementor-button,
  .casaq-utility .casaq-crisis { padding: 3px 10px !important; font-size: .76rem !important; }
}

/* ==========================================================================
   7) HOMEPAGE — HERO
   --------------------------------------------------------------------------
   Applied via classes on containers & widgets in the homepage template.
   ========================================================================== */

.casaq-hero {
  position: relative;
  overflow: hidden;
}
/* Soft radial gradient "aurora" behind the hero */
.casaq-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(1100px 600px at 85% 20%, rgba(78,205,246,.28), transparent 60%),
    radial-gradient(900px 700px at 10% 80%, rgba(202,104,179,.28), transparent 55%),
    radial-gradient(700px 500px at 50% 110%, rgba(253,194,54,.35), transparent 60%);
}
/* Decorative confetti shapes (pure CSS, no extra widgets) */
.casaq-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background-image:
    radial-gradient(circle at 6% 22%, var(--casaq-m4) 0 35px, transparent 36px),
    radial-gradient(circle at 4% 64%, var(--casaq-m6) 0 22px, transparent 23px),
    radial-gradient(circle at 44% 88%, var(--casaq-m1) 0 55px, transparent 56px),
    radial-gradient(circle at 56% 10%, var(--casaq-m7) 0 26px, transparent 27px);
  opacity: .75;
}
.casaq-hero > .e-con-inner,
.casaq-hero > .elementor-container,
.casaq-hero > .e-con {
  z-index: 2;
}
/* Eyebrow pill — rendered as an HTML widget <span class="casaq-eyebrow">...</span> */
.casaq-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  color: var(--casaq-t1);
  padding: 8px 16px;
  border-radius: 999px;
  font-weight: 700;
  font-size: .85rem;
  box-shadow: 0 4px 14px rgba(63,21,57,.08);
  font-family: 'Inter', system-ui, sans-serif;
}
.casaq-eyebrow__dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--casaq-m1);
  flex-shrink: 0;
}
/* Gradient-fill accent inside the hero H1 (wrap text in a <span class="casaq-accent">) */
.casaq-accent {
  background: linear-gradient(100deg, var(--casaq-m3), var(--casaq-m6) 35%, var(--casaq-m9) 65%, var(--casaq-m7));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
/* Hero stat chips */
.casaq-hero-stats {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  margin-top: 30px;
}
.casaq-hero-stat {
  background: #fff;
  border-radius: 18px;
  padding: 14px 18px;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 180px;
}
.casaq-hero-stat .casaq-hero-stat__bar {
  width: 6px;
  height: 36px;
  border-radius: 4px;
  background: var(--casaq-m1);
}
.casaq-hero-stat:nth-child(2) .casaq-hero-stat__bar { background: var(--casaq-m7); }
.casaq-hero-stat:nth-child(3) .casaq-hero-stat__bar { background: var(--casaq-m9); }
.casaq-hero-stat b {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.6rem;
  color: var(--casaq-t1);
  display: block;
  line-height: 1.1;
}
.casaq-hero-stat span {
  font-size: .85rem;
  color: var(--casaq-t2);
}

/* ==========================================================================
   8) HOMEPAGE — AUDIENCE SPLIT CARDS
   ========================================================================== */

.casaq-aud-card {
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  padding: 38px !important;
  color: #fff;
  box-shadow: 0 20px 50px rgba(63,21,57,.12);
  min-height: 320px;
}
.casaq-aud-card--teens {
  background: linear-gradient(140deg, var(--casaq-m7), #3AB7E4);
}
.casaq-aud-card--ya {
  background: linear-gradient(140deg, var(--casaq-m9), var(--casaq-m10));
}
/* Giant ghost number on each card (14-18 / 18-22) */
.casaq-aud-card::after {
  position: absolute;
  right: -40px;
  bottom: -60px;
  font-size: 14rem;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
  color: rgba(255,255,255,.08);
  line-height: 1;
  pointer-events: none;
  width: max-content;
}
.casaq-aud-card--teens::after { content: "14-18"; }
.casaq-aud-card--ya::after    { content: "18-22"; }
/* Force child widget text to white */
.casaq-aud-card .elementor-heading-title,
.casaq-aud-card .elementor-widget-text-editor,
.casaq-aud-card p,
.casaq-aud-card h3 { color: #fff !important; }
/* Small tag pill */
.casaq-aud-tag {
  display: inline-block;
  background: rgba(255,255,255,.25);
  padding: 4px 12px;
  border-radius: 999px;
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #fff;
}
/* Pull the row up so cards overlap hero */
.casaq-aud-row { margin-top: -60px; position: relative; z-index: 2; }

/* ==========================================================================
   9) HOMEPAGE — MISSION
   ========================================================================== */

.casaq-mission { position: relative; overflow: hidden; }
.casaq-mission::before {
  content: "";
  position: absolute;
  top: -40px;
  right: -40px;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: var(--casaq-m4);
  opacity: .25;
  pointer-events: none;
}
.casaq-mission .casaq-mission__accent { color: var(--casaq-m9); }

/* ==========================================================================
   10) HOMEPAGE — IMPACT (dark purple)
   ========================================================================== */

.casaq-impact {
  position: relative;
  overflow: hidden;
}
.casaq-impact::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(500px 300px at 90% 10%, rgba(78,205,246,.25), transparent 60%),
    radial-gradient(500px 300px at 10% 90%, rgba(237,98,131,.22), transparent 60%);
}
.casaq-impact .elementor-heading-title,
.casaq-impact p { color: #fff !important; }
.casaq-impact-card {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 24px !important;
  padding: 32px 24px !important;
  backdrop-filter: blur(6px);
}
.casaq-impact-card .casaq-impact-num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 3.4rem;
  font-weight: 800;
  line-height: 1;
  display: block;
}
.casaq-impact-card:nth-of-type(1) .casaq-impact-num { color: var(--casaq-m1); }
.casaq-impact-card:nth-of-type(2) .casaq-impact-num { color: var(--casaq-m7); }
.casaq-impact-card:nth-of-type(3) .casaq-impact-num { color: var(--casaq-m4); }
.casaq-impact-card:nth-of-type(4) .casaq-impact-num { color: var(--casaq-m9); }
.casaq-impact-card .casaq-impact-label {
  margin-top: 10px;
  color: rgba(255,255,255,.85);
  font-size: 1rem;
  display: block;
}

/* ==========================================================================
   11) HOMEPAGE — 5 DOMAINS
   ========================================================================== */

.casaq-dom-card {
  background: #fff;
  border-radius: 20px !important;
  padding: 26px 22px !important;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
  border-top: 6px solid var(--casaq-m1);
  transition: transform .2s ease;
}
.casaq-dom-card:hover { transform: translateY(-6px); }
.casaq-dom-card--teens    { border-top-color: var(--casaq-m7); }
.casaq-dom-card--ed       { border-top-color: var(--casaq-m3); }
.casaq-dom-card--health   { border-top-color: var(--casaq-m9); }
.casaq-dom-card--belong   { border-top-color: var(--casaq-m4); }
.casaq-dom-card .elementor-icon-box-icon .elementor-icon {
  width: 48px !important;
  height: 48px !important;
  border-radius: 14px !important;
  background: #F1FBF5;
  color: var(--casaq-m2) !important;
  padding: 6px 0 0 6px;
}
.casaq-dom-card--teens  .elementor-icon { background: #E8F8FE !important; color: #106A86 !important; }
.casaq-dom-card--ed     .elementor-icon { background: #FFF0E1 !important; color: #9A4A10 !important; }
.casaq-dom-card--health .elementor-icon { background: #FAE9F3 !important; color: #7E2B66 !important; }
.casaq-dom-card--belong .elementor-icon { background: #FFF6DC !important; color: #8A5800 !important; }
.casaq-dom-card .elementor-icon-box-title { font-family: 'Fraunces', Georgia, serif; }

/* ==========================================================================
   12) HOMEPAGE — STORIES
   ========================================================================== */

.casaq-story {
  background: #fff;
  border-radius: 24px !important;
  padding: 36px !important;
  box-shadow: 0 14px 36px rgba(63,21,57,.08);
  border-left: 8px solid var(--casaq-m9);
}
.casaq-story--green { border-left-color: var(--casaq-m1); }
.casaq-story blockquote,
.casaq-story .casaq-story__quote {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.3rem;
  color: var(--casaq-t1);
  line-height: 1.4;
  margin: 0 0 18px;
}
.casaq-story__who {
  display: flex;
  align-items: center;
  gap: 12px;
}
.casaq-story__avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--casaq-m7), var(--casaq-m9));
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  flex-shrink: 0;
}
.casaq-story__name { display: block; color: var(--casaq-t1); font-weight: 700; }
.casaq-story__meta { font-size: .85rem; color: var(--casaq-t2); }

/* ==========================================================================
   13) HOMEPAGE — GET INVOLVED (warm gradient)
   ========================================================================== */

.casaq-involved {
  position: relative;
  overflow: hidden;
  background: linear-gradient(160deg, var(--casaq-m4), var(--casaq-m3)) !important;
}
.casaq-involved::before {
  content: "";
  position: absolute;
  top: -80px;
  right: -80px;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  background: var(--casaq-m6);
  opacity: .4;
  pointer-events: none;
}
.casaq-involved::after {
  content: "";
  position: absolute;
  bottom: -100px;
  left: -60px;
  width: 240px;
  height: 240px;
  border-radius: 50%;
  background: var(--casaq-m9);
  opacity: .35;
  pointer-events: none;
}
.casaq-involved > .e-con-inner,
.casaq-involved > .elementor-container,
.casaq-involved > .e-con {
  position: relative;
  z-index: 2;
}
.casaq-inv-card {
  background: #fff;
  border-radius: 24px !important;
  padding: 32px !important;
  box-shadow: 0 18px 40px rgba(63,21,57,.15);
  height: 100%;
}
.casaq-inv-card .elementor-icon-box-icon .elementor-icon {
  font-size: 2.4rem !important;
  color: var(--casaq-m3) !important;
}

/* ==========================================================================
   14) HOMEPAGE — SPONSOR CALLOUT
   ========================================================================== */

.casaq-sponsor-box {
  position: relative;
  overflow: hidden;
  background: linear-gradient(120deg, var(--casaq-m10), var(--casaq-t1)) !important;
  border-radius: 28px !important;
  padding: 50px !important;
  color: #fff !important;
  box-shadow: 0 30px 60px rgba(63,21,57,.2);
}
.casaq-sponsor-box::after {
  content: "$13,630";
  position: absolute;
  right: -20px;
  bottom: -60px;
  font-size: 16rem;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
  color: rgba(255,255,255,.06);
  line-height: 1;
  pointer-events: none;
}
.casaq-sponsor-box .elementor-heading-title,
.casaq-sponsor-box p { color: #fff !important; position: relative; z-index: 2; }
.casaq-sponsor-pill {
  display: inline-block;
  background: var(--casaq-m4);
  color: var(--casaq-t1);
  padding: 4px 12px;
  border-radius: 999px;
  font-weight: 700;
  font-size: .8rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  position: relative;
  z-index: 2;
}

/* ==========================================================================
   15) HOMEPAGE — NEWSLETTER
   ========================================================================== */

.casaq-news { background: var(--casaq-bg-cream); }
.casaq-news .elementor-form {
  background: #fff;
  border-radius: 999px !important;
  padding: 8px !important;
  box-shadow: 0 10px 30px rgba(63,21,57,.08);
  display: flex !important;
  gap: 10px;
}
.casaq-news .elementor-form-fields-wrapper.elementor-labels-{
    margin-right: calc(-30px / 2) !important;
    width: stretch;
    flex-wrap: nowrap;
}
.casaq-news .elementor-field-group input {
  border: 0 !important;
  background: transparent !important;
  padding: 14px 18px !important;
  font-size: 1rem !important;
  outline: none;
}
.casaq-news .elementor-button {
  background: var(--casaq-m1) !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 14px 26px !important;
  font-weight: 700 !important;
}

/* ---- Make the Gravity form match the Elementor pill ---- */

/* The <form> becomes the white pill (equivalent of .elementor-form) */
.casaq-news .gform_wrapper form {
  background: #fff;
  border-radius: 999px !important;
  padding: 8px !important;
  box-shadow: 0 10px 30px rgba(63,21,57,.08);
  display: flex !important;
  align-items: center;
  gap: 10px;
}

/* Hide the Gravity heading/description block so it doesn't push the layout */
.casaq-news .gform_wrapper .gform_heading {
  display: none !important;
}

/* Field body stretches to fill, like the email column did */
.casaq-news .gform_wrapper .gform-body,
.casaq-news .gform_wrapper .gform_body {
  flex: 1 1 auto;
  margin: 0 !important;
  padding: 0 !important;
}

.casaq-news .gform_wrapper .gform_fields {
  display: block !important;
  grid-template-columns: none !important; /* GF uses CSS grid by default */
  margin: 0 !important;
  padding: 0 !important;
}

.casaq-news .gform_wrapper .gfield {
  margin: 0 !important;
  padding: 0 !important;
}

/* Hide the field label (Elementor used .elementor-screen-only) */
.casaq-news .gform_wrapper .gfield_label {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* The email input: borderless / transparent, same padding & size */
.casaq-news .gform_wrapper .gform-body input,
.casaq-news .gform_wrapper .ginput_container input {
  border: 0 !important;
  background: transparent !important;
  padding: 14px 18px !important;
  font-size: 1rem !important;
  outline: none !important;
  width: 100% !important;
  box-shadow: none !important;
  line-height: normal !important;
}

/* Footer holds the submit button — strip its default spacing */
.casaq-news .gform_wrapper .gform-footer,
.casaq-news .gform_wrapper .gform_footer {
  flex: 0 0 auto;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

/* The submit button becomes the colored pill */
.casaq-news .gform_wrapper .gform_button {
  background: var(--casaq-m1) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
  padding: 14px 26px !important;
  font-weight: 700 !important;
  width: auto !important;
  cursor: pointer;
}

.casaq-news .gform_wrapper .gform-body input::placeholder,
.casaq-news .gform_wrapper .ginput_container input::placeholder {
  color: #9a9a9a !important;   /* grey */
  opacity: 1 !important;        /* Firefox dims placeholders by default */
}

/* ==========================================================================
   16) RESPONSIVE — HOMEPAGE SPECIFIC
   ========================================================================== */

@media (max-width: 980px) {
  .casaq-aud-row { margin-top: -30px; }
  .casaq-aud-card::after { font-size: 10rem; }
  .casaq-sponsor-box::before { font-size: 10rem; }
}
@media (max-width: 640px) {
  .casaq-aud-card { padding: 28px !important; min-height: 260px; }
  .casaq-sponsor-box { padding: 32px !important; }
  .casaq-impact-card .casaq-impact-num { font-size: 2.6rem; }
}

/* ==========================================================================
   CASA Q â€” INNER PAGES CSS (Teens + Young Adults)
   --------------------------------------------------------------------------
   ADDITIVE stylesheet. Paste this BELOW the existing casa-q-custom.css in
   Elementor â†’ Site Settings â†’ Custom CSS. It only adds new classes; it does
   NOT override anything in the existing file.

   Sections:
     1) Shared bits used by both inner pages (breadcrumb, tag pill,
        page-hero container, hero card, accent colors, steps, contact box)
     2) Teens-specific styling (facts strip, about, provides grid, daylife,
        cta strip)
     3) Young-Adults-specific styling (program model, 5 domains grid,
        outcomes table, eligibility, sponsor + cost card, apply)
   ========================================================================== */


/* ==========================================================================
   1) SHARED â€” used by both Teens and Young Adults
   ========================================================================== */

/* Breadcrumb */
.casaq-crumb {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  font-size: .9rem;
  color: var(--casaq-t2);
  margin-bottom: 18px;
  position: relative;
  z-index: 2;
}
.casaq-crumb a { color: var(--casaq-m10); font-weight: 600; }

/* Small tag-pill above the page H1 (brand-colored) */
.casaq-tag-pill {
  display: inline-block;
  background: #fff;
  padding: 8px 16px;
  border-radius: 999px;
  font-weight: 700;
  font-size: .85rem;
  box-shadow: 0 4px 14px rgba(63,21,57,.08);
  margin-bottom: 18px;
  font-family: 'Inter', system-ui, sans-serif;
}
.casaq-tag-pill--teens { color: var(--casaq-m7); }
.casaq-tag-pill--ya    { color: var(--casaq-m9); }

/* Uppercase eyebrow pill used in section heads ("The TLP Outcome Framework",
   "Sponsor a Client") */
.casaq-pill-eyebrow {
  display: inline-block;
  background: #fff;
  color: var(--casaq-m10);
  padding: 6px 14px;
  border-radius: 999px;
  font-weight: 700;
  font-size: .8rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  box-shadow: 0 4px 14px rgba(63,21,57,.08);
  margin-bottom: 14px;
}
.casaq-pill-eyebrow--gold {
  background: var(--casaq-m4);
  color: var(--casaq-t1);
  box-shadow: none;
}

/* Brand-colored flat accent inside a heading (use when the gradient
   casaq-accent is too busy) */
.casaq-accent--cyan { color: var(--casaq-m7); }
.casaq-accent--pink { color: var(--casaq-m9); }

/* Lede â€” enlarged body paragraph under a page H1 */
.casaq-lede p {
  font-size: 1.18rem !important;
  max-width: 540px;
}

/* ----- Page hero shell (gradient bg + radial aurora + colored bottom bar) -- */
.casaq-page-hero {
  position: relative;
  overflow: hidden;
}
.casaq-page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}
.casaq-page-hero > .e-con-inner,
.casaq-page-hero > .elementor-container,
.casaq-page-hero > .e-con { position: relative; z-index: 2; }

/* Teens variant â€” cyan gradient + cyan bottom bar */
.casaq-page-hero--teens {
  background: linear-gradient(160deg, #E5F7FF 0%, #F2FAFE 60%) !important;
  border-bottom: 6px solid var(--casaq-m7);
}
.casaq-page-hero--teens::before {
  background:
    radial-gradient(700px 400px at 90% 30%, rgba(78,205,246,.45), transparent 60%),
    radial-gradient(500px 400px at 10% 90%, rgba(253,194,54,.30), transparent 55%);
}

/* YA variant â€” pink gradient + pink bottom bar */
.casaq-page-hero--ya {
  background: linear-gradient(160deg, #F8E6F3 0%, #FBF3F9 60%) !important;
  border-bottom: 6px solid var(--casaq-m9);
}
.casaq-page-hero--ya::before {
  background:
    radial-gradient(700px 400px at 90% 30%, rgba(202,104,179,.45), transparent 60%),
    radial-gradient(500px 400px at 10% 90%, rgba(253,194,54,.30), transparent 55%);
}

/* Hero info card (right column of the page hero, "Who we serve" list) */
.casaq-hero-card {
  background: #fff !important;
  border-radius: 28px !important;
  padding: 32px !important;
  box-shadow: 0 30px 60px rgba(63,21,57,.12);
  border-top: 8px solid var(--casaq-m7);  /* default = cyan */
}
.casaq-hero-card--teens { border-top-color: var(--casaq-m7); }
.casaq-hero-card--ya    { border-top-color: var(--casaq-m9); }
.casaq-hero-card__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.casaq-hero-card__list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 1rem;
  color: var(--casaq-t2);
}
.casaq-hero-card__list li::before {
  content: "\2713";
  color: var(--casaq-m1);
  font-weight: 800;
  background: #E8FAEF;
  width: 24px; height: 24px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 2px;
}

/* ----- Image card placeholder (About / Program Model image column) -------- */
.casaq-image-card {
  min-height: 460px;
  border-radius: 28px !important;
  box-shadow: 0 30px 60px rgba(63,21,57,.15);
  display: flex !important;
  align-items: flex-end;
  color: #fff;
  font-weight: 700;
  letter-spacing: .15em;
  font-family: 'Inter', sans-serif;
  font-size: .8rem;
  text-transform: uppercase;
}
.casaq-image-card--teens {
  background: linear-gradient(135deg, var(--casaq-m7), var(--casaq-m1) 70%, var(--casaq-m4)) !important;
}
.casaq-image-card--ya {
  background: linear-gradient(140deg, var(--casaq-m9), var(--casaq-m10) 70%, var(--casaq-m7)) !important;
}

/* ----- Numbered steps (apply-to-program sections) ------------------------- */
.casaq-steps {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 10px;
}
.casaq-step {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  background: #F2FAFE;
  padding: 22px;
  border-radius: 18px;
}
.casaq-steps--ya .casaq-step {
  background: #fff;
  box-shadow: 0 6px 18px rgba(63,21,57,.05);
}
.casaq-step__num {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-family: 'Fraunces', Georgia, serif;
  flex-shrink: 0;
  font-size: 1.1rem;
  background: var(--casaq-m7);  /* default = teens cyan */
}
.casaq-steps--teens .casaq-step__num { background: var(--casaq-m7); }
.casaq-steps--ya    .casaq-step__num { background: var(--casaq-m9); }
.casaq-step__body h4 {
  font-family: 'Inter', sans-serif;
  font-size: 1.05rem;
  color: var(--casaq-t1);
  margin: 0 0 4px;
  font-weight: 700;
}
.casaq-step__body p { margin: 0; color: var(--casaq-t2); }

/* ----- Contact box (right col of apply section) --------------------------- */
.casaq-contact-box {
  color: #fff !important;
  box-shadow: 0 20px 50px rgba(63,21,57,.15);
}
.casaq-contact-box--teens {
  background: linear-gradient(140deg, var(--casaq-m7), #3AB7E4) !important;
}
.casaq-contact-box--ya {
  background: linear-gradient(140deg, var(--casaq-m9), var(--casaq-m10)) !important;
}
.casaq-contact-box .elementor-heading-title,
.casaq-contact-box p { color: #fff !important; }
.casaq-contact-box__number {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 2.2rem;
  font-weight: 800;
  margin: 14px 0;
  color: #fff;
}


/* ==========================================================================
   2) TEENS-SPECIFIC
   ========================================================================== */

/* Quick facts strip â€” 4 cells with vertical dividers */
.casaq-facts { border-bottom: 1px solid var(--casaq-ring); }
.casaq-fact {
  border-right: 1px solid var(--casaq-ring);
  text-align: center;
}
.casaq-fact:last-child { border-right: 0; }
.casaq-fact__num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.8rem;
  color: var(--casaq-t1);
  display: block;
  font-weight: 800;
  line-height: 1.1;
}
.casaq-fact__label {
  font-size: .9rem;
  color: var(--casaq-t2);
  display: block;
  margin-top: 4px;
}

/* About section (no custom bg â€” white) â€” nothing needed beyond casaq-image-card */

/* "What we provide" grid cards */
.casaq-prov-grid { /* the row container; layout handled inline */ }
.casaq-prov-card {
  background: #fff !important;
  border-radius: 22px !important;
  padding: 30px !important;
  box-shadow: 0 12px 30px rgba(63,21,57,.06);
  transition: transform .2s ease;
}
.casaq-prov-card:hover { transform: translateY(-6px); }
.casaq-prov-card__icon {
  width: 54px;
  height: 54px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  margin-bottom: 4px;
  background: #E8F8FE;
  color: var(--casaq-m7);
}
.casaq-prov-card--cyan   .casaq-prov-card__icon { background: #E8F8FE; color: var(--casaq-m7); }
.casaq-prov-card--green  .casaq-prov-card__icon { background: #E8FAEF; color: var(--casaq-m2); }
.casaq-prov-card--orange .casaq-prov-card__icon { background: #FFF0E1; color: var(--casaq-m3); }
.casaq-prov-card--pink   .casaq-prov-card__icon { background: #FAE9F3; color: var(--casaq-m9); }
.casaq-prov-card--gold   .casaq-prov-card__icon { background: #FFF6DC; color: #8A5800; }
.casaq-prov-card--red    .casaq-prov-card__icon { background: #FCEBEB; color: var(--casaq-m5); }

.casaq-prov-card__icon img{
    width: 50%;
}

/* A day at Casa Q â€” dark section with timeline cards */
.casaq-daylife { color: #fff; }
.casaq-daylife .elementor-heading-title { color: #fff !important; }
.casaq-tl-card {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 20px !important;
  padding: 28px !important;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.casaq-tl-card__time {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1;
}
.casaq-tl-card--cyan  .casaq-tl-card__time { color: var(--casaq-m7); }
.casaq-tl-card--gold  .casaq-tl-card__time { color: var(--casaq-m4); }
.casaq-tl-card--green .casaq-tl-card__time { color: var(--casaq-m1); }
.casaq-tl-card--pink  .casaq-tl-card__time { color: var(--casaq-m9); }
.casaq-tl-card p { color: rgba(255,255,255,.85); }

/* CTA strip â€” yellow/orange gradient with decorative circle */
.casaq-cta-strip {
  background: linear-gradient(120deg, var(--casaq-m4), var(--casaq-m3)) !important;
  position: relative;
  overflow: hidden;
  color: var(--casaq-t1);
}
.casaq-cta-strip::before {
  content: "";
  position: absolute;
  top: -80px; right: -80px;
  width: 300px; height: 300px;
  border-radius: 50%;
  background: var(--casaq-m6);
  opacity: .4;
  pointer-events: none;
}
.casaq-cta-strip > .e-con-inner,
.casaq-cta-strip > .elementor-container,
.casaq-cta-strip > .e-con { position: relative; z-index: 2; }
.casaq-cta-strip .elementor-heading-title { color: var(--casaq-t1) !important; }


/* ==========================================================================
   3) YOUNG-ADULTS-SPECIFIC
   ========================================================================== */

/* Program model section â€” mostly inherited, no extra bg */

/* 5 domains grid (YA-specific â€” different from homepage casaq-dom-card) */
.casaq-domains-ya { background: #FBF3F9 !important; }
.casaq-dom5 {
  background: #fff !important;
  border-radius: 22px !important;
  padding: 26px !important;
  box-shadow: 0 10px 26px rgba(63,21,57,.06);
  border-top: 8px solid var(--casaq-m1);  /* green default */
  transition: transform .2s ease;
}
.casaq-dom5:hover { transform: translateY(-6px); }
.casaq-dom5--green  { border-top-color: var(--casaq-m1); }
.casaq-dom5--cyan   { border-top-color: var(--casaq-m7); }
.casaq-dom5--orange { border-top-color: var(--casaq-m3); }
.casaq-dom5--pink   { border-top-color: var(--casaq-m9); }
.casaq-dom5--gold   { border-top-color: var(--casaq-m4); }
.casaq-dom5__icon {
  width: 50px; height: 50px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  margin-bottom: 6px;
  background: #EEFBF3;
  color: var(--casaq-m2);
}
.casaq-dom5--green  .casaq-dom5__icon { background: #EEFBF3; color: var(--casaq-m2); }
.casaq-dom5--cyan   .casaq-dom5__icon { background: #E8F8FE; color: #106A86; }
.casaq-dom5--orange .casaq-dom5__icon { background: #FFF0E1; color: #9A4A10; }
.casaq-dom5--pink   .casaq-dom5__icon { background: #FAE9F3; color: #7E2B66; }
.casaq-dom5--gold   .casaq-dom5__icon { background: #FFF6DC; color: #8A5800; }
.casaq-dom5__icon img{
    width: 50%;
}
.casaq-dom5 h4 {
  font-family: 'Fraunces', Georgia, serif;
  color: var(--casaq-t1);
  font-size: 1.1rem;
  margin: 0 0 8px;
}
.casaq-dom5 p { font-size: .92rem; }

/* Outcomes table â€” 4 columns on dark purple bg */
.casaq-outcomes { color: #fff; }
.casaq-outcomes .elementor-heading-title { color: #fff !important; }
.casaq-out-table {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 24px;
  overflow: hidden;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.casaq-out-row {
  display: grid;
  grid-template-columns: .8fr 1fr 1fr 1fr;
  gap: 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.casaq-out-row:last-child { border-bottom: 0; }
.casaq-out-row--head { background: rgba(255,255,255,.05); }
.casaq-out-row--head > div {
  font-weight: 700;
  color: #fff;
  font-size: .85rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  padding: 18px 20px;
}
.casaq-out-row > div {
  padding: 20px;
  font-size: .95rem;
}
.casaq-out-row__name {
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 700;
  color: #fff;
  font-size: 1rem;
}
.casaq-out-row__name--green  { color: var(--casaq-m1); }
.casaq-out-row__name--cyan   { color: var(--casaq-m7); }
.casaq-out-row__name--orange { color: var(--casaq-m3); }
.casaq-out-row__name--pink   { color: var(--casaq-m9); }
.casaq-out-row__name--gold   { color: var(--casaq-m4); }

@media (max-width: 900px) {
  .casaq-out-row { grid-template-columns: 1fr; }
  .casaq-out-row > div { padding: 12px 18px; }
}

/* Eligibility grid â€” 2-col list of criteria + plain help list */
.casaq-elig-list {
  margin-top: 10px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.casaq-elig-list > div {
  background: var(--casaq-bg-cream);
  padding: 18px;
  border-radius: 16px;
  border-left: 5px solid var(--casaq-m9);
}
.casaq-elig-list > div:nth-child(2n) { border-left-color: var(--casaq-m7); }
.casaq-elig-list b {
  display: block;
  color: var(--casaq-t1);
  margin-bottom: 4px;
}
@media (max-width: 720px) {
  .casaq-elig-list { grid-template-columns: 1fr; }
}

.casaq-help-list {
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.casaq-help-list li {
  background: var(--casaq-bg-cream);
  padding: 14px 18px;
  border-radius: 14px;
}
.casaq-help-list li img{
    width: 16px;
}

/* Sponsor / cost callout (YA variant â€” purple gradient, ghost $13,630) */
.casaq-sponsor-ya {
  background: linear-gradient(140deg, var(--casaq-m10), var(--casaq-t1)) !important;
  color: #fff !important;
  position: relative;
  overflow: hidden;
}
.casaq-sponsor-ya::after {
  content: "$13,630";
  position: absolute;
  right: -40px;
  bottom: -100px;
  font-size: 18rem;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
  color: rgba(255,255,255,.06);
  line-height: 1;
  letter-spacing: -.05em;
  pointer-events: none;
}
.casaq-sponsor-ya > .e-con-inner,
.casaq-sponsor-ya > .elementor-container,
.casaq-sponsor-ya > .e-con { position: relative; z-index: 2; }
.casaq-sponsor-ya .elementor-heading-title { color: #fff !important; }

/* Cost breakdown card (right column in sponsor section) */
.casaq-cost-card {
  background: #fff;
  color: var(--casaq-t1);
  border-radius: 24px;
  padding: 32px;
  box-shadow: 0 30px 60px rgba(0,0,0,.25);
}
.casaq-cost-card__title {
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 700;
  font-size: 1.3rem;
  margin: 0 0 18px;
  color: var(--casaq-t1);
}
.casaq-cost-row {
  display: flex;
  justify-content: space-between;
  padding: 12px 0;
  border-bottom: 1px solid var(--casaq-ring);
  font-size: .95rem;
}
.casaq-cost-row:last-of-type {
  border-bottom: 0;
  padding-bottom: 0;
}
.casaq-cost-row b { color: var(--casaq-t1); }
.casaq-cost-total {
  margin-top: 14px;
  padding: 16px;
  background: var(--casaq-m4);
  border-radius: 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.casaq-cost-total b {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.6rem;
}

/* Apply section (YA variant) â€” light pink bg */
.casaq-apply-ya { background: #FBF3F9 !important; }

/* ==========================================================================
   CASA Q — MAIN PAGES CSS (About, Get Help, Get Involved, Contact)
   --------------------------------------------------------------------------
   ADDITIVE stylesheet. Paste this BELOW casa-q-custom.css in
   Elementor → Site Settings → Custom CSS. It only adds new classes;
   it does NOT override anything in the existing file.

   All classes are prefixed .casaq-*. All rely on the CSS variables
   (--m1..--m10, --t1..--t3, --bg, --bg-cream, --ring) already defined
   at :root in casa-q-custom.css.

   Sections in this file:
     1) Page hero color variants for the four new pages
     2) Shared bits extended (glance grid, pullquote, progs-2up, CTA strip)
     3) About-specific (values, ED card, staff grid, board grid, partners)
     4) Get Help-specific (crisis card + lines, paths, safety)
     5) Get Involved-specific (hero paths row, donate amounts, donate cards,
        volunteer cards, wishlist, events, newsletter)
     6) Contact-specific (info card + form, crisis strip, routing, map)
   ========================================================================== */

/* ==========================================================================
   1) PAGE HERO VARIANTS (new pages)
   -------------------------------------------------------------------------- */
.casaq-page-hero--about {
  background: linear-gradient(160deg, #FFF2E0 0%, #F8E6F3 60%) !important;
  border-bottom: 6px solid var(--casaq-m10);
}
.casaq-page-hero--about::before {
  background:
    radial-gradient(700px 400px at 90% 30%, rgba(86,30,76,.35), transparent 60%),
    radial-gradient(500px 400px at 10% 90%, rgba(253,194,54,.40), transparent 55%);
}
.casaq-page-hero--gethelp {
  background: linear-gradient(160deg, #F2FBE9 0%, #FFF6DC 60%) !important;
  border-bottom: 6px solid var(--casaq-m1);
}
.casaq-page-hero--gethelp::before {
  background:
    radial-gradient(700px 400px at 90% 30%, rgba(71,203,127,.30), transparent 60%),
    radial-gradient(500px 400px at 10% 90%, rgba(253,194,54,.35), transparent 55%);
}
.casaq-page-hero--involved {
  background: linear-gradient(160deg, var(--casaq-m4) 0%, var(--casaq-m3) 100%) !important;
  color: #fff;
}
.casaq-page-hero--involved::before {
  content: none;
}
.casaq-page-hero--involved::after {
  content: "";
  position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(340px 340px at 90% 10%, rgba(237,98,131,.5), transparent 55%),
    radial-gradient(280px 280px at 10% 100%, rgba(202,104,179,.4), transparent 55%);
}
.casaq-page-hero--involved .elementor-heading-title,
.casaq-page-hero--involved p { color: #fff !important; }
.casaq-hero-cta p { color: #414141 !important; }
.casaq-page-hero--contact {
  background: linear-gradient(160deg, #E5F7FF 0%, #FFF6DC 100%) !important;
  border-bottom: 6px solid var(--casaq-m7);
}
.casaq-page-hero--contact::before {
  background:
    radial-gradient(600px 360px at 90% 30%, rgba(78,205,246,.35), transparent 60%),
    radial-gradient(500px 400px at 10% 90%, rgba(253,194,54,.30), transparent 55%);
}

/* Tag pill color variants for these pages */
.casaq-tag-pill--about    { color: var(--casaq-m10); }
.casaq-tag-pill--gethelp  { color: var(--casaq-m2); }
.casaq-tag-pill--involved { color: var(--casaq-m3); }
.casaq-tag-pill--contact  { color: var(--casaq-m7); }

/* Heading accent colors */
.casaq-accent--gold   { color: var(--casaq-m4); }
.casaq-accent--purple { color: var(--casaq-m10); }
.casaq-accent--green  { color: var(--casaq-m2); }
.casaq-accent--orange { color: var(--casaq-m3); }

/* Hero card variants */
.casaq-hero-card--about { border-top-color: var(--casaq-m10); }
.casaq-hero-card--contact { border-top-color: var(--casaq-m7); }

/* ==========================================================================
   2) SHARED EXTENSIONS
   -------------------------------------------------------------------------- */
/* "At a glance" stat grid (used in About hero-card) */
.casaq-glance {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.casaq-glance__cell {
  border-left: 4px solid var(--casaq-m4);
  padding-left: 14px;
}
.casaq-glance__cell:nth-child(2){ border-left-color: var(--casaq-m6); }
.casaq-glance__cell:nth-child(3){ border-left-color: var(--casaq-m7); }
.casaq-glance__cell:nth-child(4){ border-left-color: var(--casaq-m1); }
.casaq-glance__num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.8rem; font-weight: 800;
  color: var(--casaq-t1); display: block; line-height: 1.05;
}
.casaq-glance__lbl {
  font-size: .85rem; color: var(--casaq-t2);
  display: block; margin-top: 4px;
}

/* Pullquote (used in About story) */
.casaq-pullquote {
  font-family: 'Fraunces', Georgia, serif;
  font-style: italic;
  font-size: 1.4rem;
  color: var(--casaq-t1);
  border-left: 4px solid var(--casaq-m4);
  padding: 6px 0 6px 22px;
  margin: 26px 0;
  line-height: 1.35;
}

/* Mission quote (big serif paragraph) */
.casaq-mission-quote {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 2rem;
  color: var(--casaq-t1);
  line-height: 1.3;
  margin-bottom: 24px;
  max-width: 820px;
}

/* Final purple CTA strip (About) */
.casaq-cta-purple {
  background: linear-gradient(120deg, var(--casaq-m10), var(--casaq-t1)) !important;
  color: #fff !important;
  position: relative; overflow: hidden;
}
.casaq-cta-purple::before {
  content: ""; position: absolute; top: -80px; left: 84%;
  width: 300px; height: 300px; border-radius: 50%;
  background: var(--casaq-m9); opacity: .35; pointer-events: none;
}
.casaq-cta-purple::after {
  content: ""; position: absolute; bottom: -60px; left: -40px;
  width: 220px; height: 220px; border-radius: 50%;
  background: var(--casaq-m7); opacity: .25; pointer-events: none;
}
.casaq-cta-purple > .e-con-inner,
.casaq-cta-purple > .elementor-container,
.casaq-cta-purple > .e-con { position: relative; z-index: 2; }
.casaq-cta-purple .elementor-heading-title,
.casaq-cta-purple p { color: #fff !important; }

/* Green CTA strip (Get Help) */
.casaq-cta-green {
  background: linear-gradient(120deg, var(--casaq-m2), var(--casaq-m1)) !important;
  color: #fff !important;
  position: relative; overflow: hidden;
}
.casaq-cta-green::after {
  content: ""; position: absolute; top: -80px; right: -80px;
  width: 300px; height: 300px; border-radius: 50%;
  background: var(--casaq-m4); opacity: .4; pointer-events: none;
}
.casaq-cta-green > .e-con-inner,
.casaq-cta-green > .elementor-container,
.casaq-cta-green > .e-con { position: relative; z-index: 2; }
.casaq-cta-green .elementor-heading-title,
.casaq-cta-green p { color: #fff !important; }

/* ==========================================================================
   3) ABOUT-SPECIFIC
   -------------------------------------------------------------------------- */
/* 6 value cards grid (3 across at desktop) */
.casaq-values {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.casaq-value {
  background: #fff;
  border-radius: 20px !important;
  padding: 28px 24px !important;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
  border-top: 6px solid var(--casaq-m1);
  transition: transform .2s ease;
}
.casaq-value:hover { transform: translateY(-6px); }
.casaq-value--green  { border-top-color: var(--casaq-m1); }
.casaq-value--cyan   { border-top-color: var(--casaq-m7); }
.casaq-value--orange { border-top-color: var(--casaq-m3); }
.casaq-value--pink   { border-top-color: var(--casaq-m9); }
.casaq-value--gold   { border-top-color: var(--casaq-m4); }
.casaq-value--coral  { border-top-color: var(--casaq-m6); }
.casaq-value__icon {
  width: 48px; height: 48px; border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.5rem; margin-bottom: 12px;
  background: #E8FAEF; color: var(--casaq-m2);
}
.casaq-value__icon img{
    width: 50%;
}
.casaq-value--cyan   .casaq-value__icon { background: #E8F8FE; color: #106A86; }
.casaq-value--orange .casaq-value__icon { background: #FFF0E1; color: #9A4A10; }
.casaq-value--pink   .casaq-value__icon { background: #FAE9F3; color: #7E2B66; }
.casaq-value--gold   .casaq-value__icon { background: #FFF6DC; color: #8A5800; }
.casaq-value--coral  .casaq-value__icon { background: #FCEBEB; color: var(--casaq-m5); }
.casaq-value h3, .casaq-value__title {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem; margin-bottom: 8px;
  color: var(--casaq-t1);
}
.casaq-value p { font-size: .95rem; color: var(--casaq-t2); }

/* ED spotlight card */
.casaq-ed-card {
  background: #fff !important;
  border-radius: 24px !important;
  padding: 36px !important;
  box-shadow: 0 14px 36px rgba(63,21,57,.08);
  border-left: 8px solid var(--casaq-m10);
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: 32px;
  align-items: center;
  margin-bottom: 36px;
}
.casaq-ed-card__photo {
  width: 200px; height: 200px; border-radius: 24px;
  background: linear-gradient(135deg, var(--casaq-m10), var(--casaq-m9));
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-family: 'Fraunces', Georgia, serif;
  font-size: 4rem; font-weight: 800;
}
.casaq-ed-card__role {
  font-size: .8rem; letter-spacing: .15em; text-transform: uppercase;
  color: var(--casaq-m10); font-weight: 700; margin-bottom: 6px;
}
.casaq-ed-card__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.6rem; margin-bottom: 10px;
  color: var(--casaq-t1);
}
.casaq-ed-card__pronouns {
  font-size: .9rem; color: var(--casaq-t2); font-weight: 500;
}
@media (max-width: 900px) {
  .casaq-ed-card { grid-template-columns: 1fr; text-align: center; }
  .casaq-ed-card__photo { margin: 0 auto; }
}

/* Staff grid (4 across) */
.casaq-staff-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}
.casaq-person {
  background: #fff;
  border-radius: 20px;
  padding: 22px;
  box-shadow: 0 10px 26px rgba(63,21,57,.06);
  text-align: center;
}
.casaq-person__photo {
  width: 100px; height: 100px; border-radius: 50%;
  margin: 0 auto 14px;
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-family: 'Fraunces', Georgia, serif;
  font-size: 2rem; font-weight: 800;
  background: linear-gradient(135deg, var(--casaq-m7), var(--casaq-m1));
}
.casaq-person:nth-child(4n+2) .casaq-person__photo {
  background: linear-gradient(135deg, var(--casaq-m3), var(--casaq-m4));
}
.casaq-person:nth-child(4n+3) .casaq-person__photo {
  background: linear-gradient(135deg, var(--casaq-m9), var(--casaq-m6));
}
.casaq-person:nth-child(4n+4) .casaq-person__photo {
  background: linear-gradient(135deg, var(--casaq-m7), var(--casaq-m10));
}
.casaq-person h4, .casaq-person__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.05rem; margin-bottom: 4px;
  color: var(--casaq-t1);
}
.casaq-person__role {
  font-size: .85rem; color: var(--casaq-t2);
}

/* Board grid (4 across) */
.casaq-board-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}
.casaq-board-person {
  padding: 22px;
  border-radius: 18px;
  background: var(--casaq-bg-cream);
  border-left: 5px solid var(--casaq-m4);
}
.casaq-board-person:nth-child(8n+2) { border-left-color: var(--casaq-m7); }
.casaq-board-person:nth-child(8n+3) { border-left-color: var(--casaq-m9); }
.casaq-board-person:nth-child(8n+4) { border-left-color: var(--casaq-m1); }
.casaq-board-person:nth-child(8n+5) { border-left-color: var(--casaq-m3); }
.casaq-board-person:nth-child(8n+6) { border-left-color: var(--casaq-m6); }
.casaq-board-person:nth-child(8n+7) { border-left-color: var(--casaq-m10); }
.casaq-board-person:nth-child(8n+8) { border-left-color: var(--casaq-m5); }
.casaq-board-person h4, .casaq-board-person__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.02rem; margin-bottom: 3px;
  color: var(--casaq-t1);
}
.casaq-board-person__role {
  font-size: .82rem; color: var(--casaq-m10);
  font-weight: 600; text-transform: uppercase;
  letter-spacing: .1em; margin-bottom: 6px;
}
.casaq-board-person p { font-size: .88rem; color: var(--casaq-t2); }

/* Partners strip (5 across) */
.casaq-partners-strip {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
  margin-top: 24px;
}
.casaq-partner {
  aspect-ratio: 2 / 1;
  padding-left: 10px;
    padding-right: 10px;
  background: #fff;
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  color: var(--casaq-t2);
  font-weight: 600;
  letter-spacing: .1em;
  font-size: .8rem;
  text-transform: uppercase;
  box-shadow: 0 6px 16px rgba(63,21,57,.05);
}

/* About program 2-up (similar to homepage aud-card but without overlap pull-up) */
.casaq-progs2up {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
}

/* ==========================================================================
   4) GET HELP-SPECIFIC
   -------------------------------------------------------------------------- */
/* Big bleed-up red crisis card */
.casaq-crisis-card {
  background: linear-gradient(135deg, var(--casaq-m5), #A02828) !important;
  color: #fff !important;
  border-radius: 28px !important;
  padding: 44px !important;
  box-shadow: 0 30px 70px rgba(135,8,8,.25);
  margin-top: -50px;
  position: relative;
  z-index: 5;
  overflow: hidden;
}
.casaq-crisis-card img{
    width: 50%;
}
.casaq-crisis-card::before {
  content: ""; position: absolute; top: -60px; right: -60px;
  width: 240px; height: 240px; border-radius: 50%;
  background: rgba(255,255,255,.05); pointer-events: none;
}
.casaq-crisis-card .elementor-heading-title,
.casaq-crisis-card p { color: #fff !important; }
.casaq-crisis-card a { color: #fff; font-weight: 700; text-decoration: underline; }

.casaq-crisis-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  position: relative; z-index: 2;
}
.casaq-crisis-line {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 18px;
  padding: 22px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.casaq-crisis-line__name {
  font-family: 'Inter', sans-serif;
  font-size: .78rem; letter-spacing: .15em;
  text-transform: uppercase;
  color: rgba(255,255,255,.85);
  font-weight: 700; margin-bottom: 6px;
}
.casaq-crisis-line__num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.7rem; font-weight: 800;
  color: #fff; display: block; line-height: 1.05;
}
.casaq-crisis-line__desc {
  color: rgba(255,255,255,.85);
  font-size: .88rem; margin-top: 8px;
}
@media (max-width: 900px) {
  .casaq-crisis-grid { grid-template-columns: repeat(2, 1fr); }
}

/* "I'm looking for…" paths (3 across) */
.casaq-paths-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.casaq-path {
  background: #fff !important;
  border-radius: 24px !important;
  padding: 36px 30px !important;
  box-shadow: 0 14px 36px rgba(63,21,57,.08);
  display: flex; flex-direction: column;
  border-top: 8px solid var(--casaq-m7);
}
.casaq-path--teens  { border-top-color: var(--casaq-m7); }
.casaq-path--ya     { border-top-color: var(--casaq-m9); }
.casaq-path--allies { border-top-color: var(--casaq-m4); }
.casaq-path__icon {
  width: 64px; height: 64px; border-radius: 18px;
  display: flex; align-items: center; justify-content: center;
  font-size: 2rem; margin-bottom: 18px;
  background: #E8F8FE; color: var(--casaq-m7);
}
.casaq-path__icon img{
    width: 50%;
}
.casaq-path--ya .casaq-path__icon     { background: #FAE9F3; color: var(--casaq-m9); }
.casaq-path--allies .casaq-path__icon { background: #FFF6DC; color: #8A5800; }
.casaq-path__age {
  font-size: .78rem; letter-spacing: .15em;
  text-transform: uppercase; font-weight: 700;
  color: var(--casaq-t2); margin-bottom: 6px;
}
.casaq-path h3, .casaq-path__title {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.5rem; margin-bottom: 12px;
  color: var(--casaq-t1);
}
.casaq-path p { margin-bottom: 16px; }
.casaq-path ul {
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
}
.casaq-path ul li {
  padding: 8px 0;
  border-bottom: 1px solid var(--casaq-ring);
  font-size: .95rem;
  display: flex; gap: 10px; align-items: flex-start;
}
.casaq-path ul li:last-child { border-bottom: 0; }
.casaq-path ul li::before {
  content: "›"; color: var(--casaq-m7);
  font-weight: 800; flex-shrink: 0;
}
.casaq-path--ya ul li::before     { color: var(--casaq-m9); }
.casaq-path--allies ul li::before { color: #8A5800; }

/* Safety / confidentiality cards */
.casaq-safety-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
}
.casaq-safety-card {
  background: #fff !important;
  border-radius: 22px !important;
  padding: 30px !important;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
  border-left: 6px solid var(--casaq-m1);
}
.casaq-safety-card--cyan { border-left-color: var(--casaq-m7); }
.casaq-safety-card__tag {
  display: inline-block;
  background: #E8FAEF; color: var(--casaq-m2);
  padding: 4px 10px; border-radius: 999px;
  font-size: .75rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  margin-bottom: 10px;
}
.casaq-safety-card--cyan .casaq-safety-card__tag { background: #E8F8FE; color: #106A86; }

/* ==========================================================================
   5) GET INVOLVED-SPECIFIC
   -------------------------------------------------------------------------- */
/* Hero paths row (4 tiles inside orange hero) */
.casaq-paths-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-top: 14px;
}
.casaq-path-tile {
  background: rgba(255,255,255,.30);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 18px;
  padding: 18px;
  color: #fff;
  display: flex; align-items: center; gap: 12px;
  text-decoration: none;
  transition: transform .15s;
}
.casaq-path-tile:hover { transform: translateY(-2px); }
.casaq-path-tile__icon {
  width: 42px; height: 42px; border-radius: 12px;
  background: rgba(255,255,255,.28);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.3rem; flex-shrink: 0;
}
.casaq-path-tile__icon img{
    width: 50%;
}
.casaq-path-tile b {
  display: block;
  font-family: 'Fraunces', Georgia, serif;
  color: #fff; font-size: 1.05rem;
}
.casaq-path-tile span {
  font-size: .85rem; color: rgba(255,255,255,.9);
}

/* Donate CTA card (right column of hero on Get Involved) */
.casaq-hero-cta {
  background: #fff !important;
  border-radius: 28px !important;
  padding: 32px !important;
  box-shadow: 0 30px 60px rgba(63,21,57,.18);
  color: var(--casaq-t1) !important;
}
.casaq-hero-cta__title {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.4rem; font-weight: 700;
  margin-bottom: 10px; color: var(--casaq-t1);
}
.casaq-hero-cta__amounts {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 8px; margin: 14px 0;
}
.casaq-hero-cta__amounts button {
  background: var(--casaq-bg-cream);
  border: 0; color: var(--casaq-t1);
  padding: 14px 0; border-radius: 14px;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.2rem; font-weight: 700;
  cursor: pointer; transition: .15s;
}
.casaq-hero-cta__amounts button.active,
.casaq-hero-cta__amounts button:hover {
  background: var(--casaq-m4);
  transform: translateY(-2px);
}
.casaq-hero-cta__small {
  font-size: .78rem; text-align: center;
  margin-top: 10px; color: var(--casaq-t2);
}

/* Donate cards (monthly vs one-time) */
.casaq-donate-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
}
.casaq-donate-card {
  background: var(--casaq-bg) !important;
  border-radius: 24px !important;
  padding: 36px !important;
  box-shadow: 0 14px 36px rgba(63,21,57,.06);
  border-top: 8px solid var(--casaq-m1);
}
.casaq-donate-card--once { border-top-color: var(--casaq-m3); }
.casaq-donate-card__tag {
  display: inline-block;
  background: #E8FAEF; color: var(--casaq-m2);
  padding: 4px 12px; border-radius: 999px;
  font-size: .75rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  margin-bottom: 14px;
}
.casaq-donate-card--once .casaq-donate-card__tag {
  background: #FFF0E1; color: #9A4A10;
}
.casaq-donate-impact {
  background: #fff;
  border-radius: 16px;
  padding: 18px;
  margin-bottom: 18px;
}
.casaq-donate-impact__row {
  display: flex; justify-content: space-between;
  padding: 10px 0; border-bottom: 1px solid var(--casaq-ring);
  font-size: .95rem;
}
.casaq-donate-impact__row:last-child { border-bottom: 0; }
.casaq-donate-impact__row b { color: var(--casaq-t1); }

/* Sponsor marquee (purple box w/ ghost $13,630 + cost card) */
.casaq-sponsor-marquee {
  position: relative;
  overflow: hidden;
  background: linear-gradient(120deg, var(--casaq-m10), var(--casaq-t1)) !important;
  border-radius: 28px !important;
  padding: 60px !important;
  color: #fff !important;
  box-shadow: 0 30px 60px rgba(63,21,57,.2);
}
.casaq-sponsor-marquee::after {
  content: "$13,630";
  position: absolute; right: -20px; bottom: -60px;
  font-size: 16rem;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
  color: rgba(255,255,255,.06);
  line-height: 1; pointer-events: none;
  letter-spacing: -.05em;
}
.casaq-sponsor-marquee .elementor-heading-title,
.casaq-sponsor-marquee p {
  color: #fff !important;
  position: relative; z-index: 2;
}
@media (max-width: 820px) {
  .casaq-sponsor-marquee { padding: 36px !important; }
  .casaq-sponsor-marquee::after { font-size: 9rem; }
}

/* Volunteer 6-card grid */
.casaq-vol-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.casaq-vol-card {
  background: var(--casaq-bg);
  border-radius: 20px;
  padding: 28px;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
  border-top: 6px solid var(--casaq-m1);
  transition: transform .2s ease;
}
.casaq-vol-card:hover { transform: translateY(-6px); }
.casaq-vol-card--cyan   { border-top-color: var(--casaq-m7); }
.casaq-vol-card--pink   { border-top-color: var(--casaq-m9); }
.casaq-vol-card--gold   { border-top-color: var(--casaq-m4); }
.casaq-vol-card--coral  { border-top-color: var(--casaq-m6); }
.casaq-vol-card--orange { border-top-color: var(--casaq-m3); }
.casaq-vol-card__icon {
  width: 50px; height: 50px;
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem; margin-bottom: 12px;
  background: #E8FAEF; color: var(--casaq-m2);
}
.casaq-vol-card--cyan   .casaq-vol-card__icon { background: #E8F8FE; color: #106A86; }
.casaq-vol-card--pink   .casaq-vol-card__icon { background: #FAE9F3; color: #7E2B66; }
.casaq-vol-card--gold   .casaq-vol-card__icon { background: #FFF6DC; color: #8A5800; }
.casaq-vol-card--coral  .casaq-vol-card__icon { background: #FCEBEB; color: var(--casaq-m5); }
.casaq-vol-card--orange .casaq-vol-card__icon { background: #FFF0E1; color: #9A4A10; }
.casaq-vol-card__icon img{
    width: 50%;
}
.casaq-vol-card h3 {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem; margin-bottom: 8px;
  color: var(--casaq-t1);
}
.casaq-vol-card p { font-size: .95rem; margin-bottom: 14px; }
.casaq-vol-card__commit {
  display: inline-block;
  background: #fff;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: .75rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--casaq-t2);
}

/* In-kind wishlist grid */
.casaq-wish-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 12px;
}
.casaq-wish-list > div {
  background: #fff;
  padding: 14px 18px;
  border-radius: 14px;
  border-left: 5px solid var(--casaq-m1);
  font-size: .95rem;
  display: flex; justify-content: space-between; align-items: center;
}
.casaq-wish-list > div:nth-child(8n+2) { border-left-color: var(--casaq-m7); }
.casaq-wish-list > div:nth-child(8n+3) { border-left-color: var(--casaq-m9); }
.casaq-wish-list > div:nth-child(8n+4) { border-left-color: var(--casaq-m4); }
.casaq-wish-list > div:nth-child(8n+5) { border-left-color: var(--casaq-m3); }
.casaq-wish-list > div:nth-child(8n+6) { border-left-color: var(--casaq-m6); }
.casaq-wish-list > div:nth-child(8n+7) { border-left-color: var(--casaq-m2); }
.casaq-wish-list > div:nth-child(8n+8) { border-left-color: var(--casaq-m10); }
.casaq-wish-list b { color: var(--casaq-t1); }
.casaq-wish-list span {
  font-size: .78rem; color: var(--casaq-t2);
  background: var(--casaq-bg-cream);
  padding: 3px 8px; border-radius: 6px;
  font-weight: 600;
}

/* Wishlist image placeholder card */
.casaq-wish-img {
  min-height: 440px;
  border-radius: 28px !important;
  background: linear-gradient(140deg, var(--casaq-m4), var(--casaq-m3) 60%, var(--casaq-m6)) !important;
  box-shadow: 0 30px 60px rgba(63,21,57,.15);
}

/* Events grid (3 cards) */
.casaq-events-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.casaq-event-card {
  background: var(--casaq-bg);
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
}
.casaq-event-card__cover {
  height: 160px;
  background: linear-gradient(140deg, var(--casaq-m9), var(--casaq-m6));
  display: flex; align-items: flex-start;
  padding: 18px; color: #fff;
  justify-content: space-between;
}
.casaq-event-card--cyan .casaq-event-card__cover {
  background: linear-gradient(140deg, var(--casaq-m7), var(--casaq-m1));
}
.casaq-event-card--gold .casaq-event-card__cover {
  background: linear-gradient(140deg, var(--casaq-m4), var(--casaq-m3));
}
.casaq-event-card__date {
  background: rgba(255,255,255,.25);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-radius: 14px;
  padding: 10px 14px; text-align: center;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
}
.casaq-event-card__date span {
  display: block; font-size: .7rem;
  letter-spacing: .15em; text-transform: uppercase;
  font-family: 'Inter', sans-serif; font-weight: 700;
  color: rgba(255,255,255,.9);
}
.casaq-event-card__date b {
  display: block; font-size: 1.6rem; line-height: 1;
}
.casaq-event-card__type {
  align-self: flex-start;
  background: rgba(255,255,255,.3);
  color: #fff;
  padding: 5px 12px; border-radius: 999px;
  font-size: .72rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
}
.casaq-event-card__body { padding: 24px; }
.casaq-event-card__body h3 {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem; margin-bottom: 6px;
  color: var(--casaq-t1);
}
.casaq-event-card__where {
  font-size: .85rem; color: var(--casaq-t2);
  margin-bottom: 10px;
}
.casaq-event-card__body p { font-size: .92rem; margin-bottom: 14px; }

/* Newsletter gradient section */
.casaq-news-gradient {
  background: linear-gradient(160deg, var(--casaq-bg-cream), var(--casaq-bg)) !important;
}

/* ==========================================================================
   6) CONTACT-SPECIFIC
   -------------------------------------------------------------------------- */
/* Info card (phone, email, PO box, hours) */
.casaq-info-card {
  background: #fff !important;
  border-radius: 28px !important;
  padding: 36px !important;
  box-shadow: 0 20px 50px rgba(63,21,57,.10);
  border-top: 8px solid var(--casaq-m7);
  align-self: flex-start;
}
.casaq-info-row {
  display: flex; gap: 16px;
  align-items: flex-start;
  padding: 18px 0;
  border-bottom: 1px solid var(--casaq-ring);
}
.casaq-info-row:last-child { border-bottom: 0; }
.casaq-info-row__icon {
  width: 44px; height: 44px;
  border-radius: 12px;
  background: #E8F8FE;
  color: var(--casaq-m7);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem; flex-shrink: 0;
}
.casaq-info-row__lbl {
  font-family: 'Inter', sans-serif;
  font-size: .8rem; letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--casaq-t2);
  font-weight: 700; margin-bottom: 4px;
  display: block;
}
.casaq-info-row__val {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.2rem; font-weight: 700;
  color: var(--casaq-t1); line-height: 1.25;
  text-decoration: none; display: block;
}
.casaq-info-row__sub {
  font-family: 'Inter', sans-serif;
  font-size: .88rem; font-weight: 400;
  color: var(--casaq-t2); margin-top: 4px;
  display: block;
}

/* Form card wrapper */
.casaq-form-card {
  background: #fff !important;
  border-radius: 28px !important;
  padding: 40px !important;
  box-shadow: 0 20px 50px rgba(63,21,57,.10);
}
/* Style Elementor Form widget inside the form card */
.casaq-form-card .elementor-field-group input,
.casaq-form-card .elementor-field-group textarea,
.casaq-form-card .elementor-field-group select {
  padding: 14px 16px !important;
  border-radius: 14px !important;
  border: 1px solid var(--casaq-ring) !important;
  background: var(--casaq-bg) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: .95rem !important;
  color: var(--casaq-t1) !important;
}
.casaq-form-card .elementor-field-group input:focus,
.casaq-form-card .elementor-field-group textarea:focus,
.casaq-form-card .elementor-field-group select:focus {
  outline: none !important;
  border-color: var(--casaq-m7) !important;
  background: #fff !important;
  box-shadow: 0 0 0 4px rgba(78,205,246,.15) !important;
}
.casaq-form-card .elementor-field-group label {
  font-size: .82rem;
  font-weight: 600;
  color: var(--casaq-t1);
  letter-spacing: .05em;
  margin-bottom: 6px;
}
.casaq-form-card .elementor-field-group textarea {
  min-height: 140px !important;
  resize: vertical;
}
.casaq-form-card .elementor-button, .casaq-form-card .gform_button.button {
  width: 100% !important;
  justify-content: center !important;
  background: var(--casaq-m3) !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 14px 26px !important;
  font-weight: 700 !important;
  border: 0 !important;
}

/* Crisis strip (inside contact form card) */
.casaq-crisis-strip {
  background: linear-gradient(120deg, var(--casaq-m5), #A02828) !important;
  color: #fff !important;
  border-radius: 20px !important;
  padding: 22px 28px !important;
  margin-top: 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
}
.casaq-crisis-strip__left {
  display: flex; align-items: center; gap: 14px;
}
.casaq-crisis-strip__icon {
  width: 44px; height: 44px;
  background: rgba(255,255,255,.2);
  border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.4rem; flex-shrink: 0;
}
.casaq-crisis-strip__icon img{
    width: 50%;
}
.casaq-crisis-strip b {
  color: #fff;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem;
  display: block; margin-bottom: 2px;
}
.casaq-crisis-strip span {
  color: rgba(255,255,255,.9); font-size: .92rem;
}
.casaq-crisis-strip a {
  background: #fff; color: var(--casaq-m5);
  padding: 10px 20px; border-radius: 999px;
  font-size: .9rem; font-weight: 700;
  text-decoration: none;
}

/* Routing grid (6 boxes) */
.casaq-routing-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.casaq-route {
  background: var(--casaq-bg);
  border-radius: 20px;
  padding: 26px;
  border-left: 6px solid var(--casaq-m7);
}
.casaq-route:nth-child(6n+2) { border-left-color: var(--casaq-m9); }
.casaq-route:nth-child(6n+3) { border-left-color: var(--casaq-m1); }
.casaq-route:nth-child(6n+4) { border-left-color: var(--casaq-m3); }
.casaq-route:nth-child(6n+5) { border-left-color: var(--casaq-m4); }
.casaq-route:nth-child(6n+6) { border-left-color: var(--casaq-m10); }
.casaq-route__dept {
  font-size: .78rem; letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--casaq-t2); font-weight: 700;
  margin-bottom: 6px;
}
.casaq-route h3, .casaq-route__title {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem; margin-bottom: 8px;
  color: var(--casaq-t1);
}
.casaq-route p { font-size: .92rem; margin-bottom: 12px; }
.casaq-route a {
  color: var(--casaq-m10); font-weight: 600;
  font-size: .92rem; display: block;
  word-break: break-all; text-decoration: none;
}
@media (max-width: 980px) {
  .casaq-routing-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .casaq-routing-grid { grid-template-columns: 1fr; }
}

/* Map card + pin */
.casaq-map-card {
  min-height: 420px;
  border-radius: 28px !important;
  background: linear-gradient(140deg, #E5F7FF, #F8E6F3 50%, #FFF6DC) !important;
  box-shadow: 0 20px 50px rgba(63,21,57,.10);
  position: relative; overflow: hidden;
  display: flex; align-items: center; justify-content: center;
}
.casaq-map-card::before {
  content: ""; position: absolute; inset: 0;
  background:
    repeating-linear-gradient(45deg, transparent 0 20px, rgba(255,255,255,.25) 20px 21px),
    repeating-linear-gradient(-45deg, transparent 0 20px, rgba(255,255,255,.25) 20px 21px);
  pointer-events: none;
}
.casaq-map-pin {
  position: relative; z-index: 2;
  background: #fff; color: var(--casaq-t1);
  padding: 20px 26px;
  border-radius: 18px;
  box-shadow: 0 20px 40px rgba(63,21,57,.2);
  text-align: center; max-width: 280px;
}
.casaq-map-pin__marker {
  width: 50px; height: 50px;
  border-radius: 50%;
  background: var(--casaq-m10); color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem; margin: 0 auto 12px;
  box-shadow: 0 8px 20px rgba(86,30,76,.4);
}
.casaq-map-pin__marker img{
    width: 50%;
}
.casaq-map-pin b {
  display: block;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.1rem; margin-bottom: 4px;
}
.casaq-map-pin span {
  font-size: .88rem; color: var(--casaq-t2);
}

/* Office hours card */
.casaq-hours {
  background: #fff;
  border-radius: 18px;
  padding: 22px;
  margin-top: 18px;
}
.casaq-hours__title {
  font-family: 'Inter', sans-serif;
  font-size: .85rem; letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--casaq-t2); font-weight: 700;
  margin-bottom: 12px;
}
.casaq-hours-row {
  display: flex; justify-content: space-between;
  padding: 6px 0; font-size: .95rem;
}
.casaq-hours-row b { color: var(--casaq-t1); }
.casaq-hours-row .closed {
  color: var(--casaq-m5); font-weight: 600;
}

/* ==========================================================================
   MOBILE RESPONSIVE
   ========================================================================== */
@media (max-width: 980px) {
  .casaq-values { grid-template-columns: repeat(2, 1fr); }
  .casaq-staff-grid,
  .casaq-board-grid { grid-template-columns: repeat(2, 1fr); }
  .casaq-partners-strip { grid-template-columns: repeat(3, 1fr); }
  .casaq-progs2up { grid-template-columns: 1fr; }
  .casaq-paths-grid { grid-template-columns: 1fr; }
  .casaq-vol-grid { grid-template-columns: repeat(2, 1fr); }
  .casaq-events-grid { grid-template-columns: 1fr; }
  .casaq-donate-grid { grid-template-columns: 1fr; }
  .casaq-wish-list { grid-template-columns: 1fr; }
  .casaq-safety-grid { grid-template-columns: 1fr; }
  .casaq-paths-row { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .casaq-staff-grid,
  .casaq-board-grid,
  .casaq-partners-strip,
  .casaq-vol-grid { grid-template-columns: 1fr; }
  .casaq-values { grid-template-columns: 1fr; }
}


/* ==========================================================================
   GREEN STEP LIST  (.casaq-steps--green)
   Parallels .casaq-steps--teens (cyan) and .casaq-steps--ya (magenta),
   but tinted to the Get Help green family.
   -------------------------------------------------------------------------- */
.casaq-steps--green .casaq-step {
  background: #E8FAEF;            /* soft green tint, matches pattern of #F2FAFE for teens */
}
.casaq-steps--green .casaq-step__num {
  background: var(--casaq-m1);    /* main green for the numbered circle */
}

/* ==========================================================================
   CASA Q — MAIN PAGES CSS (About, Get Help, Get Involved, Contact)
   --------------------------------------------------------------------------
   ADDITIVE stylesheet. Paste this BELOW casa-q-custom.css in
   Elementor → Site Settings → Custom CSS. It only adds new classes;
   it does NOT override anything in the existing file.

   All classes are prefixed .casaq-*. All rely on the CSS variables
   (--m1..--m10, --t1..--t3, --bg, --bg-cream, --ring) already defined
   at :root in casa-q-custom.css.

   Sections in this file:
     1) Page hero color variants for the four new pages
     2) Shared bits extended (glance grid, pullquote, progs-2up, CTA strip)
     3) About-specific (values, ED card, staff grid, board grid, partners)
     4) Get Help-specific (crisis card + lines, paths, safety)
     5) Get Involved-specific (hero paths row, donate amounts, donate cards,
        volunteer cards, wishlist, events, newsletter)
     6) Contact-specific (info card + form, crisis strip, routing, map)
   ========================================================================== */

/* ==========================================================================
   1) PAGE HERO VARIANTS (new pages)
   -------------------------------------------------------------------------- */
.casaq-page-hero--about {
  background: linear-gradient(160deg, #FFF2E0 0%, #F8E6F3 60%) !important;
  border-bottom: 6px solid var(--casaq-m10);
}
.casaq-page-hero--about::before {
  background:
    radial-gradient(700px 400px at 90% 30%, rgba(86,30,76,.35), transparent 60%),
    radial-gradient(500px 400px at 10% 90%, rgba(253,194,54,.40), transparent 55%);
}
.casaq-page-hero--gethelp {
  background: linear-gradient(160deg, #F2FBE9 0%, #FFF6DC 60%) !important;
  border-bottom: 6px solid var(--casaq-m1);
}
.casaq-page-hero--gethelp::before {
  background:
    radial-gradient(700px 400px at 90% 30%, rgba(71,203,127,.30), transparent 60%),
    radial-gradient(500px 400px at 10% 90%, rgba(253,194,54,.35), transparent 55%);
}
.casaq-page-hero--involved {
  background: linear-gradient(160deg, var(--casaq-m4) 0%, var(--casaq-m3) 100%) !important;
  color: #fff;
}
.casaq-page-hero--involved::before {
  content: none;
}
.casaq-page-hero--involved::after {
  content: "";
  position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(340px 340px at 90% 10%, rgba(237,98,131,.5), transparent 55%),
    radial-gradient(280px 280px at 10% 100%, rgba(202,104,179,.4), transparent 55%);
}
.casaq-page-hero--involved .elementor-heading-title,
.casaq-page-hero--involved p { color: #fff !important; }
.casaq-page-hero--contact {
  background: linear-gradient(160deg, #E5F7FF 0%, #FFF6DC 100%) !important;
  border-bottom: 6px solid var(--casaq-m7);
}
.casaq-page-hero--contact::before {
  background:
    radial-gradient(600px 360px at 90% 30%, rgba(78,205,246,.35), transparent 60%),
    radial-gradient(500px 400px at 10% 90%, rgba(253,194,54,.30), transparent 55%);
}

/* Tag pill color variants for these pages */
.casaq-tag-pill--about    { color: var(--casaq-m10); }
.casaq-tag-pill--gethelp  { color: var(--casaq-m2); }
.casaq-tag-pill--involved { color: var(--casaq-m3); }
.casaq-tag-pill--contact  { color: var(--casaq-m7); }

/* Heading accent colors */
.casaq-accent--gold   { color: var(--casaq-m4); }
.casaq-accent--purple { color: var(--casaq-m10); }
.casaq-accent--green  { color: var(--casaq-m2); }
.casaq-accent--orange { color: var(--casaq-m3); }

/* Hero card variants */
.casaq-hero-card--about { border-top-color: var(--casaq-m10); }
.casaq-hero-card--contact { border-top-color: var(--casaq-m7); }

/* ==========================================================================
   2) SHARED EXTENSIONS
   -------------------------------------------------------------------------- */
/* "At a glance" stat grid (used in About hero-card) */
.casaq-glance {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.casaq-glance__cell {
  border-left: 4px solid var(--casaq-m4);
  padding-left: 14px;
}
.casaq-glance__cell:nth-child(2){ border-left-color: var(--casaq-m6); }
.casaq-glance__cell:nth-child(3){ border-left-color: var(--casaq-m7); }
.casaq-glance__cell:nth-child(4){ border-left-color: var(--casaq-m1); }
.casaq-glance__num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.8rem; font-weight: 800;
  color: var(--casaq-t1); display: block; line-height: 1.05;
}
.casaq-glance__lbl {
  font-size: .85rem; color: var(--casaq-t2);
  display: block; margin-top: 4px;
}

/* Pullquote (used in About story) */
.casaq-pullquote {
  font-family: 'Fraunces', Georgia, serif;
  font-style: italic;
  font-size: 1.4rem;
  color: var(--casaq-t1);
  border-left: 4px solid var(--casaq-m4);
  padding: 6px 0 6px 22px;
  margin: 26px 0;
  line-height: 1.35;
}

/* Mission quote (big serif paragraph) */
.casaq-mission-quote {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 2rem;
  color: var(--casaq-t1);
  line-height: 1.3;
  margin-bottom: 24px;
  max-width: 820px;
}

/* Final purple CTA strip (About) */
.casaq-cta-purple {
  background: linear-gradient(120deg, var(--casaq-m10), var(--casaq-t1)) !important;
  color: #fff !important;
  position: relative; overflow: hidden;
}
.casaq-cta-purple::before {
  content: ""; position: absolute; top: -80px; right: -80px;
  width: 300px; height: 300px; border-radius: 50%;
  background: var(--casaq-m9); opacity: .35; pointer-events: none;
}
.casaq-cta-purple::after {
  content: ""; position: absolute; bottom: -60px; left: -40px;
  width: 220px; height: 220px; border-radius: 50%;
  background: var(--casaq-m7); opacity: .25; pointer-events: none;
}
.casaq-cta-purple > .e-con-inner,
.casaq-cta-purple > .elementor-container,
.casaq-cta-purple > .e-con { position: relative; z-index: 2; }
.casaq-cta-purple .elementor-heading-title,
.casaq-cta-purple p { color: #fff !important; }

/* Green CTA strip (Get Help) */
.casaq-cta-green {
  background: linear-gradient(120deg, var(--casaq-m2), var(--casaq-m1)) !important;
  color: #fff !important;
  position: relative; overflow: hidden;
}
.casaq-cta-green::before {
  content: ""; position: absolute; top: -80px; right: -80px;
  width: 300px; height: 300px; border-radius: 50%;
  background: var(--casaq-m4); opacity: .4; pointer-events: none;
}
.casaq-cta-green > .e-con-inner,
.casaq-cta-green > .elementor-container,
.casaq-cta-green > .e-con { position: relative; z-index: 2; }
.casaq-cta-green .elementor-heading-title,
.casaq-cta-green p { color: #fff !important; }

/* ==========================================================================
   3) ABOUT-SPECIFIC
   -------------------------------------------------------------------------- */
/* 6 value cards grid (3 across at desktop) */
.casaq-values {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.casaq-value {
  background: #fff;
  border-radius: 20px !important;
  padding: 28px 24px !important;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
  border-top: 6px solid var(--casaq-m1);
  transition: transform .2s ease;
}
.casaq-value:hover { transform: translateY(-6px); }
.casaq-value--green  { border-top-color: var(--casaq-m1); }
.casaq-value--cyan   { border-top-color: var(--casaq-m7); }
.casaq-value--orange { border-top-color: var(--casaq-m3); }
.casaq-value--pink   { border-top-color: var(--casaq-m9); }
.casaq-value--gold   { border-top-color: var(--casaq-m4); }
.casaq-value--coral  { border-top-color: var(--casaq-m6); }
.casaq-value__icon {
  width: 48px; height: 48px; border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.5rem; margin-bottom: 12px;
  background: #E8FAEF; color: var(--casaq-m2);
}
.casaq-value--cyan   .casaq-value__icon { background: #E8F8FE; color: #106A86; }
.casaq-value--orange .casaq-value__icon { background: #FFF0E1; color: #9A4A10; }
.casaq-value--pink   .casaq-value__icon { background: #FAE9F3; color: #7E2B66; }
.casaq-value--gold   .casaq-value__icon { background: #FFF6DC; color: #8A5800; }
.casaq-value--coral  .casaq-value__icon { background: #FCEBEB; color: var(--casaq-m5); }
.casaq-value h3, .casaq-value__title {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem; margin-bottom: 8px;
  color: var(--casaq-t1);
}
.casaq-value p { font-size: .95rem; color: var(--casaq-t2); }

/* ED spotlight card */
.casaq-ed-card {
  background: #fff !important;
  border-radius: 24px !important;
  padding: 36px !important;
  box-shadow: 0 14px 36px rgba(63,21,57,.08);
  border-left: 8px solid var(--casaq-m10);
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: 32px;
  align-items: center;
  margin-bottom: 36px;
}
.casaq-ed-card__photo {
  width: 200px; height: 200px; border-radius: 24px;
  background: linear-gradient(135deg, var(--casaq-m10), var(--casaq-m9));
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-family: 'Fraunces', Georgia, serif;
  font-size: 4rem; font-weight: 800;
}
.casaq-ed-card__role {
  font-size: .8rem; letter-spacing: .15em; text-transform: uppercase;
  color: var(--casaq-m10); font-weight: 700; margin-bottom: 6px;
}
.casaq-ed-card__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.6rem; margin-bottom: 10px;
  color: var(--casaq-t1);
}
.casaq-ed-card__pronouns {
  font-size: .9rem; color: var(--casaq-t2); font-weight: 500;
}
@media (max-width: 900px) {
  .casaq-ed-card { grid-template-columns: 1fr; text-align: center; }
  .casaq-ed-card__photo { margin: 0 auto; }
}

/* Staff grid (4 across) */
.casaq-staff-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}
.casaq-person {
  background: #fff;
  border-radius: 20px;
  padding: 22px;
  box-shadow: 0 10px 26px rgba(63,21,57,.06);
  text-align: center;
}
.casaq-person__photo {
  width: 100px; height: 100px; border-radius: 50%;
  margin: 0 auto 14px;
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-family: 'Fraunces', Georgia, serif;
  font-size: 2rem; font-weight: 800;
  background: linear-gradient(135deg, var(--casaq-m7), var(--casaq-m1));
}
.casaq-person:nth-child(4n+2) .casaq-person__photo {
  background: linear-gradient(135deg, var(--casaq-m3), var(--casaq-m4));
}
.casaq-person:nth-child(4n+3) .casaq-person__photo {
  background: linear-gradient(135deg, var(--casaq-m9), var(--casaq-m6));
}
.casaq-person:nth-child(4n+4) .casaq-person__photo {
  background: linear-gradient(135deg, var(--casaq-m7), var(--casaq-m10));
}
.casaq-person h4, .casaq-person__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.05rem; margin-bottom: 4px;
  color: var(--casaq-t1);
}
.casaq-person__role {
  font-size: .85rem; color: var(--casaq-t2);
}

/* Board grid (4 across) */
.casaq-board-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}
.casaq-board-person {
  padding: 22px;
  border-radius: 18px;
  background: var(--casaq-bg-cream);
  border-left: 5px solid var(--casaq-m4);
}
.casaq-board-person:nth-child(8n+2) { border-left-color: var(--casaq-m7); }
.casaq-board-person:nth-child(8n+3) { border-left-color: var(--casaq-m9); }
.casaq-board-person:nth-child(8n+4) { border-left-color: var(--casaq-m1); }
.casaq-board-person:nth-child(8n+5) { border-left-color: var(--casaq-m3); }
.casaq-board-person:nth-child(8n+6) { border-left-color: var(--casaq-m6); }
.casaq-board-person:nth-child(8n+7) { border-left-color: var(--casaq-m10); }
.casaq-board-person:nth-child(8n+8) { border-left-color: var(--casaq-m5); }
.casaq-board-person h4, .casaq-board-person__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.02rem; margin-bottom: 3px;
  color: var(--casaq-t1);
}
.casaq-board-person__role {
  font-size: .82rem; color: var(--casaq-m10);
  font-weight: 600; text-transform: uppercase;
  letter-spacing: .1em; margin-bottom: 6px;
}
.casaq-board-person p { font-size: .88rem; color: var(--casaq-t2); }

/* Partners strip (5 across) */
.casaq-partners-strip {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
  margin-top: 24px;
}
.casaq-partner {
  aspect-ratio: 2 / 1;
  background: #fff;
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  color: var(--casaq-t2);
  font-weight: 600;
  letter-spacing: .1em;
  font-size: .8rem;
  text-transform: uppercase;
  box-shadow: 0 6px 16px rgba(63,21,57,.05);
}

/* About program 2-up (similar to homepage aud-card but without overlap pull-up) */
.casaq-progs2up {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
}

/* ==========================================================================
   4) GET HELP-SPECIFIC
   -------------------------------------------------------------------------- */
/* Big bleed-up red crisis card */
.casaq-crisis-card {
  background: linear-gradient(135deg, var(--casaq-m5), #A02828) !important;
  color: #fff !important;
  border-radius: 28px !important;
  padding: 44px !important;
  box-shadow: 0 30px 70px rgba(135,8,8,.25);
  margin-top: -50px;
  position: relative;
  z-index: 5;
  overflow: hidden;
}
.casaq-crisis-card::before {
  content: ""; position: absolute; top: -60px; right: -60px;
  width: 240px; height: 240px; border-radius: 50%;
  background: rgba(255,255,255,.05); pointer-events: none;
}
.casaq-crisis-card .elementor-heading-title,
.casaq-crisis-card p { color: #fff !important; }
.casaq-crisis-card a { color: #fff; font-weight: 700; text-decoration: underline; }

.casaq-crisis-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  position: relative; z-index: 2;
}
.casaq-crisis-line {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 18px;
  padding: 22px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.casaq-crisis-line__name {
  font-family: 'Inter', sans-serif;
  font-size: .78rem; letter-spacing: .15em;
  text-transform: uppercase;
  color: rgba(255,255,255,.85);
  font-weight: 700; margin-bottom: 6px;
}
.casaq-crisis-line__num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.7rem; font-weight: 800;
  color: #fff; display: block; line-height: 1.05;
}
.casaq-crisis-line__desc {
  color: rgba(255,255,255,.85);
  font-size: .88rem; margin-top: 8px;
}
@media (max-width: 900px) {
  .casaq-crisis-grid { grid-template-columns: repeat(2, 1fr); }
}

/* "I'm looking for…" paths (3 across) */
.casaq-paths-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.casaq-path {
  background: #fff !important;
  border-radius: 24px !important;
  padding: 36px 30px !important;
  box-shadow: 0 14px 36px rgba(63,21,57,.08);
  display: flex; flex-direction: column;
  border-top: 8px solid var(--casaq-m7);
}
.casaq-path--teens  { border-top-color: var(--casaq-m7); }
.casaq-path--ya     { border-top-color: var(--casaq-m9); }
.casaq-path--allies { border-top-color: var(--casaq-m4); }
.casaq-path__icon {
  width: 64px; height: 64px; border-radius: 18px;
  display: flex; align-items: center; justify-content: center;
  font-size: 2rem; margin-bottom: 18px;
  background: #E8F8FE; color: var(--casaq-m7);
}
.casaq-path--ya .casaq-path__icon     { background: #FAE9F3; color: var(--casaq-m9); }
.casaq-path--allies .casaq-path__icon { background: #FFF6DC; color: #8A5800; }
.casaq-path__age {
  font-size: .78rem; letter-spacing: .15em;
  text-transform: uppercase; font-weight: 700;
  color: var(--casaq-t2); margin-bottom: 6px;
}
.casaq-path h3, .casaq-path__title {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.5rem; margin-bottom: 12px;
  color: var(--casaq-t1);
}
.casaq-path p { margin-bottom: 16px; }
.casaq-path ul {
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
}
.casaq-path ul li {
  padding: 8px 0;
  border-bottom: 1px solid var(--casaq-ring);
  font-size: .95rem;
  display: flex; gap: 10px; align-items: flex-start;
}
.casaq-path ul li:last-child { border-bottom: 0; }
.casaq-path ul li::before {
  content: "›"; color: var(--casaq-m7);
  font-weight: 800; flex-shrink: 0;
}
.casaq-path--ya ul li::before     { color: var(--casaq-m9); }
.casaq-path--allies ul li::before { color: #8A5800; }

/* Safety / confidentiality cards */
.casaq-safety-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
}
.casaq-safety-card {
  background: #fff !important;
  border-radius: 22px !important;
  padding: 30px !important;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
  border-left: 6px solid var(--casaq-m1);
}
.casaq-safety-card--cyan { border-left-color: var(--casaq-m7); }
.casaq-safety-card__tag {
  display: inline-block;
  background: #E8FAEF; color: var(--casaq-m2);
  padding: 4px 10px; border-radius: 999px;
  font-size: .75rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  margin-bottom: 10px;
}
.casaq-safety-card--cyan .casaq-safety-card__tag { background: #E8F8FE; color: #106A86; }

/* ==========================================================================
   5) GET INVOLVED-SPECIFIC
   -------------------------------------------------------------------------- */
/* Hero paths row (4 tiles inside orange hero) */
.casaq-paths-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-top: 14px;
}
.casaq-path-tile {
  background: rgba(255,255,255,.18);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 18px;
  padding: 18px;
  color: #fff;
  display: flex; align-items: center; gap: 12px;
  text-decoration: none;
  transition: transform .15s;
}
.casaq-path-tile:hover { transform: translateY(-2px); }
.casaq-path-tile__icon {
  width: 42px; height: 42px; border-radius: 12px;
  background: rgba(255,255,255,.28);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.3rem; flex-shrink: 0;
}
.casaq-path-tile b {
  display: block;
  font-family: 'Fraunces', Georgia, serif;
  color: #fff; font-size: 1.05rem;
}
.casaq-path-tile span {
  font-size: .85rem; color: rgba(255,255,255,.9);
}

/* Donate CTA card (right column of hero on Get Involved) */
.casaq-hero-cta {
  background: #fff !important;
  border-radius: 28px !important;
  padding: 32px !important;
  box-shadow: 0 30px 60px rgba(63,21,57,.18);
  color: var(--casaq-t1) !important;
}
.casaq-hero-cta__title {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.4rem; font-weight: 700;
  margin-bottom: 10px; color: var(--casaq-t1);
}
.casaq-hero-cta__amounts {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 8px; margin: 14px 0;
}
.casaq-hero-cta__amounts button {
  background: var(--casaq-bg-cream);
  border: 0; color: var(--casaq-t1);
  padding: 14px 0; border-radius: 14px;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.2rem; font-weight: 700;
  cursor: pointer; transition: .15s;
}
.casaq-hero-cta__amounts button.active,
.casaq-hero-cta__amounts button:hover {
  background: var(--casaq-m4);
  transform: translateY(-2px);
}
.casaq-hero-cta__small {
  font-size: .78rem; text-align: center;
  margin-top: 10px; color: var(--casaq-t2);
}

/* Donate cards (monthly vs one-time) */
.casaq-donate-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
}
.casaq-donate-card {
  background: var(--casaq-bg) !important;
  border-radius: 24px !important;
  padding: 36px !important;
  box-shadow: 0 14px 36px rgba(63,21,57,.06);
  border-top: 8px solid var(--casaq-m1);
}
.casaq-donate-card--once { border-top-color: var(--casaq-m3); }
.casaq-donate-card__tag {
  display: inline-block;
  background: #E8FAEF; color: var(--casaq-m2);
  padding: 4px 12px; border-radius: 999px;
  font-size: .75rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  margin-bottom: 14px;
}
.casaq-donate-card--once .casaq-donate-card__tag {
  background: #FFF0E1; color: #9A4A10;
}
.casaq-donate-impact {
  background: #fff;
  border-radius: 16px;
  padding: 18px;
  margin-bottom: 18px;
}
.casaq-donate-impact__row {
  display: flex; justify-content: space-between;
  padding: 10px 0; border-bottom: 1px solid var(--casaq-ring);
  font-size: .95rem;
}
.casaq-donate-impact__row:last-child { border-bottom: 0; }
.casaq-donate-impact__row b { color: var(--casaq-t1); }

/* Sponsor marquee (purple box w/ ghost $13,630 + cost card) */
.casaq-sponsor-marquee {
  position: relative;
  overflow: hidden;
  background: linear-gradient(120deg, var(--casaq-m10), var(--casaq-t1)) !important;
  border-radius: 28px !important;
  padding: 60px !important;
  color: #fff !important;
  box-shadow: 0 30px 60px rgba(63,21,57,.2);
}
.casaq-sponsor-marquee::after {
  content: "$13,630";
  position: absolute; right: -20px; bottom: -60px;
  font-size: 16rem;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
  color: rgba(255,255,255,.06);
  line-height: 1; pointer-events: none;
  letter-spacing: -.05em;
}
.casaq-sponsor-marquee .elementor-heading-title,
.casaq-sponsor-marquee p {
  color: #fff !important;
  position: relative; z-index: 2;
}
@media (max-width: 820px) {
  .casaq-sponsor-marquee { padding: 36px !important; }
  .casaq-sponsor-marquee::after { font-size: 9rem; }
}

/* Volunteer 6-card grid */
.casaq-vol-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.casaq-vol-card {
  background: var(--casaq-bg);
  border-radius: 20px;
  padding: 28px;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
  border-top: 6px solid var(--casaq-m1);
  transition: transform .2s ease;
}
.casaq-vol-card:hover { transform: translateY(-6px); }
.casaq-vol-card--cyan   { border-top-color: var(--casaq-m7); }
.casaq-vol-card--pink   { border-top-color: var(--casaq-m9); }
.casaq-vol-card--gold   { border-top-color: var(--casaq-m4); }
.casaq-vol-card--coral  { border-top-color: var(--casaq-m6); }
.casaq-vol-card--orange { border-top-color: var(--casaq-m3); }
.casaq-vol-card__icon {
  width: 50px; height: 50px;
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem; margin-bottom: 12px;
  background: #E8FAEF; color: var(--casaq-m2);
}
.casaq-vol-card--cyan   .casaq-vol-card__icon { background: #E8F8FE; color: #106A86; }
.casaq-vol-card--pink   .casaq-vol-card__icon { background: #FAE9F3; color: #7E2B66; }
.casaq-vol-card--gold   .casaq-vol-card__icon { background: #FFF6DC; color: #8A5800; }
.casaq-vol-card--coral  .casaq-vol-card__icon { background: #FCEBEB; color: var(--casaq-m5); }
.casaq-vol-card--orange .casaq-vol-card__icon { background: #FFF0E1; color: #9A4A10; }
.casaq-vol-card h3 {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem; margin-bottom: 8px;
  color: var(--casaq-t1);
}
.casaq-vol-card p { font-size: .95rem; margin-bottom: 14px; }
.casaq-vol-card__commit {
  display: inline-block;
  background: #fff;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: .75rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--casaq-t2);
}

/* In-kind wishlist grid */
.casaq-wish-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 12px;
}
.casaq-wish-list > div {
  background: #fff;
  padding: 14px 18px;
  border-radius: 14px;
  border-left: 5px solid var(--casaq-m1);
  font-size: .95rem;
  display: flex; justify-content: space-between; align-items: center;
}
.casaq-wish-list > div:nth-child(8n+2) { border-left-color: var(--casaq-m7); }
.casaq-wish-list > div:nth-child(8n+3) { border-left-color: var(--casaq-m9); }
.casaq-wish-list > div:nth-child(8n+4) { border-left-color: var(--casaq-m4); }
.casaq-wish-list > div:nth-child(8n+5) { border-left-color: var(--casaq-m3); }
.casaq-wish-list > div:nth-child(8n+6) { border-left-color: var(--casaq-m6); }
.casaq-wish-list > div:nth-child(8n+7) { border-left-color: var(--casaq-m2); }
.casaq-wish-list > div:nth-child(8n+8) { border-left-color: var(--casaq-m10); }
.casaq-wish-list b { color: var(--casaq-t1); }
.casaq-wish-list span {
  font-size: .78rem; color: var(--casaq-t2);
  background: var(--casaq-bg-cream);
  padding: 3px 8px; border-radius: 6px;
  font-weight: 600;
}

/* Wishlist image placeholder card */
.casaq-wish-img {
  min-height: 440px;
  border-radius: 28px !important;
  background: linear-gradient(140deg, var(--casaq-m4), var(--casaq-m3) 60%, var(--casaq-m6)) !important;
  box-shadow: 0 30px 60px rgba(63,21,57,.15);
}

/* Events grid (3 cards) */
.casaq-events-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.casaq-event-card {
  background: var(--casaq-bg);
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
}
.casaq-event-card__cover {
  height: 160px;
  background: linear-gradient(140deg, var(--casaq-m9), var(--casaq-m6));
  display: flex; align-items: flex-start;
  padding: 18px; color: #fff;
  justify-content: space-between;
}
.casaq-event-card--cyan .casaq-event-card__cover {
  background: linear-gradient(140deg, var(--casaq-m7), var(--casaq-m1));
}
.casaq-event-card--gold .casaq-event-card__cover {
  background: linear-gradient(140deg, var(--casaq-m4), var(--casaq-m3));
}
.casaq-event-card__date {
  background: rgba(255,255,255,.25);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-radius: 14px;
  padding: 10px 14px; text-align: center;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
}
.casaq-event-card__date span {
  display: block; font-size: .7rem;
  letter-spacing: .15em; text-transform: uppercase;
  font-family: 'Inter', sans-serif; font-weight: 700;
  color: rgba(255,255,255,.9);
}
.casaq-event-card__date b {
  display: block; font-size: 1.6rem; line-height: 1;
}
.casaq-event-card__type {
  align-self: flex-start;
  background: rgba(255,255,255,.3);
  color: #fff;
  padding: 5px 12px; border-radius: 999px;
  font-size: .72rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
}
.casaq-event-card__body { padding: 24px; }
.casaq-event-card__body h3 {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem; margin-bottom: 6px;
  color: var(--casaq-t1);
}
.casaq-event-card__where {
  font-size: .85rem; color: var(--casaq-t2);
  margin-bottom: 10px;
}
.casaq-event-card__body p { font-size: .92rem; margin-bottom: 14px; }

/* Newsletter gradient section */
.casaq-news-gradient {
  background: linear-gradient(160deg, var(--casaq-bg-cream), var(--casaq-bg)) !important;
}

/* ==========================================================================
   6) CONTACT-SPECIFIC
   -------------------------------------------------------------------------- */
/* Info card (phone, email, PO box, hours) */
.casaq-info-card {
  background: #fff !important;
  border-radius: 28px !important;
  padding: 36px !important;
  box-shadow: 0 20px 50px rgba(63,21,57,.10);
  border-top: 8px solid var(--casaq-m7);
  align-self: flex-start;
}
.casaq-info-row {
  display: flex; gap: 16px;
  align-items: flex-start;
  padding: 18px 0;
  border-bottom: 1px solid var(--casaq-ring);
}
.casaq-info-row:last-child { border-bottom: 0; }
.casaq-info-row__icon {
  width: 44px; height: 44px;
  border-radius: 12px;
  background: #E8F8FE;
  color: var(--casaq-m7);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem; flex-shrink: 0;
}
.casaq-info-row__lbl {
  font-family: 'Inter', sans-serif;
  font-size: .8rem; letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--casaq-t2);
  font-weight: 700; margin-bottom: 4px;
  display: block;
}
.casaq-info-row__val {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.2rem; font-weight: 700;
  color: var(--casaq-t1); line-height: 1.25;
  text-decoration: none; display: block;
}
.casaq-info-row__sub {
  font-family: 'Inter', sans-serif;
  font-size: .88rem; font-weight: 400;
  color: var(--casaq-t2); margin-top: 4px;
  display: block;
}

/* Form card wrapper */
.casaq-form-card {
  background: #fff !important;
  border-radius: 28px !important;
  padding: 40px !important;
  box-shadow: 0 20px 50px rgba(63,21,57,.10);
}
/* Style Elementor Form widget inside the form card */
.casaq-form-card .elementor-field-group input,
.casaq-form-card .elementor-field-group textarea,
.casaq-form-card .elementor-field-group select {
  padding: 14px 16px !important;
  border-radius: 14px !important;
  border: 1px solid var(--casaq-ring) !important;
  background: var(--casaq-bg) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: .95rem !important;
  color: var(--casaq-t1) !important;
}
.casaq-form-card .elementor-field-group input:focus,
.casaq-form-card .elementor-field-group textarea:focus,
.casaq-form-card .elementor-field-group select:focus {
  outline: none !important;
  border-color: var(--casaq-m7) !important;
  background: #fff !important;
  box-shadow: 0 0 0 4px rgba(78,205,246,.15) !important;
}
.casaq-form-card .elementor-field-group label {
  font-size: .82rem;
  font-weight: 600;
  color: var(--casaq-t1);
  letter-spacing: .05em;
  margin-bottom: 6px;
}
.casaq-form-card .elementor-field-group textarea {
  min-height: 140px !important;
  resize: vertical;
}
.casaq-form-card .elementor-button {
  width: 100%;
  justify-content: center;
  background: var(--casaq-m3) !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 14px 26px !important;
  font-weight: 700 !important;
  border: 0 !important;
}

/* Crisis strip (inside contact form card) */
.casaq-crisis-strip {
  background: linear-gradient(120deg, var(--casaq-m5), #A02828) !important;
  color: #fff !important;
  border-radius: 20px !important;
  padding: 22px 28px !important;
  margin-top: 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
}
.casaq-crisis-strip__left {
  display: flex; align-items: center; gap: 14px;
}
.casaq-crisis-strip__icon {
  width: 44px; height: 44px;
  background: rgba(255,255,255,.2);
  border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.4rem; flex-shrink: 0;
}
.casaq-crisis-strip b {
  color: #fff;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem;
  display: block; margin-bottom: 2px;
}
.casaq-crisis-strip span {
  color: rgba(255,255,255,.9); font-size: .92rem;
}
.casaq-crisis-strip a {
  background: #fff; color: var(--casaq-m5);
  padding: 10px 20px; border-radius: 999px;
  font-size: .9rem; font-weight: 700;
  text-decoration: none;
}

/* Routing grid (6 boxes) */
.casaq-routing-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.casaq-route {
  background: var(--casaq-bg);
  border-radius: 20px;
  padding: 26px;
  border-left: 6px solid var(--casaq-m7);
}
.casaq-route:nth-child(6n+2) { border-left-color: var(--casaq-m9); }
.casaq-route:nth-child(6n+3) { border-left-color: var(--casaq-m1); }
.casaq-route:nth-child(6n+4) { border-left-color: var(--casaq-m3); }
.casaq-route:nth-child(6n+5) { border-left-color: var(--casaq-m4); }
.casaq-route:nth-child(6n+6) { border-left-color: var(--casaq-m10); }
.casaq-route__dept {
  font-size: .78rem; letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--casaq-t2); font-weight: 700;
  margin-bottom: 6px;
}
.casaq-route h3, .casaq-route__title {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem; margin-bottom: 8px;
  color: var(--casaq-t1);
}
.casaq-route p { font-size: .92rem; margin-bottom: 12px; }
.casaq-route a {
  color: var(--casaq-m10); font-weight: 600;
  font-size: .92rem; display: block;
  word-break: break-all; text-decoration: none;
}
@media (max-width: 980px) {
  .casaq-routing-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .casaq-routing-grid { grid-template-columns: 1fr; }
}

/* Map card + pin */
.casaq-map-card {
  min-height: 420px;
  border-radius: 28px !important;
  background: linear-gradient(140deg, #E5F7FF, #F8E6F3 50%, #FFF6DC) !important;
  box-shadow: 0 20px 50px rgba(63,21,57,.10);
  position: relative; overflow: hidden;
  display: flex; align-items: center; justify-content: center;
}
.casaq-map-card::before {
  content: ""; position: absolute; inset: 0;
  background:
    repeating-linear-gradient(45deg, transparent 0 20px, rgba(255,255,255,.25) 20px 21px),
    repeating-linear-gradient(-45deg, transparent 0 20px, rgba(255,255,255,.25) 20px 21px);
  pointer-events: none;
}
.casaq-map-pin {
  position: relative; z-index: 2;
  background: #fff; color: var(--casaq-t1);
  padding: 20px 26px;
  border-radius: 18px;
  box-shadow: 0 20px 40px rgba(63,21,57,.2);
  text-align: center; max-width: 280px;
}
.casaq-map-pin__marker {
  width: 50px; height: 50px;
  border-radius: 50%;
  background: var(--casaq-m10); color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem; margin: 0 auto 12px;
  box-shadow: 0 8px 20px rgba(86,30,76,.4);
}
.casaq-map-pin b {
  display: block;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.1rem; margin-bottom: 4px;
}
.casaq-map-pin span {
  font-size: .88rem; color: var(--casaq-t2);
}

/* Office hours card */
.casaq-hours {
  background: #fff;
  border-radius: 18px;
  padding: 22px;
  margin-top: 18px;
}
.casaq-hours__title {
  font-family: 'Inter', sans-serif;
  font-size: .85rem; letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--casaq-t2); font-weight: 700;
  margin-bottom: 12px;
}
.casaq-hours-row {
  display: flex; justify-content: space-between;
  padding: 6px 0; font-size: .95rem;
}
.casaq-hours-row b { color: var(--casaq-t1); }
.casaq-hours-row .closed {
  color: var(--casaq-m5); font-weight: 600;
}

/* ==========================================================================
   MOBILE RESPONSIVE
   ========================================================================== */
@media (max-width: 980px) {
  .casaq-values { grid-template-columns: repeat(2, 1fr); }
  .casaq-staff-grid,
  .casaq-board-grid { grid-template-columns: repeat(2, 1fr); }
  .casaq-partners-strip { grid-template-columns: repeat(3, 1fr); }
  .casaq-progs2up { grid-template-columns: 1fr; }
  .casaq-paths-grid { grid-template-columns: 1fr; }
  .casaq-vol-grid { grid-template-columns: repeat(2, 1fr); }
  .casaq-events-grid { grid-template-columns: 1fr; }
  .casaq-donate-grid { grid-template-columns: 1fr; }
  .casaq-wish-list { grid-template-columns: 1fr; }
  .casaq-safety-grid { grid-template-columns: 1fr; }
  .casaq-paths-row { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .casaq-staff-grid,
  .casaq-board-grid,
  .casaq-partners-strip,
  .casaq-vol-grid { grid-template-columns: 1fr; }
  .casaq-values { grid-template-columns: 1fr; }
}

/* ==========================================================================
   SECTION 7) CRISIS RESOURCES PAGE
   --------------------------------------------------------------------------
   Used by elementor-crisis-casa-q.json
   ========================================================================== */

/* Hero label pill */
.casaq-crisis-hero__label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: rgba(255,255,255,.15);
  border: 1px solid rgba(255,255,255,.25);
  padding: 8px 18px;
  border-radius: 999px;
  font-weight: 700;
  font-size: .85rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #fff;
  margin-bottom: 12px;
}

/* Top hotline cards grid (2x2) */
.casaq-lines-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
}
.casaq-line-card {
  background: #fff;
  border-radius: 24px;
  padding: 30px;
  box-shadow: 0 14px 36px rgba(135, 8, 8, .08);
  border: 2px solid #FCEBEB;
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: transform .15s;
}
.casaq-line-card:hover { transform: translateY(-3px); }
.casaq-line-card__tag {
  display: inline-block;
  background: #FCEBEB;
  color: var(--casaq-m5);
  padding: 5px 12px;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  align-self: flex-start;
}
.casaq-line-card--trevor .casaq-line-card__tag { background: #FAE9F3; color: #7E2B66; }
.casaq-line-card--trans  .casaq-line-card__tag { background: #E8F8FE; color: #106A86; }
.casaq-line-card--nm     .casaq-line-card__tag { background: #E8FAEF; color: var(--casaq-m2); }

.casaq-line-card__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.6rem;
  color: var(--casaq-t1);
  font-weight: 800;
  line-height: 1.1;
}
.casaq-line-card__num {
  display: flex;
  align-items: center;
  gap: 14px;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 2rem;
  font-weight: 800;
  color: var(--casaq-m5);
  line-height: 1;
}
.casaq-line-card--trevor .casaq-line-card__num { color: #7E2B66; }
.casaq-line-card--trans  .casaq-line-card__num { color: #106A86; }
.casaq-line-card--nm     .casaq-line-card__num { color: var(--casaq-m2); }
.casaq-line-card__num small {
  display: block;
  font-family: 'Inter', sans-serif;
  font-size: .75rem;
  font-weight: 700;
  color: var(--casaq-t2);
  letter-spacing: .1em;
  text-transform: uppercase;
  margin-top: 6px;
}
.casaq-line-card__how {
  font-size: .95rem;
  color: var(--casaq-t2);
}
.casaq-line-card__how b { color: var(--casaq-t1); }
.casaq-line-card__actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 6px;
}
.casaq-action {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 16px;
  border-radius: 999px;
  font-weight: 700;
  font-size: .88rem;
  text-decoration: none;
}
.casaq-action--call { background: var(--casaq-m5); color: #fff; }
.casaq-action--text { background: #fff; color: var(--casaq-m5); border: 1.5px solid var(--casaq-m5); }
.casaq-action--chat { background: #fff; color: var(--casaq-t1); border: 1.5px solid rgba(63,21,57,.08); }
/* Per-line color variants for the call button */
.casaq-action--trevor.casaq-action--call { background: #7E2B66; color: #fff; }
.casaq-action--trans.casaq-action--call  { background: #106A86; color: #fff; }
.casaq-action--nm.casaq-action--call     { background: var(--casaq-m2); color: #fff; }
.casaq-action--trevor.casaq-action--text { color: #7E2B66; border-color: #7E2B66; }

/* 911 / Immediate danger box */
.casaq-danger-box {
  background: var(--casaq-t1);
  color: #fff;
  border-radius: 24px;
  padding: 34px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 24px;
  align-items: center;
}
.casaq-danger-box__icon {
  width: 64px; height: 64px;
  border-radius: 18px;
  background: rgba(255,255,255,.12);
  display: flex; align-items: center; justify-content: center;
  font-size: 2rem;
  flex-shrink: 0;
}
.casaq-danger-box__num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 3rem;
  font-weight: 800;
  color: var(--casaq-m4);
  line-height: 1;
}

/* Specific-situations grid (3 across) */
.casaq-sit-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.casaq-sit-card {
  background: #fff;
  border-radius: 20px;
  padding: 24px;
  box-shadow: 0 10px 30px rgba(63, 21, 57, .06);
  border-top: 6px solid var(--casaq-m6);
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.casaq-sit-card:nth-child(2) { border-top-color: var(--casaq-m9); }
.casaq-sit-card:nth-child(3) { border-top-color: var(--casaq-m3); }
.casaq-sit-card:nth-child(4) { border-top-color: var(--casaq-m7); }
.casaq-sit-card:nth-child(5) { border-top-color: var(--casaq-m4); }
.casaq-sit-card:nth-child(6) { border-top-color: var(--casaq-m1); }
.casaq-sit-card:nth-child(7) { border-top-color: var(--casaq-m8); }
.casaq-sit-card__when {
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--casaq-t2);
}
.casaq-sit-card h3 {
  font-size: 1.15rem !important;
  color: var(--casaq-t1);
  margin-bottom: 4px;
}
.casaq-sit-card__num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.6rem;
  font-weight: 800;
  color: var(--casaq-t1);
  line-height: 1.05;
}
.casaq-sit-card__num small {
  display: block;
  font-family: 'Inter', sans-serif;
  font-size: .78rem;
  font-weight: 600;
  color: var(--casaq-t2);
  margin-top: 4px;
  letter-spacing: .04em;
  text-transform: none;
}
.casaq-sit-card__desc {
  font-size: .9rem;
  color: var(--casaq-t2);
  margin-top: auto;
  padding-top: 6px;
}

/* "What to expect" list */
.casaq-expect-list {
  background: var(--casaq-bg);
  border-radius: 24px;
  padding: 30px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.casaq-expect-item {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.casaq-expect-item__num {
  width: 32px; height: 32px;
  border-radius: 50%;
  background: var(--casaq-m10);
  color: #fff;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.casaq-expect-item h4 {
  font-family: 'Inter', sans-serif;
  font-size: .98rem;
  color: var(--casaq-t1);
  margin-bottom: 4px;
  font-weight: 700;
}
.casaq-expect-item p {
  font-size: .9rem;
}
.casaq-expect__tip {
  background: #E8F8FE;
  border-left: 4px solid var(--casaq-m7);
  padding: 18px 22px;
  border-radius: 14px;
  margin-top: 24px;
  font-size: .95rem;
}
.casaq-expect__tip b { color: var(--casaq-t1); }

/* Privacy note card */
.casaq-privacy__box {
  background: #fff;
  border-radius: 22px;
  padding: 32px;
  text-align: center;
  box-shadow: 0 10px 30px rgba(63, 21, 57, .06);
}
.casaq-privacy__icon {
  width: 60px; height: 60px;
  border-radius: 50%;
  background: #FFF6DC;
  color: #8A5800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  margin-bottom: 14px;
}

/* ==========================================================================
   SECTION 8) LOCAL RESOURCES (DIRECTORY) PAGE
   --------------------------------------------------------------------------
   Used by elementor-local-resources-casa-q.json
   ========================================================================== */

/* Hero tag pill */
.casaq-tag-pill--resources {
  background: #fff;
  color: #106A86;
}

/* Table-of-contents card in hero */
.casaq-toc-card {
  background: #fff;
  border-radius: 24px;
  padding: 28px;
  box-shadow: 0 24px 60px rgba(63, 21, 57, .10);
}
.casaq-toc-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.casaq-toc-list li a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 10px;
  font-size: .92rem;
  color: var(--casaq-t1);
  font-weight: 600;
  text-decoration: none;
}
.casaq-toc-list li a:hover { background: var(--casaq-bg); }
.casaq-toc-list li a::before {
  content: "›";
  color: var(--casaq-m7);
  font-weight: 800;
}

/* Category section heading row */
.casaq-cat__head {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 18px;
  max-width: 880px;
}
.casaq-cat__icon {
  width: 56px; height: 56px;
  border-radius: 16px;
  background: #E8F8FE;
  color: #106A86;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem;
  flex-shrink: 0;
}
.casaq-cat__head--lgbtq    .casaq-cat__icon { background: #FAE9F3; color: #7E2B66; }
.casaq-cat__head--health   .casaq-cat__icon { background: #E8FAEF; color: var(--casaq-m2); }
.casaq-cat__head--mental   .casaq-cat__icon { background: #E8F8FE; color: #106A86; }
.casaq-cat__head--housing  .casaq-cat__icon { background: #FFF6DC; color: #8A5800; }
.casaq-cat__head--food     .casaq-cat__icon { background: #FFF0E1; color: #9A4A10; }
.casaq-cat__head--legal    .casaq-cat__icon { background: #FAE9F3; color: #7E2B66; }
.casaq-cat__head--recovery .casaq-cat__icon { background: #E8FAEF; color: var(--casaq-m2); }
.casaq-cat__head--edu      .casaq-cat__icon { background: #E8F8FE; color: #106A86; }
.casaq-cat__head--indig    .casaq-cat__icon { background: #FCEBEB; color: var(--casaq-m5); }
.casaq-cat__head--sex      .casaq-cat__icon { background: #FAE9F3; color: #7E2B66; }

/* Resource cards grid (3 across) */
.casaq-res-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.casaq-res {
  background: #fff;
  border-radius: 18px;
  padding: 22px;
  box-shadow: 0 8px 24px rgba(63, 21, 57, .05);
  display: flex;
  flex-direction: column;
  gap: 8px;
}
/* On cream-bg category sections, give the card a slightly different bg so it pops less */
.casaq-section.casaq-cat[style*="background-color: rgb(255, 242, 224)"] .casaq-res,
.casaq-cat .casaq-res:where([data-bg="cream"]) { background: #FFF9F1; }

.casaq-res__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem;
  font-weight: 800;
  color: var(--casaq-t1);
  line-height: 1.15;
}
.casaq-res__what {
  font-size: .9rem;
  color: var(--casaq-t2);
  margin-bottom: 4px;
}
.casaq-res__meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: .88rem;
  margin-top: auto;
  padding-top: 6px;
  border-top: 1px solid rgba(63,21,57,.08);
}
.casaq-res__meta a { color: var(--casaq-m10); font-weight: 600; text-decoration: none; }
.casaq-res__meta span { color: var(--casaq-t2); }
.casaq-res__meta b { color: var(--casaq-t1); }
.casaq-res__badge {
  display: inline-block;
  background: #E8FAEF;
  color: var(--casaq-m2);
  padding: 3px 10px;
  border-radius: 999px;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  align-self: flex-start;
  margin-bottom: 2px;
}
.casaq-res__badge--verified   { background: #FFF6DC; color: #8A5800; }
.casaq-res__badge--unverified { background: #FCEBEB; color: var(--casaq-m5); }

/* Submit-a-resource card (purple CTA at bottom) */
.casaq-submit__card {
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 22px;
  padding: 28px;
  backdrop-filter: blur(8px);
}

/* Accent color for "missing" hero word on directory */
.casaq-accent--cyan { color: #106A86; }
.casaq-accent--gold { color: var(--casaq-m4); }

/* Mobile / tablet adjustments for the new pages */
@media (max-width: 980px) {
  .casaq-lines-grid          { grid-template-columns: 1fr; }
  .casaq-danger-box          { grid-template-columns: 1fr; text-align: center; }
  .casaq-sit-grid            { grid-template-columns: 1fr 1fr; }
  .casaq-expect-list         { grid-template-columns: 1fr; }
  .casaq-res-grid            { grid-template-columns: 1fr 1fr; }
  .casaq-toc-list            { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .casaq-sit-grid,
  .casaq-res-grid            { grid-template-columns: 1fr; }
}

/* ==========================================================================
   CASA Q — MAIN PAGES CSS (About, Get Help, Get Involved, Contact)
   --------------------------------------------------------------------------
   ADDITIVE stylesheet. Paste this BELOW casa-q-custom.css in
   Elementor → Site Settings → Custom CSS. It only adds new classes;
   it does NOT override anything in the existing file.

   All classes are prefixed .casaq-*. All rely on the CSS variables
   (--m1..--m10, --t1..--t3, --bg, --bg-cream, --ring) already defined
   at :root in casa-q-custom.css.

   Sections in this file:
     1) Page hero color variants for the four new pages
     2) Shared bits extended (glance grid, pullquote, progs-2up, CTA strip)
     3) About-specific (values, ED card, staff grid, board grid, partners)
     4) Get Help-specific (crisis card + lines, paths, safety)
     5) Get Involved-specific (hero paths row, donate amounts, donate cards,
        volunteer cards, wishlist, events, newsletter)
     6) Contact-specific (info card + form, crisis strip, routing, map)
   ========================================================================== */

/* ==========================================================================
   1) PAGE HERO VARIANTS (new pages)
   -------------------------------------------------------------------------- */
.casaq-page-hero--about {
  background: linear-gradient(160deg, #FFF2E0 0%, #F8E6F3 60%) !important;
  border-bottom: 6px solid var(--casaq-m10);
}
.casaq-page-hero--about::before {
  background:
    radial-gradient(700px 400px at 90% 30%, rgba(86,30,76,.35), transparent 60%),
    radial-gradient(500px 400px at 10% 90%, rgba(253,194,54,.40), transparent 55%);
}
.casaq-page-hero--gethelp {
  background: linear-gradient(160deg, #F2FBE9 0%, #FFF6DC 60%) !important;
  border-bottom: 6px solid var(--casaq-m1);
}
.casaq-page-hero--gethelp::before {
  background:
    radial-gradient(700px 400px at 90% 30%, rgba(71,203,127,.30), transparent 60%),
    radial-gradient(500px 400px at 10% 90%, rgba(253,194,54,.35), transparent 55%);
}
.casaq-page-hero--involved {
  background: linear-gradient(160deg, var(--casaq-m4) 0%, var(--casaq-m3) 100%) !important;
  color: #fff;
}
.casaq-page-hero--involved::before {
  content: none;
}
.casaq-page-hero--involved::after {
  content: "";
  position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(340px 340px at 90% 10%, rgba(237,98,131,.5), transparent 55%),
    radial-gradient(280px 280px at 10% 100%, rgba(202,104,179,.4), transparent 55%);
}
.casaq-page-hero--involved .elementor-heading-title,
.casaq-page-hero--involved p { color: #fff !important; }
.casaq-page-hero--contact {
  background: linear-gradient(160deg, #E5F7FF 0%, #FFF6DC 100%) !important;
  border-bottom: 6px solid var(--casaq-m7);
}
.casaq-page-hero--contact::before {
  background:
    radial-gradient(600px 360px at 90% 30%, rgba(78,205,246,.35), transparent 60%),
    radial-gradient(500px 400px at 10% 90%, rgba(253,194,54,.30), transparent 55%);
}

/* Tag pill color variants for these pages */
.casaq-tag-pill--about    { color: var(--casaq-m10); }
.casaq-tag-pill--gethelp  { color: var(--casaq-m2); }
.casaq-tag-pill--involved { color: var(--casaq-m3); }
.casaq-tag-pill--contact  { color: var(--casaq-m7); }

/* Heading accent colors */
.casaq-accent--gold   { color: var(--casaq-m4); }
.casaq-accent--purple { color: var(--casaq-m10); }
.casaq-accent--green  { color: var(--casaq-m2); }
.casaq-accent--orange { color: var(--casaq-m3); }

/* Hero card variants */
.casaq-hero-card--about { border-top-color: var(--casaq-m10); }
.casaq-hero-card--contact { border-top-color: var(--casaq-m7); }

/* ==========================================================================
   2) SHARED EXTENSIONS
   -------------------------------------------------------------------------- */
/* "At a glance" stat grid (used in About hero-card) */
.casaq-glance {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.casaq-glance__cell {
  border-left: 4px solid var(--casaq-m4);
  padding-left: 14px;
}
.casaq-glance__cell:nth-child(2){ border-left-color: var(--casaq-m6); }
.casaq-glance__cell:nth-child(3){ border-left-color: var(--casaq-m7); }
.casaq-glance__cell:nth-child(4){ border-left-color: var(--casaq-m1); }
.casaq-glance__num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.8rem; font-weight: 800;
  color: var(--casaq-t1); display: block; line-height: 1.05;
}
.casaq-glance__lbl {
  font-size: .85rem; color: var(--casaq-t2);
  display: block; margin-top: 4px;
}

/* Pullquote (used in About story) */
.casaq-pullquote {
  font-family: 'Fraunces', Georgia, serif;
  font-style: italic;
  font-size: 1.4rem;
  color: var(--casaq-t1);
  border-left: 4px solid var(--casaq-m4);
  padding: 6px 0 6px 22px;
  margin: 26px 0;
  line-height: 1.35;
}

/* Mission quote (big serif paragraph) */
.casaq-mission-quote {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 2rem;
  color: var(--casaq-t1);
  line-height: 1.3;
  margin-bottom: 24px;
  max-width: 820px;
}

/* Final purple CTA strip (About) */
.casaq-cta-purple {
  background: linear-gradient(120deg, var(--casaq-m10), var(--casaq-t1)) !important;
  color: #fff !important;
  position: relative; overflow: hidden;
}
.casaq-cta-purple::before {
  content: ""; position: absolute; top: -80px; right: -80px;
  width: 300px; height: 300px; border-radius: 50%;
  background: var(--casaq-m9); opacity: .35; pointer-events: none;
}
.casaq-cta-purple::after {
  content: ""; position: absolute; bottom: -60px; left: -40px;
  width: 220px; height: 220px; border-radius: 50%;
  background: var(--casaq-m7); opacity: .25; pointer-events: none;
}
.casaq-cta-purple > .e-con-inner,
.casaq-cta-purple > .elementor-container,
.casaq-cta-purple > .e-con { position: relative; z-index: 2; }
.casaq-cta-purple .elementor-heading-title,
.casaq-cta-purple p { color: #fff !important; }

/* Green CTA strip (Get Help) */
.casaq-cta-green {
  background: linear-gradient(120deg, var(--casaq-m2), var(--casaq-m1)) !important;
  color: #fff !important;
  position: relative; overflow: hidden;
}
.casaq-cta-green::before {
  content: ""; position: absolute; top: -80px; right: -80px;
  width: 300px; height: 300px; border-radius: 50%;
  background: var(--casaq-m4); opacity: .4; pointer-events: none;
}
.casaq-cta-green > .e-con-inner,
.casaq-cta-green > .elementor-container,
.casaq-cta-green > .e-con { position: relative; z-index: 2; }
.casaq-cta-green .elementor-heading-title,
.casaq-cta-green p { color: #fff !important; }

/* ==========================================================================
   3) ABOUT-SPECIFIC
   -------------------------------------------------------------------------- */
/* 6 value cards grid (3 across at desktop) */
.casaq-values {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.casaq-value {
  background: #fff;
  border-radius: 20px !important;
  padding: 28px 24px !important;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
  border-top: 6px solid var(--casaq-m1);
  transition: transform .2s ease;
}
.casaq-value:hover { transform: translateY(-6px); }
.casaq-value--green  { border-top-color: var(--casaq-m1); }
.casaq-value--cyan   { border-top-color: var(--casaq-m7); }
.casaq-value--orange { border-top-color: var(--casaq-m3); }
.casaq-value--pink   { border-top-color: var(--casaq-m9); }
.casaq-value--gold   { border-top-color: var(--casaq-m4); }
.casaq-value--coral  { border-top-color: var(--casaq-m6); }
.casaq-value__icon {
  width: 48px; height: 48px; border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.5rem; margin-bottom: 12px;
  background: #E8FAEF; color: var(--casaq-m2);
}
.casaq-value--cyan   .casaq-value__icon { background: #E8F8FE; color: #106A86; }
.casaq-value--orange .casaq-value__icon { background: #FFF0E1; color: #9A4A10; }
.casaq-value--pink   .casaq-value__icon { background: #FAE9F3; color: #7E2B66; }
.casaq-value--gold   .casaq-value__icon { background: #FFF6DC; color: #8A5800; }
.casaq-value--coral  .casaq-value__icon { background: #FCEBEB; color: var(--casaq-m5); }
.casaq-value h3, .casaq-value__title {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem; margin-bottom: 8px;
  color: var(--casaq-t1);
}
.casaq-value p { font-size: .95rem; color: var(--casaq-t2); }

/* ED spotlight card */
.casaq-ed-card {
  background: #fff !important;
  border-radius: 24px !important;
  padding: 36px !important;
  box-shadow: 0 14px 36px rgba(63,21,57,.08);
  border-left: 8px solid var(--casaq-m10);
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: 32px;
  align-items: center;
  margin-bottom: 36px;
}
.casaq-ed-card__photo {
  width: 200px; height: 200px; border-radius: 24px;
  background: linear-gradient(135deg, var(--casaq-m10), var(--casaq-m9));
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-family: 'Fraunces', Georgia, serif;
  font-size: 4rem; font-weight: 800;
}
.casaq-ed-card__role {
  font-size: .8rem; letter-spacing: .15em; text-transform: uppercase;
  color: var(--casaq-m10); font-weight: 700; margin-bottom: 6px;
}
.casaq-ed-card__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.6rem; margin-bottom: 10px;
  color: var(--casaq-t1);
}
.casaq-ed-card__pronouns {
  font-size: .9rem; color: var(--casaq-t2); font-weight: 500;
}
@media (max-width: 900px) {
  .casaq-ed-card { grid-template-columns: 1fr; text-align: center; }
  .casaq-ed-card__photo { margin: 0 auto; }
}

/* Staff grid (4 across) */
.casaq-staff-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}
.casaq-person {
  background: #fff;
  border-radius: 20px;
  padding: 22px;
  box-shadow: 0 10px 26px rgba(63,21,57,.06);
  text-align: center;
}
.casaq-person__photo {
  width: 100px; height: 100px; border-radius: 50%;
  margin: 0 auto 14px;
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-family: 'Fraunces', Georgia, serif;
  font-size: 2rem; font-weight: 800;
  background: linear-gradient(135deg, var(--casaq-m7), var(--casaq-m1));
}
.casaq-person:nth-child(4n+2) .casaq-person__photo {
  background: linear-gradient(135deg, var(--casaq-m3), var(--casaq-m4));
}
.casaq-person:nth-child(4n+3) .casaq-person__photo {
  background: linear-gradient(135deg, var(--casaq-m9), var(--casaq-m6));
}
.casaq-person:nth-child(4n+4) .casaq-person__photo {
  background: linear-gradient(135deg, var(--casaq-m7), var(--casaq-m10));
}
.casaq-person h4, .casaq-person__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.05rem; margin-bottom: 4px;
  color: var(--casaq-t1);
}
.casaq-person__role {
  font-size: .85rem; color: var(--casaq-t2);
}

/* Board grid (4 across) */
.casaq-board-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}
.casaq-board-person {
  padding: 22px;
  border-radius: 18px;
  background: var(--casaq-bg-cream);
  border-left: 5px solid var(--casaq-m4);
}
.casaq-board-person:nth-child(8n+2) { border-left-color: var(--casaq-m7); }
.casaq-board-person:nth-child(8n+3) { border-left-color: var(--casaq-m9); }
.casaq-board-person:nth-child(8n+4) { border-left-color: var(--casaq-m1); }
.casaq-board-person:nth-child(8n+5) { border-left-color: var(--casaq-m3); }
.casaq-board-person:nth-child(8n+6) { border-left-color: var(--casaq-m6); }
.casaq-board-person:nth-child(8n+7) { border-left-color: var(--casaq-m10); }
.casaq-board-person:nth-child(8n+8) { border-left-color: var(--casaq-m5); }
.casaq-board-person h4, .casaq-board-person__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.02rem; margin-bottom: 3px;
  color: var(--casaq-t1);
}
.casaq-board-person__role {
  font-size: .82rem; color: var(--casaq-m10);
  font-weight: 600; text-transform: uppercase;
  letter-spacing: .1em; margin-bottom: 6px;
}
.casaq-board-person p { font-size: .88rem; color: var(--casaq-t2); }

/* Partners strip (5 across) */
.casaq-partners-strip {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
  margin-top: 24px;
}
.casaq-partner {
  aspect-ratio: 2 / 1;
  background: #fff;
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  color: var(--casaq-t2);
  font-weight: 600;
  letter-spacing: .1em;
  font-size: .8rem;
  text-transform: uppercase;
  box-shadow: 0 6px 16px rgba(63,21,57,.05);
}

/* About program 2-up (similar to homepage aud-card but without overlap pull-up) */
.casaq-progs2up {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
}

/* ==========================================================================
   4) GET HELP-SPECIFIC
   -------------------------------------------------------------------------- */
/* Big bleed-up red crisis card */
.casaq-crisis-card {
  background: linear-gradient(135deg, var(--casaq-m5), #A02828) !important;
  color: #fff !important;
  border-radius: 28px !important;
  padding: 44px !important;
  box-shadow: 0 30px 70px rgba(135,8,8,.25);
  margin-top: -50px;
  position: relative;
  z-index: 5;
  overflow: hidden;
}
.casaq-crisis-card::before {
  content: ""; position: absolute; top: -60px; right: -60px;
  width: 240px; height: 240px; border-radius: 50%;
  background: rgba(255,255,255,.05); pointer-events: none;
}
.casaq-crisis-card .elementor-heading-title,
.casaq-crisis-card p { color: #fff !important; }
.casaq-crisis-card a { color: #fff; font-weight: 700; text-decoration: underline; }

.casaq-crisis-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  position: relative; z-index: 2;
}
.casaq-crisis-line {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 18px;
  padding: 22px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.casaq-crisis-line__name {
  font-family: 'Inter', sans-serif;
  font-size: .78rem; letter-spacing: .15em;
  text-transform: uppercase;
  color: rgba(255,255,255,.85);
  font-weight: 700; margin-bottom: 6px;
}
.casaq-crisis-line__num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.7rem; font-weight: 800;
  color: #fff; display: block; line-height: 1.05;
}
.casaq-crisis-line__desc {
  color: rgba(255,255,255,.85);
  font-size: .88rem; margin-top: 8px;
}
@media (max-width: 900px) {
  .casaq-crisis-grid { grid-template-columns: repeat(2, 1fr); }
}

/* "I'm looking for…" paths (3 across) */
.casaq-paths-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.casaq-path {
  background: #fff !important;
  border-radius: 24px !important;
  padding: 36px 30px !important;
  box-shadow: 0 14px 36px rgba(63,21,57,.08);
  display: flex; flex-direction: column;
  border-top: 8px solid var(--casaq-m7);
}
.casaq-path--teens  { border-top-color: var(--casaq-m7); }
.casaq-path--ya     { border-top-color: var(--casaq-m9); }
.casaq-path--allies { border-top-color: var(--casaq-m4); }
.casaq-path__icon {
  width: 64px; height: 64px; border-radius: 18px;
  display: flex; align-items: center; justify-content: center;
  font-size: 2rem; margin-bottom: 18px;
  background: #E8F8FE; color: var(--casaq-m7);
}
.casaq-path--ya .casaq-path__icon     { background: #FAE9F3; color: var(--casaq-m9); }
.casaq-path--allies .casaq-path__icon { background: #FFF6DC; color: #8A5800; }
.casaq-path__age {
  font-size: .78rem; letter-spacing: .15em;
  text-transform: uppercase; font-weight: 700;
  color: var(--casaq-t2); margin-bottom: 6px;
}
.casaq-path h3, .casaq-path__title {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.5rem; margin-bottom: 12px;
  color: var(--casaq-t1);
}
.casaq-path p { margin-bottom: 16px; }
.casaq-path ul {
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
}
.casaq-path ul li {
  padding: 8px 0;
  border-bottom: 1px solid var(--casaq-ring);
  font-size: .95rem;
  display: flex; gap: 10px; align-items: flex-start;
}
.casaq-path ul li:last-child { border-bottom: 0; }
.casaq-path ul li::before {
  content: "›"; color: var(--casaq-m7);
  font-weight: 800; flex-shrink: 0;
}
.casaq-path--ya ul li::before     { color: var(--casaq-m9); }
.casaq-path--allies ul li::before { color: #8A5800; }

/* Safety / confidentiality cards */
.casaq-safety-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
}
.casaq-safety-card {
  background: #fff !important;
  border-radius: 22px !important;
  padding: 30px !important;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
  border-left: 6px solid var(--casaq-m1);
}
.casaq-safety-card--cyan { border-left-color: var(--casaq-m7); }
.casaq-safety-card__tag {
  display: inline-block;
  background: #E8FAEF; color: var(--casaq-m2);
  padding: 4px 10px; border-radius: 999px;
  font-size: .75rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  margin-bottom: 10px;
}
.casaq-safety-card--cyan .casaq-safety-card__tag { background: #E8F8FE; color: #106A86; }

/* ==========================================================================
   5) GET INVOLVED-SPECIFIC
   -------------------------------------------------------------------------- */
/* Hero paths row (4 tiles inside orange hero) */
.casaq-paths-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-top: 14px;
}
.casaq-path-tile {
  background: rgba(255,255,255,.18);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 18px;
  padding: 18px;
  color: #fff;
  display: flex; align-items: center; gap: 12px;
  text-decoration: none;
  transition: transform .15s;
}
.casaq-path-tile:hover { transform: translateY(-2px); }
.casaq-path-tile__icon {
  width: 42px; height: 42px; border-radius: 12px;
  background: rgba(255,255,255,.28);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.3rem; flex-shrink: 0;
}
.casaq-path-tile b {
  display: block;
  font-family: 'Fraunces', Georgia, serif;
  color: #fff; font-size: 1.05rem;
}
.casaq-path-tile span {
  font-size: .85rem; color: rgba(255,255,255,.9);
}

/* Donate CTA card (right column of hero on Get Involved) */
.casaq-hero-cta {
  background: #fff !important;
  border-radius: 28px !important;
  padding: 32px !important;
  box-shadow: 0 30px 60px rgba(63,21,57,.18);
  color: var(--casaq-t1) !important;
}
.casaq-hero-cta__title {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.4rem; font-weight: 700;
  margin-bottom: 10px; color: var(--casaq-t1);
}
.casaq-hero-cta__amounts {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 8px; margin: 14px 0;
}
.casaq-hero-cta__amounts button {
  background: var(--casaq-bg-cream);
  border: 0; color: var(--casaq-t1);
  padding: 14px 0; border-radius: 14px;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.2rem; font-weight: 700;
  cursor: pointer; transition: .15s;
}
.casaq-hero-cta__amounts button.active,
.casaq-hero-cta__amounts button:hover {
  background: var(--casaq-m4);
  transform: translateY(-2px);
}
.casaq-hero-cta__small {
  font-size: .78rem; text-align: center;
  margin-top: 10px; color: var(--casaq-t2);
}

/* Donate cards (monthly vs one-time) */
.casaq-donate-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
}
.casaq-donate-card {
  background: var(--casaq-bg) !important;
  border-radius: 24px !important;
  padding: 36px !important;
  box-shadow: 0 14px 36px rgba(63,21,57,.06);
  border-top: 8px solid var(--casaq-m1);
}
.casaq-donate-card--once { border-top-color: var(--casaq-m3); }
.casaq-donate-card__tag {
  display: inline-block;
  background: #E8FAEF; color: var(--casaq-m2);
  padding: 4px 12px; border-radius: 999px;
  font-size: .75rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  margin-bottom: 14px;
}
.casaq-donate-card--once .casaq-donate-card__tag {
  background: #FFF0E1; color: #9A4A10;
}
.casaq-donate-impact {
  background: #fff;
  border-radius: 16px;
  padding: 18px;
  margin-bottom: 18px;
}
.casaq-donate-impact__row {
  display: flex; justify-content: space-between;
  padding: 10px 0; border-bottom: 1px solid var(--casaq-ring);
  font-size: .95rem;
}
.casaq-donate-impact__row:last-child { border-bottom: 0; }
.casaq-donate-impact__row b { color: var(--casaq-t1); }

/* Sponsor marquee (purple box w/ ghost $13,630 + cost card) */
.casaq-sponsor-marquee {
  position: relative;
  overflow: hidden;
  background: linear-gradient(120deg, var(--casaq-m10), var(--casaq-t1)) !important;
  border-radius: 28px !important;
  padding: 60px !important;
  color: #fff !important;
  box-shadow: 0 30px 60px rgba(63,21,57,.2);
}
.casaq-sponsor-marquee::after {
  content: "$13,630";
  position: absolute; right: -20px; bottom: -60px;
  font-size: 16rem;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
  color: rgba(255,255,255,.06);
  line-height: 1; pointer-events: none;
  letter-spacing: -.05em;
}
.casaq-sponsor-marquee .elementor-heading-title,
.casaq-sponsor-marquee p {
  color: #fff !important;
  position: relative; z-index: 2;
}
@media (max-width: 820px) {
  .casaq-sponsor-marquee { padding: 36px !important; }
  .casaq-sponsor-marquee::after { font-size: 9rem; }
}

/* Volunteer 6-card grid */
.casaq-vol-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.casaq-vol-card {
  background: var(--casaq-bg);
  border-radius: 20px;
  padding: 28px;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
  border-top: 6px solid var(--casaq-m1);
  transition: transform .2s ease;
}
.casaq-vol-card:hover { transform: translateY(-6px); }
.casaq-vol-card--cyan   { border-top-color: var(--casaq-m7); }
.casaq-vol-card--pink   { border-top-color: var(--casaq-m9); }
.casaq-vol-card--gold   { border-top-color: var(--casaq-m4); }
.casaq-vol-card--coral  { border-top-color: var(--casaq-m6); }
.casaq-vol-card--orange { border-top-color: var(--casaq-m3); }
.casaq-vol-card__icon {
  width: 50px; height: 50px;
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem; margin-bottom: 12px;
  background: #E8FAEF; color: var(--casaq-m2);
}
.casaq-vol-card--cyan   .casaq-vol-card__icon { background: #E8F8FE; color: #106A86; }
.casaq-vol-card--pink   .casaq-vol-card__icon { background: #FAE9F3; color: #7E2B66; }
.casaq-vol-card--gold   .casaq-vol-card__icon { background: #FFF6DC; color: #8A5800; }
.casaq-vol-card--coral  .casaq-vol-card__icon { background: #FCEBEB; color: var(--casaq-m5); }
.casaq-vol-card--orange .casaq-vol-card__icon { background: #FFF0E1; color: #9A4A10; }
.casaq-vol-card h3 {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem; margin-bottom: 8px;
  color: var(--casaq-t1);
}
.casaq-vol-card p { font-size: .95rem; margin-bottom: 14px; }
.casaq-vol-card__commit {
  display: inline-block;
  background: #fff;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: .75rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--casaq-t2);
}

/* In-kind wishlist grid */
.casaq-wish-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 12px;
}
.casaq-wish-list > div {
  background: #fff;
  padding: 14px 18px;
  border-radius: 14px;
  border-left: 5px solid var(--casaq-m1);
  font-size: .95rem;
  display: flex; justify-content: space-between; align-items: center;
}
.casaq-wish-list > div:nth-child(8n+2) { border-left-color: var(--casaq-m7); }
.casaq-wish-list > div:nth-child(8n+3) { border-left-color: var(--casaq-m9); }
.casaq-wish-list > div:nth-child(8n+4) { border-left-color: var(--casaq-m4); }
.casaq-wish-list > div:nth-child(8n+5) { border-left-color: var(--casaq-m3); }
.casaq-wish-list > div:nth-child(8n+6) { border-left-color: var(--casaq-m6); }
.casaq-wish-list > div:nth-child(8n+7) { border-left-color: var(--casaq-m2); }
.casaq-wish-list > div:nth-child(8n+8) { border-left-color: var(--casaq-m10); }
.casaq-wish-list b { color: var(--casaq-t1); }
.casaq-wish-list span {
  font-size: .78rem; color: var(--casaq-t2);
  background: var(--casaq-bg-cream);
  padding: 3px 8px; border-radius: 6px;
  font-weight: 600;
}

/* Wishlist image placeholder card */
.casaq-wish-img {
  min-height: 440px;
  border-radius: 28px !important;
  background: linear-gradient(140deg, var(--casaq-m4), var(--casaq-m3) 60%, var(--casaq-m6)) !important;
  box-shadow: 0 30px 60px rgba(63,21,57,.15);
}

/* Events grid (3 cards) */
.casaq-events-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.casaq-event-card {
  background: var(--casaq-bg);
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(63,21,57,.06);
}
.casaq-event-card__cover {
  height: 160px;
  background: linear-gradient(140deg, var(--casaq-m9), var(--casaq-m6));
  display: flex; align-items: flex-start;
  padding: 18px; color: #fff;
  justify-content: space-between;
}
.casaq-event-card--cyan .casaq-event-card__cover {
  background: linear-gradient(140deg, var(--casaq-m7), var(--casaq-m1));
}
.casaq-event-card--gold .casaq-event-card__cover {
  background: linear-gradient(140deg, var(--casaq-m4), var(--casaq-m3));
}
.casaq-event-card__date {
  background: rgba(255,255,255,.25);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-radius: 14px;
  padding: 10px 14px; text-align: center;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
}
.casaq-event-card__date span {
  display: block; font-size: .7rem;
  letter-spacing: .15em; text-transform: uppercase;
  font-family: 'Inter', sans-serif; font-weight: 700;
  color: rgba(255,255,255,.9);
}
.casaq-event-card__date b {
  display: block; font-size: 1.6rem; line-height: 1;
}
.casaq-event-card__type {
  align-self: flex-start;
  background: rgba(255,255,255,.3);
  color: #fff;
  padding: 5px 12px; border-radius: 999px;
  font-size: .72rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
}
.casaq-event-card__body { padding: 24px; }
.casaq-event-card__body h3 {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem; margin-bottom: 6px;
  color: var(--casaq-t1);
}
.casaq-event-card__where {
  font-size: .85rem; color: var(--casaq-t2);
  margin-bottom: 10px;
}
.casaq-event-card__body p { font-size: .92rem; margin-bottom: 14px; }

/* Newsletter gradient section */
.casaq-news-gradient {
  background: linear-gradient(160deg, var(--casaq-bg-cream), var(--casaq-bg)) !important;
}

/* ==========================================================================
   6) CONTACT-SPECIFIC
   -------------------------------------------------------------------------- */
/* Info card (phone, email, PO box, hours) */
.casaq-info-card {
  background: #fff !important;
  border-radius: 28px !important;
  padding: 36px !important;
  box-shadow: 0 20px 50px rgba(63,21,57,.10);
  border-top: 8px solid var(--casaq-m7);
  align-self: flex-start;
}
.casaq-info-row {
  display: flex; gap: 16px;
  align-items: flex-start;
  padding: 18px 0;
  border-bottom: 1px solid var(--casaq-ring);
}
.casaq-info-row:last-child { border-bottom: 0; }
.casaq-info-row__icon {
  width: 44px; height: 44px;
  border-radius: 12px;
  background: #E8F8FE;
  color: var(--casaq-m7);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem; flex-shrink: 0;
}
.casaq-info-row__lbl {
  font-family: 'Inter', sans-serif;
  font-size: .8rem; letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--casaq-t2);
  font-weight: 700; margin-bottom: 4px;
  display: block;
}
.casaq-info-row__val {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.2rem; font-weight: 700;
  color: var(--casaq-t1); line-height: 1.25;
  text-decoration: none; display: block;
}
.casaq-info-row__sub {
  font-family: 'Inter', sans-serif;
  font-size: .88rem; font-weight: 400;
  color: var(--casaq-t2); margin-top: 4px;
  display: block;
}

/* Form card wrapper */
.casaq-form-card {
  background: #fff !important;
  border-radius: 28px !important;
  padding: 40px !important;
  box-shadow: 0 20px 50px rgba(63,21,57,.10);
}
/* Style Elementor Form widget inside the form card */
.casaq-form-card .elementor-field-group input,
.casaq-form-card .elementor-field-group textarea,
.casaq-form-card .elementor-field-group select {
  padding: 14px 16px !important;
  border-radius: 14px !important;
  border: 1px solid var(--casaq-ring) !important;
  background: var(--casaq-bg) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: .95rem !important;
  color: var(--casaq-t1) !important;
}
.casaq-form-card .elementor-field-group input:focus,
.casaq-form-card .elementor-field-group textarea:focus,
.casaq-form-card .elementor-field-group select:focus {
  outline: none !important;
  border-color: var(--casaq-m7) !important;
  background: #fff !important;
  box-shadow: 0 0 0 4px rgba(78,205,246,.15) !important;
}
.casaq-form-card .elementor-field-group label {
  font-size: .82rem;
  font-weight: 600;
  color: var(--casaq-t1);
  letter-spacing: .05em;
  margin-bottom: 6px;
}
.casaq-form-card .elementor-field-group textarea {
  min-height: 140px !important;
  resize: vertical;
}
.casaq-form-card .elementor-button {
  width: 100%;
  justify-content: center;
  background: var(--casaq-m3) !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 14px 26px !important;
  font-weight: 700 !important;
  border: 0 !important;
}

/* Crisis strip (inside contact form card) */
.casaq-crisis-strip {
  background: linear-gradient(120deg, var(--casaq-m5), #A02828) !important;
  color: #fff !important;
  border-radius: 20px !important;
  padding: 22px 28px !important;
  margin-top: 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
}
.casaq-crisis-strip__left {
  display: flex; align-items: center; gap: 14px;
}
.casaq-crisis-strip__icon {
  width: 44px; height: 44px;
  background: rgba(255,255,255,.2);
  border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.4rem; flex-shrink: 0;
}
.casaq-crisis-strip b {
  color: #fff;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem;
  display: block; margin-bottom: 2px;
}
.casaq-crisis-strip span {
  color: rgba(255,255,255,.9); font-size: .92rem;
}
.casaq-crisis-strip a {
  background: #fff; color: var(--casaq-m5);
  padding: 10px 20px; border-radius: 999px;
  font-size: .9rem; font-weight: 700;
  text-decoration: none;
}

/* Routing grid (6 boxes) */
.casaq-routing-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.casaq-route {
  background: var(--casaq-bg);
  border-radius: 20px;
  padding: 26px;
  border-left: 6px solid var(--casaq-m7);
}
.casaq-route:nth-child(6n+2) { border-left-color: var(--casaq-m9); }
.casaq-route:nth-child(6n+3) { border-left-color: var(--casaq-m1); }
.casaq-route:nth-child(6n+4) { border-left-color: var(--casaq-m3); }
.casaq-route:nth-child(6n+5) { border-left-color: var(--casaq-m4); }
.casaq-route:nth-child(6n+6) { border-left-color: var(--casaq-m10); }
.casaq-route__dept {
  font-size: .78rem; letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--casaq-t2); font-weight: 700;
  margin-bottom: 6px;
}
.casaq-route h3, .casaq-route__title {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem; margin-bottom: 8px;
  color: var(--casaq-t1);
}
.casaq-route p { font-size: .92rem; margin-bottom: 12px; }
.casaq-route a {
  color: var(--casaq-m10); font-weight: 600;
  font-size: .92rem; display: block;
  word-break: break-all; text-decoration: none;
}
@media (max-width: 980px) {
  .casaq-routing-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .casaq-routing-grid { grid-template-columns: 1fr; }
}

/* Map card + pin */
.casaq-map-card {
  min-height: 420px;
  border-radius: 28px !important;
  background: linear-gradient(140deg, #E5F7FF, #F8E6F3 50%, #FFF6DC) !important;
  box-shadow: 0 20px 50px rgba(63,21,57,.10);
  position: relative; overflow: hidden;
  display: flex; align-items: center; justify-content: center;
}
.casaq-map-card::before {
  content: ""; position: absolute; inset: 0;
  background:
    repeating-linear-gradient(45deg, transparent 0 20px, rgba(255,255,255,.25) 20px 21px),
    repeating-linear-gradient(-45deg, transparent 0 20px, rgba(255,255,255,.25) 20px 21px);
  pointer-events: none;
}
.casaq-map-pin {
  position: relative; z-index: 2;
  background: #fff; color: var(--casaq-t1);
  padding: 20px 26px;
  border-radius: 18px;
  box-shadow: 0 20px 40px rgba(63,21,57,.2);
  text-align: center; max-width: 280px;
}
.casaq-map-pin__marker {
  width: 50px; height: 50px;
  border-radius: 50%;
  background: var(--casaq-m10); color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem; margin: 0 auto 12px;
  box-shadow: 0 8px 20px rgba(86,30,76,.4);
}
.casaq-map-pin b {
  display: block;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.1rem; margin-bottom: 4px;
}
.casaq-map-pin span {
  font-size: .88rem; color: var(--casaq-t2);
}

/* Office hours card */
.casaq-hours {
  background: #fff;
  border-radius: 18px;
  padding: 22px;
  margin-top: 18px;
}
.casaq-hours__title {
  font-family: 'Inter', sans-serif;
  font-size: .85rem; letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--casaq-t2); font-weight: 700;
  margin-bottom: 12px;
}
.casaq-hours-row {
  display: flex; justify-content: space-between;
  padding: 6px 0; font-size: .95rem;
}
.casaq-hours-row b { color: var(--casaq-t1); }
.casaq-hours-row .closed {
  color: var(--casaq-m5); font-weight: 600;
}

/* ==========================================================================
   MOBILE RESPONSIVE
   ========================================================================== */
@media (max-width: 980px) {
  .casaq-values { grid-template-columns: repeat(2, 1fr); }
  .casaq-staff-grid,
  .casaq-board-grid { grid-template-columns: repeat(2, 1fr); }
  .casaq-partners-strip { grid-template-columns: repeat(3, 1fr); }
  .casaq-progs2up { grid-template-columns: 1fr; }
  .casaq-paths-grid { grid-template-columns: 1fr; }
  .casaq-vol-grid { grid-template-columns: repeat(2, 1fr); }
  .casaq-events-grid { grid-template-columns: 1fr; }
  .casaq-donate-grid { grid-template-columns: 1fr; }
  .casaq-wish-list { grid-template-columns: 1fr; }
  .casaq-safety-grid { grid-template-columns: 1fr; }
  .casaq-paths-row { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .casaq-staff-grid,
  .casaq-board-grid,
  .casaq-partners-strip,
  .casaq-vol-grid { grid-template-columns: 1fr; }
  .casaq-values { grid-template-columns: 1fr; }
}

/* ==========================================================================
   SECTION 7) CRISIS RESOURCES PAGE
   --------------------------------------------------------------------------
   Used by elementor-crisis-casa-q.json
   ========================================================================== */

/* Hero label pill */
.casaq-crisis-hero__label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: rgba(255,255,255,.15);
  border: 1px solid rgba(255,255,255,.25);
  padding: 8px 18px;
  border-radius: 999px;
  font-weight: 700;
  font-size: .85rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #fff;
  margin-bottom: 12px;
}

/* Top hotline cards grid (2x2) */
.casaq-lines-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
}
.casaq-line-card {
  background: #fff;
  border-radius: 24px;
  padding: 30px;
  box-shadow: 0 14px 36px rgba(135, 8, 8, .08);
  border: 2px solid #FCEBEB;
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: transform .15s;
}
.casaq-line-card:hover { transform: translateY(-3px); }
.casaq-line-card__tag {
  display: inline-block;
  background: #FCEBEB;
  color: var(--casaq-m5);
  padding: 5px 12px;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  align-self: flex-start;
}
.casaq-line-card--trevor .casaq-line-card__tag { background: #FAE9F3; color: #7E2B66; }
.casaq-line-card--trans  .casaq-line-card__tag { background: #E8F8FE; color: #106A86; }
.casaq-line-card--nm     .casaq-line-card__tag { background: #E8FAEF; color: var(--casaq-m2); }

.casaq-line-card__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.6rem;
  color: var(--casaq-t1);
  font-weight: 800;
  line-height: 1.1;
}
.casaq-line-card__num {
  display: flex;
  align-items: center;
  gap: 14px;
  font-family: 'Fraunces', Georgia, serif;
  font-size: 2rem;
  font-weight: 800;
  color: var(--casaq-m5);
  line-height: 1;
}
.casaq-line-card--trevor .casaq-line-card__num { color: #7E2B66; }
.casaq-line-card--trans  .casaq-line-card__num { color: #106A86; }
.casaq-line-card--nm     .casaq-line-card__num { color: var(--casaq-m2); }
.casaq-line-card__num small {
  display: block;
  font-family: 'Inter', sans-serif;
  font-size: .75rem;
  font-weight: 700;
  color: var(--casaq-t2);
  letter-spacing: .1em;
  text-transform: uppercase;
  margin-top: 6px;
}
.casaq-line-card__how {
  font-size: .95rem;
  color: var(--casaq-t2);
}
.casaq-line-card__how b { color: var(--casaq-t1); }
.casaq-line-card__actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 6px;
}
.casaq-action {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 16px;
  border-radius: 999px;
  font-weight: 700;
  font-size: .88rem;
  text-decoration: none;
}
.casaq-action--call { background: var(--casaq-m5); color: #fff; }
.casaq-action--text { background: #fff; color: var(--casaq-m5); border: 1.5px solid var(--casaq-m5); }
.casaq-action--chat { background: #fff; color: var(--casaq-t1); border: 1.5px solid rgba(63,21,57,.08); }
/* Per-line color variants for the call button */
.casaq-action--trevor.casaq-action--call { background: #7E2B66; color: #fff; }
.casaq-action--trans.casaq-action--call  { background: #106A86; color: #fff; }
.casaq-action--nm.casaq-action--call     { background: var(--casaq-m2); color: #fff; }
.casaq-action--trevor.casaq-action--text { color: #7E2B66; border-color: #7E2B66; }

/* 911 / Immediate danger box */
.casaq-danger-box {
  background: var(--casaq-t1);
  color: #fff;
  border-radius: 24px;
  padding: 34px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 24px;
  align-items: center;
}
.casaq-danger-box__icon {
  width: 64px; height: 64px;
  border-radius: 18px;
  background: rgba(255,255,255,.12);
  display: flex; align-items: center; justify-content: center;
  font-size: 2rem;
  flex-shrink: 0;
}
.casaq-danger-box__num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 3rem;
  font-weight: 800;
  color: var(--casaq-m4);
  line-height: 1;
}

/* Specific-situations grid (3 across) */
.casaq-sit-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.casaq-sit-card {
  background: #fff;
  border-radius: 20px;
  padding: 24px;
  box-shadow: 0 10px 30px rgba(63, 21, 57, .06);
  border-top: 6px solid var(--casaq-m6);
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.casaq-sit-card:nth-child(2) { border-top-color: var(--casaq-m9); }
.casaq-sit-card:nth-child(3) { border-top-color: var(--casaq-m3); }
.casaq-sit-card:nth-child(4) { border-top-color: var(--casaq-m7); }
.casaq-sit-card:nth-child(5) { border-top-color: var(--casaq-m4); }
.casaq-sit-card:nth-child(6) { border-top-color: var(--casaq-m1); }
.casaq-sit-card:nth-child(7) { border-top-color: var(--casaq-m8); }
.casaq-sit-card__when {
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--casaq-t2);
}
.casaq-sit-card h3 {
  font-size: 1.15rem !important;
  color: var(--casaq-t1);
  margin-bottom: 4px;
}
.casaq-sit-card__num {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.6rem;
  font-weight: 800;
  color: var(--casaq-t1);
  line-height: 1.05;
}
.casaq-sit-card__num small {
  display: block;
  font-family: 'Inter', sans-serif;
  font-size: .78rem;
  font-weight: 600;
  color: var(--casaq-t2);
  margin-top: 4px;
  letter-spacing: .04em;
  text-transform: none;
}
.casaq-sit-card__desc {
  font-size: .9rem;
  color: var(--casaq-t2);
  margin-top: auto;
  padding-top: 6px;
}

/* "What to expect" list */
.casaq-expect-list {
  background: var(--casaq-bg);
  border-radius: 24px;
  padding: 30px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.casaq-expect-item {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.casaq-expect-item__num {
  width: 32px; height: 32px;
  border-radius: 50%;
  background: var(--casaq-m10);
  color: #fff;
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.casaq-expect-item h4 {
  font-family: 'Inter', sans-serif;
  font-size: .98rem;
  color: var(--casaq-t1);
  margin-bottom: 4px;
  font-weight: 700;
}
.casaq-expect-item p {
  font-size: .9rem;
}
.casaq-expect__tip {
  background: #E8F8FE;
  border-left: 4px solid var(--casaq-m7);
  padding: 18px 22px;
  border-radius: 14px;
  margin-top: 24px;
  font-size: .95rem;
}
.casaq-expect__tip b { color: var(--casaq-t1); }

/* Privacy note card */
.casaq-privacy__box {
  background: #fff;
  border-radius: 22px;
  padding: 32px;
  text-align: center;
  box-shadow: 0 10px 30px rgba(63, 21, 57, .06);
}
.casaq-privacy__icon {
  width: 60px; height: 60px;
  border-radius: 50%;
  background: #FFF6DC;
  color: #8A5800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  margin-bottom: 14px;
}

/* ==========================================================================
   SECTION 8) LOCAL RESOURCES (DIRECTORY) PAGE
   --------------------------------------------------------------------------
   Used by elementor-local-resources-casa-q.json
   ========================================================================== */

/* Hero tag pill */
.casaq-tag-pill--resources {
  background: #fff;
  color: #106A86;
}

/* Table-of-contents card in hero */
.casaq-toc-card {
  background: #fff;
  border-radius: 24px;
  padding: 28px;
  box-shadow: 0 24px 60px rgba(63, 21, 57, .10);
}
.casaq-toc-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.casaq-toc-list li a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 10px;
  font-size: .92rem;
  color: var(--casaq-t1);
  font-weight: 600;
  text-decoration: none;
}
.casaq-toc-list li a:hover { background: var(--casaq-bg); }
.casaq-toc-list li a::before {
  content: "›";
  color: var(--casaq-m7);
  font-weight: 800;
}

/* Category section heading row */
.casaq-cat__head {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 18px;
  max-width: 880px;
}
.casaq-cat__icon {
  width: 56px; height: 56px;
  border-radius: 16px;
  background: #E8F8FE;
  color: #106A86;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem;
  flex-shrink: 0;
}
.casaq-cat__head--lgbtq    .casaq-cat__icon { background: #FAE9F3; color: #7E2B66; }
.casaq-cat__head--health   .casaq-cat__icon { background: #E8FAEF; color: var(--casaq-m2); }
.casaq-cat__head--mental   .casaq-cat__icon { background: #E8F8FE; color: #106A86; }
.casaq-cat__head--housing  .casaq-cat__icon { background: #FFF6DC; color: #8A5800; }
.casaq-cat__head--food     .casaq-cat__icon { background: #FFF0E1; color: #9A4A10; }
.casaq-cat__head--legal    .casaq-cat__icon { background: #FAE9F3; color: #7E2B66; }
.casaq-cat__head--recovery .casaq-cat__icon { background: #E8FAEF; color: var(--casaq-m2); }
.casaq-cat__head--edu      .casaq-cat__icon { background: #E8F8FE; color: #106A86; }
.casaq-cat__head--indig    .casaq-cat__icon { background: #FCEBEB; color: var(--casaq-m5); }
.casaq-cat__head--sex      .casaq-cat__icon { background: #FAE9F3; color: #7E2B66; }

/* Resource cards grid (3 across) */
.casaq-res-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.casaq-res {
  background: #fff;
  border-radius: 18px;
  padding: 22px;
  box-shadow: 0 8px 24px rgba(63, 21, 57, .05);
  display: flex;
  flex-direction: column;
  gap: 8px;
}
/* On cream-bg category sections, give the card a slightly different bg so it pops less */
.casaq-section.casaq-cat[style*="background-color: rgb(255, 242, 224)"] .casaq-res,
.casaq-cat .casaq-res:where([data-bg="cream"]) { background: #FFF9F1; }

.casaq-res__name {
  font-family: 'Fraunces', Georgia, serif;
  font-size: 1.15rem;
  font-weight: 800;
  color: var(--casaq-t1);
  line-height: 1.15;
}
.casaq-res__what {
  font-size: .9rem;
  color: var(--casaq-t2);
  margin-bottom: 4px;
}
.casaq-res__meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: .88rem;
  margin-top: auto;
  padding-top: 6px;
  border-top: 1px solid rgba(63,21,57,.08);
}
.casaq-res__meta a { color: var(--casaq-m10); font-weight: 600; text-decoration: none; }
.casaq-res__meta span { color: var(--casaq-t2); }
.casaq-res__meta b { color: var(--casaq-t1); }
.casaq-res__badge {
  display: inline-block;
  background: #E8FAEF;
  color: var(--casaq-m2);
  padding: 3px 10px;
  border-radius: 999px;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  align-self: flex-start;
  margin-bottom: 2px;
}
.casaq-res__badge--verified   { background: #FFF6DC; color: #8A5800; }
.casaq-res__badge--unverified { background: #FCEBEB; color: var(--casaq-m5); }

/* Submit-a-resource card (purple CTA at bottom) */
.casaq-submit__card {
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 22px;
  padding: 28px;
  backdrop-filter: blur(8px);
}

/* Accent color for "missing" hero word on directory */
.casaq-accent--cyan { color: #106A86; }
.casaq-accent--gold { color: var(--casaq-m4); }

/* Mobile / tablet adjustments for the new pages */
@media (max-width: 980px) {
  .casaq-lines-grid          { grid-template-columns: 1fr; }
  .casaq-danger-box          { grid-template-columns: 1fr; text-align: center; }
  .casaq-sit-grid            { grid-template-columns: 1fr 1fr; }
  .casaq-expect-list         { grid-template-columns: 1fr; }
  .casaq-res-grid            { grid-template-columns: 1fr 1fr; }
  .casaq-toc-list            { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .casaq-sit-grid,
  .casaq-res-grid            { grid-template-columns: 1fr; }
}

/* ==========================================================================
   SECTION 9) EVENTS PAGE HERO (drops above calendar widget)
   --------------------------------------------------------------------------
   Used by elementor-events-hero-casa-q.json
   ========================================================================== */

/* Hero tag pill */
.casaq-tag-pill--events {
  background: #fff;
  color: var(--casaq-m6);
}

/* Light variant of the breadcrumb for use on dark hero backgrounds */
.casaq-crumb--light,
.casaq-crumb--light a,
.casaq-crumb--light span {
  color: rgba(255,255,255,.92);
}
.casaq-crumb--light a {
  font-weight: 600;
  text-decoration: underline;
  color: #fff;
}

/* Light ghost button for use on the colored events hero */
.casaq-btn--ghost-light .elementor-button {
  background: rgba(255,255,255,.18) !important;
  background-color: rgba(255,255,255,.18) !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  border-radius: 999px !important;
  padding: 12px 24px !important;
  font-weight: 700 !important;
  transition: transform .15s !important;
}
.casaq-btn--ghost-light .elementor-button:hover {
  background: rgba(255,255,255,.28) !important;
  background-color: rgba(255,255,255,.28) !important;
  color: #fff !important;
  transform: translateY(-2px);
}

/* Stats row under hero CTAs */
.casaq-events-hero__stats {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
  margin-top: 30px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,.22);
}
.casaq-events-hero__stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.casaq-events-hero__stat-num {
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
  font-size: 1.7rem;
  color: #fff;
  line-height: 1;
}
.casaq-events-hero__stat-lbl {
  font-size: .78rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: rgba(255,255,255,.85);
  font-weight: 700;
}

/* "Next up" feature card on the right side of the hero */
.casaq-next-card {
  background: #fff;
  border-radius: 28px;
  padding: 30px;
  box-shadow: 0 30px 60px rgba(63, 21, 57, .22);
  color: var(--casaq-t1);
  position: relative;
  overflow: hidden;
}
.casaq-next-card::after {
  content: "";
  position: absolute;
  top: -30px;
  right: -30px;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: var(--casaq-m4);
  opacity: .18;
}
.casaq-next-card__label {
  display: inline-block;
  background: var(--casaq-bg-cream);
  color: var(--casaq-m3);
  padding: 5px 12px;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: 14px;
  position: relative;
  z-index: 1;
}
.casaq-next-card__title {
  font-family: 'Fraunces', Georgia, serif;
  font-weight: 800;
  font-size: 1.85rem;
  color: var(--casaq-t1);
  margin-bottom: 8px;
  position: relative;
  z-index: 1;
  line-height: 1.1;
}
.casaq-next-card__when {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 18px 0;
  position: relative;
  z-index: 1;
}
.casaq-next-card__date {
  background: linear-gradient(140deg, var(--casaq-m6), var(--casaq-m9));
  color: #fff;
  border-radius: 16px;
  padding: 14px 18px;
  text-align: center;
  font-family: 'Fraunces', Georgia, serif;
  flex-shrink: 0;
  min-width: 84px;
}
.casaq-next-card__date span {
  display: block;
  font-size: .7rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  color: rgba(255,255,255,.9);
}
.casaq-next-card__date b {
  display: block;
  font-size: 1.9rem;
  line-height: 1;
  margin-top: 2px;
}
.casaq-next-card__time {
  font-size: .95rem;
  color: var(--casaq-t2);
}
.casaq-next-card__time b {
  display: block;
  color: var(--casaq-t1);
  font-size: 1.02rem;
  margin-bottom: 2px;
}
.casaq-next-card__desc {
  font-size: .95rem;
  color: var(--casaq-t2);
  margin-bottom: 16px;
  position: relative;
  z-index: 1;
}
.casaq-next-card__actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
}
/* Plain-anchor buttons inside the next-card (so we don't need Elementor button widgets here) */
.casaq-action-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 22px;
  border-radius: 999px;
  font-weight: 700;
  font-size: .92rem;
  text-decoration: none;
  transition: transform .15s;
}
.casaq-action-btn:hover { transform: translateY(-2px); }
.casaq-action-btn--purple {
  background: var(--casaq-m10);
  color: #fff;
  box-shadow: 0 6px 0 rgba(86, 30, 76, .25);
}
.casaq-action-btn--white {
  background: #fff;
  color: var(--casaq-t1);
  border: 1.5px solid rgba(63,21,57,.10);
}

@media (max-width: 980px) {
  .casaq-events-hero__stats { gap: 18px; }
}

/* ==========================================================================
   SECTION 10) LEGAL / LONG-FORM PAGES (Accessibility, Privacy)
   --------------------------------------------------------------------------
   Used by elementor-accessibility-casa-q.json (and reusable for the
   Privacy Policy page if you build it the same way).
   ========================================================================== */

/* Section headings — keep H2 sizes a little smaller on long-form pages */
.casaq-section-legal h2 {
  font-family: 'Fraunces', Georgia, serif !important;
  font-weight: 800 !important;
  color: var(--casaq-t1) !important;
  font-size: 1.85rem !important;
  margin-bottom: 8px !important;
  line-height: 1.15 !important;
}

/* Bullet list styling for accessibility / privacy bodies */
.casaq-legal-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.casaq-legal-list li {
  position: relative;
  padding: 10px 0 10px 30px;
  border-bottom: 1px solid rgba(63,21,57,.06);
  font-size: 1rem;
  line-height: 1.55;
}
.casaq-legal-list li:last-child {
  border-bottom: 0;
}
.casaq-legal-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 14px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--casaq-m7);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: .75rem;
}
.casaq-legal-list li b {
  color: var(--casaq-t1);
}
.casaq-legal-list li a {
  color: var(--casaq-m10);
  font-weight: 600;
  text-decoration: underline;
}

/* Callout box (used for contact-info and standalone notes) */
.casaq-legal-callout {
  background: var(--casaq-bg-cream);
  border-left: 5px solid var(--casaq-m7);
  border-radius: 14px;
  padding: 22px 26px;
  margin: 8px 0;
}
.casaq-legal-callout p {
  margin-bottom: 6px;
  font-size: 1rem;
}
.casaq-legal-callout a {
  color: var(--casaq-m10);
  font-weight: 600;
  text-decoration: underline;
}

/* "A note for young people" highlight block — purple, prominent */
.casaq-legal-youth-note {
  background: linear-gradient(135deg, var(--casaq-m10) 0%, var(--casaq-t1) 100%);
  color: #fff;
  border-radius: 22px;
  padding: 32px;
  box-shadow: 0 20px 50px rgba(63, 21, 57, .18);
  margin: 16px 0;
}
.casaq-legal-youth-note__label {
  display: inline-block;
  background: var(--casaq-m4);
  color: var(--casaq-t1);
  padding: 5px 14px;
  border-radius: 999px;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: 14px;
}
.casaq-legal-youth-note__crisis {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.20);
  border-radius: 14px;
  padding: 16px 18px;
  margin-top: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: .95rem;
}
.casaq-legal-youth-note__crisis span {
  color: rgba(255,255,255,.92);
}

/* On mobile, slightly tighten paddings */
@media (max-width: 640px) {
  .casaq-legal-youth-note { padding: 24px; }
  .casaq-legal-callout    { padding: 18px 20px; }
  .casaq-section-legal h2 { font-size: 1.6rem !important; }
}/* End custom CSS */