/* =============================================================================
   MAGISA LAW â€” Appearance â†’ Customize â†’ Additional CSS (FULL MERGED FILE)
   FINAL 2026-10-29 â€” v3 spacing + inner-title hide + UserWay mobile offset.
   Owner-approved. Paste into Appearance â†’ Customize â†’ Additional CSS.
   KEEP everything below the "PRESERVED" marker from the live site; do not wipe
   Customizer CSS. New homepage + shared practice styles use .ml-* / .brand-sc /
   .ml-faq so other pages are not broken.
   ============================================================================= */

/* ---------- PRESERVED from live site (do not remove) ---------- */
/* GeneratePress Site CSS */ /* mobile header spacing */

.mobile-header-navigation {
	padding: 5px;
	box-sizing: border-box;
}

/* container drop shadows */

.object-shadow {
box-shadow: 0px 0px 10px rgba(20, 20, 20, 0.1);
}
 /* End GeneratePress Site CSS */
/* Style the submenu container */
.two-column-submenu ul.sub-menu {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* Two columns */
    gap: 3px; /* Space between columns */
    padding: 3px; /* Adjust spacing */
    background-color: #; /* Background color for submenu */
    border: 1px solid #ddd; /* Optional border */
    width: 600px; /* Adjust as needed */
}

/* Style submenu items */
.two-column-submenu ul.sub-menu li {
    list-style: none;
    padding: 2px;
}

/* Optional: Adjust hover effects */
.two-column-submenu ul.sub-menu li a {
    color: #333;
    text-decoration: none;
}

.two-column-submenu ul.sub-menu li a:hover {
    color: #0073aa; /* WordPress blue */
    text-decoration: underline;
}
.wp-block-table {
    border: none;
}
.wp-block-table table,
.wp-block-table th,
.wp-block-table td {
    border: none !important;
}

/* ---------- NEW: design tokens + shared (homepage + live practice pages) ---------- */
:root {
  --ml-green: #545746;          /* brand olive (header / body) */
  --ml-green-deep: #3a3d30;     /* darkened olive (was teal #12291b) */
  --ml-green-ink: #1f2118;      /* deepest olive (was #001406) */
  --ml-green-mid: #6b6e58;      /* mid olive for accents on light (was teal #2c5a4f) */
  --ml-gold: #cdaf73;
  --ml-gold-dark: #9C8B3A;
  --ml-gold-link: #e8d4a0;      /* AA on olive body (~5.1:1) */
  --ml-cream: #f7f5ef;
  --ml-cream-2: #f0ede4;
  --ml-white: #ffffff;
  --ml-ink: #1a1a14;
  --ml-ink-soft: #3d3f34;
  --ml-muted: #6b6e62;
  --ml-line: rgba(84, 87, 70, 0.12);
  --ml-max: 1140px;
  --ml-radius: 14px;
  --ml-shadow: 0 12px 40px rgba(31, 33, 24, 0.08);
  --ml-shadow-soft: 0 4px 18px rgba(31, 33, 24, 0.06);
  /* v3 spacing scale */
  --ml-space-section: 5rem;       /* 80px desktop section Y */
  --ml-space-section-sm: 3.25rem; /* 52px mobile section Y */
  --ml-space-hero-y: 4.75rem;     /* ~76px hero Y */
  --ml-space-trust-y: 1.35rem;    /* ~22px trust bar */
  --ml-space-head-mb: 2rem;       /* section head â†’ content */
}

/* Brand small-caps â€” used sitewide in body copy (incl. 3 live practice pages) */
.brand-sc {
  font-variant: small-caps;
  text-transform: lowercase;
  letter-spacing: 0.04em;
  font-weight: 700;
  font-size: 1.15em;
}

/* Shared heading/button polish â€” dark olive headings only on LIGHT surfaces
   (practice pages sit on olive body with gold theme text; do not force dark green). */
.ml-section h2,
.ml-section .gb-headline,
.ml-card h3,
.ml-card .wp-block-heading,
.gb-headline.ml-hero-form-title {
  font-family: "Playfair Display", var(--wp--preset--font-family--playfair-display, Georgia), serif;
  color: var(--ml-green-deep);
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.22;
}
.ml-section h3,
.ml-card h3,
.ml-card .wp-block-heading {
  font-family: var(--gp-font--comfortaa, "Comfortaa", system-ui, sans-serif);
  font-weight: 700;
  color: var(--ml-ink);
  font-size: 1.05rem;
}
/* Practice pages: body is olive #545746 â€” use light gold links (AA).
   Pre-change CSS had no .entry-content a override; teal --ml-green-mid caused the clash. */
.entry-content a {
  color: var(--ml-gold-link);
}
.entry-content a:hover,
.entry-content a:focus {
  color: #ffffff;
}
/* Homepage / light surfaces: olive links on white/cream */
.ml-section a,
.ml-trust-bar a,
.ml-steps-light a,
.ml-intake-cta a,
.ml-hero-form a,
.ml-card a,
.ml-faq a,
.ml-about-grid a,
.ml-why-grid a,
.ml-partner-card a {
  color: var(--ml-green);
}
.ml-section a:hover,
.ml-trust-bar a:hover,
.ml-steps-light a:hover,
.ml-intake-cta a:hover,
.ml-hero-form a:hover,
.ml-card a:hover,
.ml-faq a:hover,
.ml-about-grid a:hover,
.ml-why-grid a:hover,
.ml-partner-card a:hover {
  color: var(--ml-gold-dark);
}

/* Shared FAQ accordion look (details on home; h3+p FAQs on practice pages stay readable) */
.ml-faq .ml-faq-item,
.ml-faq details,
.entry-content details {
  background: var(--ml-white);
  border: 1px solid var(--ml-line);
  border-radius: 12px;
  margin-bottom: 0.7rem;
  box-shadow: var(--ml-shadow-soft);
  overflow: hidden;
}
.ml-faq summary,
.entry-content details > summary {
  cursor: pointer;
  list-style: none;
  padding: 1.1rem 1.25rem;
  font-weight: 700;
  color: var(--ml-ink);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  font-size: 0.98rem;
}
.ml-faq summary::-webkit-details-marker,
.entry-content details > summary::-webkit-details-marker { display: none; }
.ml-faq summary::after,
.entry-content details > summary::after {
  content: "+";
  color: var(--ml-gold-dark);
  font-size: 1.35rem;
  font-weight: 400;
  flex-shrink: 0;
}
.ml-faq details[open] > summary::after,
.entry-content details[open] > summary::after { content: "â€“"; }
.ml-faq details[open] > summary,
.entry-content details[open] > summary { border-bottom: 1px solid var(--ml-line); }
.ml-faq details > *:not(summary),
.entry-content details > *:not(summary) {
  padding: 0.9rem 1.25rem 1.2rem;
  color: var(--ml-muted);
}
.ml-faq details p,
.entry-content details p { margin: 0; }

/* Shared button system */
.ml-btn .wp-block-button__link,
a.ml-btn,
.wp-block-button.ml-btn .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  border-radius: 999px !important;
  padding: 0.85rem 1.5rem !important;
  font-weight: 700 !important;
  font-family: var(--gp-font--comfortaa, "Comfortaa", system-ui, sans-serif);
  font-size: 0.92rem !important;
  border: 1.5px solid transparent !important;
  text-decoration: none !important;
  transition: 0.18s ease;
  line-height: 1.3;
}
.ml-btn-gold .wp-block-button__link,
.wp-block-button.ml-btn-gold .wp-block-button__link {
  background: var(--ml-gold) !important;
  color: var(--ml-green-deep) !important;
  border-color: var(--ml-gold) !important;
}
.ml-btn-gold .wp-block-button__link:hover {
  background: #d9bf88 !important;
  color: var(--ml-green-ink) !important;
}
.ml-btn-ghost .wp-block-button__link,
.wp-block-button.ml-btn-ghost .wp-block-button__link {
  background: transparent !important;
  border-color: rgba(205,175,115,0.75) !important;
  color: #fff !important;
}
.ml-btn-ghost .wp-block-button__link:hover {
  background: rgba(205,175,115,0.18) !important;
  color: #fff !important;
}
.ml-btn-outline .wp-block-button__link,
.wp-block-button.ml-btn-outline .wp-block-button__link {
  background: transparent !important;
  border-color: var(--ml-green-deep) !important;
  color: var(--ml-green-deep) !important;
}
.ml-btn-outline .wp-block-button__link:hover {
  background: rgba(84,87,70,0.08) !important;
}
.ml-btn-solid .wp-block-button__link,
.wp-block-button.ml-btn-solid .wp-block-button__link {
  background: var(--ml-green-deep) !important;
  color: #fff !important;
  border-color: var(--ml-green-deep) !important;
}
.ml-btn-solid .wp-block-button__link:hover {
  background: var(--ml-green-ink) !important;
  color: #fff !important;
}

/* ---------- Homepage layout (scoped .ml-home-* / .ml-section) ---------- */
.ml-wrap,
.ml-home-hero-inner {
  width: min(100% - 3rem, var(--ml-max));
  margin-inline: auto;
}
.ml-section {
  padding: 4.5rem 0;
  background: var(--ml-white);
  color: var(--ml-ink);
}
.ml-section-alt { background: var(--ml-cream); }
.ml-kicker {
  display: block;
  font-size: 0.76rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ml-gold-dark) !important;
  margin: 0 0 0.7rem !important;
}
.ml-section-head { max-width: 38rem; margin-bottom: 2.4rem; }
.ml-section-head.ml-center,
.ml-center { margin-inline: auto; text-align: center; }
.ml-section-head p { color: var(--ml-muted); }
.ml-lede, .ml-lede p {
  font-size: 1.08rem;
  color: var(--ml-ink-soft);
  line-height: 1.65;
}
.ml-muted { color: var(--ml-muted) !important; }

/* Hero */
.ml-home-hero,
.gb-container.ml-home-hero {
  position: relative;
  min-height: 72vh;
  display: flex;
  align-items: center;
  padding: 5.5rem 0 4.8rem !important;
  color: #fff;
  overflow: hidden;
  background:
    linear-gradient(105deg, rgba(31,33,24,0.94) 0%, rgba(58,61,48,0.90) 50%, rgba(84,87,70,0.82) 100%),
    url("https://i0.wp.com/magisalaw.com/wp-content/uploads/2020/08/glass-building.jpg?w=1200&ssl=1") center 40% / cover no-repeat !important;
}
.ml-home-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at 70% 20%, rgba(205,175,115,0.18), transparent 55%);
  pointer-events: none;
}
.ml-home-hero-inner { position: relative; z-index: 1; width: min(100% - 3rem, var(--ml-max)); }
.ml-hero-grid,
.gb-grid-wrapper.ml-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 380px);
  gap: 2.5rem;
  align-items: center;
  margin-left: 0 !important; /* neutralize GB -40px gutter when we own the grid */
}
/* Install left a nested duplicate .ml-hero-grid; flatten so columns use the outer tracks */
.ml-hero-grid > .ml-hero-grid,
.gb-grid-wrapper.ml-hero-grid > .gb-grid-wrapper.ml-hero-grid {
  display: contents !important;
}
/* GB block JSON sets width:58 / 42 â€” force columns to fill their grid tracks */
.ml-hero-grid > .gb-grid-column,
.gb-grid-wrapper.ml-hero-grid > .gb-grid-column,
.gb-grid-column-mlherocopy,
.gb-grid-column-mlheroform {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: none !important;
  padding-left: 0 !important;
}
.ml-hero-copy { max-width: none; }
.ml-eyebrow {
  display: inline-flex !important;
  align-items: center;
  gap: 0.5rem;
  color: var(--ml-gold) !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 1.35rem !important;
}
.ml-eyebrow::before {
  content: "";
  width: 28px;
  height: 1px;
  background: var(--ml-gold);
}
.ml-home-hero h1,
.ml-hero-title,
.gb-headline.ml-hero-title {
  color: #fff !important;
  margin-bottom: 1.1rem !important;
  max-width: 28ch; /* ~3â€“5 words/line at desktop; was 18ch (~2 words) */
  font-size: clamp(2.15rem, 4.2vw, 3.35rem) !important;
}
.ml-hero-lede {
  color: rgba(255,255,255,0.90) !important;
  font-size: 1.12rem !important;
  max-width: 34rem;
  margin-bottom: 0 !important;
  line-height: 1.65;
}
.ml-hero-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  margin-top: 2rem;
}
.ml-hero-meta {
  margin-top: 2rem !important;
  font-size: 0.88rem !important;
  color: rgba(255,255,255,0.72) !important;
}
.ml-hero-meta a { color: var(--ml-gold) !important; }
.ml-hero-meta strong { color: rgba(255,255,255,0.9); font-weight: 600; }

/* Hero form card + WPForms */
.ml-hero-form,
.gb-container.ml-hero-form {
  background: #fff !important;
  color: var(--ml-ink);
  border-radius: var(--ml-radius);
  padding: 1.45rem 1.4rem 1.15rem !important;
  box-shadow: 0 18px 45px rgba(0,0,0,0.35);
  border-top: 4px solid var(--ml-gold);
}
.ml-hero-form-title,
.ml-hero-form h2,
.gb-headline.ml-hero-form-title {
  font-family: "Playfair Display", Georgia, serif !important;
  color: var(--ml-green-deep) !important;
  font-size: 1.45rem !important;
  margin: 0 0 0.25rem !important;
}
.ml-hero-form-sub {
  color: var(--ml-ink-soft) !important;
  font-size: 0.88rem !important;
  margin: 0 0 0.85rem !important;
}
.ml-hero-form-fine {
  font-size: 0.7rem !important;
  color: var(--ml-muted) !important;
  margin: 0.7rem 0 0 !important;
  line-height: 1.4;
}
.ml-hero-form .wpforms-container {
  margin: 0 !important;
}
.ml-hero-form .wpforms-field {
  padding: 0 0 12px !important;
}
.ml-hero-form .wpforms-field-label {
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  color: var(--ml-green-deep) !important;
}
.ml-hero-form .wpforms-field input,
.ml-hero-form .wpforms-field select,
.ml-hero-form .wpforms-field textarea {
  border: 1px solid #cfd6cf !important;
  border-radius: 8px !important;
  background: #f8faf8 !important;
  font-size: 0.9rem !important;
}
.ml-hero-form .wpforms-submit,
.ml-hero-form button[type="submit"] {
  width: 100%;
  border-radius: 999px !important;
  background: var(--ml-gold) !important;
  color: var(--ml-green-deep) !important;
  border: none !important;
  font-weight: 700 !important;
  padding: 0.85rem 1.25rem !important;
}
.ml-hero-form .wpforms-submit:hover {
  background: #d9bf88 !important;
}

/* WPForms multi-page progress â€” default is blue (#066aab); force brand gold */
#wpforms-20873 .wpforms-page-indicator-page-progress,
.ml-hero-form .wpforms-page-indicator-page-progress,
.ml-hero-form .wpforms-page-indicator .wpforms-page-indicator-page-progress {
  background-color: var(--ml-gold) !important;
  background: var(--ml-gold) !important;
}
#wpforms-20873 .wpforms-page-indicator-page-progress-wrap,
.ml-hero-form .wpforms-page-indicator-page-progress-wrap {
  background-color: #e8e4d8 !important;
}
#wpforms-20873 .wpforms-page-indicator,
.ml-hero-form .wpforms-page-indicator {
  color: var(--ml-ink-soft) !important;
}
#wpforms-20873 .wpforms-page-indicator-steps,
.ml-hero-form .wpforms-page-indicator-steps {
  color: var(--ml-ink-soft) !important;
  font-size: 0.78rem;
  font-weight: 600;
}

/* Trust bar */
.ml-trust-bar,
.gb-container.ml-trust-bar {
  background: var(--ml-cream) !important;
  border-bottom: 1px solid var(--ml-line);
  padding: 1.55rem 0 !important;
}
.ml-trust-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 auto !important;
  width: min(100% - 3rem, var(--ml-max));
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.55rem 1.85rem;
}
.ml-trust-list li {
  margin: 0 !important;
  font-size: 0.84rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--ml-ink-soft);
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
}
.ml-trust-list li::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--ml-gold-dark);
  flex-shrink: 0;
}

/* About */
.ml-about-grid {
  display: grid !important;
  /* ~55-60% text / ~40% media; media track never below 420px so 2Ã—200px cards fit */
  grid-template-columns: minmax(0, 1.35fr) minmax(420px, 1fr);
  gap: clamp(1.5rem, 3vw, 3.5rem);
  align-items: start; /* v3: was center â€” cards floated mid-column */
}
.ml-about-points {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 1.6rem !important;
}
.ml-about-points li {
  position: relative;
  padding: 0.55rem 0 0.55rem 1.5rem !important;
  color: var(--ml-ink-soft);
  font-size: 0.95rem;
  border-bottom: 1px solid var(--ml-line);
}
.ml-about-points li:last-child { border-bottom: 0; }
.ml-about-points li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 1.05rem;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--ml-gold);
}
.ml-partners {
  gap: 1.15rem !important;
}
.ml-partner-card {
  background: var(--ml-white);
  border-radius: var(--ml-radius);
  overflow: hidden;
  box-shadow: var(--ml-shadow);
  border: 1px solid var(--ml-line);
  margin: 0 !important;
}
.ml-partner-card img {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center top;
}
.ml-partner-card figcaption {
  padding: 1rem 1.05rem 1.15rem;
  font-size: 0.9rem;
}
.ml-partner-card figcaption strong {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.08rem;
  color: var(--ml-green-deep);
  display: block;
}
.ml-office-caption {
  margin-top: 1.15rem !important;
  border-radius: var(--ml-radius);
  overflow: hidden;
  box-shadow: var(--ml-shadow-soft);
  border: 1px solid var(--ml-line);
}
.ml-office-caption img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

/* Practice cards */
.ml-cards {
  gap: 1.15rem !important;
  margin-bottom: 1.15rem !important;
}
.ml-card,
.wp-block-column.ml-card {
  background: var(--ml-white) !important;
  border-radius: var(--ml-radius);
  padding: 1.6rem 1.4rem 1.45rem !important;
  border: 1px solid var(--ml-line);
  box-shadow: var(--ml-shadow-soft);
  transition: transform 0.18s ease, border-color 0.18s, box-shadow 0.18s;
}
.ml-card:hover {
  transform: translateY(-3px);
  border-color: rgba(205,175,115,0.65);
  box-shadow: var(--ml-shadow);
}
.ml-card h3 a,
.ml-card .wp-block-heading a { color: var(--ml-ink); text-decoration: none; }
.ml-card h3 a:hover { color: var(--ml-gold-dark); }
.ml-card p {
  font-size: 0.9rem;
  color: var(--ml-muted);
  margin: 0 !important;
  line-height: 1.55;
}
.ml-practice-foot {
  margin-top: 2rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

/* Steps */
.ml-steps-light,
.gb-container.ml-steps-light {
  background: #fff !important;
  padding: 4.25rem 0 4.5rem !important;
}
.ml-steps-line {
  list-style: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  max-width: 960px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  position: relative;
  counter-reset: none;
}
.ml-steps-line::before {
  content: "";
  position: absolute;
  top: 36px;
  left: 16.66%;
  right: 16.66%;
  height: 1px;
  background: linear-gradient(90deg, var(--ml-gold-dark), var(--ml-gold), var(--ml-gold-dark));
  opacity: .55;
}
.ml-steps-line li {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1rem;
  position: relative;
  padding: 0 1rem !important;
  list-style: none !important;
}
.ml-steps-line li::marker { content: ""; }
.ml-sl-num {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--ml-green-deep);
  border: 1px solid var(--ml-green-deep);
  color: var(--ml-gold);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.85rem;
  position: relative;
  z-index: 1;
  box-shadow: 0 0 0 6px #fff;
  font-variant-numeric: lining-nums;
  line-height: 1;
}
.ml-sl-title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.3rem;
  color: var(--ml-green-deep);
  line-height: 1.35;
  max-width: 16ch;
}

/* Why */
.ml-why-grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 3rem;
  align-items: start;
}
.ml-why-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.ml-why-list li {
  margin: 0 0 0.9rem !important;
  padding: 1.15rem 1.25rem !important;
  background: var(--ml-white);
  border-left: 3px solid var(--ml-gold);
  border-radius: 0 12px 12px 0;
  box-shadow: var(--ml-shadow-soft);
  color: var(--ml-muted);
  font-size: 0.92rem;
}
.ml-why-list strong {
  color: var(--ml-green-deep);
  display: block;
  margin-bottom: 0.25rem;
  font-size: 1rem;
}

/* FAQ width */
.ml-faq { max-width: 760px; margin-inline: auto; }

/* Areas */
.ml-areas-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}
.ml-areas-links a {
  background: var(--ml-white);
  border: 1px solid rgba(205,175,115,0.55);
  padding: 0.6rem 1.05rem;
  border-radius: 999px;
  color: var(--ml-ink) !important;
  font-weight: 600;
  font-size: 0.88rem;
  text-decoration: none !important;
  display: inline-block;
  margin: 0.2rem 0.15rem;
}
.ml-areas-links a:hover {
  background: rgba(205,175,115,0.18);
  color: var(--ml-green-deep) !important;
}

/* Bottom CTA (no second form) */
.ml-intake-cta,
.gb-container.ml-intake-cta {
  padding: 4.8rem 0 5rem !important;
  background: linear-gradient(180deg, var(--ml-cream) 0%, #ebe7dc 100%) !important;
}
.ml-intake-wrap {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 3rem;
  align-items: start;
}
.ml-intake-phone {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 1.85rem !important;
  color: var(--ml-green-deep) !important;
  font-weight: 600;
  margin: 1.2rem 0 0.35rem !important;
}
.ml-intake-phone a { color: inherit !important; text-decoration: none; }
.ml-intake-phone a:hover { color: var(--ml-gold-dark) !important; }
.ml-intake-aside {
  font-size: 0.9rem;
  color: var(--ml-muted);
}
.ml-intake-panel {
  background: var(--ml-white);
  border-radius: 16px;
  padding: 1.85rem 1.75rem 1.55rem !important;
  box-shadow: var(--ml-shadow);
  border: 1px solid rgba(205,175,115,0.4);
  border-top: 3px solid var(--ml-gold);
}
.ml-intake-panel h3 {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 1.35rem !important;
  color: var(--ml-green-deep) !important;
  margin: 0 0 0.35rem !important;
}
.ml-intake-panel .wp-block-buttons {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  margin-top: 1rem;
}
.ml-intake-panel .wp-block-button { width: 100%; }
.ml-intake-panel .wp-block-button__link { width: 100%; }

/* Footer disclaimer line (GP Footer element) */
.ml-footer-disclaimer {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.55);
  font-style: italic;
  line-height: 1.55;
  margin: 0.75rem 0 0;
  max-width: var(--ml-max);
}
.site-info .ml-footer-disclaimer,
.footer-bar .ml-footer-disclaimer {
  color: rgba(255,255,255,0.55);
}

/* Sticky mobile call bar (GP Hook element â€” mobile only) */
.ml-mobile-call-bar {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background: linear-gradient(130deg, var(--ml-green-ink), var(--ml-green));
  padding: 0.7rem 1rem;
  box-shadow: 0 -4px 20px rgba(0,0,0,0.2);
}
.ml-mobile-call-bar a {
  display: block;
  text-align: center;
  color: #fff !important;
  font-weight: 700;
  padding: 0.7rem;
  border-radius: 999px;
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(205,175,115,0.55);
  text-decoration: none !important;
  font-family: var(--gp-font--comfortaa, "Comfortaa", system-ui, sans-serif);
}
@media (max-width: 960px) {
  .ml-mobile-call-bar { display: block; }
  body.ml-has-mobile-call-bar,
  body { padding-bottom: 120px; } /* bar ~108px tall; was 76 and clipped content */
  .ml-hero-grid,
  .gb-grid-wrapper.ml-hero-grid { grid-template-columns: 1fr !important; gap: 1.75rem; }
  .ml-home-hero { min-height: auto; padding: 3rem 0 2.8rem !important; }
  .ml-home-hero h1, .ml-hero-title { max-width: none; }
  .ml-hero-ctas .wp-block-button { width: 100%; }
  .ml-hero-ctas .wp-block-button__link { width: 100%; }
  .ml-about-grid,
  .ml-why-grid,
  .ml-intake-wrap { grid-template-columns: 1fr; }
  .ml-section { padding: 3.4rem 0; }
  .ml-cards { flex-direction: column; }
}
@media (max-width: 700px) {
  .ml-steps-line {
    grid-template-columns: 1fr;
    gap: 1.6rem;
    max-width: 320px;
  }
  .ml-steps-line::before {
    top: 36px;
    bottom: 36px;
    left: 36px;
    right: auto;
    width: 1px;
    height: auto;
    background: linear-gradient(180deg, var(--ml-gold-dark), var(--ml-gold));
  }
  .ml-steps-line li {
    flex-direction: row;
    text-align: left;
    padding: 0 !important;
  }
  .ml-sl-num { width: 64px; height: 64px; font-size: 1.6rem; }
  .ml-sl-title { max-width: none; font-size: 1.15rem; }
}
@media (max-width: 640px) {
  .ml-trust-list { justify-content: center; gap: 0.45rem 1.1rem; }
  .ml-wrap, .ml-home-hero-inner { width: min(100% - 2rem, var(--ml-max)); }
}

/* Hero H1 keeps the serif headline font */
.ml-hero-title,
.gb-headline.ml-hero-title {
  font-family: "Playfair Display", var(--wp--preset--font-family--playfair-display, Georgia), serif !important;
  font-weight: 600;
}

/* =============================================================================
   v3 SPACING FIXES (2026-10-29) â€” homepage-scoped where possible
   Root cause: install nested every .ml-* section inside a duplicate of itself,
   so padding/background applied twice (sections ~144+144=288px between content;
   hero painted a second translucent panel at 1372Ã—854 inset from the full bleed).
   ============================================================================= */

/* --- 1. Collapse nested install-duplicate wrappers ---------------------------
   display:contents removes the inner box from layout so padding/bg apply once.
   Children promote to the outer container (hero flex centering still works). */
.entry-content > .ml-home-hero > .ml-home-hero,
.ml-home-hero > .gb-container.ml-home-hero,
.entry-content > .ml-trust-bar > .ml-trust-bar,
.ml-trust-bar > .gb-container.ml-trust-bar,
.entry-content > .ml-section > .ml-section,
.ml-section > .gb-container.ml-section,
.entry-content > .ml-steps-light > .ml-steps-light,
.ml-steps-light > .gb-container.ml-steps-light,
.entry-content > .ml-intake-cta > .ml-intake-cta,
.ml-intake-cta > .gb-container.ml-intake-cta,
.entry-content > .ml-about > .ml-about,
.entry-content > .ml-practice > .ml-practice,
.entry-content > .ml-why > .ml-why,
.entry-content > .ml-faq-section > .ml-faq-section,
.entry-content > .ml-areas > .ml-areas,
/* nested wrap duplicates only â€” do NOT contents the real .ml-home-hero-inner
   (that wrap owns max-width centering). */
.ml-home-hero-inner > .ml-home-hero-inner,
.ml-wrap > .ml-wrap:not(.ml-home-hero-inner) {
  display: contents;
}

/* Fallback if a browser ignores contents on that node: neutralize visuals */
@supports not (display: contents) {
  .ml-home-hero .ml-home-hero,
  .ml-section .ml-section,
  .ml-trust-bar .ml-trust-bar,
  .ml-steps-light .ml-steps-light,
  .ml-intake-cta .ml-intake-cta {
    padding: 0 !important;
    min-height: 0 !important;
    background: none !important;
    background-image: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    box-shadow: none !important;
  }
}

/* Nested alignfull inside alignfull: kill the classic 50%-50vw margin shift */
.entry-content .alignfull .alignfull {
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  width: 100% !important;
}

/* --- 2. Consistent spacing scale (after collapse, padding applies once) ----- */
.ml-section,
.gb-container.ml-section {
  padding: var(--ml-space-section) 0 !important; /* 80px */
}
.ml-steps-light,
.gb-container.ml-steps-light {
  padding: var(--ml-space-section) 0 !important;
}
.ml-intake-cta,
.gb-container.ml-intake-cta {
  padding: var(--ml-space-section) 0 !important;
}
.ml-home-hero,
.gb-container.ml-home-hero {
  padding: var(--ml-space-hero-y) 0 !important; /* ~76px both sides */
  min-height: 64vh; /* was 72vh; less empty air under CTAs once panel is full-bleed */
}
.ml-trust-bar,
.gb-container.ml-trust-bar {
  padding: var(--ml-space-trust-y) 0 !important;
}
.ml-section-head {
  margin-bottom: var(--ml-space-head-mb) !important; /* 2rem; was 2.4rem */
}

/* Hero grid: top-align copy + form so H1 and form title share a baseline */
.ml-hero-grid,
.gb-grid-wrapper.ml-hero-grid {
  align-items: start !important;
  gap: 2.25rem;
}
/* Slightly tighten hero meta / CTA stack so left column doesn't feel sparse */
.ml-hero-ctas { margin-top: 1.6rem; }
.ml-hero-meta { margin-top: 1.5rem !important; }

/* Practice cards: equal height in a row */
.ml-cards.wp-block-columns,
.wp-block-columns.ml-cards {
  align-items: stretch !important;
}
.ml-card,
.wp-block-column.ml-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.ml-card p { flex-grow: 1; }

/* Partner cards: equal height */
.ml-partners.wp-block-columns,
.wp-block-columns.ml-partners {
  align-items: stretch !important;
}
.ml-partner-card { height: 100%; display: flex; flex-direction: column; }
.ml-partner-card figcaption { margin-top: auto; }

/* Areas / FAQ: keep comfortable measure */
.ml-faq { max-width: 760px; }
.ml-areas .ml-section-head,
.ml-practice .ml-section-head { max-width: 40rem; }

/* Footer breathing room above site-info */
.site-footer .footer-widgets { padding-top: 2.5rem; padding-bottom: 1.5rem; }
.site-info { padding-top: 1rem; padding-bottom: 1.25rem; }

/* --- 3. Mobile / tablet spacing + sticky bar -------------------------------- */
@media (max-width: 960px) {
  .ml-section,
  .gb-container.ml-section,
  .ml-steps-light,
  .gb-container.ml-steps-light,
  .ml-intake-cta,
  .gb-container.ml-intake-cta {
    padding: var(--ml-space-section-sm) 0 !important; /* 52px */
  }
  .ml-home-hero,
  .gb-container.ml-home-hero {
    min-height: auto;
    padding: 3rem 0 2.75rem !important;
  }
  .ml-section-head { margin-bottom: 1.5rem !important; }
  /* Sticky call bar ~108px; keep content clear */
  body { padding-bottom: 120px; }
  .site-info { padding-bottom: 1.5rem; }
}
@media (max-width: 640px) {
  .ml-wrap,
  .ml-home-hero-inner {
    width: min(100% - 1.75rem, var(--ml-max)); /* was 2rem; slightly more edge air */
  }
  /* Prevent rare horizontal overflow from full-bleed + nested leftovers */
  .entry-content,
  .ml-home-hero,
  .ml-section {
    overflow-x: clip;
  }
}


/* =============================================================================
   FINAL ADDITIONS (owner-approved 2026-10-29)
   1) Hide GeneratePress duplicate page title on inner pages
   2) Raise UserWay accessibility button above the mobile sticky call bar
   ============================================================================= */

/* --- Inner-page duplicate title (was inner-title-fix.css) -------------------
   GP prints h1.entry-title (e.g. "WRONGFUL TERMINATION") above the content H1.
   Homepage uses .ml-hero-title and is excluded via :not(.home). */
body.page:not(.home) .entry-header,
body.page:not(.home) h1.entry-title {
  display: none !important;
}


/* --- About mid-width fix (owner screenshot ~1024â€“1100) ----------------------
   Install nested a second .ml-wrap.ml-about-grid INSIDE the outer grid. The
   outer grid (1.05fr 0.95fr) placed that single child in column 1 only
   (~435px at 1024), which the inner grid then split into ~132px text +
   ~272px media â€” cards ~127px, names breaking ("Maghakya/n"), empty col 2.
   Collapse the nested grid; keep cards â‰¥200px; stack â‰¤900px. */
.ml-about-grid > .ml-about-grid,
.ml-wrap.ml-about-grid > .ml-wrap.ml-about-grid,
.ml-why-grid > .ml-why-grid,
.ml-intake-wrap > .ml-intake-wrap {
  display: contents !important;
}

/* Partner cards: reliable 2-col grid (WP columns flex was shrinking to ~127px) */
.ml-partners.wp-block-columns,
.wp-block-columns.ml-partners {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(200px, 1fr)) !important;
  gap: 1.15rem !important;
  align-items: stretch !important;
  flex-wrap: nowrap !important;
}
.ml-partners > .wp-block-column {
  width: auto !important;
  max-width: none !important;
  flex-basis: auto !important;
  min-width: 0 !important;
  padding: 0 !important;
}
.ml-partner-card {
  min-width: 0;
  max-width: 100%;
}
/* Never break attorney names mid-word */
.ml-partner-card figcaption,
.ml-partner-card figcaption strong,
.ml-partner-card strong {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

@media (max-width: 900px) {
  .ml-about-grid {
    grid-template-columns: 1fr !important;
  }
  .ml-partners.wp-block-columns,
  .wp-block-columns.ml-partners {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 520px) {
  .ml-partners.wp-block-columns,
  .wp-block-columns.ml-partners {
    grid-template-columns: 1fr !important;
  }
}

/* --- UserWay above mobile sticky call bar ---------------------------------
   Live selectors (verified Playwright 390Ã—844):
     .userway_buttons_wrapper  â†’ position:fixed; bottom:13px; left:13px; 44Ã—44
     #userwayAccessibilityIcon.uai â†’ the blue button (relative inside wrapper)
   Sticky .ml-mobile-call-bar â†’ fixed bottom, ~108px tall, z-index 1000.
   Offset wrapper only (UserWay stays fully active/visible). Desktop unchanged. */
@media (max-width: 960px) {
  .userway_buttons_wrapper {
    bottom: 120px !important; /* bar ~108px + 12px gap */
    z-index: 1001 !important; /* above sticky bar so it stays tappable */
  }
  /* Keep icon itself interactive / visible */
  #userwayAccessibilityIcon.uai,
  .uai#userwayAccessibilityIcon {
    pointer-events: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
}

/* UserWay: beat possible inline bottom from their script (mobile only) */
@media (max-width: 960px) {
  body .userway_buttons_wrapper,
  body .uwy .userway_buttons_wrapper,
  html body .userway_buttons_wrapper[style],
  .uwy.userway_p5 .userway_buttons_wrapper {
    bottom: 120px !important;
    z-index: 1001 !important;
  }
}

/* =============================================================================
   WPForms buttons â€” brand gold (owner-approved 2026-10-29)
   Forms 20873 (employment) + 20917 (PI), sitewide Continue/Next/Previous/Submit.
   Matched to homepage .ml-btn-gold "Call for a free consultation":
     computed: Comfortaa 700, 14.72px (~0.92rem), padding 13.6Ã—24px (0.85rem 1.5rem),
     radius 999px, bg #cdaf73. Text set to #1f2118 (owner); CTA currently uses
     #3a3d30 â€” both pass AA on gold.
   Contrast (WCAG):
     #1f2118 on #cdaf73 â‰ˆ 7.0:1  AAA
     #1f2118 on #b8995c â‰ˆ 5.3:1  AA  (hover)
     Previous outline #1f2118 on white â‰ˆ 16:1 AAA; border #9C8B3A / #545746
   ============================================================================= */

/* Primary actions: Submit, Continue, Next, and any .wpforms-submit */
div.wpforms-container .wpforms-submit,
div.wpforms-container button[type="submit"],
div.wpforms-container input[type="submit"],
div.wpforms-container .wpforms-page-button,
div.wpforms-container .wpforms-page-next,
div.wpforms-container button.wpforms-page-next,
div.wpforms-container .wpforms-page-button.wpforms-page-next,
#wpforms-20873 .wpforms-submit,
#wpforms-20873 .wpforms-page-button,
#wpforms-20873 .wpforms-page-next,
#wpforms-20917 .wpforms-submit,
#wpforms-20917 .wpforms-page-button,
#wpforms-20917 .wpforms-page-next,
.ml-hero-form .wpforms-submit,
.ml-hero-form .wpforms-page-button,
.ml-hero-form .wpforms-page-next {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.45rem;
  background: #cdaf73 !important;
  background-color: #cdaf73 !important;
  background-image: none !important;
  color: #1f2118 !important;
  border: none !important;
  border-width: 0 !important;
  border-radius: 999px !important;
  padding: 0.85rem 1.5rem !important;
  font-family: var(--gp-font--comfortaa, "Comfortaa", system-ui, sans-serif) !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  text-decoration: none !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease;
  min-height: 48px;
  width: auto;
}

/* Full-width submit inside hero card (existing layout) */
.ml-hero-form .wpforms-submit,
.ml-hero-form button[type="submit"] {
  width: 100% !important;
}

div.wpforms-container .wpforms-submit:hover,
div.wpforms-container .wpforms-submit:active,
div.wpforms-container button[type="submit"]:hover,
div.wpforms-container .wpforms-page-button:hover,
div.wpforms-container .wpforms-page-next:hover,
div.wpforms-container button.wpforms-page-next:hover,
#wpforms-20873 .wpforms-submit:hover,
#wpforms-20873 .wpforms-page-next:hover,
#wpforms-20917 .wpforms-submit:hover,
#wpforms-20917 .wpforms-page-next:hover,
.ml-hero-form .wpforms-submit:hover,
.ml-hero-form .wpforms-page-next:hover {
  background: #b8995c !important;
  background-color: #b8995c !important;
  color: #1f2118 !important;
  border: none !important;
}

div.wpforms-container .wpforms-submit:focus-visible,
div.wpforms-container button[type="submit"]:focus-visible,
div.wpforms-container .wpforms-page-button:focus-visible,
div.wpforms-container .wpforms-page-next:focus-visible,
div.wpforms-container .wpforms-page-prev:focus-visible,
#wpforms-20873 .wpforms-submit:focus-visible,
#wpforms-20917 .wpforms-submit:focus-visible {
  outline: 3px solid #545746 !important;
  outline-offset: 3px !important;
}

/* Previous â€” outline style (transparent bg, gold/olive border) */
div.wpforms-container .wpforms-page-prev,
div.wpforms-container button.wpforms-page-prev,
div.wpforms-container .wpforms-page-button.wpforms-page-prev,
#wpforms-20873 .wpforms-page-prev,
#wpforms-20917 .wpforms-page-prev,
.ml-hero-form .wpforms-page-prev {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #1f2118 !important;
  border: 1.5px solid #9C8B3A !important;
  border-radius: 999px !important;
  padding: 0.85rem 1.5rem !important;
  font-family: var(--gp-font--comfortaa, "Comfortaa", system-ui, sans-serif) !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  box-shadow: none !important;
  min-height: 48px;
}

div.wpforms-container .wpforms-page-prev:hover,
div.wpforms-container button.wpforms-page-prev:hover,
#wpforms-20873 .wpforms-page-prev:hover,
#wpforms-20917 .wpforms-page-prev:hover {
  background: rgba(84, 87, 70, 0.08) !important;
  border-color: #545746 !important;
  color: #1f2118 !important;
}

/* Disabled state â€” keep readable, not blue */
div.wpforms-container .wpforms-submit:disabled,
div.wpforms-container .wpforms-page-button:disabled {
  opacity: 0.55 !important;
  cursor: not-allowed !important;
}

/* =============================================================================
   WPForms white card on olive pages (owner steering 2026-10-29)
   Problem: /contact/, practice pages, /es/contacto/, PI pages embed forms
   directly on body olive #545746. WPForms labels/indicators use dark ink
   (rgba(0,0,0,.85) / #3d3f34) â†’ unreadable. Homepage already wraps the form
   in .ml-hero-form (white card). Match that look sitewide for containers
   that are NOT inside .ml-hero-form.
   Contrast on white: #1f2118 â‰ˆ 16.3:1, #3a3d30 â‰ˆ 11:1 (AAA).
   ============================================================================= */

/* Card shell â€” same tokens as .ml-hero-form */
div.wpforms-container.wpforms-container-full {
  background: #ffffff !important;
  color: var(--ml-ink, #1a1a14) !important;
  border-radius: var(--ml-radius, 14px) !important;
  padding: 1.45rem 1.4rem 1.25rem !important;
  box-shadow: 0 12px 40px rgba(31, 33, 24, 0.12) !important;
  border: 1px solid rgba(84, 87, 70, 0.12) !important;
  border-top: 4px solid var(--ml-gold, #cdaf73) !important;
  box-sizing: border-box;
  max-width: 100%;
}

/* Homepage hero already has the card â€” don't double-wrap / double-pad */
.ml-hero-form div.wpforms-container.wpforms-container-full {
  background: transparent !important;
  color: var(--ml-ink, #1a1a14) !important;
  border: none !important;
  border-top: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Labels, step indicator, radio/checkbox text â€” dark on white */
div.wpforms-container .wpforms-field-label,
div.wpforms-container .wpforms-field-label-inline,
div.wpforms-container .wpforms-page-indicator,
div.wpforms-container .wpforms-page-indicator-steps,
div.wpforms-container .wpforms-page-indicator-page-title,
div.wpforms-container .wpforms-description,
div.wpforms-container .wpforms-field-sublabel,
div.wpforms-container li,
div.wpforms-container .wpforms-list-inline li,
div.wpforms-container label {
  color: var(--ml-green-deep, #3a3d30) !important;
}
div.wpforms-container .wpforms-field-label,
div.wpforms-container .wpforms-field-label-inline {
  font-weight: 700;
}
/* Required asterisk stays readable */
div.wpforms-container .wpforms-required-label,
div.wpforms-container .wpforms-field-required .wpforms-required-label {
  color: #8a3b2c !important;
}

/* Inputs on the card â€” match hero form fields */
div.wpforms-container .wpforms-field input[type="text"],
div.wpforms-container .wpforms-field input[type="email"],
div.wpforms-container .wpforms-field input[type="tel"],
div.wpforms-container .wpforms-field input[type="number"],
div.wpforms-container .wpforms-field input[type="url"],
div.wpforms-container .wpforms-field select,
div.wpforms-container .wpforms-field textarea {
  color: var(--ml-ink, #1a1a14) !important;
  background: #f8faf8 !important;
  border: 1px solid #cfd6cf !important;
  border-radius: 8px !important;
}

/* Progress track: brand gold (was blue on PI 20917) */
div.wpforms-container .wpforms-page-indicator-page-progress,
#wpforms-20873 .wpforms-page-indicator-page-progress,
#wpforms-20917 .wpforms-page-indicator-page-progress {
  background-color: var(--ml-gold, #cdaf73) !important;
  background: var(--ml-gold, #cdaf73) !important;
}
div.wpforms-container .wpforms-page-indicator-page-progress-wrap {
  background-color: #e8e4d8 !important;
}

/* Fine-print under fields */
div.wpforms-container .wpforms-field-description,
div.wpforms-container .wpforms-html-field,
div.wpforms-container .wpforms-html-medium {
  color: var(--ml-muted, #6b6e62) !important;
}

@media (max-width: 640px) {
  div.wpforms-container.wpforms-container-full {
    padding: 1.15rem 1rem 1.05rem !important;
  }
  .ml-hero-form div.wpforms-container.wpforms-container-full {
    padding: 0 !important;
  }
}

/* Inner pages: tighter bottom gap, side padding on small screens, footnote spacing (Oct 29) */
body:not(.home) .inside-article { padding-bottom: 40px; }
body:not(.home) .entry-content .ml-footnote { margin-top: 20px; margin-bottom: 0; font-size: 14px; line-height: 1.5; }
@media (max-width: 768px) {
  body:not(.home) .inside-article { padding-left: 20px; padding-right: 20px; padding-bottom: 32px; }
}
body:not(.home) .entry-content .ml-footnote small { font-size: inherit; }

/* =============================================================================
   MAGISA LAW Ã¢â‚¬â€ Option B inner pages (append at END of Additional CSS)
   Approved 2026-10-29: homepage-green gradient + cream reading panel.
   Scope: body:not(.home) only Ã¢â‚¬â€ English/ES/HY/RU language HOMES keep homepage look.
   Do not edit rules above; this block overrides olive+gold text for inner pages.
   ============================================================================= */

/* --- Frame: homepage-green gradient behind the reading panel ---------------- */
body:not(.home) {
  /* Keep outer bleed in the deep olive family so any gap matches the frame */
  background-color: #3a3d30 !important;
}

body:not(.home) .site-content {
  background: linear-gradient(105deg, #1f2118 0%, #3a3d30 50%, #545746 100%) !important;
  padding-top: 36px;
  padding-bottom: 48px;
  padding-left: 16px;
  padding-right: 16px;
}

/* --- Cream reading panel ---------------------------------------------------- */
body:not(.home) .inside-article {
  background: #f7f5ef !important;
  color: #2b2d24 !important;
  max-width: 1000px;
  margin-left: auto !important;
  margin-right: auto !important;
  border-top: 4px solid #cdaf73;
  border-radius: 0 0 14px 14px;
  padding: 44px 48px 40px !important;
  box-shadow: 0 12px 40px rgba(31, 33, 24, 0.18);
  box-sizing: border-box;
}

/* Blog / archive cards that also use .inside-article */
body:not(.home).blog .inside-article,
body:not(.home).archive .inside-article,
body:not(.home).search .inside-article,
body:not(.home).error404 .inside-article {
  margin-bottom: 1.5rem !important;
}

/* --- Base text: dark on cream (AA+) Ã¢â‚¬â€ kill gold theme text ------------------ */
body:not(.home) .inside-article,
body:not(.home) .entry-content,
body:not(.home) .entry-summary,
body:not(.home) .page-content,
body:not(.home) .entry-content p,
body:not(.home) .entry-content li,
body:not(.home) .entry-content td,
body:not(.home) .entry-content th,
body:not(.home) .entry-content dd,
body:not(.home) .entry-content dt,
body:not(.home) .entry-content figcaption,
body:not(.home) .entry-content .gb-text,
body:not(.home) .entry-content .gb-headline-text {
  color: #2b2d24 !important;
}

body:not(.home) .entry-content strong,
body:not(.home) .entry-content b {
  color: #1f2118 !important;
  font-weight: 700;
}

/* Brand small-caps inherit surrounding text (dark), not gold */
body:not(.home) .entry-content .brand-sc {
  color: inherit !important;
}

/* Footnote Ã¢â‚¬â€ muted dark olive, AA on cream (~7:1 for #5c5f52 on #f7f5ef) */
body:not(.home) .entry-content .ml-footnote,
body:not(.home) .entry-content .ml-footnote small,
body:not(.home) .entry-content .ml-footnote *,
body:not(.home) .inside-article .ml-footnote {
  color: #5c5f52 !important;
}

/* List markers readable on cream */
body:not(.home) .entry-content li::marker,
body:not(.home) .entry-content ul > li::before {
  color: #545746 !important;
}

/* --- Headings: Playfair + deep olive ---------------------------------------- */
body:not(.home) .entry-content h1,
body:not(.home) .entry-content h1.wp-block-heading,
body:not(.home) .entry-content .gb-headline-h1,
body:not(.home) .inside-article > .entry-header h1,
body:not(.home) h1.entry-title {
  font-family: "Playfair Display", Georgia, "Times New Roman", serif !important;
  color: #1f2118 !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em;
  line-height: 1.2;
}

body:not(.home) .entry-content h1 {
  font-size: clamp(1.85rem, 2.2vw + 1rem, 2.75rem); /* ~44px desktop */
}

body:not(.home) .entry-content h2,
body:not(.home) .entry-content h3,
body:not(.home) .entry-content h2.wp-block-heading,
body:not(.home) .entry-content h3.wp-block-heading,
body:not(.home) .entry-content .gb-headline,
body:not(.home) .entry-content h2.gb-headline,
body:not(.home) .entry-content h3.gb-headline {
  font-family: "Playfair Display", Georgia, "Times New Roman", serif !important;
  color: #3a3d30 !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em;
  line-height: 1.25;
}

body:not(.home) .entry-content h4,
body:not(.home) .entry-content h5,
body:not(.home) .entry-content h6 {
  font-family: "Playfair Display", Georgia, "Times New Roman", serif !important;
  color: #3a3d30 !important;
}

/* --- Links: olive + gold underline (readable on cream) ---------------------- */
body:not(.home) .entry-content a,
body:not(.home) .entry-summary a,
body:not(.home) .page-content a {
  color: #545746 !important;
  font-weight: 600;
  text-decoration: underline !important;
  text-decoration-color: #cdaf73 !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 3px !important;
}

body:not(.home) .entry-content a:hover,
body:not(.home) .entry-content a:focus,
body:not(.home) .entry-summary a:hover,
body:not(.home) .page-content a:hover {
  color: #1f2118 !important;
  text-decoration-color: #9C8B3A !important;
}

/* Buttons / submits: no underline, keep their own surface colors */
body:not(.home) .entry-content a.gb-button,
body:not(.home) .entry-content .gb-button,
body:not(.home) .entry-content .wp-block-button__link,
body:not(.home) .entry-content a.wp-block-button__link,
body:not(.home) .entry-content .ml-btn .wp-block-button__link,
body:not(.home) .entry-content button,
body:not(.home) .entry-content .wpforms-submit,
body:not(.home) .entry-content .wpforms-page-button {
  text-decoration: none !important;
}

/* If a GB button sits on a gold/olive fill, prefer deep olive text */
body:not(.home) .entry-content .gb-button-text,
body:not(.home) .entry-content a.gb-button {
  /* Default to dark so gold-on-gold never happens on cream pages */
  color: #1f2118 !important;
}

/* --- Blockquotes / tables / HR ---------------------------------------------- */
body:not(.home) .entry-content blockquote {
  color: #3a3d30 !important;
  border-left: 3px solid #cdaf73 !important;
  background: rgba(84, 87, 70, 0.06);
  padding: 0.85rem 1.1rem;
  border-radius: 0 8px 8px 0;
}

body:not(.home) .entry-content table,
body:not(.home) .entry-content .wp-block-table table {
  color: #2b2d24 !important;
}

body:not(.home) .entry-content th {
  color: #1f2118 !important;
  background: rgba(84, 87, 70, 0.08);
}

body:not(.home) .entry-content hr {
  border-color: rgba(84, 87, 70, 0.18) !important;
}

/* --- FAQ details (already light cards; reinforce ink) ----------------------- */
body:not(.home) .entry-content details,
body:not(.home) .entry-content .ml-faq .ml-faq-item {
  background: #ffffff !important;
}

body:not(.home) .entry-content details > summary,
body:not(.home) .entry-content .ml-faq summary {
  color: #1a1a14 !important;
}

body:not(.home) .entry-content details > *:not(summary),
body:not(.home) .entry-content details p {
  color: #5c5f52 !important;
}

/* --- WPForms: already a white card; keep readable on cream ------------------ */
body:not(.home) .entry-content div.wpforms-container.wpforms-container-full {
  /* Slightly stronger edge so white card still reads on cream */
  border: 1px solid rgba(84, 87, 70, 0.14) !important;
  border-top: 4px solid #cdaf73 !important;
}

body:not(.home) .entry-content div.wpforms-container label,
body:not(.home) .entry-content div.wpforms-container .wpforms-field-label,
body:not(.home) .entry-content div.wpforms-container .wpforms-field-label-inline,
body:not(.home) .entry-content div.wpforms-container .wpforms-page-indicator,
body:not(.home) .entry-content div.wpforms-container .wpforms-description,
body:not(.home) .entry-content div.wpforms-container li {
  color: #3a3d30 !important;
}

body:not(.home) .entry-content div.wpforms-container .wpforms-field-description,
body:not(.home) .entry-content div.wpforms-container .wpforms-html-field {
  color: #5c5f52 !important;
}

body:not(.home) .entry-content div.wpforms-container .wpforms-field input,
body:not(.home) .entry-content div.wpforms-container .wpforms-field select,
body:not(.home) .entry-content div.wpforms-container .wpforms-field textarea {
  color: #1a1a14 !important;
}

/* Explicit: common dark CTA / band containers used sitewide (footer also uses
   gb-container-80bb22fa outside article; in-content copies get light text). */
body:not(.home) .entry-content .gb-container-80bb22fa,
body:not(.home) .entry-content .gb-container-80bb22fa .gb-headline,
body:not(.home) .entry-content .gb-container-80bb22fa .gb-headline-text,
body:not(.home) .entry-content .gb-container-80bb22fa p,
body:not(.home) .entry-content .gb-container-80bb22fa a,
body:not(.home) .entry-content .gb-container-80bb22fa li,
body:not(.home) .entry-content .gb-container-80bb22fa span {
  color: #ffffff !important;
  text-decoration-color: #cdaf73 !important;
}

/* Alignfull sections: contain within the cream panel (no double bg bleed) */
body:not(.home) .inside-article .alignfull {
  /* Keep full-bleed sections inside the cream card so gradient frame stays clean */
  max-width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  position: relative !important;
}

body:not(.home) .inside-article .alignwide {
  max-width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* --- Nearby-cities / chip links (if present) -------------------------------- */
body:not(.home) .entry-content .ml-areas-links a,
body:not(.home) .entry-content .ml-nearby a {
  color: #545746 !important;
  text-decoration-color: #cdaf73 !important;
}

/* --- Mobile: panel nearly full-width with small side margins ---------------- */
@media (max-width: 768px) {
  body:not(.home) .site-content {
    padding-top: 14px;
    padding-bottom: 28px;
    padding-left: 10px;
    padding-right: 10px;
  }

  body:not(.home) .inside-article {
    max-width: none;
    padding: 28px 18px 32px !important;
    border-radius: 0 0 10px 10px;
    box-shadow: 0 8px 28px rgba(31, 33, 24, 0.16);
  }

  body:not(.home) .entry-content h1 {
    font-size: 1.85rem;
  }
}

@media (max-width: 480px) {
  body:not(.home) .site-content {
    padding-left: 8px;
    padding-right: 8px;
  }

  body:not(.home) .inside-article {
    padding: 22px 14px 28px !important;
  }
}

/* --- Header / footer / sticky call bar: deliberately NOT restyled ----------- */
/* .site-header, .site-footer, .gb-container-80bb22fa in footer, mobile call bar
   stay on the existing olive/gold system. */

/* --- Blog / archive / single: entry titles + meta on cream (AA) ------------- */
body:not(.home) .inside-article .entry-title,
body:not(.home) .inside-article .entry-title a,
body:not(.home) .inside-article h2.entry-title,
body:not(.home) .inside-article h2.entry-title a,
body:not(.home) .inside-article h1.entry-title,
body:not(.home) .inside-article h1.entry-title a {
  font-family: "Playfair Display", Georgia, "Times New Roman", serif !important;
  color: #1f2118 !important;
  text-decoration-color: #cdaf73 !important;
}

body:not(.home) .inside-article .entry-meta,
body:not(.home) .inside-article .entry-meta *,
body:not(.home) .inside-article footer.entry-meta,
body:not(.home) .inside-article footer.entry-meta *,
body:not(.home) .inside-article .posted-on,
body:not(.home) .inside-article .byline,
body:not(.home) .inside-article .cat-links,
body:not(.home) .inside-article .tags-links,
body:not(.home) .inside-article .author-name {
  color: #5c5f52 !important;
}

body:not(.home) .inside-article .entry-meta a,
body:not(.home) .inside-article footer.entry-meta a,
body:not(.home) .inside-article .cat-links a,
body:not(.home) .inside-article .tags-links a,
body:not(.home) .inside-article .byline a {
  color: #545746 !important;
  text-decoration: underline !important;
  text-decoration-color: #cdaf73 !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 3px !important;
}

/* Sidebar widgets sit on the gradient frame Ã¢â‚¬â€ keep light/gold readable there */
body:not(.home) .sidebar .widget,
body:not(.home) .widget-area .widget,
body:not(.home) #right-sidebar,
body:not(.home) #left-sidebar {
  color: #e8d4a0;
}
body:not(.home) .sidebar .widget a,
body:not(.home) .widget-area .widget a {
  color: #e8d4a0 !important;
  text-decoration-color: #cdaf73 !important;
}
body:not(.home) .sidebar .widget-title,
body:not(.home) .widget-area .widget-title {
  color: #f7f5ef !important;
}

/* --- Extra: GB text links / "Message Us" style chips on cream --------------- */
body:not(.home) .entry-content .gb-text a,
body:not(.home) .entry-content a.gb-text,
body:not(.home) .entry-content .gb-container a:not(.gb-button):not(.wp-block-button__link) {
  color: #545746 !important;
  text-decoration: underline !important;
  text-decoration-color: #cdaf73 !important;
}

/* Social icon links in contact header block: keep gold icons, no forced underline wash */
body:not(.home) .entry-content a[href*="linkedin.com"],
body:not(.home) .entry-content a[href*="facebook.com"],
body:not(.home) .entry-content a[href*="instagram.com"],
body:not(.home) .entry-content a[href*="youtube.com"],
body:not(.home) .entry-content a[href*="twitter.com"],
body:not(.home) .entry-content a[href*="x.com"] {
  text-decoration: none !important;
}

/* Tel / mailto in contact masthead Ã¢â‚¬â€ olive + gold underline is fine */
body:not(.home) .entry-content a[href^="tel:"],
body:not(.home) .entry-content a[href^="mailto:"] {
  color: #545746 !important;
  text-decoration-color: #cdaf73 !important;
}

/* --- GB buttons: beat per-block .gb-button-XXXX color on cream pages -------- */
body:not(.home) .inside-article a.gb-button,
body:not(.home) .inside-article a.gb-button.gb-button-text,
body:not(.home) .inside-article a[class*="gb-button-"],
body:not(.home) .entry-content a.gb-button.gb-button-text,
body:not(.home) .entry-content a[class*="gb-button-"] {
  color: #1f2118 !important;
  text-decoration: none !important;
}
/* =============================================================================
   MAGISA LAW â€” Speed safe fixes (2026-10-29)
   Appended after Option B. Reversible: delete this block to roll back these bits.
   Hero glass URL was also swapped in-place above (origin JPG â†’ Photon w=1200).
   ============================================================================= */

/* Footer CTA band (.gb-container-80bb22fa): same Photon URL as hero so homepage
   downloads glass-building once (~69 KiB WebP) instead of origin JPG + fit=1920. */
.gb-container-80bb22fa:before {
  background-image: url("https://i0.wp.com/magisalaw.com/wp-content/uploads/2020/08/glass-building.jpg?w=1200&ssl=1") !important;
}

/* font-display: swap â€” re-declare GP local faces (fonts.css uses font-display:auto).
   Same family/style/weight/src; later @font-face wins display mode in Chromium/Firefox. */
@font-face {
  font-family: "Comfortaa";
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/comfortaa/1Ptsg8LJRfWJmhDAuUs4TYFq.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFkD-vYSZviVYUb_rj3ij__anPXDTnogkk7.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFkD-vYSZviVYUb_rj3ij__anPXDTnogkk7.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFkD-vYSZviVYUb_rj3ij__anPXDTnogkk7.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFkD-vYSZviVYUb_rj3ij__anPXDTnogkk7.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: italic;
  font-weight: 800;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFkD-vYSZviVYUb_rj3ij__anPXDTnogkk7.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: italic;
  font-weight: 900;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFkD-vYSZviVYUb_rj3ij__anPXDTnogkk7.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display SC";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display-sc/ke85OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbkMEA.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display SC";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display-sc/ke87OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbw8Eusy.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display SC";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display-sc/ke80OhoaMkR6-hSn7kbHVoFf7ZfgMPr_nQIpBcwXLg.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display SC";
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display-sc/ke82OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbw0qc4nLKoQ.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display SC";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display-sc/ke80OhoaMkR6-hSn7kbHVoFf7ZfgMPr_nTorBcwXLg.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display SC";
  font-style: italic;
  font-weight: 900;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display-sc/ke82OhoaMkR6-hSn7kbHVoFf7ZfgMPr_lbw0kcwnLKoQ.woff2") format("woff2");
}

/* Logo CLS guard â€” attrs already width=800 height=120; reinforce ratio when CSS sets width:450px */
.site-header .header-image.is-logo-image,
.navigation-branding img.is-logo-image,
img.header-image.is-logo-image {
  aspect-ratio: 800 / 120;
  height: auto;
  max-width: 100%;
}

/* =============================================================================
   MAGISA LAW â€” Legacy GenerateBlocks fix under Option B (append-only)
   2026-10-29 â€” append AFTER inner-optionB / additional-final-v4
   Problem: Option B forces dark ink (#2b2d24) + cream panel on ALL inner pages.
            Legacy full-bleed GB shells (PI hub, About, Results, old city pages,
            employment hub, privacy, ES/HY/RU equivalents) use dark/teal gradients
            and photo bands â†’ dark-on-dark / washed teal / cream card squish.
   Approach:
     (1) Exempt pages that contain the shared legacy shell containers from the
         cream reading panel (full-bleed again on the olive frame).
     (2) Restore light text + gold CTAs inside known dark GB bands.
     (3) Replace off-brand teal/green gradients with brand olive
         (#1f2118 â†’ #3a3d30 â†’ #545746).
   Does NOT touch: homepage (.home), Montrose / new core-block pages (no these
   container ids), contact cream panel (different containers), PI children forms.
   ============================================================================= */

/* ---------- Shared selector shorthand via repeated :has() ------------------- */
/* Trigger containers shared by the legacy shell:
     b58db5b2  hero band
     1a100958  dark "Experience & Trust" band (was teal)
     a4aa5624  employment-hub / cities / female-* hero
*/

/* === 1. Drop cream panel on legacy shells ================================== */
body:not(.home):has(.entry-content .gb-container-b58db5b2) .inside-article,
body:not(.home):has(.entry-content .gb-container-1a100958) .inside-article,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .inside-article {
  background: transparent !important;
  color: #f0eee6 !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border-top: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

body:not(.home):has(.entry-content .gb-container-b58db5b2) .site-content,
body:not(.home):has(.entry-content .gb-container-1a100958) .site-content,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .site-content {
  /* Solid deep olive so full-bleed bands meet a brand edge (no cream card gap) */
  background: #3a3d30 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Let alignfull GB sections truly full-bleed again (undo Option B containment) */
body:not(.home):has(.entry-content .gb-container-b58db5b2) .inside-article .alignfull,
body:not(.home):has(.entry-content .gb-container-1a100958) .inside-article .alignfull,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .inside-article .alignfull {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  position: relative !important;
}

/* Stop Option B from forcing dark ink onto ALL legacy-shell text.
   Specific dark-band rules below re-assert white/gold; light bands keep contrast. */
body:not(.home):has(.entry-content .gb-container-b58db5b2) .entry-content,
body:not(.home):has(.entry-content .gb-container-1a100958) .entry-content,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .entry-content {
  color: inherit !important;
}

body:not(.home):has(.entry-content .gb-container-b58db5b2) .entry-content p,
body:not(.home):has(.entry-content .gb-container-b58db5b2) .entry-content li,
body:not(.home):has(.entry-content .gb-container-b58db5b2) .entry-content .gb-text,
body:not(.home):has(.entry-content .gb-container-b58db5b2) .entry-content .gb-headline-text,
body:not(.home):has(.entry-content .gb-container-1a100958) .entry-content p,
body:not(.home):has(.entry-content .gb-container-1a100958) .entry-content li,
body:not(.home):has(.entry-content .gb-container-1a100958) .entry-content .gb-text,
body:not(.home):has(.entry-content .gb-container-1a100958) .entry-content .gb-headline-text,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .entry-content p,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .entry-content li,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .entry-content .gb-text,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .entry-content .gb-headline-text {
  color: inherit !important;
}

body:not(.home):has(.entry-content .gb-container-b58db5b2) .entry-content h1,
body:not(.home):has(.entry-content .gb-container-b58db5b2) .entry-content h2,
body:not(.home):has(.entry-content .gb-container-b58db5b2) .entry-content h3,
body:not(.home):has(.entry-content .gb-container-b58db5b2) .entry-content h4,
body:not(.home):has(.entry-content .gb-container-b58db5b2) .entry-content .gb-headline,
body:not(.home):has(.entry-content .gb-container-1a100958) .entry-content h1,
body:not(.home):has(.entry-content .gb-container-1a100958) .entry-content h2,
body:not(.home):has(.entry-content .gb-container-1a100958) .entry-content h3,
body:not(.home):has(.entry-content .gb-container-1a100958) .entry-content h4,
body:not(.home):has(.entry-content .gb-container-1a100958) .entry-content .gb-headline,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .entry-content h1,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .entry-content h2,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .entry-content h3,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .entry-content h4,
body:not(.home):has(.entry-content .gb-container-a4aa5624) .entry-content .gb-headline {
  color: inherit !important;
  font-family: inherit; /* let GB / theme heading fonts stand on these shells */
}

/* Links on legacy shells: gold, no forced olive+underline wash on photo bands */
body:not(.home):has(.entry-content .gb-container-b58db5b2) .entry-content a:not(.gb-button):not(.wp-block-button__link),
body:not(.home):has(.entry-content .gb-container-1a100958) .entry-content a:not(.gb-button):not(.wp-block-button__link),
body:not(.home):has(.entry-content .gb-container-a4aa5624) .entry-content a:not(.gb-button):not(.wp-block-button__link) {
  color: #cdaf73 !important;
  text-decoration-color: #cdaf73 !important;
}

/* === 2. Dark GB bands â€” brand olive + light text (sitewide, safe) ========== */

/* Hero shell: was var(--green)â†’#a5ab8f (washed). Deepen to brand olive. */
body:not(.home) .entry-content .gb-container-b58db5b2 {
  background-image: linear-gradient(170deg, #1f2118 0%, #3a3d30 55%, #545746 100%) !important;
  color: #f7f5ef !important;
  border-bottom-color: #cdaf73 !important;
}
body:not(.home) .entry-content .gb-container-b58db5b2 .gb-headline,
body:not(.home) .entry-content .gb-container-b58db5b2 .gb-headline-text,
body:not(.home) .entry-content .gb-container-b58db5b2 .gb-text,
body:not(.home) .entry-content .gb-container-b58db5b2 p,
body:not(.home) .entry-content .gb-container-b58db5b2 h1,
body:not(.home) .entry-content .gb-container-b58db5b2 h2,
body:not(.home) .entry-content .gb-container-b58db5b2 h3,
body:not(.home) .entry-content .gb-container-b58db5b2 span {
  color: #f7f5ef !important;
}
/* Photo overlay inside hero â€” keep subtle, slightly stronger so skyline reads */
body:not(.home) .entry-content .gb-container-6857fb98:before {
  opacity: 0.22 !important;
}

/* Employment-hub / cities / female-* hero */
body:not(.home) .entry-content .gb-container-a4aa5624 {
  background-image: linear-gradient(168deg, #1f2118 0%, #3a3d30 45%, #545746 100%) !important;
  color: #f7f5ef !important;
}
body:not(.home) .entry-content .gb-container-a4aa5624 .gb-headline,
body:not(.home) .entry-content .gb-container-a4aa5624 .gb-headline-text,
body:not(.home) .entry-content .gb-container-a4aa5624 .gb-text,
body:not(.home) .entry-content .gb-container-a4aa5624 p,
body:not(.home) .entry-content .gb-container-a4aa5624 h1,
body:not(.home) .entry-content .gb-container-a4aa5624 h2,
body:not(.home) .entry-content .gb-container-a4aa5624 h3,
body:not(.home) .entry-content .gb-container-a4aa5624 span {
  color: #f7f5ef !important;
}

/* THE broken band: was teal #1f3d29â†’#408073. Brand olive + white/gold. */
body:not(.home) .entry-content .gb-container-1a100958 {
  background-image: linear-gradient(130deg, #1f2118 0%, #3a3d30 50%, #545746 100%) !important;
  color: #ffffff !important;
  border-top-color: #cdaf73 !important;
}
body:not(.home) .entry-content .gb-container-1a100958 .gb-headline,
body:not(.home) .entry-content .gb-container-1a100958 .gb-headline-text,
body:not(.home) .entry-content .gb-container-1a100958 .gb-text,
body:not(.home) .entry-content .gb-container-1a100958 p,
body:not(.home) .entry-content .gb-container-1a100958 h1,
body:not(.home) .entry-content .gb-container-1a100958 h2,
body:not(.home) .entry-content .gb-container-1a100958 h3,
body:not(.home) .entry-content .gb-container-1a100958 h4,
body:not(.home) .entry-content .gb-container-1a100958 li,
body:not(.home) .entry-content .gb-container-1a100958 span,
body:not(.home) .entry-content .gb-container-1a100958 a:not(.gb-button) {
  color: #ffffff !important;
  text-decoration-color: #cdaf73 !important;
}
/* Gold accent for the small eyebrow / "Experience & Trust" style lines */
body:not(.home) .entry-content .gb-container-1a100958 .gb-headline-fea84786,
body:not(.home) .entry-content .gb-container-1a100958 .gb-headline-64cb9db1 {
  color: #cdaf73 !important;
}
/* Office photo overlay â€” keep, slightly clearer */
body:not(.home) .entry-content .gb-container-c675620c:before {
  opacity: 0.18 !important;
}

/* Inner card on the dark band */
body:not(.home) .entry-content .gb-container-f9da3acd,
body:not(.home) .entry-content .gb-container-d79f5842 {
  color: #ffffff !important;
}
body:not(.home) .entry-content .gb-container-f9da3acd .gb-headline,
body:not(.home) .entry-content .gb-container-f9da3acd .gb-headline-text,
body:not(.home) .entry-content .gb-container-f9da3acd .gb-text,
body:not(.home) .entry-content .gb-container-d79f5842 .gb-headline,
body:not(.home) .entry-content .gb-container-d79f5842 .gb-headline-text,
body:not(.home) .entry-content .gb-container-d79f5842 .gb-text {
  color: #ffffff !important;
}

/* Green CTA sideboxes ("Speak to an attorney today!") â€” light text on olive */
body:not(.home) .entry-content .gb-container-6c7aea62,
body:not(.home) .entry-content .gb-container-c58e30be {
  background-color: #3a3d30 !important;
  color: #f7f5ef !important;
  border-top-color: #cdaf73 !important;
}
body:not(.home) .entry-content .gb-container-6c7aea62 .gb-headline,
body:not(.home) .entry-content .gb-container-6c7aea62 .gb-headline-text,
body:not(.home) .entry-content .gb-container-6c7aea62 .gb-text,
body:not(.home) .entry-content .gb-container-6c7aea62 p,
body:not(.home) .entry-content .gb-container-6c7aea62 a:not(.gb-button),
body:not(.home) .entry-content .gb-container-c58e30be .gb-headline,
body:not(.home) .entry-content .gb-container-c58e30be .gb-headline-text,
body:not(.home) .entry-content .gb-container-c58e30be .gb-text,
body:not(.home) .entry-content .gb-container-c58e30be p,
body:not(.home) .entry-content .gb-container-c58e30be a:not(.gb-button) {
  color: #f7f5ef !important;
  text-decoration-color: #cdaf73 !important;
}

/* Mid band with pale green wash â€” recolor to soft olive translucent, dark ink */
body:not(.home) .entry-content .gb-container-327d855e {
  background-image: linear-gradient(90deg, rgba(247, 245, 239, 0.92), rgba(84, 87, 70, 0.18)) !important;
  color: #2b2d24 !important;
}
body:not(.home) .entry-content .gb-container-327d855e .gb-headline,
body:not(.home) .entry-content .gb-container-327d855e .gb-headline-text,
body:not(.home) .entry-content .gb-container-327d855e .gb-text,
body:not(.home) .entry-content .gb-container-327d855e p,
body:not(.home) .entry-content .gb-container-327d855e h1,
body:not(.home) .entry-content .gb-container-327d855e h2,
body:not(.home) .entry-content .gb-container-327d855e h3,
body:not(.home) .entry-content .gb-container-327d855e li {
  color: #2b2d24 !important;
}
body:not(.home) .entry-content .gb-container-327d855e a:not(.gb-button) {
  color: #545746 !important;
  text-decoration-color: #cdaf73 !important;
}

/* Lower gold/olive band â€” keep readable dark ink on soft goldâ†’olive */
body:not(.home) .entry-content .gb-container-f81434c2 {
  background-image: linear-gradient(178deg, rgba(205, 175, 115, 0.85), #545746) !important;
  color: #1f2118 !important;
}
body:not(.home) .entry-content .gb-container-f81434c2 .gb-headline,
body:not(.home) .entry-content .gb-container-f81434c2 .gb-headline-text,
body:not(.home) .entry-content .gb-container-f81434c2 .gb-text,
body:not(.home) .entry-content .gb-container-f81434c2 p,
body:not(.home) .entry-content .gb-container-f81434c2 h1,
body:not(.home) .entry-content .gb-container-f81434c2 h2,
body:not(.home) .entry-content .gb-container-f81434c2 h3,
body:not(.home) .entry-content .gb-container-f81434c2 li {
  color: #1f2118 !important;
}
body:not(.home) .entry-content .gb-container-f81434c2 a:not(.gb-button) {
  color: #1f2118 !important;
  text-decoration-color: #cdaf73 !important;
}

/* Privacy variant mid-band (8b4a18f3) â€” same soft olive treatment as 327d855e */
body:not(.home) .entry-content .gb-container-8b4a18f3 {
  background-image: linear-gradient(90deg, rgba(247, 245, 239, 0.92), rgba(84, 87, 70, 0.18)) !important;
  color: #2b2d24 !important;
}
body:not(.home) .entry-content .gb-container-8b4a18f3 .gb-headline,
body:not(.home) .entry-content .gb-container-8b4a18f3 .gb-headline-text,
body:not(.home) .entry-content .gb-container-8b4a18f3 .gb-text,
body:not(.home) .entry-content .gb-container-8b4a18f3 p,
body:not(.home) .entry-content .gb-container-8b4a18f3 li {
  color: #2b2d24 !important;
}

/* === 3. GB buttons on dark bands â€” gold outline / gold text ======== */
/* Option B forced #1f2118 on every .gb-button; restore brand CTAs. */

/* Buttons sitting in the dark Experience band + hero + green CTA boxes */
body:not(.home) .entry-content .gb-container-1a100958 a.gb-button,
body:not(.home) .entry-content .gb-container-1a100958 a[class*="gb-button-"],
body:not(.home) .entry-content .gb-container-1a100958 .gb-button-text,
body:not(.home) .entry-content .gb-container-b58db5b2 a.gb-button,
body:not(.home) .entry-content .gb-container-b58db5b2 a[class*="gb-button-"],
body:not(.home) .entry-content .gb-container-b58db5b2 .gb-button-text,
body:not(.home) .entry-content .gb-container-a4aa5624 a.gb-button,
body:not(.home) .entry-content .gb-container-a4aa5624 a[class*="gb-button-"],
body:not(.home) .entry-content .gb-container-a4aa5624 .gb-button-text,
body:not(.home) .entry-content .gb-container-6c7aea62 a.gb-button,
body:not(.home) .entry-content .gb-container-6c7aea62 a[class*="gb-button-"],
body:not(.home) .entry-content .gb-container-6c7aea62 .gb-button-text,
body:not(.home) .entry-content .gb-container-c58e30be a.gb-button,
body:not(.home) .entry-content .gb-container-c58e30be a[class*="gb-button-"],
body:not(.home) .entry-content .gb-container-c58e30be .gb-button-text,
body:not(.home) .entry-content .gb-container-f9da3acd a.gb-button,
body:not(.home) .entry-content .gb-container-f9da3acd a[class*="gb-button-"],
body:not(.home) .entry-content .gb-container-d79f5842 a.gb-button,
body:not(.home) .entry-content .gb-container-d79f5842 a[class*="gb-button-"] {
  color: #cdaf73 !important;
  text-decoration: none !important;
  border-color: #cdaf73 !important;
}

/* "Areas of Practice" / outline buttons on the pale mid-band: dark olive text */
body:not(.home) .entry-content .gb-container-327d855e a.gb-button,
body:not(.home) .entry-content .gb-container-327d855e a[class*="gb-button-"],
body:not(.home) .entry-content .gb-container-327d855e .gb-button-text,
body:not(.home) .entry-content .gb-container-3297b356 a.gb-button,
body:not(.home) .entry-content .gb-container-3297b356 a[class*="gb-button-"],
body:not(.home) .entry-content .gb-container-f81434c2 a.gb-button,
body:not(.home) .entry-content .gb-container-f81434c2 a[class*="gb-button-"],
body:not(.home) .entry-content .gb-container-f81434c2 .gb-button-text {
  color: #1f2118 !important;
  text-decoration: none !important;
}

/* Known outline CTA used in dark bands (Learn More etc.) */
body:not(.home) .entry-content a.gb-button-689ad621,
body:not(.home) .entry-content a.gb-button-b5180254 {
  color: #cdaf73 !important;
  border-color: #cdaf73 !important;
  text-decoration: none !important;
}
body:not(.home) .entry-content .gb-container-327d855e a.gb-button-689ad621,
body:not(.home) .entry-content .gb-container-3297b356 a.gb-button-689ad621 {
  color: #1f2118 !important;
  border-color: #cdaf73 !important;
}

/* === 4. Contact page keeps cream; restore gold icon/button accents ========== */
/* Contact uses 22397734 / df7a519b / 55e1108c â€” NOT exempted above. */
body:not(.home) .entry-content .gb-container-df7a519b a.gb-button,
body:not(.home) .entry-content .gb-container-df7a519b a[class*="gb-button-"],
body:not(.home) .entry-content .gb-container-df7a519b .gb-button-text,
body:not(.home) .entry-content a.gb-button-8e0bd809,
body:not(.home) .entry-content a.gb-button-dab7df04,
body:not(.home) .entry-content a.gb-button-42a393bd,
body:not(.home) .entry-content a.gb-button-8d9cc417,
body:not(.home) .entry-content a.gb-button-49e44f08,
body:not(.home) .entry-content a.gb-button-3bfad626,
body:not(.home) .entry-content a.gb-button-b9a8624b,
body:not(.home) .entry-content a.gb-button-37f22c3d {
  color: #cdaf73 !important;
  text-decoration: none !important;
  border-color: #cdaf73 !important;
}

/* Contact masthead brand line â€” keep Playfair feel, dark on cream is fine;
   ensure tel/mailto stay olive+gold underline (already Option B). */

/* === 5. Mobile spacing on exempted shells ================================== */
@media (max-width: 768px) {
  body:not(.home):has(.entry-content .gb-container-b58db5b2) .site-content,
  body:not(.home):has(.entry-content .gb-container-1a100958) .site-content,
  body:not(.home):has(.entry-content .gb-container-a4aa5624) .site-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body:not(.home):has(.entry-content .gb-container-b58db5b2) .inside-article,
  body:not(.home):has(.entry-content .gb-container-1a100958) .inside-article,
  body:not(.home):has(.entry-content .gb-container-a4aa5624) .inside-article {
    padding: 0 !important;
  }
}

/* === 6. Hero contrast: skyline photo was washing out light text ============== */
/* Darken the photo overlay + add an olive scrim so white/gold text hits AA. */
body:not(.home) .entry-content .gb-container-6857fb98 {
  position: relative;
  z-index: 0;
}
body:not(.home) .entry-content .gb-container-6857fb98:before {
  opacity: 0.28 !important;
  filter: brightness(0.4) contrast(1.05) saturate(0.85);
}
/* Olive scrim above the photo, below the copy */
body:not(.home) .entry-content .gb-container-6857fb98:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(
    105deg,
    rgba(31, 33, 24, 0.72) 0%,
    rgba(58, 61, 48, 0.55) 55%,
    rgba(31, 33, 24, 0.65) 100%
  );
}
body:not(.home) .entry-content .gb-container-6857fb98 > * {
  position: relative;
  z-index: 1;
}

/* Eyebrow / lead headline on the Experience band: brand gold */
body:not(.home) .entry-content .gb-container-1a100958 .gb-headline-6edf7fad,
body:not(.home) .entry-content .gb-container-1a100958 .gb-headline-6edf7fad .gb-headline-text {
  color: #cdaf73 !important;
}
/* Subhead stays white for AA on olive */
body:not(.home) .entry-content .gb-container-1a100958 .gb-headline-291a71a0,
body:not(.home) .entry-content .gb-container-1a100958 .gb-headline-291a71a0 .gb-headline-text,
body:not(.home) .entry-content .gb-container-1a100958 .gb-headline-b3671ac4,
body:not(.home) .entry-content .gb-container-1a100958 .gb-headline-b3671ac4 .gb-headline-text {
  color: #ffffff !important;
}

/* Office photo band: slightly darker so gold/white stay crisp */
body:not(.home) .entry-content .gb-container-c675620c:before {
  opacity: 0.22 !important;
  filter: brightness(0.55) saturate(0.7);
}

/* Footer CTA band (often outside article too): nudge tealâ†’olive brand.
   Safe on homepage as well â€” matches header olive family. */
.gb-container-80bb22fa {
  background-image: linear-gradient(235deg, #1f2118 0%, #3a3d30 55%, #545746 100%) !important;
}

/* === 7. Iteration: mid-band solid cream + span.gb-button CTAs ============== */
/* Horizontal creamâ†’olive gradient made dark body text fail when the band
   stacked or when the translucent right edge showed the olive frame. */
body:not(.home) .entry-content .gb-container-327d855e,
body:not(.home) .entry-content .gb-container-8b4a18f3 {
  background-image: none !important;
  background-color: #f7f5ef !important;
  color: #2b2d24 !important;
}

/* "Areas of Practice" is a <span class="gb-button"> (not <a>) in the hero */
body:not(.home) .entry-content .gb-container-b58db5b2 .gb-button,
body:not(.home) .entry-content .gb-container-b58db5b2 span.gb-button,
body:not(.home) .entry-content .gb-container-6857fb98 .gb-button,
body:not(.home) .entry-content .gb-container-3297b356 .gb-button,
body:not(.home) .entry-content .gb-container-3297b356 span.gb-button,
body:not(.home) .entry-content span.gb-button-689ad621 {
  color: #cdaf73 !important;
  border-color: #cdaf73 !important;
  background-color: transparent !important;
  text-decoration: none !important;
}

/* Learn More etc. â€” cover span.gb-button inside dark bands too */
body:not(.home) .entry-content .gb-container-1a100958 .gb-button,
body:not(.home) .entry-content .gb-container-1a100958 span.gb-button,
body:not(.home) .entry-content .gb-container-f9da3acd .gb-button,
body:not(.home) .entry-content .gb-container-d79f5842 .gb-button {
  color: #cdaf73 !important;
  border-color: #cdaf73 !important;
  text-decoration: none !important;
}

/* Right column of mid-band: keep ink dark on solid cream */
body:not(.home) .entry-content .gb-container-67f304fe,
body:not(.home) .entry-content .gb-container-67f304fe .gb-headline,
body:not(.home) .entry-content .gb-container-67f304fe .gb-headline-text,
body:not(.home) .entry-content .gb-container-67f304fe .gb-text,
body:not(.home) .entry-content .gb-container-67f304fe p,
body:not(.home) .entry-content .gb-container-67f304fe h1,
body:not(.home) .entry-content .gb-container-67f304fe h2,
body:not(.home) .entry-content .gb-container-67f304fe h3 {
  color: #2b2d24 !important;
}

/* Lower gold band: solid soft gold so mobile stacking stays readable */
body:not(.home) .entry-content .gb-container-f81434c2 {
  background-image: none !important;
  background-color: #e8d4a0 !important;
  color: #1f2118 !important;
}
body:not(.home) .entry-content .gb-container-40ee08af,
body:not(.home) .entry-content .gb-container-40ee08af .gb-headline,
body:not(.home) .entry-content .gb-container-40ee08af .gb-headline-text,
body:not(.home) .entry-content .gb-container-40ee08af .gb-text,
body:not(.home) .entry-content .gb-container-40ee08af p,
body:not(.home) .entry-content .gb-container-40ee08af h1,
body:not(.home) .entry-content .gb-container-40ee08af h2,
body:not(.home) .entry-content .gb-container-40ee08af h3,
body:not(.home) .entry-content .gb-container-40ee08af li {
  color: #1f2118 !important;
}

/* Experience eyebrow: force gold with higher specificity */
body:not(.home) .entry-content .gb-container-1a100958 h3.gb-headline-6edf7fad.gb-headline-text {
  color: #cdaf73 !important;
}

/* === 8. Final contrast bump on Experience photo overlay ==================== */
body:not(.home) .entry-content .gb-container-c675620c:before {
  opacity: 0.35 !important;
  filter: brightness(0.35) saturate(0.55);
}
/* Ensure icon / SVG strokes in the band stay light */
body:not(.home) .entry-content .gb-container-1a100958 svg,
body:not(.home) .entry-content .gb-container-1a100958 svg *,
body:not(.home) .entry-content .gb-container-1a100958 .gb-icon,
body:not(.home) .entry-content .gb-container-1a100958 .gb-icon svg {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
}

/* legacy GB: highlighted ampersand inherits gold */
body:not(.home) .gb-container .gb-headline mark.gb-highlight{color:inherit !important;background:transparent !important;}

/* Employment Law hub (page-id-7319) â€” append-only; pairs with Option B inner styles */

body.page-id-7319 .entry-content .ml-hub-lede {
  font-size: 1.125rem;
  line-height: 1.65;
  max-width: none !important;
  width: 100% !important;
}

body.page-id-7319 .entry-content .ml-hub-theme {
  margin-top: 2.25rem !important;
  margin-bottom: 0.35rem !important;
  padding-bottom: 0.35rem;
  border-bottom: 2px solid rgba(205, 175, 115, 0.55);
  font-size: 1.35rem !important;
}

/* Equal-height cards via CSS grid */
body.page-id-7319 .entry-content .ml-hub-cards.wp-block-columns,
body.page-id-7319 .entry-content .wp-block-columns.ml-hub-cards {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem !important;
  margin-bottom: 1rem !important;
  align-items: stretch !important;
  flex-wrap: unset !important;
}

body.page-id-7319 .entry-content .ml-hub-cards > .wp-block-column,
body.page-id-7319 .entry-content .ml-hub-card {
  width: 100% !important;
  max-width: none !important;
  flex: unset !important;
  float: none !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  background: #ffffff !important;
  border: 1px solid rgba(84, 87, 70, 0.12) !important;
  border-radius: 14px !important;
  padding: 1.25rem 1.2rem 1.15rem !important;
  box-shadow: 0 4px 18px rgba(31, 33, 24, 0.06) !important;
  transition: transform 0.18s ease, border-color 0.18s, box-shadow 0.18s;
  box-sizing: border-box !important;
}

body.page-id-7319 .entry-content .ml-hub-card:hover {
  transform: translateY(-2px);
  border-color: rgba(205, 175, 115, 0.65) !important;
  box-shadow: 0 12px 40px rgba(31, 33, 24, 0.08) !important;
}

body.page-id-7319 .entry-content .ml-hub-card h3 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.1rem !important;
  line-height: 1.35 !important;
  margin: 0 0 0.5rem !important;
  color: #1f2118 !important;
}

body.page-id-7319 .entry-content .ml-hub-card h3 a {
  color: #1f2118 !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

body.page-id-7319 .entry-content .ml-hub-card h3 a:hover {
  color: #9C8B3A !important;
  text-decoration: underline !important;
  text-decoration-color: #cdaf73 !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 3px !important;
}

body.page-id-7319 .entry-content .ml-hub-card p {
  flex-grow: 1 !important;
  margin: 0 !important;
  font-size: 0.9rem !important;
  line-height: 1.55 !important;
  color: #6b6e62 !important;
}

/* More topics: compact multi-column link list */
body.page-id-7319 .entry-content ul.ml-hub-more {
  list-style: none !important;
  margin: 0.5rem 0 1.75rem !important;
  padding: 1rem 1.15rem !important;
  background: #ffffff;
  border: 1px solid rgba(84, 87, 70, 0.12);
  border-radius: 14px;
  column-count: 3;
  column-gap: 1.5rem;
}

body.page-id-7319 .entry-content ul.ml-hub-more li {
  break-inside: avoid;
  margin: 0 0 0.45rem !important;
  padding: 0 !important;
  font-size: 0.95rem;
  line-height: 1.4;
}

body.page-id-7319 .entry-content ul.ml-hub-more a {
  text-decoration-thickness: 1.5px !important;
}

body.page-id-7319 .entry-content .ml-hub-cities {
  line-height: 1.85 !important;
  margin-top: 0.25rem !important;
}

body.page-id-7319 .entry-content .ml-hub-cities a {
  white-space: nowrap;
}

body.page-id-7319 .entry-content .ml-hub-steps {
  max-width: 40rem;
  padding-left: 1.25rem !important;
}

body.page-id-7319 .entry-content .ml-hub-steps li {
  margin-bottom: 0.75rem !important;
}

body.page-id-7319 .entry-content .ml-footnote {
  margin-top: 1.5rem !important;
  color: #6b6e62 !important;
}

body.page-id-7319 .entry-content h3.ml-hub-theme + p {
  margin-top: 0.5rem !important;
  color: #3d3f34 !important;
}

@media (max-width: 981px) {
  body.page-id-7319 .entry-content .ml-hub-cards.wp-block-columns,
  body.page-id-7319 .entry-content .wp-block-columns.ml-hub-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.page-id-7319 .entry-content ul.ml-hub-more {
    column-count: 2;
  }
}

@media (max-width: 781px) {
  body.page-id-7319 .entry-content h1 {
    font-size: 1.85rem !important;
    line-height: 1.2 !important;
  }
  body:not(.home).page-id-7319 .inside-article {
    padding: 28px 20px !important;
  }
  body.page-id-7319 .entry-content .ml-hub-theme {
    font-size: 1.2rem !important;
  }
  body.page-id-7319 .entry-content .ml-hub-cards.wp-block-columns,
  body.page-id-7319 .entry-content .wp-block-columns.ml-hub-cards {
    grid-template-columns: 1fr;
  }
  body.page-id-7319 .entry-content ul.ml-hub-more {
    column-count: 1;
    padding: 0.9rem 1rem !important;
  }
  body.page-id-7319 .entry-content .ml-hub-cities a {
    white-space: normal;
  }
}

/* MAGISA LAW — homepage hero trust row (append-only to Additional CSS)
   Replaces .ml-hero-meta address line under hero CTAs.
   Gold check icons + Comfortaa ~15–16px on hero dark background.
   Homepage fee footnote rule included (live CSS scopes .ml-footnote to body:not(.home)). */

.ml-home-hero .ml-hero-trust,
ul.ml-hero-trust {
  list-style: none !important;
  padding: 0 !important;
  margin: 1.2rem 0 0 !important;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: 1.15rem;
  row-gap: 0.55rem;
  max-width: none; /* use full .ml-hero-copy width */
}

.ml-home-hero .ml-hero-trust li,
ul.ml-hero-trust > li {
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--gp-font--comfortaa, "Comfortaa", system-ui, sans-serif) !important;
  font-size: 0.94rem; /* ~15px — keeps wrap tidy in ~58% copy column */
  font-weight: 500;
  letter-spacing: 0.015em;
  line-height: 1.35;
  color: rgba(255, 255, 255, 0.90) !important;
  white-space: nowrap; /* each item stays on one line; list wraps between items */
}

.ml-home-hero .ml-hero-trust li::before,
ul.ml-hero-trust > li::before {
  content: "";
  width: 0.9em;
  height: 0.9em;
  flex-shrink: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  /* gold check (#cdaf73) */
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23cdaf73' d='M6.4 11.6L2.8 8l1.2-1.2 2.4 2.4 5.2-5.2L12.8 5.2z'/%3E%3C/svg%3E");
}

/* Hide obsolete address meta if a paste left both (safety) */
.ml-home-hero .ml-hero-meta { display: none !important; }

/* Homepage fee footnote (asterisk on Free Consultation*) */
body.home .entry-content .ml-footnote,
body.home .inside-article .ml-footnote {
  margin: 1.25rem auto 1.5rem;
  width: min(100% - 3rem, var(--ml-max, 1120px));
  font-size: 0.82rem;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.72);
}
body.home .entry-content .ml-footnote small {
  font-size: inherit;
}

@media (max-width: 767px) {
  .ml-home-hero .ml-hero-trust,
  ul.ml-hero-trust {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    row-gap: 0.48rem;
    margin-top: 1.05rem !important;
    margin-bottom: 0.25rem !important;
  }
  .ml-home-hero .ml-hero-trust li,
  ul.ml-hero-trust > li {
    font-size: 0.94rem;
    white-space: normal; /* allow long office line to wrap if needed */
  }
}

/* Homepage steps section: remove stray gap under heading, keep circles round (Oct 29) */
.ml-steps-light .ml-section-head .wp-block-group__inner-container { padding-bottom: 0 !important; }
.ml-steps-line .ml-sl-num { flex: 0 0 auto; }
@media (max-width: 768px) {
  .ml-steps-light .ml-section-head { margin-bottom: 1.25rem !important; }
  .ml-steps-line .ml-sl-num { width: 56px; height: 56px; min-width: 56px; font-size: 1.4rem; }
  .ml-steps-line li { align-items: center; gap: 16px; }
  .ml-steps-line .ml-sl-title { font-size: 1.05rem; line-height: 1.35; }
}

/* Homepage section heads: remove stray 100px gap under intro text; even area chips on mobile (Oct 29) */
.ml-section-head > .wp-block-group__inner-container { padding-bottom: 0 !important; }
@media (max-width: 768px) {
  .ml-areas .ml-areas-links { display: grid !important; grid-template-columns: 1fr 1fr; gap: 10px; }
  .ml-areas .ml-areas-links a { text-align: center; justify-content: center; margin: 0 !important; }
}

/* FAQ open icon: fix garbled en dash (Oct 30) */
.ml-faq details[open] > summary::after, .entry-content details[open] > summary::after { content: "\2013"; }

/* =============================================================================
   MAGISA LAW - Employment Law grouped mega menu (v3)
   Append to Appearance > Customize > Additional CSS (or GP Premium CSS).
   Scoped to .ml-grouped - inert until the Primary menu is restructured.
   Desktop: 4-col panel. Mobile (max 1095px): native GP 3rd-level toggles.
   No non-ASCII characters in CSS content - chevrons are borders or GP SVG.
   ============================================================================= */

/* ----- Desktop mega panel ----- */
@media (min-width: 1096px) {
  .main-navigation .main-nav > ul > li.ml-grouped {
    position: static;
  }

  .main-navigation {
    position: relative !important;
    z-index: 10050;
  }

  .main-navigation .inside-navigation,
  .main-navigation .main-nav,
  .main-navigation .main-nav > ul {
    position: static !important;
  }

  /* Top-level Employment Law dropdown panel */
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: auto auto auto;
    align-items: start;
    column-gap: 22px;
    row-gap: 4px;
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    top: 100% !important;
    width: min(1040px, calc(100vw - 48px)) !important;
    max-width: calc(100vw - 48px);
    padding: 16px 20px 12px !important;
    margin: 0 !important;
    box-sizing: border-box;
    background-color: var(--green, #545746) !important;
    border: none !important;
    border-top: 2px solid var(--ml-gold, #cdaf73) !important;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 14px 36px rgba(31, 33, 24, 0.28);
    z-index: 9999;
    /* Kill legacy two-column-submenu look if class left on by mistake */
    float: none !important;
  }

  /* Order must be: Fired, Pay, Leave, Discrimination, See All */
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group:nth-child(1) {
    grid-column: 1;
    grid-row: 1 / 3;
    align-self: start;
  }
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group:nth-child(2) {
    grid-column: 2;
    grid-row: 1;
    align-self: start;
  }
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group:nth-child(3) {
    grid-column: 2;
    grid-row: 2;
    align-self: start;
    margin-top: 10px;
  }
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group:nth-child(4) {
    grid-column: 3 / 5;
    grid-row: 1 / 3;
    align-self: start;
  }
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-see-all {
    grid-column: 1 / -1;
    grid-row: 3;
    margin-top: 10px;
    padding-top: 10px !important;
    border-top: 1px solid rgba(205, 175, 115, 0.28);
  }

  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li {
    list-style: none;
    float: none !important;
    width: auto !important;
    padding: 0 !important;
    margin: 0;
    background: transparent !important;
  }

  /* Group heading look - not clickable on desktop */
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > a {
    display: block;
    padding: 0 4px 6px !important;
    margin-bottom: 2px;
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    line-height: 1.25 !important;
    text-transform: uppercase !important;
    color: var(--ml-gold, #cdaf73) !important;
    background: transparent !important;
    border-bottom: 1px solid rgba(205, 175, 115, 0.35);
    text-decoration: none !important;
    pointer-events: none;
    cursor: default;
  }

  /* Hide GP dropdown toggle on group headings at desktop (topics always shown) */
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > a .dropdown-menu-toggle {
    display: none !important;
  }

  /* 3rd-level topic lists: always visible, static, independent stacks */
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > ul.sub-menu {
    display: block !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    height: auto !important;
    overflow: visible !important;
  }

  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > ul.sub-menu > li {
    list-style: none;
    float: none !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0;
  }

  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > ul.sub-menu > li > a {
    display: block;
    padding: 4px 4px !important;
    font-family: Comfortaa, system-ui, sans-serif !important;
    font-size: 12.75px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    letter-spacing: 0.01em !important;
    text-transform: none !important;
    color: var(--global-color-117, #cdaf73) !important;
    background: transparent !important;
    text-decoration: none !important;
    white-space: normal;
  }

  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > ul.sub-menu > li > a:hover,
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > ul.sub-menu > li > a:focus {
    text-decoration: underline !important;
    text-decoration-color: var(--ml-gold, #cdaf73) !important;
    text-underline-offset: 3px;
    background: transparent !important;
    color: var(--global-color-117, #cdaf73) !important;
  }

  /* Discrimination spans cols 3-4: flow A-Z across two CSS columns */
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group:nth-child(4) > ul.sub-menu {
    column-count: 2;
    column-gap: 22px;
    column-fill: balance;
  }
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group:nth-child(4) > ul.sub-menu > li {
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
  }

  /* See All footer */
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-see-all > a {
    display: inline-block;
    padding: 4px 4px !important;
    font-family: Comfortaa, system-ui, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    color: var(--ml-gold, #cdaf73) !important;
    background: transparent !important;
    text-decoration: none !important;
  }
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-see-all > a:hover {
    text-decoration: underline !important;
    text-decoration-color: var(--ml-gold, #cdaf73) !important;
  }
}

/* ----- Mobile accordion (GP breakpoint) ----- */
@media (max-width: 1095px) {
  .main-navigation .main-nav > ul > li.ml-grouped {
    position: relative;
  }

  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    position: static !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background-color: var(--green, #545746) !important;
    border: none !important;
    border-top: none !important;
    box-shadow: none !important;
    grid-template-columns: none !important;
  }

  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group {
    border-bottom: 1px solid rgba(205, 175, 115, 0.22);
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Group heading row - readable Title Case / sentence size, not tiny caps */
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > a {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 48px;
    padding: 12px 16px 12px 20px !important;
    box-sizing: border-box;
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    line-height: 1.3 !important;
    text-transform: none !important;
    color: var(--ml-gold, #cdaf73) !important;
    background: transparent !important;
    text-decoration: none !important;
    border-bottom: none !important;
    pointer-events: auto;
    cursor: pointer;
    position: relative;
  }

  /* Expand GP's arrow toggle to cover the full row so '#' does not navigate.
     Works with Navigation Dropdown = Click - Arrow (recommended to keep Hover
     on desktop for Attorney Profiles). */
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > a .dropdown-menu-toggle {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 16px 0 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    box-sizing: border-box;
    cursor: pointer;
  }

  /* Visual chevron box on the right (CSS borders - content empty string only) */
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > a .dropdown-menu-toggle .gp-icon,
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > a .dropdown-menu-toggle svg {
    /* Keep GP SVG as the indicator; optionally hide and draw borders instead */
    margin-left: auto;
    color: var(--ml-gold, #cdaf73) !important;
    fill: var(--ml-gold, #cdaf73) !important;
    width: 1em;
    height: 1em;
    pointer-events: none;
  }

  /* Opened 3rd-level panel - CRITICAL: undo GP off-screen positioning */
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group.sfHover > ul.sub-menu,
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group.toggled > ul.sub-menu,
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > ul.sub-menu.toggled,
  .main-navigation.toggled .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group.sfHover > ul.sub-menu,
  #mobile-header .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group.sfHover > ul.sub-menu,
  #mobile-header .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > ul.sub-menu {
    /* Default: hidden until GP opens; when open GP sets display - force geometry */
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 0 8px !important;
    margin: 0 !important;
  }

  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group > ul.sub-menu > li > a {
    display: block !important;
    min-height: 44px;
    padding: 10px 20px 10px 28px !important;
    box-sizing: border-box;
    font-family: Comfortaa, system-ui, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    text-transform: none !important;
    color: var(--ml-gold, #cdaf73) !important;
    background: transparent !important;
    text-decoration: none !important;
  }

  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-see-all {
    border-top: 1px solid rgba(205, 175, 115, 0.28);
    width: 100% !important;
  }
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-see-all > a {
    display: flex !important;
    align-items: center;
    min-height: 48px;
    padding: 12px 20px !important;
    font-family: Comfortaa, system-ui, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    color: var(--ml-gold, #cdaf73) !important;
    background: transparent !important;
    text-decoration: none !important;
  }

  /* Discrimination: single column on mobile (no column-count) */
  .main-navigation .main-nav > ul > li.ml-grouped > ul.sub-menu > li.ml-group:nth-child(4) > ul.sub-menu {
    column-count: 1 !important;
  }
}
/* MAGISA LAW - mobile header logo: keep true proportions (2026-10-30) */
.mobile-header-logo img.is-logo-image { object-fit: contain; }
/* MAGISA LAW - tighter homepage section gaps on phones (2026-10-30) */
@media (max-width: 768px) {
	.entry-content > .gb-container[class*="gb-container-ml"]:not(.gb-container-mlhero01) { padding-top: 30px !important; padding-bottom: 30px !important; }
}
/* MAGISA LAW - hide fee-line leftovers (2026-10-30) */
.entry-content .ml-footnote, .entry-content p:empty, .entry-content li:empty { display: none !important; }
/* MAGISA LAW - no word-splitting hyphens in forms (2026-10-30) */
.wpforms-container .wpforms-field-description, .wpforms-container label, .wpforms-container .wpforms-field-label-inline { -webkit-hyphens: manual !important; hyphens: manual !important; }
/* MAGISA LAW - top bar language switcher (2026-10-30) */
.top-bar .inside-top-bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.top-bar .inside-top-bar>aside{grid-column:2;grid-row:1}
.top-bar .inside-top-bar>aside:has(.ml-lang){grid-column:1;justify-self:start;padding-top:0!important;padding-bottom:0!important;margin:0}
.ml-lang{display:flex;font-family:Comfortaa,Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.5px;line-height:1.4}
.ml-lang a{color:#fff;text-decoration:none;padding:4px 8px;opacity:.85}
.ml-lang a+a{border-left:1px solid rgba(255,255,255,.5)}
.ml-lang a:hover{opacity:1;text-decoration:underline}
html[lang^="en"] .ml-lang a[lang="en"],html[lang^="es"] .ml-lang a[lang="es"],html[lang^="hy"] .ml-lang a[lang="hy"],html[lang^="ru"] .ml-lang a[lang="ru"]{opacity:1;text-decoration:underline;text-underline-offset:3px}
@media (max-width:768px){
.top-bar .inside-top-bar{display:flex;flex-direction:column;align-items:center;padding-top:6px;padding-bottom:0}
.top-bar .inside-top-bar>aside:has(.ml-lang){order:-1;justify-self:auto}
.top-bar .inside-top-bar>aside{padding-top:2px!important;padding-bottom:2px!important}
.top-bar h6{margin:0}
.ml-lang a{padding:2px 7px}
}
/* MAGISA LAW - top bar centering + tighter spacing (2026-10-30) */
.top-bar .inside-top-bar{padding:6px 50px!important}
.top-bar .inside-top-bar>aside{margin:0!important;padding:0!important}
.top-bar h6{margin:0!important;line-height:1.5}
.top-bar h6,.ml-lang{font-family:Comfortaa,Arial,sans-serif}
@media (max-width:768px){
.top-bar .inside-top-bar{padding:6px 16px!important;gap:3px}
.top-bar h6{line-height:1.45}
}
.top-bar .ml-tb{display:none}
html[lang^="en"] .top-bar .ml-tb[lang="en"],html[lang^="es"] .top-bar .ml-tb[lang="es"],html[lang^="hy"] .top-bar .ml-tb[lang="hy"],html[lang^="ru"] .top-bar .ml-tb[lang="ru"]{display:inline}

/* MAGISA LAW — homepage Google stars line + mobile Free Case Review
   PREVIEW / paste pack. Append once to Additional CSS after approval.
   Fully scoped under .ml-home-hero / .ml-hero-stars. Brace-balanced. */

.ml-home-hero .ml-hero-stars,
.ml-hero-stars {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.55rem 1rem;
  margin: 0.95rem 0 0 !important;
  padding: 0 !important;
  max-width: 100%;
  box-sizing: border-box;
}

.ml-home-hero .ml-hero-stars__rating,
.ml-hero-stars__rating {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  text-decoration: none !important;
  color: rgba(255, 255, 255, 0.92) !important;
  font-family: var(--gp-font--comfortaa, "Comfortaa", system-ui, sans-serif) !important;
  font-size: 0.9rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.3;
  border-bottom: none !important;
  box-sizing: border-box;
}

.ml-home-hero .ml-hero-stars__rating:hover,
.ml-home-hero .ml-hero-stars__rating:focus,
.ml-hero-stars__rating:hover,
.ml-hero-stars__rating:focus {
  color: var(--ml-gold-link, #e8d4a0) !important;
  text-decoration: none !important;
}

.ml-home-hero .ml-hero-stars__stars,
.ml-hero-stars__stars {
  display: inline-flex;
  align-items: center;
  gap: 0.06rem;
  color: var(--ml-gold, #cdaf73);
  font-size: 0.95rem;
  line-height: 1;
  letter-spacing: 0.02em;
}

.ml-home-hero .ml-hero-stars__stars span,
.ml-hero-stars__stars span {
  color: var(--ml-gold, #cdaf73);
}

.ml-home-hero .ml-hero-stars__meta,
.ml-hero-stars__meta {
  white-space: nowrap;
}

.ml-home-hero .ml-hero-stars__meta strong,
.ml-hero-stars__meta strong {
  font-weight: 700;
  color: #fff;
}

/* Desktop / tablet >768: rating only; no Free Case Review button */
.ml-home-hero .ml-hero-stars__cta,
.ml-hero-stars__cta {
  display: none !important;
}

@media (max-width: 768px) {
  /* Hide only the hero ghost "Contact details" / Formulario / etc. button */
  .ml-home-hero .ml-hero-ctas .wp-block-button.ml-btn-ghost,
  .ml-home-hero .ml-hero-ctas .ml-btn-ghost {
    display: none !important;
  }

  /* Stars block continues the CTA stack: outline Free Case Review then rating */
  .ml-home-hero .ml-hero-stars,
  .ml-hero-stars {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0.85rem;
    margin-top: 0.85rem !important;
    margin-bottom: 0 !important;
  }

  /* Match .ml-btn-ghost outline: full width, same size as Contact details */
  .ml-home-hero .ml-hero-stars__cta,
  .ml-hero-stars__cta {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    max-width: 100%;
    margin: 0 !important;
    padding: 0.85rem 1.5rem !important;
    box-sizing: border-box !important;
    border-radius: 999px !important;
    border: 1px solid rgba(205, 175, 115, 0.75) !important;
    background: transparent !important;
    color: #fff !important;
    font-family: var(--gp-font--comfortaa, "Comfortaa", system-ui, sans-serif) !important;
    font-size: 0.92rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em;
    line-height: 1.2 !important;
    text-decoration: none !important;
    text-align: center;
    white-space: normal;
    box-shadow: none !important;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
  }

  .ml-home-hero .ml-hero-stars__cta:hover,
  .ml-home-hero .ml-hero-stars__cta:focus,
  .ml-hero-stars__cta:hover,
  .ml-hero-stars__cta:focus {
    background: rgba(205, 175, 115, 0.18) !important;
    border-color: rgba(205, 175, 115, 0.75) !important;
    color: #fff !important;
    text-decoration: none !important;
  }

  .ml-home-hero .ml-hero-stars__rating,
  .ml-hero-stars__rating {
    font-size: 0.88rem;
    flex-wrap: wrap;
  }

  /* Keep trust checks clear of fixed .ml-mobile-call-bar (~108px) */
  .ml-home-hero .ml-hero-trust,
  .ml-home-hero ul.ml-hero-trust {
    margin-top: 0.85rem !important;
    margin-bottom: 1.35rem !important;
    padding-bottom: 0.15rem;
  }

  .ml-home-hero .ml-hero-copy {
    padding-bottom: 0.35rem;
  }
}

html {
  scroll-behavior: smooth;
}
/* =============================================================================
 MAGISA LAW — RU/HY font coverage (append-only to Additional CSS)
 Prepared 2026-10-30. PREVIEW ONLY until owner approves. Nothing live yet.

 ROOT CAUSE
 GeneratePress Font Library serves LATIN-ONLY local WOFF2 files, and
 fonts.css declares them WITHOUT unicode-range (implies all of Unicode):
   Comfortaa  …/comfortaa/1Ptsg8LJRfWJmhDAuUs4TYFq.woff2     (~30 KiB, 0 Cyrillic, 0 Armenian)
   Playfair   …/playfair-display/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2  (~38 KiB, same)
 Missing glyphs then fall to the browser default (often a serif) — that is
 the mismatched body text on /ru/ and /hy/. Comfortaa and Playfair DO support
 Cyrillic on Google Fonts; Armenian needs Noto (neither brand face has it).

 FIX (order matching the brief)
 1) Re-declare the SAME local Latin files with an explicit Latin unicode-range
    so they stop claiming Cyrillic/Armenian code points.
 2) Add Google Fonts Cyrillic ( + Cyrillic-ext) faces for Comfortaa + Playfair
    under the same family names (EN Latin look unchanged; only extra ~19–21 KiB
    downloads when a page actually contains those characters, e.g. "Русский").
 3) For /hy/: Noto Sans Armenian (body/UI) + Noto Serif Armenian (headings),
    unicode-range limited to Armenian, plus lang-scoped stacks.

 Brace-balanced. Append ONCE at end of Appearance → Customize → Additional CSS.
 Do not delete existing GP fonts.css or prior Additional CSS.
 ============================================================================= */

/* --- 1. Pin local Latin faces to Latin only (same files GP already loads) -- */
@font-face {
  font-family: "Comfortaa";
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/comfortaa/1Ptsg8LJRfWJmhDAuUs4TYFq.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Playfair Display";
  font-style: italic;
  font-weight: 400 900;
  font-display: swap;
  src: url("https://magisalaw.com/wp-content/uploads/generatepress/fonts/playfair-display/nuFkD-vYSZviVYUb_rj3ij__anPXDTnogkk7.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- 2. Comfortaa Cyrillic + Cyrillic-ext (Google Fonts, same family name) - */
@font-face {
  font-family: "Comfortaa";
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/comfortaa/v47/1Ptsg8LJRfWJmhDAuUs4QIFqPfE.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: "Comfortaa";
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/comfortaa/v47/1Ptsg8LJRfWJmhDAuUs4SYFqPfE.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* --- 2b. Playfair Display Cyrillic (normal + italic) ----------------------- */
@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/playfairdisplay/v40/nuFiD-vYSZviVYUb_rj3ij__anPXDTjYgFE_.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Playfair Display";
  font-style: italic;
  font-weight: 400 900;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/playfairdisplay/v40/nuFkD-vYSZviVYUb_rj3ij__anPXDTnohkk72xU.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}


@font-face {
  font-family: "Comfortaa ML Cyr";
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/comfortaa/v47/1Ptsg8LJRfWJmhDAuUs4QIFqPfE.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: "Comfortaa ML Cyr";
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/comfortaa/v47/1Ptsg8LJRfWJmhDAuUs4SYFqPfE.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* Alias family so Cyrillic headings win over GP's per-weight Playfair faces
   (those lack unicode-range and still claim every code point). Latin letters
   in the same heading fall through to normal "Playfair Display". */
@font-face {
  font-family: "Playfair Display ML Cyr";
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/playfairdisplay/v40/nuFiD-vYSZviVYUb_rj3ij__anPXDTjYgFE_.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Playfair Display ML Cyr";
  font-style: italic;
  font-weight: 400 900;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/playfairdisplay/v40/nuFkD-vYSZviVYUb_rj3ij__anPXDTnohkk72xU.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* --- 3. Armenian (Noto) — brand faces have zero Armenian glyphs ------------ */
@font-face {
  font-family: "Noto Sans Armenian";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/notosansarmenian/v47/ZgN7jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idbxZhVoDur.woff2") format("woff2");
  unicode-range: U+0308, U+0530-058F, U+2010, U+2024, U+25CC, U+FB13-FB17;
}
@font-face {
  font-family: "Noto Serif Armenian";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("https://fonts.gstatic.com/s/notoserifarmenian/v30/3XFBEqMt3YoFsciDRZxptyCUKJmytZ0kVU-XvF7QaZuL85rnQ9bfH8E2ew.woff2") format("woff2");
  unicode-range: U+0308, U+0530-058F, U+2010, U+2024, U+25CC, U+FB13-FB17;
}

/* Lang-scoped stacks: Latin stays Comfortaa/Playfair; Armenian uses Noto.
   Russian gets a clean sans/serif safety net if a face fails to load. */
html[lang^="hy"] body,
html[lang^="hy"] button,
html[lang^="hy"] input,
html[lang^="hy"] select,
html[lang^="hy"] textarea,
html[lang^="hy"] .main-navigation,
html[lang^="hy"] .wpforms-container,
html[lang^="hy"] .site-footer {
  font-family: "Comfortaa", "Noto Sans Armenian", system-ui, sans-serif;
}
html[lang^="hy"] h1,
html[lang^="hy"] h2,
html[lang^="hy"] h3,
html[lang^="hy"] h4,
html[lang^="hy"] .gb-headline,
html[lang^="hy"] .ml-hero-title,
html[lang^="hy"] .gb-headline.ml-hero-title,
html[lang^="hy"] .ml-sl-num,
html[lang^="hy"] .ml-sl-title,
html[lang^="hy"] .ml-partner-card figcaption strong,
html[lang^="hy"] .ml-intake-phone,
html[lang^="hy"] .ml-hero-form-title,
html[lang^="hy"] body .entry-content h1,
html[lang^="hy"] body .entry-content h2,
html[lang^="hy"] body .entry-content h3,
html[lang^="hy"] body .entry-content h4,
html[lang^="hy"] body:not(.home) .entry-content h1,
html[lang^="hy"] body:not(.home) .entry-content h2,
html[lang^="hy"] body:not(.home) .entry-content h3,
html[lang^="hy"] body:not(.home) .entry-content .gb-headline,
html[lang^="hy"] body:not(.home) .inside-article h1 {
  font-family: "Playfair Display", "Noto Serif Armenian", Georgia, serif !important;
}

html[lang^="ru"] body,
html[lang^="ru"] button,
html[lang^="ru"] input,
html[lang^="ru"] select,
html[lang^="ru"] textarea,
html[lang^="ru"] .main-navigation,
html[lang^="ru"] .wpforms-container,
html[lang^="ru"] .site-footer {
  font-family: "Comfortaa ML Cyr", "Comfortaa", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
html[lang^="ru"] h1,
html[lang^="ru"] h2,
html[lang^="ru"] h3,
html[lang^="ru"] h4,
html[lang^="ru"] .gb-headline,
html[lang^="ru"] .ml-hero-title,
html[lang^="ru"] .gb-headline.ml-hero-title,
html[lang^="ru"] .ml-sl-num,
html[lang^="ru"] .ml-sl-title,
html[lang^="ru"] .ml-partner-card figcaption strong,
html[lang^="ru"] .ml-intake-phone,
html[lang^="ru"] .ml-hero-form-title,
html[lang^="ru"] body .entry-content h1,
html[lang^="ru"] body .entry-content h2,
html[lang^="ru"] body .entry-content h3,
html[lang^="ru"] body .entry-content h4,
html[lang^="ru"] body:not(.home) .entry-content h1,
html[lang^="ru"] body:not(.home) .entry-content h2,
html[lang^="ru"] body:not(.home) .entry-content h3,
html[lang^="ru"] body:not(.home) .entry-content .gb-headline,
html[lang^="ru"] body:not(.home) .inside-article h1 {
  font-family: "Playfair Display ML Cyr", "Playfair Display", "Times New Roman", Georgia, serif !important;
}

/* MAGISA LAW — mid-CTA + tighter section gaps (PREVIEW 2026-10-30)
   APPEND-ONLY to Additional CSS. Do not publish without approval.
   Accounts for existing mobile rule (2026-10-30):
     @media (max-width:768px){
       .entry-content > .gb-container[class*="gb-container-ml"]:not(.gb-container-mlhero01)
         { padding-top:30px!important; padding-bottom:30px!important; }
     }
*/

/* ========== 1. Homepage section gaps ========== */

/* Desktop / tablet: cut .ml-section Y padding ~39% (4.5rem → 2.75rem) */
@media (min-width: 769px) {
  .ml-section,
  .gb-container.ml-section {
    padding-top: 2.75rem !important;    /* was ~4.5rem / 72px → 44px */
    padding-bottom: 2.75rem !important;
  }
  /* Intake band had its own larger padding (4.8 / 5rem) */
  .ml-intake-cta,
  .gb-container.ml-intake-cta {
    padding-top: 3rem !important;       /* was 4.8rem */
    padding-bottom: 3.15rem !important; /* was 5rem */
  }
}

/* Mobile: tighten Areas↔Contact seam + general section rhythm.
   Visual gap before ≈ areas-links mb(27) + areas padB(30) + intake padT(30)
                     + intake .wp-block-group__inner-container padT(25) ≈ 112px.
   Target ≈ 68–72px (~37% less than 112), not cramped. */
@media (max-width: 768px) {
  /* Areas: less bottom pad + less chip-row margin */
  #areas.ml-areas,
  .entry-content > #areas {
    padding-bottom: 20px !important;    /* was 30 via prior rule */
  }
  .ml-areas .ml-areas-links {
    margin-bottom: 16px !important;     /* was ~27px (p default) */
  }

  /* Contact / Ready to talk: less top pad + kill GP inner 25px top */
  #intake.ml-intake-cta,
  .entry-content > #intake {
    padding-top: 20px !important;       /* was 30 */
    padding-bottom: 28px !important;
  }
  #intake .wp-block-group__inner-container,
  #intake .ml-intake-copy > .wp-block-group__inner-container,
  #intake .ml-intake-wrap .wp-block-group__inner-container {
    padding-top: 12px !important;       /* was 25px from GP mobile */
    padding-bottom: 0 !important;       /* was 100px — huge; footer follows anyway */
  }

  /* Other homepage ml-sections: a bit tighter than the existing 30/30 */
  .entry-content > .gb-container[class*="gb-container-ml"]:not(.gb-container-mlhero01):not(#areas):not(#intake) {
    padding-top: 22px !important;
    padding-bottom: 22px !important;
  }

  /* Practice / city pages: calm heading rhythm + article bottom */
  body:not(.home) .inside-article {
    padding-bottom: 28px !important;
  }
  body:not(.home) .entry-content > h2.wp-block-heading,
  body:not(.home) .entry-content > .wp-block-heading {
    margin-top: 1.65rem !important;
    margin-bottom: 0.7rem !important;
  }
  body:not(.home) .entry-content > p {
    margin-bottom: 0.95rem !important;
  }
}

/* Desktop Areas↔Contact: also trim GP inner top pad on intake */
@media (min-width: 769px) {
  #intake .wp-block-group__inner-container,
  #intake .ml-intake-copy > .wp-block-group__inner-container {
    padding-top: 0 !important;
    padding-bottom: 0 !important; /* was 100px from GP */
  }
  .ml-areas .ml-areas-links {
    margin-bottom: 0.75rem !important;
  }
}

/* ========== 2. Mid free-case-review card ==========
   Shown on practice/city pages (not .home). Default: all viewports,
   because WT/practice form sits at page bottom on desktop too.
   Hide on home (hero already has #top-form). */

.ml-mid-cta {
  display: none;
  box-sizing: border-box;
  margin: 1.25rem 0 1.5rem;
  padding: 1.15rem 1.2rem 1.2rem;
  background: var(--ml-cream, #f7f5ef);
  border: 1px solid rgba(205, 175, 115, 0.45);
  border-left: 4px solid var(--ml-gold, #cdaf73);
  border-radius: 6px;
  color: var(--ml-ink, #1a1a14);
  max-width: 40rem;
}

body:not(.home) .ml-mid-cta {
  display: block;
}

.ml-mid-cta__kicker {
  margin: 0 0 0.25rem;
  font-family: Comfortaa, system-ui, sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ml-green-mid, #6b6e58);
}
.ml-mid-cta__title {
  margin: 0 0 0.45rem;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.25;
  color: var(--ml-green-deep, #3a3d30);
}
.ml-mid-cta__lede {
  margin: 0 0 0.95rem;
  font-family: Comfortaa, system-ui, sans-serif;
  font-size: 0.95rem;
  line-height: 1.55;
  color: var(--ml-ink-soft, #3d3f34);
}
.ml-mid-cta__actions {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}
@media (min-width: 600px) {
  .ml-mid-cta__actions {
    flex-direction: row;
    align-items: stretch;
  }
  .ml-mid-cta__btn { flex: 1; width: auto; }
}
.ml-mid-cta__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  padding: 0.8rem 1.1rem;
  font-family: Comfortaa, system-ui, sans-serif;
  font-size: 0.95rem;
  font-weight: 700;
  text-decoration: none !important;
  border-radius: 4px;
  border: 2px solid transparent;
  cursor: pointer;
  text-align: center;
}
.ml-mid-cta__btn--primary {
  background: var(--ml-gold, #cdaf73) !important;
  color: var(--ml-green-ink, #1f2118) !important;
  border-color: var(--ml-gold, #cdaf73);
}
.ml-mid-cta__btn--primary:hover,
.ml-mid-cta__btn--primary:focus {
  background: var(--ml-gold-dark, #9C8B3A) !important;
  border-color: var(--ml-gold-dark, #9C8B3A);
  color: #fff !important;
}
.ml-mid-cta__btn--secondary {
  background: transparent !important;
  color: var(--ml-green-deep, #3a3d30) !important;
  border-color: var(--ml-green-deep, #3a3d30);
}
.ml-mid-cta__btn--secondary:hover,
.ml-mid-cta__btn--secondary:focus {
  background: var(--ml-green-deep, #3a3d30) !important;
  color: #fff !important;
}
.ml-mid-cta__fine {
  margin: 0.7rem 0 0;
  font-family: Comfortaa, system-ui, sans-serif;
  font-size: 0.78rem;
  line-height: 1.45;
  color: var(--ml-muted, #6b6e62);
}


/* Beat practice-page link color/underline (olive body uses gold links) */
.ml-mid-cta a,
.ml-mid-cta a:hover,
.ml-mid-cta a:focus,
.ml-mid-cta a:visited {
  text-decoration: none !important;
}
.ml-mid-cta__btn--primary,
.ml-mid-cta__btn--primary:visited {
  color: var(--ml-green-ink, #1f2118) !important;
}
.ml-mid-cta__btn--secondary,
.ml-mid-cta__btn--secondary:visited {
  color: var(--ml-green-deep, #3a3d30) !important;
}

/* Form anchor: clear sticky mobile call bar (~108px) + header */
#wpforms-20873,
#ml-bottom-form {
  scroll-margin-top: 24px;
  scroll-margin-bottom: 120px;
}

/* Polylang-style lang spans inside one Element (optional) */
.ml-mid-cta .ml-mid-cta-i18n { display: none; }
html[lang^="en"] .ml-mid-cta .ml-mid-cta-i18n[lang="en"],
html[lang^="es"] .ml-mid-cta .ml-mid-cta-i18n[lang="es"],
html[lang^="hy"] .ml-mid-cta .ml-mid-cta-i18n[lang="hy"],
html[lang^="ru"] .ml-mid-cta .ml-mid-cta-i18n[lang="ru"] {
  display: inline;
}
/* Fallback if lang missing: show English */
html:not([lang^="es"]):not([lang^="hy"]):not([lang^="ru"]) .ml-mid-cta .ml-mid-cta-i18n[lang="en"] {
  display: inline;
}

/* === FAQ open icon: law scale (Oct 30) === */
.ml-faq details[open] > summary::after,
.entry-content details[open] > summary::after {
  content: "";
  width: 1.35rem;
  height: 1.35rem;
  background-color: var(--ml-gold-dark, #8a6d2f);
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203v17%22%2F%3E%3Cpath%20d%3D%22M8%2020h8%22%2F%3E%3Cpath%20d%3D%22M4%207h16%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%224%22%20r%3D%221%22%20fill%3D%22black%22%2F%3E%3Cpath%20d%3D%22M6%207l-3%207a3%203%200%200%200%206%200z%22%2F%3E%3Cpath%20d%3D%22M18%207l-3%207a3%203%200%200%200%206%200z%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203v17%22%2F%3E%3Cpath%20d%3D%22M8%2020h8%22%2F%3E%3Cpath%20d%3D%22M4%207h16%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%224%22%20r%3D%221%22%20fill%3D%22black%22%2F%3E%3Cpath%20d%3D%22M6%207l-3%207a3%203%200%200%200%206%200z%22%2F%3E%3Cpath%20d%3D%22M18%207l-3%207a3%203%200%200%200%206%200z%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  animation: mlScaleIn .25s ease-out;
}
@keyframes mlScaleIn { from { opacity: 0; transform: rotate(-12deg) scale(.7); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .ml-faq details[open] > summary::after, .entry-content details[open] > summary::after { animation: none; } }
/* === end FAQ scale === */

/* Mid CTA: primary button text color fix (gold-band pages) */html body .entry-content aside.ml-mid-cta a.ml-mid-cta__btn--primary.ml-mid-cta__btn--primary.ml-mid-cta__btn--primary.ml-mid-cta__btn--primary,html body .entry-content aside.ml-mid-cta a.ml-mid-cta__btn--primary.ml-mid-cta__btn--primary.ml-mid-cta__btn--primary.ml-mid-cta__btn--primary:visited{color:#1f2118 !important;}

/* About v2 sections (partners + how we work) */
.ml-about-v2-partners, .ml-about-v2-how {
  font-family: inherit;
  color: #1f2118;
}
.ml-about-v2-partners {
  background: #f7f5ef;
  padding: 56px 20px 48px;
}
.ml-about-v2-how {
  background: #fff;
  padding: 56px 20px 64px;
  border-top: 1px solid rgba(58,61,48,.12);
}
.ml-about-v2-inner {
  max-width: 1100px;
  margin: 0 auto;
}
.ml-about-v2-partners h2,
.ml-about-v2-how h2 {
  font-size: clamp(1.6rem, 3vw, 2.1rem);
  line-height: 1.2;
  margin: 0 0 8px;
  color: #1f2118;
  font-weight: 600;
}
.ml-about-v2-lede {
  margin: 0 0 28px;
  color: #3a3d30;
  font-size: 1.05rem;
}
.ml-about-v2-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}
@media (min-width: 800px) {
  .ml-about-v2-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
}
.ml-about-v2-card {
  background: #fff;
  border: 1px solid rgba(58,61,48,.14);
  border-radius: 8px;
  padding: 24px 22px 20px;
  box-shadow: 0 1px 0 rgba(31,33,24,.04);
}
.ml-about-v2-card h3 {
  margin: 0 0 4px;
  font-size: 1.2rem;
  color: #1f2118;
}
.ml-about-v2-role {
  margin: 0 0 14px;
  font-size: .9rem;
  color: #3a3d30;
  letter-spacing: .02em;
}
.ml-about-v2-card p {
  margin: 0 0 14px;
  font-size: .98rem;
  line-height: 1.55;
  color: #2a2c22;
}
.ml-about-v2-card a {
  color: #3a3d30;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.ml-about-v2-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 18px;
}
@media (min-width: 900px) {
  .ml-about-v2-steps {
    grid-template-columns: 1fr 1fr;
    gap: 22px 28px;
  }
}
.ml-about-v2-steps li {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  background: #f7f5ef;
  border-radius: 8px;
  padding: 18px 16px;
}
.ml-about-v2-num {
  flex: 0 0 40px;
  width: 40px; height: 40px;
  border-radius: 50%;
  background: #3a3d30;
  color: #e8d4a0;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-size: 1.05rem;
}
.ml-about-v2-steps h3 {
  margin: 2px 0 6px;
  font-size: 1.05rem;
  color: #1f2118;
}
.ml-about-v2-steps p {
  margin: 0;
  font-size: .95rem;
  line-height: 1.5;
  color: #2a2c22;
}
.ml-about-v2-icon-blurb {
  display: block !important;
  margin: 10px 0 14px !important;
  font-size: .95rem !important;
  line-height: 1.5 !important;
  color: #f7f5ef !important;
  font-weight: 400 !important;
  max-width: 280px;
  opacity: .95;
}

/* About v2 (post 4606): intro as body text, spacing, gold band height fix */
.page-id-4606 .gb-headline-64cb9db1{font-family:inherit !important;font-weight:400 !important;font-size:17px !important;line-height:1.7 !important;color:#2a2c22 !important;}
.page-id-4606 .gb-container-327d855e{padding-bottom:16px !important;}
.page-id-4606 .ml-about-v2-partners{padding-top:24px !important;}
.page-id-4606 .gb-container-40ee08af{height:auto !important;min-height:300px;}

/* About v2 intro font fix */html body.page-id-4606:not(.home) .entry-content p.gb-headline.gb-headline-64cb9db1.gb-headline-text{font-family:"Comfortaa",sans-serif !important;font-weight:400 !important;}