:root {
  /* Keil Defense core color system. */
  --kd-bg-gray: #F2EDE4;
  --kd-white: #FFFFFF;
  --kd-graphite: #3D4652;
  --kd-graphite-dark: #303842;
  --kd-graphite-light: #5A6673;
  --kd-ivory: #F7F3EA;
  --kd-oxblood: #6E0F1A;
  --kd-ink: #101418;
  --color-black-slate: #232629;
  --color-graphite: #3D4652;
  --color-slate-blue: #4D6478;
  --color-oxblood: #7A1F2E;
  --color-porcelain: #FAFAF8;
  --color-soft-contrast: #FFFFFF;
  --color-cool-gray: #5E666F;
  --color-oxblood-hover: #7A1F2E;
  --color-oxblood-deep: #7A1F2E;
  --color-oxblood-tint: #7A1F2E;
  --color-logo-black: #232629;
  --color-ivory: #FAFAF8;
  --color-sand: #F2EDE4;
  --color-cream: #F2EDE4;
  --color-paper: #FFFFFF;
  --color-gold: #C9A063;
  --ox-tint: rgba(122,31,46,0.05);
  --color-white: #FFFFFF;
  --color-ink: #232629;
  --color-footer: #3D4652;
  --color-body: #232629;
  --color-muted: #3D4652;
  --color-hairline: #D4D8DC;
  --color-detail-contrast: #3D4652;
  --color-panel: #FFFFFF;
  --color-smoke: #FFFFFF;

  --shadow: 0 20px 60px rgba(35, 38, 41, 0.12);
  --serif-display: "Cormorant Garamond", Garamond, Georgia, serif;
  --serif: "Cormorant Garamond", Garamond, Georgia, serif;
  --sans: "Outfit", "Inter", Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: radial-gradient(circle at 94% 1%, rgba(122,31,46,0.045), transparent 36%), radial-gradient(circle at 3% 90%, rgba(122,31,46,0.03), transparent 40%), var(--color-cream); background-attachment: fixed; color: var(--color-ink); font-family: var(--sans); font-size: 16px; line-height: 1.7; }
body:before { content: ""; position: fixed; inset: 0; pointer-events: none; z-index: -1; background: var(--color-cream); }
body.nav-open { overflow: hidden; }
/* Site search */
.kd-search-trigger {
  appearance: none;
  background: none;
  border: 0;
  color: var(--color-ink);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  transition: color 180ms ease, background 180ms ease, border-color 180ms ease;
}
.kd-search-trigger:hover,
.kd-search-trigger:focus-visible {
  color: var(--color-oxblood);
  outline: 2px solid color-mix(in srgb, var(--color-oxblood) 42%, transparent);
  outline-offset: 3px;
}
.kd-search-overlay {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 10vh 20px 20px;
  background: rgba(20, 26, 36, .55);
  backdrop-filter: blur(2px);
}
.kd-search-overlay[hidden] { display: none; }
.kd-search-panel {
  width: 100%;
  max-width: 640px;
  overflow: hidden;
  background: var(--color-porcelain);
  border: 1px solid var(--color-hairline);
  border-radius: 12px;
  box-shadow: 0 30px 80px rgba(0,0,0,.35);
}
.kd-search-bar {
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--color-hairline);
}
.kd-search-input {
  flex: 1;
  min-width: 0;
  border: 0;
  padding: 18px 20px;
  font-family: var(--sans);
  font-size: 1.05rem;
  color: var(--color-ink);
  background: transparent;
  outline: none;
}
.kd-search-input::placeholder { color: var(--color-muted); }
.kd-search-close {
  appearance: none;
  border: 0;
  background: none;
  color: var(--color-muted);
  cursor: pointer;
  font-size: 1.8rem;
  line-height: 1;
  padding: 0 18px;
}
.kd-search-close:hover,
.kd-search-close:focus-visible {
  color: var(--color-oxblood);
  outline: 2px solid color-mix(in srgb, var(--color-oxblood) 42%, transparent);
  outline-offset: -4px;
}
.kd-search-results {
  list-style: none;
  margin: 0;
  padding: 6px;
  max-height: 50vh;
  overflow-y: auto;
}
.kd-search-results li { margin: 0; }
.kd-search-results a {
  display: block;
  padding: 12px 14px;
  border-radius: 8px;
  color: var(--color-ink);
  text-decoration: none;
}
.kd-search-results a:hover,
.kd-search-results a:focus-visible {
  background: rgba(122,31,46,.08);
  outline: none;
}
.kd-result-title {
  display: block;
  font-weight: 650;
}
.kd-result-desc {
  display: block;
  margin-top: 2px;
  color: var(--color-muted);
  font-size: .88rem;
  line-height: 1.45;
}
.kd-search-empty {
  margin: 0;
  padding: 18px 20px;
  color: var(--color-muted);
}
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
.skip-link, .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link:focus { z-index: 1000; top: 1rem; left: 1rem; width: auto; height: auto; padding: .75rem 1rem; clip: auto; background: var(--color-ink); color: var(--color-ivory); }
.site-header { position: sticky; top: 0; z-index: 50; background: color-mix(in srgb, var(--color-white) 96%, transparent); border-bottom: 1px solid var(--color-hairline); backdrop-filter: blur(14px); }
.nav-shell { width: min(1440px, calc(100% - 48px)); min-height: 96px; margin: 0 auto; display: grid; grid-template-columns: 148px 1fr auto; align-items: center; gap: 1.5rem; padding: .55rem 0; }
.brand,
.footer-logo { position: relative; }
.brand img { width: 126px; }
.brand img,
.footer-logo img {
  filter: none;
  opacity: 0;
}
.brand::before,
.footer-logo::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg,
      var(--color-porcelain) 0%,
      var(--color-porcelain) 30%,
      color-mix(in srgb, var(--color-porcelain) 68%, var(--color-oxblood) 32%) 48%,
      color-mix(in srgb, var(--color-oxblood) 58%, var(--color-porcelain) 42%) 76%,
      color-mix(in srgb, var(--color-oxblood) 66%, var(--color-porcelain) 34%) 100%),
    linear-gradient(90deg,
      color-mix(in srgb, var(--color-oxblood) 42%, transparent) 0%,
      transparent 38%);
  -webkit-mask: url("../keil-defense-logo-white-transparent.png") center / contain no-repeat;
  mask: url("../keil-defense-logo-white-transparent.png") center / contain no-repeat;
}
.brand:hover img,
.footer-logo:hover img { opacity: 0; }
.nav-menu { display: flex; align-items: center; justify-content: center; gap: 1rem; }
.nav-menu a, .nav-call { font-family: var(--sans); font-size: .68rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.nav-menu a { padding: .65rem 0; position: relative; }
.nav-menu a {
  transition: color 180ms ease, text-shadow 180ms ease;
}
.nav-menu a:after { content: ""; position: absolute; left: 0; right: 0; bottom: .35rem; height: 1px; background: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 38%); opacity: 0; transform: scaleX(.45); transition: 180ms ease; }
.nav-menu a:hover,
.nav-menu a:focus-visible,
.nav-menu a:active,
.nav-menu a[aria-current="page"] {
  color: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 38%);
  text-shadow: 0 0 22px color-mix(in srgb, var(--color-oxblood) 28%, transparent);
}
.nav-menu a:hover:after,
.nav-menu a:focus-visible:after,
.nav-menu a:active:after,
.nav-menu a[aria-current="page"]:after { opacity: 1; transform: scaleX(1); }
.nav-payment, .nav-call { border: 1px solid color-mix(in srgb, var(--color-white) 28%, transparent); color: var(--color-ivory); padding: .75rem 1rem !important; }
.nav-client { color: var(--color-muted); }
.nav-call:hover, .nav-payment:hover, .nav-client:hover {
  background: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 14%);
  border-color: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 24%);
  color: var(--color-ivory);
}
.nav-toggle { display: none; }
.mobile-action-bar { display: none; }
.section-shell { width: min(1240px, calc(100% - 48px)); margin: 0 auto; }
.page-hero { position: relative; min-height: 64vh; display: grid; align-items: end; padding: clamp(5.5rem, 10vw, 9rem) 0 clamp(4rem, 7vw, 6rem); background: var(--color-white); border-bottom: 1px solid var(--color-hairline); overflow: hidden; }
.page-hero:before { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: var(--color-ink); opacity: .16; pointer-events: none; }
.page-hero:after { content: ""; position: absolute; right: 0; top: 0; bottom: 0; width: min(30vw, 430px); background: var(--color-sand); border-left: 1px solid var(--color-hairline); pointer-events: none; }
.page-hero-no-art:after { display: none; }
.hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(230px, .34fr); gap: clamp(2rem, 5vw, 5.5rem); align-items: end; }
.hero-grid-no-art { grid-template-columns: minmax(0, 1fr); }
.hero-art { justify-self: stretch; min-height: clamp(260px, 32vw, 430px); display: grid; place-items: center; padding: clamp(1.4rem, 3vw, 2.5rem); background: transparent; border-left: 1px solid color-mix(in srgb, var(--color-oxblood) 22%, transparent); }
.hero-art img { width: min(100%, 230px); filter: grayscale(.1); opacity: .78; }
.hero-photo { min-height: clamp(420px, 44vw, 680px); padding: 0; border-left: 0; background: var(--color-ink); overflow: hidden; }
.hero-photo img { width: 100%; height: 100%; min-height: clamp(420px, 44vw, 680px); object-fit: cover; object-position: center top; filter: grayscale(.28) saturate(.8) contrast(1.06); opacity: .96; }
.eyebrow { margin: 0 0 1rem; color: var(--color-oxblood); font-family: var(--sans); font-size: .68rem; font-weight: 600; letter-spacing: .28em; text-transform: uppercase; }
h1, h2, h3 { margin: 0; color: var(--color-ink); font-family: var(--serif-display); font-weight: 500; line-height: .92; letter-spacing: .018em; }
h1 { max-width: 980px; font-size: clamp(4rem, 7.4vw, 8rem); }
h2 { font-size: clamp(2.5rem, 4.5vw, 4.85rem); }
h3 { font-size: 1.65rem; line-height: 1.02; }
p { color: var(--color-body); }
.hero-copy { max-width: 760px; margin: 1.8rem 0 0; padding-top: 1.35rem; border-top: 1px solid var(--color-oxblood); font-size: clamp(1.08rem, 1.35vw, 1.24rem); line-height: 1.7; }
.hero-trust-line { margin: 1.35rem 0 0; color: var(--color-ink); font-family: var(--sans); font-size: .72rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
.button-row { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 2rem; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 54px; padding: .95rem 1.45rem; border: 1px solid var(--color-oxblood); font-family: var(--sans); font-size: .68rem; font-weight: 600; letter-spacing: .2em; line-height: 1.2; text-align: center; text-transform: uppercase; cursor: pointer; transition: 180ms ease; }
.button:hover { transform: translateY(-1px); box-shadow: none; }
.button-primary {
  background: color-mix(in srgb, var(--color-white) 4%, transparent);
  color: var(--color-ivory);
  border-color: color-mix(in srgb, var(--color-white) 34%, transparent);
}
.button-primary:hover {
  background: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 14%);
  border-color: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 24%);
}
.button-secondary { color: var(--color-oxblood); background: transparent; }
.button-secondary:hover, .button-ghost:hover {
  background: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 14%);
  border-color: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 24%);
  color: var(--color-ivory);
}
.button-ghost { border-color: var(--color-hairline); color: var(--color-ink); }
.action-bar { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: -34px; position: relative; z-index: 2; border: 1px solid var(--color-hairline); background: var(--color-ink); box-shadow: var(--shadow); }
.homepage-ai-band + .action-bar { margin-top: 0; }
.action-bar a { color: var(--color-ivory); padding: 1.35rem 1rem; text-align: center; border-right: 1px solid color-mix(in srgb, var(--color-white) 14%, transparent); font-family: var(--sans); font-weight: 600; letter-spacing: .18em; text-transform: uppercase; font-size: .68rem; }
.action-bar a:hover {
  background: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 14%);
  color: var(--color-ivory);
}
.credentials-strip { display: flex; flex-wrap: wrap; justify-content: center; gap: .85rem clamp(1.2rem, 3vw, 2.4rem); border-top: 1px solid var(--color-hairline); border-bottom: 1px solid var(--color-hairline); margin-top: 0; padding: 1rem 0; }
.credentials-strip article { min-height: auto; padding: 0; border: 0; background: transparent; display: flex; align-items: baseline; gap: .55rem; }
.credentials-strip span { color: var(--color-oxblood); font-family: var(--sans); font-size: .58rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.credentials-strip strong { display: block; margin-top: 0; color: var(--color-ink); font-family: var(--serif); font-weight: 500; font-size: clamp(1.05rem, 1.35vw, 1.26rem); line-height: 1; }
.credentials-strip p { display: none; }
.hero-video { position: relative; min-height: clamp(430px, 48svh, 540px); background: var(--color-ink); color: var(--color-ivory); overflow: hidden; border-bottom: 1px solid color-mix(in srgb, var(--color-white) 16%, transparent); isolation: isolate; }
.hero-video-media { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; min-height: clamp(430px, 48svh, 540px); object-fit: cover; object-position: 72% center; filter: grayscale(.34) saturate(.58) contrast(1.05); transform: scale(1.14); animation: heroVideoDrift 24s ease-in-out infinite alternate; }
.hero-video-overlay { position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, color-mix(in srgb, var(--color-ink) 92%, transparent), color-mix(in srgb, var(--color-ink) 68%, transparent) 46%, color-mix(in srgb, var(--color-ink) 26%, transparent)), linear-gradient(0deg, color-mix(in srgb, var(--color-ink) 64%, transparent), transparent 58%); pointer-events: none; }
.hero-video:after { content: ""; position: absolute; inset: 0; z-index: 1; border-top: 1px solid color-mix(in srgb, var(--color-white) 10%, transparent); border-bottom: 1px solid color-mix(in srgb, var(--color-white) 10%, transparent); pointer-events: none; }
.hero-video-copy { position: relative; z-index: 2; min-height: clamp(430px, 48svh, 540px); }
.hero-carousel { position: relative; min-height: clamp(430px, 48svh, 540px); background: var(--color-ink); color: var(--color-ivory); overflow: hidden; border-bottom: 1px solid color-mix(in srgb, var(--color-white) 16%, transparent); }
.hero-carousel-track { display: grid; grid-auto-flow: column; grid-auto-columns: 100%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.hero-carousel-track::-webkit-scrollbar { display: none; }
.hero-carousel-slide { position: relative; min-height: clamp(430px, 48svh, 540px); display: grid; align-items: end; scroll-snap-align: start; overflow: hidden; isolation: isolate; }
.hero-carousel-copy { width: min(1240px, calc(100% - 48px)); margin: 0 auto; display: flex; flex-direction: column; justify-content: flex-end; padding: clamp(3.3rem, 5vw, 4.7rem) 0 clamp(2.5rem, 4vw, 3.4rem); position: relative; z-index: 2; }
.hero-carousel-copy .eyebrow { color: var(--color-oxblood-tint); }
.hero-carousel-copy h1 { color: var(--color-ivory); font-size: clamp(3.35rem, 5.7vw, 6.1rem); font-weight: 500; line-height: .9; max-width: 760px; text-wrap: balance; }
.hero-carousel-copy p { max-width: 610px; color: var(--color-sand); font-size: clamp(1rem, 1.1vw, 1.12rem); }
.hero-carousel-copy .hero-trust-line { color: var(--color-ivory); font-size: .66rem; }
.hero-video-copy h1, .hero-video-copy p, .hero-video-copy .hero-trust-line { color: var(--color-ivory); text-shadow: 0 2px 22px color-mix(in srgb, var(--color-ink) 72%, transparent); }
.hero-video-copy .eyebrow { color: var(--color-oxblood-tint); text-shadow: 0 2px 18px color-mix(in srgb, var(--color-ink) 70%, transparent); }
.hero-carousel-copy .button-secondary { color: var(--color-ivory); border-color: color-mix(in srgb, var(--color-white) 62%, transparent); }
.hero-video-copy .button-ghost { color: var(--color-ivory); border-color: color-mix(in srgb, var(--color-white) 62%, transparent); background: color-mix(in srgb, var(--color-ink) 24%, transparent); }
.hero-video-copy .button-ghost:hover {
  background: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 14%);
  color: var(--color-ivory);
  border-color: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 24%);
}
.hero-carousel-copy .text-link { color: var(--color-oxblood-tint); }
.hero-carousel-visual { position: absolute; inset: 0; z-index: 0; margin: 0; min-height: inherit; background: var(--color-ink); overflow: hidden; border: 0; }
.hero-carousel-visual:before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, color-mix(in srgb, var(--color-ink) 84%, transparent), color-mix(in srgb, var(--color-ink) 50%, transparent) 42%, color-mix(in srgb, var(--color-ink) 14%, transparent)), linear-gradient(0deg, color-mix(in srgb, var(--color-ink) 56%, transparent), transparent 54%); pointer-events: none; }
.hero-carousel-visual:after { content: ""; position: absolute; inset: 0; z-index: 1; border: 1px solid color-mix(in srgb, var(--color-white) 10%, transparent); border-left: 0; border-right: 0; pointer-events: none; }
.hero-carousel-visual img { width: 100%; height: 100%; min-height: clamp(430px, 48svh, 540px); object-fit: cover; object-position: center center; filter: grayscale(.42) saturate(.52) contrast(1.03); transform: scale(1.03); animation: heroImageZoom 22s ease-in-out infinite alternate; }
.hero-carousel-visual.portrait-visual img { object-position: 54% 18%; filter: grayscale(.22) saturate(.82) contrast(1.05); transform: scale(1.1); animation: heroPortraitZoom 14s ease-in-out infinite alternate; }
.hero-carousel-visual .ai-system-visual { min-height: 100%; border: 0; display: flex; flex-direction: column; justify-content: center; padding: clamp(2rem, 5vw, 5rem); }
.hero-carousel-controls { position: absolute; z-index: 5; right: clamp(1.25rem, 4vw, 4rem); bottom: clamp(1.25rem, 3vw, 2.5rem); display: flex; gap: 1px; border: 1px solid color-mix(in srgb, var(--color-white) 28%, transparent); background: color-mix(in srgb, var(--color-ink) 38%, transparent); backdrop-filter: blur(10px); }
.hero-carousel-controls button { min-width: 74px; min-height: 42px; border: 0; border-right: 1px solid color-mix(in srgb, var(--color-white) 18%, transparent); background: transparent; color: var(--color-ivory); font-family: var(--sans); font-size: .62rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; cursor: pointer; }
.hero-carousel-controls button:hover { background: var(--color-ivory); color: var(--color-ink); }
.top-feature-scroller { background: var(--color-ink); color: var(--color-ivory); border-bottom: 1px solid color-mix(in srgb, var(--color-white) 16%, transparent); overflow: hidden; }
.hero-carousel.top-feature-scroller { background: var(--color-ink); color: var(--color-ivory); border-bottom: 1px solid color-mix(in srgb, var(--color-white) 16%, transparent); }
.top-feature-shell { width: min(1440px, calc(100% - 48px)); margin: 0 auto; padding: clamp(2.6rem, 5vw, 4.8rem) 0; }
.top-feature-header { display: grid; grid-template-columns: 1fr auto; gap: 2rem; align-items: end; margin-bottom: clamp(1.6rem, 3vw, 2.4rem); }
.top-feature-header h2 { color: var(--color-ivory); font-size: clamp(2.4rem, 4.6vw, 5rem); }
.top-feature-header .eyebrow { color: var(--color-oxblood-tint); }
.scroller-controls { display: flex; gap: .7rem; }
.scroller-controls button { min-width: 74px; min-height: 42px; border: 1px solid color-mix(in srgb, var(--color-white) 34%, transparent); background: transparent; color: var(--color-ivory); font-family: var(--sans); font-size: .62rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; cursor: pointer; }
.scroller-controls button:hover { background: var(--color-ivory); color: var(--color-ink); }
.feature-track { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(340px, 42vw); gap: 1px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: color-mix(in srgb, var(--color-white) 45%, transparent) transparent; border-left: 1px solid color-mix(in srgb, var(--color-white) 16%, transparent); }
.feature-slide { min-height: 580px; scroll-snap-align: start; border-right: 1px solid color-mix(in srgb, var(--color-white) 16%, transparent); }
.feature-slide a { display: grid; grid-template-rows: 275px 1fr; height: 100%; color: var(--color-ivory); }
.feature-slide figure { margin: 0; background: var(--color-ink); overflow: hidden; }
.feature-slide img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.2) saturate(.72) contrast(1.05); transition: 260ms ease; }
.feature-slide div { display: flex; flex-direction: column; align-items: flex-start; padding: clamp(1.4rem, 2.6vw, 2.35rem); background: color-mix(in srgb, var(--color-ink) 98%, transparent); }
.feature-slide span { color: var(--color-oxblood-tint); font-family: var(--sans); font-size: .62rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.feature-slide h3 { margin-top: 1rem; color: var(--color-ivory); font-size: clamp(2rem, 3vw, 3.4rem); font-weight: 500; line-height: .96; }
.feature-slide p { color: var(--color-sand); margin: 1.15rem 0 1.8rem; }
.feature-slide strong { margin-top: auto; color: var(--color-oxblood-tint); font-family: var(--sans); font-size: .64rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
.feature-slide a:hover img { transform: scale(1.035); filter: grayscale(.05) saturate(.9) contrast(1.08); }
.feature-slide a:hover strong { color: var(--color-ivory); }
.ai-system-visual { width: 100%; min-height: 100%; padding: clamp(1rem, 2.2vw, 1.7rem); background: linear-gradient(135deg, var(--color-ink), var(--color-ink)); border: 1px solid color-mix(in srgb, var(--color-white) 15%, transparent); color: var(--color-ivory); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--color-oxblood-tint) 6%, transparent); }
.ai-system-topline { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-bottom: .9rem; border-bottom: 1px solid color-mix(in srgb, var(--color-white) 16%, transparent); }
.ai-system-topline span, .ai-system-topline strong, .ai-system-footer span { color: var(--color-oxblood-tint); font-family: var(--sans); font-size: .58rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.ai-system-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; margin-top: 1rem; background: color-mix(in srgb, var(--color-white) 13%, transparent); border: 1px solid color-mix(in srgb, var(--color-white) 13%, transparent); }
.ai-system-node { min-height: 96px; padding: 1rem; background: var(--color-ink); }
.ai-system-node span { color: var(--color-oxblood-tint); font-family: var(--sans); font-weight: 600; letter-spacing: .16em; }
.ai-system-node strong { display: block; margin-top: .4rem; color: var(--color-ivory); font-family: var(--serif); font-weight: 500; font-size: 1.3rem; line-height: .98; }
.ai-system-node small { display: block; margin-top: .45rem; color: var(--color-hairline); font-size: .75rem; line-height: 1.25; }
.ai-system-node.is-active { background: color-mix(in srgb, var(--color-oxblood) 60%, transparent); }
.ai-evidence-stream { display: grid; gap: .55rem; margin-top: 1.2rem; padding: 1rem; border: 1px solid color-mix(in srgb, var(--color-white) 13%, transparent); background: color-mix(in srgb, var(--color-white) 3.5%, transparent); }
.ai-evidence-stream span { display: block; width: var(--w); height: 5px; background: linear-gradient(90deg, var(--color-oxblood-tint), color-mix(in srgb, var(--color-oxblood-tint) 15%, transparent)); }
.ai-system-footer { display: flex; flex-wrap: wrap; gap: .75rem 1rem; margin-top: 1.1rem; }
.homepage-ai-band .ai-system-visual { margin-top: 2rem; min-height: auto; }
.feature-slide .ai-system-visual { border: 0; min-height: 275px; }
.ai-showcase-grid { display: grid; grid-template-columns: .85fr 1fr; gap: clamp(1.5rem, 4vw, 4rem); align-items: stretch; margin-bottom: clamp(2rem, 4vw, 3rem); }
.ai-showcase-grid .ai-system-visual { min-height: 430px; }
.ai-command-showcase { margin-bottom: 1px; }
.ai-command-showcase .ai-system-visual { min-height: 360px; }
.content-section {
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  border-radius: 14px;
  box-shadow: 0 20px 48px -30px rgba(35,38,41,0.20);
  padding: clamp(2rem, 4vw, 3.4rem);
  margin: clamp(1.4rem, 2.6vw, 2.2rem) auto;
}
.section-band {
  background: var(--color-paper);
  border: 1px solid var(--color-hairline);
  border-radius: 14px;
  padding: clamp(2rem, 4vw, 3.4rem);
  margin: clamp(1.4rem, 2.6vw, 2.2rem) auto;
  width: min(1240px, calc(100% - 48px));
}
.section-heading { max-width: 860px; margin-bottom: clamp(1.4rem, 2.4vw, 2rem); }
main > .content-section:first-child,
main > .section-band:first-child { margin-top: clamp(1.6rem, 3vw, 2.6rem); }
main > .content-section:last-child,
main > .section-band:last-child { margin-bottom: clamp(2.4rem, 4vw, 3.6rem); }
.split-heading { max-width: none; display: grid; grid-template-columns: 1.1fr .8fr; gap: 4rem; align-items: end; }
.split-heading > p { margin: 0; color: var(--color-muted); }
.homepage-situation-editorial, .homepage-practice-editorial, .homepage-contact-editorial { padding-top: clamp(4rem, 6vw, 6rem); padding-bottom: clamp(4rem, 6vw, 6rem); }
.editorial-image-band { display: grid; grid-template-columns: minmax(280px, .82fr) minmax(0, 1.18fr); gap: clamp(2rem, 5vw, 5rem); align-items: end; border-top: 1px solid var(--color-hairline); padding-top: clamp(2rem, 4vw, 3.6rem); }
.editorial-image-band figure { grid-row: span 3; position: sticky; top: 130px; align-self: start; margin: 0; background: var(--color-ink); overflow: hidden; min-height: clamp(360px, 42vw, 610px); }
.editorial-image-band img { width: 100%; height: 100%; min-height: clamp(360px, 42vw, 610px); object-fit: cover; filter: grayscale(.42) saturate(.52) contrast(1.03); }
.editorial-image-band > div { max-width: 690px; }
.editorial-image-band > div p { max-width: 620px; }
.homepage-practice-editorial .card-grid { grid-column: 2; grid-template-columns: repeat(2, 1fr); border-left: 0; }
.homepage-practice-editorial .premium-card { min-height: 205px; padding: clamp(1.25rem, 2.2vw, 1.75rem); }
.homepage-practice-editorial .premium-card h3 { font-size: clamp(1.45rem, 1.7vw, 1.78rem); }
.homepage-practice-editorial .section-link { grid-column: 2; }
.card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; background: var(--color-sand); border-top: 1px solid var(--color-hairline); border-left: 1px solid var(--color-hairline); box-shadow: none; }
/* Balanced column counts so the last row is never a single orphaned card */
.card-grid[data-count="1"] { grid-template-columns: 1fr; }
.card-grid[data-count="2"] { grid-template-columns: repeat(2, 1fr); }
.card-grid[data-count="4"] { grid-template-columns: repeat(2, 1fr); }
/* 3 and 6 stay at the base 3 columns (already even). 5, 7, 8 default to 3 columns;
   if 8 appears it becomes an even 4+4 via the rule below. */
.card-grid[data-count="8"] { grid-template-columns: repeat(4, 1fr); }
.premium-card { position: relative; min-height: 270px; padding: clamp(1.55rem, 2.7vw, 2.45rem); background: var(--color-sand); border-right: 1px solid var(--color-hairline); border-bottom: 1px solid var(--color-hairline); transition: 180ms ease; }
.premium-card:before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--color-oxblood); transform: scaleX(0); transform-origin: left; transition: 220ms ease; }
.premium-card:hover { background: var(--color-sand); box-shadow: none; transform: none; position: relative; z-index: 1; }
.premium-card:hover:before { transform: scaleX(1); }
.premium-card-image { margin: calc(clamp(1.35rem, 2.4vw, 2.2rem) * -1) calc(clamp(1.35rem, 2.4vw, 2.2rem) * -1) 1.4rem; border-bottom: 1px solid var(--color-hairline); background: var(--color-ink); overflow: hidden; }
.premium-card-image img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; filter: saturate(.78) contrast(1.06); transition: 240ms ease; }
.premium-card:hover .premium-card-image img { transform: scale(1.025); filter: saturate(.9) contrast(1.08); }
.premium-card span { color: var(--color-oxblood); font-family: var(--sans); font-size: .62rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.premium-card h3 { margin-top: 1.25rem; font-size: clamp(1.75rem, 2.1vw, 2.25rem); font-weight: 500; }
.premium-card p { margin: 1rem 0 0; color: var(--color-muted); }
.content-section .premium-card,
.content-section .recognition-card {
  background: var(--color-paper);
  border-top: 3px solid var(--color-gold);
}
.stake-line { padding-top: 1rem; border-top: 1px solid var(--color-hairline); font-size: .95rem; }
.stake-line strong { color: var(--color-ink); font-family: var(--serif); font-weight: 500; font-size: 1.08rem; }
.homepage-ai-band { width: min(1440px, calc(100% - 48px)); background: transparent; color: var(--color-ink); padding: 0; margin-top: clamp(4rem, 7vw, 7rem); margin-bottom: clamp(4rem, 7vw, 7rem); }
.ai-authority { position: relative; overflow: hidden; }
.ai-authority:after, .tech-command-section:after { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(color-mix(in srgb, var(--color-ivory) 6%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--color-ivory) 5%, transparent) 1px, transparent 1px); background-size: 56px 56px; opacity: .18; }
.homepage-ai-band:after { display: none; }
.ai-authority > *, .tech-command-section > * { position: relative; z-index: 1; }
.homepage-ai-band h2, .homepage-ai-band p { color: var(--color-ink); }
.homepage-ai-band .eyebrow, .homepage-ai-band .text-link { color: var(--color-oxblood); }
.ai-pullquote { margin: 2rem 0 0; padding: 1.4rem 0 0; border-top: 1px solid color-mix(in srgb, var(--color-white) 24%, transparent); color: var(--color-ivory); font-family: var(--serif); font-size: clamp(2rem, 4.2vw, 4.4rem); font-weight: 500; line-height: .96; letter-spacing: .025em; }
.ai-luxury-panel { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .58fr); gap: clamp(1.5rem, 3vw, 3.5rem); align-items: stretch; padding: 0; border-top: 1px solid var(--color-hairline); border-bottom: 1px solid var(--color-hairline); background: var(--color-white); }
.ai-luxury-panel:before { content: "MODERN DEFENSE"; position: absolute; left: 0; top: clamp(1.5rem, 2.5vw, 2.5rem); writing-mode: vertical-rl; transform: rotate(180deg); color: var(--color-oxblood); font-family: var(--sans); font-size: .62rem; font-weight: 700; letter-spacing: .32em; line-height: 1; }
.ai-luxury-panel:after { content: ""; position: absolute; left: clamp(4rem, 7vw, 7rem); right: 0; top: clamp(3.15rem, 5.5vw, 5.7rem); height: 1px; background: var(--color-oxblood); }
.ai-luxury-copy { position: relative; display: flex; flex-direction: column; justify-content: center; padding: clamp(3.2rem, 5.8vw, 6.5rem) 0 clamp(3.2rem, 5.8vw, 6.5rem) clamp(3rem, 7vw, 8rem); }
.ai-luxury-copy:before { content: ""; position: absolute; left: clamp(1.9rem, 5vw, 5.2rem); top: clamp(3.2rem, 5.8vw, 6.5rem); bottom: clamp(3.2rem, 5.8vw, 6.5rem); width: 1px; background: var(--color-hairline); }
.ai-luxury-copy > * { position: relative; z-index: 1; }
.ai-luxury-copy .eyebrow { margin-bottom: clamp(1.2rem, 2vw, 1.9rem); }
.ai-luxury-copy h2 { max-width: 940px; font-size: clamp(3.6rem, 6.8vw, 7.7rem); font-weight: 400; line-height: .82; color: var(--color-ink); }
.ai-luxury-lede { max-width: 760px; margin: clamp(1.25rem, 2vw, 1.75rem) 0 0; color: var(--color-body) !important; font-size: clamp(1.08rem, 1.28vw, 1.28rem); line-height: 1.78; }
.ai-luxury-quote { max-width: 740px; margin: clamp(1.45rem, 2.6vw, 2.35rem) 0; padding: clamp(1.05rem, 1.6vw, 1.35rem) 0; border-top: 1px solid var(--color-hairline); border-bottom: 1px solid var(--color-hairline); color: var(--color-oxblood-deep); font-family: var(--serif-display); font-size: clamp(2rem, 3vw, 3.45rem); font-weight: 400; line-height: 1; }
.ai-luxury-points { display: grid; gap: 0; max-width: 850px; border-top: 1px solid var(--color-hairline); border-bottom: 1px solid var(--color-hairline); }
.ai-luxury-points div { display: grid; grid-template-columns: 3.6rem minmax(170px, .56fr) minmax(0, 1fr); gap: clamp(.9rem, 1.6vw, 1.5rem); align-items: baseline; padding: clamp(.95rem, 1.45vw, 1.2rem) 0; border-bottom: 1px solid var(--color-hairline); }
.ai-luxury-points div:last-child { border-bottom: 0; }
.ai-luxury-points span { color: var(--color-oxblood); font-family: var(--sans); font-size: .68rem; font-weight: 700; letter-spacing: .22em; line-height: 1.4; text-transform: uppercase; }
.ai-luxury-points strong { color: var(--color-ink); font-family: var(--serif-display); font-size: clamp(1.45rem, 2.1vw, 2.2rem); font-weight: 500; line-height: 1; }
.ai-luxury-points p { margin: 0; color: var(--color-body); font-size: .95rem; line-height: 1.64; }
.ai-luxury-note { max-width: 760px; margin-top: clamp(1.35rem, 2vw, 2rem); color: var(--color-muted) !important; }
.ai-luxury-copy .text-link { margin-top: 1.15rem; }
.ai-luxury-image { position: relative; align-self: stretch; margin: 0; min-height: clamp(520px, 48vw, 720px); background: var(--color-ink); overflow: hidden; border-left: 1px solid var(--color-hairline); }
.ai-luxury-image:before { content: ""; position: absolute; inset: clamp(.75rem, 1vw, 1rem); z-index: 1; border: 1px solid color-mix(in srgb, var(--color-white) 18%, transparent); pointer-events: none; }
.ai-luxury-image:after { content: "Evidence / Analysis / Strategy"; position: absolute; left: clamp(1.4rem, 2vw, 2rem); right: clamp(1.4rem, 2vw, 2rem); bottom: clamp(1.4rem, 2vw, 2rem); z-index: 2; color: var(--color-ivory); font-family: var(--sans); font-size: .62rem; font-weight: 700; letter-spacing: .24em; line-height: 1.5; text-transform: uppercase; }
.ai-luxury-image img { width: 100%; height: 100%; min-height: inherit; object-fit: cover; object-position: 68% center; filter: grayscale(.62) saturate(.36) contrast(1.12) brightness(.74); transform: scale(1.12); }
.ai-letter-section { background: var(--color-ink); color: var(--color-porcelain); }
.ai-letter-card { max-width: 980px; margin: 0 auto; padding: clamp(2rem, 4vw, 4rem); border: 1px solid color-mix(in srgb, var(--color-porcelain) 18%, transparent); background: color-mix(in srgb, var(--color-panel) 72%, var(--color-ink) 28%); box-shadow: var(--shadow); }
.ai-letter-card h2 { max-width: 720px; margin: .75rem 0 1.75rem; color: var(--color-porcelain); font-family: var(--serif-display); font-size: clamp(2.8rem, 5vw, 5.4rem); font-weight: 400; line-height: .9; }
.ai-letter-body { max-width: 760px; }
.ai-letter-body p { margin: 0 0 1.25rem; color: var(--color-cool-gray); font-size: clamp(1rem, 1.1vw, 1.08rem); line-height: 1.82; }
.ai-letter-body strong { color: var(--color-porcelain); font-weight: 700; }
.ai-letter-signature { display: grid; justify-items: start; gap: .2rem; margin-top: clamp(1.8rem, 3vw, 2.6rem); padding-top: clamp(1.2rem, 2vw, 1.8rem); border-top: 1px solid color-mix(in srgb, var(--color-porcelain) 14%, transparent); }
.ai-letter-signature img { width: min(320px, 72vw); height: auto; margin-bottom: .15rem; }
.ai-letter-signature strong { color: var(--color-cool-gray); font-family: var(--serif-display); font-size: clamp(1.8rem, 2.5vw, 2.5rem); font-weight: 500; line-height: 1; }
.ai-letter-signature span { color: var(--color-cool-gray); font-family: var(--sans); font-size: .76rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.tech-command-section { position: relative; overflow: hidden; background: var(--color-ink); color: var(--color-ivory); }
.tech-command-section h2, .tech-command-section h3, .tech-command-section p { color: var(--color-ivory); }
.tech-command-section .eyebrow { color: var(--color-oxblood-tint); }
.tech-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid color-mix(in srgb, var(--color-white) 18%, transparent); border-left: 1px solid color-mix(in srgb, var(--color-white) 18%, transparent); }
.tech-grid article { min-height: 280px; padding: clamp(1.3rem, 2.2vw, 2rem); border-right: 1px solid color-mix(in srgb, var(--color-white) 18%, transparent); border-bottom: 1px solid color-mix(in srgb, var(--color-white) 18%, transparent); }
.tech-grid span { color: var(--color-oxblood-tint); font-family: var(--sans); font-size: .62rem; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; }
.tech-grid h3 { margin-top: 1.4rem; }
.tech-grid p { color: var(--color-sand); }
.proof-section .lux-list { max-width: 900px; }
.verify-note { max-width: 850px; }
.media-feature-section .two-column-content { align-items: center; }
.media-feature-section .premium-card { min-height: 300px; background: transparent; color: var(--color-porcelain); }
.media-feature-section .premium-card h3 { font-size: clamp(2.2rem, 4vw, 4.3rem); }
.media-feature-section .premium-card h3 { color: var(--color-soft-contrast); }
.media-feature-section .premium-card p { color: var(--color-porcelain); }
.media-feature-section .premium-card span, .media-feature-section .premium-card .text-link { color: var(--color-soft-contrast); }
.media-card-grid { grid-template-columns: 1fr; }
.practice-fit-strip { display: grid; grid-template-columns: 1.1fr .9fr; gap: clamp(1.5rem, 4vw, 4rem); align-items: center; border-top: 1px solid var(--color-hairline); border-bottom: 1px solid var(--color-hairline); }
.practice-fit-strip h2 { font-size: clamp(2.1rem, 4vw, 3.8rem); }
.responsive-image-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin: 2rem 0; background: var(--color-hairline); border: 1px solid var(--color-hairline); }
.premium-image-card { min-height: 285px; padding: clamp(1.35rem, 2.4vw, 2.2rem); background: var(--color-ivory); }
.image-photo-card { padding: 0; overflow: hidden; display: grid; grid-template-rows: auto 1fr; }
.image-photo-card figure { margin: 0; background: var(--color-ink); }
.image-photo-card img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; filter: saturate(.8) contrast(1.06); }
.image-photo-card > div { padding: clamp(1.35rem, 2.4vw, 2.2rem); }
.premium-image-card span { color: var(--color-oxblood); font-family: var(--sans); font-size: .62rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.premium-image-card h3 { margin-top: 1.2rem; }
.premium-image-card p { margin: .85rem 0 0; color: var(--color-muted); font-size: .95rem; }
.premium-image-card code { font-size: .86rem; color: var(--color-ink); white-space: normal; }
.image-placeholder { background: linear-gradient(135deg, var(--color-ivory), var(--color-sand)); }
.editorial-portrait-frame { border: 1px solid var(--color-hairline); background: var(--color-ink); overflow: hidden; }
.editorial-portrait-frame img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.9) contrast(1.05); }
.courthouse-image-section { border-top: 1px solid var(--color-hairline); }
.dark-image-hero { position: relative; color: var(--color-ivory); background: var(--color-ink); }
.dark-image-hero:before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, color-mix(in srgb, var(--color-ink) 86%, transparent), color-mix(in srgb, var(--color-ink) 42%, transparent)); pointer-events: none; }
.ivory-image-block { background: var(--color-ivory); }
.result-card { min-height: 520px; }
.result-details { margin: 1.2rem 0 0; display: grid; gap: .85rem; }
.result-details div { border-top: 1px solid var(--color-hairline); padding-top: .8rem; }
.result-details dt { color: var(--color-oxblood); font-family: var(--sans); font-size: .62rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
.result-details dd { margin: .25rem 0 0; color: var(--color-ink); }
.mini-disclaimer { font-size: .78rem; line-height: 1.55; color: var(--color-muted); }
.results-prose-section { background: linear-gradient(180deg, var(--color-graphite), var(--color-black-slate)); color: var(--color-porcelain); }
.results-prose-section .section-heading { margin-bottom: 1.4rem; }
.results-disclaimer { border-left: 3px solid color-mix(in srgb, var(--color-oxblood) 68%, var(--color-porcelain) 32%); background: color-mix(in srgb, var(--color-graphite) 82%, var(--color-oxblood) 18%); color: var(--color-porcelain); font-style: italic; }
.results-prose-list { display: grid; gap: clamp(2rem, 4vw, 3.6rem); margin-top: clamp(2rem, 4vw, 3.4rem); }
.results-category { display: grid; gap: 0; border-top: 1px solid color-mix(in srgb, var(--color-oxblood) 28%, var(--color-hairline)); }
.results-category > h2 { margin: 0; padding: 1.15rem 0 1.25rem; font-size: clamp(2rem, 3.5vw, 3.6rem); color: var(--color-porcelain); }
.result-writeup { padding: 1.35rem 0; border-top: 1px solid var(--color-hairline); }
.result-writeup h3 { margin: 0 0 .65rem; font-size: clamp(1.15rem, 1.8vw, 1.6rem); color: var(--color-porcelain); }
.result-writeup p { margin: 0; max-width: 920px; color: var(--color-cool-gray); line-height: 1.75; }
.featured-result-writeup { padding-left: 1.2rem; border-left: 3px solid color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 38%); background: color-mix(in srgb, var(--color-porcelain) 5%, transparent); }
.featured-result-writeup h3 { font-size: clamp(1.3rem, 2vw, 1.9rem); }
.penalty-note { margin: 0 0 1.2rem; color: var(--color-muted); font-size: .95rem; }
.section-lead { max-width: 860px; margin: -1rem 0 2rem; color: var(--color-muted); font-size: 1.05rem; }
.recognition-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.recognition-card h3 { margin-top: .6rem; }
.recognition-card a { color: var(--color-ink); text-decoration-color: color-mix(in srgb, var(--color-oxblood) 64%, transparent); text-underline-offset: .18em; }
.ivory-section { background: var(--color-sand); border-top: 1px solid var(--color-hairline); border-bottom: 1px solid var(--color-hairline); }
.situation-group { margin-top: clamp(1.4rem, 3vw, 2.6rem); }
.situation-group h3 { margin: 0 0 1rem; color: var(--color-oxblood); font-family: var(--serif); font-size: clamp(1.45rem, 2.3vw, 1.95rem); font-weight: 500; letter-spacing: .03em; }
.situation-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--color-hairline); border: 1px solid var(--color-hairline); }
.urgent-situation .situation-row { grid-template-columns: repeat(3, 1fr); }
.situation-pill { min-height: 132px; display: flex; flex-direction: column; justify-content: space-between; padding: 1.2rem; background: var(--color-white); transition: background .2s ease, color .2s ease, transform .2s ease; }
.situation-pill span { color: var(--color-oxblood); font-family: var(--sans); font-size: .58rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.situation-pill strong { display: block; color: var(--color-ink); font-family: var(--serif); font-weight: 500; font-size: clamp(1.55rem, 2.15vw, 1.95rem); line-height: .98; }
.situation-pill:hover { background: var(--color-ink); transform: translateY(-2px); }
.situation-pill:hover span, .situation-pill:hover strong { color: var(--color-ivory); }
.homepage-situation-editorial .situation-row { gap: clamp(.8rem, 1.5vw, 1.2rem); background: transparent; border: 0; }
.homepage-situation-editorial .situation-pill { background: var(--color-white); min-height: 132px; padding: clamp(1rem, 2vw, 1.45rem); border: 1px solid var(--color-hairline); box-shadow: 0 16px 34px color-mix(in srgb, var(--color-ink) 5%, transparent); }
.homepage-situation-editorial .situation-pill strong { font-size: clamp(1.35rem, 1.62vw, 1.62rem); line-height: 1.03; }
.homepage-situation-editorial .situation-pill:hover { background: var(--color-ink); transform: translateY(-2px); }
.homepage-situation-editorial .situation-pill:hover strong, .homepage-situation-editorial .situation-pill:hover span { color: var(--color-ivory); }
.review-card { min-height: 300px; }
.review-card blockquote { margin: 1rem 0 0; color: var(--color-ink); font-family: var(--serif); font-size: clamp(1.15rem, 1.35vw, 1.34rem); line-height: 1.28; font-weight: 500; }
.homepage-review-grid .review-card { min-height: 0; padding-top: 1.45rem; }
.homepage-review-grid .review-card blockquote { font-size: clamp(1.04rem, 1.12vw, 1.18rem); line-height: 1.32; }
.review-meta { margin-top: .4rem; color: var(--color-muted); font-size: .9rem; }
.stars { margin-top: 1rem; color: var(--color-oxblood); font-family: var(--sans); font-size: .9rem; font-weight: 600; letter-spacing: .12em; }
.testimonial-disclaimer { margin-top: 1.35rem; padding: 1rem 0 0; border-top: 1px solid var(--color-hairline); max-width: 980px; }
.testimonial-disclaimer span { display: block; margin-bottom: .35rem; color: var(--color-oxblood); font-family: var(--sans); font-size: .62rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.testimonial-disclaimer p { margin: 0; color: var(--color-muted); font-size: .9rem; line-height: 1.55; }
.review-hero-panel { display: grid; grid-template-columns: .7fr 1.3fr; gap: 1rem; margin-bottom: 3rem; }
.rating-badge { border: 1px solid var(--color-hairline); background: var(--color-ivory); padding: clamp(1.5rem, 3vw, 2.4rem); }
.rating-badge span { color: var(--color-oxblood); font-family: var(--sans); font-size: .62rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
.rating-badge strong { display: block; margin: .6rem 0; font-family: var(--serif); font-weight: 500; font-size: clamp(3rem, 7vw, 5.5rem); line-height: .86; }
.review-flip-grid { align-items: stretch; perspective: 1600px; }
.review-flip-card {
  min-height: clamp(430px, 36vw, 560px);
  position: relative;
  border: 1px solid color-mix(in srgb, var(--color-white) 12%, transparent);
  background: transparent;
  color: var(--color-ivory);
  cursor: pointer;
  outline: none;
  perspective: 1600px;
}
.review-flip-card:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-soft-contrast) 72%, transparent), 0 24px 80px color-mix(in srgb, var(--color-black-slate) 28%, transparent);
  border-color: var(--color-soft-contrast);
}
.review-flip-inner {
  position: relative;
  width: 100%;
  min-height: inherit;
  transform-style: preserve-3d;
  transition: transform 600ms cubic-bezier(.22, .61, .36, 1);
}
@media (hover: hover) and (pointer: fine) {
  .review-flip-card:hover .review-flip-inner { transform: rotateY(180deg); }
}
.review-flip-card.is-flipped .review-flip-inner,
.review-flip-card[aria-pressed="true"] .review-flip-inner { transform: rotateY(180deg); }
.review-flip-face {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-height: 100%;
  padding: clamp(1.35rem, 2.6vw, 2.35rem);
  overflow-y: auto;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.review-flip-front {
  justify-content: space-between;
  background:
    linear-gradient(180deg, var(--color-white), var(--color-panel));
}
.review-flip-back {
  background:
    linear-gradient(180deg, var(--color-white), var(--color-panel));
  transform: rotateY(180deg);
}
.review-flip-face span,
.flip-affordance {
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
}
.review-flip-face h3 { margin: 0; color: var(--color-ink); font-size: clamp(2rem, 3vw, 3.4rem); }
.review-flip-face .stars { color: var(--color-oxblood); letter-spacing: .12em; font-size: .95rem; }
.review-flip-face p,
.review-flip-face blockquote {
  margin: 0;
  color: var(--color-graphite);
  font-size: clamp(1rem, 1.15vw, 1.12rem);
  line-height: 1.7;
}
.review-flip-back blockquote { font-family: var(--serif); font-size: clamp(1.02rem, 1.3vw, 1.25rem); line-height: 1.55; }
.review-flip-face .review-meta { margin-top: auto; color: var(--color-cool-gray); font-size: .82rem; }
.flip-affordance { margin-top: auto; display: inline-flex; align-items: center; gap: .45rem; }
.review-flip-carousel { display: grid; gap: 1rem; margin-top: clamp(1.4rem, 3vw, 2.2rem); }
.review-flip-carousel-controls { display: flex; justify-content: flex-end; gap: .6rem; }
.review-flip-carousel-controls .icon-button {
  min-width: 58px;
  height: 44px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--color-oxblood);
  background: var(--color-oxblood);
  color: var(--color-white);
  font-family: var(--sans);
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}
.review-flip-carousel-controls .icon-button:hover,
.review-flip-carousel-controls .icon-button:focus-visible {
  background: #5F1724;
  border-color: #5F1724;
  color: var(--color-white);
  transform: translateY(-1px);
  outline: none;
}
.review-flip-carousel-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(340px, 42vw);
  gap: 1rem;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x mandatory;
  scroll-padding: 1rem;
  padding: .25rem .25rem 1rem;
  scrollbar-color: var(--color-oxblood) transparent;
}
.review-flip-carousel-track:focus-visible {
  outline: 2px solid var(--color-oxblood);
  outline-offset: 4px;
}
.review-carousel-card {
  scroll-snap-align: start;
  min-height: clamp(460px, 38vw, 620px);
}
.endorsement-card { min-height: 420px; }
.endorsement-card blockquote { margin: 1.25rem 0 0; padding: 1.2rem 0 0; border-top: 1px solid var(--color-hairline); color: var(--color-ink); font-family: var(--serif); font-weight: 500; font-size: 1.38rem; line-height: 1.25; }
.endorsement-card blockquote p { margin: 0 0 1rem; }
.featured-endorsement-card { grid-column: 1 / -1; border-left: 3px solid color-mix(in srgb, var(--color-oxblood) 64%, var(--color-porcelain) 36%); }
.featured-endorsement-card blockquote { font-size: clamp(1.18rem, 1.7vw, 1.7rem); }
.endorsement-media { min-height: 92px; display: grid; place-items: center; margin-bottom: 1.25rem; border: 1px solid var(--color-hairline); background: var(--color-white); color: var(--color-muted); font-size: .82rem; text-align: center; }
.endorsement-carousel { display: grid; gap: 1rem; }
.endorsement-carousel-controls { display: flex; justify-content: flex-end; gap: .6rem; }
.endorsement-carousel-controls .icon-button {
  min-width: 52px;
  height: 42px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--color-hairline);
  background: var(--color-white);
  color: var(--color-ink);
  font-family: var(--sans);
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}
.endorsement-carousel-controls .icon-button:hover,
.endorsement-carousel-controls .icon-button:focus-visible {
  background: color-mix(in srgb, var(--color-oxblood) 76%, var(--color-porcelain) 24%);
  border-color: color-mix(in srgb, var(--color-oxblood) 76%, var(--color-porcelain) 24%);
  color: var(--color-porcelain);
  transform: translateY(-1px);
  outline: none;
}
.endorsement-carousel-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(300px, calc((100% - 3rem) / 3.25));
  gap: 1rem;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: .1rem;
  padding: .15rem .15rem .85rem;
  scrollbar-color: color-mix(in srgb, var(--color-oxblood) 42%, var(--color-muted) 58%) transparent;
}
.endorsement-carousel-track:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--color-oxblood) 70%, var(--color-porcelain) 30%);
  outline-offset: 4px;
}
.endorsement-carousel-card {
  min-height: 0;
  max-height: min(680px, 72vh);
  overflow-y: auto;
  scroll-snap-align: start;
  background: var(--color-porcelain);
  color: var(--color-ink);
  border-color: color-mix(in srgb, var(--color-hairline) 82%, var(--color-oxblood) 18%);
  box-shadow: none;
}
.endorsement-carousel-card.featured-endorsement-card { grid-column: auto; }
.endorsement-carousel-card span { color: var(--color-oxblood); }
.endorsement-carousel-card:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--color-oxblood) 68%, var(--color-porcelain) 32%);
  outline-offset: -6px;
}
.endorsement-carousel-card blockquote {
  font-size: clamp(1.08rem, 1.34vw, 1.32rem);
  line-height: 1.34;
}
.endorsement-carousel-card.featured-endorsement-card blockquote { font-size: clamp(1.06rem, 1.22vw, 1.2rem); }
@media (prefers-reduced-motion: reduce) {
  .endorsement-carousel-track { scroll-behavior: auto; }
  .endorsement-carousel-controls .icon-button { transition: none; }
}
.single-card-grid { display: grid; grid-template-columns: 1fr; }
.peer-mini { margin-top: 1.4rem; padding-top: 1.4rem; border-top: 1px solid var(--color-hairline); }
.peer-mini .endorsement-card { min-height: 0; background: var(--color-white); }
.peer-mini .endorsement-card blockquote { font-size: clamp(1.15rem, 1.45vw, 1.45rem); }
.bottom-notice { margin-top: 2rem; }
.is-hidden { display: none !important; }
.text-link { display: inline-flex; margin-top: 1.2rem; color: var(--color-oxblood); font-family: var(--sans); font-weight: 600; letter-spacing: .16em; text-transform: uppercase; font-size: .68rem; }
.see-also { margin-top: 1rem; font-size: .9rem; color: var(--color-muted); }
.see-also a.text-link-inline { color: var(--color-oxblood); text-decoration: underline; text-underline-offset: 2px; font-weight: 600; }
/* Make in-content links clearly clickable (underlined) without affecting buttons, CTAs, nav, footer, or cards */
.article-fragment a:not(.button):not(.button-primary):not(.button-secondary):not(.fasd-download-link):not(.text-link-inline) {
  color: var(--color-oxblood);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
.article-fragment a:not(.button):not(.button-primary):not(.button-secondary):not(.fasd-download-link):not(.text-link-inline):hover,
.article-fragment a:not(.button):not(.button-primary):not(.button-secondary):not(.fasd-download-link):not(.text-link-inline):focus-visible {
  text-decoration-thickness: 2px;
  color: #5F1724;
}
.see-also a.text-link-inline:hover { text-decoration: none; }
.section-link { margin-top: 2rem; }
.feature-grid, .attorney-layout, .county-layout, .contact-layout, .two-column-content { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(2rem, 6vw, 6rem); align-items: start; }
.statement-list { display: grid; border-top: 1px solid var(--color-hairline); }
.statement-list span { padding: 1.1rem 0; border-bottom: 1px solid var(--color-hairline); color: var(--color-ink); font-family: var(--serif); font-size: 1.45rem; font-weight: 500; }
.about-credentials-list {
  margin-top: 2rem;
  padding: .35rem 1.15rem;
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  border-top: 2px solid var(--color-oxblood);
  box-shadow: 0 16px 44px color-mix(in srgb, var(--color-ink) 5%, transparent);
}
.about-credentials-list span {
  color: var(--color-graphite) !important;
  border-bottom-color: var(--color-hairline);
  font-family: var(--sans);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.about-credentials-list span:nth-child(2n) {
  color: var(--color-graphite) !important;
}
.compact-link-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-left: 1px solid var(--color-hairline); border-top: 1px solid var(--color-hairline); }
.compact-link-grid a { min-height: 150px; padding: clamp(1.1rem, 2vw, 1.6rem); border-right: 1px solid var(--color-hairline); border-bottom: 1px solid var(--color-hairline); background: transparent; transition: 180ms ease; }
.compact-link-grid a:hover { background: var(--color-white); }
.compact-link-grid span { display: block; color: var(--color-oxblood); font-family: var(--sans); font-size: .58rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.compact-link-grid strong { display: block; margin-top: .85rem; color: var(--color-ink); font-family: var(--serif); font-weight: 500; font-size: clamp(1.5rem, 2.15vw, 2rem); line-height: .98; }
.compact-contact-section .button-row { margin-bottom: 1rem; }
.home-county-teaser { display: none; }
.community-list { display: flex; flex-wrap: wrap; gap: .8rem; }
.community-list span { display: inline-flex; align-items: center; min-height: 44px; padding: .65rem 1rem; border: 1px solid var(--color-hairline); background: var(--color-white); color: var(--color-ink); font-family: var(--sans); font-weight: 600; letter-spacing: .08em; }
.process-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1px; background: var(--color-hairline); border: 1px solid var(--color-hairline); }
.process-grid div { min-height: 155px; padding: 1.4rem; background: var(--color-ivory); }
.process-grid span { color: var(--color-oxblood); font-family: var(--sans); font-weight: 600; letter-spacing: .2em; }
.process-grid strong { display: block; margin-top: 1rem; font-family: var(--serif); font-weight: 500; font-size: 1.48rem; line-height: .98; }
.timeline-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1px; background: var(--color-hairline); border: 1px solid var(--color-hairline); }
.timeline-grid article { min-height: 150px; padding: 1.3rem; background: var(--color-ivory); }
.timeline-grid span { color: var(--color-oxblood); font-family: var(--sans); font-weight: 600; letter-spacing: .2em; }
.method-grid { grid-template-columns: repeat(3, 1fr); }
.breadcrumbs { width: min(1180px, calc(100% - 40px)); margin: 2rem auto 0; display: flex; flex-wrap: wrap; gap: .65rem; color: var(--color-muted); font-size: .85rem; }
.breadcrumbs a { color: var(--color-oxblood); }
.lux-list { margin: 1.5rem 0 0; padding: 0; list-style: none; border-top: 1px solid var(--color-hairline); }
.lux-list li { padding: 1rem 0; border-bottom: 1px solid var(--color-hairline); }
.faq-list { display: grid; gap: .5rem; }
.faq-list details { border: 1px solid var(--color-hairline); background: var(--color-ivory); padding: .85rem 1.2rem; }
.faq-list summary { cursor: pointer; font-family: var(--serif); font-size: 1.25rem; font-weight: 500; }
.faq-list p { margin-bottom: 0; }
.portrait-placeholder, .map-placeholder, .search-placeholder, .upload-placeholder, .payment-panel, .notice { border: 1px solid var(--color-hairline); background: var(--color-sand); padding: 2rem; }
.portrait-placeholder { min-height: 420px; display: grid; place-items: center; text-align: center; }
.portrait-placeholder img { width: min(70%, 300px); opacity: .75; }
.attorney-photo { padding: 0; overflow: hidden; background: var(--color-ink); min-height: 620px; }
.attorney-photo img { width: 100%; height: 100%; min-height: 620px; object-fit: cover; object-position: center top; opacity: 1; filter: saturate(.88) contrast(1.04); }
.compact-list { margin-top: 2rem; }
.courthouse { background: linear-gradient(135deg, var(--color-sand), var(--color-ivory)); }
.courthouse small { display: block; max-width: 360px; margin-top: .75rem; color: var(--color-muted); font-size: .82rem; }
.courthouse-portrait { margin: 0; border: 1px solid var(--color-hairline); background: var(--color-ink); overflow: hidden; }
.courthouse-portrait img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; filter: saturate(.78) contrast(1.06); }
.courthouse-portrait figcaption { padding: 1rem 1.2rem; color: var(--color-ivory); font-size: .82rem; background: var(--color-ink); }
.wide-copy { max-width: 850px; }
.blog-search-row { display: grid; gap: .55rem; margin-bottom: 1rem; max-width: 680px; }
.blog-search-row label { color: var(--color-ink); font-family: var(--sans); font-size: .72rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.blog-search-row input { width: 100%; border: 1px solid var(--color-hairline); background: var(--color-white); color: var(--color-ink); padding: .95rem 1rem; font: inherit; }
.topic-cluster-row { display: flex; flex-wrap: wrap; gap: .75rem 1.1rem; margin: 0 0 1.35rem; }
.topic-cluster-row a { font-size: .72rem; }
.filter-row { display: flex; flex-wrap: wrap; gap: .7rem; margin: 0 0 2rem; }
.filter-row button { border: 1px solid var(--color-hairline); background: transparent; color: var(--color-oxblood); padding: .65rem .9rem; font-family: var(--sans); font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.filter-row button.is-active, .filter-row button:hover { background: var(--color-oxblood); border-color: var(--color-oxblood); color: var(--color-ivory); }
.centered-actions { justify-content: center; }
.disclaimer-text { margin-top: 2rem; color: var(--color-muted); font-size: .92rem; }
.guide-capture { display: grid; grid-template-columns: 1fr 1fr 1fr auto; gap: 1rem; align-items: end; margin-top: 2rem; padding: 1.5rem; border: 1px solid var(--color-hairline); background: var(--color-ivory); }
.guide-capture label { display: grid; gap: .45rem; font-family: var(--sans); font-weight: 600; letter-spacing: .16em; text-transform: uppercase; font-size: .68rem; }
.guide-capture input { height: 52px; border: 1px solid var(--color-hairline); background: var(--color-white); padding: 0 .9rem; }
.guide-capture p { grid-column: 1 / -1; margin: 0; color: var(--color-muted); font-size: .9rem; }
.lux-form { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; width: 100%; max-width: 100%; box-sizing: border-box; padding: clamp(1.4rem, 3vw, 2.4rem); border: 1px solid var(--color-hairline); background: var(--color-sand); box-shadow: 0 18px 60px color-mix(in srgb, var(--color-ink) 8%, transparent); }
.lux-form label { display: grid; gap: .45rem; color: var(--color-ink); font-family: var(--sans); font-size: .68rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.lux-form input, .lux-form select, .lux-form textarea { width: 100%; border: 1px solid var(--color-hairline); border-radius: 0; background: var(--color-white); color: var(--color-ink); font-family: var(--sans); font-size: 1rem; letter-spacing: 0; outline: none; }
.lux-form input, .lux-form select { height: 52px; padding: 0 .9rem; }
.lux-form textarea { padding: .9rem; resize: vertical; }
.lux-form input:focus, .lux-form select:focus, .lux-form textarea:focus { border-color: var(--color-oxblood); box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-oxblood) 10%, transparent); }
.lux-form .full { grid-column: 1 / -1; }
.checkbox { display: flex !important; flex-direction: row; align-items: start; gap: .7rem !important; text-transform: none !important; letter-spacing: 0 !important; font-family: var(--sans) !important; font-weight: 500 !important; }
.checkbox input { width: auto; height: auto; margin-top: .45rem; }
.form-status { min-height: 1.4em; color: var(--color-oxblood); font-weight: 700; }
.form-note { margin: .25rem 0; color: var(--color-muted); font-size: .92rem; line-height: 1.55; }
.intake-form { grid-template-columns: repeat(3, 1fr); }
.blog-article { padding: clamp(4rem, 7vw, 7rem) 0; }
.reading-progress { position: sticky; top: 104px; z-index: 10; height: 3px; background: transparent; }
.reading-progress span { display: block; width: 0; height: 100%; background: var(--color-oxblood); }
.article-header { max-width: 900px; }
.article-header h1 { font-size: clamp(3.5rem, 7vw, 7rem); }
.article-meta { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 1.5rem; color: var(--color-muted); font-size: .9rem; }
.toc { margin: 3rem 0; padding: 1.5rem; border: 1px solid var(--color-hairline); background: var(--color-sand); max-width: 520px; }
.short-answer { margin: 0 0 2rem; max-width: 820px; padding: clamp(1.5rem, 2.6vw, 2rem); border: 1px solid #E6DAC2; border-top: 6px solid var(--color-oxblood); border-radius: 0; background: #FBF8F2; box-shadow: none; }
.short-answer strong { font-family: var(--serif); font-weight: 500; font-size: 1.48rem; }
.practice-section-nav-shell { padding-top: 0; }
.practice-section-nav { display: flex; flex-wrap: wrap; gap: .55rem; padding: .85rem 0 1.25rem; border-top: 1px solid var(--color-hairline); border-bottom: 1px solid var(--color-hairline); }
.practice-section-nav a { padding: .62rem .82rem; border: 1px solid var(--color-hairline); background: var(--color-white); color: var(--color-ink); font-family: var(--sans); font-size: .68rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.practice-section-nav a:hover { color: var(--color-ivory); background: var(--color-oxblood); border-color: var(--color-oxblood); }
.practice-resource-preview { padding-top: clamp(2.4rem, 5vw, 4rem); padding-bottom: clamp(2.7rem, 5vw, 4.5rem); }
.author-card { display: grid; grid-template-columns: 96px 1fr; gap: 1.25rem; align-items: center; max-width: 760px; margin: 2rem 0 3rem; padding: 1.25rem; border: 1px solid var(--color-hairline); background: var(--color-white); }
.author-card img { width: 96px; height: 96px; object-fit: cover; border-radius: 50%; filter: grayscale(100%); }
.author-card h2 { margin: .1rem 0 .35rem; font-size: clamp(1.8rem, 3vw, 2.6rem); }
.author-card p { margin: 0; }
.blog-article section { margin-top: 3rem; max-width: 760px; }
.blog-article section h2 { font-size: clamp(1.9rem, 2.6vw, 2.5rem); line-height: 1.12; margin-bottom: .85rem; }
.blog-article section h3 { font-size: clamp(1.4rem, 1.9vw, 1.7rem); line-height: 1.18; margin-bottom: .6rem; }
/* Reading column for law-guide fragment body (content not wrapped in <section>) */
.article-fragment,
.blog-article > p,
.blog-article > ul,
.blog-article > ol,
.blog-article > h2,
.blog-article > h3 { max-width: 760px; }
.article-fragment h2 { font-size: clamp(1.9rem, 2.6vw, 2.5rem); line-height: 1.12; margin: 2.4rem 0 .85rem; }
.article-fragment h3 { font-size: clamp(1.4rem, 1.9vw, 1.7rem); line-height: 1.18; margin: 1.8rem 0 .6rem; }
.article-fragment p,
.article-fragment li { max-width: 70ch; line-height: 1.65; }

/* ===== Editorial law-guide layout ===== */
.law-editorial-header { background: var(--color-white); border-bottom: 1px solid var(--color-hairline); padding: clamp(2.5rem, 5vw, 4rem) 0 clamp(1.8rem, 3vw, 2.6rem); }
.law-editorial-header__inner { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.law-editorial-header .eyebrow { color: var(--color-oxblood); letter-spacing: .18em; text-transform: uppercase; font-size: .74rem; font-weight: 700; margin: 0; }
.law-editorial-header h1 { font-family: var(--serif-display); font-weight: 400; font-size: clamp(2.4rem, 4.4vw, 3.6rem); line-height: 1.08; color: var(--color-ink); margin: .5rem 0 0; max-width: 22ch; }
.law-editorial-header__rule { width: 88px; height: 3px; background: var(--color-oxblood); margin: 1.1rem 0 1.2rem; }
.law-editorial-header .article-meta { display: flex; flex-wrap: wrap; gap: .5rem 1.4rem; color: var(--color-muted); font-size: .82rem; margin: 0; }
/* ===== Radar Minnesota header (light, Option B separation) ===== */
.kd-head { position: relative; overflow: hidden; background: radial-gradient(circle at 86% 30%, rgba(122,31,46,0.06), transparent 52%), var(--color-paper); border-bottom: 1px solid var(--color-hairline); padding: clamp(2.8rem,5vw,4.6rem) 0; min-height: 380px; display: flex; align-items: center; }
.kd-head__inner { position: relative; z-index: 2; width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.kd-head .eyebrow { color: var(--color-oxblood); letter-spacing: .2em; text-transform: uppercase; font-size: .72rem; font-weight: 600; margin: 0; }
.kd-head h1 { font-family: var(--serif-display); font-weight: 500; font-size: clamp(2.1rem,4.2vw,3.3rem); line-height: 1.07; color: var(--color-ink); margin: .55rem 0 0; max-width: 21ch; }
.kd-head__rule { width: 120px; height: 3px; background: linear-gradient(90deg, var(--color-oxblood), var(--color-gold)); margin: 1.05rem 0; border: 0; }
.kd-head .article-meta { display: flex; flex-wrap: wrap; gap: .4rem 1.3rem; color: var(--color-muted); font-size: .82rem; margin: 0; }
.kd-mn { position: absolute; right: 5%; top: 50%; transform: translateY(-50%); height: 84%; z-index: 1; pointer-events: none; }
.kd-mn-fill { fill: rgba(122,31,46,0.04); stroke: rgba(122,31,46,0.42); stroke-width: 1.1; }
.kd-mn .kd-ring { fill: none; stroke: rgba(201,160,99,0.16); stroke-width: 1; }
.kd-mn .kd-pulse { fill: none; stroke: rgba(122,31,46,0.5); stroke-width: 1.4; opacity: 0; }
.kd-mn-ring { fill: none; stroke: rgba(201,160,99,0.55); stroke-width: 1.4; }
.kd-mn-dot { fill: var(--color-oxblood); }
@keyframes kdpulse { 0% { r: 6; opacity: .55; } 70% { opacity: 0; } 100% { r: 135; opacity: 0; } }
@media (prefers-reduced-motion: no-preference) {
  .kd-mn .kd-pulse1 { animation: kdpulse 4s ease-out infinite; }
  .kd-mn .kd-pulse2 { animation: kdpulse 4s ease-out infinite 1.3s; }
  .kd-mn .kd-pulse3 { animation: kdpulse 4s ease-out infinite 2.6s; }
}
@media (max-width: 760px){ .kd-mn { opacity: .35; } .kd-head h1 { max-width: 100%; } }
.law-guide-hero {
  isolation: isolate;
  min-height: clamp(440px, 52vw, 660px);
  border-bottom: 0;
  background:
    linear-gradient(90deg, rgba(10,14,20,.96) 0%, rgba(10,14,20,.90) 36%, rgba(10,14,20,.42) 72%, rgba(10,14,20,.22) 100%),
    radial-gradient(60% 80% at 14% 8%, rgba(122,31,46,.18), transparent 62%),
    url("/assets/law-guide/law-guide-header-map.png");
  background-color: #0A0E14;
  background-size: cover;
  background-position: center right;
  background-repeat: no-repeat;
  color: #F7F5F1;
  padding: clamp(5.6rem, 9vw, 9rem) 0 clamp(4.4rem, 7vw, 7rem);
}
.law-guide-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 1;
  height: clamp(80px, 11vw, 130px);
  background: linear-gradient(to bottom, transparent, rgba(10,14,20,.72));
  pointer-events: none;
}
.law-guide-hero .kd-head__inner {
  z-index: 2;
}
.law-guide-hero .kd-head__inner > * {
  max-width: 760px;
}
.law-guide-hero .eyebrow {
  color: #C9A063;
  letter-spacing: .18em;
  text-shadow: 0 2px 18px rgba(0,0,0,.52);
}
.law-guide-hero h1 {
  max-width: 13.5ch;
  color: #FFFFFF;
  font-size: clamp(3.2rem, 6vw, 6.4rem);
  font-weight: 400;
  line-height: .98 !important;
  letter-spacing: 0;
  text-shadow: 0 12px 42px rgba(0,0,0,.58);
}
.law-guide-hero .kd-head__rule {
  background: linear-gradient(90deg, var(--color-oxblood), #C9A063);
  box-shadow: 0 0 24px rgba(201,160,99,.22);
}
.law-guide-hero .article-meta {
  color: rgba(247,245,241,.78);
}
.law-guide-hero a {
  color: #F7F5F1;
}
.law-guide-hero--image {
  background:
    linear-gradient(90deg, rgba(10,14,20,.96) 0%, rgba(10,14,20,.86) 34%, rgba(10,14,20,.44) 68%, rgba(10,14,20,.18) 100%),
    radial-gradient(60% 80% at 14% 8%, rgba(122,31,46,.18), transparent 62%),
    var(--law-header-image);
  background-color: #0A0E14;
  background-size: cover;
  background-position: center right;
  background-repeat: no-repeat;
}
.blog-header-hero {
  margin: 0 calc(50% - 50vw) clamp(2rem, 4vw, 3rem);
  width: 100vw;
}
.blog-header-hero .hero-copy {
  color: rgba(247, 245, 241, 0.92);
  border-top-color: rgba(201, 160, 99, 0.55);
  text-shadow: 0 2px 16px rgba(0, 0, 0, 0.45);
}
.blog-header-hero .button-secondary {
  color: #F7F5F1;
  border-color: rgba(247, 245, 241, 0.6);
  background: transparent;
}
.blog-header-hero .button-secondary:hover,
.blog-header-hero .button-secondary:focus-visible {
  background: rgba(247, 245, 241, 0.12);
  border-color: #F7F5F1;
}
.blog-header-hero .button-ghost {
  color: #F7F5F1;
  border-color: rgba(247, 245, 241, 0.45);
  background: rgba(10, 14, 20, 0.28);
}
.blog-header-hero .button-ghost:hover,
.blog-header-hero .button-ghost:focus-visible {
  background: rgba(247, 245, 241, 0.12);
  border-color: #F7F5F1;
}
.blog-header-hero.law-guide-hero--image {
  background:
    linear-gradient(90deg, rgba(10,14,20,.94) 0%, rgba(10,14,20,.82) 30%, rgba(10,14,20,.30) 64%, rgba(10,14,20,.06) 100%),
    radial-gradient(60% 80% at 14% 8%, rgba(122,31,46,.18), transparent 62%),
    var(--law-header-image);
  background-color: #0A0E14;
  background-size: cover;
  background-position: center right;
  background-repeat: no-repeat;
}
@media (max-width: 900px) {
  .law-guide-hero {
    min-height: clamp(420px, 62vw, 580px);
    background:
      linear-gradient(90deg, rgba(10,14,20,.96) 0%, rgba(10,14,20,.86) 62%, rgba(10,14,20,.66) 100%),
      url("/assets/law-guide/law-guide-header-map.png");
    background-position: 62% center;
  }
  .law-guide-hero--image {
    background:
      linear-gradient(90deg, rgba(10,14,20,.96) 0%, rgba(10,14,20,.86) 64%, rgba(10,14,20,.62) 100%),
      var(--law-header-image);
    background-size: cover;
    background-position: 58% center;
    padding: clamp(4.6rem, 12vw, 7rem) 0 clamp(3.5rem, 10vw, 5.5rem);
  }
  .law-guide-hero h1 {
    max-width: 100%;
    font-size: clamp(2.65rem, 12vw, 4.9rem);
  }
}
/* Shared dark video headers */
.video-page-hero {
  position: relative;
  z-index: 1;
  min-height: clamp(340px, 46svh, 500px);
  display: grid;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
  color: var(--color-white);
  background:
    radial-gradient(70% 90% at 16% 4%, rgba(201,160,99,.14), transparent 64%),
    linear-gradient(135deg, #111820 0%, #232B36 48%, #303842 100%);
  padding: clamp(2.8rem, 5vw, 4.6rem) clamp(1.5rem, 6vw, 5rem) clamp(2.35rem, 4vw, 3.6rem);
}
.video-page-hero__video {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 64% center;
  filter: grayscale(.08) saturate(.84) contrast(1.08) brightness(.88);
}
.video-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(14,19,27,.94) 0%, rgba(14,19,27,.76) 34%, rgba(14,19,27,.38) 64%, rgba(14,19,27,.14) 100%),
    radial-gradient(58% 78% at 14% 8%, rgba(201,160,99,.14), transparent 62%),
    linear-gradient(0deg, rgba(14,19,27,.62) 0%, rgba(14,19,27,.10) 54%, rgba(14,19,27,.38) 100%);
}
.video-page-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  height: clamp(90px, 12vw, 120px);
  background: linear-gradient(to bottom, transparent 0%, var(--color-cream) 100%);
  pointer-events: none;
}
.video-page-hero__inner {
  position: relative;
  z-index: 3;
  width: min(1180px, 100%);
  margin: 0 auto;
}
.video-page-hero__inner > * {
  max-width: 54ch;
}
.video-page-hero .eyebrow {
  color: rgba(203,168,119,.92);
  letter-spacing: .22em;
  text-transform: uppercase;
  text-shadow: 0 2px 18px rgba(0,0,0,.56);
}
.video-page-hero h1 {
  max-width: 13ch;
  margin: .7rem 0 1.2rem;
  color: var(--color-white);
  font-family: var(--serif-display);
  font-weight: 400;
  font-size: clamp(2.8rem, 6vw, 5.4rem);
  line-height: 1.02 !important;
  text-shadow: 0 8px 38px rgba(0,0,0,.58);
}
.video-page-hero__subtitle {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: clamp(1.08rem, 1.5vw, 1.28rem);
  line-height: 1.62;
  text-shadow: 0 2px 20px rgba(0,0,0,.58);
}
.video-page-hero__support {
  margin: .85rem 0 0;
  color: rgba(203,168,119,.86);
  font-size: .86rem;
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1.55;
  text-transform: uppercase;
  text-shadow: 0 2px 18px rgba(0,0,0,.58);
}
.video-page-hero__disclaimer {
  max-width: 58ch;
  margin: .75rem 0 0;
  color: rgba(247,243,234,.76);
  font-size: .78rem;
  line-height: 1.55;
  text-shadow: 0 2px 18px rgba(0,0,0,.58);
}
.video-page-hero__actions {
  margin: clamp(1.5rem, 2.4vw, 2.1rem) 0 0;
}
.video-page-hero__actions .button-secondary {
  color: var(--color-white);
  border-color: rgba(247,243,234,.62);
  background: rgba(255,255,255,.08);
}
.video-page-hero__actions .button-secondary:hover,
.video-page-hero__actions .button-secondary:focus-visible {
  color: #FFFFFF;
  border-color: #C9A063;
  background: rgba(122,31,46,.22);
}
.video-page-hero--results {
  min-height: clamp(260px, 34svh, 380px);
  padding-top: clamp(1.6rem, 3vw, 2.6rem);
  padding-bottom: clamp(1.45rem, 2.6vw, 2.2rem);
}
.video-page-hero--results h1 {
  max-width: 15ch;
  margin: .45rem 0 .75rem;
  font-size: clamp(2.35rem, 4.5vw, 4.2rem);
}
.video-page-hero--results .video-page-hero__subtitle {
  max-width: 56ch;
}
.video-page-hero--results .video-page-hero__actions {
  margin-top: clamp(1rem, 1.8vw, 1.45rem);
}
@media (max-width: 760px) {
  .video-page-hero {
    min-height: clamp(390px, 52svh, 540px);
    padding: clamp(2.8rem, 8vw, 4.2rem) clamp(1.2rem, 5vw, 2rem);
  }
  .video-page-hero__video {
    object-position: 58% center;
  }
  .video-page-hero__overlay {
    background:
      linear-gradient(90deg, rgba(14,19,27,.94), rgba(14,19,27,.56)),
      linear-gradient(0deg, rgba(14,19,27,.68), rgba(14,19,27,.16) 58%, rgba(14,19,27,.44));
  }
  .video-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.6rem, 10vw, 4.1rem);
  }
  .video-page-hero__actions .button {
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .video-page-hero--about {
    background:
      linear-gradient(90deg, rgba(14,19,27,.94), rgba(14,19,27,.62)),
      radial-gradient(130% 120% at 50% 0%, #1a2230 0%, #141A24 55%, #0e131b 100%);
  }
  .video-page-hero--reviews {
    background:
      linear-gradient(90deg, rgba(14,19,27,.94), rgba(14,19,27,.62)),
      radial-gradient(130% 120% at 50% 0%, #1a2230 0%, #141A24 55%, #0e131b 100%);
  }
  .video-page-hero--results {
    background:
      linear-gradient(90deg, rgba(14,19,27,.94), rgba(14,19,27,.62)),
      radial-gradient(130% 120% at 50% 0%, #1a2230 0%, #141A24 55%, #0e131b 100%);
  }
  .video-page-hero--practice {
    background:
      linear-gradient(90deg, rgba(14,19,27,.94), rgba(14,19,27,.62)),
      radial-gradient(130% 120% at 50% 0%, #1a2230 0%, #141A24 55%, #0e131b 100%);
  }
  .video-page-hero--home {
    background:
      linear-gradient(90deg, rgba(14,19,27,.94), rgba(14,19,27,.62)),
      radial-gradient(130% 120% at 50% 0%, #1a2230 0%, #141A24 55%, #0e131b 100%);
  }
  .video-page-hero--insights {
    background:
      linear-gradient(90deg, rgba(14,19,27,.94), rgba(14,19,27,.62)),
      radial-gradient(130% 120% at 50% 0%, #1a2230 0%, #141A24 55%, #0e131b 100%);
  }
  .video-page-hero--contact {
    background:
      linear-gradient(90deg, rgba(14,19,27,.94), rgba(14,19,27,.62)),
      radial-gradient(130% 120% at 50% 0%, #1a2230 0%, #141A24 55%, #0e131b 100%);
  }
  .video-page-hero__video {
    animation: none;
  }
}

/* Contact page redesign */
.contact-redesign-hero {
  position: relative;
  isolation: isolate;
  min-height: clamp(560px, 70svh, 760px);
  display: grid;
  align-items: center;
  overflow: hidden;
  color: var(--color-white);
  background: #0e131b;
  padding: clamp(4.8rem, 8vw, 7.4rem) clamp(1.5rem, 5vw, 4rem) clamp(4rem, 6vw, 5.5rem);
}
.contact-redesign-hero__video,
.contact-redesign-hero__overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.contact-redesign-hero__video {
  z-index: 0;
  object-fit: cover;
  object-position: 62% center;
  filter: saturate(.82) contrast(1.12) brightness(.68);
}
.contact-redesign-hero__overlay {
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(7,11,16,.96) 0%, rgba(9,13,19,.82) 38%, rgba(9,13,19,.46) 66%, rgba(9,13,19,.22) 100%),
    radial-gradient(circle at 68% 42%, rgba(201,160,99,.22), transparent 34%),
    linear-gradient(0deg, rgba(7,11,16,.72), rgba(7,11,16,.10) 46%, rgba(7,11,16,.58));
}
.contact-redesign-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  height: clamp(90px, 12vw, 130px);
  background: linear-gradient(to bottom, transparent, var(--color-cream));
  pointer-events: none;
}
.contact-redesign-hero__topline,
.contact-redesign-hero__inner {
  position: relative;
  z-index: 3;
  width: min(1280px, 100%);
  margin: 0 auto;
}
.contact-redesign-hero__topline {
  position: absolute;
  top: clamp(1.2rem, 2.4vw, 2rem);
  left: clamp(1.5rem, 5vw, 4rem);
  right: clamp(1.5rem, 5vw, 4rem);
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
}
.contact-redesign-hero__logo img {
  width: clamp(82px, 9vw, 118px);
  height: auto;
  display: block;
  filter: drop-shadow(0 16px 30px rgba(0,0,0,.38));
}
.contact-redesign-hero__utility {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.contact-redesign-hero__utility > a:first-child {
  color: var(--color-white);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  text-shadow: 0 4px 18px rgba(0,0,0,.55);
}
.contact-redesign-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
}
.contact-redesign-hero__copy {
  max-width: 620px;
}
.contact-redesign-hero .eyebrow {
  color: var(--color-gold);
  letter-spacing: .18em;
  text-shadow: 0 3px 18px rgba(0,0,0,.6);
}
.contact-redesign-hero h1 {
  max-width: 9ch;
  margin: .8rem 0 1.25rem;
  color: #FFFFFF;
  font-family: var(--serif-display);
  font-size: clamp(4rem, 7.7vw, 8rem);
  font-weight: 400;
  line-height: .96 !important;
  text-shadow: 0 12px 44px rgba(0,0,0,.65);
}
.contact-redesign-hero p {
  max-width: 44ch;
  color: rgba(255,255,255,.88);
  font-size: clamp(1.02rem, 1.35vw, 1.18rem);
  line-height: 1.65;
  text-shadow: 0 3px 18px rgba(0,0,0,.58);
}
.contact-redesign-hero strong {
  display: block;
  max-width: 40ch;
  margin-top: 1rem;
  color: var(--color-gold);
  font-size: .82rem;
  letter-spacing: .14em;
  line-height: 1.6;
  text-transform: uppercase;
  text-shadow: 0 3px 18px rgba(0,0,0,.58);
}
.contact-redesign-shell {
  width: 100%;
  max-width: 100%;
  margin-inline: auto;
  box-sizing: border-box;
  position: relative;
  background: #FFFFFF;
  box-shadow: 0 0 0 100vw #FFFFFF;
  clip-path: inset(0 -100vw);
}
.contact-redesign-intake {
  display: grid;
  grid-template-columns: minmax(0, .38fr) minmax(0, .62fr);
  gap: 0;
  align-items: stretch;
  width: 100%;
  max-width: 1280px;
  margin-inline: auto;
  margin-top: 0;
  border: 1px solid #FFFFFF;
  background: var(--color-white);
  box-shadow: 0 0 0 100vw #FFFFFF, 0 24px 70px rgba(35,38,41,.13);
  overflow: hidden;
}
.contact-redesign-panel {
  min-width: 0;
  box-sizing: border-box;
}
.contact-redesign-panel--firm {
  position: relative;
  overflow: hidden;
  min-width: 0;
  padding: clamp(2.4rem, 4vw, 4.2rem);
  color: #FFFFFF;
  background:
    linear-gradient(135deg, rgba(122,31,46,.97), rgba(80,9,19,.98)),
    radial-gradient(circle at 18% 12%, rgba(255,255,255,.18), transparent 36%);
}
.contact-redesign-panel--firm::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .14;
  background:
    linear-gradient(90deg, transparent 0 34%, rgba(255,255,255,.16) 34% 34.5%, transparent 34.5%),
    repeating-linear-gradient(90deg, transparent 0 16px, rgba(255,255,255,.08) 17px 18px);
  pointer-events: none;
}
.contact-redesign-panel--firm > * {
  position: relative;
  z-index: 1;
}
.contact-redesign-panel--firm .eyebrow {
  color: rgba(247,243,234,.9);
}
.contact-redesign-panel--firm h2 {
  color: #FFFFFF;
  font-size: clamp(2.4rem, 4vw, 4.25rem);
  line-height: 1.06 !important;
  margin: .75rem 0 1.2rem;
}
.contact-redesign-panel--firm p {
  color: rgba(247,243,234,.86);
  font-size: 1.04rem;
  line-height: 1.7;
}
.contact-redesign-details {
  display: grid;
  gap: 1.35rem;
  margin: clamp(2rem, 3vw, 3rem) 0;
}
.contact-redesign-details a,
.contact-redesign-details > span,
.contact-redesign-urgent,
.contact-redesign-action-grid a,
.contact-redesign-action-grid > span {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
  color: inherit;
  text-decoration: none;
}
.contact-redesign-details svg,
.contact-redesign-urgent svg,
.contact-redesign-action-grid svg {
  width: 30px;
  height: 30px;
  fill: none;
  stroke: var(--color-gold);
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.contact-redesign-details strong,
.contact-redesign-urgent strong,
.contact-redesign-action-grid span > span {
  min-width: 0;
  display: block;
  color: #FFFFFF;
  font-family: var(--sans);
  font-size: .95rem;
  letter-spacing: 0;
  line-height: 1.45;
  text-transform: none;
}
.contact-redesign-details small,
.contact-redesign-urgent small,
.contact-redesign-action-grid small {
  min-width: 0;
  display: block;
  margin-top: .18rem;
  color: rgba(247,243,234,.72);
  font-size: .82rem;
  line-height: 1.42;
}
.contact-redesign-details strong,
.contact-redesign-details small,
.contact-redesign-urgent strong,
.contact-redesign-urgent small {
  overflow-wrap: anywhere;
}
.contact-redesign-urgent {
  margin-top: clamp(2rem, 3vw, 3rem);
  padding: 1.4rem;
  border: 1px solid rgba(247,243,234,.32);
  background: rgba(0,0,0,.10);
}
.contact-redesign-urgent em,
.contact-path-card em {
  display: inline-flex;
  margin-top: .9rem;
  color: var(--color-gold);
  font-style: normal;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.contact-redesign-urgent em::after,
.contact-path-card em::after {
  content: " ->";
}
.contact-redesign-panel--form {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  height: 100%;
  padding: clamp(2rem, 3vw, 3rem) clamp(2.5rem, 5vw, 5rem);
  background: #FFFFFF;
  box-sizing: border-box;
  overflow: visible;
}
.contact-redesign-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .9rem 1.45rem;
  width: 100%;
  max-width: 880px;
  margin-inline: auto;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  box-sizing: border-box;
}
.contact-redesign-form > * {
  min-width: 0;
}
.contact-redesign-form label {
  min-width: 0;
  color: var(--color-ink);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  box-sizing: border-box;
}
.contact-redesign-form input,
.contact-redesign-form select,
.contact-redesign-form textarea {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  margin-top: .42rem;
  background: #FFFFFF;
  border: 1.5px solid color-mix(in srgb, var(--color-ink) 32%, var(--color-hairline));
  border-radius: 4px;
  min-height: 46px;
  padding: .7rem .85rem;
}
.contact-redesign-form textarea {
  min-height: 136px;
}
.contact-redesign-form .form-note {
  display: block;
  margin: .25rem 0 0;
  color: var(--color-muted);
  font-size: .82rem;
  line-height: 1.5;
  letter-spacing: 0;
  text-transform: none;
}
.contact-redesign-form .button {
  min-height: 58px;
  justify-content: center;
}
.contact-redesign-booking {
  display: grid;
  grid-template-columns: .72fr 1fr;
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
  margin-top: clamp(1.8rem, 3vw, 2.6rem);
  padding: clamp(2rem, 3.8vw, 3.4rem);
  border: 1px solid color-mix(in srgb, var(--color-gold) 48%, var(--color-hairline));
  background: rgba(255,255,255,.72);
  box-shadow: 0 20px 60px rgba(35,38,41,.10);
}
.contact-redesign-booking h2 {
  margin: .75rem 0 0;
  font-size: clamp(2.1rem, 3.8vw, 4rem);
  line-height: 1.08 !important;
}
.contact-redesign-booking p {
  color: var(--color-muted);
  line-height: 1.7;
}
.contact-redesign-diamonds {
  display: flex;
  gap: .8rem;
  margin-top: 1.3rem;
}
.contact-redesign-diamonds span {
  width: 8px;
  height: 8px;
  background: var(--color-oxblood);
  transform: rotate(45deg);
}
.contact-redesign-paths {
  margin-top: clamp(1.8rem, 3vw, 2.6rem);
}
.contact-redesign-paths .section-heading {
  margin-bottom: .7rem;
}
.contact-redesign-path-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.contact-path-card {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: clamp(1.2rem, 2vw, 2.2rem);
  align-items: center;
  min-height: 190px;
  padding: clamp(1.6rem, 3vw, 2.4rem);
  color: var(--color-ink);
  text-decoration: none;
  border: 1px solid color-mix(in srgb, var(--color-gold) 30%, var(--color-hairline));
  background: rgba(255,255,255,.72);
  box-shadow: 0 20px 60px rgba(35,38,41,.09);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.contact-path-card + .contact-path-card {
  border-left: 0;
}
.contact-path-card:hover,
.contact-path-card:focus-visible {
  transform: translateY(-3px);
  border-color: rgba(122,31,46,.42);
  box-shadow: 0 26px 70px rgba(35,38,41,.13);
}
.contact-path-card__icon {
  width: 88px;
  height: 88px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: var(--color-oxblood);
  color: #FFFFFF;
}
.contact-path-card__icon svg {
  width: 42px;
  height: 42px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.contact-path-card strong {
  display: block;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(1.55rem, 2.1vw, 2.2rem);
  font-weight: 500;
  line-height: 1.12;
}
.contact-path-card small {
  display: block;
  margin-top: .75rem;
  color: var(--color-muted);
  font-size: .94rem;
  line-height: 1.55;
}
.contact-redesign-prefooter {
  margin-top: clamp(2rem, 4vw, 3rem);
  color: #FFFFFF;
  background:
    linear-gradient(90deg, #7A1F2E 0%, #5F1724 52%, #7A1F2E 100%),
    repeating-linear-gradient(90deg, transparent 0 18px, rgba(255,255,255,.06) 19px 20px);
}
.contact-redesign-prefooter__inner {
  width: min(1240px, calc(100% - 48px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: clamp(1.5rem, 4vw, 4rem);
  align-items: center;
  padding: clamp(1.6rem, 3vw, 2.4rem) 0;
}
.contact-redesign-prefooter__brand {
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr);
  gap: 1.4rem;
  align-items: center;
}
.contact-redesign-prefooter__brand > span {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(201,160,99,.55);
  font-family: var(--serif-display);
  font-size: 2.8rem;
  color: #FFFFFF;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.16);
}
.contact-redesign-prefooter h2 {
  margin: 0;
  color: #FFFFFF;
  font-size: clamp(1.65rem, 2.5vw, 2.6rem);
  line-height: 1.12 !important;
}
.contact-redesign-prefooter p {
  margin: .35rem 0 0;
  color: rgba(247,243,234,.78);
}
.contact-redesign-action-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.contact-redesign-action-grid a,
.contact-redesign-action-grid > span {
  padding: .6rem 1.1rem;
  border-left: 1px solid rgba(247,243,234,.28);
}
.contact-redesign-action-grid span > span {
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.contact-redesign-action-grid small {
  font-size: .74rem;
  letter-spacing: 0;
  text-transform: none;
}
@media (max-width: 980px) {
  .contact-redesign-intake {
    grid-template-columns: minmax(280px, .36fr) minmax(0, .64fr);
  }
  .contact-redesign-panel--firm,
  .contact-redesign-panel--form {
    padding: clamp(1.55rem, 2.6vw, 2.4rem) clamp(1.75rem, 4vw, 2.75rem);
  }
}
@media (max-width: 940px) {
  .contact-redesign-intake,
  .contact-redesign-booking,
  .contact-redesign-prefooter__inner {
    grid-template-columns: 1fr;
  }
  .contact-redesign-action-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
  }
  .contact-redesign-action-grid a,
  .contact-redesign-action-grid > span {
    border: 1px solid rgba(247,243,234,.22);
  }
}
@media (max-width: 700px) {
  .contact-redesign-hero {
    min-height: 620px;
  }
  .contact-redesign-hero__topline {
    position: relative;
    inset: auto;
    width: min(1280px, 100%);
    margin-bottom: 2.4rem;
    flex-direction: column;
  }
  .contact-redesign-hero__utility {
    width: 100%;
    align-items: stretch;
    flex-direction: column;
  }
  .contact-redesign-hero__utility .button {
    width: 100%;
  }
  .contact-redesign-hero h1 {
    font-size: clamp(3.3rem, 16vw, 5rem);
  }
  .contact-redesign-shell,
  .contact-redesign-prefooter__inner {
    width: min(1240px, calc(100% - 28px));
  }
  .contact-redesign-form,
  .contact-redesign-path-grid,
  .contact-redesign-action-grid {
    grid-template-columns: 1fr;
  }
  .contact-path-card {
    grid-template-columns: 72px minmax(0, 1fr);
    min-height: 0;
  }
  .contact-path-card + .contact-path-card {
    border-left: 1px solid color-mix(in srgb, var(--color-gold) 30%, var(--color-hairline));
    border-top: 0;
  }
  .contact-path-card__icon {
    width: 62px;
    height: 62px;
  }
}

/* Insights page header */
.insights-editorial-header { background: var(--color-sand); padding: clamp(2.5rem, 5vw, 4.5rem) clamp(1.5rem, 6vw, 5rem) clamp(1.8rem, 3vw, 2.6rem); }
.insights-editorial-header .law-editorial-header__inner { max-width: 820px; margin-inline: 0; padding-left: max(48px, calc((100% - 1180px) / 2 + 48px)); }
.insights-editorial-header h1 { max-width: 18ch; }
.insights-editorial-header__lede { max-width: 60ch; margin: 0 0 1.6rem; color: var(--color-muted); font-size: clamp(1rem, 1.3vw, 1.18rem); line-height: 1.6; }
.insights-editorial-header__actions { margin: 0; }
.kd-head--index .kd-head__inner > * { max-width: none; }
.kd-head--index .insights-editorial-header__lede { max-width: 60ch; color: var(--color-muted); margin: 0 0 1.6rem; }
.insights-video-hero {
  position: relative;
  min-height: clamp(460px, 58svh, 660px);
  display: grid;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(70% 90% at 16% 4%, rgba(201,160,99,.14), transparent 64%),
    linear-gradient(135deg, #111820 0%, #232B36 48%, #303842 100%);
  color: var(--color-white);
  padding: clamp(4rem, 7vw, 6.8rem) clamp(1.5rem, 6vw, 5rem) clamp(3.2rem, 5vw, 5rem);
}
.insights-video-hero__video {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 66% center;
  filter: grayscale(.12) saturate(.7) contrast(1.08) brightness(.66);
}
.insights-video-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(14,19,27,.96) 0%, rgba(14,19,27,.86) 36%, rgba(14,19,27,.54) 66%, rgba(14,19,27,.30) 100%),
    radial-gradient(62% 84% at 14% 8%, rgba(122,31,46,.20), transparent 68%),
    linear-gradient(0deg, rgba(14,19,27,.78) 0%, rgba(14,19,27,.16) 58%, rgba(14,19,27,.52) 100%);
}
.insights-video-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,160,99,.44), rgba(122,31,46,.32), transparent);
  pointer-events: none;
}
.insights-video-hero__inner {
  position: relative;
  z-index: 3;
  width: min(1180px, 100%);
  margin-inline: auto;
}
.insights-video-hero .eyebrow {
  color: rgba(203,168,119,.92);
  text-shadow: 0 2px 18px rgba(0,0,0,.58);
}
.insights-video-hero h1 {
  max-width: 15ch;
  margin: .7rem 0 1rem;
  color: var(--color-white);
  font-family: var(--serif-display);
  font-size: clamp(3rem, 6.4vw, 6.5rem);
  font-weight: 400;
  line-height: .98 !important;
  text-shadow: 0 8px 38px rgba(0,0,0,.58);
}
.insights-video-hero__subtitle {
  max-width: 62ch;
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: clamp(1.08rem, 1.55vw, 1.32rem);
  line-height: 1.65;
  text-shadow: 0 2px 20px rgba(0,0,0,.58);
}
.insights-video-hero__support {
  max-width: 56ch;
  margin: .85rem 0 0;
  color: rgba(203,168,119,.86);
  font-size: .86rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  text-shadow: 0 2px 18px rgba(0,0,0,.58);
}
.insights-video-hero__actions {
  margin: clamp(1.55rem, 2.4vw, 2.2rem) 0 0;
}
.insights-video-hero__actions .button-secondary {
  color: var(--color-white);
  border-color: rgba(247,243,234,.62);
  background: rgba(255,255,255,.08);
}
.insights-video-hero__actions .button-secondary:hover,
.insights-video-hero__actions .button-secondary:focus-visible {
  color: #FFFFFF;
  border-color: #C9A063;
  background: rgba(122,31,46,.22);
}
@media (max-width: 760px) {
  .insights-video-hero {
    min-height: clamp(520px, 76svh, 680px);
    padding: clamp(3.5rem, 9vw, 5rem) clamp(1.2rem, 5vw, 2rem);
  }
  .insights-video-hero__video {
    object-position: 58% center;
  }
  .insights-video-hero__overlay {
    background:
      linear-gradient(90deg, rgba(14,19,27,.96), rgba(14,19,27,.72)),
      linear-gradient(0deg, rgba(14,19,27,.78), rgba(14,19,27,.22) 58%, rgba(14,19,27,.56));
  }
  .insights-video-hero h1 {
    max-width: 11ch;
    font-size: clamp(3rem, 13vw, 4.8rem);
  }
  .insights-video-hero__actions .button {
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .insights-video-hero {
    background:
      linear-gradient(90deg, rgba(14,19,27,.94), rgba(14,19,27,.62)),
      radial-gradient(130% 120% at 50% 0%, #1a2230 0%, #141A24 55%, #0e131b 100%);
  }
  .insights-video-hero__video {
    animation: none;
  }
}

/* Resource cards - white cards lift off the gray */
.court-resources-grid .premium-card {
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  border-radius: 6px;
  padding: 1.6rem 1.5rem;
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.court-resources-grid .premium-card:hover {
  border-color: color-mix(in srgb, var(--color-oxblood) 35%, var(--color-hairline));
  box-shadow: 0 14px 40px color-mix(in srgb, var(--color-ink) 8%, transparent);
  transform: translateY(-2px);
}

/* Insights / Blog dashboard redesign */
.insights-redesign {
  background:
    radial-gradient(circle at 18% 4%, rgba(201,160,99,.10), transparent 24rem),
    linear-gradient(180deg, #F8F7F4 0%, var(--color-cream) 100%);
  padding: clamp(1.8rem, 3.4vw, 3rem) 0 clamp(2.6rem, 5vw, 4.5rem);
}
.insights-dashboard {
  display: grid;
  grid-template-columns: minmax(0, .7fr) minmax(0, 1.7fr) minmax(0, .9fr);
  gap: clamp(1rem, 2vw, 1.45rem);
  align-items: start;
}
.insights-dashboard__main {
  display: grid;
  gap: clamp(1rem, 2vw, 1.35rem);
}
.insights-dashboard__sidebar,
.insights-dashboard__feature {
  display: grid;
  gap: clamp(1rem, 2vw, 1.35rem);
  position: sticky;
  top: clamp(1rem, 4vw, 2rem);
  align-self: start;
}
.insights-panel {
  position: relative;
  background: rgba(255,255,255,.92);
  border: 1px solid color-mix(in srgb, var(--color-hairline) 82%, var(--color-white) 18%);
  border-radius: 8px;
  box-shadow: 0 20px 60px rgba(35,38,41,.10);
  padding: clamp(1.15rem, 2vw, 1.6rem);
  overflow: hidden;
}
.insights-panel::before {
  content: "";
  position: absolute;
  left: clamp(1.15rem, 2vw, 1.6rem);
  top: clamp(.85rem, 1.5vw, 1.1rem);
  width: 2.6rem;
  height: 1px;
  background: linear-gradient(90deg, var(--color-oxblood), rgba(201,160,99,.55));
}
.insights-panel > .eyebrow,
.insights-panel__head .eyebrow,
.insights-featured-card > .eyebrow {
  margin-top: .55rem;
}
.insights-panel__head {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 1rem;
  padding-bottom: .95rem;
  border-bottom: 1px solid color-mix(in srgb, var(--color-hairline) 72%, transparent);
}
.insights-panel__head h2,
.insights-panel h2 {
  margin: .15rem 0 0;
  font-size: clamp(1.35rem, 2.1vw, 2rem);
  line-height: 1.12 !important;
}
.insights-panel__head > a,
.insights-panel > .text-link,
.insights-featured-card .text-link {
  color: var(--color-oxblood);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
}
.insights-topic-panel nav {
  display: grid;
  margin-top: 1rem;
}
.insights-topic-panel a {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr) auto;
  gap: .75rem;
  align-items: center;
  min-height: 3.15rem;
  color: var(--color-slate);
  text-decoration: none;
  border-bottom: 1px solid color-mix(in srgb, var(--color-hairline) 68%, transparent);
  padding: .55rem .45rem .55rem 0;
}
.insights-topic-panel a:last-child {
  border-bottom: 0;
}
.insights-topic-panel a::before {
  content: "";
  align-self: stretch;
  width: 3px;
  background: transparent;
  border-radius: 999px;
  grid-column: 1;
  grid-row: 1;
}
.insights-topic-panel a > span {
  grid-column: 1;
  grid-row: 1;
  width: 2rem;
  height: 2rem;
  display: grid;
  place-items: center;
  color: var(--color-muted);
}
.insights-topic-panel svg {
  width: 1.12rem;
  height: 1.12rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.insights-topic-panel strong {
  font-size: .9rem;
  font-weight: 600;
  color: inherit;
}
.insights-topic-panel em {
  min-width: 1.7rem;
  height: 1.7rem;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: color-mix(in srgb, var(--color-cream) 84%, var(--color-white) 16%);
  color: var(--color-muted);
  font-style: normal;
  font-size: .72rem;
  font-weight: 700;
}
.insights-topic-panel a.is-active,
.insights-topic-panel a:hover,
.insights-topic-panel a:focus-visible {
  color: var(--color-oxblood);
  background: linear-gradient(90deg, rgba(122,31,46,.055), transparent);
}
.insights-topic-panel a.is-active::before {
  background: var(--color-oxblood);
}
.insights-subscribe-panel p,
.insights-newsletter-panel p {
  color: var(--color-slate);
  line-height: 1.6;
}
.insights-subscribe-panel form,
.insights-newsletter-panel form {
  display: grid;
  gap: .75rem;
  margin-top: 1rem;
}
.insights-subscribe-panel input,
.insights-newsletter-panel input {
  width: 100%;
  min-height: 3rem;
  border: 1px solid var(--color-hairline);
  background: #FFFFFF;
  padding: .8rem .9rem;
  color: var(--color-ink);
  font: inherit;
}
.insights-subscribe-panel small,
.insights-newsletter-panel small {
  display: block;
  margin-top: .8rem;
  color: var(--color-muted);
  font-size: .78rem;
}
.insights-article-list,
.insights-recent-grid {
  display: grid;
  gap: clamp(1rem, 1.8vw, 1.35rem);
  margin-top: 1rem;
}
.insights-recent-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(.95rem, 1.7vw, 1.3rem);
}
@media (max-width: 620px) {
  .insights-recent-grid { grid-template-columns: 1fr; }
}
.insights-article-row {
  display: grid;
  grid-template-columns: 6.4rem minmax(0, 1fr);
  gap: .95rem;
  align-items: center;
  min-width: 0;
  padding: .7rem;
  border: 1px solid color-mix(in srgb, var(--color-hairline) 76%, transparent);
  border-radius: 6px;
  background: color-mix(in srgb, var(--color-white) 92%, var(--color-cream) 8%);
  color: var(--color-ink);
  text-decoration: none;
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
.insights-article-row:hover,
.insights-article-row:focus-visible {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--color-oxblood) 38%, var(--color-hairline));
  box-shadow: 0 12px 30px rgba(35,38,41,.10);
}
.insights-article-row figure {
  aspect-ratio: 1.22 / 1;
  margin: 0;
  overflow: hidden;
  border-radius: 4px;
  background: var(--color-graphite);
}
.insights-article-row > div {
  min-width: 0;
}
.insights-recent-grid .insights-article-row {
  align-items: start;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(.7rem, 1.4vw, 1rem);
  min-height: 0;
  padding: clamp(1rem, 1.8vw, 1.35rem);
}
.insights-recent-grid .insights-article-row figure {
  aspect-ratio: 1.6 / 1 !important;
  width: 100%;
}
.insights-recent-grid .insights-article-row figure {
  aspect-ratio: 1.16 / 1;
}
.insights-recent-grid .insights-article-row h3 {
  font-size: clamp(1.12rem, 1.65vw, 1.42rem);
  line-height: 1.16 !important;
}
.insights-article-row img,
.insights-featured-card img,
.insights-video-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(.82) contrast(1.04);
}
.insights-article-row h3 {
  margin: .15rem 0 .25rem;
  font-size: clamp(1.02rem, 1.45vw, 1.2rem);
  line-height: 1.2 !important;
  overflow-wrap: anywhere;
}
.insights-article-row p:not(.eyebrow) {
  margin: 0 0 .45rem;
  color: var(--color-slate);
  font-size: .9rem;
  line-height: 1.45;
}
.insights-article-row span:not(:first-child) {
  color: var(--color-muted);
  font-size: .76rem;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.insights-featured-card {
  min-height: 100%;
}
.insights-featured-card__media {
  display: block;
  margin-top: 1rem;
  aspect-ratio: 1.24 / 1;
  overflow: hidden;
  border-radius: 6px;
  background: var(--color-graphite);
}
.insights-featured-card__copy {
  padding-top: 1rem;
}
.insights-featured-card__copy > span {
  display: block;
  color: var(--color-muted);
  font-size: .76rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.insights-featured-card h2 {
  margin: .5rem 0 .7rem;
  font-size: clamp(1.55rem, 2.3vw, 2.4rem);
}
.insights-featured-card h2 a {
  color: inherit;
  text-decoration: none;
}
.insights-featured-card p {
  color: var(--color-slate);
  line-height: 1.6;
}
.insights-resource-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(1rem, 2vw, 1.35rem);
  margin-top: clamp(1.1rem, 2.2vw, 1.75rem);
}
.insights-video-grid,
.insights-link-grid {
  display: grid;
  gap: .75rem;
  margin-top: 1rem;
}
.insights-video-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.insights-video-card figure {
  position: relative;
  aspect-ratio: .82 / 1;
  margin: 0 0 .75rem;
  overflow: hidden;
  border-radius: 5px;
  background: linear-gradient(135deg, #151B23, #303842);
}
.insights-video-card figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent, rgba(17,24,32,.46));
}
.insights-video-card figure span {
  position: absolute;
  inset: 50% auto auto 50%;
  z-index: 2;
  width: 2.35rem;
  height: 2.35rem;
  display: grid;
  place-items: center;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  color: #FFFFFF;
  background: rgba(122,31,46,.82);
  border: 1px solid rgba(255,255,255,.38);
  font-size: .82rem;
  font-weight: 700;
}
.insights-video-card h3 {
  margin: 0;
  font-size: 1rem;
  line-height: 1.22 !important;
}
.insights-video-card p {
  margin: .25rem 0 0;
  color: var(--color-muted);
  font-size: .82rem;
}
.insights-link-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.insights-link-grid a {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  gap: .65rem;
  align-items: center;
  min-height: 4rem;
  padding: .65rem;
  color: var(--color-ink);
  text-decoration: none;
  border: 1px solid color-mix(in srgb, var(--color-hairline) 76%, transparent);
  border-radius: 5px;
  background: #FFFFFF;
}
.insights-link-grid a:hover,
.insights-link-grid a:focus-visible {
  border-color: color-mix(in srgb, var(--color-oxblood) 42%, var(--color-hairline));
}
.insights-link-grid span {
  display: grid;
  place-items: center;
  width: 2.2rem;
  height: 2.2rem;
  color: var(--color-oxblood);
}
.insights-link-grid svg {
  width: 1.2rem;
  height: 1.2rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.insights-link-grid strong {
  font-size: .82rem;
  line-height: 1.2;
}
.insights-court-directory {
  margin-top: clamp(1.1rem, 2.2vw, 1.75rem);
  padding: clamp(1.2rem, 2.4vw, 1.8rem);
  background: rgba(255,255,255,.78);
  border: 1px solid color-mix(in srgb, var(--color-hairline) 82%, var(--color-white) 18%);
  border-radius: 8px;
  box-shadow: 0 20px 60px rgba(35,38,41,.08);
}
.insights-consultation-band {
  display: grid;
  grid-template-columns: minmax(120px, .22fr) minmax(0, 1fr) auto;
  gap: clamp(1rem, 3vw, 2rem);
  align-items: center;
  margin-top: clamp(1.4rem, 3vw, 2.4rem);
  padding: clamp(1.4rem, 2.7vw, 2.1rem);
  border: 1px solid color-mix(in srgb, var(--color-gold) 34%, var(--color-hairline));
  border-radius: 8px;
  background:
    radial-gradient(circle at 8% 16%, rgba(201,160,99,.18), transparent 13rem),
    rgba(255,255,255,.78);
  box-shadow: 0 22px 60px rgba(35,38,41,.09);
}
.insights-consultation-band figure {
  margin: 0;
  color: color-mix(in srgb, var(--color-gold) 78%, var(--color-oxblood) 22%);
}
.insights-consultation-band svg {
  width: min(9rem, 100%);
  height: auto;
}
.insights-consultation-band h2 {
  margin: .2rem 0 .55rem;
  font-size: clamp(1.7rem, 3.1vw, 3rem);
}
.insights-consultation-band p:not(.eyebrow) {
  margin: 0;
  color: var(--color-slate);
  max-width: 58ch;
}
.insights-consultation-band .button-row {
  justify-content: end;
}
@media (max-width: 1180px) {
  .insights-dashboard {
    grid-template-columns: minmax(220px, .75fr) minmax(0, 1.4fr);
  }
  .insights-dashboard__feature {
    grid-column: 1 / -1;
  }
  .insights-featured-card {
    display: grid;
    grid-template-columns: minmax(240px, .42fr) minmax(0, 1fr);
    gap: 1.2rem;
    align-items: center;
  }
  .insights-featured-card > .eyebrow {
    position: absolute;
    left: clamp(1.15rem, 2vw, 1.6rem);
    top: clamp(1.15rem, 2vw, 1.6rem);
  }
  .insights-featured-card__media {
    margin-top: 2.2rem;
  }
  .insights-resource-row {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 820px) {
  .insights-redesign {
    padding-top: 1rem;
  }
  .insights-dashboard,
  .insights-featured-card,
  .insights-consultation-band {
    grid-template-columns: 1fr;
  }
  .insights-topic-panel nav {
    display: flex;
    gap: .65rem;
    overflow-x: auto;
    padding-bottom: .2rem;
  }
  .insights-topic-panel a {
    min-width: 14rem;
    border: 1px solid color-mix(in srgb, var(--color-hairline) 76%, transparent);
    border-radius: 6px;
    padding: .55rem .65rem;
  }
  .insights-recent-grid,
  .insights-video-grid,
  .insights-link-grid {
    grid-template-columns: 1fr;
  }
  .insights-featured-card > .eyebrow {
    position: static;
  }
  .insights-featured-card__media {
    margin-top: .9rem;
  }
  .insights-consultation-band .button-row {
    justify-content: start;
  }
}
@media (max-width: 560px) {
  .insights-article-row {
    grid-template-columns: 5.2rem minmax(0, 1fr);
    padding: .6rem;
  }
  .insights-recent-grid .insights-article-row {
    grid-template-columns: 1fr;
    min-height: 0;
    padding: .85rem;
  }
  .insights-recent-grid .insights-article-row figure {
    aspect-ratio: 1.7 / 1;
  }
  .insights-panel__head {
    display: grid;
  }
  .insights-panel__head > a {
    white-space: normal;
  }
}

/* Practice Areas redesign */
.practice-redesign {
  background: linear-gradient(180deg, var(--color-cream) 0%, #F8F7F4 100%);
  padding: 0 0 clamp(2.8rem, 5vw, 4.8rem);
}
.practice-taxonomy-section {
  background:
    radial-gradient(circle at 16% 0%, rgba(201,160,99,.12), transparent 24rem),
    linear-gradient(180deg, #101722 0%, #151B23 100%);
  padding: clamp(2rem, 4vw, 3.4rem) 0 clamp(2.2rem, 4vw, 3.5rem);
  color: var(--color-white);
}
.practice-taxonomy-label {
  display: grid;
  grid-template-columns: minmax(2rem, 1fr) auto minmax(2rem, 1fr);
  gap: 1rem;
  align-items: center;
  margin-bottom: clamp(1.2rem, 2.2vw, 1.8rem);
  text-align: center;
}
.practice-taxonomy-label span {
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,160,99,.65), transparent);
}
.practice-taxonomy-label .eyebrow {
  color: #F7F3EA;
  margin: 0;
}
.practice-taxonomy-panel {
  border: 1px solid rgba(201,160,99,.28);
  background:
    radial-gradient(circle at 86% 12%, rgba(122,31,46,.18), transparent 18rem),
    rgba(10,15,22,.62);
  box-shadow: 0 28px 70px rgba(0,0,0,.24);
}
.practice-taxonomy-row {
  display: grid;
  grid-template-columns: 4rem minmax(0, 1fr) auto;
  gap: clamp(1rem, 2vw, 1.6rem);
  align-items: center;
  padding: clamp(1rem, 2vw, 1.45rem);
  border-bottom: 1px solid rgba(201,160,99,.23);
}
.practice-taxonomy-row:last-child {
  border-bottom: 0;
}
.practice-taxonomy-row__icon {
  width: 3.2rem;
  height: 3.2rem;
  display: grid;
  place-items: center;
  color: #C9A063;
  border: 1px solid rgba(201,160,99,.34);
  background: rgba(255,255,255,.04);
}
.practice-taxonomy-row svg,
.practice-order-panels svg,
.about-redesign svg {
  width: 1.55rem;
  height: 1.55rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.55;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.practice-taxonomy-row h2 {
  margin: 0;
  color: #F7F3EA;
  font-size: clamp(1.55rem, 2.7vw, 2.6rem);
  line-height: 1.08 !important;
}
.practice-taxonomy-row p {
  margin: .35rem 0 .55rem;
  color: rgba(247,243,234,.78);
  max-width: 64ch;
}
.practice-taxonomy-row nav {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem .85rem;
}
.practice-taxonomy-row nav a {
  color: rgba(247,243,234,.88);
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration-color: rgba(201,160,99,.44);
  text-underline-offset: .28em;
}
.practice-taxonomy-row__action {
  color: #F7F3EA;
  text-decoration: none;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  white-space: nowrap;
}
.practice-taxonomy-row__action span {
  color: var(--color-oxblood);
  font-size: 1.2rem;
  padding-left: .45rem;
}
.practice-order-panels {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.35rem);
  margin-top: clamp(1.4rem, 3vw, 2.4rem);
}
.practice-order-panels article {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 9rem;
  gap: 1rem;
  min-height: 15rem;
  padding: clamp(1.4rem, 2.7vw, 2.2rem);
  border: 1px solid color-mix(in srgb, var(--color-hairline) 82%, var(--color-gold) 18%);
  background: rgba(255,255,255,.86);
  box-shadow: 0 20px 60px rgba(35,38,41,.10);
}
.practice-order-panels h2,
.practice-fasd-feature h2 {
  margin: .2rem 0 .65rem;
  font-size: clamp(1.8rem, 3.2vw, 3.2rem);
}
.practice-order-panels p,
.practice-fasd-feature p,
.practice-fasd-feature li {
  color: var(--color-slate);
  line-height: 1.65;
}
.practice-order-panels article > span {
  align-self: center;
  justify-self: center;
  color: color-mix(in srgb, var(--color-gold) 70%, var(--color-muted) 30%);
  opacity: .55;
}
.practice-order-panels article > span svg {
  width: 7rem;
  height: 7rem;
  stroke-width: .85;
}
.practice-fasd-feature {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(250px, .85fr) minmax(300px, 1fr);
  gap: clamp(1rem, 2.4vw, 2rem);
  align-items: center;
  margin-top: clamp(1rem, 2vw, 1.4rem);
  min-height: 20rem;
  padding: clamp(1.5rem, 3vw, 2.3rem);
  border: 1px solid color-mix(in srgb, var(--color-oxblood) 18%, var(--color-hairline));
  background: rgba(255,255,255,.88);
  box-shadow: 0 22px 68px rgba(35,38,41,.11);
  overflow: hidden;
}
.practice-fasd-feature::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 76% 22%, rgba(201,160,99,.12), transparent 17rem);
  pointer-events: none;
}
.practice-fasd-feature > * {
  position: relative;
  z-index: 1;
}
.practice-fasd-feature ul {
  margin: 0 0 1rem;
  padding: 0;
  list-style: none;
}
.practice-fasd-feature li {
  padding: .55rem 0 .55rem 1.2rem;
  border-bottom: 1px solid color-mix(in srgb, var(--color-hairline) 68%, transparent);
}
.practice-fasd-feature li::before {
  content: "";
  display: inline-block;
  width: .38rem;
  height: .38rem;
  margin: 0 .7rem 0 -1.2rem;
  background: var(--color-oxblood);
  transform: rotate(45deg);
}
.practice-fasd-feature figure {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  margin: -1rem -1rem -1rem 0;
  min-height: 18rem;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 18%, #000 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 18%, #000 100%);
}
.practice-fasd-feature figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,255,255,.35) 0%, rgba(255,255,255,.06) 45%, rgba(255,255,255,0) 100%);
  pointer-events: none;
}
.practice-fasd-feature img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center right;
  display: block;
}
.practice-fit-strip {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(1rem, 3vw, 2rem);
  align-items: center;
  margin-top: clamp(1.4rem, 3vw, 2.4rem);
  padding: clamp(1.3rem, 2.7vw, 2rem);
  color: #F7F3EA;
  background:
    radial-gradient(circle at 8% 14%, rgba(122,31,46,.42), transparent 18rem),
    linear-gradient(135deg, #101722, #151B23 52%, #7A1F2E 160%);
  border: 1px solid rgba(201,160,99,.28);
  box-shadow: 0 24px 70px rgba(17,24,32,.22);
}
.practice-fit-strip h2 {
  margin: 0 0 .35rem;
  color: #F7F3EA;
  font-size: clamp(1.7rem, 3vw, 3rem);
}
.practice-fit-strip p {
  margin: 0;
  color: rgba(247,243,234,.78);
}
.practice-fit-strip .button-secondary {
  color: #F7F3EA;
  border-color: rgba(247,243,234,.44);
  background: rgba(255,255,255,.04);
}

/* About page redesign */
.about-redesign {
  background: linear-gradient(180deg, var(--color-cream) 0%, #F8F7F4 100%);
}
.about-biography-panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(300px, 1fr) minmax(440px, 1.5fr) minmax(300px, 1fr);
  gap: clamp(1.4rem, 2.6vw, 2.6rem);
  align-items: start;
  width: min(1440px, calc(100% - 48px));
  max-width: 1440px;
  margin-inline: auto;
  padding: clamp(3rem, 5.4vw, 5.8rem) 0 clamp(3.2rem, 5.8vw, 6rem);
}
.about-biography-panel::before {
  content: "";
  position: absolute;
  z-index: 0;
  left: 21%;
  right: 18%;
  top: clamp(2.5rem, 5vw, 5rem);
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,160,99,.48), transparent);
  pointer-events: none;
}
.about-bio-portrait,
.about-bio-copy,
.about-credential-stack {
  position: relative;
  border: 1px solid color-mix(in srgb, var(--color-hairline) 82%, var(--color-white) 18%);
  box-shadow: 0 24px 70px rgba(35,38,41,.11);
}
.about-bio-rail {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: clamp(1.2rem, 2vw, 1.8rem);
  min-width: 0;
}
.about-bio-media {
  position: relative;
  z-index: 1;
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: clamp(1rem, 1.8vw, 1.4rem);
}
.about-bio-portrait {
  z-index: 1;
  margin: 0;
  aspect-ratio: 4 / 5.4;
  min-height: 0;
  align-self: start;
  overflow: hidden;
}
.about-bio-trust {
  padding: clamp(1.2rem, 2vw, 1.6rem) clamp(1.2rem, 2vw, 1.5rem) clamp(1.4rem, 2.2vw, 1.7rem);
  border: 1px solid color-mix(in srgb, var(--color-hairline) 82%, var(--color-white) 18%);
  background: rgba(255,255,255,.9);
  box-shadow: 0 24px 70px rgba(35,38,41,.11);
}
.about-bio-trust__bar {
  margin: 0 0 1rem;
  padding-bottom: .9rem;
  border-bottom: 1px solid color-mix(in srgb, var(--color-gold) 38%, var(--color-hairline));
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(1.05rem, 1.4vw, 1.25rem);
  font-weight: 500;
  line-height: 1.25;
}
.about-bio-trust__label {
  margin: 0 0 .55rem;
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.about-bio-trust__affil {
  margin: 0 0 1.25rem;
  padding: 0;
  list-style: none;
  display: grid;
  gap: .45rem;
}
.about-bio-trust__affil li {
  position: relative;
  padding-left: 1rem;
  color: var(--color-body);
  font-size: .92rem;
  line-height: 1.4;
}
.about-bio-trust__affil li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: .4rem;
  height: .4rem;
  border-radius: 999px;
  background: var(--color-gold);
}
.about-bio-trust__cta {
  display: grid;
  gap: .7rem;
}
.about-bio-trust__cta .button {
  width: 100%;
  text-align: center;
}
.about-bio-trust__phone {
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .9rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-align: center;
  text-decoration: none;
}
.about-bio-trust__phone:hover,
.about-bio-trust__phone:focus-visible {
  text-decoration: underline;
  text-underline-offset: .18em;
}
.about-bio-portrait::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(255,255,255,.42);
  pointer-events: none;
}
.about-bio-portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 22%;
  display: block;
}
.about-bio-copy {
  z-index: 2;
  background: var(--color-paper, #FAF7F0);
  padding: clamp(2rem, 3.2vw, 3.4rem);
  min-width: 0;
}
.about-bio-copy .eyebrow {
  color: var(--color-oxblood);
}
.about-bio-copy h2 {
  margin: .25rem 0 1rem;
  font-size: clamp(3rem, 4.8vw, 5.35rem);
  line-height: .96;
}
.about-bio-copy p {
  color: var(--color-slate);
  font-size: clamp(1.02rem, 1.05vw, 1.13rem);
  line-height: 1.8;
  max-width: 76ch;
}
.about-bio-copy .button {
  margin-top: .75rem;
}
.about-bio-quote {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-self: start;
  gap: .9rem;
  padding: clamp(1.35rem, 2vw, 2rem);
  background: var(--color-graphite);
  border: 1px solid rgba(201,160,99,.28);
  box-shadow: 0 24px 70px rgba(35,38,41,.22);
}
.about-bio-quote__mark {
  font-family: var(--serif-display);
  font-size: 3.25rem;
  line-height: .5;
  color: var(--color-gold);
}
.about-bio-quote blockquote {
  margin: 0;
  color: var(--color-cream, #F6F3EC);
  font-family: var(--serif-display);
  font-weight: 400;
  font-size: clamp(1.14rem, 1.34vw, 1.44rem);
  line-height: 1.36;
}
.about-bio-quote__attrib {
  margin-top: .4rem;
  padding-top: 1.1rem;
  border-top: 1px solid rgba(201,160,99,.32);
}
.about-bio-quote__name {
  margin: 0;
  color: var(--color-cream, #F6F3EC);
  font-family: var(--sans);
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.about-bio-quote__role {
  margin: .15rem 0 0;
  color: color-mix(in srgb, var(--color-gold) 78%, var(--color-cream, #F6F3EC) 22%);
  font-family: var(--sans);
  font-size: .82rem;
  letter-spacing: .02em;
}
.about-bio-quote__sig {
  display: block;
  margin-top: .65rem;
  max-width: 150px;
  height: auto;
  /* if the source SVG is dark, uncomment to make it legible on graphite: */
  /* filter: invert(1) brightness(1.6); */
}
.about-credential-stack {
  z-index: 2;
  background: var(--color-paper, #FAF7F0);
  display: grid;
  align-content: start;
  gap: 0;
  padding: clamp(1.55rem, 2.4vw, 2.35rem);
  min-width: 0;
}
.about-credential-stack::before {
  content: "Credentials";
  display: block;
  margin: 0 0 .65rem;
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.about-credential-row {
  display: grid;
  grid-template-columns: 2.6rem minmax(0, 1fr);
  gap: 1rem;
  padding: 1.08rem 0;
  border-bottom: 1px solid color-mix(in srgb, var(--color-hairline) 76%, transparent);
}
.about-credential-row:last-child {
  border-bottom: 0;
}
.about-credential-row > span,
.about-recognition-card > span {
  color: color-mix(in srgb, var(--color-gold) 72%, var(--color-muted) 28%);
}
.about-credential-row > span svg {
  width: 1.55rem;
  height: 1.55rem;
}
.about-credential-row h3,
.about-recognition-card h3 {
  margin: 0 0 .25rem;
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .78rem;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.about-credential-row p,
.about-recognition-card p,
.about-media-card p {
  margin: 0;
  color: var(--color-slate);
  line-height: 1.62;
}
.about-recognition-section,
.about-media-insight {
  padding-top: clamp(2.4rem, 5vw, 4rem);
  padding-bottom: clamp(2.4rem, 5vw, 4rem);
}
.about-centered-heading {
  text-align: center;
  margin-bottom: clamp(1.3rem, 3vw, 2.2rem);
}
.about-centered-heading h2,
.about-section-head h2 {
  margin: .2rem 0 0;
  font-size: clamp(2rem, 3.6vw, 3.6rem);
}
.about-recognition-grid,
.about-endorsement-grid,
.about-media-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.35rem);
}
.about-defense-team-section .about-media-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 920px;
  margin-inline: auto;
}
.about-recognition-card,
.about-media-card {
  padding: clamp(1.3rem, 2.4vw, 1.8rem);
  background: rgba(255,255,255,.88);
  border: 1px solid color-mix(in srgb, var(--color-hairline) 82%, var(--color-white) 18%);
  box-shadow: 0 18px 50px rgba(35,38,41,.08);
}
.about-recognition-card > span {
  display: grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  margin: 0 auto 1rem;
  border: 1px solid color-mix(in srgb, var(--color-gold) 34%, var(--color-hairline));
}
.about-recognition-card {
  text-align: center;
}
.about-dark-endorsements {
  padding: clamp(2.6rem, 5vw, 4.2rem) 0;
  color: #F7F3EA;
  background:
    radial-gradient(circle at 18% 0%, rgba(122,31,46,.22), transparent 22rem),
    linear-gradient(180deg, #101722 0%, #151B23 100%);
}
.about-dark-endorsements h2 {
  color: #F7F3EA;
}
.about-endorsement-grid article {
  padding: clamp(1.25rem, 2.4vw, 1.7rem);
  border: 1px solid rgba(201,160,99,.26);
  background: rgba(255,255,255,.055);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 20px 50px rgba(0,0,0,.18);
}
.about-endorsement-grid article > span {
  color: #C9A063;
  font-family: var(--serif-display);
  font-size: 3rem;
  line-height: .7;
}
.about-endorsement-grid blockquote {
  margin: .6rem 0 1.2rem;
  color: rgba(245,247,250,.84);
  font-family: var(--sans);
  font-size: clamp(1rem, 1.05vw, 1.08rem);
  line-height: 1.72;
}
.about-endorsement-grid blockquote p {
  margin: 0 0 .95rem;
  color: inherit;
}
.about-endorsement-grid blockquote p:last-child {
  margin-bottom: 0;
}
.about-endorsement-featured {
  position: relative;
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: clamp(1rem, 2vw, 1.6rem);
  align-items: start;
  padding: clamp(1.8rem, 3vw, 2.7rem) !important;
  border-color: rgba(201,160,99,.42) !important;
  border-top: 2px solid #7A1F2E !important;
  background:
    radial-gradient(circle at 92% 0%, rgba(201,160,99,.12), transparent 18rem),
    rgba(255,255,255,.074) !important;
  box-shadow: 0 22px 70px rgba(0,0,0,.22);
}
.about-endorsement-featured > span {
  margin-top: .2rem;
}
.about-endorsement-featured blockquote {
  max-width: 82ch;
  margin-top: 0;
  color: rgba(245,247,250,.86);
  font-size: clamp(1rem, 1vw, 1.08rem);
  line-height: 1.74;
}
.about-endorsement-featured strong,
.about-endorsement-featured small {
  grid-column: 2;
}
.about-endorsement-featured strong {
  color: #F7F3EA;
  font-family: var(--serif-display);
  font-size: clamp(1.55rem, 2.6vw, 2.5rem);
  font-weight: 400;
  line-height: 1.05;
}
.about-endorsement-grid strong,
.about-endorsement-grid small {
  display: block;
}
.about-endorsement-grid strong {
  color: #FFFFFF;
  font-family: var(--serif-display);
  font-size: clamp(1.2rem, 1.6vw, 1.55rem);
  font-weight: 400;
  line-height: 1.15;
}
.about-endorsement-grid .about-endorsement-featured strong {
  color: #F7F3EA;
  font-size: clamp(1.55rem, 2.6vw, 2.5rem);
  line-height: 1.05;
}
.about-endorsement-grid small {
  color: rgba(245,247,250,.72);
  margin-top: .25rem;
  font-size: .88rem;
  line-height: 1.45;
}
.about-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.25rem;
}
.about-media-card--image figure {
  position: relative;
  aspect-ratio: 1.8 / 1;
  margin: 0 0 1rem;
  overflow: hidden;
  background: var(--color-graphite);
}
.about-media-card--image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.about-media-card--image figure span {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  display: grid;
  place-items: center;
  width: 3.2rem;
  height: 3.2rem;
  color: #FFFFFF;
  background: rgba(122,31,46,.82);
  border-radius: 50%;
}
.about-media-card blockquote {
  margin: .8rem 0 1rem;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(1.35rem, 2.2vw, 2rem);
  line-height: 1.2;
}
.about-philosophy-band {
  display: grid;
  grid-template-columns: minmax(320px, .72fr) minmax(0, 1fr);
  min-height: 28rem;
  color: #F7F3EA;
  background: #101722;
}
.about-philosophy-copy {
  padding: clamp(2rem, 5vw, 4.4rem) clamp(1.4rem, 5vw, 4rem);
  display: grid;
  align-content: center;
  background:
    radial-gradient(circle at 0% 0%, rgba(122,31,46,.24), transparent 18rem),
    linear-gradient(135deg, #101722, #151B23);
}
.about-philosophy-copy h2 {
  margin: .3rem 0 .8rem;
  color: #F7F3EA;
  font-size: clamp(2rem, 3.8vw, 4rem);
}
.about-philosophy-copy p:not(.eyebrow) {
  color: rgba(247,243,234,.82);
  line-height: 1.65;
  max-width: 58ch;
}
.about-philosophy-band figure {
  margin: 0;
  min-height: 24rem;
}
.about-philosophy-band img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.about-cta-strip {
  background: linear-gradient(135deg, #7A1F2E, #941F33 52%, #151B23 140%);
  color: #F7F3EA;
}
.about-cta-strip .section-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(1rem, 3vw, 2rem);
  align-items: center;
  padding-top: clamp(1.4rem, 3vw, 2.3rem);
  padding-bottom: clamp(1.4rem, 3vw, 2.3rem);
}
.about-cta-strip h2 {
  margin: 0 0 .35rem;
  color: #F7F3EA;
  font-size: clamp(1.7rem, 3vw, 3rem);
}
.about-cta-strip p {
  margin: 0;
  color: rgba(247,243,234,.82);
}
.about-cta-strip .button-secondary {
  color: #F7F3EA;
  border-color: rgba(247,243,234,.52);
  background: rgba(255,255,255,.04);
}
@media (max-width: 1180px) {
  .about-biography-panel {
    grid-template-columns: minmax(280px, .9fr) minmax(0, 1.1fr);
  }
  .about-bio-rail {
    grid-column: 1 / -1;
  }
  .about-credential-stack {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: stretch;
    gap: 0 clamp(1.2rem, 3vw, 2rem);
  }
  .about-credential-stack::before {
    grid-column: 1 / -1;
  }
  .about-credential-row:nth-last-child(-n + 2) {
    border-bottom: 0;
  }
}
@media (max-width: 1000px) {
  .practice-order-panels,
  .about-biography-panel,
  .about-recognition-grid,
  .about-endorsement-grid,
  .about-media-grid,
  .about-philosophy-band {
    grid-template-columns: 1fr;
  }
  .practice-fasd-feature {
    grid-template-columns: 1fr;
  }
  .practice-fasd-feature figure {
    margin: 0;
    -webkit-mask-image: none;
    mask-image: none;
  }
  .about-section-head,
  .practice-fit-strip,
  .about-cta-strip .section-shell {
    display: grid;
    grid-template-columns: 1fr;
  }
  .about-endorsement-featured {
    grid-template-columns: 1fr;
  }
  .about-endorsement-featured strong,
  .about-endorsement-featured small {
    grid-column: 1;
  }
}
@media (max-width: 700px) {
  .about-biography-panel {
    width: min(100% - 32px, 1440px);
    padding-top: clamp(2rem, 8vw, 3rem);
  }
  .about-bio-portrait {
    min-height: 0;
    aspect-ratio: 4 / 5;
  }
  .about-bio-copy {
    padding: clamp(1.4rem, 7vw, 2rem);
  }
  .practice-taxonomy-row {
    grid-template-columns: 1fr;
  }
  .about-credential-stack {
    grid-template-columns: 1fr;
  }
  .about-credential-row:nth-last-child(-n + 2) {
    border-bottom: 1px solid color-mix(in srgb, var(--color-hairline) 76%, transparent);
  }
  .about-credential-row:last-child {
    border-bottom: 0;
  }
  .practice-taxonomy-row__action {
    justify-self: start;
  }
  .practice-order-panels article {
    grid-template-columns: 1fr;
  }
  .practice-order-panels article > span {
    justify-self: start;
  }
  .practice-fit-strip .button-row,
  .about-cta-strip .button-row {
    justify-content: stretch;
  }
  .practice-fit-strip .button,
  .about-cta-strip .button {
    width: 100%;
  }
}

.law-editorial-body {
  position: relative;
  overflow: hidden;
  background: #F6F1E8;
}
.law-editorial-body::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255,255,255,.28), rgba(255,255,255,0) 12rem);
}
.law-editorial-body > .law-editorial-grid { position: relative; z-index: 1; }
.law-editorial-body::after {
  content: "";
  position: absolute;
  top: clamp(2rem, 4vw, 3.4rem);
  bottom: clamp(2.5rem, 5vw, 4rem);
  left: 50%;
  width: min(1240px, calc(100% - 48px));
  transform: translateX(-50%);
  pointer-events: none;
  z-index: 0;
  background:
    linear-gradient(180deg, transparent, var(--color-gold) 8%, var(--color-gold) 92%, transparent) left  0 / 1px 100% no-repeat,
    linear-gradient(180deg, transparent, var(--color-gold) 8%, var(--color-gold) 92%, transparent) right 0 / 1px 100% no-repeat;
  opacity: .6;
}
@media (max-width: 1180px) {
  .law-editorial-body::after { display: none; }
}
.law-editorial-grid { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: clamp(2rem, 4vw, 4rem); align-items: start; padding-top: clamp(1.4rem, 2.5vw, 2rem); padding-bottom: clamp(2.5rem, 5vw, 4rem); max-width: 1100px; margin-inline: auto; }
.law-editorial-grid--full { grid-template-columns: minmax(0, 1fr); justify-items: center; }
.law-editorial-grid--full .law-editorial-main { max-width: 760px; margin-inline: auto; width: 100%; }
.law-editorial-main { min-width: 0; }
.law-editorial-main .article-fragment p,
.law-editorial-main .article-fragment li { max-width: 70ch; }
.law-editorial-main .article-fragment h2 {
  font-size: clamp(1.65rem, 2.5vw, 2.2rem);
  line-height: 1.12;
  letter-spacing: -.01em;
  margin: 0 0 1rem;
}
.article-fragment .article-panel {
  margin: 0;
  padding: clamp(1.8rem, 3vw, 2.8rem) clamp(1.6rem, 3vw, 2.8rem);
  background: #FBF8F2;
  border: 1px solid #E6DAC2;
  border-radius: 0;
  box-shadow: none;
}
.article-fragment .article-panel:first-of-type {
  border-top: 6px solid var(--color-oxblood);
}
.article-fragment .article-panel + .article-panel { border-top: 0; }
.article-fragment .article-panel + .article-panel::before {
  content: "\00A7";
  display: block;
  font-family: var(--serif-display);
  font-size: 1.5rem;
  color: var(--color-gold);
  text-align: center;
  line-height: 1;
  margin: 0 auto 1.5rem;
  padding-top: .2rem;
  background:
    linear-gradient(#E6DAC2,#E6DAC2) left  calc(50% - .1rem) / 64px 1px no-repeat,
    linear-gradient(#E6DAC2,#E6DAC2) right calc(50% - .1rem) / 64px 1px no-repeat;
}
.article-fragment .article-panel > h2:first-child { margin-top: 0; }
.article-fragment .article-panel > *:last-child { margin-bottom: 0; }
.law-editorial-main .article-fragment h3 { font-size: clamp(1.25rem, 1.8vw, 1.55rem); line-height: 1.2; margin: 1.7rem 0 .55rem; }
.law-editorial-main .article-fragment > p:first-child { font-family: var(--serif-display); font-size: clamp(1.3rem, 1.9vw, 1.65rem); line-height: 1.4; color: var(--color-oxblood); font-weight: 400; max-width: 40ch; }
.law-editorial-main .article-fragment > p:first-child strong { font-weight: 400; }
.law-editorial-main .article-fragment .article-panel:first-of-type > p:first-of-type::first-letter {
  font-family: var(--serif-display);
  font-style: italic;
  font-weight: 600;
  font-size: 3.9rem;
  line-height: .72;
  float: left;
  color: var(--color-oxblood);
  margin: .32rem .5rem -.05rem 0;
}
.law-editorial-main .article-fragment .article-panel h3,
.law-editorial-main .article-fragment .article-panel h4 { clear: both; }
@media (max-width: 600px) {
  .law-editorial-main .article-fragment .article-panel:first-of-type > p:first-of-type::first-letter {
    font-size: 3.6rem;
  }
}
.lang-switch { margin: 0 0 1rem; font-family: var(--sans); font-size: .72rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.lang-switch a { display: inline-flex; align-items: center; gap: .45rem; color: var(--color-oxblood); text-decoration: none; }
.lang-switch a::after { content: "?"; color: var(--color-gold); font-size: .9em; }
.lang-switch a:hover, .lang-switch a:focus-visible { color: var(--color-ink); text-decoration: underline; text-underline-offset: .22em; }
.article-updated-note { margin-top: 2.4rem; padding-top: 1.2rem; border-top: 1px solid var(--color-hairline); font-size: .82rem; color: var(--color-slate); }
.article-fragment ul:not(.law-quickref__items), .law-editorial-main .article-fragment ul:not(.law-quickref__items) { list-style: none; padding-left: 1.4rem; }
.article-fragment ul:not(.law-quickref__items) > li, .law-editorial-main .article-fragment ul:not(.law-quickref__items) > li { position: relative; padding-left: .3rem; }
.article-fragment ul:not(.law-quickref__items) > li::before, .law-editorial-main .article-fragment ul:not(.law-quickref__items) > li::before {
  content: "\25C6";
  position: absolute;
  left: -1.1rem;
  top: 0;
  color: var(--color-oxblood);
  font-size: .7em;
  line-height: 1.9;
}
/* ----- Blog/insight luxury treatment: vertical side rule ----- */
.blog-article .article-fragment {
  position: relative;
  padding-left: clamp(1rem, 2.5vw, 2rem);
}
.blog-article .article-fragment::before {
  content: "";
  position: absolute;
  left: 0;
  top: .35rem;
  bottom: .35rem;
  width: 2px;
  background: linear-gradient(
    to bottom,
    var(--color-oxblood) 0,
    var(--color-oxblood) 64px,
    var(--color-gold) 64px,
    var(--color-gold) 96px,
    var(--color-hairline) 96px
  );
  border-radius: 2px;
}
@media (max-width: 700px) {
  .blog-article .article-fragment { padding-left: clamp(.8rem, 4vw, 1.2rem); }
}
/* Optional in-body callout box (used only if a post includes a .kd-callout block) */
.article-fragment .kd-callout {
  background: var(--color-cream);
  border-left: 4px solid var(--color-gold);
  padding: 1.1rem 1.3rem;
  margin: 1.4rem 0;
}
.article-fragment .kd-callout__label {
  display: block; margin-bottom: .4rem;
  font-size: .72rem; font-weight: 700; letter-spacing: .08em;
  text-transform: uppercase; color: var(--color-oxblood);
}
.article-fragment .kd-callout > p { margin: 0; }
.article-fragment ol { padding-left: 1.5rem; }

.law-quickref { display: grid; grid-template-columns: auto 1fr; gap: 1.4rem; align-items: center; border: 1px solid var(--color-hairline); border-radius: 4px; padding: 1.4rem 1.6rem; margin: 1.8rem 0 2.4rem; background: var(--color-sand); }
.law-quickref__label { writing-mode: vertical-rl; transform: rotate(180deg); color: var(--color-oxblood); font-size: .7rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; align-self: stretch; display: flex; align-items: center; }
.law-quickref__items { list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 1.2rem 1.6rem; margin: 0; padding: 0; }
.law-quickref__items li { display: grid; grid-template-columns: 36px 1fr; gap: .7rem; align-items: start; }
.law-quickref__icon { color: var(--color-oxblood); }
.law-quickref__icon svg { width: 30px; height: 30px; color: var(--color-oxblood); }
.law-quickref__copy { font-size: .86rem; line-height: 1.4; color: var(--color-muted); }
.law-quickref__copy strong { display: block; color: var(--color-ink); font-family: var(--serif-display); font-size: 1.05rem; font-weight: 500; margin-bottom: .1rem; }

.law-aside { position: sticky; top: 96px; display: grid; gap: 1.5rem; align-self: start; }
.law-aside-card { background: var(--color-sand); border: 1px solid var(--color-hairline); border-radius: 8px; padding: 1.5rem 1.5rem; }
.law-aside-card + .law-aside-card { margin-top: 1rem; }
.law-aside-card__icon { color: var(--color-oxblood); display: inline-block; }
.law-aside-card__icon svg { width: 26px; height: 26px; }
.law-aside-card__eyebrow { font-size: .72rem; letter-spacing: .15em; text-transform: uppercase; color: var(--color-oxblood); font-weight: 700; margin: 0 0 .9rem; }
.law-aside-card__heading { font-family: var(--serif-display); font-size: 1.15rem; color: var(--color-ink); margin: 0 0 .4rem; font-weight: 500; }
.law-aside-card__body { margin: 0; font-size: .92rem; line-height: 1.6; color: var(--color-muted); }

/* Key Takeaway - solid oxblood block */
.law-aside-card--matters { background: var(--color-oxblood); border-color: var(--color-oxblood); color: var(--color-paper); display: grid; grid-template-columns: auto 1fr; gap: 1rem; align-items: center; text-align: left; }
.law-aside-card--matters .law-aside-card__eyebrow { color: color-mix(in srgb, var(--color-paper) 80%, var(--color-oxblood)); grid-column: 1 / -1; margin-bottom: .5rem; border-bottom: 1px solid color-mix(in srgb, var(--color-paper) 30%, transparent); padding-bottom: .6rem; }
.law-aside-card--matters .law-aside-card__icon { color: var(--color-paper); display: inline-flex; align-items: center; justify-content: center; width: 54px; height: 54px; border: 1px solid color-mix(in srgb, var(--color-paper) 35%, transparent); border-radius: 50%; }
.law-aside-card--matters .law-aside-card__icon svg { width: 30px; height: 30px; }
.law-aside-card--matters .law-aside-card__body { color: var(--color-paper); font-size: .92rem; }
.law-aside-card--matters .law-aside-card__heading { color: var(--color-paper); }
.law-aside-card--matters .law-aside-card__eyebrow { color: var(--color-paper); }
.law-aside-card--matters * { color: var(--color-paper); }

/* Key Terms glossary */
.law-aside-terms { margin: 0; }
.law-aside-terms dt { font-family: var(--serif-display); font-size: 1.02rem; color: var(--color-ink); margin-top: 1.1rem; font-weight: 600; }
.law-aside-terms dt:first-child { margin-top: 0; }
.law-aside-terms dd { margin: .15rem 0 0; color: var(--color-muted); font-size: .86rem; line-height: 1.55; }

/* Warning card */
.law-aside-card--warning, .law-aside-card--terms.law-aside-card--warning { border-color: color-mix(in srgb, var(--color-oxblood) 28%, var(--color-hairline)); background: var(--ox-tint); }
.law-aside-card--warning .law-aside-card__eyebrow { display: flex; align-items: center; gap: .5rem; }
.law-aside-card__warnicon { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; border: 1.5px solid var(--color-oxblood); border-radius: 50%; font-size: .72rem; font-weight: 700; }
.law-aside-card__warnbody { font-size: .92rem; line-height: 1.6; color: var(--color-ink); margin: 0; }
.law-aside-card--warning .law-aside-card__warnbody strong, .law-aside-card--warning .law-aside-card__warnbody em { color: var(--color-oxblood); font-style: normal; font-weight: 600; }

.law-footer-band { background: var(--color-porcelain); border-top: 1px solid var(--color-hairline); border-bottom: 1px solid var(--color-hairline); padding: clamp(2.5rem, 5vw, 4rem) 0; position: relative; overflow: hidden; }
.law-footer-band__inner { width: min(820px, calc(100% - 48px)); margin: 0 auto; text-align: center; position: relative; z-index: 1; }
.law-footer-band h2 { font-family: var(--serif-display); font-weight: 400; font-size: clamp(1.6rem, 3vw, 2.2rem); letter-spacing: .04em; text-transform: uppercase; color: var(--color-ink); margin: 0; }
.law-footer-band__rule { width: 70px; height: 2px; background: var(--color-oxblood); margin: .9rem auto 1.2rem; }
.law-footer-band p { font-size: 1.02rem; line-height: 1.6; color: var(--color-muted); margin: 0; }

@media (max-width: 960px) {
  .law-editorial-grid { grid-template-columns: minmax(0, 1fr); }
  .law-aside { position: static; top: auto; }
}
.article-fragment table {
  width: min(100%, 860px);
  margin: 1.4rem auto 2.4rem;
  border-collapse: collapse;
  table-layout: fixed;
  border: 1px solid var(--color-hairline);
  background: var(--color-white);
  box-shadow: 0 14px 34px color-mix(in srgb, var(--color-ink) 5%, transparent);
}
.article-fragment th,
.article-fragment td {
  padding: clamp(.85rem, 1.7vw, 1.15rem);
  border-right: 1px solid var(--color-hairline);
  border-bottom: 1px solid var(--color-hairline);
  color: var(--color-graphite);
  font-family: var(--sans);
  font-size: clamp(.9rem, 1vw, .98rem);
  line-height: 1.45;
  text-align: center;
  vertical-align: top;
}
.article-fragment th {
  color: var(--color-ink);
  background: var(--color-panel);
  font-weight: 800;
}
.article-fragment a.fasd-download-link,
.article-fragment a.fasd-download-link strong {
  color: var(--color-oxblood);
}
.article-fragment a.fasd-download-link {
  font-weight: 700;
  text-decoration-color: var(--color-oxblood);
  text-decoration-thickness: 1px;
  text-underline-offset: .18em;
}
.article-fragment a.fasd-download-link:hover,
.article-fragment a.fasd-download-link:focus-visible {
  color: #5F1724;
  text-decoration-thickness: 2px;
}
.article-fragment tr:last-child td { border-bottom: 0; }
.article-fragment th:last-child,
.article-fragment td:last-child { border-right: 0; }
.fasd-professional-proof {
  margin: clamp(2.4rem, 5vw, 4rem) 0;
  padding: clamp(1.3rem, 3vw, 2rem);
  border: 1px solid var(--color-hairline);
  background:
    radial-gradient(circle at 95% 0%, color-mix(in srgb, var(--color-gold) 10%, transparent), transparent 18rem),
    color-mix(in srgb, var(--color-paper) 84%, var(--color-white) 16%);
  box-shadow: 0 20px 60px rgba(35, 38, 41, 0.09);
}
.fasd-professional-proof__heading {
  max-width: 720px;
  margin-bottom: clamp(1rem, 2.2vw, 1.5rem);
}
.fasd-professional-proof__heading h2 {
  margin: .35rem 0 0;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(1.9rem, 3.2vw, 3.05rem);
  font-weight: 400;
  line-height: 1.05;
}
.fasd-professional-proof__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(.9rem, 2vw, 1.25rem);
}
.fasd-professional-proof-card {
  position: relative;
  display: grid;
  gap: .85rem;
  min-width: 0;
  padding: clamp(1.1rem, 2.4vw, 1.55rem);
  border: 1px solid color-mix(in srgb, var(--color-hairline) 78%, var(--color-oxblood) 22%);
  border-top: 2px solid var(--color-oxblood);
  background: var(--color-white);
  box-shadow: 0 16px 42px rgba(35, 38, 41, 0.08);
}
.fasd-professional-proof-card > span {
  color: color-mix(in srgb, var(--color-gold) 82%, var(--color-oxblood) 18%);
  font-family: var(--serif-display);
  font-size: clamp(2.8rem, 5vw, 4.8rem);
  line-height: .72;
}
.fasd-professional-proof-card blockquote {
  margin: 0;
  color: #3D4652;
}
.fasd-professional-proof-card blockquote p {
  margin: 0 0 .7rem;
  color: #3D4652;
  font-size: .98rem;
  line-height: 1.62;
}
.fasd-professional-proof-card blockquote p:last-child { margin-bottom: 0; }
.fasd-professional-proof-card strong {
  display: block;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(1.28rem, 2vw, 1.7rem);
  font-weight: 400;
  line-height: 1.05;
}
.fasd-professional-proof-card small {
  display: block;
  margin-top: .24rem;
  color: var(--color-muted);
  font-family: var(--sans);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.fasd-professional-proof-card .text-link {
  align-self: end;
  width: fit-content;
}
@media (max-width: 720px) {
  .article-fragment table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    table-layout: auto;
  }
  .article-fragment th,
  .article-fragment td {
    min-width: 10.5rem;
    padding: .8rem;
  }
  .fasd-professional-proof__grid {
    grid-template-columns: 1fr;
  }
}
.social-share { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 2rem; }
.social-share a { border: 1px solid var(--color-hairline); padding: .7rem .9rem; color: var(--color-oxblood); font-family: var(--sans); font-weight: 600; letter-spacing: .14em; text-transform: uppercase; font-size: .68rem; }
.final-cta { padding: clamp(2rem, 4vw, 3rem) 0; }
.cta-panel { padding: clamp(1.4rem, 2.6vw, 1.9rem) clamp(1.4rem, 3vw, 2.2rem); background: var(--color-ink); color: var(--color-ivory); border-radius: 12px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem 1.6rem; }
.cta-panel .eyebrow { margin: 0; width: 100%; }
.cta-panel h2 { margin: 0; font-size: clamp(1.3rem, 2.2vw, 1.7rem); line-height: 1.15; flex: 1 1 auto; }
.cta-panel > p:not(.eyebrow) { display: none; }
.cta-panel .button-row { margin: 0; flex: 0 0 auto; gap: .6rem; }
.cta-panel .button-row .button { font-size: .9rem; }
@media (max-width: 640px) { .cta-panel { flex-direction: column; align-items: stretch; } .cta-panel .button-row { flex-wrap: wrap; } }
.cta-panel h2, .cta-panel p { color: var(--color-ivory); }
.cta-panel .button-secondary, .cta-panel .button-ghost { color: var(--color-ivory); border-color: color-mix(in srgb, var(--color-white) 50%, transparent); }
.cta-panel .button-secondary:hover, .cta-panel .button-ghost:hover {
  background: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 14%);
  color: var(--color-ivory);
  border-color: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 24%);
}
.site-footer { position: relative; z-index: 2; padding: clamp(2.2rem, 4vw, 3.4rem) 0 1.15rem; background: linear-gradient(180deg, var(--color-graphite) 0%, var(--color-black-slate) 100%); color: var(--color-ivory); border-top: 1px solid color-mix(in srgb, var(--color-oxblood-tint) 22%, transparent); }
.footer-shell { width: min(1240px, calc(100% - 48px)); margin: 0 auto; }
.footer-shell a { color: inherit; }
.footer-logo { display: inline-flex; width: fit-content; align-items: center; margin-bottom: .85rem; }
.footer-logo img { width: 150px; height: auto; }
.footer-shell h2 { color: var(--color-ivory); font-size: clamp(1.45rem, 2vw, 2.1rem); font-weight: 400; line-height: 1; margin: .72rem 0 .85rem; }
.footer-shell p { max-width: 420px; margin: 0; color: var(--color-body); }
.footer-shell:not(.footer-legal) { display: grid; grid-template-columns: 1.08fr .98fr .94fr; gap: clamp(1.5rem, 4vw, 4.6rem); align-items: start; }
.footer-column { display: grid; gap: .42rem; min-height: 100%; align-content: start; }
.footer-center { justify-self: center; text-align: center; }
.footer-right { justify-self: end; text-align: right; }
.footer-links { display: grid; gap: .36rem; margin-top: .8rem; }
.footer-column a, .footer-column span { color: var(--color-body); font-family: var(--sans); font-weight: 600; letter-spacing: .14em; text-transform: uppercase; font-size: .68rem; }
.footer-column a:hover { color: var(--color-ivory); }
.footer-contact-line { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: .65rem; align-items: start; max-width: 380px; text-align: left; justify-self: center; }
.footer-contact-line span { line-height: 1.26; }
.footer-icon { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; color: var(--color-oxblood-tint); flex: 0 0 auto; }
.footer-underlined { display: inline-flex; width: fit-content; margin-top: .45rem; padding-bottom: .22rem; border-bottom: 1px solid var(--color-oxblood-tint); color: var(--color-ivory) !important; justify-self: center; }
.footer-right .footer-links { justify-items: end; }
.footer-socials { display: flex; justify-content: flex-end; gap: .55rem; margin-top: .95rem; }
.footer-socials a { width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid color-mix(in srgb, var(--color-white) 18%, transparent); color: var(--color-body); background: color-mix(in srgb, var(--color-white) 3%, transparent); transition: background .18s ease, color .18s ease, border-color .18s ease; }
.footer-socials a:hover { background: var(--color-oxblood); border-color: var(--color-oxblood); color: var(--color-ivory); }
.footer-socials .footer-icon { width: 17px; height: 17px; color: currentColor; }
.footer-legal { display: block; margin-top: clamp(1.3rem, 2.2vw, 2rem); padding-top: .8rem; border-top: 1px solid color-mix(in srgb, var(--color-white) 12%, transparent); }
.footer-legal div { display: flex; flex-wrap: wrap; gap: .7rem; margin-bottom: .32rem; }
.footer-legal a, .footer-legal p { color: var(--color-sand); font-size: .72rem; line-height: 1.34; }
@media (max-width: 1100px) {
  .nav-shell { grid-template-columns: 140px 1fr auto; }
  .nav-menu { gap: .7rem; }
  .nav-menu a, .nav-call { font-size: .62rem; }
  .card-grid { grid-template-columns: repeat(2, 1fr); }
  .card-grid[data-count] { grid-template-columns: repeat(2, 1fr); }
  .credentials-strip { grid-template-columns: repeat(2, 1fr); }
  .compact-link-grid { grid-template-columns: repeat(2, 1fr); }
  .process-grid, .timeline-grid, .method-grid, .tech-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 860px) {
  body { padding-bottom: 64px; }
  .nav-shell { grid-template-columns: 1fr auto; min-height: 90px; }
  .brand img { width: 110px; }
  .nav-toggle { display: inline-flex; flex-direction: column; gap: 5px; width: 44px; height: 44px; align-items: center; justify-content: center; border: 1px solid var(--color-hairline); background: transparent; }
  .nav-toggle span:not(.sr-only) { width: 18px; height: 1px; background: var(--color-ink); }
  .nav-menu { position: fixed; inset: 90px 0 auto; display: grid; gap: 0; padding: 1rem 20px 1.5rem; background: color-mix(in srgb, var(--color-ivory) 98%, transparent); border-bottom: 1px solid var(--color-hairline); box-shadow: 0 30px 40px color-mix(in srgb, var(--color-ink) 10%, transparent); opacity: 0; pointer-events: none; transform: translateY(-12px); transition: 180ms ease; }
  .nav-open .nav-menu { opacity: 1; pointer-events: auto; transform: translateY(0); }
  .nav-menu a { padding: 1rem 0 !important; border-bottom: 1px solid var(--color-hairline); }
  .nav-call { display: none; }
  .mobile-action-bar { position: fixed; z-index: 60; left: 0; right: 0; bottom: 0; display: grid; grid-template-columns: 1fr 1.4fr 1fr; background: var(--color-ink); border-top: 1px solid color-mix(in srgb, var(--color-white) 16%, transparent); }
  .mobile-action-bar a { color: var(--color-ivory); min-height: 64px; display: grid; place-items: center; text-align: center; padding: .5rem; border-right: 1px solid color-mix(in srgb, var(--color-white) 12%, transparent); font-family: var(--sans); font-weight: 600; letter-spacing: .11em; text-transform: uppercase; font-size: .66rem; }
  .hero-grid, .split-heading, .feature-grid, .attorney-layout, .county-layout, .contact-layout, .two-column-content, .practice-fit-strip, .ai-showcase-grid, .recognition-grid { grid-template-columns: 1fr; }
  .ai-luxury-panel { grid-template-columns: 1fr; }
  .ai-luxury-copy { padding: clamp(2.3rem, 8vw, 3.6rem) 1rem clamp(2.5rem, 8vw, 3.8rem) clamp(2.4rem, 8vw, 4rem); }
  .ai-luxury-copy:before { left: clamp(1rem, 4vw, 2rem); top: clamp(2.3rem, 8vw, 3.6rem); bottom: clamp(2.5rem, 8vw, 3.8rem); }
  .ai-luxury-image { order: -1; min-height: 42svh; border-left: 0; border-bottom: 1px solid color-mix(in srgb, var(--color-white) 16%, transparent); }
  .ai-luxury-points div { grid-template-columns: 1fr; gap: .55rem; }
  .top-feature-header { grid-template-columns: 1fr; align-items: start; }
  .hero-carousel, .hero-carousel-slide { min-height: 58svh; }
  .hero-video { min-height: 58svh; }
  .hero-video-media { min-height: 58svh; object-position: 66% center; }
  .hero-video-copy { min-height: 58svh; width: min(100% - 32px, 1240px); padding: 4rem 0 4.6rem; }
  .hero-video-copy h1 { font-size: clamp(3.2rem, 13vw, 5rem); }
  .hero-video-copy p { max-width: 100%; }
  .hero-video-overlay { background: linear-gradient(90deg, color-mix(in srgb, var(--color-ink) 92%, transparent), color-mix(in srgb, var(--color-ink) 66%, transparent)), linear-gradient(0deg, color-mix(in srgb, var(--color-ink) 74%, transparent), transparent 64%); }
  .hero-carousel-slide { grid-template-columns: 1fr; width: 100%; padding: 0; align-items: end; }
  .hero-carousel-copy { width: min(100% - 32px, 1240px); min-height: 58svh; padding: 4rem 0 4.6rem; order: initial; }
  .hero-carousel-copy h1 { font-size: clamp(3.2rem, 13vw, 5rem); }
  .hero-carousel-copy p { max-width: 100%; }
  .hero-carousel-visual { min-height: 58svh; order: initial; }
  .hero-carousel-visual:before { background: linear-gradient(90deg, color-mix(in srgb, var(--color-ink) 82%, transparent), color-mix(in srgb, var(--color-ink) 50%, transparent)), linear-gradient(0deg, color-mix(in srgb, var(--color-ink) 64%, transparent), transparent 62%); }
  .hero-carousel-visual img { min-height: 58svh; }
  .hero-carousel-controls { left: 1rem; right: auto; bottom: 1rem; }
  .feature-track { grid-auto-columns: minmax(300px, 78vw); }
  .review-flip-carousel-track { grid-auto-columns: minmax(300px, 72vw); }
  .endorsement-carousel-track { grid-auto-columns: minmax(300px, 52vw); }
  .situation-row, .urgent-situation .situation-row { grid-template-columns: repeat(2, 1fr); }
  .homepage-situation-editorial, .homepage-practice-editorial, .homepage-contact-editorial { padding-top: clamp(3rem, 9vw, 4.5rem); padding-bottom: clamp(3rem, 9vw, 4.5rem); }
  .editorial-image-band { grid-template-columns: 1fr; }
  .editorial-image-band figure { position: relative; top: auto; }
  .editorial-image-band figure, .homepage-practice-editorial .card-grid, .homepage-practice-editorial .section-link { grid-column: auto; }
  .review-hero-panel { grid-template-columns: 1fr; }
  .page-hero { min-height: auto; }
  .hero-art { display: none; }
  h1 { font-size: clamp(3.4rem, 13vw, 5rem); }
  h2 { font-size: clamp(2.35rem, 10vw, 3.6rem); }
  .action-bar { grid-template-columns: 1fr; margin-top: 0; }
  .action-bar a { border-right: 0; border-bottom: 1px solid color-mix(in srgb, var(--color-white) 14%, transparent); }
  .author-card { grid-template-columns: 1fr; align-items: start; }
  .footer-shell:not(.footer-legal) { grid-template-columns: 1fr; gap: 1.2rem; }
  .footer-mark { margin-bottom: -.25rem; }
  .footer-mark:before, .footer-mark:after { display: none; }
  .footer-center, .footer-right { justify-self: stretch; text-align: left; }
  .footer-right .footer-links { justify-items: start; }
  .footer-socials { justify-content: flex-start; }
  .intake-form, .lux-form { grid-template-columns: 1fr; }
  .lux-form .full { grid-column: auto; }
  .guide-capture { grid-template-columns: 1fr; }
  .responsive-image-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 620px) {
  .section-shell, .footer-shell, .breadcrumbs, .nav-shell { width: min(100% - 28px, 1180px); }
  .top-feature-shell { width: min(100% - 28px, 1180px); }
  .feature-track { grid-auto-columns: minmax(270px, 88vw); }
  .review-flip-carousel-track { grid-auto-columns: minmax(270px, 88vw); }
  .review-flip-carousel-controls { justify-content: flex-start; }
  .endorsement-carousel-track { grid-auto-columns: minmax(270px, 88vw); }
  .endorsement-carousel-controls { justify-content: flex-start; }
  .feature-slide { min-height: 520px; }
  .feature-slide a { grid-template-rows: 230px 1fr; }
  .card-grid, .process-grid, .timeline-grid, .method-grid, .tech-grid, .responsive-image-grid { grid-template-columns: 1fr; }
  .card-grid[data-count] { grid-template-columns: 1fr; }
  .credentials-strip { grid-template-columns: 1fr; }
  .compact-link-grid { grid-template-columns: 1fr; }
  .situation-row, .urgent-situation .situation-row { grid-template-columns: 1fr; }
  .button-row { flex-direction: column; align-items: stretch; }
  .button { width: 100%; }
}
@media (prefers-reduced-motion: no-preference) {
  .premium-card, .button, .nav-menu a:after { transition: 180ms ease; }
  main { animation: pageFade 260ms ease both; }
  @keyframes pageFade { from { opacity: .01; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }
  @keyframes heroImageZoom { from { transform: scale(1.03); } to { transform: scale(1.1); } }
  @keyframes heroPortraitZoom { from { transform: scale(1.06); } to { transform: scale(1.17); } }
  @keyframes heroVideoDrift { from { transform: scale(1.14); } to { transform: scale(1.2); } }
}
@media (prefers-reduced-motion: reduce) {
  *, *:before, *:after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .review-flip-inner { transform: none !important; transition: none !important; }
  .review-flip-card.is-flipped .review-flip-front,
  .review-flip-card[aria-pressed="true"] .review-flip-front { opacity: 0; pointer-events: none; }
  .review-flip-card.is-flipped .review-flip-back,
  .review-flip-card[aria-pressed="true"] .review-flip-back { opacity: 1; pointer-events: auto; }
  .review-flip-back { transform: none; opacity: 0; pointer-events: none; }
}

/* ===== ENHANCEMENT LAYER ===================================== */
/* Scroll-reveal: hidden only under html.js (set by main.js), so
   no-JS users and crawlers always see full content. */
@media (prefers-reduced-motion: no-preference) {
  html.js .reveal { opacity: 0; transform: translateY(14px); transition: opacity 620ms cubic-bezier(0.22,0.61,0.36,1), transform 620ms cubic-bezier(0.22,0.61,0.36,1); will-change: opacity, transform; }
  html.js .reveal.is-revealed { opacity: 1; transform: translateY(0); }
  html.js .reveal-stagger > * { opacity: 0; transform: translateY(16px); transition: opacity 560ms cubic-bezier(0.22,0.61,0.36,1), transform 560ms cubic-bezier(0.22,0.61,0.36,1); transition-delay: calc(var(--reveal-index, 0) * 70ms); will-change: opacity, transform; }
  html.js .reveal-stagger.is-revealed > * { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  html.js .reveal, html.js .reveal-stagger > * { opacity: 1 !important; transform: none !important; transition: none !important; }
}

/* Micro-interactions: extends the existing card/nav vocabulary. */
@media (prefers-reduced-motion: no-preference) {
  .button { transition: transform 160ms ease, background-color 180ms ease, border-color 180ms ease; }
  .button:active { transform: translateY(1px) scale(0.992); }
  .situation-pill { transition: background .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease; }
  .situation-pill:hover { box-shadow: 0 18px 40px color-mix(in srgb, var(--color-ink) 14%, transparent); }
  .lux-form label:focus-within { color: var(--color-oxblood); }
  .footer-socials a { transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease; }
  .footer-socials a:hover { transform: translateY(-2px); }
}
a:focus-visible, button:focus-visible, summary:focus-visible, .situation-pill:focus-visible, .premium-card a:focus-visible { outline: 2px solid var(--color-oxblood); outline-offset: 3px; }

/* Refined accordions (native <details>). */
.faq-list details { transition: border-color 200ms ease, background-color 200ms ease; }
.faq-list details[open] { border-color: color-mix(in srgb, var(--color-oxblood) 45%, var(--color-hairline)); background: var(--color-white); }
.faq-list summary { position: relative; list-style: none; padding-right: 2.4rem; transition: color 180ms ease; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary:hover { color: var(--color-oxblood); }
.faq-list summary::before { content: none !important; display: none !important; }
.faq-list summary::after {
  content: "+";
  position: absolute;
  right: .25rem;
  top: 50%;
  width: auto;
  height: auto;
  background: transparent;
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 1;
  transform: translateY(-50%);
  transition: color 180ms ease, transform 180ms ease;
}
.faq-list details[open] summary::after { content: "\2212"; }
@media (prefers-reduced-motion: no-preference) {
  .faq-list details[open] > *:not(summary) { animation: keilAccordionIn 320ms cubic-bezier(0.22,0.61,0.36,1) both; }
  @keyframes keilAccordionIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }
}

/* Click-to-text button. */
:root { --keil-sms-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M21 11.5a8.5 8.5 0 0 1-12.6 7.4L3 20l1.3-4.1A8.5 8.5 0 1 1 21 11.5Z"/></svg>'); }
.button-text-us::before { content: ""; display: inline-block; width: 16px; height: 16px; margin-right: .55rem; background: currentColor; -webkit-mask: var(--keil-sms-mask) center / contain no-repeat; mask: var(--keil-sms-mask) center / contain no-repeat; }

/* Comparison table (vs-pages). */
.compare-table { width: 100%; margin: 2rem 0 0; border-collapse: collapse; border: 1px solid var(--color-hairline); font-family: var(--sans); }
.compare-table caption { text-align: left; margin-bottom: .9rem; color: var(--color-oxblood); font-size: .68rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.compare-table th, .compare-table td { padding: 1rem 1.15rem; text-align: left; vertical-align: top; border-bottom: 1px solid var(--color-hairline); border-right: 1px solid var(--color-hairline); font-size: .98rem; line-height: 1.55; }
.compare-table th:last-child, .compare-table td:last-child { border-right: 0; }
.compare-table thead th { background: var(--color-sand); color: var(--color-ink); font-family: var(--serif); font-size: 1.15rem; font-weight: 500; }
.compare-table tbody th { background: color-mix(in srgb, var(--color-sand) 40%, var(--color-white)); color: var(--color-ink); font-weight: 600; width: 22%; }
.compare-table td { color: var(--color-body); }
.compare-table tbody tr:last-child th, .compare-table tbody tr:last-child td { border-bottom: 0; }
.data-table { width: 100%; margin: 1.6rem 0 0; border-collapse: collapse; border: 1px solid var(--color-hairline); background: var(--color-white); font-family: var(--sans); }
.data-table th, .data-table td { padding: .95rem 1.05rem; text-align: left; vertical-align: top; border-bottom: 1px solid var(--color-hairline); border-right: 1px solid var(--color-hairline); color: var(--color-body); font-size: .96rem; line-height: 1.5; }
.data-table th:last-child, .data-table td:last-child { border-right: 0; }
.data-table thead th { background: var(--color-sand); color: var(--color-ink); font-weight: 800; letter-spacing: .04em; }
.data-table tbody tr:last-child td { border-bottom: 0; }
@media (max-width: 620px) {
  .compare-table, .compare-table tbody, .compare-table tr, .compare-table td, .compare-table th { display: block; width: 100%; }
  .compare-table thead { display: none; }
  .compare-table tbody tr { border-bottom: 2px solid var(--color-oxblood); }
  .compare-table tbody th { width: 100%; background: var(--color-sand); }
  .compare-table td { border-right: 0; }
  .compare-table td::before { content: attr(data-label); display: block; margin-bottom: .25rem; color: var(--color-oxblood); font-size: .6rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
  .data-table { display: block; overflow-x: auto; }
  .data-table th, .data-table td { min-width: 150px; }
}
/* Google Appointment Schedule embed. */
.scheduler-frame-wrap { margin: 2rem 0 0; border: 1px solid var(--color-hairline); background: var(--color-white); }
.scheduler-panel { display: grid; gap: .85rem; padding: clamp(1.35rem, 3vw, 2.4rem); background: #FFFFFF; color: #232629; }
.scheduler-panel h3 { max-width: 760px; margin: 0; color: #232629; font-family: var(--serif-display); font-size: clamp(1.8rem, 3.2vw, 3.25rem); font-weight: 400; line-height: 1; }
.scheduler-panel p:not(.eyebrow) { max-width: 720px; margin: 0; color: #3D4652; line-height: 1.6; }
.scheduler-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .7rem; margin-top: .5rem; }
.scheduler-steps span { padding: .85rem .9rem; border: 1px solid #D4D8DC; color: #3D4652; font-family: var(--sans); font-size: .72rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.scheduler-steps span:before { content: ""; display: block; width: 1.45rem; height: 2px; margin-bottom: .55rem; background: #7A1F2E; }
.scheduler-fallback { margin-top: 1.25rem; }
@media (max-width: 620px) { .scheduler-steps { grid-template-columns: 1fr; } }

/* Court-process timeline (criminal-case-timeline page). */
.process-timeline { list-style: none; margin: 0; padding: 0; position: relative; }
.process-timeline:before { content: ""; position: absolute; left: 27px; top: 8px; bottom: 8px; width: 1px; background: var(--color-hairline); }
.process-timeline-step { position: relative; display: grid; grid-template-columns: 56px 1fr; gap: clamp(1rem, 2.5vw, 2rem); padding: 0 0 clamp(1.8rem, 3.5vw, 2.8rem); }
.process-timeline-step:last-child { padding-bottom: 0; }
.process-timeline-marker { position: relative; z-index: 1; width: 56px; height: 56px; display: grid; place-items: center; border: 1px solid var(--color-oxblood); background: var(--color-white); }
.process-timeline-marker span { color: var(--color-oxblood); font-family: var(--serif); font-size: 1.3rem; font-weight: 500; }
.process-timeline-body { padding-top: .35rem; }
.process-timeline-body h3 { font-size: clamp(1.5rem, 2.1vw, 2.05rem); }
.process-timeline-summary { margin: .7rem 0 0; color: var(--color-body); }
.process-timeline-detail { margin: .6rem 0 0; padding-top: .6rem; border-top: 1px solid var(--color-hairline); color: var(--color-muted); font-size: .95rem; }
.process-timeline-section .disclaimer-text { margin-top: clamp(1.6rem, 3vw, 2.4rem); }
@media (prefers-reduced-motion: no-preference) {
  /* The timeline section is observed for is-revealed, but the block
     itself should not fade as a whole - only its steps stagger in. */
  html.js .process-timeline-section.reveal { opacity: 1; transform: none; }
  html.js .process-timeline-step { opacity: 0; transform: translateY(16px); transition: opacity 560ms cubic-bezier(0.22,0.61,0.36,1), transform 560ms cubic-bezier(0.22,0.61,0.36,1); transition-delay: calc(var(--step-index, 0) * 80ms); }
  html.js .process-timeline-section.is-revealed .process-timeline-step { opacity: 1; transform: translateY(0); }
}
@media (max-width: 620px) {
  .process-timeline-step { grid-template-columns: 44px 1fr; gap: 1rem; }
  .process-timeline:before { left: 21px; }
  .process-timeline-marker { width: 44px; height: 44px; }
  .process-timeline-marker span { font-size: 1.05rem; }
}

/* ===== DARK LUXURY REDESIGN ================================== */
body {
  background:
    radial-gradient(circle at 78% 8%, color-mix(in srgb, var(--color-oxblood) 16%, transparent), transparent 30rem),
    linear-gradient(180deg, var(--color-black-slate) 0%, var(--color-graphite) 42%, var(--color-black-slate) 100%);
  color: var(--color-body);
}
body:before {
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--color-white) 4%, transparent) 1px, transparent 1px),
    linear-gradient(color-mix(in srgb, var(--color-white) 3%, transparent) 1px, transparent 1px);
  background-size: 84px 84px;
  opacity: .16;
}
.site-header {
  background: color-mix(in srgb, var(--color-ink) 88%, transparent);
  border-bottom: 1px solid color-mix(in srgb, var(--color-white) 12%, transparent);
  box-shadow: 0 18px 50px color-mix(in srgb, var(--color-black-slate) 28%, transparent);
}
.brand img { width: 112px; }
.nav-menu a, .nav-call, .nav-client { color: var(--color-ivory); }
.nav-menu a:after { background: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 38%); }
.nav-payment, .nav-call {
  border-color: color-mix(in srgb, var(--color-white) 28%, transparent);
  color: var(--color-ivory);
  background: color-mix(in srgb, var(--color-white) 4%, transparent);
}
.nav-call:hover, .nav-payment:hover, .nav-client:hover {
  background: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 14%);
  border-color: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 24%);
  color: var(--color-ivory);
}
.page-hero,
.ivory-section,
.ivory-image-block {
  background: transparent;
  border-color: color-mix(in srgb, var(--color-white) 10%, transparent);
}
.section-band {
  background: var(--color-paper);
  border: 1px solid var(--color-hairline);
  border-radius: 14px;
  padding: clamp(2rem, 4vw, 3.4rem);
  margin: clamp(1.4rem, 2.6vw, 2.2rem) auto;
  width: min(1240px, calc(100% - 48px));
}
@media (hover: hover) and (pointer: fine) {
  .page-hero,
  .content-section,
  .section-band,
  .final-cta,
  .top-feature-scroller {
    position: relative;
    transition: border-color 220ms ease, box-shadow 220ms ease, background-color 220ms ease;
  }
  .content-section:hover .eyebrow,
  .section-band:hover .eyebrow,
  .final-cta:hover .eyebrow,
  .top-feature-scroller:hover .eyebrow {
    color: color-mix(in srgb, var(--color-oxblood) 58%, var(--color-porcelain) 42%);
  }
}
h1, h2, h3 { color: var(--color-ivory); }
p, .section-lead, .hero-copy { color: var(--color-body); }
.eyebrow { color: var(--color-oxblood-tint); }
.hero-copy { border-top-color: color-mix(in srgb, var(--color-oxblood-tint) 60%, transparent); }
.hero-trust-line { color: var(--color-smoke); }
.button-secondary, .button-ghost {
  color: var(--color-ivory);
  border-color: color-mix(in srgb, var(--color-white) 28%, transparent);
  background: color-mix(in srgb, var(--color-white) 3%, transparent);
}
.button-secondary:hover, .button-ghost:hover {
  background: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 14%);
  color: var(--color-ivory);
  border-color: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 24%);
}
.hero-video {
  min-height: clamp(520px, 68svh, 760px);
  border-bottom-color: color-mix(in srgb, var(--color-white) 12%, transparent);
}
.hero-video-media {
  min-height: clamp(520px, 68svh, 760px);
  filter: grayscale(.28) saturate(.64) contrast(1.12) brightness(.72);
  transform: scale(1.08);
}
.hero-video-copy {
  min-height: clamp(520px, 68svh, 760px);
  padding-top: clamp(4rem, 8vw, 7rem);
  padding-bottom: clamp(3.6rem, 6vw, 5.2rem);
}
.hero-video-copy h1 {
  max-width: 900px;
  font-size: clamp(4.4rem, 8.2vw, 9rem);
  letter-spacing: .006em;
}
.hero-video-copy p { max-width: 760px; font-size: clamp(1.05rem, 1.35vw, 1.28rem); }
.hero-video-overlay {
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--color-ink) 96%, transparent), color-mix(in srgb, var(--color-ink) 72%, transparent) 46%, color-mix(in srgb, var(--color-ink) 30%, transparent)),
    linear-gradient(0deg, color-mix(in srgb, var(--color-ink) 72%, transparent), transparent 58%);
}
.dark-action-bar {
  margin-top: -1px;
  border-color: color-mix(in srgb, var(--color-white) 12%, transparent);
  background: color-mix(in srgb, var(--color-panel) 94%, transparent);
  box-shadow: none;
}
.dark-action-bar a {
  min-height: 74px;
  color: var(--color-ivory);
  border-right-color: color-mix(in srgb, var(--color-white) 10%, transparent);
}
.dark-action-bar a:hover {
  background: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 14%);
  color: var(--color-ivory);
}
.homepage-explore-rail {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(1rem, 2vw, 1.5rem);
  margin-bottom: clamp(1.4rem, 3vw, 2.2rem);
  border: 1px solid color-mix(in srgb, var(--color-white) 12%, transparent);
  background: color-mix(in srgb, var(--color-white) 12%, transparent);
}
.explore-rail-card {
  display: block;
  min-height: 138px;
  padding: clamp(1rem, 2vw, 1.55rem);
  text-decoration: none;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-white) 5%, transparent), transparent 62%),
    color-mix(in srgb, var(--color-panel) 92%, transparent);
  transition: transform 260ms ease, background 260ms ease;
}
.explore-rail-card span {
  color: var(--color-ivory);
  font-family: var(--serif);
  font-size: clamp(1.45rem, 2vw, 2rem);
  font-weight: 500;
  line-height: 1;
}
.explore-rail-card p {
  margin: .75rem 0 0;
  color: var(--color-muted);
  font-size: .88rem;
  line-height: 1.5;
}
.explore-rail-card:hover {
  transform: translateY(-4px);
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-oxblood) 28%, transparent), transparent 60%),
    color-mix(in srgb, var(--color-white) 7%, var(--color-panel));
}
.payment-hero {
  position: relative;
  min-height: clamp(430px, 52svh, 590px);
  overflow: hidden;
  isolation: isolate;
  background: var(--color-black-slate);
  color: var(--color-ivory);
  border-bottom: 1px solid rgba(255,255,255,.12);
}
.payment-hero-video {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 68% center;
  filter: grayscale(.12) saturate(.82) contrast(1.04) brightness(.78);
  transform: scale(1.04);
}
.payment-hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(12,17,24,.94) 0%, rgba(12,17,24,.84) 34%, rgba(12,17,24,.46) 66%, rgba(12,17,24,.2) 100%),
    linear-gradient(0deg, rgba(12,17,24,.7), rgba(12,17,24,.16) 58%, rgba(12,17,24,.42));
}
.payment-hero:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  height: 112px;
  pointer-events: none;
  background: linear-gradient(to bottom, transparent, #F2EDE4);
}
.payment-hero-content {
  position: relative;
  z-index: 2;
  display: flex;
  min-height: clamp(430px, 52svh, 590px);
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding-top: clamp(4rem, 7vw, 6rem);
  padding-bottom: clamp(4.5rem, 7vw, 6.5rem);
}
.payment-hero-content .eyebrow {
  color: var(--color-gold);
  text-shadow: 0 2px 20px rgba(0,0,0,.55);
}
.payment-hero-content h1 {
  max-width: 11ch;
  margin: .6rem 0 0;
  color: var(--color-ivory);
  font-family: var(--serif-display);
  font-size: clamp(3.3rem, 7vw, 7.4rem);
  font-weight: 400;
  line-height: .96;
  text-shadow: 0 3px 28px rgba(0,0,0,.58);
}
.payment-hero-rule {
  display: block;
  width: 124px;
  height: 2px;
  margin: clamp(1.1rem, 2vw, 1.6rem) 0;
  background: linear-gradient(90deg, var(--color-oxblood), var(--color-gold));
}
.payment-hero-content p:not(.eyebrow) {
  max-width: 660px;
  margin: 0;
  color: rgba(247,243,234,.86);
  font-size: clamp(1.05rem, 1.35vw, 1.24rem);
  line-height: 1.65;
  text-shadow: 0 2px 18px rgba(0,0,0,.55);
}
@media (prefers-reduced-motion: no-preference) {
  .payment-hero-video { animation: heroVideoDriftLuxury 28s ease-in-out infinite alternate; }
}
@media (max-width: 760px) {
  .payment-hero,
  .payment-hero-content { min-height: 58svh; }
  .payment-hero-video { object-position: 72% center; }
  .payment-hero-overlay { background: linear-gradient(90deg, rgba(12,17,24,.94), rgba(12,17,24,.7)), linear-gradient(0deg, rgba(12,17,24,.72), rgba(12,17,24,.18) 64%); }
  .payment-hero-content h1 { max-width: 12ch; font-size: clamp(3rem, 13vw, 5rem); }
  .payment-hero-content p:not(.eyebrow) { max-width: 100%; }
}
.payment-redesign {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 10%, rgba(122,31,46,.075), transparent 34%),
    linear-gradient(180deg, #F2EDE4 0%, var(--color-paper) 100%);
  padding: clamp(4rem, 7vw, 6.5rem) 0 clamp(4.5rem, 8vw, 7rem);
}
.payment-redesign:before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(201,160,99,.08), transparent 36%),
    radial-gradient(circle at 92% 82%, rgba(201,160,99,.13), transparent 34%);
}
.payment-redesign > .section-shell {
  position: relative;
  z-index: 1;
}
.payment-methods-section {
  display: grid;
  grid-template-columns: minmax(260px, .42fr) minmax(0, 1fr);
  gap: clamp(2.2rem, 4vw, 4rem);
  align-items: stretch;
}
.payment-methods-intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: clamp(1.5rem, 2.7vw, 2.4rem) 0;
}
.payment-methods-intro .eyebrow,
.payment-consult-strip .eyebrow { color: var(--color-oxblood); }
.payment-gold-rule {
  display: block;
  width: 138px;
  height: 2px;
  margin: 1.05rem 0 1.45rem;
  background: linear-gradient(90deg, var(--color-gold), rgba(201,160,99,.18));
}
.payment-methods-intro h2,
.payment-consult-strip h2 {
  margin: 0;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-weight: 500;
  line-height: 1.02;
}
.payment-methods-intro h2 {
  max-width: 12ch;
  font-size: clamp(2.8rem, 4.8vw, 4.9rem);
  letter-spacing: .005em;
}
.payment-methods-intro p:not(.eyebrow) {
  max-width: 28ch;
  margin: 1.25rem 0 0;
  color: var(--color-slate);
  font-size: clamp(1.02rem, 1.25vw, 1.14rem);
  line-height: 1.6;
}
.payment-methods-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1rem, 1.65vw, 1.45rem);
  min-width: 0;
}
.payment-method-card,
.payment-assurance-card {
  position: relative;
  border: 1px solid color-mix(in srgb, var(--color-gold) 64%, var(--color-hairline));
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(250,247,240,.98));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    0 24px 70px rgba(35, 38, 41, 0.13);
}
.payment-method-card:before,
.payment-assurance-card:before,
.payment-consult-strip:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 72px;
  height: 2px;
  background: var(--color-gold);
}
.payment-method-card {
  display: flex;
  min-height: clamp(280px, 23vw, 340px);
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .95rem;
  padding: clamp(1.45rem, 2.4vw, 2.2rem) clamp(1rem, 1.7vw, 1.35rem);
  text-align: center;
}
.payment-method-card__icon,
.payment-assurance-card__icon,
.payment-consult-strip__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.payment-method-card__icon {
  width: 76px;
  height: 76px;
  background: transparent;
  filter: drop-shadow(0 12px 22px rgba(35,38,41,.09));
}
.payment-method-card__icon img { width: 64px; height: 64px; object-fit: contain; }
.payment-method-card h3 {
  margin: .35rem 0 0;
  color: var(--color-ink);
  font-family: var(--sans);
  font-size: .84rem;
  font-weight: 800;
  letter-spacing: .2em;
  line-height: 1.2;
  text-transform: uppercase;
}
.payment-method-card p,
.payment-assurance-card p,
.payment-consult-strip > p {
  margin: 0;
  color: var(--color-slate);
  line-height: 1.58;
}
.payment-method-card p { max-width: 19ch; font-size: .95rem; }
.payment-assurance-section {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 1.8vw, 1.45rem);
  margin-top: clamp(2rem, 4vw, 3.2rem);
}
.payment-assurance-card {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 1.15rem;
  align-items: start;
  min-width: 0;
  padding: clamp(1.5rem, 2.4vw, 2rem);
}
.payment-assurance-card__icon {
  width: 52px;
  height: 52px;
  border: 1px solid rgba(201,160,99,.42);
  background: rgba(255,255,255,.62);
}
.payment-assurance-card__icon img { width: 36px; height: 36px; object-fit: contain; }
.payment-assurance-card h3 {
  margin: 0 0 .55rem;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(1.45rem, 2vw, 1.82rem);
  font-weight: 500;
  line-height: 1.06;
}
.payment-assurance-card p { font-size: .98rem; }
.payment-consult-strip {
  position: relative;
  display: grid;
  grid-template-columns: minmax(270px, 1.05fr) minmax(260px, .95fr) minmax(280px, .72fr);
  gap: clamp(1.25rem, 2.5vw, 2.5rem);
  align-items: center;
  margin-top: clamp(2.1rem, 4vw, 3.4rem);
  border: 1px solid color-mix(in srgb, var(--color-gold) 68%, var(--color-hairline));
  background:
    linear-gradient(135deg, rgba(255,255,255,.96) 0%, var(--color-paper) 48%, rgba(201,160,99,.12) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    0 28px 80px rgba(35, 38, 41, 0.15);
  padding: clamp(1.45rem, 2.8vw, 2.25rem);
}
.payment-consult-strip__lead {
  display: flex;
  gap: 1rem;
  align-items: center;
  min-width: 0;
}
.payment-consult-strip__icon {
  flex: 0 0 auto;
  width: 58px;
  height: 58px;
  border: 1px solid rgba(201,160,99,.52);
  background: rgba(255,255,255,.68);
  box-shadow: 0 14px 36px rgba(35,38,41,.1);
}
.payment-consult-strip__icon img { width: 40px; height: 40px; object-fit: contain; }
.payment-consult-strip h2 { font-size: clamp(1.85rem, 2.8vw, 2.7rem); }
.payment-consult-strip > p { max-width: 42ch; font-size: 1.06rem; }
.payment-consult-strip__action { display: grid; justify-items: stretch; }
.payment-consult-button {
  display: grid;
  gap: .4rem;
  justify-items: center;
  align-items: center;
  min-height: 94px;
  padding: 1.1rem 1.35rem;
  border: 1px solid color-mix(in srgb, var(--color-gold) 62%, transparent);
  background:
    radial-gradient(circle at 18% 0%, rgba(255,255,255,.18), transparent 34%),
    linear-gradient(180deg, color-mix(in srgb, var(--color-oxblood) 88%, var(--color-black-slate)) 0%, var(--color-oxblood) 100%);
  color: var(--color-white);
  text-align: center;
  text-decoration: none;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 18px 42px color-mix(in srgb, var(--color-oxblood) 34%, transparent);
}
.payment-consult-button span {
  font-size: .78rem;
  font-weight: 850;
  letter-spacing: .17em;
  text-transform: uppercase;
}
.payment-consult-button strong {
  color: color-mix(in srgb, var(--color-white) 88%, var(--color-gold));
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .13em;
}
.payment-consult-button:hover { color: var(--color-white); transform: translateY(-2px); }
@media (max-width: 1120px) {
  .payment-methods-section,
  .payment-consult-strip { grid-template-columns: minmax(0, 1fr); }
  .payment-methods-intro { padding-bottom: 0; }
  .payment-methods-intro h2,
  .payment-methods-intro p:not(.eyebrow) { max-width: 100%; }
  .payment-consult-strip__action { justify-items: start; }
  .payment-consult-button { min-width: min(100%, 340px); }
}
@media (max-width: 860px) {
  .payment-methods-grid,
  .payment-assurance-section { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .payment-redesign { padding-top: 3rem; }
  .payment-methods-grid,
  .payment-assurance-section { grid-template-columns: minmax(0, 1fr); }
  .payment-method-card { min-height: 230px; }
  .payment-assurance-card { grid-template-columns: minmax(0, 1fr); }
  .payment-consult-strip__lead { align-items: flex-start; }
  .payment-consult-button { width: 100%; min-width: 0; }
}
.premium-card,
.rating-badge,
.process-grid div,
.timeline-grid article,
.notice,
.portrait-placeholder,
.map-placeholder,
.search-placeholder,
.upload-placeholder,
.payment-panel {
  background: linear-gradient(180deg, color-mix(in srgb, var(--color-white) 5%, transparent), color-mix(in srgb, var(--color-white) 2%, transparent));
  border-color: color-mix(in srgb, var(--color-white) 12%, transparent);
}
.premium-card {
  overflow: hidden;
  border-right-color: color-mix(in srgb, var(--color-white) 10%, transparent);
  border-bottom-color: color-mix(in srgb, var(--color-white) 10%, transparent);
}
.premium-card:hover {
  background: color-mix(in srgb, var(--color-ink) 4%, var(--color-sand));
  border-color: color-mix(in srgb, var(--color-oxblood) 48%, var(--color-porcelain) 12%);
  box-shadow: 0 18px 42px color-mix(in srgb, var(--color-ink) 9%, transparent);
  transform: translateY(-2px);
}
.premium-card:hover:before {
  background: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-porcelain) 24%);
  transform: scaleX(1);
}
.premium-card:has(.text-link) {
  min-height: 280px;
  isolation: isolate;
  cursor: pointer;
}
/* Stretched link: the link's ::after overlay covers the whole card,
   making the entire card clickable while keeping one real, focusable anchor. */
.premium-card:has(.text-link) .text-link::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}
/* Keep real inline elements (if any) above the overlay so text stays selectable where needed. */
.premium-card:has(.text-link) > *:not(.text-link) {
  position: relative;
}
.premium-card:has(.text-link):hover .text-link {
  text-decoration: underline;
}
.premium-card:has(.text-link):focus-within {
  outline: 2px solid var(--color-oxblood);
  outline-offset: 2px;
}
.premium-card:has(.text-link):hover {
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-soft-contrast) 24%, transparent), transparent 58%),
    color-mix(in srgb, var(--color-white) 7%, var(--color-panel));
}
.premium-card span { color: var(--color-oxblood-tint); }
.premium-card p, .premium-card .review-meta, .result-details dd, .mini-disclaimer { color: var(--color-muted); }
.premium-card h3, .review-card blockquote { color: var(--color-ivory); }
.card-grid {
  background: color-mix(in srgb, var(--color-white) 10%, transparent);
  border-color: color-mix(in srgb, var(--color-white) 10%, transparent);
}
.pathway-card-grid .premium-card {
  min-height: 255px;
  display: flex;
  flex-direction: column;
}
.pathway-card-grid .premium-card .text-link { margin-top: auto; }
.case-review-panel {
  display: grid;
  grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
  gap: clamp(1.5rem, 4vw, 4rem);
  align-items: stretch;
  width: 100%;
  max-width: 100%;
  padding: clamp(1rem, 2vw, 1.5rem);
  box-sizing: border-box;
  border: 1px solid color-mix(in srgb, var(--color-white) 12%, transparent);
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-oxblood) 16%, transparent), transparent 34%),
    color-mix(in srgb, var(--color-panel) 92%, transparent);
}
.case-review-copy { padding: clamp(1.5rem, 3vw, 3rem); display: flex; flex-direction: column; justify-content: center; }
.case-review-copy h2 { font-size: clamp(1.9rem, 2.4vw, 2.7rem); line-height: 1.14; text-wrap: balance; margin-bottom: 1rem; }
.case-review-signals { display: grid; gap: .7rem; margin: 2rem 0 0; padding: 0; list-style: none; }
.case-review-signals li {
  padding: .85rem 0 .85rem 1.15rem;
  border-top: 1px solid color-mix(in srgb, var(--color-white) 12%, transparent);
  color: var(--color-smoke);
  position: relative;
}
.case-review-signals li:before { content: ""; position: absolute; left: 0; top: 1.5rem; width: 5px; height: 5px; background: var(--color-oxblood-tint); }
.lux-form {
  background: color-mix(in srgb, var(--color-white) 6%, transparent);
  border-color: color-mix(in srgb, var(--color-white) 14%, transparent);
  box-shadow: 0 26px 80px color-mix(in srgb, var(--color-black-slate) 30%, transparent);
}
.lux-form label { color: var(--color-smoke); }
.lux-form input, .lux-form select, .lux-form textarea {
  background: color-mix(in srgb, var(--color-ink) 74%, var(--color-porcelain) 6%);
  color: var(--color-ivory);
  border-color: color-mix(in srgb, var(--color-white) 16%, transparent);
}
.lux-form input:focus, .lux-form select:focus, .lux-form textarea:focus {
  border-color: var(--color-oxblood-tint);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-oxblood) 28%, transparent);
}
.review-hero-panel,
.homepage-reviews,
.homepage-results-preview,
.premium-plus-section,
.homepage-insights-preview { position: relative; }
.insight-route-strip {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  margin: 0 0 clamp(1.4rem, 3vw, 2.2rem);
}
.insight-route-strip a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: .65rem .9rem;
  border: 1px solid color-mix(in srgb, var(--color-white) 16%, transparent);
  color: var(--color-ivory);
  background: color-mix(in srgb, var(--color-white) 4%, transparent);
  font-family: var(--sans);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-decoration: none;
  text-transform: uppercase;
}
.insight-route-strip a:hover {
  background: var(--color-ivory);
  color: var(--color-ink);
  border-color: var(--color-ivory);
}
.testimonial-disclaimer,
.disclaimer-text,
.mini-disclaimer {
  color: var(--color-muted);
}
.keil-method-section {
  border-top: 1px solid color-mix(in srgb, var(--color-white) 10%, transparent);
  border-bottom: 1px solid color-mix(in srgb, var(--color-white) 10%, transparent);
}
.luxury-method-grid article {
  background: color-mix(in srgb, var(--color-white) 4%, transparent);
  border-color: color-mix(in srgb, var(--color-white) 10%, transparent);
}
.luxury-method-grid span { color: var(--color-oxblood-tint); }
.luxury-method-grid p { color: var(--color-muted); }
.premium-plus-list details {
  background: color-mix(in srgb, var(--color-white) 4%, transparent);
  border-color: color-mix(in srgb, var(--color-white) 12%, transparent);
}
.premium-plus-list details[open] {
  background: color-mix(in srgb, var(--color-white) 7%, transparent);
  border-color: color-mix(in srgb, var(--color-oxblood-tint) 42%, transparent);
}
.premium-plus-list summary { color: var(--color-ivory); }
.premium-plus-list p { color: var(--color-body); }
.faq-list {
  gap: 0;
  border: 1px solid color-mix(in srgb, var(--color-white) 12%, transparent);
}
.faq-list details {
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--color-white) 12%, transparent);
  background: color-mix(in srgb, var(--color-white) 4%, transparent);
  padding: clamp(1.15rem, 2vw, 1.65rem) clamp(1.1rem, 2.4vw, 1.8rem);
}
.faq-list details:last-child { border-bottom: 0; }
.faq-list details[open] {
  background: color-mix(in srgb, var(--color-white) 7%, transparent);
  border-color: color-mix(in srgb, var(--color-soft-contrast) 58%, transparent);
}
.faq-list summary {
  color: var(--color-porcelain);
  font-size: clamp(1.45rem, 2.15vw, 2.25rem);
}
.faq-list p { color: var(--color-cool-gray); }
.faq-list summary::after,
.faq-list summary::before { background: var(--color-porcelain); }
.editorial-image-band figure,
.ai-luxury-panel {
  border-color: color-mix(in srgb, var(--color-white) 12%, transparent);
  background: color-mix(in srgb, var(--color-panel) 82%, transparent);
}
.ai-luxury-panel {
  box-shadow: 0 34px 100px color-mix(in srgb, var(--color-black-slate) 34%, transparent);
}
.ai-luxury-copy h2,
.ai-luxury-copy p,
.ai-luxury-points p,
.ai-luxury-note { color: var(--color-ivory); }
.ai-luxury-lede,
.ai-luxury-note,
.ai-luxury-points p { color: var(--color-porcelain) !important; }
.ai-luxury-points strong {
  color: color-mix(in srgb, var(--color-soft-contrast) 56%, var(--color-porcelain) 44%);
}
.ai-luxury-quote { color: var(--color-porcelain); }
.ai-luxury-quote,
.ai-luxury-points {
  border-color: color-mix(in srgb, var(--color-soft-contrast) 70%, transparent);
}
.ai-luxury-points span {
  color: color-mix(in srgb, var(--color-oxblood) 70%, var(--color-porcelain) 30%);
}
.home-county-teaser { background: color-mix(in srgb, var(--color-white) 3%, transparent); }
.interior-premium-suite {
  border-top: 1px solid color-mix(in srgb, var(--color-soft-contrast) 34%, transparent);
}
.interior-premium-grid {
  display: grid;
  grid-template-columns: .78fr 1.22fr;
  gap: 1px;
  border: 1px solid color-mix(in srgb, var(--color-white) 13%, transparent);
  background: color-mix(in srgb, var(--color-white) 13%, transparent);
}
.interior-google-box,
.interior-case-review {
  min-height: 360px;
  padding: clamp(1.4rem, 3vw, 2.8rem);
  background:
    radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--color-soft-contrast) 24%, transparent), transparent 20rem),
    color-mix(in srgb, var(--color-panel) 94%, transparent);
}
.interior-google-box span,
.interior-case-review span {
  color: color-mix(in srgb, var(--color-soft-contrast) 56%, var(--color-porcelain) 44%);
  font-family: var(--sans);
  font-size: .6rem;
  font-weight: 700;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.interior-google-box strong {
  display: block;
  margin: clamp(1rem, 2vw, 1.6rem) 0 .45rem;
  color: var(--color-porcelain);
  font-family: var(--serif-display);
  font-size: clamp(4rem, 8vw, 7rem);
  font-weight: 400;
  line-height: .78;
}
.interior-google-box p,
.interior-case-review p { color: var(--color-cool-gray); }
.interior-case-review h2 {
  margin-top: 1rem;
  color: var(--color-porcelain);
  font-size: clamp(2.8rem, 5vw, 5.6rem);
  font-weight: 400;
}
.compact-case-form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: clamp(1.2rem, 2.4vw, 2rem);
  padding: clamp(1rem, 2vw, 1.45rem);
  box-shadow: none;
}
.footer-shell p, .footer-legal a, .footer-legal p, .footer-socials a { color: var(--color-muted); }
@media (max-width: 860px) {
  .nav-toggle { border-color: color-mix(in srgb, var(--color-white) 22%, transparent); }
  .nav-toggle span:not(.sr-only) { background: var(--color-ivory); }
  .nav-menu { background: color-mix(in srgb, var(--color-ink) 98%, transparent); border-bottom-color: color-mix(in srgb, var(--color-white) 12%, transparent); }
  .hero-video, .hero-video-media, .hero-video-copy { min-height: 76svh; }
  .hero-video-copy h1 { font-size: clamp(3.7rem, 16vw, 5.8rem); }
  .case-review-panel { grid-template-columns: 1fr; }
  .interior-premium-grid { grid-template-columns: 1fr; }
  .compact-case-form { grid-template-columns: 1fr; }
  .dark-action-bar { width: 100%; border-left: 0; border-right: 0; }
}
@media (max-width: 620px) {
  .hero-video-copy { padding-bottom: 5.4rem; }
  .case-review-copy { padding: 1.2rem; }
  .dark-action-bar a { min-height: 58px; }
}

/* High-contrast correction: oxblood is an accent, not body copy. */
.text-link,
.breadcrumbs a,
.filter-row button,
.stars,
.result-details dt,
.testimonial-disclaimer span,
.rating-badge span,
.process-grid span,
.timeline-grid span,
.premium-image-card span,
.compact-link-grid span,
.social-share a,
.form-status {
  color: var(--color-oxblood-tint);
}
.homepage-ai-band .eyebrow,
.homepage-ai-band .text-link,
.ai-luxury-panel:before,
.ai-luxury-points span,
.media-feature-section .premium-card span,
.media-feature-section .premium-card .text-link,
.compare-table caption,
.compare-table td::before,
.process-timeline-marker span {
  color: var(--color-soft-contrast);
}
.media-feature-section {
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-oxblood) 12%, transparent), transparent 34%),
    var(--color-panel);
}
.media-feature-section .eyebrow,
.media-feature-section .premium-card span,
.media-feature-section .premium-card .text-link {
  color: var(--color-porcelain) !important;
}
.media-feature-section h2,
.media-feature-section .premium-card h3 {
  color: var(--color-porcelain) !important;
}
.media-feature-section .premium-card p,
.media-feature-section .disclaimer-text {
  color: var(--color-cool-gray) !important;
}
.media-feature-section .premium-card {
  border-color: color-mix(in srgb, var(--color-porcelain) 22%, transparent);
  background: color-mix(in srgb, var(--color-porcelain) 3.5%, transparent);
}
.media-feature-section .premium-card:before {
  background: var(--color-oxblood);
}
.media-feature-section .premium-card .text-link {
  border-bottom: 1px solid color-mix(in srgb, var(--color-oxblood) 72%, var(--color-porcelain) 18%);
}
.media-quote-list {
  display: grid;
  gap: .85rem;
  margin-top: 1rem;
}
.media-quote {
  margin: 0;
  padding: clamp(1.1rem, 2vw, 1.45rem);
  background: var(--color-white) !important;
  border: 1px solid var(--color-hairline);
  color: var(--color-ink) !important;
}
.media-quote p {
  margin: 0;
  color: var(--color-ink) !important;
  font-family: var(--serif-display);
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  line-height: 1.18;
}
.media-quote cite {
  display: block;
  margin-top: .85rem;
  color: var(--color-oxblood) !important;
  font-family: var(--sans);
  font-size: .68rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.results-prose-section .eyebrow,
.results-prose-section .section-heading h2,
.results-prose-section .section-heading p,
.results-prose-section .results-category > h2,
.results-prose-section .result-writeup h3 {
  color: var(--color-porcelain) !important;
}
.results-prose-section .result-writeup p,
.results-prose-section .bottom-notice {
  color: var(--color-cool-gray) !important;
}
.results-prose-section .results-category,
.results-prose-section .result-writeup {
  border-top-color: color-mix(in srgb, var(--color-porcelain) 14%, transparent);
}
.results-prose-section .featured-result-writeup {
  background: color-mix(in srgb, var(--color-porcelain) 5%, transparent);
}
.faq-list summary:hover { color: var(--color-ivory); }
.filter-row button {
  border-color: color-mix(in srgb, var(--color-white) 18%, transparent);
  background: color-mix(in srgb, var(--color-white) 4%, transparent);
}

/* New homepage visual system. */
.hero-proof-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(.8rem, 1.5vw, 1rem);
  width: 100%;
  margin-top: clamp(.85rem, 1.6vw, 1.1rem);
  background: transparent;
  border: 0;
}
.hero-proof-grid div {
  min-height: 132px;
  padding: clamp(1.25rem, 2.3vw, 2rem);
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  backdrop-filter: none;
}
.hero-proof-grid span,
.google-review-feature span,
.endorsement-preview span {
  color: var(--color-oxblood-tint);
  font-family: var(--sans);
  font-size: .58rem;
  font-weight: 700;
  letter-spacing: .24em;
  text-transform: uppercase;
}
.hero-proof-grid strong {
  display: block;
  margin-top: 0;
  color: var(--color-ink);
  font-family: var(--sans);
  font-size: clamp(1rem, 1.08vw, 1.12rem);
  font-weight: 650;
  line-height: 1.38;
}
.hero-proof-grid p { margin: .65rem 0 0; color: var(--color-muted); font-size: .88rem; line-height: 1.5; }
.homepage-situation-editorial,
.case-review-module,
.review-command-section,
.homepage-results-preview,
.homepage-practice-editorial,
.keil-method-section,
.premium-plus-section,
.homepage-insights-preview,
.final-dark-cta {
  position: relative;
}
.homepage-situation-editorial:before,
.homepage-results-preview:before,
.homepage-practice-editorial:before {
  content: "";
  position: absolute;
  left: max(24px, calc((100vw - 1240px) / 2));
  right: max(24px, calc((100vw - 1240px) / 2));
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--color-oxblood-tint) 48%, transparent), transparent);
}
.pathway-card-grid,
.homepage-practice-editorial .card-grid,
.result-preview-grid,
.insight-card-grid {
  gap: 1px;
  background: color-mix(in srgb, var(--color-white) 13%, transparent);
  border: 1px solid color-mix(in srgb, var(--color-white) 13%, transparent);
}
.pathway-card-grid .premium-card,
.homepage-practice-editorial .premium-card {
  min-height: 290px;
  padding: clamp(1.4rem, 2.6vw, 2.4rem);
  isolation: isolate;
}
.pathway-card-grid .premium-card:after,
.homepage-practice-editorial .premium-card:after {
  content: "Review options";
  position: absolute;
  left: clamp(1.4rem, 2.6vw, 2.4rem);
  right: clamp(1.4rem, 2.6vw, 2.4rem);
  bottom: clamp(1.2rem, 2vw, 1.7rem);
  color: var(--color-ivory);
  font-family: var(--sans);
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  opacity: 0;
  transform: translateY(12px);
  transition: 260ms ease;
}
.pathway-card-grid .premium-card p,
.homepage-practice-editorial .premium-card p {
  transition: opacity 240ms ease, transform 240ms ease;
}
.pathway-card-grid .premium-card:hover,
.homepage-practice-editorial .premium-card:hover {
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-oxblood) 36%, transparent), transparent 55%),
    color-mix(in srgb, var(--color-white) 9%, var(--color-panel));
  transform: translateY(-8px);
}
.pathway-card-grid .premium-card:hover:after,
.homepage-practice-editorial .premium-card:hover:after { opacity: 1; transform: translateY(0); }
.pathway-card-grid .premium-card:hover p,
.homepage-practice-editorial .premium-card:hover p { opacity: 1; transform: translateY(-4px); }
.review-command-grid {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: 1px;
  margin-bottom: clamp(1.4rem, 3vw, 2.4rem);
  border: 1px solid color-mix(in srgb, var(--color-white) 13%, transparent);
  background: color-mix(in srgb, var(--color-white) 13%, transparent);
}
.google-review-feature,
.endorsement-preview {
  min-height: 330px;
  padding: clamp(1.5rem, 3vw, 3rem);
  background:
    radial-gradient(circle at 10% 0%, color-mix(in srgb, var(--color-oxblood) 26%, transparent), transparent 18rem),
    color-mix(in srgb, var(--color-panel) 92%, transparent);
}
.google-review-feature,
.endorsement-preview,
.case-review-panel,
.review-command-grid,
.result-preview-grid,
.interior-google-box,
.interior-case-review,
.lux-form,
.notice,
.payment-panel,
.upload-placeholder,
.search-placeholder,
.map-placeholder {
  transition: border-color 220ms ease, box-shadow 220ms ease, background 220ms ease, transform 220ms ease;
}
.google-review-feature:hover,
.endorsement-preview:hover,
.case-review-panel:hover,
.interior-google-box:hover,
.interior-case-review:hover,
.lux-form:hover,
.notice:hover,
.payment-panel:hover,
.upload-placeholder:hover,
.search-placeholder:hover,
.map-placeholder:hover {
  border-color: color-mix(in srgb, var(--color-oxblood) 48%, var(--color-porcelain) 12%);
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--color-oxblood) 34%, transparent),
    0 24px 70px color-mix(in srgb, var(--color-oxblood) 10%, transparent);
}
.google-review-feature strong {
  display: block;
  margin: clamp(1.2rem, 2vw, 1.8rem) 0 .35rem;
  color: var(--color-ivory);
  font-family: var(--serif);
  font-size: clamp(5rem, 9vw, 8.5rem);
  font-weight: 500;
  line-height: .76;
}
.google-review-feature p,
.endorsement-preview p { color: var(--color-body); max-width: 620px; }
.endorsement-preview h3 { max-width: 760px; font-size: clamp(2.3rem, 4vw, 4.6rem); }
.homepage-review-grid .review-card {
  background: color-mix(in srgb, var(--color-white) 4%, transparent);
}
.homepage-results-preview {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--color-white) 4%, transparent), transparent),
    color-mix(in srgb, var(--color-ink) 92%, transparent);
}
.result-preview-grid {
  grid-template-columns: repeat(3, 1fr);
}
.result-preview-grid .result-card,
.result-preview-grid .result-flip-card {
  min-height: clamp(560px, 48vw, 720px);
}
.result-preview-grid .result-flip-card {
  border-color: color-mix(in srgb, var(--color-graphite) 74%, var(--color-hairline) 26%);
}
.result-preview-grid .result-flip-card .review-flip-front {
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-oxblood) 18%, transparent), transparent 48%),
    linear-gradient(180deg, var(--color-ink), color-mix(in srgb, var(--color-ink) 84%, var(--color-graphite) 16%));
}
.result-preview-grid .result-flip-card .review-flip-back {
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-oxblood) 13%, transparent), transparent 50%),
    linear-gradient(180deg, color-mix(in srgb, var(--color-ink) 92%, var(--color-graphite) 8%), var(--color-graphite));
}
.result-preview-grid .result-flip-card h3 {
  color: var(--color-white) !important;
  font-size: clamp(1.95rem, 2.45vw, 2.9rem);
  line-height: .96;
}
.result-preview-grid .result-flip-card .review-flip-face span,
.result-preview-grid .result-flip-card .flip-affordance {
  color: color-mix(in srgb, var(--color-white) 72%, var(--color-oxblood) 28%) !important;
}
.result-preview-grid .result-flip-card .review-flip-face p,
.result-preview-grid .result-flip-card .review-flip-face blockquote {
  color: var(--color-hairline) !important;
}
.result-flip-details {
  display: grid;
  gap: .55rem;
  margin: .25rem 0 0;
  padding: 0;
  border: 0;
}
.result-flip-details div {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: .8rem;
  padding-bottom: .5rem;
  border-bottom: 1px solid color-mix(in srgb, var(--color-white) 10%, transparent);
}
.result-flip-details dt {
  color: color-mix(in srgb, var(--color-porcelain) 72%, var(--color-oxblood) 28%);
  font-family: var(--sans);
  font-size: .58rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.result-flip-details dd {
  margin: 0;
  color: var(--color-porcelain);
  font-size: .88rem;
  line-height: 1.35;
}
.result-preview-grid .result-flip-card .review-flip-face {
  overflow-y: auto;
  scrollbar-color: color-mix(in srgb, var(--color-oxblood) 52%, var(--color-muted) 48%) transparent;
}
.result-preview-grid .result-flip-card .review-flip-back blockquote {
  font-size: clamp(.98rem, 1.06vw, 1.08rem);
  line-height: 1.52;
}
.case-review-panel {
  box-shadow: 0 34px 110px color-mix(in srgb, var(--color-black-slate) 38%, transparent);
}
.case-review-form {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--color-white) 8%, transparent), color-mix(in srgb, var(--color-white) 4%, transparent));
}
.luxury-method-grid {
  gap: 1px;
  background: color-mix(in srgb, var(--color-white) 11%, transparent);
  border: 1px solid color-mix(in srgb, var(--color-white) 11%, transparent);
}
.luxury-method-grid article {
  min-height: 240px;
  padding: clamp(1.35rem, 2.4vw, 2.2rem);
}
.premium-plus-list {
  gap: 0;
  border: 1px solid color-mix(in srgb, var(--color-white) 12%, transparent);
}
.premium-plus-list details {
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--color-white) 12%, transparent);
  padding: clamp(1.25rem, 2.2vw, 1.8rem) clamp(1.2rem, 2.4vw, 2rem);
}
.premium-plus-list details:last-child { border-bottom: 0; }
.premium-plus-list summary {
  font-size: clamp(1.7rem, 2.6vw, 2.8rem);
}
.premium-plus-list summary::after,
.premium-plus-list summary::before { background: var(--color-ivory); }
.final-dark-cta-panel {
  padding: clamp(2rem, 5vw, 5rem);
  border: 1px solid color-mix(in srgb, var(--color-white) 14%, transparent);
  background:
    radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--color-oxblood) 28%, transparent), transparent 26rem),
    color-mix(in srgb, var(--color-panel) 90%, transparent);
}
.final-dark-cta-panel h2 { max-width: 960px; font-size: clamp(3.4rem, 7vw, 7rem); }
.final-dark-cta-panel p { max-width: 760px; }
.visual-scale,
.hero-video-media,
.editorial-image-band figure img,
.ai-luxury-image img,
.premium-card-image img {
  will-change: transform;
}
@media (prefers-reduced-motion: no-preference) {
  html.js .reveal {
    opacity: 0;
    transform: translateY(34px);
    transition: opacity 760ms cubic-bezier(0.2,0.75,0.22,1), transform 760ms cubic-bezier(0.2,0.75,0.22,1);
  }
  html.js .reveal.is-revealed { opacity: 1; transform: translateY(0); }
  html.js .reveal.reveal-left { transform: translateX(-42px); }
  html.js .reveal.reveal-right { transform: translateX(42px); }
  html.js .reveal.reveal-left.is-revealed,
  html.js .reveal.reveal-right.is-revealed { transform: translateX(0); }
  html.js .reveal-stagger > * {
    opacity: 0;
    transform: translateY(38px) scale(.985);
    transition: opacity 720ms cubic-bezier(0.2,0.75,0.22,1), transform 720ms cubic-bezier(0.2,0.75,0.22,1);
    transition-delay: calc(var(--reveal-index, 0) * 90ms);
  }
  html.js .reveal-stagger.is-revealed > * { opacity: 1; transform: translateY(0) scale(1); }
  html.js .hero-video-media { animation: heroVideoDriftLuxury 28s ease-in-out infinite alternate; }
  @keyframes heroVideoDriftLuxury { from { transform: scale(1.08); } to { transform: scale(1.18); } }
}
@media (max-width: 1100px) {
  .result-preview-grid { grid-template-columns: repeat(2, 1fr); }
  .hero-proof-grid { grid-template-columns: 1fr; }
  .homepage-explore-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
  .review-command-grid { grid-template-columns: 1fr; }
  .pathway-card-grid .premium-card p,
  .homepage-practice-editorial .premium-card p,
  .pathway-card-grid .premium-card:after,
  .homepage-practice-editorial .premium-card:after {
    opacity: 1;
    transform: none;
  }
  .result-preview-grid { grid-template-columns: 1fr; }
  .homepage-explore-rail { grid-template-columns: 1fr; }
  .explore-rail-card { min-height: auto; }
}
/* ===== LAW GUIDE DECISION TREE ======================================= */
.law-tree { position: relative; margin-top: clamp(1.8rem, 4vw, 3rem); padding: clamp(1.1rem, 2.4vw, 2rem); border: 1px solid var(--color-hairline); background: color-mix(in srgb, var(--color-panel) 88%, var(--color-ink) 12%); box-shadow: var(--shadow); overflow: hidden; }
.law-tree:before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--color-oxblood) 24%, transparent), transparent 24rem); }
.law-tree > * { position: relative; z-index: 1; }
.law-tree-heading h2, .law-specialty-card h3 { margin: 0; color: var(--color-porcelain); font-family: var(--serif-display); font-weight: 400; line-height: .95; }
.law-tree-heading { display: grid; gap: .55rem; max-width: 880px; margin: 0 auto clamp(1.2rem, 3vw, 2.2rem); text-align: center; }
.law-tree-heading h2 { font-size: clamp(3rem, 7vw, 7rem); }
.law-tree-heading p { margin: 0; color: var(--color-porcelain); font-size: clamp(1rem, 1.5vw, 1.2rem); }
.law-tree-heading span { color: var(--color-cool-gray); font-family: var(--sans); font-size: .74rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.law-specialty-paths { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(.9rem, 2vw, 1.25rem); margin: 0 auto clamp(1.3rem, 3vw, 2.2rem); max-width: 980px; }
.law-specialty-card { display: grid; gap: .7rem; padding: clamp(1rem, 2vw, 1.45rem); border: 1px solid color-mix(in srgb, var(--color-oxblood) 56%, var(--color-hairline) 44%); background: color-mix(in srgb, var(--color-panel) 70%, var(--color-ink) 30%); box-shadow: var(--shadow); }
.law-specialty-card h3 { font-size: clamp(2rem, 3.1vw, 3.25rem); }
.law-specialty-card p { margin: 0; color: var(--color-cool-gray); line-height: 1.55; }
.law-tree-grid { position: relative; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: clamp(.65rem, 1vw, .95rem); align-items: start; }
.dwi-stage-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.law-tree-grid:before { content: ""; position: absolute; top: 3.25rem; left: 7%; right: 7%; height: 1px; background: color-mix(in srgb, var(--color-oxblood) 72%, transparent); }
.law-tree-branch { position: relative; display: grid; gap: .8rem; min-width: 0; }
.law-tree-branch:before { content: ""; position: absolute; top: 3.25rem; left: 50%; width: 1px; height: 1.7rem; background: color-mix(in srgb, var(--color-oxblood) 72%, transparent); }
.law-tree-card, .law-tree-next { position: relative; border: 1px solid color-mix(in srgb, var(--color-hairline) 78%, transparent); background: color-mix(in srgb, var(--color-ink) 72%, var(--color-panel) 28%); }
.law-tree-card { display: grid; gap: .65rem; min-height: 18rem; padding: clamp(.9rem, 1.25vw, 1.2rem); }
.law-tree-number { width: 2rem; height: 2rem; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--color-oxblood); color: var(--color-porcelain); font-family: var(--sans); font-weight: 800; }
.law-tree-icon { width: 2.55rem; height: 2.55rem; display: inline-flex; align-items: center; justify-content: center; color: color-mix(in srgb, var(--color-oxblood) 42%, var(--color-porcelain) 58%); }
.law-tree-icon svg { width: 100%; height: 100%; }
.law-tree-tag { justify-self: start; padding: .32rem .48rem; border: 1px solid color-mix(in srgb, var(--color-oxblood) 64%, var(--color-hairline) 36%); color: var(--color-porcelain); font-family: var(--sans); font-size: .61rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.law-tree-card h3 { margin: 0; color: var(--color-porcelain); font-family: var(--serif-display); font-weight: 400; font-size: clamp(1.45rem, 1.85vw, 2.15rem); line-height: .98; }
.law-tree-card p { margin: 0; color: var(--color-cool-gray); line-height: 1.45; }
.law-tree-select { align-self: end; justify-self: start; padding: .55rem .7rem; border: 1px solid color-mix(in srgb, var(--color-oxblood) 72%, var(--color-hairline) 28%); background: transparent; color: var(--color-porcelain); font-family: var(--sans); font-size: .66rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; cursor: pointer; }
.law-tree-next { display: grid; gap: .75rem; padding: .9rem; background: color-mix(in srgb, var(--color-panel) 78%, var(--color-ink) 22%); }
.law-tree-next ul { display: grid; gap: .45rem; margin: 0; padding: 0; list-style: none; }
.law-tree-next a:not(.text-link) { display: block; padding: .55rem .6rem; border: 1px solid color-mix(in srgb, var(--color-hairline) 58%, transparent); color: var(--color-cool-gray); text-decoration: none; font-family: var(--sans); line-height: 1.28; background: color-mix(in srgb, var(--color-porcelain) 4%, transparent); }
.law-tree-next a:hover, .law-tree-next a:focus-visible, .law-tree-select:hover, .law-tree-select:focus-visible { color: var(--color-porcelain); border-color: var(--color-oxblood); background: color-mix(in srgb, var(--color-oxblood) 20%, transparent); }
.dwi-pathway .law-tree-next li:nth-child(n+4) a { border-color: color-mix(in srgb, var(--color-oxblood) 34%, var(--color-hairline) 66%); }
.knowledge-tree { display: grid; grid-template-columns: minmax(220px, .28fr) minmax(0, 1fr); gap: 1rem; align-items: start; }
.knowledge-tree-inline { width: 100%; margin: clamp(1.4rem, 3vw, 2.4rem) 0; overflow-x: auto; }
.knowledge-tree-inline svg { display: block; width: 100%; min-width: min(920px, 100%); height: auto; }
.knowledge-tree-inline .knowledge-tree-wrap { min-width: 980px; padding: clamp(1rem, 2vw, 1.5rem); border: 1px solid color-mix(in srgb, var(--color-hairline) 35%, transparent); border-radius: 16px; background: radial-gradient(circle at 74% 12%, rgba(255,255,255,.12), transparent 34%), linear-gradient(135deg, #0E2230 0%, #142D3D 52%, #1D3A4C 100%); box-shadow: var(--shadow); }
.knowledge-tree-inline .knowledge-tree-map { min-width: 980px; border-radius: 14px; }
.knowledge-tree-inline .kt-index { margin: 1rem 0 0; padding: clamp(1rem, 2vw, 1.45rem); border: 1px solid rgba(255,255,255,.16); border-radius: 14px; background: rgba(10, 27, 38, .76); color: var(--color-porcelain); }
.knowledge-tree-inline .kt-index h2 { margin: 0 0 1rem; color: var(--color-porcelain); font-family: var(--serif-display); font-size: clamp(1.7rem, 2.6vw, 2.7rem); font-weight: 400; }
.knowledge-tree-inline .kt-index-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(185px, 1fr)); gap: 1rem; }
.knowledge-tree-inline .kt-index section { padding: .85rem; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.04); }
.knowledge-tree-inline .kt-index h3 { margin: 0 0 .55rem; font-family: var(--serif-display); font-size: 1.15rem; font-weight: 400; line-height: 1.05; }
.knowledge-tree-inline .kt-index h3 a { color: var(--color-porcelain); text-decoration: none; }
.knowledge-tree-inline .kt-index ul { display: grid; gap: .36rem; margin: 0; padding: 0; list-style: none; }
.knowledge-tree-inline .kt-index li { margin: 0; }
.knowledge-tree-inline .kt-index a { color: color-mix(in srgb, var(--color-porcelain) 78%, var(--color-cool-gray) 22%); text-decoration: none; font-family: var(--sans); }
.knowledge-tree-inline .kt-index a:hover, .knowledge-tree-inline .kt-index a:focus-visible { color: var(--color-porcelain); text-decoration: underline; text-decoration-color: var(--color-oxblood); text-underline-offset: .18em; }
/* Law Guide dark header band - flows into the Knowledge Tree map */
.law-guide-header {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(60% 80% at 12% -10%, rgba(203,168,119,0.16) 0%, rgba(203,168,119,0) 60%),
    radial-gradient(50% 60% at 88% 8%, rgba(180,200,235,0.10) 0%, rgba(180,200,235,0) 55%),
    radial-gradient(130% 120% at 50% 0%, #1a2230 0%, #141A24 55%, #0e131b 100%);
  color: var(--color-white);
  min-height: clamp(340px, 46svh, 500px);
  display: grid;
  align-items: center;
  padding: clamp(2.8rem, 5vw, 4.6rem) clamp(1.5rem, 6vw, 5rem) clamp(2.35rem, 4vw, 3.6rem);
  margin-bottom: 0;
  isolation: isolate;
}
.law-guide-header__video,
.law-guide-header__image {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 66% center;
  filter: grayscale(.08) saturate(.84) contrast(1.08) brightness(.88);
}
.law-guide-header__image {
  display: block;
}
.law-guide-header__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(14,19,27,.94) 0%, rgba(14,19,27,.76) 34%, rgba(14,19,27,.38) 64%, rgba(14,19,27,.16) 100%),
    radial-gradient(58% 78% at 14% 8%, rgba(201,160,99,.14), transparent 62%),
    linear-gradient(0deg, rgba(14,19,27,.62) 0%, rgba(14,19,27,.10) 54%, rgba(14,19,27,.38) 100%);
}
.law-guide-header::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  height: clamp(90px, 12vw, 120px);
  background: linear-gradient(to bottom, transparent 0%, #0e131b 100%);
  pointer-events: none;
}
.law-guide-header-inner {
  position: relative;
  z-index: 3;
  max-width: 1180px;
  margin-inline: auto;
  text-align: left;
  max-width: min(1180px, 100%);
  width: 100%;
}
.law-guide-header-inner > * { max-width: 48ch; }
.law-guide-header .eyebrow {
  position: relative;
  display: inline-block;
  color: rgba(203, 168, 119, 0.92);
  letter-spacing: 0.22em;
  text-transform: uppercase;
  padding-top: 1.1rem;
  text-shadow: 0 2px 18px rgba(0,0,0,.56);
}
.law-guide-header .eyebrow::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 64px; height: 1px;
  background: rgba(203, 168, 119, 0.65);
}
.law-guide-header h1 {
  font-family: var(--serif-display);
  font-weight: 400;
  font-size: clamp(2.8rem, 6.5vw, 5.5rem);
  line-height: 1.02 !important;
  margin: 0.6rem 0 0;
  color: var(--color-white);
  max-width: 14ch;
  text-shadow: 0 8px 38px rgba(0,0,0,.58);
}
.law-guide-header h1::after {
  content: "";
  display: block;
  width: 84px; height: 2px;
  background: rgba(203, 168, 119, 0.8);
  margin-top: 1.5rem;
}
.law-guide-header-subtitle {
  max-width: 54ch;
  margin: 1.35rem 0 0;
  color: rgba(255, 255, 255, 0.92);
  font-size: clamp(1.22rem, 1.8vw, 1.55rem);
  line-height: 1.5;
  text-shadow: 0 2px 20px rgba(0,0,0,.58);
}
.law-guide-header-lede,
.law-guide-header-disclaimer {
  max-width: 56ch;
  margin: .8rem 0 0;
  color: rgba(255, 255, 255, 0.78);
  font-size: clamp(1.02rem, 1.4vw, 1.2rem);
  line-height: 1.6;
  text-shadow: 0 2px 18px rgba(0,0,0,.58);
}
.law-guide-header-disclaimer {
  color: rgba(203, 168, 119, 0.86);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.law-guide-header__art {
  position: absolute;
  right: 0; top: 0; bottom: 0;
  width: min(52%, 760px);
  z-index: 1;
  pointer-events: none;
  opacity: 0.9;
}
.law-guide-header__art svg { width: 100%; height: 100%; display: block; }
@media (max-width: 820px) {
  .law-guide-header-inner > *,
  .law-guide-header h1 { max-width: 100%; }
  .law-guide-header {
    min-height: clamp(390px, 52svh, 540px);
    padding: clamp(2.8rem, 8vw, 4.2rem) clamp(1.2rem, 5vw, 2rem);
  }
  .law-guide-header__video {
    object-position: 58% center;
  }
  .law-guide-header__overlay {
    background:
      linear-gradient(90deg, rgba(14,19,27,.94), rgba(14,19,27,.72)),
      linear-gradient(0deg, rgba(14,19,27,.76), rgba(14,19,27,.22) 58%, rgba(14,19,27,.56));
  }
}
@media (prefers-reduced-motion: no-preference) {
  .law-guide-header__art .kt-path-pulse { animation: ktPathDrift 9s ease-in-out infinite alternate; }
}
@media (prefers-reduced-motion: reduce) {
  .law-guide-header {
    background:
      linear-gradient(90deg, rgba(14,19,27,.94), rgba(14,19,27,.62)),
      radial-gradient(130% 120% at 50% 0%, #1a2230 0%, #141A24 55%, #0e131b 100%);
  }
  .law-guide-header__video {
    animation: none;
  }
}
@keyframes ktPathDrift { from { opacity: .45; } to { opacity: .9; } }
.law-guide-header--pillar .law-guide-header-inner {
  max-width: 960px;
}
.defense-pillar-body {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 0%, rgba(122,31,46,.06), transparent 28rem),
    radial-gradient(circle at 86% 12%, rgba(201,160,99,.10), transparent 30rem),
    var(--color-graphite);
  padding: clamp(2.6rem, 5vw, 4.6rem) 0 clamp(3.2rem, 6vw, 5.6rem);
}
.defense-pillar-body::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 50% 0%, rgba(0,0,0,.25), transparent 26rem);
}
/* The cream "case file" document panel that holds the hub body */
.defense-pillar-shell {
  position: relative;
  z-index: 1;
  display: grid;
  gap: clamp(1.6rem, 3vw, 2.6rem);
  padding: clamp(1.8rem, 3.4vw, 3rem) clamp(1.5rem, 3vw, 3rem) clamp(2.2rem, 4vw, 3.4rem);
  background:
    linear-gradient(180deg, rgba(255,255,255,.5), rgba(255,255,255,0) 12rem),
    var(--color-paper);
  border: 1px solid color-mix(in srgb, var(--color-graphite) 16%, var(--color-hairline));
  border-radius: 14px;
  box-shadow:
    0 1px 0 rgba(255,255,255,.7) inset,
    0 30px 70px rgba(0,0,0,.32);
}
/* Layered-paper edges behind the panel (the "stacked file" feel) */
.defense-pillar-shell::before,
.defense-pillar-shell::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 14px;
  background: color-mix(in srgb, var(--color-paper) 88%, var(--color-graphite));
  border: 1px solid color-mix(in srgb, var(--color-graphite) 14%, var(--color-hairline));
}
.defense-pillar-shell::before { transform: translate(7px, 9px); opacity: .55; }
.defense-pillar-shell::after { transform: translate(14px, 18px); opacity: .3; }
/* The little "dossier" tab on the right edge */
.defense-pillar-shell > .defense-pillar-tab {
  position: absolute;
  top: clamp(1.4rem, 4vw, 3.2rem);
  right: -1px;
  transform: translateX(100%);
  writing-mode: vertical-rl;
  padding: 1rem .55rem;
  background: color-mix(in srgb, var(--color-paper) 90%, var(--color-graphite));
  border: 1px solid color-mix(in srgb, var(--color-graphite) 16%, var(--color-hairline));
  border-left: none;
  border-radius: 0 8px 8px 0;
  font-family: var(--sans);
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--color-oxblood);
  box-shadow: 6px 8px 18px rgba(0,0,0,.18);
}
@media (max-width: 900px) { .defense-pillar-shell > .defense-pillar-tab { display: none; } .defense-pillar-shell::before, .defense-pillar-shell::after { display: none; } }
.defense-pillar-short-answer {
  max-width: 920px;
  padding: clamp(1.2rem, 2.2vw, 1.7rem);
  border: 1px solid color-mix(in srgb, var(--color-oxblood) 18%, var(--color-hairline));
  border-left: 3px solid var(--color-oxblood);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.82), rgba(250,247,240,.94)),
    var(--color-paper);
  box-shadow: 0 20px 60px rgba(35,38,41,.08);
}
.defense-pillar-short-answer p {
  margin: 0;
  max-width: 78ch;
  color: var(--color-graphite);
  line-height: 1.7;
  font-family: var(--serif-display);
  font-size: clamp(1.15rem, 1.8vw, 1.45rem);
  font-weight: 400;
}
.defense-pillar-short-answer .eyebrow { font-weight: 800; letter-spacing: .15em; }
.defense-pillar-short-answer .eyebrow {
  margin-bottom: .55rem;
  color: var(--color-oxblood);
}
.defense-pillar-filter {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  align-items: center;
  padding: .35rem;
  border: 1px solid color-mix(in srgb, var(--color-hairline) 82%, transparent);
  border-radius: 999px;
  background: rgba(255,255,255,.58);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
  width: fit-content;
  max-width: 100%;
}
.defense-pillar-filter button {
  min-height: 2.55rem;
  padding: .65rem 1rem;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: var(--color-muted);
  font-family: var(--sans);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
  cursor: pointer;
}
.defense-pillar-filter button:is(:hover, :focus-visible),
.defense-pillar-filter button.is-active {
  border-color: color-mix(in srgb, var(--color-oxblood) 40%, transparent);
  background: color-mix(in srgb, var(--color-oxblood) 9%, var(--color-white));
  color: var(--color-oxblood);
}
.defense-pillar-groups {
  display: grid;
  gap: clamp(2rem, 4vw, 3.4rem);
}
.defense-pillar-group {
  display: grid;
  gap: clamp(1rem, 2vw, 1.45rem);
}
.defense-pillar-group.is-hidden {
  display: none;
}
.defense-pillar-group__heading {
  display: grid;
  gap: .35rem;
  max-width: 760px;
}
.defense-pillar-group__heading h2 {
  margin: 0;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(2.15rem, 4vw, 3.55rem);
  font-weight: 400;
  line-height: 1.05;
}
.defense-topic-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 255px), 1fr));
  gap: clamp(1rem, 2.2vw, 1.45rem);
  align-items: stretch;
}
.defense-topic-card {
  position: relative;
  display: flex;
}
.defense-topic-card__face {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: .9rem;
  width: 100%;
  min-height: clamp(240px, 22vw, 290px);
  padding: clamp(1.3rem, 2.2vw, 1.7rem);
  border: 1px solid color-mix(in srgb, var(--color-hairline) 88%, transparent);
  border-radius: 12px;
  text-decoration: none;
  color: var(--color-ink);
  background:
    radial-gradient(circle at 86% 14%, rgba(201,160,99,.1), transparent 13rem),
    linear-gradient(145deg, rgba(255,255,255,.97), rgba(250,247,240,.95) 56%, rgba(242,237,228,.97));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.76), 0 16px 40px rgba(35,38,41,.1);
  transition: transform 220ms ease, box-shadow 220ms ease;
  overflow: hidden;
}
.defense-topic-card__face::before {
  content: "";
  position: absolute;
  top: 12px; left: 12px;
  width: 34px; height: 34px;
  border-top: 1px solid color-mix(in srgb, var(--color-oxblood) 45%, transparent);
  border-left: 1px solid color-mix(in srgb, var(--color-oxblood) 45%, transparent);
  pointer-events: none;
}
.defense-topic-card__face:is(:hover, :focus-visible) {
  transform: translateY(-3px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.76), 0 24px 56px rgba(35,38,41,.16);
  outline: none;
}
/* Featured dark "Guide Station" card */
.defense-topic-card--featured .defense-topic-card__face {
  color: #F7F5F1;
  border-color: rgba(201,160,99,.3);
  background:
    radial-gradient(circle at 84% 16%, rgba(201,160,99,.16), transparent 13rem),
    linear-gradient(145deg, #16080D, #35111A 54%, #080D14);
  box-shadow: 0 22px 58px rgba(10,14,20,.3);
}
.defense-topic-card--featured .eyebrow { color: rgba(232,202,153,.95); }
.defense-topic-card--featured h3 { color: #F7F5F1; text-shadow: 0 2px 18px rgba(0,0,0,.4); }
.defense-topic-card--featured p:not(.eyebrow) { color: rgba(247,245,241,.9); }
.defense-topic-card h3 {
  margin: 0;
  font-family: var(--serif-display);
  font-weight: 400;
  font-size: clamp(1.5rem, 2.3vw, 2rem);
  line-height: 1.08;
}
.defense-topic-card p:not(.eyebrow) {
  margin: 0;
  color: var(--color-graphite);
  line-height: 1.58;
  font-size: .95rem;
}
.defense-topic-card__link {
  margin-top: auto;
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  font-family: var(--sans);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: var(--color-oxblood);
}
.defense-topic-card--featured .defense-topic-card__link { color: rgba(232,202,153,.95); }
.defense-pillar-map-link {
  margin: 0;
}
.defense-pillar-cta { background: var(--color-graphite); padding: clamp(2.4rem,5vw,4rem) 0; }
.defense-cta-band {
  display: flex; flex-wrap: wrap; gap: 1.6rem 2.4rem; align-items: center; justify-content: space-between;
  padding: clamp(1.8rem,3vw,2.6rem) clamp(1.8rem,3vw,2.8rem);
  border: 1px solid rgba(201,160,99,.28); border-radius: 14px;
  background: radial-gradient(circle at 18% 24%, rgba(122,31,46,.22), transparent 28rem), linear-gradient(145deg, #17202B, #0E131B);
  color: var(--color-porcelain);
}
.defense-cta-band__lead { max-width: 38rem; }
.defense-cta-band__lead .eyebrow { color: rgba(232,202,153,.95); margin-bottom: .5rem; }
.defense-cta-band__lead h2 { margin: 0 0 .5rem; font-family: var(--serif-display); font-weight: 400; font-size: clamp(1.7rem,3vw,2.5rem); line-height: 1.1; color: var(--color-porcelain); }
.defense-cta-band__lead p { margin: 0; color: rgba(247,245,241,.82); }
.defense-cta-band__actions { display: flex; flex-wrap: wrap; gap: .8rem; }
@media (max-width: 760px) {
  .defense-pillar-filter {
    width: 100%;
    border-radius: 14px;
  }
  .defense-pillar-filter button {
    flex: 1 1 auto;
  }
  .defense-topic-card {
    min-height: 360px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .defense-topic-card__inner,
  .defense-topic-card.is-flipped .defense-topic-card__inner,
  .defense-topic-card:hover .defense-topic-card__inner {
    transform: none !important;
    transition: none !important;
  }
  .defense-topic-card__face {
    position: relative;
    min-height: inherit;
  }
  .defense-topic-card__back {
    display: none;
    transform: none !important;
  }
  .defense-topic-card.is-flipped .defense-topic-card__back,
  .defense-topic-card:focus-within .defense-topic-card__back {
    display: flex;
  }
}
.defense-guide-primer {
  position: relative;
  background:
    radial-gradient(circle at 12% 8%, rgba(122,31,46,.18), transparent 28rem),
    radial-gradient(circle at 88% 14%, rgba(201,160,99,.12), transparent 26rem),
    linear-gradient(180deg, #0e131b 0%, #111820 100%);
  color: var(--color-porcelain);
  padding: clamp(3.2rem, 6vw, 5.8rem) 0 clamp(2.4rem, 5vw, 4.4rem);
}
.defense-guide-primer__inner {
  display: grid;
  gap: clamp(1.4rem, 3vw, 2.5rem);
}
.defense-guide-primer__intro {
  max-width: 820px;
}
.defense-guide-primer .eyebrow {
  color: rgba(201,160,99,.9);
}
.defense-guide-primer h2 {
  margin: .35rem 0 .8rem;
  color: var(--color-porcelain);
  font-family: var(--serif-display);
  font-size: clamp(2.4rem, 4.8vw, 4.7rem);
  font-weight: 400;
  line-height: 1.02 !important;
}
.defense-guide-primer__intro p:not(.eyebrow) {
  max-width: 68ch;
  color: rgba(247,245,241,.78);
  font-size: clamp(1rem, 1.35vw, 1.16rem);
}
.defense-guide-primer__steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(.8rem, 1.8vw, 1.1rem);
}
.defense-guide-primer__steps article {
  min-width: 0;
  padding: clamp(1.05rem, 2vw, 1.45rem);
  border: 1px solid rgba(201,160,99,.22);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.025)),
    rgba(10,14,20,.42);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}
.defense-guide-primer__steps span {
  display: inline-block;
  margin-bottom: .65rem;
  color: rgba(201,160,99,.88);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.defense-guide-primer__steps h3 {
  margin: 0 0 .45rem;
  color: var(--color-porcelain);
  font-family: var(--serif-display);
  font-size: clamp(1.28rem, 1.9vw, 1.72rem);
  font-weight: 400;
}
.defense-guide-primer__steps p {
  margin: 0;
  color: rgba(247,245,241,.72);
  font-size: .95rem;
  line-height: 1.55;
}
.defense-map-section {
  background: #111820;
  padding: clamp(3.5rem, 8vw, 6.9rem) 0;
  position: relative;
}
.defense-map-shell {
  width: min(100% - 32px, 1500px);
  margin-inline: auto;
  border: 1px solid rgba(201, 160, 99, 0.22);
  border-radius: 18px;
  background:
    radial-gradient(circle at 50% 50%, rgba(122, 31, 46, 0.12), transparent 58%),
    linear-gradient(180deg, rgba(21, 27, 35, 0.98), rgba(10, 14, 20, 0.98));
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.38);
  padding: clamp(18px, 2.5vw, 36px);
  overflow: hidden;
}
.defense-map-heading {
  max-width: 760px;
  margin: 0 0 clamp(1.1rem, 2vw, 1.7rem);
}
.defense-map-heading .eyebrow {
  color: rgba(201,160,99,.88);
}
.defense-map-heading h2 {
  margin: .3rem 0 .45rem;
  color: var(--color-porcelain);
  font-family: var(--serif-display);
  font-size: clamp(2rem, 3.5vw, 3.55rem);
  font-weight: 400;
}
.defense-map-heading p {
  color: rgba(247,245,241,.76);
}
.defense-map-wrap {
  position: relative;
  width: 100%;
  margin: 0 auto;
}
.defense-map-image {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 12px;
}
.map-hotspot {
  position: absolute;
  display: block;
  border-radius: 12px;
  text-decoration: none;
  background: transparent;
  outline: none;
}
.map-hotspot:hover {
  background: rgba(201, 160, 99, 0.06);
  box-shadow: 0 0 28px rgba(201, 160, 99, 0.18);
}
.map-hotspot:focus-visible {
  outline: 2px solid #C9A063;
  outline-offset: 4px;
  background: rgba(201, 160, 99, 0.10);
  box-shadow: 0 0 30px rgba(201, 160, 99, 0.24);
}
.defense-guide-mobile-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 28px;
}
.defense-guide-mobile-list a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 52px;
  padding: 14px 16px;
  border: 1px solid rgba(201, 160, 99, 0.22);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
  color: #F7F5F1;
  text-decoration: none;
  transition: border-color 180ms ease, background 180ms ease, transform 180ms ease;
}
.defense-guide-mobile-list a:hover,
.defense-guide-mobile-list a:focus-visible {
  border-color: rgba(201,160,99,.48);
  background: rgba(122,31,46,.18);
  transform: translateY(-1px);
}
.defense-guide-mobile-list span {
  color: #C9A063;
}
@media (max-width: 980px) {
  .defense-guide-primer__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .defense-guide-primer__steps,
  .defense-guide-mobile-list {
    grid-template-columns: 1fr;
  }
  .defense-map-shell {
    width: min(100% - 20px, 1500px);
    padding: 10px;
    border-radius: 12px;
  }
  .defense-map-image {
    border-radius: 8px;
  }
}
/* Map section sits directly under the dark band as the dominant element */
.law-guide-map-section {
  background: linear-gradient(180deg, #0e131b 0%, #0e131b 30%, var(--color-ivory) 30%, var(--color-ivory) 100%);
  padding-top: clamp(1.4rem, 2.5vw, 2.2rem);
}
.law-guide-map-section .section-heading { text-align: center; }
.law-guide-map-section .section-heading .eyebrow { color: rgba(203, 168, 119, 0.9); }
.law-guide-map-section .section-heading h2 { color: var(--color-white); }
.law-guide-map-section .kt-lede { color: rgba(255, 255, 255, 0.78); margin-inline: auto; }
.law-guide-map-section .kt-map-wrap {
  background: #141A24;
  border-color: rgba(203, 168, 119, 0.22);
  box-shadow: 0 40px 90px rgba(0, 0, 0, 0.45);
}
@media (max-width: 720px) {
  .law-guide-map-section { background: var(--color-ivory); }
}
.knowledge-tree-primary { display: block; }
.knowledge-tree-primary .section-heading { max-width: 1100px; margin-inline: auto; }
.knowledge-tree-primary .kt-lede { max-width: 56ch; margin: 0 auto; color: var(--color-body); text-align: center; }
.knowledge-tree-primary .kt-lede-standalone { margin: 0 auto clamp(.8rem, 1.5vw, 1.2rem); }
.knowledge-tree-primary .kt-map-wrap { max-width: 1180px; margin: clamp(.8rem, 1.5vw, 1.2rem) auto 0; padding: clamp(.7rem, 1.5vw, 1rem); overflow-x: auto; border: 1px solid var(--color-hairline); border-radius: 18px; background: var(--color-white); box-shadow: 0 28px 70px color-mix(in srgb, var(--color-ink) 12%, transparent); }
.knowledge-tree-primary .kt-map-wrap svg { display: block; width: 100%; min-width: 1040px; height: auto; border-radius: 14px; }
.knowledge-tree-primary .station-index { max-width: 1180px; margin: clamp(1.5rem, 3vw, 2.5rem) auto 0; padding: clamp(1.2rem, 2.5vw, 2rem); border: 1px solid var(--color-hairline); border-radius: 16px; background: var(--color-white); box-shadow: 0 18px 44px color-mix(in srgb, var(--color-ink) 8%, transparent); }
.knowledge-tree-primary .station-index h2 { margin: 0 0 .55rem; font-family: var(--serif-display); font-size: clamp(2rem, 3vw, 3rem); font-weight: 400; line-height: 1.05; color: var(--color-ink); }
.knowledge-tree-primary .station-index-intro { max-width: 780px; margin: 0 0 1.4rem; color: var(--color-body); }
.knowledge-tree-primary .station-index-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: .85rem; }
.knowledge-tree-primary .si-group { position: relative; padding: 1rem; border: 1px solid var(--color-hairline); background: var(--color-porcelain); }
.knowledge-tree-primary .si-group h3 { margin: 0 0 .65rem; font-family: var(--serif-display); font-size: 1.25rem; font-weight: 400; line-height: 1.1; color: var(--color-ink); }
.knowledge-tree-primary .si-group ul { display: grid; gap: .38rem; margin: 0; padding: 0; list-style: none; }
.knowledge-tree-primary .si-group li { margin: 0; color: var(--color-body); }
.knowledge-tree-primary .si-group a { color: var(--color-body); text-decoration: none; }
.knowledge-tree-primary .si-group a:hover,
.knowledge-tree-primary .si-group a:focus-visible { color: var(--color-oxblood); text-decoration: underline; text-underline-offset: .18em; }
.knowledge-tree-primary .si-soon { color: var(--color-muted); font-size: .86em; }
.knowledge-tree-full {
  background: radial-gradient(130% 120% at 50% 0%, #1a2230 0%, #141A24 55%, #0e131b 100%);
  width: 100%;
  max-width: none;
  margin-inline: 0;
  padding-left: clamp(1.5rem, 5vw, 4rem);
  padding-right: clamp(1.5rem, 5vw, 4rem);
  padding-top: clamp(2rem, 4vw, 3.5rem);
  padding-bottom: clamp(2rem, 4vw, 3.5rem);
}
.knowledge-tree-full .kt-lede-standalone { color: rgba(231,220,196,0.85); }
.knowledge-tree-full .kt-map-wrap {
  background: transparent;
  border: none;
  box-shadow: none;
  max-width: 1600px;
  margin-inline: auto;
}
.knowledge-tree-full .knowledge-tree-titlebar {
  position: absolute;
  left: clamp(20px, 2.2vw, 30px);
  top: clamp(18px, 2vw, 26px);
  width: calc(100% - clamp(40px, 4.4vw, 60px));
  display: grid;
  grid-template-columns: minmax(230px, 260px) minmax(0, 1fr) minmax(230px, 260px);
  align-items: end;
  gap: clamp(18px, 2.4vw, 30px);
  min-height: 98px;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  z-index: 8;
  pointer-events: none;
}
.knowledge-tree-full .knowledge-tree-titlebar:after {
  content: none;
}
.knowledge-tree-full .knowledge-tree-titlebar-logo {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: flex-end;
  justify-self: start;
  align-self: end;
  min-width: 0;
  width: min(260px, 100%);
  max-width: 260px;
  text-decoration: none;
  pointer-events: auto;
}
.knowledge-tree-full .knowledge-tree-titlebar-logo img {
  display: block;
  width: min(250px, 100%);
  max-height: 112px;
  object-fit: contain;
  object-position: left bottom;
}
.knowledge-tree-full .knowledge-tree-titlebar-heading {
  position: relative;
  z-index: 1;
  width: 100%;
  display: grid;
  grid-template-columns: minmax(1.6rem, 1fr) minmax(0, auto) minmax(1.6rem, 1fr);
  align-items: center;
  align-self: end;
  justify-self: center;
  justify-content: center;
  gap: clamp(12px, 1.5vw, 20px);
  min-width: 0;
  pointer-events: none;
  transform: translateY(-32px);
}
.knowledge-tree-full .knowledge-tree-titlebar-heading span {
  height: 1px;
  background: rgba(205,191,159,.5);
}
.knowledge-tree-full .knowledge-tree-titlebar-heading strong {
  color: #EDE6D6;
  font-family: var(--serif-display);
  font-size: clamp(28px, 2.45vw, 36px);
  font-weight: 400;
  letter-spacing: .065em;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  max-width: 100%;
  overflow: hidden;
  text-overflow: clip;
  text-shadow: 0 1px 0 rgba(0,0,0,.22);
}
.knowledge-tree-full .station-index {
  max-width: 1396px !important;
  margin: 0 auto !important;
  padding: clamp(2.2rem, 4vw, 3.4rem) clamp(1.25rem, 3vw, 2.5rem) clamp(2.6rem, 5vw, 4.2rem) !important;
  background:
    radial-gradient(circle at 82% 8%, rgba(203,168,119,.12), transparent 28rem),
    radial-gradient(circle at 10% 18%, rgba(182,80,74,.12), transparent 24rem),
    linear-gradient(135deg, #07111a 0%, #101923 52%, #16202b 100%) !important;
  border: 1px solid rgba(237,230,214,.16) !important;
  border-top: 0 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 24px 70px rgba(0,0,0,.24) !important;
}
.knowledge-tree-full .station-index .si-head {
  color: #EDE6D6 !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(2rem, 3vw, 3.2rem) !important;
  font-weight: 400 !important;
  line-height: 1.02 !important;
}
.knowledge-tree-full .station-index .si-sub {
  max-width: 760px !important;
  color: #cfc8ba !important;
  font-size: clamp(.92rem, 1.15vw, 1rem) !important;
}
.knowledge-tree-full .idx-grid {
  gap: clamp(1rem, 2vw, 1.45rem) !important;
}
.knowledge-tree-full .idx-col {
  position: relative;
  min-height: 100%;
  padding: 1rem 1rem 1.05rem !important;
  border: 1px solid color-mix(in srgb, var(--c, #8AA0AE) 52%, rgba(237,230,214,.16)) !important;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--c, #8AA0AE) 18%, transparent), rgba(255,255,255,.035) 42%, rgba(255,255,255,.02)),
    rgba(16,25,35,.72) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    0 14px 34px rgba(0,0,0,.16) !important;
}
.knowledge-tree-full .idx-col::before {
  content: "";
  position: absolute;
  left: 1rem;
  top: .78rem;
  width: 2.4rem;
  height: 2px;
  background: var(--c, #8AA0AE);
  box-shadow: 0 0 16px color-mix(in srgb, var(--c, #8AA0AE) 52%, transparent);
}
.knowledge-tree-full .idx-col h3 {
  margin: 1.05rem 0 .8rem !important;
  padding-left: 0 !important;
  border-left: 0 !important;
  color: var(--c, #EDE6D6) !important;
  font-family: var(--sans) !important;
}
.knowledge-tree-full .idx-col ul {
  padding-left: 0 !important;
}
.knowledge-tree-full .idx-col a {
  display: block;
  position: relative;
  padding-left: 1rem;
  color: #D9D3C6 !important;
  font-size: .9rem !important;
  line-height: 1.35 !important;
}
.knowledge-tree-full .idx-col a::before {
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: .44rem;
  height: .44rem;
  border-radius: 999px;
  border: 1px solid var(--c, #8AA0AE);
  background: #10151E;
  box-shadow: 0 0 10px color-mix(in srgb, var(--c, #8AA0AE) 34%, transparent);
}
.knowledge-tree-full .idx-col a em,
.station-index .idx-col a em {
  font-style: italic;
}
.knowledge-tree-full .idx-col a:hover,
.knowledge-tree-full .idx-col a:focus-visible {
  color: #FFFFFF !important;
  text-decoration: none !important;
}
.knowledge-tree-full .idx-col a:hover::before,
.knowledge-tree-full .idx-col a:focus-visible::before {
  background: var(--c, #8AA0AE);
}
/* ===== Explore Every Topic - ungated legibility (applies on law-guide.html) ===== */
.station-index {
  max-width: 1396px;
  margin: clamp(1.6rem, 3vw, 2.6rem) auto 0;
  padding: clamp(2.2rem, 4vw, 3.4rem) clamp(1.25rem, 3vw, 2.5rem) clamp(2.6rem, 5vw, 4.2rem);
  border: 1px solid rgba(237,230,214,.16);
  border-radius: 16px;
  background:
    radial-gradient(circle at 82% 8%, rgba(203,168,119,.14), transparent 28rem),
    radial-gradient(circle at 10% 18%, rgba(182,80,74,.14), transparent 24rem),
    linear-gradient(135deg, #0B1620 0%, #121C26 52%, #18222E 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 24px 70px rgba(0,0,0,.24);
}
.station-index .si-head {
  margin: 0 0 .55rem;
  color: #F4EEE0;
  font-family: var(--serif-display);
  font-size: clamp(2rem, 3vw, 3.2rem);
  font-weight: 400;
  line-height: 1.02;
}
.station-index .si-sub {
  max-width: 780px;
  margin: 0 0 1.6rem;
  color: #D7D0C2;
  font-size: clamp(.95rem, 1.15vw, 1.05rem);
  line-height: 1.6;
}
.station-index .idx-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: clamp(1rem, 2vw, 1.5rem);
}
.station-index .idx-col {
  position: relative;
  padding: 1.15rem 1.15rem 1.25rem;
  border: 1px solid color-mix(in srgb, var(--c, #C9A063) 46%, rgba(237,230,214,.18));
  border-radius: 12px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--c, #C9A063) 16%, transparent), rgba(255,255,255,.03) 44%),
    rgba(14,22,32,.78);
}
.station-index .idx-col h3 {
  margin: 0 0 .85rem;
  color: color-mix(in srgb, var(--c, #C9A063) 72%, #FFFFFF 28%);
  font-family: var(--sans);
  font-size: .92rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.station-index .idx-col ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: .5rem;
}
.station-index .idx-col li { margin: 0; }
.station-index .idx-col a {
  display: block;
  position: relative;
  padding-left: 1rem;
  color: #ECE6D9;
  font-size: .94rem;
  line-height: 1.35;
  text-decoration: none;
}
.station-index .idx-col a::before {
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: .42rem; height: .42rem;
  border-radius: 999px;
  background: var(--c, #C9A063);
}
.station-index .idx-col a:hover,
.station-index .idx-col a:focus-visible {
  color: #FFFFFF;
  text-decoration: underline;
  text-underline-offset: .18em;
}
.station-index .viewall { color: #C9A063; }
@media (max-width: 700px) {
  .station-index .idx-grid { grid-template-columns: 1fr; }
}
/* ===== end Explore Every Topic legibility ===== */
@media (max-width: 640px) {
  .knowledge-tree-primary .kt-map-wrap { display: none; }
  .knowledge-tree-primary .station-index { border-radius: 12px; }
  .knowledge-tree-primary .station-index-grid { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .knowledge-tree-full .knowledge-tree-titlebar {
    left: 18px;
    top: 16px;
    width: calc(100% - 36px);
    grid-template-columns: minmax(155px, 190px) minmax(0, 1fr) minmax(155px, 190px);
    gap: 14px;
    min-height: 86px;
  }
  .knowledge-tree-full .knowledge-tree-titlebar:after {
    display: none;
  }
  .knowledge-tree-full .knowledge-tree-titlebar-logo img {
    width: min(184px, 100%);
    max-height: 86px;
    object-position: left bottom;
  }
  .knowledge-tree-full .knowledge-tree-titlebar-heading {
    width: 100%;
    gap: 10px;
    transform: translateY(-18px);
  }
  .knowledge-tree-full .knowledge-tree-titlebar-heading strong {
    font-size: clamp(21px, 3.3vw, 28px);
    letter-spacing: .045em;
  }
}
.knowledge-tree-rail { position: sticky; top: 6.5rem; display: grid; gap: .45rem; padding: 1rem; border: 1px solid var(--color-hairline); background: color-mix(in srgb, var(--color-panel) 78%, var(--color-ink) 22%); box-shadow: var(--shadow); }
.knowledge-tree-rail a { display: grid; grid-template-columns: 2.2rem 1fr; gap: .65rem; align-items: center; padding: .75rem; border: 1px solid color-mix(in srgb, var(--color-hairline) 60%, transparent); color: var(--color-porcelain); text-decoration: none; font-family: var(--sans); font-size: .75rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.knowledge-tree-rail a span { color: color-mix(in srgb, var(--color-oxblood) 36%, var(--color-porcelain) 64%); }
.knowledge-tree-rail a:hover, .knowledge-tree-rail a:focus-visible, .knowledge-tree-rail a.is-active { border-color: var(--color-oxblood); background: color-mix(in srgb, var(--color-oxblood) 18%, var(--color-panel) 82%); }
.knowledge-tree-panels { display: grid; gap: 1rem; min-width: 0; }
.law-guide-category { scroll-margin-top: 7rem; }
.knowledge-tree-category { display: grid; grid-template-columns: minmax(220px, .34fr) minmax(0, 1fr); gap: 0; border: 1px solid var(--color-hairline); background: color-mix(in srgb, var(--color-panel) 80%, var(--color-ink) 20%); box-shadow: var(--shadow); overflow: hidden; }
.knowledge-tree-category-head { display: grid; align-content: start; gap: .65rem; padding: clamp(1rem, 2vw, 1.4rem); border-right: 1px solid var(--color-hairline); background: radial-gradient(circle at 0% 0%, color-mix(in srgb, var(--color-oxblood) 22%, transparent), transparent 14rem); }
.knowledge-tree-category-head h2 { margin: 0; color: var(--color-porcelain); font-family: var(--serif-display); font-size: clamp(2rem, 3.2vw, 3.8rem); font-weight: 400; line-height: .95; }
.knowledge-tree-category-head p:not(.eyebrow) { margin: 0; color: var(--color-cool-gray); line-height: 1.45; }
.knowledge-tree-topic-map { display: grid; gap: 0; padding: .55rem; }
.knowledge-topic-node { position: relative; display: grid; grid-template-columns: 2.8rem minmax(0, 1fr); gap: .75rem; padding: .85rem; border-bottom: 1px solid color-mix(in srgb, var(--color-hairline) 56%, transparent); }
.knowledge-topic-node:last-child { border-bottom: 0; }
.knowledge-topic-node:before { content: ""; position: absolute; left: 1.95rem; top: 0; bottom: 0; width: 1px; background: color-mix(in srgb, var(--color-oxblood) 40%, transparent); }
.knowledge-topic-node span { position: relative; z-index: 1; width: 2.2rem; height: 2.2rem; display: inline-flex; align-items: center; justify-content: center; border: 1px solid color-mix(in srgb, var(--color-oxblood) 62%, var(--color-hairline) 38%); background: color-mix(in srgb, var(--color-panel) 90%, var(--color-ink) 10%); color: var(--color-porcelain); font-family: var(--sans); font-size: .68rem; font-weight: 800; }
.knowledge-topic-node h3 { margin: 0; color: var(--color-porcelain); font-family: var(--serif-display); font-size: clamp(1.25rem, 2vw, 1.8rem); font-weight: 400; line-height: 1; }
.knowledge-topic-node h3 a { color: inherit; text-decoration: none; }
.knowledge-topic-node h3 a:hover, .knowledge-topic-node h3 a:focus-visible { color: color-mix(in srgb, var(--color-oxblood) 30%, var(--color-porcelain) 70%); }
.knowledge-topic-node p { margin: .35rem 0 0; color: var(--color-cool-gray); line-height: 1.45; }
.law-guide-trust { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.2rem; }
.law-guide-trust span { padding: .55rem .7rem; border: 1px solid var(--color-hairline); color: var(--color-cool-gray); font-family: var(--sans); font-size: .7rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
@media (max-width: 1180px) {
  .law-tree-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .law-tree-grid:before, .law-tree-branch:before { display: none; }
  .knowledge-tree { grid-template-columns: 1fr; }
  .knowledge-tree-rail { position: relative; top: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .knowledge-tree-rail .eyebrow { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .law-tree { padding: 1rem; }
  .law-specialty-paths { grid-template-columns: 1fr; }
  .law-tree-grid { grid-template-columns: 1fr; }
  .law-tree-card { min-height: auto; }
  .law-tree-branch.is-collapsed .law-tree-next { display: none; }
  .knowledge-tree-rail, .knowledge-tree-category { grid-template-columns: 1fr; }
  .knowledge-tree-category-head { border-right: 0; border-bottom: 1px solid var(--color-hairline); }
}
@media (prefers-reduced-motion: reduce) {
  .law-tree-next a, .law-tree-select { transition: none; }
}
/* ===== END LAW GUIDE DECISION TREE =================================== */

/* Site search final header treatment */
.nav-actions .kd-search-trigger {
  color: currentColor;
  border: 1px solid color-mix(in srgb, var(--color-hairline) 72%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--color-white) 72%, transparent);
}
.nav-actions .kd-search-trigger:hover,
.nav-actions .kd-search-trigger:focus-visible {
  color: var(--color-oxblood);
  border-color: var(--color-oxblood);
  background: rgba(122,31,46,.06);
}
@media (prefers-reduced-motion: reduce) {
  .kd-search-overlay { backdrop-filter: none; }
  .kd-search-trigger, .kd-search-close { transition: none; }
}

/* ===== RESULTS SPOTLIGHT CAROUSEL ==================================== */
.results-spotlight-shell { padding: clamp(2rem, 5vw, 4.5rem) 0 clamp(1.5rem, 4vw, 3rem); background: var(--color-cream); border-bottom: 1px solid var(--color-hairline); }
.results-spotlight-intro { max-width: 760px; margin: 0 auto; text-align: center; display: grid; gap: .75rem; }
.results-spotlight-intro h1 { margin: 0; color: var(--color-ink); font-family: var(--serif-display); font-weight: 400; line-height: .92; font-size: clamp(3.2rem, 8vw, 7rem); }
.results-spotlight-intro p { margin: 0 auto; max-width: 620px; color: var(--color-muted); font-size: clamp(1rem, 1.4vw, 1.2rem); line-height: 1.55; }
.results-spotlight-intro span { color: var(--color-oxblood); font-family: var(--sans); font-size: .72rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.results-opening-note { max-width: 980px; margin: clamp(1rem, 2vw, 1.5rem) auto 0; padding: .85rem 1rem; border: 1px solid color-mix(in srgb, var(--color-hairline) 70%, transparent); color: var(--color-muted); background: color-mix(in srgb, var(--color-paper) 72%, transparent); line-height: 1.5; font-style: italic; }
.results-opening-note em { font-style: inherit; }
.results-disclaimer { max-width: 980px; margin: 1rem auto 0; }
.results-carousel { position: relative; display: grid; gap: 1rem; max-width: min(1320px, 100%); margin: clamp(1.4rem, 3vw, 2.5rem) auto 0; }
.results-carousel-window { display: grid; gap: 1rem; min-width: 0; }
.results-slide { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .82fr); min-height: clamp(32rem, 58vw, 43rem); border: 1px solid var(--color-hairline); background: var(--color-paper); box-shadow: var(--shadow); overflow: hidden; }
.results-slide-copy { display: grid; align-content: center; gap: .85rem; padding: clamp(1.2rem, 2.4vw, 2.2rem); min-width: 0; }
.results-slide-copy h2 { margin: 0; max-width: 820px; color: var(--color-ink); font-family: var(--serif-display); font-size: clamp(1.85rem, 3.35vw, 4rem); font-weight: 400; line-height: .96; }
.results-slide-copy p:not(.eyebrow) { margin: 0; max-width: 760px; color: var(--color-muted); font-size: clamp(.9rem, 1.08vw, 1rem); line-height: 1.5; }
.results-slide-art { position: relative; display: grid; place-items: end start; min-height: 100%; isolation: isolate; overflow: hidden; background: #121922; opacity: 1; }
.results-slide-art img { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(.88) contrast(1.03); transform: scale(1.015); }
.results-slide-art:before { content: ""; position: absolute; inset: 0; z-index: 1; border: 0; background: linear-gradient(90deg, rgba(18,25,34,.18), rgba(18,25,34,.02) 42%, rgba(18,25,34,.38)), linear-gradient(180deg, rgba(255,255,255,.08), rgba(18,25,34,.3)); pointer-events: none; }
.results-slide-art:after { content: ""; position: absolute; inset: 1rem; z-index: 2; border: 1px solid rgba(255,255,255,.26); pointer-events: none; }
.results-slide-art-badge { position: relative; z-index: 3; display: grid; place-items: center; width: 4.2rem; height: 4.2rem; margin: 1.4rem; color: #F7F3EA; background: rgba(18,25,34,.54); border: 1px solid rgba(255,255,255,.28); border-radius: 999px; -webkit-backdrop-filter: blur(12px) saturate(116%); backdrop-filter: blur(12px) saturate(116%); box-shadow: 0 16px 42px rgba(0,0,0,.22); }
.results-slide-art-badge svg { width: 2.35rem; height: 2.35rem; }
/* Robust scroll-snap carousel: every slide is an in-flow, always-visible flex item that the user can swipe/scroll through. No absolute positioning, no JS-controlled visibility, so the stage can never collapse to a blank gap or hide content. Prev/Next and the story cards just scroll the window. */
html.js .results-carousel.is-enhanced .results-carousel-window { position: relative; display: flex; gap: 1.25rem; min-height: 0; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scroll-behavior: smooth; -webkit-overflow-scrolling: touch; scrollbar-width: none; padding: .25rem .25rem .5rem; }
html.js .results-carousel.is-enhanced .results-carousel-window::-webkit-scrollbar { display: none; }
html.js .results-carousel.is-enhanced .results-slide { position: relative; flex: 0 0 min(88%, 1040px); scroll-snap-align: center; width: auto; height: auto; min-height: clamp(30rem, 52vw, 41rem); opacity: 1; pointer-events: auto; transform: none; transition: box-shadow .3s ease, border-color .3s ease; }
html.js .results-carousel.is-enhanced .results-slide.is-active { border-color: var(--color-oxblood); box-shadow: 0 26px 64px color-mix(in srgb, var(--color-ink) 14%, transparent); }
.results-arrow { position: absolute; top: clamp(15rem, 28vw, 21rem); z-index: 4; width: 4.2rem; height: 3.15rem; display: inline-flex; align-items: center; justify-content: center; border: 1px solid #7A1F2E; border-radius: 999px; background: #7A1F2E; color: #FFFFFF; box-shadow: 0 14px 34px color-mix(in srgb, var(--color-oxblood) 24%, transparent); font-size: .64rem; font-weight: 800; letter-spacing: .16em; line-height: 1; text-transform: uppercase; cursor: pointer; }
.results-arrow:hover, .results-arrow:focus-visible { border-color: #5F1724; background: #5F1724; color: #FFFFFF; box-shadow: 0 16px 42px color-mix(in srgb, var(--color-oxblood) 34%, transparent); }
.results-arrow-prev { left: .75rem; }
.results-arrow-next { right: .75rem; }
.results-stage-dots { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; max-width: 760px; margin: 0 auto; }
.results-stage-dots span { width: .7rem; height: .7rem; border: 1px solid color-mix(in srgb, var(--color-hairline) 72%, transparent); border-radius: 999px; background: transparent; overflow: hidden; text-indent: 100%; white-space: nowrap; }
.results-stage-dots span.is-active { border-color: var(--color-oxblood); background: color-mix(in srgb, var(--color-oxblood) 56%, var(--color-porcelain) 44%); }
.results-story-strip { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(15rem, 1fr); gap: .75rem; overflow-x: auto; overscroll-behavior-inline: contain; padding-bottom: .35rem; scrollbar-width: thin; }
.results-story-card { display: grid; grid-template-columns: 3.8rem minmax(0, 1fr); gap: .75rem; align-items: center; min-height: 5.4rem; padding: .8rem; border: 1px solid color-mix(in srgb, var(--color-hairline) 72%, transparent); background: var(--color-paper); color: var(--color-ink); text-align: left; cursor: pointer; }
.results-story-card.is-active, .results-story-card:hover, .results-story-card:focus-visible { border-color: var(--color-oxblood); background: color-mix(in srgb, var(--color-oxblood) 6%, var(--color-paper) 94%); }
.results-story-card strong { display: block; color: var(--color-ink); font-family: var(--serif-display); font-size: 1.2rem; font-weight: 400; line-height: 1.04; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.results-story-card small { display: block; margin-top: .25rem; color: var(--color-muted); font-family: var(--sans); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.results-story-thumb { position: relative; width: 3.8rem; height: 3.8rem; overflow: hidden; border: 1px solid color-mix(in srgb, var(--color-oxblood) 36%, var(--color-hairline) 64%); background: #121922; }
.results-story-thumb img { width: 100%; height: 100%; display: block; object-fit: cover; filter: saturate(.82) contrast(1.04); }
.results-story-icon { width: 2.4rem; height: 2.4rem; display: grid; place-items: center; border: 1px solid color-mix(in srgb, var(--color-oxblood) 60%, var(--color-hairline) 40%); color: var(--color-oxblood); }
.results-story-icon svg { width: 1.45rem; height: 1.45rem; }
.results-category-band { max-width: 1080px; margin: 1rem auto 0; padding: clamp(.9rem, 2vw, 1.25rem); border: 1px solid var(--color-hairline); background: color-mix(in srgb, var(--color-panel) 78%, transparent); text-align: center; }
.results-category-band > div { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .7rem; align-items: stretch; }
.results-category-band a { display: grid; gap: .45rem; place-items: center; min-height: 5rem; padding: .55rem; color: var(--color-ink); text-decoration: none; font-family: var(--serif-display); line-height: 1.05; border-left: 1px solid color-mix(in srgb, var(--color-hairline) 56%, transparent); }
.results-category-band a:first-child { border-left: 0; }
.results-category-band a:hover, .results-category-band a:focus-visible { color: var(--color-oxblood); }
.results-category-band a span { width: 2rem; height: 2rem; color: var(--color-oxblood); }
.results-category-band svg { width: 100%; height: 100%; }
.results-trust-band { max-width: 1080px; margin: 1rem auto 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--color-hairline); background: color-mix(in srgb, var(--color-panel) 72%, transparent); }
.results-trust-band article { display: grid; grid-template-columns: 2.6rem 1fr; gap: .75rem; align-items: start; padding: 1rem; border-left: 1px solid color-mix(in srgb, var(--color-hairline) 55%, transparent); }
.results-trust-band article:first-child { border-left: 0; }
.results-trust-band span { grid-row: span 2; color: var(--color-oxblood); }
.results-trust-band svg { width: 2.35rem; height: 2.35rem; }
.results-trust-band strong { color: var(--color-ink); font-family: var(--serif-display); font-size: 1.35rem; font-weight: 400; }
.results-trust-band p { margin: 0; color: var(--color-muted); line-height: 1.45; }
.results-all-cases { border-top: 1px solid var(--color-hairline); }
.results-category-section { scroll-margin-top: 7rem; margin-top: 1.2rem; padding-top: 1.2rem; border-top: 1px solid var(--color-hairline); }
.results-category-section h3 { margin: 0 0 .9rem; color: var(--color-ink); font-family: var(--serif-display); font-size: clamp(2rem, 3.6vw, 3.8rem); font-weight: 400; }
.results-category-cases { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; }
.result-case-row { padding: 1rem; border: 1px solid color-mix(in srgb, var(--color-hairline) 66%, transparent); background: color-mix(in srgb, var(--color-panel) 76%, transparent); }
.result-case-row-featured { border-color: color-mix(in srgb, var(--color-oxblood) 68%, var(--color-hairline) 32%); box-shadow: inset .18rem 0 0 var(--color-oxblood); }
.result-case-row h4 { margin: 0 0 .6rem; color: var(--color-ink); font-family: var(--serif-display); font-size: clamp(1.45rem, 2.4vw, 2.05rem); font-weight: 400; line-height: 1; }
.result-case-row p { margin: 0; color: var(--color-muted); line-height: 1.58; }
@media (max-width: 1180px) {
  .homepage-practice-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .results-category-band > div { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .results-trust-band { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .results-trust-band article:nth-child(odd) { border-left: 0; }
}
@media (max-width: 980px) {
  .homepage-practice-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .homepage-results-preview .section-heading h2 {
    white-space: normal;
  }
  .homepage-practice-card-grid {
    grid-template-columns: 1fr;
  }
  .homepage-practice-card {
    min-height: 10rem;
  }
  .results-slide { grid-template-columns: 1fr; min-height: auto; }
  html.js .results-carousel.is-enhanced .results-carousel-window { min-height: 0; gap: .85rem; }
  html.js .results-carousel.is-enhanced .results-slide { flex: 0 0 92%; min-height: auto; }
  .results-slide-copy { padding: 1rem; }
  .results-slide-copy h2 { font-size: clamp(1.75rem, 10vw, 2.8rem); }
  .results-slide-copy p:not(.eyebrow) { font-size: .9rem; line-height: 1.45; }
  .results-slide-art { min-height: 8rem; order: -1; }
  .results-arrow { position: static; width: 2.75rem; height: 2.75rem; justify-self: center; }
  .results-carousel { grid-template-columns: 1fr 1fr; }
  .results-carousel-window, .results-stage-dots, .results-story-strip { grid-column: 1 / -1; }
  .results-arrow-prev { grid-column: 1; grid-row: 2; }
  .results-arrow-next { grid-column: 2; grid-row: 2; }
  .results-story-strip { grid-auto-flow: row; grid-auto-columns: auto; grid-template-columns: 1fr; max-height: 18rem; }
  .results-category-band > div, .results-trust-band, .results-category-cases { grid-template-columns: 1fr; }
  .results-category-band a, .results-trust-band article { border-left: 0; border-top: 1px solid color-mix(in srgb, var(--color-hairline) 55%, transparent); }
  .results-category-band a:first-child, .results-trust-band article:first-child { border-top: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .results-slide, .results-story-card, .results-arrow { transition: none !important; }
}
/* ===== END RESULTS SPOTLIGHT CAROUSEL ================================ */

/* ===== PEARL & GRAPHITE QUIET-LUXURY SYSTEM =========================== */
body {
  margin: 0;
  background: radial-gradient(circle at 94% 1%, rgba(122,31,46,0.045), transparent 36%), radial-gradient(circle at 3% 90%, rgba(122,31,46,0.03), transparent 40%), var(--color-cream);
  background-attachment: fixed;
  color: var(--color-ink);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.7;
}
body:before {
  background: transparent;
}
.site-header {
  background: color-mix(in srgb, var(--color-white) 94%, var(--color-sand) 6%);
  border-bottom: 1px solid var(--color-hairline);
  box-shadow: 0 14px 36px color-mix(in srgb, var(--color-ink) 7%, transparent);
}
.nav-shell {
  width: min(1500px, calc(100% - 40px));
  min-height: 108px;
  grid-template-columns: 214px minmax(0, 1fr) auto auto;
  gap: clamp(.85rem, 1.45vw, 1.5rem);
  padding: .76rem 0;
}
.brand {
  min-height: 90px;
  display: inline-flex;
  align-items: center;
}
.brand img {
  width: 184px;
  opacity: 1;
  filter: none;
}
.brand::before {
  display: none;
}
.brand:hover img {
  opacity: 1;
}
.brand::before,
.footer-logo::before {
  background:
    linear-gradient(180deg,
      var(--color-ink) 0%,
      var(--color-ink) 42%,
      color-mix(in srgb, var(--color-ink) 64%, var(--color-oxblood) 36%) 62%,
      var(--color-oxblood) 100%),
    linear-gradient(90deg,
      color-mix(in srgb, var(--color-oxblood) 28%, transparent) 0%,
      transparent 40%);
}
.nav-menu a,
.nav-call,
.nav-text,
.nav-client {
  color: var(--color-ink);
  text-shadow: none;
}
.nav-menu {
  gap: clamp(.72rem, 1.28vw, 1.18rem);
}
.nav-menu a,
.nav-call,
.nav-text {
  font-size: .7rem;
  letter-spacing: .075em;
}
.nav-menu a:hover,
.nav-menu a:focus-visible,
.nav-menu a:active,
.nav-menu a[aria-current="page"] {
  color: var(--color-oxblood);
  text-shadow: none;
}
.nav-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: .65rem;
}
.nav-text,
.nav-payment,
.nav-call {
  color: var(--color-ink);
  background: var(--color-white);
  border-color: var(--color-hairline);
  padding: .78rem 1rem !important;
}
.nav-call {
  background: var(--color-oxblood);
  border-color: var(--color-oxblood);
  color: var(--color-white);
}
.nav-call:hover,
.nav-text:hover,
.nav-payment:hover,
.nav-client:hover {
  background: var(--color-graphite);
  border-color: var(--color-graphite);
  color: var(--color-white);
}
.page-hero,
.ivory-section,
.ivory-image-block {
  background: transparent;
  border-color: var(--color-hairline);
}
.section-band {
  background: var(--color-paper);
  border: 1px solid var(--color-hairline);
  border-radius: 14px;
  padding: clamp(2rem, 4vw, 3.4rem);
  margin: clamp(1.4rem, 2.6vw, 2.2rem) auto;
  width: min(1240px, calc(100% - 48px));
}
h1, h2, h3,
.top-feature-header h2,
.feature-slide h3,
.premium-card h3,
.results-category-section h3,
.result-case-row h4,
.law-tree-card h2,
.knowledge-topic-node,
.dwi-stage-card h2 {
  color: var(--color-ink);
}
p,
.section-lead,
.hero-copy,
.feature-slide p,
.premium-card p,
.result-case-row p,
.law-tree-card p,
.dwi-stage-card p {
  color: var(--color-muted);
}
.eyebrow,
.text-link,
.breadcrumbs a,
.premium-card span,
.feature-slide span,
.top-feature-header .eyebrow,
.results-story-card small,
.law-tree-card span,
.dwi-stage-card span {
  color: var(--color-oxblood);
}
.button-primary {
  background: var(--color-oxblood);
  color: var(--color-white);
  border-color: var(--color-oxblood);
}
.button-primary:hover {
  background: var(--color-graphite);
  border-color: var(--color-graphite);
  color: var(--color-white);
}
.button-secondary,
.button-ghost {
  color: var(--color-ink);
  background: var(--color-white);
  border-color: var(--color-hairline);
}
.button-secondary:hover,
.button-ghost:hover {
  background: var(--color-oxblood);
  border-color: var(--color-oxblood);
  color: var(--color-white);
}
.feature-slide div,
.result-case-row,
.notice,
.payment-panel,
.upload-placeholder,
.map-placeholder,
.search-placeholder,
.portrait-placeholder {
  background: var(--color-white);
  border-color: var(--color-hairline);
  color: var(--color-ink);
  box-shadow: none;
}
.card-grid,
.feature-track,
.results-category-cases {
  border-color: var(--color-hairline);
}
.hero-editorial {
  min-height: auto;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-white) 70%, transparent), transparent 45%),
    var(--color-sand);
  color: var(--color-ink);
  border-bottom: 1px solid var(--color-hairline);
  overflow: hidden;
}
.hero-editorial:after {
  display: none;
}
.hero-editorial-grid {
  min-height: clamp(500px, 66svh, 720px);
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
  gap: clamp(2rem, 4.6vw, 5rem);
  align-items: center;
  padding: clamp(2.7rem, 5.2vw, 5.2rem) 0 clamp(1.4rem, 3.4vw, 3rem);
}
.hero-editorial-copy,
.hero-video-copy {
  width: auto;
  min-height: auto;
  padding: 0;
  margin: 0;
  justify-content: center;
}
.hero-editorial-copy:before {
  content: "";
  display: block;
  width: clamp(4.25rem, 8vw, 7.5rem);
  height: 1px;
  margin-bottom: clamp(1.25rem, 2.4vw, 2rem);
  background: var(--color-oxblood);
}
.hero-editorial-copy h1,
.hero-video-copy h1 {
  max-width: 820px;
  color: var(--color-ink);
  font-size: clamp(3.1rem, 6.2vw, 6.95rem);
  font-weight: 400;
  line-height: .93;
  letter-spacing: .004em;
  text-shadow: none;
}
.hero-editorial-copy h1 span,
.hero-video-copy h1 span {
  display: block;
  max-width: 760px;
  margin-top: .18em;
  color: var(--color-graphite);
  font-size: .58em;
  line-height: 1.04;
}
.hero-editorial-copy p,
.hero-video-copy p,
.hero-video-copy .hero-trust-line {
  max-width: 680px;
  color: var(--color-muted);
  text-shadow: none;
}
.hero-editorial-copy > p:not(.eyebrow):not(.hero-trust-line),
.hero-video-copy > p:not(.eyebrow):not(.hero-trust-line) {
  margin-top: clamp(1.1rem, 1.9vw, 1.6rem);
  max-width: 650px;
  color: var(--color-graphite);
  font-size: clamp(1.04rem, 1.25vw, 1.22rem);
  line-height: 1.62;
}
.hero-cta-row {
  margin-top: clamp(1.35rem, 2.35vw, 2rem);
}
.hero-cta-row .button {
  min-height: 56px;
  padding-inline: clamp(1.25rem, 2.2vw, 1.85rem);
  letter-spacing: .12em;
}
.hero-cta-row .button-secondary {
  background: var(--color-white);
  border-color: var(--color-graphite);
  color: var(--color-graphite);
  box-shadow: 0 1px 0 color-mix(in srgb, var(--color-graphite) 18%, transparent);
}
.hero-cta-row .button-secondary:hover,
.hero-cta-row .button-secondary:focus-visible {
  background: var(--color-graphite);
  border-color: var(--color-graphite);
  color: var(--color-white);
}
.hero-editorial-copy .eyebrow,
.hero-video-copy .eyebrow {
  color: var(--color-oxblood) !important;
  opacity: 1;
  text-shadow: none;
}
.hero-editorial-copy .hero-trust-line {
  max-width: 760px;
  padding-top: 1.05rem;
  border-top: 1px solid var(--color-hairline);
  color: var(--color-graphite);
  font-size: .66rem;
  line-height: 1.6;
}
.hero-editorial-media {
  position: relative;
  margin: 0;
  min-height: clamp(360px, 45vw, 640px);
  aspect-ratio: 5 / 4;
  overflow: hidden;
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  border-radius: 2px;
  box-shadow: 0 28px 76px color-mix(in srgb, var(--color-ink) 12%, transparent);
}
.hero-editorial-media:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--color-white) 10%, transparent), color-mix(in srgb, var(--color-graphite) 10%, transparent)),
    color-mix(in srgb, var(--color-sand) 8%, transparent);
  mix-blend-mode: screen;
  opacity: .24;
  pointer-events: none;
}
.hero-editorial-media:after {
  display: none;
}
.hero-editorial-media .hero-video-media {
  position: relative;
  inset: auto;
  z-index: 1;
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
  object-position: center;
  filter: grayscale(.34) saturate(.62) contrast(.98) brightness(1.06);
  transform: scale(1.018);
  animation: none;
}
.homepage-glow-stage {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: var(--kd-bg-gray);
}
.homepage-glow-stage:before,
.homepage-glow-stage:after {
  display: none;
}
.homepage-glow-stage > section {
  position: relative;
  z-index: 1;
}
.homepage-glow-stage .hero-editorial {
  background: var(--kd-bg-gray);
  border-bottom: 0;
}
.homepage-glow-stage .content-section {
  background: var(--color-white);
}
.section-bg-gray {
  background: var(--kd-bg-gray);
}
.section-bg-white {
  background: var(--kd-white);
}
.section-bg-graphite-gradient {
  background:
    radial-gradient(circle at 82% 18%, rgba(255,255,255,0.16) 0%, rgba(255,255,255,0.06) 28%, rgba(61,70,82,0) 55%),
    linear-gradient(135deg, var(--kd-graphite-dark) 0%, var(--kd-graphite) 42%, var(--kd-graphite-light) 100%);
}
.homepage-results-preview,
.homepage-practice-links,
.homepage-reviews,
.homepage-glow-stage .case-review-module {
  clip-path: inset(0 -100vmax);
}
.homepage-practice-links > *,
.homepage-glow-stage .case-review-module > * {
  position: relative;
  z-index: 1;
}
.homepage-results-preview {
  background: var(--kd-white);
  box-shadow: 0 0 0 100vmax var(--kd-white);
}
.homepage-glow-stage .homepage-results-preview:before {
  content: none;
  display: none;
}
.homepage-practice-links,
.homepage-glow-stage .case-review-module {
  background: transparent;
}
.homepage-glow-stage .case-review-module::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0 auto 0 50%;
  width: 100vw;
  transform: translateX(-50%);
  background:
    radial-gradient(circle at 82% 18%, rgba(255,255,255,0.16) 0%, rgba(255,255,255,0.06) 28%, rgba(61,70,82,0) 55%),
    linear-gradient(135deg, var(--kd-graphite-dark) 0%, var(--kd-graphite) 42%, var(--kd-graphite-light) 100%);
  pointer-events: none;
}
.homepage-practice-links {
  background: var(--color-cream);
  box-shadow: 0 0 0 100vmax var(--color-cream);
}
.homepage-practice-links::before {
  content: none;
  display: none;
}
.homepage-practice-links .eyebrow,
.homepage-practice-links .section-heading h2,
.homepage-practice-links .section-heading p {
  color: var(--color-muted);
}
.homepage-practice-links .eyebrow {
  color: var(--color-oxblood);
}
.homepage-practice-links .section-heading h2 {
  color: var(--color-ink);
}
.homepage-practice-links .button-secondary {
  background: var(--color-oxblood);
  border-color: var(--color-oxblood);
  color: #FFFFFF;
}
.homepage-reviews {
  background: var(--kd-bg-gray);
  box-shadow: 0 0 0 100vmax var(--kd-bg-gray);
}
.hero-video-overlay {
  display: none;
}
.dark-action-bar {
  margin-top: 0;
  background: var(--color-white);
  border-color: var(--color-hairline);
  box-shadow: none;
}
.dark-action-bar a {
  min-height: 64px;
  color: var(--color-ink);
  border-right-color: var(--color-hairline);
}
.dark-action-bar a:hover {
  background: var(--color-oxblood);
  color: var(--color-white);
}
.top-feature-scroller,
.hero-carousel.top-feature-scroller {
  background: var(--color-sand);
  color: var(--color-ink);
  border-bottom-color: var(--color-hairline);
}
.hero-proof-strip {
  position: relative;
  z-index: 2;
  margin-top: 0;
  margin-bottom: clamp(2.6rem, 5vw, 4.8rem);
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.hero-practice-line {
  margin: 0;
  padding: .72rem clamp(1rem, 2vw, 1.35rem);
  background: color-mix(in srgb, var(--color-panel) 78%, var(--color-white) 22%);
  border-top: 1px solid var(--color-hairline);
  border-bottom: 1px solid var(--color-hairline);
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.4;
  text-transform: uppercase;
  text-align: center;
}
.hero-proof-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(.8rem, 1.5vw, 1rem);
  width: 100%;
  margin-top: clamp(.85rem, 1.6vw, 1.1rem);
  background: transparent;
  border: 0;
}
.hero-proof-grid .hero-proof-item {
  position: relative;
  display: grid;
  gap: .65rem;
  align-content: center;
  min-height: 132px;
  padding: clamp(1.25rem, 2.3vw, 2rem);
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  box-shadow: 0 12px 28px color-mix(in srgb, var(--color-ink) 3%, transparent);
  backdrop-filter: none;
}
.hero-proof-grid .hero-proof-item:before {
  content: "";
  position: absolute;
  left: clamp(1.25rem, 2.3vw, 2rem);
  top: clamp(1rem, 1.7vw, 1.25rem);
  width: 1.55rem;
  height: 2px;
  background: var(--color-oxblood);
  opacity: .78;
}
.hero-proof-grid .hero-proof-item:last-child {
  border-right: 0;
  border: 1px solid var(--color-hairline);
}
.hero-proof-grid .hero-proof-item span {
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .16em;
  margin-top: .65rem;
  text-transform: uppercase;
}
.hero-proof-grid .hero-proof-item strong {
  display: block;
  margin-top: 0;
  color: var(--color-ink);
  font-family: var(--sans);
  font-size: clamp(1rem, 1.08vw, 1.12rem);
  font-weight: 650;
  line-height: 1.38;
}
.feature-slide a {
  color: var(--color-ink);
}
.feature-slide figure {
  background: var(--color-white);
}
.feature-slide strong {
  color: var(--color-oxblood);
}
.homepage-ai-band,
.ai-letter-section,
.tech-command-section,
.results-prose-section,
.results-spotlight-shell,
.law-tree,
.knowledge-tree-shell,
.dwi-guide-shell,
.results-all-cases {
  background: var(--color-sand);
  color: var(--color-ink);
}
.ai-luxury-panel,
.ai-letter-card,
.tech-command-card,
.law-specialty-card,
.law-tree-card,
.law-tree-next,
.knowledge-tree-rail,
.knowledge-tree-category,
.results-slide,
.results-opening-note,
.results-story-card,
.results-category-band,
.results-trust-band,
.result-case-row,
.results-disclaimer {
  background: var(--color-white);
  border-color: var(--color-hairline);
  color: var(--color-ink);
  box-shadow: 0 18px 48px color-mix(in srgb, var(--color-ink) 6%, transparent);
}
.ai-luxury-panel:before,
.ai-luxury-panel:after,
.law-tree:before,
.law-tree-grid:before,
.law-tree-branch:before,
.results-slide-art,
.results-spotlight-shell:before {
  opacity: .38;
}
.ai-luxury-copy h2,
.ai-letter-card h2,
.tech-command-section h2,
.law-tree-heading h2,
.law-specialty-card h3,
.law-tree-card h3,
.knowledge-tree-category-head h2,
.knowledge-topic-node h3,
.results-spotlight-intro h1,
.results-slide-copy h2,
.results-category-section h3,
.results-trust-band strong,
.result-case-row h4 {
  color: var(--color-ink);
}
.ai-luxury-points strong,
.ai-letter-body strong,
.law-tree-number,
.law-tree-select,
.results-arrow {
  color: var(--color-ink);
}
.ai-luxury-points p,
.ai-letter-body p,
.tech-command-section p,
.law-tree-heading p,
.law-specialty-card p,
.law-tree-card p,
.law-tree-next a:not(.text-link),
.knowledge-tree-category-head p:not(.eyebrow),
.knowledge-topic-node p,
.results-spotlight-intro p,
.results-slide-copy p:not(.eyebrow),
.results-opening-note,
.results-trust-band p,
.result-case-row p,
.results-disclaimer {
  color: var(--color-muted);
}
.law-tree-select,
.results-arrow {
  background: var(--color-white);
  border-color: var(--color-hairline);
}
.law-tree-select:hover,
.law-tree-select:focus-visible,
.results-arrow:hover,
.results-arrow:focus-visible,
.results-story-card.is-active,
.results-story-card:hover,
.results-story-card:focus-visible,
.law-tree-next a:hover,
.law-tree-next a:focus-visible {
  background: var(--color-oxblood);
  border-color: var(--color-oxblood);
  color: var(--color-white);
}
.law-guide-tree .law-tree {
  margin-top: clamp(1.4rem, 3vw, 2.4rem);
  padding: clamp(1rem, 2.2vw, 2rem);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--color-white) 78%, transparent), transparent 46%),
    var(--color-panel);
  border: 1px solid var(--color-hairline);
  box-shadow: 0 22px 58px color-mix(in srgb, var(--color-ink) 7%, transparent);
}
.law-guide-tree .law-tree:after {
  content: "";
  position: absolute;
  inset: clamp(.85rem, 1.4vw, 1.2rem);
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(var(--color-oxblood), var(--color-oxblood)) top left / clamp(2.1rem, 4vw, 3.4rem) 1px no-repeat,
    linear-gradient(var(--color-oxblood), var(--color-oxblood)) top left / 1px clamp(2.1rem, 4vw, 3.4rem) no-repeat,
    linear-gradient(var(--color-hairline), var(--color-hairline)) bottom right / clamp(1.8rem, 3vw, 2.8rem) 1px no-repeat,
    linear-gradient(var(--color-hairline), var(--color-hairline)) bottom right / 1px clamp(1.8rem, 3vw, 2.8rem) no-repeat;
  opacity: .95;
}
.law-guide-tree .law-tree:before {
  opacity: .18;
  background: radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--color-oxblood) 22%, transparent), transparent 22rem);
}
.law-guide-tree .law-tree-heading {
  max-width: 920px;
  margin-bottom: clamp(1rem, 2.6vw, 2rem);
}
.law-guide-tree .law-tree-heading h2 {
  color: var(--color-ink);
  font-size: clamp(3.2rem, 7vw, 7rem);
}
.law-guide-tree .law-tree-heading p {
  color: var(--color-graphite);
}
.law-guide-tree .law-tree-heading span {
  color: var(--color-muted);
}
.law-tree-entry {
  position: relative;
  z-index: 2;
  display: grid;
  justify-items: center;
  gap: .4rem;
  width: min(340px, 100%);
  margin: 0 auto clamp(1.1rem, 2.4vw, 1.8rem);
  padding: clamp(.9rem, 1.8vw, 1.25rem);
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  box-shadow: 0 14px 36px color-mix(in srgb, var(--color-ink) 5%, transparent);
}
.law-tree-entry:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -1.8rem;
  width: 1px;
  height: 1.8rem;
  background: color-mix(in srgb, var(--color-oxblood) 56%, var(--color-hairline) 44%);
}
.law-tree-entry-icon {
  width: 2.9rem;
  height: 2.9rem;
  display: inline-grid;
  place-items: center;
  color: var(--color-oxblood);
}
.law-tree-entry-icon svg {
  width: 100%;
  height: 100%;
}
.law-tree-entry span:not(.law-tree-entry-icon) {
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .67rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.law-tree-entry strong {
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(1.7rem, 2.4vw, 2.5rem);
  font-weight: 400;
  line-height: 1;
}
.law-guide-tree .law-specialty-paths {
  position: relative;
  max-width: 1040px;
  margin-bottom: clamp(1.25rem, 3vw, 2.2rem);
}
.law-guide-tree .law-specialty-paths:before {
  content: "";
  position: absolute;
  top: -.92rem;
  left: 24%;
  right: 24%;
  height: 1px;
  background: color-mix(in srgb, var(--color-oxblood) 48%, var(--color-hairline) 52%);
}
.law-guide-tree .law-specialty-card {
  position: relative;
  gap: .65rem;
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  box-shadow: 0 14px 34px color-mix(in srgb, var(--color-ink) 5%, transparent);
}
.law-guide-tree .law-specialty-card:before {
  content: "";
  position: absolute;
  top: 0;
  left: clamp(1rem, 2vw, 1.45rem);
  width: 3rem;
  height: 2px;
  background: var(--color-oxblood);
}
.law-guide-tree .law-specialty-card h3 {
  color: var(--color-ink);
}
.law-guide-tree .law-specialty-card p:not(.eyebrow) {
  color: var(--color-graphite);
}
.law-guide-tree .law-tree-grid {
  gap: clamp(.8rem, 1.25vw, 1.2rem);
  padding-top: 1.2rem;
}
.law-guide-tree .law-tree-grid:before {
  top: 1.2rem;
  left: 10%;
  right: 10%;
  background: color-mix(in srgb, var(--color-oxblood) 54%, var(--color-hairline) 46%);
  opacity: 1;
}
.law-guide-tree .law-tree-branch:before {
  top: 1.2rem;
  height: 1.45rem;
  background: color-mix(in srgb, var(--color-oxblood) 54%, var(--color-hairline) 46%);
  opacity: 1;
}
.law-guide-tree .law-tree-card,
.law-guide-tree .law-tree-next {
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  color: var(--color-ink);
  box-shadow: 0 14px 34px color-mix(in srgb, var(--color-ink) 5%, transparent);
}
.law-guide-tree .law-tree-card {
  min-height: 16rem;
  align-content: start;
  padding: clamp(1rem, 1.45vw, 1.35rem);
}
.law-guide-tree .law-tree-number {
  background: var(--color-panel);
  border-color: color-mix(in srgb, var(--color-oxblood) 55%, var(--color-hairline) 45%);
  color: var(--color-oxblood);
}
.law-guide-tree .law-tree-icon {
  color: var(--color-graphite);
}
.law-guide-tree .law-tree-card h3 {
  color: var(--color-ink);
}
.law-guide-tree .law-tree-card p {
  color: var(--color-graphite);
}
.law-guide-tree .law-tree-select {
  align-self: end;
  margin-top: auto;
  background: var(--color-panel);
  border-color: var(--color-hairline);
  color: var(--color-ink);
}
.law-guide-tree .law-tree-next {
  gap: .7rem;
  padding: clamp(.85rem, 1.25vw, 1rem);
}
.law-guide-tree .law-tree-next a:not(.text-link) {
  background: var(--color-panel);
  border-color: var(--color-hairline);
  color: var(--color-graphite);
}
.law-guide-tree .law-tree-articles-link {
  justify-self: start;
}
.law-guide-knowledge-tree {
  align-items: stretch;
}
.law-guide-knowledge-tree .knowledge-tree-rail,
.law-guide-knowledge-tree .knowledge-tree-category {
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  color: var(--color-ink);
  box-shadow: 0 16px 42px color-mix(in srgb, var(--color-ink) 5%, transparent);
}
.law-guide-knowledge-tree .knowledge-tree-rail a {
  background: var(--color-panel);
  border-color: var(--color-hairline);
  color: var(--color-ink);
}
.law-guide-knowledge-tree .knowledge-tree-rail a span {
  color: var(--color-oxblood);
}
.law-guide-knowledge-tree .knowledge-tree-rail a:hover,
.law-guide-knowledge-tree .knowledge-tree-rail a:focus-visible,
.law-guide-knowledge-tree .knowledge-tree-rail a.is-active {
  background: color-mix(in srgb, var(--color-oxblood) 8%, var(--color-white) 92%);
  border-color: var(--color-oxblood);
  color: var(--color-ink);
}
.law-guide-knowledge-tree .knowledge-tree-category-head {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--color-panel) 82%, var(--color-white) 18%), var(--color-white));
  border-right: 1px solid var(--color-hairline);
}
.law-guide-knowledge-tree .knowledge-tree-category-head h2,
.law-guide-knowledge-tree .knowledge-topic-node h3 {
  color: var(--color-ink);
}
.law-guide-knowledge-tree .knowledge-tree-category-head p:not(.eyebrow),
.law-guide-knowledge-tree .knowledge-topic-node p {
  color: var(--color-graphite);
}
.law-guide-knowledge-tree .knowledge-topic-node {
  background: var(--color-white);
  border-bottom-color: var(--color-hairline);
}
.law-guide-knowledge-tree .knowledge-topic-node:before {
  background: color-mix(in srgb, var(--color-oxblood) 42%, var(--color-hairline) 58%);
}
.law-guide-knowledge-tree .knowledge-topic-node span {
  background: var(--color-panel);
  border-color: color-mix(in srgb, var(--color-oxblood) 54%, var(--color-hairline) 46%);
  color: var(--color-oxblood);
}
.law-guide-knowledge-tree .knowledge-topic-node h3 a:hover,
.law-guide-knowledge-tree .knowledge-topic-node h3 a:focus-visible {
  color: var(--color-oxblood);
}
@media (max-width: 1180px) {
  .law-guide-tree .law-tree-grid:before,
  .law-guide-tree .law-tree-branch:before,
  .law-tree-entry:after,
  .law-guide-tree .law-specialty-paths:before {
    display: none;
  }
  .law-guide-tree .law-tree-card {
    min-height: 14rem;
  }
}
@media (max-width: 760px) {
  .law-guide-tree .law-tree {
    padding: 1rem;
  }
  .law-tree-entry {
    width: 100%;
  }
  .law-guide-tree .law-tree-card,
  .law-guide-tree .law-tree-next,
  .law-guide-tree .law-specialty-card {
    box-shadow: none;
  }
  .law-guide-knowledge-tree .knowledge-tree-category-head {
    border-right: 0;
    border-bottom: 1px solid var(--color-hairline);
  }
}
.dwi-flow-shell {
  position: relative;
  display: grid;
  gap: clamp(1.1rem, 2.2vw, 1.8rem);
  padding: clamp(1.2rem, 3vw, 2.2rem);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--color-white) 86%, transparent), transparent 58%),
    var(--color-panel);
  border: 1px solid var(--color-hairline);
  box-shadow: 0 22px 58px color-mix(in srgb, var(--color-ink) 7%, transparent);
}
.dwi-flow-heading {
  display: grid;
  justify-items: center;
  gap: .55rem;
  max-width: 860px;
  margin: 0 auto;
  text-align: center;
}
.dwi-flow-heading h2 {
  margin: 0;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(2.8rem, 5vw, 5.6rem);
  font-weight: 400;
  line-height: .98;
}
.dwi-flow-heading p:not(.eyebrow) {
  max-width: 720px;
  margin: 0;
  color: var(--color-graphite);
  line-height: 1.55;
}
.dwi-flow-start {
  position: relative;
  z-index: 2;
  display: grid;
  justify-items: center;
  gap: .55rem;
  width: min(430px, 100%);
  margin: 0 auto;
  padding: clamp(1.1rem, 2.2vw, 1.55rem);
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  text-align: center;
  box-shadow: 0 16px 42px color-mix(in srgb, var(--color-ink) 6%, transparent);
}
.dwi-flow-start:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -2.05rem;
  width: 1px;
  height: 2.05rem;
  background: color-mix(in srgb, var(--color-oxblood) 46%, var(--color-hairline) 54%);
}
.dwi-flow-start > span {
  width: 3.2rem;
  height: 3.2rem;
  display: inline-grid;
  place-items: center;
  color: var(--color-oxblood);
}
.dwi-flow-start svg {
  width: 100%;
  height: 100%;
}
.dwi-flow-start h3,
.dwi-flow-track h3 {
  margin: 0;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-weight: 400;
  line-height: 1;
}
.dwi-flow-start h3 {
  font-size: clamp(2rem, 3vw, 3.25rem);
}
.dwi-flow-start p,
.dwi-flow-track-head p:not(.eyebrow),
.dwi-flow-stage-card small {
  margin: 0;
  color: var(--color-graphite);
  line-height: 1.45;
}
.dwi-flow-split {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.5rem);
  padding-top: 2rem;
}
.dwi-flow-split:before {
  content: "";
  position: absolute;
  top: 0;
  left: 21%;
  right: 21%;
  height: 1px;
  background: color-mix(in srgb, var(--color-oxblood) 46%, var(--color-hairline) 54%);
}
.dwi-flow-track {
  position: relative;
  display: grid;
  gap: clamp(.9rem, 1.7vw, 1.2rem);
  padding: clamp(1rem, 2vw, 1.55rem);
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  box-shadow: 0 16px 42px color-mix(in srgb, var(--color-ink) 6%, transparent);
}
.dwi-flow-track:before {
  content: "";
  position: absolute;
  top: -2rem;
  left: 50%;
  width: 1px;
  height: 2rem;
  background: color-mix(in srgb, var(--color-oxblood) 46%, var(--color-hairline) 54%);
}
.dwi-flow-track-head {
  display: grid;
  justify-items: center;
  gap: .45rem;
  max-width: 520px;
  margin: 0 auto;
  text-align: center;
}
.dwi-flow-track-badge {
  width: 3.05rem;
  height: 3.05rem;
  display: inline-grid;
  place-items: center;
  margin-top: -2.9rem;
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  color: var(--color-oxblood);
}
.dwi-flow-track-badge svg {
  width: 2rem;
  height: 2rem;
}
.dwi-flow-track h3 {
  font-size: clamp(2rem, 3vw, 3.45rem);
}
.dwi-flow-stage-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(9.35rem, 1fr));
  gap: .82rem;
  align-items: stretch;
}
.dwi-flow-civil .dwi-flow-stage-list {
  grid-template-columns: repeat(auto-fit, minmax(9.35rem, 1fr));
}
.dwi-flow-stage-card {
  position: relative;
  display: grid;
  justify-items: center;
  grid-template-rows: auto auto auto 1fr auto;
  align-content: stretch;
  gap: .42rem;
  min-height: 12.25rem;
  padding: .9rem .82rem 1rem;
  background: var(--color-panel);
  border: 1px solid var(--color-hairline);
  color: var(--color-ink);
  text-align: center;
  text-decoration: none;
  overflow-wrap: anywhere;
}
.dwi-flow-stage-card:not(:last-child):after {
  display: none;
}
.dwi-flow-stage-card:hover,
.dwi-flow-stage-card:focus-visible {
  border-color: var(--color-oxblood);
  background: var(--color-white);
  transform: translateY(-2px);
}
.dwi-flow-stage-num,
.dwi-flow-stage-card em {
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .72rem;
  font-style: normal;
  font-weight: 800;
}
.dwi-flow-stage-icon {
  width: 2.3rem;
  height: 2.3rem;
  display: inline-grid;
  place-items: center;
  color: var(--color-oxblood);
}
.dwi-flow-stage-icon svg {
  width: 100%;
  height: 100%;
}
.dwi-flow-stage-card strong {
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(1.05rem, 1.12vw, 1.26rem);
  font-weight: 500;
  line-height: 1.08;
  max-width: 10.5rem;
}
.dwi-flow-stage-card small {
  align-self: start;
  font-size: .8rem;
  max-width: 11rem;
}
.dwi-flow-toggle {
  display: none;
  justify-self: center;
  min-height: 44px;
  padding: .55rem .85rem;
  background: var(--color-panel);
  border: 1px solid var(--color-hairline);
  color: var(--color-ink);
  font-family: var(--sans);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.dwi-flow-guides {
  display: grid;
  gap: .75rem;
  padding: .85rem;
  background: var(--color-panel);
  border: 1px solid var(--color-hairline);
}
.dwi-flow-guides > div {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .65rem;
}
.dwi-flow-guides a {
  display: grid;
  grid-template-columns: 1.7rem minmax(0, 1fr);
  gap: .55rem;
  align-items: start;
  min-height: 4.7rem;
  padding: .75rem;
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  color: var(--color-graphite);
  font-family: var(--sans);
  font-size: .86rem;
  line-height: 1.25;
  text-decoration: none;
}
.dwi-flow-guides a span {
  color: var(--color-oxblood);
}
.dwi-flow-guides a svg {
  width: 1.25rem;
  height: 1.25rem;
}
.dwi-flow-guides a:hover,
.dwi-flow-guides a:focus-visible {
  border-color: var(--color-oxblood);
  color: var(--color-ink);
}
.dwi-flow-note {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin: .3rem auto 0;
  max-width: 760px;
  color: var(--color-muted);
  text-align: center;
}
.dwi-flow-note:before,
.dwi-flow-note:after {
  content: "";
  flex: 1;
  max-width: 220px;
  height: 1px;
  background: var(--color-hairline);
}
@media (max-width: 1180px) {
  .dwi-flow-stage-list,
  .dwi-flow-civil .dwi-flow-stage-list,
  .dwi-flow-guides > div {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dwi-flow-stage-card:not(:last-child):after {
    display: none;
  }
}
@media (max-width: 760px) {
  .dwi-flow-shell {
    padding: 1rem;
  }
  .dwi-flow-split,
  .dwi-flow-stage-list,
  .dwi-flow-civil .dwi-flow-stage-list,
  .dwi-flow-guides > div {
    grid-template-columns: 1fr;
  }
  .dwi-flow-start:after,
  .dwi-flow-split:before,
  .dwi-flow-track:before {
    display: none;
  }
  .dwi-flow-track-badge {
    margin-top: 0;
  }
  .dwi-flow-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .dwi-flow-track.is-collapsed .dwi-flow-stage-list,
  .dwi-flow-track.is-collapsed .dwi-flow-guides {
    display: none;
  }
  .dwi-flow-note:before,
  .dwi-flow-note:after {
    display: none;
  }
}
.results-slide {
  background:
    linear-gradient(120deg, var(--color-white), var(--color-panel));
}
.results-slide-copy p:not(.eyebrow),
.results-story-card strong,
.results-category-band a,
.results-trust-band strong,
.results-category-section h3,
.result-case-row h4 {
  color: var(--color-ink);
}
.review-flip-card,
.result-preview-grid .result-flip-card,
.google-review-feature,
.endorsement-preview,
.endorsement-card,
.results-story-card {
  border-color: #D4D8DC !important;
  background: #F7F8F8 !important;
  color: #232629 !important;
  box-shadow: 0 14px 34px color-mix(in srgb, #232629 5%, transparent);
}
.google-review-feature,
.endorsement-preview,
.featured-endorsement-card {
  background: linear-gradient(180deg, #FFFFFF, #F7F8F8) !important;
}
.review-flip-front,
.review-flip-back,
.result-preview-grid .result-flip-card .review-flip-front,
.result-preview-grid .result-flip-card .review-flip-back {
  background: linear-gradient(180deg, #FFFFFF, #F7F8F8) !important;
}
.review-flip-card:hover,
.review-flip-card:focus-visible,
.result-preview-grid .result-flip-card:hover,
.result-preview-grid .result-flip-card:focus-visible,
.google-review-feature:hover,
.google-review-feature:focus-within,
.endorsement-preview:hover,
.endorsement-preview:focus-within,
.endorsement-card:hover,
.endorsement-card:focus-within,
.results-story-card.is-active,
.results-story-card:hover,
.results-story-card:focus-visible {
  border-color: #AEB8C1 !important;
  background: #FFFFFF !important;
  box-shadow: 0 18px 42px color-mix(in srgb, #232629 7%, transparent);
}
.review-flip-card:hover .review-flip-front,
.review-flip-card:hover .review-flip-back,
.review-flip-card:focus-visible .review-flip-front,
.review-flip-card:focus-visible .review-flip-back {
  background: #FFFFFF !important;
}
.review-flip-face h3,
.result-preview-grid .result-flip-card h3,
.google-review-feature strong,
.endorsement-preview h3,
.endorsement-card h3,
.results-story-card strong {
  color: #232629 !important;
}
.review-flip-face p,
.review-flip-face blockquote,
.result-preview-grid .result-flip-card .review-flip-face p,
.result-preview-grid .result-flip-card .review-flip-face blockquote,
.result-preview-grid .result-flip-card .result-flip-details dd,
.google-review-feature p,
.endorsement-preview p,
.endorsement-card blockquote,
.endorsement-card blockquote p {
  color: #3D4652 !important;
}
.review-flip-face .review-meta,
.results-story-card small,
.google-review-feature small,
.endorsement-preview small,
.endorsement-card small {
  color: #5E666F !important;
}
.review-flip-face span,
.review-flip-face .flip-affordance,
.review-flip-face .stars,
.result-preview-grid .result-flip-card .review-flip-face span,
.result-preview-grid .result-flip-card .flip-affordance,
.result-preview-grid .result-flip-card .result-flip-details dt,
.google-review-feature span,
.endorsement-preview span,
.endorsement-card span {
  color: #7A1F2E !important;
}
.result-flip-details div,
.endorsement-card blockquote {
  border-color: #D4D8DC !important;
}

/* Pearl & Graphite carousel cards: reviews, victories, Google, and endorsements. */
.review-flip-card,
.result-flip-card,
.result-preview-grid .result-flip-card,
.google-review-feature,
.endorsement-preview,
.endorsement-card,
.endorsement-carousel-card,
.results-slide,
.results-story-card,
.result-case-row {
  background: #F7F8F8 !important;
  border-color: #D4D8DC !important;
  color: #232629 !important;
  box-shadow: 0 14px 34px color-mix(in srgb, #232629 5%, transparent) !important;
}
.review-flip-front,
.result-flip-card .review-flip-front,
.result-preview-grid .result-flip-card .review-flip-front {
  background: #F7F8F8 !important;
  color: #232629 !important;
}
.review-flip-back,
.result-flip-card .review-flip-back,
.result-preview-grid .result-flip-card .review-flip-back,
.google-review-feature,
.endorsement-preview,
.featured-endorsement-card {
  background: #FFFFFF !important;
  color: #232629 !important;
}
.review-flip-card:hover,
.review-flip-card:focus-visible,
.result-flip-card:hover,
.result-flip-card:focus-visible,
.google-review-feature:hover,
.google-review-feature:focus-within,
.endorsement-preview:hover,
.endorsement-preview:focus-within,
.endorsement-card:hover,
.endorsement-card:focus-within,
.results-slide.is-active,
.results-story-card.is-active,
.results-story-card:hover,
.results-story-card:focus-visible,
.result-case-row-featured {
  border-color: #AEB8C1 !important;
  box-shadow: 0 18px 42px color-mix(in srgb, #232629 7%, transparent) !important;
}
.review-flip-card:hover .review-flip-front,
.review-flip-card:hover .review-flip-back,
.review-flip-card:focus-visible .review-flip-front,
.review-flip-card:focus-visible .review-flip-back,
.result-flip-card:hover .review-flip-front,
.result-flip-card:hover .review-flip-back,
.result-flip-card:focus-visible .review-flip-front,
.result-flip-card:focus-visible .review-flip-back {
  background: #FFFFFF !important;
}
.review-flip-face h3,
.result-flip-card h3,
.result-preview-grid .result-flip-card h3,
.google-review-feature strong,
.endorsement-preview h3,
.endorsement-card h3,
.endorsement-carousel-card h3,
.results-slide-copy h2,
.results-story-card strong,
.result-case-row h4 {
  color: #232629 !important;
}
.review-flip-face p,
.review-flip-face blockquote,
.result-flip-card .review-flip-face p,
.result-flip-card .review-flip-face blockquote,
.result-flip-card .result-flip-details dd,
.google-review-feature p,
.endorsement-preview p,
.endorsement-card blockquote,
.endorsement-card blockquote p,
.endorsement-carousel-card blockquote,
.endorsement-carousel-card blockquote p,
.results-slide-copy p:not(.eyebrow),
.result-case-row p {
  color: #3D4652 !important;
}
.review-flip-face .review-meta,
.results-story-card small,
.google-review-feature small,
.endorsement-preview small,
.endorsement-card small,
.endorsement-carousel-card small {
  color: #5E666F !important;
}
.review-flip-face span,
.review-flip-face .flip-affordance,
.review-flip-face .stars,
.result-flip-card .review-flip-face span,
.result-flip-card .flip-affordance,
.result-flip-card .result-flip-details dt,
.google-review-feature span,
.endorsement-preview span,
.endorsement-card span,
.endorsement-carousel-card span,
.results-slide-copy .eyebrow {
  color: #7A1F2E !important;
}
.result-flip-details div,
.endorsement-card blockquote,
.endorsement-carousel-card blockquote,
.results-slide-copy,
.result-case-row {
  border-color: #D4D8DC !important;
}
.results-slide-art {
  background: #FFFFFF !important;
  opacity: 1 !important;
}
.results-slide-art:before {
  border-color: #D4D8DC !important;
}
.results-slide-art span,
.results-story-icon,
.results-category-band a span,
.results-trust-band span {
  color: #3D4652 !important;
}
.endorsement-carousel-controls .icon-button {
  background: #FFFFFF !important;
  border-color: #D4D8DC !important;
  color: #3D4652 !important;
}
.endorsement-carousel-controls .icon-button:hover,
.endorsement-carousel-controls .icon-button:focus-visible {
  background: #7A1F2E !important;
  border-color: #7A1F2E !important;
  color: #FFFFFF !important;
}
.results-arrow {
  background: #7A1F2E !important;
  border-color: #7A1F2E !important;
  color: #FFFFFF !important;
}
.results-arrow:hover,
.results-arrow:focus-visible {
  background: #5F1724 !important;
  border-color: #5F1724 !important;
  color: #FFFFFF !important;
}
.results-stage-dots span {
  border-color: #3D4652 !important;
  background: transparent !important;
}
.results-stage-dots span.is-active {
  border-color: #7A1F2E !important;
  background: #7A1F2E !important;
}

.faq-list {
  border-color: var(--color-hairline);
}
.faq-list details,
.faq-list details[open] {
  background: var(--color-sand);
  border-color: var(--color-hairline);
}
.faq-list summary {
  color: var(--color-ink) !important;
}
.faq-list summary:hover,
.faq-list summary:focus-visible {
  color: var(--color-oxblood) !important;
}
.faq-list p {
  color: var(--color-graphite) !important;
}
.faq-list summary::after,
.faq-list summary::before {
  background: var(--color-oxblood) !important;
}
.cta-panel .button-secondary,
.cta-panel .button-ghost {
  background: var(--color-white) !important;
  border-color: var(--color-hairline) !important;
  color: var(--color-ink) !important;
}
.cta-panel .button-secondary:hover,
.cta-panel .button-secondary:focus-visible,
.cta-panel .button-ghost:hover,
.cta-panel .button-ghost:focus-visible {
  background: var(--color-graphite) !important;
  border-color: var(--color-graphite) !important;
  color: var(--color-white) !important;
}
.results-slide-art span,
.results-story-icon,
.results-category-band a span,
.results-trust-band span,
.law-tree-icon {
  color: var(--color-graphite);
}
.site-footer {
  background: var(--color-graphite);
  color: var(--color-white);
  border-top-color: var(--color-hairline);
}
.site-footer p,
.site-footer a,
.site-footer li,
.site-footer address,
.site-footer small {
  color: color-mix(in srgb, var(--color-white) 82%, var(--color-cool-gray) 18%);
}
.site-footer h2,
.site-footer h3,
.site-footer strong {
  color: var(--color-white);
}
.site-footer a:hover,
.site-footer a:focus-visible {
  color: var(--color-white);
  text-decoration-color: var(--color-oxblood);
}
.case-review-module {
  background: var(--color-sand);
}
.homepage-results-preview .section-heading::before,
.homepage-results-preview .section-heading::after {
  display: none;
}
.homepage-results-preview .section-heading {
  margin-bottom: clamp(1.7rem, 3vw, 2.6rem);
}
.homepage-results-preview .split-heading,
.homepage-practice-links .split-heading,
.homepage-reviews .split-heading {
  display: block;
  max-width: 1040px;
}
.homepage-results-preview .split-heading > p,
.homepage-practice-links .split-heading > p,
.homepage-reviews .split-heading > p {
  max-width: 880px;
  margin-top: clamp(1rem, 1.8vw, 1.45rem);
}
.homepage-results-preview .section-heading h2 {
  max-width: none;
  white-space: nowrap;
  font-size: clamp(3rem, 5.2vw, 6.2rem);
}
.homepage-glow-stage .homepage-results-preview {
  background: var(--kd-white) !important;
  box-shadow: 0 0 0 100vmax var(--kd-white) !important;
}
.homepage-glow-stage .homepage-results-preview,
.homepage-glow-stage .homepage-results-preview .section-heading,
.homepage-glow-stage .homepage-results-preview .result-preview-grid,
.homepage-glow-stage .homepage-results-preview .button-row,
.homepage-glow-stage .homepage-results-preview .disclaimer-text {
  background-color: #FFFFFF !important;
}
.homepage-glow-stage .homepage-results-preview {
  box-shadow: 0 0 0 100vmax #FFFFFF !important;
}
.homepage-results-preview .result-preview-grid .result-flip-card {
  min-height: clamp(520px, 40vw, 620px) !important;
}
.homepage-results-preview .result-preview-grid,
.homepage-results-preview .review-flip-grid,
.homepage-results-preview .result-flip-grid {
  background: var(--kd-white) !important;
}
.homepage-results-preview .result-preview-grid .result-flip-card,
.homepage-results-preview .result-preview-grid .review-flip-front,
.homepage-results-preview .result-preview-grid .review-flip-back {
  background: var(--kd-white) !important;
}
.homepage-results-preview .result-preview-grid .review-flip-face {
  padding: clamp(1.2rem, 2vw, 1.75rem);
  overflow-y: visible;
}
.homepage-glow-stage .homepage-results-preview,
.homepage-results-preview {
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 16%, rgba(255,255,255,.92) 0%, rgba(255,255,255,.42) 34%, rgba(247,243,234,0) 60%),
    linear-gradient(135deg, #fbf7ef 0%, #f4efe7 48%, #ede4d9 100%) !important;
  box-shadow: 0 0 0 100vmax #F7F3EA !important;
}
.homepage-glow-stage .homepage-results-preview:before,
.homepage-results-preview:before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, transparent 0 72%, rgba(61,70,82,.09) 72.5% 74%, transparent 74.5%),
    linear-gradient(90deg, transparent 0 78%, rgba(61,70,82,.07) 78.5% 79.7%, transparent 80.2%),
    linear-gradient(90deg, transparent 0 84%, rgba(61,70,82,.06) 84.5% 86%, transparent 86.5%),
    radial-gradient(circle at 80% 24%, rgba(255,255,255,.72), rgba(255,255,255,0) 42%);
  filter: blur(10px);
  opacity: .78;
}
.homepage-glow-stage .homepage-results-preview:after,
.homepage-results-preview:after {
  content: "";
  display: block;
  position: absolute;
  inset: auto 0 0;
  height: 42%;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(0deg, rgba(255,255,255,.62), rgba(255,255,255,0));
}
.homepage-results-preview > * {
  position: relative;
  z-index: 1;
}
.homepage-glow-stage .homepage-results-preview .section-heading,
.homepage-glow-stage .homepage-results-preview .result-preview-grid,
.homepage-glow-stage .homepage-results-preview .button-row,
.homepage-glow-stage .homepage-results-preview .disclaimer-text,
.homepage-results-preview .section-heading,
.homepage-results-preview .result-preview-grid,
.homepage-results-preview .review-flip-grid,
.homepage-results-preview .result-flip-grid,
.homepage-results-preview .button-row,
.homepage-results-preview .disclaimer-text {
  background: transparent !important;
  background-color: transparent !important;
}
.homepage-results-preview .result-preview-grid {
  gap: clamp(1rem, 1.65vw, 1.45rem) !important;
  border: 0 !important;
}
.homepage-results-preview .result-preview-grid .result-flip-card {
  min-height: clamp(600px, 42vw, 690px) !important;
  border: 0 !important;
  background: transparent !important;
  color: #232629 !important;
  transform: translateY(0);
  transition: transform 250ms ease, filter 250ms ease;
}
.homepage-results-preview .result-preview-grid .result-flip-card:hover,
.homepage-results-preview .result-preview-grid .result-flip-card:focus-visible {
  transform: none;
  filter: drop-shadow(0 22px 38px rgba(20,28,38,.13));
}
.homepage-results-preview .result-preview-grid .review-flip-face {
  justify-content: flex-start;
  gap: clamp(.82rem, 1.25vw, 1.05rem);
  padding: clamp(1.45rem, 2.15vw, 2.15rem) !important;
  overflow: hidden !important;
  background:
    linear-gradient(150deg, rgba(255,255,255,.78), rgba(250,247,241,.48)),
    rgba(255,255,255,.5) !important;
  border: 1px solid rgba(255,255,255,.68);
  border-radius: 10px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    inset 0 -1px 0 rgba(122,31,46,.08),
    0 24px 60px rgba(20,28,38,.16);
  color: #232629 !important;
  -webkit-backdrop-filter: blur(18px) saturate(120%);
  backdrop-filter: blur(18px) saturate(120%);
}
.homepage-results-preview .result-preview-grid .review-flip-back {
  background:
    linear-gradient(145deg, rgba(255,255,255,.72), rgba(250,247,241,.5)),
    linear-gradient(315deg, rgba(122,31,46,.12), rgba(255,255,255,0) 42%) !important;
}
.homepage-results-preview .result-preview-grid .review-flip-face:before,
.homepage-results-preview .result-preview-grid .review-flip-face:after {
  content: "";
  position: absolute;
  width: 2rem;
  height: 2rem;
  pointer-events: none;
  transition: border-color 250ms ease, opacity 250ms ease;
}
.homepage-results-preview .result-preview-grid .review-flip-face:before {
  top: 1rem;
  left: 1rem;
  border-top: 2px solid rgba(255,255,255,.95);
  border-left: 2px solid rgba(255,255,255,.95);
  box-shadow: -1px -1px 0 rgba(122,31,46,.22);
}
.homepage-results-preview .result-preview-grid .review-flip-face:after {
  right: 1rem;
  bottom: 1rem;
  border-right: 2px solid rgba(255,255,255,.95);
  border-bottom: 2px solid rgba(255,255,255,.95);
  box-shadow: 1px 1px 0 rgba(122,31,46,.42);
}
.homepage-results-preview .result-preview-grid .result-flip-card:hover .review-flip-face,
.homepage-results-preview .result-preview-grid .result-flip-card:focus-visible .review-flip-face {
  background:
    linear-gradient(150deg, rgba(255,255,255,.86), rgba(250,247,241,.58)),
    rgba(255,255,255,.56) !important;
  border-color: rgba(255,255,255,.86) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    inset 0 -1px 0 rgba(122,31,46,.12),
    14px 24px 64px rgba(20,28,38,.18),
    0 0 34px rgba(122,31,46,.16) !important;
}
.homepage-results-preview .result-preview-grid .result-flip-card:hover .review-flip-face:after,
.homepage-results-preview .result-preview-grid .result-flip-card:focus-visible .review-flip-face:after {
  border-color: rgba(122,31,46,.72);
  opacity: 1;
}
.homepage-results-preview .result-preview-grid .review-flip-face span,
.homepage-results-preview .result-preview-grid .flip-affordance,
.homepage-results-preview .result-preview-grid .result-flip-details dt {
  color: #7A1F2E !important;
}
.homepage-results-preview .result-preview-grid .review-flip-face span {
  letter-spacing: .18em;
}
.homepage-results-preview .result-preview-grid .result-flip-card h3 {
  color: #232629 !important;
  font-size: clamp(2.1rem, calc(3.2vw - var(--serif-trim)), 3.65rem);
  line-height: .98;
}
.homepage-results-preview .result-preview-grid .review-flip-face p,
.homepage-results-preview .result-preview-grid .review-flip-face blockquote,
.homepage-results-preview .result-preview-grid .result-flip-details dd {
  color: #232629 !important;
}
.homepage-results-preview .result-preview-grid .review-flip-face p,
.homepage-results-preview .result-preview-grid .review-flip-face blockquote {
  font-size: clamp(.98rem, 1.08vw, 1.08rem);
  line-height: 1.58;
}
.homepage-results-preview .result-flip-details {
  gap: 0;
  margin: .2rem 0 .35rem;
}
.homepage-results-preview .result-flip-details div {
  grid-template-columns: minmax(5.1rem, .38fr) minmax(0, 1fr);
  gap: clamp(.75rem, 1.2vw, 1rem);
  padding: .62rem 0;
  border-bottom: 1px solid rgba(61,70,82,.14) !important;
}
.homepage-results-preview .result-flip-details dt {
  font-size: .66rem;
}
.homepage-results-preview .result-flip-details dd {
  font-size: .9rem;
}
.homepage-results-preview .flip-affordance {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: .6rem;
}
.homepage-results-preview .flip-affordance:after {
  content: "->";
  transition: transform 250ms ease;
}
.homepage-results-preview .result-flip-card:hover .flip-affordance:after,
.homepage-results-preview .result-flip-card:focus-visible .flip-affordance:after {
  transform: translateX(5px);
}
.homepage-results-preview .button-row {
  margin-top: clamp(1.5rem, 2.6vw, 2.2rem);
}
.homepage-results-preview .button-secondary {
  background: rgba(255,255,255,.62);
  border-color: rgba(122,31,46,.72);
  color: #232629;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.homepage-results-preview .button-secondary:hover,
.homepage-results-preview .button-secondary:focus-visible {
  background: rgba(255,255,255,.82);
  border-color: #7A1F2E;
  color: #7A1F2E;
}
@media (max-width: 980px) {
  .homepage-results-preview .result-preview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 700px) {
  .homepage-results-preview .result-preview-grid {
    grid-template-columns: 1fr;
  }
  .homepage-results-preview .result-preview-grid .result-flip-card {
    min-height: 570px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .homepage-results-preview .result-preview-grid .result-flip-card,
  .homepage-results-preview .result-preview-grid .review-flip-inner,
  .homepage-results-preview .result-preview-grid .review-flip-face,
  .homepage-results-preview .flip-affordance:after {
    transition: none !important;
    transform: none !important;
  }
}
.review-stars {
  position: relative;
  z-index: 2;
  display: flex;
  width: 100%;
  max-width: 100%;
  margin: clamp(1.1rem, 2vw, 1.8rem) 0 clamp(1rem, 1.8vw, 1.5rem);
  overflow: visible;
  transform-origin: left center;
  color: #7A1F2E !important;
  font-size: clamp(3.15rem, 6.3vw, 6rem) !important;
  letter-spacing: clamp(.04em, .62vw, .18em) !important;
  line-height: .78;
  transition: transform 240ms ease, color 240ms ease, text-shadow 240ms ease;
}
.review-stars-visible {
  position: relative;
  z-index: 2;
  display: inline-block;
  width: 100%;
  color: inherit !important;
  white-space: nowrap;
}
.star-pop {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  width: 1.9rem;
  height: 1.9rem;
  opacity: 0;
  transform: translate(-50%, -50%) scale(.3) rotate(0deg);
  pointer-events: none;
}
.star-pop:before {
  content: "\2605";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #7A1F2E;
  font-size: 1.9rem;
  line-height: 1;
  text-shadow:
    0 0 12px rgba(185,133,144,.48),
    0 0 22px rgba(122,31,46,.22);
}
.star-pop-2:before,
.star-pop-4:before {
  color: #B98590;
  text-shadow:
    0 0 12px rgba(185,133,144,.42),
    0 0 20px rgba(255,255,255,.58);
}
.star-pop:after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 2.65rem;
  height: 1px;
  transform: translate(-50%, -50%) rotate(var(--trail-angle, -24deg));
  transform-origin: left center;
  background: linear-gradient(90deg, rgba(122,31,46,.42), rgba(255,255,255,0));
  opacity: .62;
}
.star-pop-1 { --trail-angle: -32deg; }
.star-pop-2 { --trail-angle: -90deg; }
.star-pop-3 { --trail-angle: 28deg; }
.star-pop-4 { --trail-angle: 10deg; }
.star-pop-5 { --trail-angle: 42deg; }
.review-card-burst {
  position: absolute;
  z-index: 12;
  top: clamp(8rem, 18vw, 10.25rem);
  left: clamp(2.15rem, 4vw, 3.15rem);
  width: 1px;
  height: 1px;
  overflow: visible;
  pointer-events: none;
  transform: translateZ(80px);
}
.review-card-burst .star-pop {
  left: 0;
  top: 0;
  z-index: 2;
}
.homepage-reviews .review-flip-grid,
.review-flip-carousel,
.review-flip-carousel-track {
  overflow: visible;
}
.review-flip-carousel-track {
  padding-top: 2.4rem;
}
.homepage-reviews .review-flip-card:not(.result-flip-card),
.review-flip-carousel .review-flip-card {
  transition: transform 250ms ease, box-shadow 250ms ease, border-color 250ms ease, filter 250ms ease;
}
.homepage-reviews .review-flip-card:not(.result-flip-card):hover,
.homepage-reviews .review-flip-card:not(.result-flip-card):focus-visible,
.review-flip-carousel .review-flip-card:hover,
.review-flip-carousel .review-flip-card:focus-visible {
  transform: none;
  box-shadow:
    0 24px 58px rgba(20,28,38,.12),
    0 0 30px rgba(122,31,46,.13) !important;
  border-color: rgba(122,31,46,.42) !important;
}
.homepage-reviews .review-flip-card:hover .review-stars,
.homepage-reviews .review-flip-card:focus-visible .review-stars,
.review-flip-carousel .review-flip-card:hover .review-stars,
.review-flip-carousel .review-flip-card:focus-visible .review-stars {
  color: #7A1F2E !important;
  transform: translateY(-2px) scale(1.055);
  text-shadow:
    0 0 12px rgba(122,31,46,.2),
    0 0 22px rgba(185,133,144,.18);
}
.homepage-reviews .review-flip-card:hover .flip-affordance:after,
.homepage-reviews .review-flip-card:focus-visible .flip-affordance:after,
.review-flip-carousel .review-flip-card:hover .flip-affordance:after,
.review-flip-carousel .review-flip-card:focus-visible .flip-affordance:after {
  transform: translateX(5px);
}
.homepage-reviews .review-flip-card:hover .star-pop-1,
.homepage-reviews .review-flip-card:focus-visible .star-pop-1,
.review-flip-carousel .review-flip-card:hover .star-pop-1,
.review-flip-carousel .review-flip-card:focus-visible .star-pop-1 {
  animation: starFirework1 800ms ease-out forwards;
}
.homepage-reviews .review-flip-card:hover .star-pop-2,
.homepage-reviews .review-flip-card:focus-visible .star-pop-2,
.review-flip-carousel .review-flip-card:hover .star-pop-2,
.review-flip-carousel .review-flip-card:focus-visible .star-pop-2 {
  animation: starFirework2 820ms ease-out 45ms forwards;
}
.homepage-reviews .review-flip-card:hover .star-pop-3,
.homepage-reviews .review-flip-card:focus-visible .star-pop-3,
.review-flip-carousel .review-flip-card:hover .star-pop-3,
.review-flip-carousel .review-flip-card:focus-visible .star-pop-3 {
  animation: starFirework3 840ms ease-out 85ms forwards;
}
.homepage-reviews .review-flip-card:hover .star-pop-4,
.homepage-reviews .review-flip-card:focus-visible .star-pop-4,
.review-flip-carousel .review-flip-card:hover .star-pop-4,
.review-flip-carousel .review-flip-card:focus-visible .star-pop-4 {
  animation: starFirework4 760ms ease-out 115ms forwards;
}
.homepage-reviews .review-flip-card:hover .star-pop-5,
.homepage-reviews .review-flip-card:focus-visible .star-pop-5,
.review-flip-carousel .review-flip-card:hover .star-pop-5,
.review-flip-carousel .review-flip-card:focus-visible .star-pop-5 {
  animation: starFirework5 760ms ease-out 150ms forwards;
}
.review-flip-card:is(:hover, :focus-visible, .is-star-burst) > .review-card-burst .star-pop-1,
.review-carousel-card.is-active.is-star-burst > .review-card-burst .star-pop-1 {
  animation: starFirework1 820ms ease-out forwards;
}
.review-flip-card:is(:hover, :focus-visible, .is-star-burst) > .review-card-burst .star-pop-2,
.review-carousel-card.is-active.is-star-burst > .review-card-burst .star-pop-2 {
  animation: starFirework2 840ms ease-out 45ms forwards;
}
.review-flip-card:is(:hover, :focus-visible, .is-star-burst) > .review-card-burst .star-pop-3,
.review-carousel-card.is-active.is-star-burst > .review-card-burst .star-pop-3 {
  animation: starFirework3 860ms ease-out 85ms forwards;
}
.review-flip-card:is(:hover, :focus-visible, .is-star-burst) > .review-card-burst .star-pop-4,
.review-carousel-card.is-active.is-star-burst > .review-card-burst .star-pop-4 {
  animation: starFirework4 790ms ease-out 115ms forwards;
}
.review-flip-card:is(:hover, :focus-visible, .is-star-burst) > .review-card-burst .star-pop-5,
.review-carousel-card.is-active.is-star-burst > .review-card-burst .star-pop-5 {
  animation: starFirework5 790ms ease-out 150ms forwards;
}
@keyframes starFirework1 {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.3) rotate(0deg); }
  20% { opacity: 1; }
  70% { opacity: 1; transform: translate(calc(-50% - 26px), calc(-50% - 34px)) scale(1.05) rotate(-14deg); }
  100% { opacity: 0; transform: translate(calc(-50% - 34px), calc(-50% - 46px)) scale(.7) rotate(-22deg); }
}
@keyframes starFirework2 {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.3) rotate(0deg); }
  20% { opacity: 1; }
  70% { opacity: 1; transform: translate(-50%, calc(-50% - 42px)) scale(1.12) rotate(8deg); }
  100% { opacity: 0; transform: translate(-50%, calc(-50% - 56px)) scale(.7) rotate(16deg); }
}
@keyframes starFirework3 {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.3) rotate(0deg); }
  20% { opacity: 1; }
  70% { opacity: 1; transform: translate(calc(-50% + 28px), calc(-50% - 36px)) scale(1.08) rotate(16deg); }
  100% { opacity: 0; transform: translate(calc(-50% + 38px), calc(-50% - 50px)) scale(.7) rotate(24deg); }
}
@keyframes starFirework4 {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.3) rotate(0deg); }
  20% { opacity: 1; }
  70% { opacity: 1; transform: translate(calc(-50% + 42px), calc(-50% - 16px)) scale(.95) rotate(22deg); }
  100% { opacity: 0; transform: translate(calc(-50% + 54px), calc(-50% - 22px)) scale(.6) rotate(30deg); }
}
@keyframes starFirework5 {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.3) rotate(0deg); }
  20% { opacity: 1; }
  70% { opacity: 1; transform: translate(calc(-50% + 18px), calc(-50% + 24px)) scale(.9) rotate(-10deg); }
  100% { opacity: 0; transform: translate(calc(-50% + 26px), calc(-50% + 34px)) scale(.55) rotate(-18deg); }
}
.homepage-reviews .review-flip-card:not(.result-flip-card),
.homepage-reviews .review-flip-card:not(.result-flip-card) .review-flip-inner,
.homepage-reviews .review-flip-card:not(.result-flip-card) .review-flip-front,
.review-flip-carousel .review-flip-card,
.review-flip-carousel .review-flip-inner,
.review-flip-carousel .review-flip-front {
  overflow: visible !important;
}
@media (hover: hover) and (pointer: fine) {
  .homepage-reviews .review-flip-card:not(.result-flip-card):not(.is-flipped):not([aria-pressed="true"]):hover .review-flip-inner,
  .review-flip-carousel .review-flip-card:not(.is-flipped):not([aria-pressed="true"]):hover .review-flip-inner {
    transform: none;
  }
}
.homepage-reviews .review-flip-card:not(.result-flip-card) .review-flip-front,
.review-flip-carousel .review-flip-front {
  z-index: 2;
}
.homepage-reviews .review-flip-card:not(.result-flip-card) .review-flip-back,
.review-flip-carousel .review-flip-back {
  overflow-y: auto;
}
.homepage-reviews .review-stars,
.review-flip-carousel .review-stars {
  isolation: isolate;
  overflow: visible !important;
}
.homepage-reviews .star-pop,
.review-flip-carousel .star-pop {
  width: clamp(2.2rem, 3.2vw, 3.4rem);
  height: clamp(2.2rem, 3.2vw, 3.4rem);
}
.homepage-reviews .star-pop:before,
.review-flip-carousel .star-pop:before {
  font-size: clamp(2.2rem, 3.2vw, 3.4rem);
}
.homepage-reviews .star-pop:after,
.review-flip-carousel .star-pop:after {
  width: clamp(3.4rem, 5vw, 5.4rem);
  background:
    linear-gradient(90deg, rgba(122,31,46,.5), rgba(215,185,138,.38), rgba(255,255,255,0));
}
.homepage-reviews .review-card-burst,
.review-flip-carousel .review-card-burst {
  top: clamp(9.2rem, 18vw, 12.5rem);
  left: clamp(4.4rem, 8vw, 7.3rem);
}
.homepage-reviews .review-card-burst:before,
.homepage-reviews .review-card-burst:after,
.review-flip-carousel .review-card-burst:before,
.review-flip-carousel .review-card-burst:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 8.5rem;
  height: 8.5rem;
  opacity: 0;
  transform: translate(-50%, -50%) scale(.55);
  pointer-events: none;
  background:
    radial-gradient(circle at 24% 28%, rgba(215,185,138,.55) 0 1.5px, transparent 2.5px),
    radial-gradient(circle at 58% 15%, rgba(255,255,255,.62) 0 1.5px, transparent 2.5px),
    radial-gradient(circle at 76% 42%, rgba(122,31,46,.42) 0 1.5px, transparent 2.5px),
    radial-gradient(circle at 42% 66%, rgba(215,185,138,.45) 0 1.5px, transparent 2.5px);
}
.homepage-reviews .review-flip-card:is(:hover, :focus-visible, .is-star-burst) > .review-card-burst:before,
.review-flip-carousel .review-flip-card:is(:hover, :focus-visible, .is-star-burst) > .review-card-burst:before {
  animation: starSparkleBloom 760ms ease-out 80ms forwards;
}
.homepage-reviews .review-flip-card:is(:hover, :focus-visible, .is-star-burst) > .review-card-burst:after,
.review-flip-carousel .review-flip-card:is(:hover, :focus-visible, .is-star-burst) > .review-card-burst:after {
  animation: starSparkleBloom 820ms ease-out 150ms forwards;
}
@keyframes starFirework1 {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.25) rotate(0deg); }
  18% { opacity: 1; }
  68% { opacity: 1; transform: translate(calc(-50% - 80px), calc(-50% - 104px)) scale(1.45) rotate(-16deg); }
  100% { opacity: 0; transform: translate(calc(-50% - 104px), calc(-50% - 130px)) scale(.95) rotate(-24deg); }
}
@keyframes starFirework2 {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.25) rotate(0deg); }
  18% { opacity: 1; }
  68% { opacity: 1; transform: translate(calc(-50% - 12px), calc(-50% - 128px)) scale(1.6) rotate(8deg); }
  100% { opacity: 0; transform: translate(calc(-50% - 12px), calc(-50% - 160px)) scale(1.0) rotate(18deg); }
}
@keyframes starFirework3 {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.25) rotate(0deg); }
  18% { opacity: 1; }
  68% { opacity: 1; transform: translate(calc(-50% + 78px), calc(-50% - 108px)) scale(1.5) rotate(15deg); }
  100% { opacity: 0; transform: translate(calc(-50% + 104px), calc(-50% - 136px)) scale(.95) rotate(26deg); }
}
@keyframes starFirework4 {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.25) rotate(0deg); }
  18% { opacity: 1; }
  68% { opacity: 1; transform: translate(calc(-50% + 116px), calc(-50% - 50px)) scale(1.35) rotate(24deg); }
  100% { opacity: 0; transform: translate(calc(-50% + 142px), calc(-50% - 66px)) scale(.85) rotate(34deg); }
}
@keyframes starFirework5 {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.25) rotate(0deg); }
  18% { opacity: 1; }
  68% { opacity: 1; transform: translate(calc(-50% + 50px), calc(-50% + 50px)) scale(1.3) rotate(-12deg); }
  100% { opacity: 0; transform: translate(calc(-50% + 68px), calc(-50% + 70px)) scale(.8) rotate(-20deg); }
}
@keyframes starSparkleBloom {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.55); filter: blur(0); }
  32% { opacity: .78; }
  100% { opacity: 0; transform: translate(-50%, -50%) scale(1.08); filter: blur(.6px); }
}
@media (prefers-reduced-motion: reduce) {
  .star-pop {
    animation: none !important;
    opacity: 0 !important;
  }
  .review-card-burst:before,
  .review-card-burst:after {
    animation: none !important;
    opacity: 0 !important;
  }
  .review-flip-card,
  .review-stars,
  .review-stars-visible {
    transition: none !important;
    transform: none !important;
  }
}
@media (max-width: 700px) {
  .review-stars {
    font-size: clamp(2.45rem, 13vw, 4.25rem) !important;
    letter-spacing: clamp(.015em, .5vw, .1em) !important;
  }
}
.homepage-reviews .section-heading::before,
.homepage-reviews .section-heading::after {
  display: none;
}
.homepage-reviews .section-heading {
  margin-bottom: clamp(1.7rem, 3vw, 2.6rem);
}
.homepage-reviews,
.reviews-client-section,
.homepage-results-preview,
.results-spotlight-shell,
.results-all-cases {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}
.homepage-reviews,
.homepage-results-preview,
.results-all-cases {
  background:
    radial-gradient(circle at 15% 18%, rgba(255,255,255,.86), rgba(255,255,255,0) 34rem),
    linear-gradient(135deg, #fbf7ef 0%, #f5efe6 48%, #ede4d9 100%) !important;
  box-shadow: 0 0 0 100vmax #f5efe6 !important;
}
.results-spotlight-shell {
  background:
    radial-gradient(circle at 17% 16%, rgba(255,255,255,.82), rgba(255,255,255,0) 30rem),
    linear-gradient(135deg, #fbf7ef 0%, #f5efe6 48%, #ede4d9 100%) !important;
  border-bottom: 1px solid rgba(185,133,144,.28) !important;
  z-index: 2 !important;
}
/* The following sections use a full-viewport box-shadow (0 0 0 100vmax) as a
   background bleed; without an explicit positive z-index here, that shadow
   paints OVER the earlier spotlight section and hides it. */
.homepage-reviews::before,
.homepage-results-preview::before,
.results-spotlight-shell::before,
.results-all-cases::before {
  content: "";
  position: absolute;
  inset: -10% -4%;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, transparent 0 70%, rgba(61,70,82,.08) 70.4% 71.6%, transparent 72%),
    linear-gradient(90deg, transparent 0 78%, rgba(61,70,82,.07) 78.4% 79.4%, transparent 80%),
    linear-gradient(90deg, transparent 0 86%, rgba(61,70,82,.055) 86.4% 88%, transparent 88.6%),
    radial-gradient(circle at 82% 18%, rgba(255,255,255,.72), rgba(255,255,255,0) 42%),
    linear-gradient(115deg, rgba(122,31,46,.055), transparent 34%);
  filter: blur(10px);
  opacity: .68;
}
.homepage-reviews > *,
.reviews-client-section > *,
.homepage-results-preview > *,
.results-spotlight-shell > *,
.results-all-cases > * {
  position: relative;
  z-index: 1;
}
.homepage-reviews .review-flip-grid,
.review-flip-carousel,
.review-flip-carousel-track,
.review-flip-carousel-window,
.homepage-results-preview .result-preview-grid {
  overflow: visible !important;
}
.homepage-reviews .review-flip-card:not(.result-flip-card),
.review-flip-carousel .review-flip-card,
.homepage-results-preview .result-flip-card {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}
.homepage-reviews .review-flip-card:not(.result-flip-card) .review-flip-inner,
.review-flip-carousel .review-flip-inner,
.homepage-results-preview .result-flip-card .review-flip-inner {
  overflow: visible !important;
}
.homepage-reviews .review-flip-card:not(.result-flip-card) .review-flip-face,
.review-flip-carousel .review-flip-face,
.homepage-results-preview .result-flip-card .review-flip-face,
.results-slide,
.results-story-card,
.result-case-row {
  position: relative;
  overflow: visible !important;
  background:
    linear-gradient(150deg, rgba(255,255,255,.78), rgba(250,247,241,.52)),
    rgba(255,255,255,.5) !important;
  -webkit-backdrop-filter: blur(18px) saturate(118%);
  backdrop-filter: blur(18px) saturate(118%);
  border: 1px solid rgba(255,255,255,.68) !important;
  border-radius: 12px !important;
  color: #232629 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.92),
    inset 0 -1px 0 rgba(122,31,46,.08),
    0 24px 60px rgba(20,28,38,.14) !important;
}
.homepage-reviews .review-flip-card:not(.result-flip-card) .review-flip-back,
.review-flip-carousel .review-flip-back,
.homepage-results-preview .result-flip-card .review-flip-back {
  background:
    linear-gradient(150deg, rgba(255,255,255,.86), rgba(250,247,241,.62)),
    rgba(255,255,255,.58) !important;
}
.homepage-reviews .review-flip-face::before,
.homepage-results-preview .review-flip-face::before,
.review-flip-carousel .review-flip-face::before,
.results-slide::before,
.results-story-card::before,
.result-case-row::before {
  content: "";
  position: absolute;
  top: 1rem;
  left: 1rem;
  width: 2rem;
  height: 2rem;
  border-top: 1px solid rgba(122,31,46,.52);
  border-left: 1px solid rgba(122,31,46,.52);
  pointer-events: none;
  z-index: 3;
}
.homepage-reviews .review-flip-face::after,
.homepage-results-preview .review-flip-face::after,
.review-flip-carousel .review-flip-face::after,
.results-slide::after,
.results-story-card::after,
.result-case-row::after {
  content: "";
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  width: 2rem;
  height: 2rem;
  border-right: 1px solid rgba(122,31,46,.58);
  border-bottom: 1px solid rgba(122,31,46,.58);
  pointer-events: none;
  z-index: 3;
}
.homepage-reviews .review-flip-card:not(.result-flip-card):hover .review-flip-face,
.homepage-reviews .review-flip-card:not(.result-flip-card):focus-visible .review-flip-face,
.review-flip-carousel .review-flip-card:hover .review-flip-face,
.review-flip-carousel .review-flip-card:focus-visible .review-flip-face,
.homepage-results-preview .result-flip-card:hover .review-flip-face,
.homepage-results-preview .result-flip-card:focus-visible .review-flip-face,
.results-slide:hover,
.results-slide:focus-within,
.results-story-card:hover,
.results-story-card:focus-visible,
.result-case-row:hover,
.result-case-row:focus-within {
  background:
    linear-gradient(150deg, rgba(255,255,255,.9), rgba(250,247,241,.68)),
    rgba(255,255,255,.64) !important;
  border-color: rgba(255,255,255,.84) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.98),
    0 0 0 1px rgba(122,31,46,.12),
    0 0 34px rgba(122,31,46,.15),
    0 30px 72px rgba(20,28,38,.18) !important;
}
.homepage-reviews .review-flip-card:not(.result-flip-card):hover,
.homepage-reviews .review-flip-card:not(.result-flip-card):focus-visible,
.review-flip-carousel .review-flip-card:hover,
.review-flip-carousel .review-flip-card:focus-visible,
.homepage-results-preview .result-flip-card:hover,
.homepage-results-preview .result-flip-card:focus-visible {
  transform: none;
}
.homepage-reviews .review-flip-face :is(h3,h4,strong),
.review-flip-carousel .review-flip-face :is(h3,h4,strong),
.homepage-results-preview .review-flip-face :is(h3,h4,strong),
.results-slide-copy :is(h2,h3,strong),
.results-story-card strong,
.result-case-row :is(h3,h4,strong) {
  color: var(--color-ink) !important;
}
.homepage-reviews .review-flip-face :is(p,li,small),
.review-flip-carousel .review-flip-face :is(p,li,small),
.homepage-results-preview .review-flip-face :is(p,li,small),
.results-slide-copy :is(p,li),
.results-story-card small,
.result-case-row :is(p,li) {
  color: var(--color-muted) !important;
}
.homepage-reviews .review-flip-face :is(.eyebrow,.flip-affordance,.text-link),
.review-flip-carousel .review-flip-face :is(.eyebrow,.flip-affordance,.text-link),
.homepage-results-preview .review-flip-face :is(.eyebrow,.flip-affordance,.text-link),
.results-slide-copy .eyebrow,
.result-case-row-featured h4,
.results-story-card.is-active strong {
  color: var(--color-oxblood) !important;
}
.results-spotlight-intro :is(h1,p),
.results-all-cases .section-heading :is(h2,p),
.reviews-client-section .section-heading :is(h2,p),
.reviews-client-section .section-lead,
.homepage-reviews .section-heading :is(h2,p),
.homepage-results-preview .section-heading h2 {
  color: var(--color-ink) !important;
}
.review-stars,
.review-stars-visible {
  color: var(--color-oxblood) !important;
}
.homepage-reviews .review-card-burst,
.review-flip-carousel .review-card-burst {
  top: clamp(8.75rem, 13vw, 10.9rem);
  left: clamp(4.1rem, 7vw, 6.5rem);
}
.homepage-reviews .button-secondary,
.homepage-results-preview .button-secondary,
.reviews-client-section .button-secondary,
.results-slide-copy .button-secondary {
  background: rgba(255,255,255,.6) !important;
  border-color: rgba(122,31,46,.58) !important;
  color: var(--color-ink) !important;
  -webkit-backdrop-filter: blur(12px) saturate(112%);
  backdrop-filter: blur(12px) saturate(112%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.88), 0 12px 34px rgba(20,28,38,.08) !important;
}
.homepage-reviews .button-secondary:hover,
.homepage-reviews .button-secondary:focus-visible,
.homepage-results-preview .button-secondary:hover,
.homepage-results-preview .button-secondary:focus-visible,
.reviews-client-section .button-secondary:hover,
.reviews-client-section .button-secondary:focus-visible,
.results-slide-copy .button-secondary:hover,
.results-slide-copy .button-secondary:focus-visible {
  background: rgba(255,255,255,.82) !important;
  border-color: var(--color-oxblood) !important;
  color: var(--color-oxblood) !important;
  transform: translateY(-2px);
}
.results-arrow {
  background: var(--color-oxblood) !important;
  border-color: var(--color-oxblood) !important;
  color: #FFFFFF !important;
  box-shadow: 0 16px 34px rgba(122,31,46,.24) !important;
}
.results-arrow:hover,
.results-arrow:focus-visible {
  background: #5F1724 !important;
  border-color: #5F1724 !important;
}
.results-slide-art {
  background: #121922 !important;
  opacity: 1 !important;
  color: #F7F3EA !important;
  overflow: hidden !important;
}
.results-slide-art img {
  opacity: .92;
}
.results-slide-art-badge {
  color: #F7F3EA !important;
}
.results-story-thumb {
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}
@media (prefers-reduced-motion: reduce) {
  .homepage-reviews .review-flip-card:not(.result-flip-card),
  .review-flip-carousel .review-flip-card,
  .homepage-results-preview .result-flip-card,
  .results-slide,
  .results-story-card,
  .result-case-row {
    transition: none !important;
    transform: none !important;
  }
}
.homepage-reviews .review-flip-card:not(.result-flip-card) .review-flip-inner,
.review-flip-carousel .review-flip-card .review-flip-inner {
  transform-style: preserve-3d;
  transition: transform 600ms ease;
}
.homepage-reviews .review-flip-card:not(.result-flip-card).is-flipped .review-flip-inner,
.homepage-reviews .review-flip-card:not(.result-flip-card)[aria-pressed="true"] .review-flip-inner,
.review-flip-carousel .review-flip-card.is-flipped .review-flip-inner,
.review-flip-carousel .review-flip-card[aria-pressed="true"] .review-flip-inner {
  transform: rotateY(180deg) !important;
}
@media (hover: hover) and (pointer: fine) {
  .homepage-reviews .review-flip-card:not(.result-flip-card):hover .review-flip-inner,
  .review-flip-carousel .review-flip-card:hover .review-flip-inner {
    transform: rotateY(180deg) !important;
  }
}
.homepage-reviews .review-stars .star-pop,
.review-flip-carousel .review-stars .star-pop {
  animation: none !important;
  opacity: 0 !important;
}
.homepage-reviews .review-flip-back .review-card-burst,
.review-flip-carousel .review-flip-back .review-card-burst {
  top: clamp(6.2rem, 11vw, 8.4rem);
  left: 50%;
  z-index: 4;
  transform: translateZ(90px);
}
.homepage-reviews .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst .star-pop-1,
.review-flip-carousel .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst .star-pop-1 {
  animation: starFirework1 820ms ease-out 220ms forwards;
}
.homepage-reviews .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst .star-pop-2,
.review-flip-carousel .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst .star-pop-2 {
  animation: starFirework2 840ms ease-out 260ms forwards;
}
.homepage-reviews .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst .star-pop-3,
.review-flip-carousel .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst .star-pop-3 {
  animation: starFirework3 860ms ease-out 300ms forwards;
}
.homepage-reviews .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst .star-pop-4,
.review-flip-carousel .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst .star-pop-4 {
  animation: starFirework4 790ms ease-out 330ms forwards;
}
.homepage-reviews .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst .star-pop-5,
.review-flip-carousel .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst .star-pop-5 {
  animation: starFirework5 790ms ease-out 360ms forwards;
}
.homepage-reviews .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst:before,
.review-flip-carousel .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst:before {
  animation: starSparkleBloom 760ms ease-out 280ms forwards;
}
.homepage-reviews .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst:after,
.review-flip-carousel .review-flip-card:is(:hover, .is-star-burst) .review-flip-back .review-card-burst:after {
  animation: starSparkleBloom 820ms ease-out 360ms forwards;
}
@media (prefers-reduced-motion: reduce) {
  .homepage-reviews .review-flip-card:not(.result-flip-card) .review-flip-inner,
  .review-flip-carousel .review-flip-card .review-flip-inner {
    transition: none !important;
    transform: none !important;
  }
}
.homepage-practice-links {
  padding-top: clamp(3.8rem, 6vw, 6rem);
}
.homepage-practice-links .section-heading::before,
.homepage-practice-links .section-heading::after {
  display: none;
}
.homepage-practice-links .section-heading {
  margin-bottom: clamp(1.7rem, 3vw, 2.6rem);
}
.homepage-practice-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(.75rem, 1.4vw, 1rem);
}
.homepage-practice-card {
  position: relative;
  min-height: clamp(9.5rem, 14vw, 13.25rem);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  padding: clamp(1.35rem, 2.2vw, 2rem);
  background: var(--color-paper);
  border: .5px solid var(--color-hairline);
  border-top: 2px solid var(--color-gold);
  border-radius: 0 0 8px 8px;
  color: var(--color-ink);
  text-decoration: none;
  box-shadow: 0 1px 3px rgba(35,38,41,0.04);
  overflow: hidden;
  isolation: isolate;
  transition: border-color .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease, filter .25s ease;
}
.homepage-practice-card:before {
  content: "";
  position: absolute;
  top: clamp(1.25rem, 1.9vw, 1.75rem);
  left: clamp(1.35rem, 2.2vw, 2rem);
  width: 2.55rem;
  height: 2px;
  background: var(--color-oxblood);
  box-shadow: none;
  transition: width .25s ease, background-color .25s ease, box-shadow .25s ease;
  z-index: 3;
}
.homepage-practice-card:after {
  content: none;
  display: none;
}
.homepage-practice-card strong {
  position: relative;
  z-index: 2;
  align-self: stretch;
  max-width: 18rem;
  margin-top: clamp(2rem, 3.4vw, 3.1rem);
  color: inherit;
  font-family: var(--serif-display);
  font-size: clamp(1.75rem, 2.35vw, 2.45rem);
  font-weight: 400;
  line-height: .98;
  text-shadow: none;
}
.homepage-practice-card:hover,
.homepage-practice-card:focus-visible {
  border-color: var(--color-hairline);
  border-top-color: var(--color-gold);
  color: var(--color-ink);
  transform: translateY(-4px);
  box-shadow: 0 1px 3px rgba(35,38,41,0.04);
  filter: none;
  outline: none;
}
.homepage-practice-card:hover:before,
.homepage-practice-card:focus-visible:before {
  width: 3.7rem;
  background: var(--color-oxblood);
  box-shadow: none;
}
.homepage-practice-card:hover:after,
.homepage-practice-card:focus-visible:after {
  opacity: 0;
  transform: none;
  filter: none;
}
.homepage-practice-links .button-secondary {
  background: var(--color-oxblood);
  border-color: var(--color-oxblood);
  color: #FFFFFF;
  box-shadow: none;
}
.homepage-practice-links .button-secondary:hover,
.homepage-practice-links .button-secondary:focus-visible {
  background: var(--color-oxblood);
  border-color: var(--color-oxblood);
  color: #FFFFFF;
  transform: translateY(-2px);
  box-shadow: none;
}
@media (prefers-reduced-motion: reduce) {
  .homepage-practice-card,
  .homepage-practice-card:before,
  .homepage-practice-card:after,
  .homepage-practice-links .button-secondary {
    transition: none;
  }
  .homepage-practice-card:hover,
  .homepage-practice-card:focus-visible,
  .homepage-practice-links .button-secondary:hover,
  .homepage-practice-links .button-secondary:focus-visible {
    transform: none;
  }
}
.case-review-panel {
  grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
  gap: clamp(1rem, 2vw, 1.4rem);
  width: 100%;
  max-width: 100%;
  padding: clamp(.85rem, 1.5vw, 1.1rem);
  box-sizing: border-box;
  background: color-mix(in srgb, var(--color-panel) 88%, var(--color-white) 12%);
  border: 1px solid var(--color-hairline);
  box-shadow: 0 18px 48px color-mix(in srgb, var(--color-ink) 6%, transparent);
}
.case-review-copy {
  background: var(--color-panel);
  border: 1px solid var(--color-hairline);
  padding: clamp(1.5rem, 3vw, 3rem);
}
.case-review-copy h2 {
  color: var(--color-ink);
}
.case-review-copy p {
  color: var(--color-graphite);
}
.payment-options-button {
  width: fit-content;
  margin: .25rem 0 .85rem;
}
.case-review-list-intro {
  margin: clamp(1.2rem, 2vw, 1.65rem) 0 0;
  color: var(--color-ink) !important;
  font-weight: 700;
}
.case-review-signals li {
  color: var(--color-graphite);
  border-top: 1px solid var(--color-hairline);
}
.case-review-signals li:before {
  background: var(--color-oxblood);
}
.case-review-form,
.lux-form.case-review-form {
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  box-shadow: none;
}
.lux-form label,
.case-review-form label {
  color: var(--color-graphite) !important;
  font-weight: 700;
}
.lux-form input,
.lux-form select,
.lux-form textarea,
.case-review-form input,
.case-review-form select,
.case-review-form textarea {
  width: 100%;
  box-sizing: border-box;
  background: color-mix(in srgb, var(--color-panel) 70%, var(--color-white) 30%);
  border: 1px solid var(--color-hairline);
  color: var(--color-ink);
}
.lux-form input::placeholder,
.lux-form textarea::placeholder,
.case-review-form input::placeholder,
.case-review-form textarea::placeholder {
  color: #6A7178;
  opacity: 1;
}
.lux-form input:focus,
.lux-form select:focus,
.lux-form textarea:focus,
.case-review-form input:focus,
.case-review-form select:focus,
.case-review-form textarea:focus {
  border-color: var(--color-oxblood);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-oxblood) 16%, transparent);
  outline: 0;
}
.case-review-form .checkbox,
.case-review-form .form-status,
.case-review-form .disclaimer-text {
  color: var(--color-muted) !important;
}
.case-review-form .button-primary {
  background: var(--color-oxblood);
  border-color: var(--color-oxblood);
  color: var(--color-white);
}
.case-review-form .button-primary:hover,
.case-review-form .button-primary:focus-visible {
  background: #5F1724;
  border-color: #5F1724;
  color: var(--color-white);
}
.site-footer {
  padding: clamp(2.5rem, 4.5vw, 4rem) 0 1.25rem;
  background: #232629;
  color: #F7F7F4;
  border-top: 1px solid rgba(255,255,255,.12);
}
.footer-shell:not(.footer-legal) {
  display: grid;
  grid-template-columns: minmax(240px, 1.15fr) minmax(160px, .78fr) minmax(230px, 1fr) minmax(180px, .82fr);
  gap: clamp(1.4rem, 3vw, 3.25rem);
  align-items: start;
}
.footer-logo {
  margin-bottom: 1rem;
  width: 168px;
  min-height: 132px;
}
.footer-logo img {
  width: 168px;
  opacity: 0;
  filter: none;
}
.footer-logo::before {
  background:
    linear-gradient(90deg, #F7F7F4 0%, #F7F7F4 48%, transparent 48%) 0 0 / 100% 58% no-repeat,
    linear-gradient(180deg, #F7F7F4 0%, #F7F7F4 54%, #B98590 54%, #B98590 86%, #C8CDD2 86%, #C8CDD2 100%);
  opacity: 1;
}
.footer-logo:hover img,
.footer-logo:focus-visible img {
  opacity: 0;
}
.footer-shell h2 {
  margin: 0 0 1rem;
  color: #F7F7F4;
  font-size: clamp(1.35rem, 1.7vw, 1.85rem);
}
.footer-shell p {
  max-width: 420px;
  color: #C8CDD2;
  line-height: 1.65;
}
.footer-column {
  gap: .68rem;
}
.footer-links {
  display: grid;
  gap: .62rem;
}
.footer-column a,
.footer-column span,
.footer-contact-line span {
  color: #FFFFFF;
  letter-spacing: .035em;
  text-transform: none;
  font-size: .92rem;
  line-height: 1.35;
}
.footer-column a:hover,
.footer-column a:focus-visible {
  color: #B98590;
}
.footer-contact-line {
  justify-self: start;
  color: #FFFFFF;
}
.footer-icon {
  width: 1.05rem;
  height: 1.05rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
}
.footer-underlined {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 44px;
  margin-top: .35rem;
  padding: .72rem 1rem;
  background: var(--color-oxblood);
  border: 1px solid var(--color-oxblood);
  color: #FFFFFF !important;
  font-weight: 750;
}
.footer-underlined:hover,
.footer-underlined:focus-visible {
  background: #5F1724;
  border-color: #5F1724;
}
.footer-underlined::after {
  content: "\2192";
  margin-left: .55rem;
  color: currentColor;
}
.footer-socials {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-top: 1rem;
}
.footer-socials a {
  width: 2.45rem;
  height: 2.45rem;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.16);
  color: #C8CDD2;
  background: rgba(255,255,255,.025);
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.footer-socials a:hover,
.footer-socials a:focus-visible {
  border-color: #7A1F2E;
  background: rgba(122,31,46,.18);
  color: #FFFFFF;
  box-shadow: inset 0 0 0 1px rgba(185,133,144,.22);
}
.footer-legal {
  margin-top: clamp(2rem, 3.5vw, 3rem);
  padding-top: 1.1rem;
  border-top: 1px solid rgba(255,255,255,.12);
}
.footer-legal div {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem 1rem;
  margin-bottom: .85rem;
}
.footer-legal a,
.footer-legal span {
  color: #FFFFFF;
  font-family: var(--sans);
  font-size: .78rem;
  font-weight: 650;
  letter-spacing: .035em;
}
.footer-legal p {
  max-width: 980px;
  color: #C8CDD2;
  font-size: .82rem;
  line-height: 1.65;
}
@media (hover: hover) and (pointer: fine) {
}
@media (max-width: 860px) {
  .nav-shell {
    width: min(100% - 28px, 1480px);
    min-height: 86px;
    grid-template-columns: auto 1fr auto auto;
    gap: .65rem;
  }
  .brand {
    min-height: 72px;
  }
  .brand img {
    width: 132px;
  }
  .nav-actions {
    justify-self: end;
    gap: .45rem;
  }
  .nav-actions .nav-call,
  .nav-actions .nav-text {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: .62rem .72rem !important;
    font-size: .62rem;
    letter-spacing: .08em;
  }
  .nav-actions .nav-call {
    font-size: 0;
  }
  .nav-actions .nav-call::after {
    content: "Call";
    font-size: .62rem;
  }
  .nav-toggle { border-color: var(--color-hairline); }
  .nav-toggle span:not(.sr-only) { background: var(--color-ink); }
  .nav-menu {
    background: color-mix(in srgb, var(--color-white) 98%, transparent);
    border-bottom-color: var(--color-hairline);
  }
  .hero-editorial-grid {
    min-height: auto;
    grid-template-columns: 1fr;
    gap: 1.25rem;
    padding: clamp(2rem, 8vw, 3.35rem) 0 clamp(1rem, 5vw, 1.5rem);
  }
  .hero-editorial-copy h1,
  .hero-video-copy h1 {
    font-size: clamp(2.85rem, 11.5vw, 4.7rem);
  }
  .hero-editorial-copy h1 span,
  .hero-video-copy h1 span {
    font-size: .55em;
  }
  .hero-cta-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: .72rem;
  }
  .hero-cta-row .button {
    width: 100%;
    min-height: 56px;
  }
  .hero-editorial-media {
    aspect-ratio: 16 / 10;
    min-height: 240px;
  }
  .hero-proof-strip {
    width: min(100% - 28px, 1240px);
    margin-bottom: 2.6rem;
  }
  .hero-practice-line {
    font-size: .72rem;
    letter-spacing: .045em;
    text-align: left;
  }
  .hero-proof-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .7rem;
  }
  .hero-proof-grid .hero-proof-item {
    min-height: auto;
    padding: 1.15rem 1.2rem;
    border-right: 0;
    border: 1px solid var(--color-hairline);
  }
  .mobile-action-bar {
    background: var(--color-white);
    border-top-color: var(--color-hairline);
  }
  .mobile-action-bar a {
    color: var(--color-ink);
    border-right-color: var(--color-hairline);
  }
  .case-review-panel {
    grid-template-columns: 1fr;
    padding: .8rem;
  }
  .case-review-copy,
  .case-review-form {
    padding: 1.2rem;
  }
  .case-review-form {
    grid-template-columns: 1fr;
  }
  .footer-shell:not(.footer-legal) {
    grid-template-columns: 1fr;
    gap: 1.55rem;
  }
  .footer-contact {
    order: 1;
  }
  .footer-client {
    order: 2;
  }
  .footer-left {
    order: 3;
  }
  .footer-practice {
    order: 4;
  }
  .footer-contact-line,
  .footer-underlined {
    min-height: 48px;
  }
  .footer-logo img {
    width: 150px;
  }
}
@media (max-width: 620px) {
  .hero-proof-grid {
    grid-template-columns: 1fr;
  }
}

/* Defense Intelligence System: Pearl & Graphite strategy map */
.tech-command-section {
  background: var(--color-sand);
  color: var(--color-ink);
}
.tech-command-section::after {
  display: none;
}
.tech-command-section .split-heading {
  align-items: center;
}
.tech-command-section .eyebrow {
  color: var(--color-oxblood);
}
.tech-command-section h2,
.tech-command-section h3 {
  color: var(--color-ink);
}
.tech-command-section p {
  color: var(--color-graphite);
}
.tech-command-section .ai-command-showcase {
  margin: 0 0 clamp(1.5rem, 3vw, 2.8rem);
}
.tech-command-section .ai-system-visual {
  min-height: auto;
  padding: clamp(1.35rem, 2.4vw, 2rem);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--color-white) 78%, transparent), transparent 68%),
    var(--color-panel);
  border: 1px solid var(--color-hairline);
  color: var(--color-ink);
  box-shadow: 0 22px 58px color-mix(in srgb, var(--color-ink) 8%, transparent);
}
.tech-command-section .ai-system-topline {
  padding: 0 0 clamp(1rem, 2vw, 1.35rem);
  border-bottom: 1px solid var(--color-hairline);
}
.tech-command-section .ai-system-topline span,
.tech-command-section .ai-system-topline strong,
.tech-command-section .ai-system-footer span {
  color: var(--color-oxblood);
  font-size: .68rem;
  letter-spacing: .28em;
}
.tech-command-section .ai-system-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
  margin-top: clamp(1rem, 2vw, 1.35rem);
  background: transparent;
  border: 0;
}
.tech-command-section .ai-system-grid::before,
.tech-command-section .ai-system-grid::after {
  content: "";
  position: absolute;
  z-index: 0;
  background: color-mix(in srgb, var(--color-graphite) 34%, var(--color-hairline) 66%);
  pointer-events: none;
}
.tech-command-section .ai-system-grid::before {
  left: 50%;
  top: .65rem;
  bottom: .65rem;
  width: 1px;
}
.tech-command-section .ai-system-grid::after {
  left: .65rem;
  right: .65rem;
  top: 50%;
  height: 1px;
}
.tech-command-section .ai-system-node {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-areas:
    "icon num"
    "icon title"
    "icon small";
  column-gap: clamp(1rem, 2vw, 1.5rem);
  align-items: center;
  min-height: 132px;
  padding: clamp(1.1rem, 2.2vw, 1.55rem);
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
}
.tech-command-section .ai-system-node.is-active {
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-oxblood) 6%, transparent), transparent 72%),
    var(--color-white);
  border-color: color-mix(in srgb, var(--color-oxblood) 42%, var(--color-hairline) 58%);
}
.tech-command-section .ai-system-node span {
  grid-area: num;
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: .16em;
}
.tech-command-section .ai-system-node strong {
  grid-area: title;
  margin: .35rem 0 0;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(1.55rem, 2vw, 2rem);
  font-weight: 500;
  line-height: 1;
}
.tech-command-section .ai-system-node small {
  grid-area: small;
  display: block;
  margin-top: .45rem;
  color: var(--color-muted);
  font-family: var(--sans);
  font-size: .86rem;
  line-height: 1.35;
}
.tech-command-section .ai-system-icon {
  grid-area: icon;
  display: grid;
  place-items: center;
  width: clamp(3.15rem, 5vw, 4.8rem);
  height: clamp(3.15rem, 5vw, 4.8rem);
  color: var(--color-graphite);
  border: 1px solid color-mix(in srgb, var(--color-graphite) 36%, var(--color-hairline) 64%);
  border-radius: 999px;
}
.tech-command-section .ai-system-node.is-active .ai-system-icon {
  color: var(--color-oxblood);
  border-color: color-mix(in srgb, var(--color-oxblood) 62%, var(--color-hairline) 38%);
}
.tech-command-section .ai-system-icon svg {
  width: 48%;
  height: 48%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.tech-command-section .ai-evidence-stream {
  margin-top: clamp(.75rem, 1.5vw, 1rem);
  padding: 0;
  background: var(--color-white);
  border: 0;
}
.tech-command-section .ai-evidence-stream span {
  width: 100%;
  height: 2px;
  background: var(--color-hairline);
}
.tech-command-section .ai-evidence-stream span:first-of-type {
  background: var(--color-oxblood);
}
.tech-command-section .ai-evidence-stream span:nth-of-type(n+3) {
  display: none;
}
.tech-command-section .ai-system-footer {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem clamp(1rem, 2.4vw, 2rem);
  align-items: center;
  margin-top: 0;
  padding: clamp(.9rem, 1.6vw, 1.15rem);
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  border-top: 0;
}
.tech-command-section .ai-system-footer span {
  position: relative;
  color: var(--color-graphite);
  font-size: .72rem;
  letter-spacing: .24em;
  line-height: 1.5;
}
.tech-command-section .ai-system-footer span:first-child::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -.45rem;
  height: 2px;
  background: var(--color-oxblood);
}
.tech-command-section .tech-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  border-top: 0;
  border-left: 0;
}
.tech-command-section .tech-grid article {
  min-height: auto;
  padding: clamp(1.25rem, 2.4vw, 1.9rem);
  background: transparent;
  border-right: 1px solid var(--color-hairline);
  border-bottom: 0;
}
.tech-command-section .tech-grid article:last-child {
  border-right: 0;
}
.tech-command-section .tech-grid span {
  display: inline-flex;
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .16em;
}
.tech-command-section .tech-grid span::after {
  content: "";
  display: block;
  width: 1.25rem;
  height: 1px;
  margin: 1.25rem 0 0 -1.25rem;
  background: var(--color-oxblood);
}
.tech-command-section .tech-grid h3 {
  margin-top: .95rem;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(1.45rem, 2.2vw, 2.15rem);
  font-weight: 500;
}
.tech-command-section .tech-grid p {
  margin-top: .9rem;
  color: var(--color-graphite);
  line-height: 1.75;
}
.tech-command-section .ai-pipeline-panel {
  display: grid;
  place-items: center;
  width: 100%;
  max-width: 1220px;
  margin: clamp(1.5rem, 3vw, 2.5rem) auto 0;
  padding: clamp(1.25rem, 3.5vw, 3.25rem);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--color-white) 82%, transparent), transparent 72%),
    var(--color-panel);
  border: 1px solid var(--color-hairline);
  box-shadow: 0 26px 70px color-mix(in srgb, var(--color-ink) 10%, transparent);
}
.tech-command-section .ai-pipeline-panel svg {
  display: block;
  width: min(1040px, 100%);
  height: auto;
}
@media (max-width: 900px) {
  .tech-command-section .ai-system-grid,
  .tech-command-section .tech-grid {
    grid-template-columns: 1fr;
  }
  .tech-command-section .ai-system-grid::before,
  .tech-command-section .ai-system-grid::after {
    display: none;
  }
  .tech-command-section .ai-evidence-stream {
    grid-template-columns: 1fr;
  }
  .tech-command-section .ai-evidence-stream span {
    grid-column: auto;
  }
  .tech-command-section .tech-grid article {
    border-right: 0;
    border-bottom: 1px solid var(--color-hairline);
  }
  .tech-command-section .tech-grid article:last-child {
    border-bottom: 0;
  }
}
@media (max-width: 560px) {
  .tech-command-section .ai-system-node {
    grid-template-columns: 1fr;
    grid-template-areas: "icon" "num" "title" "small";
    justify-items: start;
  }
}
.ai-use-support {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .9rem clamp(1rem, 2vw, 1.8rem);
  margin-top: clamp(1rem, 2vw, 1.5rem);
  margin-bottom: clamp(2.5rem, 5vw, 4rem);
  padding: clamp(1rem, 1.8vw, 1.25rem);
  background: var(--color-white);
  border: 1px solid var(--color-hairline);
  box-shadow: 0 12px 34px color-mix(in srgb, var(--color-ink) 5%, transparent);
}
.ai-use-support p {
  margin: 0;
  color: var(--color-graphite);
  font-family: var(--serif-display);
  font-size: clamp(1.25rem, 2vw, 1.7rem);
  line-height: 1.1;
}
.ai-use-support div {
  display: flex;
  flex: 1 1 560px;
  flex-wrap: wrap;
  gap: .55rem;
}
.ai-use-support span {
  display: inline-flex;
  align-items: center;
  min-height: 2.2rem;
  padding: .5rem .72rem;
  color: var(--color-graphite);
  font-family: var(--sans);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: var(--color-panel);
  border: 1px solid var(--color-hairline);
}
.ai-use-support span:first-child {
  color: var(--color-oxblood);
  border-color: color-mix(in srgb, var(--color-oxblood) 34%, var(--color-hairline) 66%);
}
.ai-related-reading {
  padding-top: clamp(3.5rem, 6vw, 5.5rem);
}
.ai-related-reading .section-heading {
  margin-bottom: clamp(1.4rem, 3vw, 2.2rem);
}
.ai-related-reading h2 {
  font-size: clamp(2.4rem, 4.2vw, 4.7rem);
}
.ai-related-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.ai-related-grid .premium-card {
  min-height: 220px;
  padding: clamp(1.15rem, 2vw, 1.55rem);
}
.ai-related-grid .premium-card h3 {
  font-size: clamp(1.35rem, 1.7vw, 1.75rem);
}
.ai-related-grid .premium-card p {
  font-size: .95rem;
  line-height: 1.6;
}
.ai-related-all {
  display: inline-flex;
  margin-top: 1.25rem;
}
@media (max-width: 900px) {
  .ai-related-grid {
    grid-template-columns: 1fr;
  }
}

/* Pearl & Graphite consultation panels */
.final-cta {
  padding: clamp(4.5rem, 7vw, 7.25rem) 0;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--color-white) 58%, transparent), transparent 70%),
    var(--color-sand);
  border-top: 1px solid var(--color-hairline);
  border-bottom: 1px solid var(--color-hairline);
}
.cta-panel,
.final-dark-cta-panel {
  position: relative;
  overflow: hidden;
  padding: clamp(2rem, 5.6vw, 5.1rem) clamp(1.35rem, 5.4vw, 4.4rem);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--color-white) 80%, transparent), transparent 72%),
    var(--color-panel);
  border: 1px solid var(--color-hairline);
  color: var(--color-ink);
  box-shadow:
    0 28px 70px color-mix(in srgb, var(--color-ink) 9%, transparent),
    0 1px 0 color-mix(in srgb, var(--color-white) 80%, transparent) inset;
}
.cta-panel::before,
.final-dark-cta-panel::before {
  content: "";
  position: absolute;
  inset: clamp(.7rem, 1.1vw, 1rem);
  border: 1px solid color-mix(in srgb, var(--color-hairline) 82%, var(--color-white) 18%);
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--color-white) 70%, transparent),
    0 14px 36px color-mix(in srgb, var(--color-ink) 4%, transparent);
  pointer-events: none;
}
.cta-panel::after,
.final-dark-cta-panel::after {
  content: "";
  position: absolute;
  right: clamp(1rem, 2.4vw, 2rem);
  top: 31%;
  bottom: 31%;
  width: 1px;
  background: var(--color-oxblood);
  opacity: .9;
  pointer-events: none;
}
.cta-panel > *,
.final-dark-cta-panel > * {
  position: relative;
  z-index: 1;
}
.cta-panel .eyebrow,
.final-dark-cta-panel .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  color: var(--color-oxblood);
}
.cta-panel .eyebrow::before,
.cta-panel .eyebrow::after,
.final-dark-cta-panel .eyebrow::before,
.final-dark-cta-panel .eyebrow::after {
  content: "";
  width: clamp(2.2rem, 5vw, 4rem);
  height: 1px;
  background: color-mix(in srgb, var(--color-graphite) 44%, transparent);
}
.cta-panel .eyebrow::before,
.final-dark-cta-panel .eyebrow::before {
  width: clamp(1.4rem, 3vw, 2.8rem);
}
.cta-panel .eyebrow {
  margin-bottom: clamp(1.7rem, 3vw, 2.7rem);
}
.cta-panel h2,
.final-dark-cta-panel h2 {
  max-width: 1080px;
  color: var(--color-ink) !important;
  font-family: var(--serif-display);
  font-size: clamp(3rem, 6.4vw, 7.2rem);
  font-weight: 400;
  line-height: .92;
}
.cta-panel h2::after,
.final-dark-cta-panel h2::after {
  content: "";
  display: block;
  width: clamp(3.4rem, 8vw, 6.5rem);
  height: 2px;
  margin: clamp(1.35rem, 2.6vw, 2.2rem) 0 0;
  background: var(--color-oxblood);
}
.cta-panel p,
.final-dark-cta-panel p {
  max-width: 920px;
  margin-top: clamp(1.2rem, 2vw, 1.6rem);
  color: var(--color-graphite) !important;
  font-size: clamp(1.02rem, 1.25vw, 1.2rem);
  line-height: 1.7;
}
.cta-panel .button-row,
.final-dark-cta-panel .button-row {
  display: inline-flex;
  gap: 0;
  margin-top: clamp(1.6rem, 3vw, 2.4rem);
  padding: .6rem;
  background: color-mix(in srgb, var(--color-white) 64%, transparent);
  border: 1px solid var(--color-hairline);
}
.cta-panel .button,
.final-dark-cta-panel .button {
  min-height: 3.85rem;
  padding: .95rem clamp(1.25rem, 2.6vw, 2.2rem);
  border-radius: 0;
  font-size: .75rem;
  letter-spacing: .18em;
}
.cta-panel .button::after,
.final-dark-cta-panel .button::after {
  content: "->";
  margin-left: clamp(1rem, 2vw, 1.6rem);
  color: currentColor;
}
.cta-panel .button-primary,
.final-dark-cta-panel .button-primary {
  background: var(--color-oxblood) !important;
  border-color: var(--color-oxblood) !important;
  color: var(--color-white) !important;
}
.cta-panel .button-primary:hover,
.cta-panel .button-primary:focus-visible,
.final-dark-cta-panel .button-primary:hover,
.final-dark-cta-panel .button-primary:focus-visible {
  background: #5F1724 !important;
  border-color: #5F1724 !important;
  color: var(--color-white) !important;
}
.cta-panel .button-secondary,
.cta-panel .button-ghost,
.final-dark-cta-panel .button-secondary,
.final-dark-cta-panel .button-ghost {
  background: var(--color-white) !important;
  border-color: var(--color-hairline) !important;
  color: var(--color-ink) !important;
}
.cta-panel .button-secondary:hover,
.cta-panel .button-secondary:focus-visible,
.cta-panel .button-ghost:hover,
.cta-panel .button-ghost:focus-visible,
.final-dark-cta-panel .button-secondary:hover,
.final-dark-cta-panel .button-secondary:focus-visible,
.final-dark-cta-panel .button-ghost:hover,
.final-dark-cta-panel .button-ghost:focus-visible {
  background: color-mix(in srgb, var(--color-white) 72%, var(--color-sand) 28%) !important;
  border-color: var(--color-graphite) !important;
  color: var(--color-ink) !important;
}
@media (max-width: 780px) {
  .cta-panel,
  .final-dark-cta-panel {
    padding: clamp(1.7rem, 8vw, 2.5rem) clamp(1rem, 5vw, 1.35rem);
  }
  .cta-panel::after,
  .final-dark-cta-panel::after {
    display: none;
  }
  .cta-panel .button-row,
  .final-dark-cta-panel .button-row {
    display: grid;
    width: 100%;
  }
  .cta-panel .button,
  .final-dark-cta-panel .button {
    width: 100%;
    justify-content: space-between;
  }
}

/* Compact standard consultation CTA override. */
.final-cta { padding: clamp(2rem, 4vw, 3rem) 0; }
.cta-panel {
  padding: clamp(1.4rem, 2.6vw, 1.9rem) clamp(1.4rem, 3vw, 2.2rem);
  border-radius: 12px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 1.6rem;
}
.cta-panel::after { display: none; }
.cta-panel .eyebrow { margin: 0; width: 100%; }
.cta-panel h2 {
  margin: 0;
  max-width: none;
  font-size: clamp(1.3rem, 2.2vw, 1.7rem);
  line-height: 1.15;
  flex: 1 1 auto;
}
.cta-panel h2::after { display: none; }
.cta-panel > p:not(.eyebrow) { display: none; }
.cta-panel .button-row { margin: 0; flex: 0 0 auto; gap: .6rem; padding: .35rem; }
.cta-panel .button-row .button { min-height: 2.9rem; padding: .75rem 1rem; font-size: .9rem; }
.cta-panel--editorial {
  background: transparent;
  color: inherit;
  border: 1px solid var(--color-hairline);
  border-radius: 0;
}
.cta-panel--editorial h2 { color: var(--color-ink); }
@media (max-width: 640px) { .cta-panel { flex-direction: column; align-items: stretch; } .cta-panel .button-row { flex-wrap: wrap; } }
/* Modern Defense flip cards */
.modern-defense-hero {
  position: relative;
  min-height: clamp(250px, 31svh, 350px);
  display: grid;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
  background:
    linear-gradient(135deg, #101418 0%, #232629 48%, #303842 100%);
  color: var(--color-ivory);
}
.modern-defense-hero__video {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 64% center;
  filter: grayscale(.18) saturate(.72) contrast(1.08) brightness(.72);
}
.modern-defense-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(16,20,24,.96) 0%, rgba(16,20,24,.84) 34%, rgba(16,20,24,.50) 62%, rgba(16,20,24,.30) 100%),
    linear-gradient(0deg, rgba(16,20,24,.72) 0%, rgba(16,20,24,.18) 56%, rgba(16,20,24,.50) 100%);
}
.modern-defense-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  height: clamp(90px, 12vw, 120px);
  background: linear-gradient(to bottom, transparent 0%, var(--color-cream) 100%);
  pointer-events: none;
}
.modern-defense-hero__inner {
  position: relative;
  z-index: 3;
  width: min(1240px, calc(100% - 48px));
  margin: 0 auto;
  padding: clamp(2.2rem, 4vw, 3.7rem) 0;
}
.modern-defense-hero__copy {
  max-width: 760px;
  animation: modernDefenseHeroFade 700ms ease both;
}
.modern-defense-hero .eyebrow {
  color: #C8A4AB;
  text-shadow: 0 2px 18px rgba(16,20,24,.72);
}
.modern-defense-hero h1 {
  max-width: 12ch;
  margin: .55rem 0 .8rem;
  color: var(--color-ivory);
  font-family: var(--serif-display);
  font-size: clamp(2.35rem, 4.7vw, 4.35rem);
  font-weight: 400;
  line-height: .95;
  text-shadow: 0 8px 36px rgba(16,20,24,.58);
}
.modern-defense-hero__copy > p:not(.eyebrow) {
  max-width: 680px;
  margin: 0 0 1.25rem;
  color: rgba(247,243,234,.88);
  font-size: clamp(1rem, 1.25vw, 1.16rem);
  line-height: 1.58;
  text-shadow: 0 2px 18px rgba(16,20,24,.72);
}
.modern-defense-hero__actions {
  margin: 0;
}
.modern-defense-hero__actions .button-secondary {
  color: var(--color-ivory);
  border-color: rgba(247,243,234,.64);
  background: rgba(255,255,255,.08);
}
.modern-defense-hero__actions .button-secondary:hover,
.modern-defense-hero__actions .button-secondary:focus-visible {
  color: #FFFFFF;
  border-color: #C8A4AB;
  background: rgba(122,31,46,.20);
}
@keyframes modernDefenseHeroFade {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 760px) {
  .modern-defense-hero {
    min-height: clamp(330px, 52svh, 430px);
  }
  .modern-defense-hero__video {
    object-position: 58% center;
  }
  .modern-defense-hero__overlay {
    background:
      linear-gradient(90deg, rgba(16,20,24,.94), rgba(16,20,24,.70)),
      linear-gradient(0deg, rgba(16,20,24,.78), rgba(16,20,24,.18) 62%, rgba(16,20,24,.52));
  }
  .modern-defense-hero__inner {
    width: min(100% - 32px, 1240px);
    padding: 2.8rem 0 3.2rem;
  }
  .modern-defense-hero h1 {
    max-width: 11ch;
    font-size: clamp(2.65rem, 12vw, 4.05rem);
  }
  .modern-defense-hero__actions .button {
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .modern-defense-hero {
    background:
      linear-gradient(90deg, rgba(16,20,24,.94), rgba(16,20,24,.62)),
      #232629;
  }
  .modern-defense-hero__video {
    animation: none;
  }
  .modern-defense-hero__copy {
    animation: none;
  }
}
.ai-principles-section {
  position: relative;
  overflow: hidden;
  padding-top: clamp(3.5rem, 7vw, 6.25rem);
}
.ai-principles-section::before,
.ai-featured-readings::before,
.ai-faq-consultation::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 10% 18%, rgba(255,255,255,.62), transparent 34rem),
    radial-gradient(circle at 86% 18%, rgba(201,160,99,.12), transparent 28rem);
}
.ai-principles-section > *,
.ai-featured-readings > *,
.ai-faq-consultation > * {
  position: relative;
  z-index: 1;
}
.ai-principles-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: clamp(1.8rem, 3vw, 2.8rem);
  border-top: 1px solid color-mix(in srgb, var(--color-gold) 30%, var(--color-hairline));
}
.ai-principles-grid article {
  position: relative;
  min-height: 16rem;
  padding: clamp(1.6rem, 2.8vw, 2.5rem);
  border-right: 1px solid color-mix(in srgb, var(--color-gold) 28%, var(--color-hairline));
}
.ai-principles-grid article:last-child {
  border-right: 0;
}
.ai-principles-grid span,
.ai-workflow-steps span,
.ai-reading-card span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.ai-principles-grid span {
  width: 3rem;
  height: 3rem;
  margin-bottom: 1.1rem;
  border: 1px solid color-mix(in srgb, var(--color-gold) 46%, var(--color-hairline));
  border-radius: 999px;
  color: var(--color-graphite);
}
.ai-principles-grid h3,
.ai-workflow-steps h3,
.ai-reading-card h3,
.ai-faq-consultation h2 {
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-weight: 500;
}
.ai-principles-grid p {
  max-width: 34ch;
  color: var(--color-muted);
}
.ai-workflow-redesign {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(70% 90% at 82% 8%, rgba(201,160,99,.16), transparent 58%),
    radial-gradient(80% 100% at 20% 30%, rgba(255,255,255,.08), transparent 56%),
    linear-gradient(135deg, #111820 0%, #151B23 52%, #1A1F29 100%);
  color: var(--color-ivory);
}
.ai-workflow-redesign::before,
.ai-workflow-redesign::after {
  content: "";
  position: absolute;
  left: -8%;
  right: -8%;
  height: 38%;
  pointer-events: none;
  background:
    repeating-radial-gradient(ellipse at center, rgba(201,160,99,.16) 0 1px, transparent 1px 18px),
    linear-gradient(90deg, transparent, rgba(201,160,99,.22), transparent);
  opacity: .22;
  filter: blur(.3px);
}
.ai-workflow-redesign::before {
  top: 8%;
  transform: rotate(-2deg);
}
.ai-workflow-redesign::after {
  bottom: 4%;
  transform: rotate(2deg);
}
.ai-workflow-redesign__grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1.35fr);
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
}
.ai-workflow-redesign .eyebrow {
  color: color-mix(in srgb, var(--color-gold) 82%, var(--color-white) 18%);
}
.ai-workflow-redesign h2 {
  max-width: 10ch;
  color: var(--color-ivory);
  font-size: clamp(2.5rem, 4.8vw, 5.1rem);
}
.ai-workflow-redesign__intro p {
  max-width: 42ch;
  color: color-mix(in srgb, var(--color-ivory) 82%, transparent);
}
.ai-workflow-redesign .button-secondary {
  margin-top: 1rem;
  color: var(--color-ivory);
  border-color: rgba(247,243,234,.44);
  background: rgba(255,255,255,.06);
}
.ai-workflow-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(.85rem, 1.4vw, 1.25rem);
}
.ai-workflow-steps article {
  position: relative;
  min-height: 15rem;
  padding: clamp(1.15rem, 1.8vw, 1.55rem);
  border: 1px solid rgba(247,243,234,.18);
  border-radius: 999px 999px 18px 18px;
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 20px 55px rgba(0,0,0,.22);
  text-align: center;
}
.ai-workflow-steps article::before {
  content: "";
  display: block;
  width: 3.4rem;
  height: 3.4rem;
  margin: 0 auto 1rem;
  border: 1px solid rgba(201,160,99,.55);
  border-radius: 999px;
  box-shadow: 0 0 24px rgba(201,160,99,.16);
}
.ai-workflow-steps span {
  position: absolute;
  top: 2.1rem;
  left: 50%;
  transform: translateX(-50%);
  color: color-mix(in srgb, var(--color-gold) 88%, var(--color-white) 12%);
}
.ai-workflow-steps h3 {
  color: var(--color-ivory);
  font-size: clamp(1.15rem, 1.4vw, 1.45rem);
}
.ai-workflow-steps p {
  margin: .8rem 0 0;
  color: color-mix(in srgb, var(--color-ivory) 76%, transparent);
  font-size: .92rem;
  line-height: 1.55;
}
.ai-featured-readings {
  position: relative;
}
.ai-reading-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.6rem);
  margin-top: clamp(1.6rem, 3vw, 2.6rem);
}
.ai-reading-card {
  display: grid;
  grid-template-columns: minmax(120px, .88fr) minmax(0, 1fr);
  min-height: 17rem;
  overflow: hidden;
  border: 1px solid var(--color-hairline);
  border-radius: 10px;
  background: rgba(255,255,255,.82);
  box-shadow: var(--shadow);
}
.ai-reading-card figure {
  margin: 0;
  min-height: 100%;
  background: #111820;
}
.ai-reading-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.84) contrast(1.04);
}
.ai-reading-card div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(1.25rem, 2vw, 1.75rem);
}
.ai-reading-card h3 {
  margin-top: .7rem;
  font-size: clamp(1.5rem, 2vw, 2.2rem);
  line-height: 1.02;
}
.ai-reading-card p {
  color: var(--color-muted);
}
.ai-reading-card .text-link {
  margin-top: auto;
}
.ai-faq-consultation {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(320px, .9fr);
  gap: clamp(1rem, 2vw, 1.6rem);
  align-items: stretch;
}
.ai-faq-panel,
.ai-consultation-panel {
  border: 1px solid var(--color-hairline);
  border-radius: 10px;
  background: rgba(255,255,255,.86);
  box-shadow: var(--shadow);
}
.ai-faq-panel {
  padding: clamp(1.5rem, 3vw, 2.4rem);
}
.ai-faq-panel h2,
.ai-consultation-panel h2 {
  font-size: clamp(2rem, 3.2vw, 3.55rem);
}
.ai-consultation-panel {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(180px, .7fr);
  overflow: hidden;
}
.ai-consultation-panel > div {
  padding: clamp(1.5rem, 3vw, 2.4rem);
}
.ai-consultation-panel figure {
  margin: 0;
  min-height: 100%;
  background: #111820;
}
.ai-consultation-panel img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: saturate(.82) contrast(1.03);
}
.ai-consultation-panel p {
  color: var(--color-muted);
}
@media (max-width: 980px) {
  .ai-principles-grid,
  .ai-reading-grid,
  .ai-faq-consultation,
  .ai-workflow-redesign__grid {
    grid-template-columns: 1fr;
  }
  .ai-principles-grid article {
    border-right: 0;
    border-bottom: 1px solid color-mix(in srgb, var(--color-gold) 28%, var(--color-hairline));
  }
  .ai-workflow-steps {
    grid-template-columns: 1fr;
  }
  .ai-workflow-steps article {
    min-height: auto;
    border-radius: 18px;
    text-align: left;
    padding-left: 5.5rem;
  }
  .ai-workflow-steps article::before {
    position: absolute;
    left: 1.2rem;
    top: 1.2rem;
    margin: 0;
  }
  .ai-workflow-steps span {
    left: 2.9rem;
    top: 2.26rem;
  }
}
@media (max-width: 700px) {
  .ai-reading-card,
  .ai-consultation-panel {
    grid-template-columns: 1fr;
  }
  .ai-reading-card figure,
  .ai-consultation-panel figure {
    min-height: 220px;
  }
}

/* Modern Defense approved layout refinement */
.ai-principles-section,
.ai-featured-readings,
.ai-faq-consultation {
  background: transparent;
}
.ai-principles-section {
  max-width: 1240px;
  padding-top: clamp(4rem, 7vw, 6.7rem);
  padding-bottom: clamp(3.2rem, 6vw, 5.6rem);
}
.ai-principles-section .split-heading {
  align-items: end;
}
.ai-principles-section .split-heading h2 {
  max-width: 13ch;
  margin-bottom: 0;
  font-size: clamp(2.65rem, 4.6vw, 5.2rem);
  line-height: .96;
}
.ai-principles-section .split-heading > p {
  max-width: 48ch;
  color: var(--color-slate);
}
.ai-principles-grid {
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--color-gold) 30%, var(--color-hairline));
  border-radius: 16px;
  background: rgba(255,255,255,.64);
  box-shadow: 0 22px 64px rgba(35,38,41,.08);
}
.ai-principles-grid article {
  min-height: 14rem;
  background:
    radial-gradient(circle at 20% 20%, rgba(201,160,99,.10), transparent 42%),
    rgba(255,255,255,.58);
}
.ai-principles-grid h3 {
  margin-top: .3rem;
  font-size: clamp(1.45rem, 2vw, 2.05rem);
}
.ai-workflow-redesign {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(3.8rem, 7vw, 6.5rem) 0;
  border: 0;
  border-radius: 0;
}
.ai-workflow-redesign__grid {
  max-width: 1360px;
}
.ai-workflow-steps {
  position: relative;
  align-items: stretch;
}
.ai-workflow-steps::before {
  content: "";
  position: absolute;
  left: 5%;
  right: 5%;
  top: 3.1rem;
  height: 1px;
  background:
    linear-gradient(90deg, transparent, rgba(201,160,99,.72), transparent),
    repeating-linear-gradient(90deg, rgba(201,160,99,.34) 0 2px, transparent 2px 14px);
  box-shadow: 0 0 24px rgba(201,160,99,.24);
  pointer-events: none;
}
.ai-workflow-steps article {
  backdrop-filter: blur(14px) saturate(116%);
  -webkit-backdrop-filter: blur(14px) saturate(116%);
}
.ai-workflow-steps article::after {
  content: "";
  position: absolute;
  inset: 1rem;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: inherit;
  pointer-events: none;
}
.ai-featured-readings {
  max-width: 1280px;
  padding-top: clamp(3rem, 6vw, 5rem);
  padding-bottom: clamp(2.2rem, 4vw, 3.5rem);
}
.ai-featured-readings .section-heading h2 {
  max-width: 15ch;
}
.ai-reading-card {
  grid-template-columns: .92fr 1fr;
  border-color: color-mix(in srgb, var(--color-gold) 18%, var(--color-hairline));
  background: rgba(255,255,255,.92);
}
.ai-reading-card figure {
  min-height: 18rem;
}
.ai-reading-card span {
  color: var(--color-oxblood);
}
.ai-reading-card h3 {
  color: var(--color-ink);
}
.ai-related-all {
  display: inline-flex;
  margin-top: 1.25rem;
}
.ai-faq-consultation {
  max-width: 1280px;
  padding-top: clamp(1.4rem, 3vw, 2.6rem);
  padding-bottom: clamp(4rem, 7vw, 6rem);
}
.ai-faq-panel,
.ai-consultation-panel {
  border-color: color-mix(in srgb, var(--color-gold) 18%, var(--color-hairline));
  background: rgba(255,255,255,.84);
}
.ai-consultation-panel {
  min-height: 27rem;
}
.ai-consultation-panel > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.ai-consultation-panel figure {
  position: relative;
}
.ai-consultation-panel figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(250,247,240,.94), rgba(250,247,240,.18) 42%, transparent);
  pointer-events: none;
}
.ai-consultation-panel .button-row {
  margin-top: 1.15rem;
}
@media (max-width: 980px) {
  .ai-workflow-steps::before {
    left: 2.9rem;
    right: auto;
    top: 2rem;
    bottom: 2rem;
    width: 1px;
    height: auto;
    background: linear-gradient(180deg, transparent, rgba(201,160,99,.72), transparent);
  }
}
@media (max-width: 700px) {
  .ai-principles-grid {
    border-radius: 12px;
  }
  .ai-reading-card {
    grid-template-columns: 1fr;
  }
}
.ai-flip-section,
.ai-flip-grid {
  --white: #FFFFFF;
  --graphite: #232629;
  --muted: #5E666F;
  --oxblood: #7A1F2E;
  --border-gray: #D4D8DC;
  --slate: #3D4652;
}
.ai-flip-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  perspective: 1400px;
}
.ai-flip-card {
  position: relative;
  min-height: 34rem;
  cursor: pointer;
  outline: none;
}
.ai-flip-card-inner {
  position: relative;
  min-height: inherit;
  width: 100%;
  transform-style: preserve-3d;
  transition: transform .6s ease;
}
.ai-flip-face {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  overflow: hidden;
  padding: clamp(1.55rem, 2.5vw, 2rem);
  background: var(--white);
  border: 1px solid var(--border-gray);
  color: var(--graphite);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.ai-flip-face::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: var(--oxblood);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .24s ease;
}
.ai-flip-back {
  transform: rotateY(180deg);
}
.ai-flip-label {
  color: var(--oxblood);
  font-family: var(--sans);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}
.ai-flip-face h3 {
  margin: 1rem 0 0;
  color: var(--graphite);
  font-family: Georgia, var(--serif-display), "Times New Roman", serif;
  font-size: clamp(1.5rem, 2.15vw, 1.65rem);
  font-weight: 500;
  line-height: 1.12;
}
.ai-flip-face p,
.ai-flip-face li {
  color: var(--muted);
  font-family: var(--sans);
  font-size: 1rem;
  line-height: 1.6;
}
.ai-flip-face p {
  margin: 1rem 0 0;
}
.ai-flip-face ul {
  display: grid;
  gap: .72rem;
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
}
.ai-flip-face li {
  position: relative;
  padding-left: 1rem;
}
.ai-flip-face li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .72em;
  width: .35rem;
  height: .35rem;
  background: var(--oxblood);
}
.ai-flip-svg-face {
  justify-content: center;
  padding: .55rem;
}
.ai-flip-svg-face svg {
  display: block;
  width: 100%;
  height: auto;
}
.ai-flip-link {
  display: inline-flex;
  align-items: center;
  margin-top: 1.1rem;
  color: var(--oxblood);
  font-family: var(--sans);
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  text-decoration: none;
}
.ai-flip-link::after {
  content: "->";
  margin-left: .5rem;
}
@media (hover: hover) and (pointer: fine) {
  .ai-flip-card:hover .ai-flip-card-inner {
    transform: rotateY(180deg);
  }
  .ai-flip-card:hover .ai-flip-face::before {
    transform: scaleX(1);
  }
}
.ai-flip-card.is-flipped .ai-flip-card-inner,
.ai-flip-card:focus-within.is-flipped .ai-flip-card-inner {
  transform: rotateY(180deg);
}
.ai-flip-card.is-flipped .ai-flip-face::before,
.ai-flip-card:focus-visible .ai-flip-face::before {
  transform: scaleX(1);
}
.ai-flip-card:focus-visible .ai-flip-face {
  outline: 2px solid var(--oxblood);
  outline-offset: 4px;
}
@media (max-width: 900px) {
  .ai-flip-grid {
    grid-template-columns: 1fr;
  }
  .ai-flip-card {
    min-height: 31rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ai-flip-card-inner,
  .ai-flip-face::before {
    transition: none;
  }
  .ai-flip-card:hover .ai-flip-card-inner,
  .ai-flip-card.is-flipped .ai-flip-card-inner {
    transform: none;
  }
  .ai-flip-back {
    opacity: 0;
    visibility: hidden;
    transform: none;
  }
  .ai-flip-card.is-flipped .ai-flip-front {
    opacity: 0;
    visibility: hidden;
  }
  .ai-flip-card.is-flipped .ai-flip-back {
    opacity: 1;
    visibility: visible;
  }
}

/* Luxury symbol/accent system: Pearl & Graphite */
.DiamondMark,
.diamond-mark,
.ConnectorNode,
.connector-node,
.FooterDiamondDivider,
.footer-diamond-divider {
  width: .42rem;
  height: .42rem;
  display: inline-block;
  flex: 0 0 auto;
  background: var(--color-oxblood);
  transform: rotate(45deg);
}
.LuxuryDivider,
.luxury-divider,
.SectionRule,
.section-rule {
  display: flex;
  align-items: center;
  gap: .85rem;
  width: min(18rem, 100%);
  margin: 1.25rem 0;
  color: var(--color-oxblood);
}
.LuxuryDivider::before,
.LuxuryDivider::after,
.luxury-divider::before,
.luxury-divider::after,
.SectionRule::before,
.SectionRule::after,
.section-rule::before,
.section-rule::after {
  content: "";
  height: 1px;
  flex: 1 1 auto;
  background: var(--color-hairline);
}
.LuxuryDivider > *,
.luxury-divider > *,
.SectionRule > *,
.section-rule > * {
  width: .42rem;
  height: .42rem;
  background: var(--color-oxblood);
  transform: rotate(45deg);
}
.OxbloodRule,
.oxblood-rule {
  display: inline-block;
  width: clamp(2rem, 4vw, 4rem);
  height: 1px;
  background: var(--color-oxblood);
}
.CornerFrame,
.corner-frame {
  position: relative;
}
.CornerFrame::before,
.corner-frame::before {
  content: "";
  position: absolute;
  top: .72rem;
  left: .72rem;
  width: 1.2rem;
  height: 1.2rem;
  border-top: 1px solid var(--color-oxblood);
  border-left: 1px solid var(--color-oxblood);
  pointer-events: none;
}
.section-heading,
.article-header {
  position: relative;
}
.section-heading::after,
.article-header::after {
  content: "\25C6  \25C6  \25C6";
  display: block;
  width: min(13rem, 40vw);
  margin-top: clamp(1rem, 1.6vw, 1.35rem);
  text-align: center;
  letter-spacing: .4rem;
  font-size: .5rem;
  line-height: 1;
  color: var(--color-oxblood);
  background:
    linear-gradient(90deg,
      var(--color-hairline) 0,
      var(--color-hairline) calc(50% - 2.2rem),
      transparent calc(50% - 2.2rem),
      transparent calc(50% + 2.2rem),
      var(--color-hairline) calc(50% + 2.2rem),
      var(--color-hairline) 100%) center / 100% 1px no-repeat;
}
.split-heading::after {
  grid-column: 1 / -1;
}
.section-heading::before,
.article-header::before {
  content: none;
  display: none;
}
.homepage-glow-stage .section-heading::before,
.homepage-glow-stage .section-heading::after {
  content: none;
  display: none;
}
.section-heading .eyebrow,
.article-header .eyebrow,
.blog-article .eyebrow,
.knowledge-tree-rail > .eyebrow,
.dwi-flow-heading .eyebrow,
.law-tree-heading .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .58rem;
}
.section-heading .eyebrow::before,
.article-header .eyebrow::before,
.blog-article .eyebrow::before,
.knowledge-tree-rail > .eyebrow::before,
.dwi-flow-heading .eyebrow::before,
.law-tree-heading .eyebrow::before {
  content: "";
  width: .38rem;
  height: .38rem;
  background: var(--color-oxblood);
  transform: rotate(45deg);
  flex: 0 0 auto;
}
.premium-card > span,
.result-card > span,
.review-card > span,
.endorsement-card > span,
.article-meta span {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
}
.premium-card > span::before,
.result-card > span::before,
.review-card > span::before,
.endorsement-card > span::before,
.article-meta span::before {
  content: "";
  width: .32rem;
  height: .32rem;
  background: var(--color-oxblood);
  transform: rotate(45deg);
  flex: 0 0 auto;
}
.cta-panel .eyebrow,
.final-dark-cta-panel .eyebrow {
  position: relative;
}
.cta-panel .eyebrow::before,
.final-dark-cta-panel .eyebrow::before {
  background:
    linear-gradient(90deg, var(--color-hairline), var(--color-hairline) calc(50% - .42rem), transparent calc(50% - .42rem), transparent calc(50% + .42rem), var(--color-hairline) calc(50% + .42rem), var(--color-hairline));
}
.cta-panel .eyebrow::after,
.final-dark-cta-panel .eyebrow::after {
  background: linear-gradient(90deg, var(--color-hairline), var(--color-oxblood), var(--color-hairline));
}
.cta-panel h2::before,
.final-dark-cta-panel h2::before {
  content: "";
  display: block;
  width: .52rem;
  height: .52rem;
  margin-bottom: clamp(.9rem, 1.5vw, 1.25rem);
  background: var(--color-oxblood);
  transform: rotate(45deg);
}
.law-tree-branch::after,
.dwi-flow-track::after,
.knowledge-topic-node::after {
  content: "";
  position: absolute;
  width: .48rem;
  height: .48rem;
  background: var(--color-oxblood);
  transform: rotate(45deg);
  pointer-events: none;
}
.law-tree-branch::after {
  top: 4.7rem;
  left: calc(50% - .24rem);
}
.dwi-flow-track::after {
  top: -2.28rem;
  left: calc(50% - .24rem);
}
.knowledge-topic-node::after {
  left: 1.72rem;
  top: 1.72rem;
  width: .34rem;
  height: .34rem;
}
.law-tree-entry::before,
.dwi-flow-split::after {
  content: "";
  position: absolute;
  width: .5rem;
  height: .5rem;
  background: var(--color-oxblood);
  transform: rotate(45deg);
  pointer-events: none;
}
.law-tree-entry::before {
  left: calc(50% - .25rem);
  bottom: -.25rem;
}
.dwi-flow-split::after {
  top: -.25rem;
  left: calc(50% - .25rem);
}
.footer-legal div {
  align-items: center;
}
.footer-legal div a + a::before {
  content: "";
  width: .34rem;
  height: .34rem;
  display: inline-block;
  margin: 0 .55rem 0 .05rem;
  background: var(--color-oxblood);
  transform: rotate(45deg) translateY(-1px);
  vertical-align: middle;
}

/* Minimal Pearl & Graphite knowledge-tree treatment for Law Guide + DWI Guide */
.law-guide-tree .law-tree,
.dwi-flow-shell,
.knowledge-tree-rail,
.knowledge-tree-category {
  background: var(--color-white) !important;
  border-color: var(--color-hairline) !important;
  color: var(--color-ink) !important;
  box-shadow: 0 18px 48px color-mix(in srgb, var(--color-ink) 6%, transparent) !important;
}
.law-guide-tree .law-tree:before {
  opacity: .08 !important;
}
.law-guide-tree .law-tree-heading h2,
.law-tree-entry strong,
.law-guide-tree .law-tree-card h3,
.knowledge-tree-category-head h2,
.knowledge-topic-node h3,
.dwi-flow-heading h2,
.dwi-flow-start h3,
.dwi-flow-track h3,
.dwi-flow-stage-card strong {
  color: var(--color-ink) !important;
}
.law-guide-tree .law-tree-heading p,
.law-guide-tree .law-tree-card p,
.knowledge-tree-category-head p:not(.eyebrow),
.knowledge-topic-node p,
.dwi-flow-heading p:not(.eyebrow),
.dwi-flow-start p,
.dwi-flow-track-head p:not(.eyebrow),
.dwi-flow-stage-card small,
.dwi-flow-note {
  color: var(--color-graphite) !important;
}
.law-tree-entry,
.law-guide-tree .law-specialty-card,
.law-guide-tree .law-tree-card,
.law-guide-tree .law-tree-next,
.dwi-flow-start,
.dwi-flow-track,
.dwi-flow-stage-card,
.dwi-flow-guides,
.dwi-flow-guides a,
.knowledge-topic-node {
  background: var(--color-white) !important;
  border-color: var(--color-hairline) !important;
  color: var(--color-ink) !important;
}
.law-guide-tree .law-tree-card,
.law-guide-tree .law-tree-next,
.dwi-flow-track,
.dwi-flow-start,
.dwi-flow-stage-card {
  box-shadow: 0 12px 30px color-mix(in srgb, var(--color-ink) 4%, transparent) !important;
}
.law-guide-tree .law-tree-grid:before,
.law-guide-tree .law-tree-branch:before,
.law-tree-entry:after,
.dwi-flow-start:after,
.dwi-flow-split:before,
.dwi-flow-track:before,
.knowledge-topic-node:before {
  background: var(--color-hairline) !important;
  opacity: 1 !important;
}
.law-tree-branch::after,
.dwi-flow-track::after,
.knowledge-topic-node::after,
.law-tree-entry::before,
.dwi-flow-split::after {
  background: var(--color-oxblood) !important;
}
.law-guide-tree .law-tree-number,
.dwi-flow-stage-num,
.knowledge-topic-node span {
  background: var(--color-white) !important;
  border: 1px solid var(--color-hairline) !important;
  color: var(--color-ink) !important;
}
.law-guide-tree .law-tree-branch:hover .law-tree-number,
.law-guide-tree .law-tree-branch:focus-within .law-tree-number,
.dwi-flow-stage-card:hover .dwi-flow-stage-num,
.dwi-flow-stage-card:focus-visible .dwi-flow-stage-num,
.knowledge-topic-node:hover span,
.knowledge-topic-node:focus-within span {
  background: var(--color-oxblood) !important;
  border-color: var(--color-oxblood) !important;
  color: var(--color-white) !important;
}
.law-tree-entry-icon,
.law-guide-tree .law-tree-icon,
.dwi-flow-start > span,
.dwi-flow-track-badge,
.dwi-flow-stage-icon,
.dwi-flow-guides a span,
.knowledge-tree-rail a span {
  color: var(--color-graphite) !important;
}
.law-guide-tree .law-tree-tag,
.dwi-flow-track-head .eyebrow,
.dwi-flow-guides .eyebrow,
.knowledge-tree-rail > .eyebrow,
.law-guide-tree .law-tree-heading span,
.law-tree-entry span:not(.law-tree-entry-icon) {
  color: var(--color-oxblood) !important;
}
.law-guide-tree .law-tree-select,
.dwi-flow-toggle,
.law-guide-tree .law-tree-next a:not(.text-link),
.knowledge-tree-rail a,
.dwi-flow-guides a {
  background: var(--color-panel) !important;
  border-color: var(--color-hairline) !important;
  color: var(--color-graphite) !important;
  opacity: 1 !important;
}
.law-guide-tree .law-tree-next a:not(.text-link):hover,
.law-guide-tree .law-tree-next a:not(.text-link):focus-visible,
.law-guide-tree .law-tree-select:hover,
.law-guide-tree .law-tree-select:focus-visible,
.dwi-flow-toggle:hover,
.dwi-flow-toggle:focus-visible,
.knowledge-tree-rail a:hover,
.knowledge-tree-rail a:focus-visible,
.knowledge-tree-rail a.is-active,
.dwi-flow-guides a:hover,
.dwi-flow-guides a:focus-visible,
.dwi-flow-stage-card:hover,
.dwi-flow-stage-card:focus-visible,
.knowledge-topic-node:hover,
.knowledge-topic-node:focus-within {
  background: color-mix(in srgb, var(--color-oxblood) 5%, var(--color-white) 95%) !important;
  border-color: var(--color-oxblood) !important;
  color: var(--color-ink) !important;
}
.knowledge-tree-rail a.is-active {
  box-shadow: inset 3px 0 0 var(--color-oxblood);
}
.knowledge-tree-rail a.is-active span {
  color: var(--color-oxblood) !important;
}
.law-guide-tree .law-tree-next a:not(.text-link),
.knowledge-tree-rail a,
.dwi-flow-guides a,
.dwi-flow-stage-card {
  text-decoration: none;
}
.knowledge-topic-node h3 a {
  color: var(--color-ink) !important;
}
.knowledge-topic-node h3 a:hover,
.knowledge-topic-node h3 a:focus-visible,
.dwi-flow-guides a:hover,
.dwi-flow-guides a:focus-visible,
.dwi-flow-stage-card:hover strong,
.dwi-flow-stage-card:focus-visible strong {
  color: var(--color-oxblood) !important;
}
.dwi-flow-civil .dwi-flow-stage-list,
.dwi-flow-stage-list,
.dwi-flow-guides > div {
  background: transparent !important;
}
.dwi-flow-note:before,
.dwi-flow-note:after {
  background: var(--color-hairline) !important;
}
@media (max-width: 720px) {
  .section-heading::after,
  .article-header::after {
    width: 8rem;
  }
  .section-heading::before,
  .article-header::before {
    left: calc(4rem - .2rem);
    width: .36rem;
    height: .36rem;
  }
  .law-tree-branch::after,
  .dwi-flow-track::after,
  .dwi-flow-split::after,
  .law-tree-entry::before {
    display: none;
  }
  .footer-legal div a + a::before {
    width: .28rem;
    height: .28rem;
    margin-right: .42rem;
  }
}

/* Footer-specific logo and icon color correction */
.site-footer .footer-logo {
  width: min(240px, 68vw) !important;
  min-height: auto !important;
}
.site-footer .footer-logo::before {
  display: none !important;
}
.site-footer .footer-logo img {
  width: min(240px, 68vw) !important;
  height: auto !important;
  opacity: 1 !important;
  filter: none !important;
}
.site-footer .footer-logo:hover img,
.site-footer .footer-logo:focus-visible img {
  opacity: 1 !important;
}
.site-footer .footer-contact-line .footer-icon {
  color: #B98590 !important;
}
.site-footer .footer-socials a {
  border-color: rgba(255,255,255,.16) !important;
  color: #F7F7F4 !important;
  background: rgba(255,255,255,.025) !important;
}
.site-footer .footer-socials a:hover,
.site-footer .footer-socials a:focus-visible {
  border-color: #7A1F2E !important;
  background: rgba(122,31,46,.18) !important;
  color: #FFFFFF !important;
  box-shadow: inset 0 0 0 1px rgba(185,133,144,.22);
}

/* True review carousel enhancement. No-JS keeps every review visible in the static row. */
.review-flip-carousel.is-enhanced {
  position: relative;
  gap: .65rem;
}
.review-carousel-status {
  margin: 0;
  color: var(--color-muted);
  font-family: var(--sans);
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-align: center;
  text-transform: uppercase;
}
.review-carousel-arrow {
  position: absolute;
  top: calc(50% + 1rem);
  z-index: 5;
  width: 4.2rem;
  height: 3.15rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #7A1F2E;
  border-radius: 999px;
  background: #7A1F2E;
  color: #FFFFFF;
  box-shadow: 0 14px 34px color-mix(in srgb, var(--color-oxblood) 24%, transparent);
  font-family: var(--sans);
  font-size: .64rem;
  font-weight: 800;
  letter-spacing: .16em;
  line-height: 1;
  text-transform: uppercase;
  transform: translateY(-50%);
  cursor: pointer;
}
.review-carousel-arrow:hover,
.review-carousel-arrow:focus-visible {
  border-color: #5F1724;
  background: #5F1724;
  color: #FFFFFF;
  box-shadow: 0 16px 42px color-mix(in srgb, var(--color-oxblood) 34%, transparent);
}
.review-carousel-arrow-prev {
  left: .75rem;
}
.review-carousel-arrow-next {
  right: .75rem;
}
.review-flip-carousel.is-enhanced .review-flip-carousel-track {
  position: relative;
  display: block;
  overflow: hidden;
  padding: clamp(.8rem, 1.6vw, 1.2rem) 0 clamp(1.4rem, 2.4vw, 2rem);
  scroll-snap-type: none;
  scrollbar-width: none;
}
.review-flip-carousel.is-enhanced .review-flip-carousel-track::-webkit-scrollbar {
  display: none;
}
.review-flip-carousel.is-enhanced .review-carousel-card {
  position: absolute;
  top: clamp(.8rem, 1.6vw, 1.2rem);
  left: 50%;
  width: min(780px, calc(100% - 2rem));
  min-height: clamp(560px, 47vw, 700px);
  opacity: 0;
  pointer-events: none;
  transform: translateX(-50%) scale(.86);
  transition: transform 360ms ease, opacity 260ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
.review-flip-carousel.is-enhanced .review-carousel-card.is-active {
  z-index: 3;
  opacity: 1;
  pointer-events: auto;
  transform: translateX(-50%) scale(1);
}
.review-flip-carousel.is-enhanced .review-carousel-card.is-prev {
  z-index: 2;
  opacity: .34;
  transform: translateX(calc(-50% - min(46vw, 520px))) scale(.86);
}
.review-flip-carousel.is-enhanced .review-carousel-card.is-next {
  z-index: 2;
  opacity: .34;
  transform: translateX(calc(-50% + min(46vw, 520px))) scale(.86);
}
.review-flip-carousel.is-enhanced .review-carousel-card:not(.is-active):hover .review-flip-inner {
  transform: none;
}
.review-flip-card:not(.result-flip-card) .flip-affordance:after {
  content: "->";
  display: inline-block;
  margin-left: .45rem;
  transition: transform 250ms ease;
}
.review-flip-carousel.is-enhanced .review-flip-carousel-track {
  overflow: visible;
  padding-top: clamp(2.4rem, 4vw, 3.1rem);
}
.review-flip-carousel.is-enhanced .review-carousel-card {
  top: clamp(2.4rem, 4vw, 3.1rem);
}
.review-flip-carousel.is-enhanced .review-carousel-card.is-active:hover,
.review-flip-carousel.is-enhanced .review-carousel-card.is-active:focus-visible {
  transform: translateX(-50%) scale(1);
}

/* Practice Areas overview rebuild */
.page-hero:has(.practice-hero-art)::after {
  display: none;
}
.hero-grid:has(.practice-hero-art) {
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
}
.practice-hero-art {
  grid-column: 1 / -1;
  width: 100%;
  min-height: 0;
  aspect-ratio: 21 / 9;
  display: block;
  place-items: initial;
  padding: 0;
  margin: clamp(1.5rem, 3vw, 2.4rem) 0 clamp(1.4rem, 3vw, 2.2rem);
  background: var(--color-panel);
  border: 1px solid var(--color-hairline);
  border-left: 1px solid var(--color-hairline);
  box-shadow: 0 22px 60px color-mix(in srgb, var(--color-ink) 8%, transparent);
  overflow: hidden;
}
.practice-hero-art img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: saturate(.58) contrast(.98) brightness(1.06);
  opacity: 1;
}
.practice-feature-strip {
  padding-top: clamp(2rem, 4vw, 3.5rem);
  padding-bottom: clamp(2.5rem, 5vw, 4.5rem);
}
.practice-feature-panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(320px, .82fr);
  gap: clamp(1.2rem, 3vw, 2.4rem);
  align-items: center;
  min-height: clamp(30rem, 42vw, 42rem);
  padding: clamp(1.6rem, 4vw, 3rem);
  background:
    radial-gradient(circle at 84% 42%, rgba(255,255,255,.72), rgba(255,255,255,0) 26rem),
    linear-gradient(135deg, var(--color-white), var(--color-panel));
  border: 1px solid color-mix(in srgb, var(--color-oxblood) 55%, var(--color-hairline) 45%);
  box-shadow: 0 20px 54px color-mix(in srgb, var(--color-ink) 6%, transparent);
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.practice-feature-panel::before {
  content: "";
  position: absolute;
  inset: 1rem;
  pointer-events: none;
  background:
    linear-gradient(var(--color-hairline), var(--color-hairline)) top right / 2rem 1px no-repeat,
    linear-gradient(var(--color-hairline), var(--color-hairline)) top right / 1px 2rem no-repeat,
    linear-gradient(var(--color-hairline), var(--color-hairline)) bottom left / 2rem 1px no-repeat,
    linear-gradient(var(--color-hairline), var(--color-hairline)) bottom left / 1px 2rem no-repeat;
}
.practice-feature-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(255,255,255,.99) 0%, rgba(255,255,255,.9) 39%, rgba(255,255,255,.42) 63%, rgba(255,255,255,.12) 100%);
  opacity: .88;
}
.practice-feature-panel > * {
  position: relative;
  z-index: 1;
}
.practice-feature-panel > div {
  z-index: 2;
}
.practice-feature-panel:hover,
.practice-feature-panel:focus-within {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--color-oxblood) 72%, var(--color-hairline) 28%);
  box-shadow:
    0 24px 64px color-mix(in srgb, var(--color-ink) 9%, transparent),
    0 0 32px color-mix(in srgb, var(--color-oxblood) 9%, transparent);
}
.practice-feature-panel:hover .text-link::after,
.practice-feature-panel:focus-within .text-link::after {
  transform: translateX(.22rem);
}
.practice-feature-mark {
  width: .95rem;
  height: .95rem;
  margin-top: .28rem;
  background: var(--color-oxblood);
  transform: rotate(45deg);
  box-shadow: 0 0 0 .8rem color-mix(in srgb, var(--color-oxblood) 6%, transparent);
}
.practice-feature-panel h2 {
  max-width: 820px;
  color: var(--color-ink);
  font-size: clamp(2rem, 3.7vw, 4rem);
}
.practice-feature-panel p:not(.eyebrow) {
  max-width: 980px;
  color: var(--color-body);
}
.practice-fasd-visual {
  position: absolute;
  inset: 0;
  z-index: 0;
  min-height: 0;
  align-self: auto;
  overflow: hidden;
  opacity: 1;
  pointer-events: none;
  -webkit-mask-image: none;
  mask-image: none;
}
.practice-fasd-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 66% 43%, rgba(122,31,46,.06), transparent 12rem),
    radial-gradient(circle at 82% 12%, rgba(203,168,119,.16), transparent 14rem),
    linear-gradient(120deg, rgba(255,255,255,0), rgba(255,255,255,.46) 46%, rgba(255,255,255,.08));
  z-index: 1;
}
.practice-fasd-architecture {
  position: absolute;
  inset: 0;
  opacity: .22;
  background:
    linear-gradient(90deg, transparent 0 20%, rgba(61,70,82,.14) 20.4% 21.2%, transparent 21.6% 25%, rgba(61,70,82,.13) 25.4% 26.2%, transparent 26.6% 30%, rgba(61,70,82,.12) 30.4% 31.2%, transparent 31.6%),
    linear-gradient(12deg, transparent 0 40%, rgba(61,70,82,.12) 40.2% 40.8%, transparent 41.2%),
    radial-gradient(ellipse at 40% 10%, rgba(61,70,82,.13), transparent 28%);
}
.practice-fasd-visual svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.practice-fasd-visual .fasd-profile {
  fill: url(#fasdProfile);
  opacity: .72;
}
.practice-fasd-visual .fasd-brain {
  fill: none;
  stroke: rgba(61,70,82,.28);
  stroke-width: 1.4;
}
.practice-fasd-visual .fasd-line {
  fill: none;
  stroke: rgba(122,31,46,.22);
  stroke-width: 1;
  stroke-dasharray: 3 5;
}
.practice-fasd-visual .fasd-line.muted {
  stroke: rgba(61,70,82,.18);
}
.practice-fasd-visual .fasd-node {
  fill: rgba(250,250,248,.82);
  stroke: rgba(122,31,46,.28);
  stroke-width: 1;
}
.practice-fasd-visual .fasd-node.strong {
  fill: rgba(122,31,46,.32);
  stroke: rgba(122,31,46,.42);
}
.practice-fasd-visual .fasd-label {
  fill: rgba(122,31,46,.78);
  font-family: var(--sans);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 2.4px;
}
.practice-feature-panel:hover .practice-fasd-visual,
.practice-feature-panel:focus-within .practice-fasd-visual {
  opacity: 1;
}
.practice-fasd-visual {
  margin: 0;
  background: transparent;
  border-left: 0;
  -webkit-mask-image: none;
  mask-image: none;
}
.practice-fasd-visual::before {
  background:
    linear-gradient(90deg, rgba(255,255,255,.26), rgba(255,255,255,0) 42%),
    radial-gradient(circle at 78% 18%, rgba(255,255,255,.28), rgba(255,255,255,0) 18rem);
  opacity: .46;
}
.practice-fasd-visual img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: contain;
  object-position: right center;
  padding: clamp(.55rem, 1.8vw, 1.35rem);
  filter: saturate(.92) contrast(1.02) brightness(1.02);
  opacity: .92;
  transform: none;
  transition: opacity .3s ease, filter .3s ease;
}
.practice-feature-panel:hover .practice-fasd-visual img,
.practice-feature-panel:focus-within .practice-fasd-visual img {
  filter: saturate(.98) contrast(1.04) brightness(1.04);
  opacity: 1;
  transform: none;
}
.practice-area-group {
  padding-top: clamp(2.75rem, 5vw, 5rem);
  padding-bottom: clamp(2.75rem, 5vw, 5rem);
}
.practice-area-card-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .8rem;
  background: transparent;
  border: 0;
}
.practice-area-card-grid .premium-card {
  min-height: 23rem;
  display: flex;
  flex-direction: column;
  padding: clamp(1.05rem, 1.7vw, 1.55rem);
  position: relative;
  isolation: isolate;
  background: var(--color-paper);
  border: .5px solid var(--color-hairline);
  border-top: 2px solid var(--color-gold);
  border-radius: 0 0 8px 8px;
  color: var(--color-ink);
  box-shadow: 0 1px 3px rgba(35,38,41,0.04);
  -webkit-backdrop-filter: blur(16px) saturate(118%);
  backdrop-filter: blur(16px) saturate(118%);
  overflow: hidden;
  transition: background-color .22s ease, border-color .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease;
}
.practice-area-card-grid .premium-card:hover,
.practice-area-card-grid .premium-card:focus-within {
  background: var(--color-paper);
  border-color: var(--color-oxblood);
  border-top-color: var(--color-gold);
  color: var(--color-ink);
  transform: translateY(-3px);
  box-shadow: 0 4px 14px rgba(35,38,41,0.08);
}
.practice-area-card-grid .premium-card span {
  color: var(--color-oxblood);
  font-size: .56rem;
  letter-spacing: .17em;
}
.practice-area-card-grid .premium-card h3 {
  margin-top: .9rem;
  color: var(--color-ink);
  font-size: clamp(1.28rem, 1.55vw, 1.7rem);
  line-height: 1.03;
}
.practice-area-card-grid .premium-card p {
  color: var(--color-body);
  font-size: .9rem;
  line-height: 1.55;
}
.practice-area-card-grid .stake-line {
  margin-top: auto;
  color: var(--color-body);
  font-size: .82rem;
  line-height: 1.45;
}
.practice-area-card-grid .stake-line strong {
  display: inline;
  color: var(--color-ink);
  font-family: var(--sans);
  font-size: .82rem;
  font-weight: 800;
}
.practice-area-card-grid .text-link {
  margin-top: 1.2rem;
  font-size: .62rem;
}
.practice-area-card-grid .premium-card .text-link:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
}
@media (max-width: 1280px) {
  .practice-area-card-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1020px) {
  .practice-area-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .practice-feature-panel { grid-template-columns: 1fr; }
  .practice-feature-panel::after {
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.86) 58%, rgba(255,255,255,.44));
  }
  .practice-fasd-visual {
    min-height: 0;
    margin-top: 0;
    -webkit-mask-image: none;
    mask-image: none;
  }
  .practice-fasd-visual img {
    object-position: center bottom;
    opacity: .42;
    padding: .75rem;
  }
  .practice-hero-art { aspect-ratio: 16 / 9; }
  .practice-area-card-grid { grid-template-columns: 1fr; }
  .practice-area-card-grid .premium-card { min-height: 0; }
}

/* Mobile/tablet navigation refinement */
.nav-menu a,
.nav-call,
.nav-text,
.nav-payment,
.nav-client {
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: keep-all;
  hyphens: none;
}
@media (max-width: 1500px) {
  body { padding-bottom: 64px; }
  .nav-shell {
    width: min(100% - 32px, 1480px);
    min-height: 86px;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    gap: .55rem;
  }
  .brand {
    min-height: 72px;
  }
  .brand img {
    width: clamp(118px, 17vw, 142px);
  }
  .nav-actions {
    justify-self: end;
    gap: .4rem;
  }
  .nav-actions .nav-call,
  .nav-actions .nav-text {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: .62rem .72rem !important;
    font-size: .62rem;
    letter-spacing: .08em;
  }
  .nav-actions .nav-call {
    font-size: 0;
  }
  .nav-actions .nav-call::after {
    content: "Call";
    font-size: .62rem;
  }
  .nav-toggle {
    display: inline-flex;
    flex-direction: column;
    gap: 5px;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--color-hairline);
    background: var(--color-white);
  }
  .nav-toggle span:not(.sr-only) {
    width: 18px;
    height: 1px;
    background: var(--color-ink);
  }
  .nav-menu {
    position: fixed;
    inset: 86px 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    justify-content: stretch;
    gap: 0;
    padding: .75rem 20px 1.1rem;
    background: color-mix(in srgb, var(--color-white) 98%, transparent);
    border-bottom: 1px solid var(--color-hairline);
    box-shadow: 0 30px 40px color-mix(in srgb, var(--color-ink) 10%, transparent);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-12px);
    transition: 180ms ease;
  }
  .nav-open .nav-menu {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }
  .nav-menu a {
    width: 100%;
    padding: .95rem 0 !important;
    border-bottom: 1px solid var(--color-hairline);
    color: var(--color-ink);
    font-size: .72rem;
    letter-spacing: .08em;
    line-height: 1.2;
  }
  .nav-menu a:after {
    bottom: .7rem;
    right: auto;
    width: 3rem;
    transform-origin: left;
  }
  .mobile-action-bar {
    position: fixed;
    z-index: 60;
    left: 0;
    right: 0;
    bottom: 0;
    display: grid;
    grid-template-columns: 1fr 1fr 1.35fr;
    background: var(--color-white);
    border-top: 1px solid var(--color-hairline);
  }
  .mobile-action-bar a {
    min-height: 64px;
    display: grid;
    place-items: center;
    padding: .5rem;
    border-right: 1px solid var(--color-hairline);
    color: var(--color-ink);
    font-family: var(--sans);
    font-size: .66rem;
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 1.1;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
  }
}
@media (max-width: 520px) {
  .nav-shell {
    width: min(100% - 24px, 1480px);
    grid-template-columns: auto minmax(0, 1fr) auto;
  }
  .brand img {
    width: 112px;
  }
  .nav-actions {
    gap: .35rem;
  }
  .nav-actions .nav-call,
  .nav-actions .nav-text {
    min-height: 38px;
    padding: .55rem .58rem !important;
    font-size: .58rem;
    letter-spacing: .055em;
  }
  .nav-actions .nav-text {
    font-size: 0;
  }
  .nav-actions .nav-text::after {
    content: "Text";
    font-size: .58rem;
  }
  .nav-menu {
    top: 82px;
  }
}

/* Sitewide square/corner detail system: Pearl & Graphite + restrained oxblood */
:where(
  .review-flip-card,
  .result-flip-card,
  .result-case-row,
  .results-slide,
  .results-story-card,
  .google-review-feature,
  .endorsement-preview,
  .endorsement-card,
  .case-review-panel,
  .interior-google-box,
  .interior-case-review,
  .law-guide-tree .law-tree-card,
  .law-guide-tree .law-tree-next,
  .law-specialty-card,
  .knowledge-tree-rail,
  .knowledge-tree-category,
  .dwi-flow-start,
  .dwi-flow-stage-card,
  .dwi-flow-guides a,
  .ai-flip-card,
  .media-quote
) {
  --corner-detail-color: #D4D8DC;
  --corner-detail-opacity: .82;
  position: relative;
  isolation: isolate;
}
:where(
  .review-flip-card,
  .result-flip-card,
  .result-case-row,
  .results-slide,
  .results-story-card,
  .google-review-feature,
  .endorsement-preview,
  .endorsement-card,
  .case-review-panel,
  .interior-google-box,
  .interior-case-review,
  .law-guide-tree .law-tree-card,
  .law-guide-tree .law-tree-next,
  .law-specialty-card,
  .knowledge-tree-rail,
  .knowledge-tree-category,
  .dwi-flow-start,
  .dwi-flow-stage-card,
  .dwi-flow-guides a,
  .ai-flip-card,
  .media-quote
)::before {
  content: "";
  position: absolute;
  inset: .72rem;
  z-index: 8;
  pointer-events: none;
  opacity: var(--corner-detail-opacity);
  background:
    linear-gradient(var(--corner-detail-color), var(--corner-detail-color)) top left / 1.65rem 1px no-repeat,
    linear-gradient(var(--corner-detail-color), var(--corner-detail-color)) top left / 1px 1.65rem no-repeat,
    linear-gradient(var(--corner-detail-color), var(--corner-detail-color)) bottom right / 1.65rem 1px no-repeat,
    linear-gradient(var(--corner-detail-color), var(--corner-detail-color)) bottom right / 1px 1.65rem no-repeat;
  transition: opacity .18s ease, background .18s ease;
}
:where(
  .review-flip-card,
  .result-flip-card,
  .result-case-row,
  .results-slide,
  .results-story-card,
  .google-review-feature,
  .endorsement-preview,
  .endorsement-card,
  .case-review-panel,
  .interior-google-box,
  .interior-case-review,
  .law-guide-tree .law-tree-card,
  .law-guide-tree .law-tree-next,
  .law-specialty-card,
  .knowledge-tree-rail,
  .knowledge-tree-category,
  .dwi-flow-start,
  .dwi-flow-stage-card,
  .dwi-flow-guides a,
  .ai-flip-card,
  .media-quote
):is(:hover, :focus-within, :focus-visible, .is-active, .is-selected, [aria-selected="true"]) {
  --corner-detail-color: #7A1F2E;
  --corner-detail-opacity: 1;
}
:where(.result-case-row-featured, .results-slide-featured, .review-carousel-card.is-active, .results-story-card.is-active, .knowledge-tree-rail a.is-active) {
  --corner-detail-color: #7A1F2E;
  --corner-detail-opacity: 1;
}
:where(.review-flip-face, .results-slide-copy, .results-slide-art, .case-review-copy, .case-review-form, .dwi-flow-start > *, .law-tree-card > *, .law-tree-next > *, .knowledge-tree-category > *) {
  position: relative;
  z-index: 5;
}
/* Sitewide serif display trim: reduce headline/title scale by about 4px while preserving hierarchy. */
:root {
  --serif-trim: .25rem;
}
h1 {
  font-size: clamp(3.75rem, calc(7.4vw - var(--serif-trim)), 7.75rem);
}
h2 {
  font-size: clamp(2.25rem, calc(4.5vw - var(--serif-trim)), 4.6rem);
}
h3 {
  font-size: 1.4rem;
}
.hero-editorial-copy h1,
.hero-video-copy h1 {
  font-size: clamp(2.85rem, calc(6.2vw - var(--serif-trim)), 6.7rem);
}
.homepage-results-preview .section-heading h2 {
  font-size: clamp(2.75rem, calc(5.2vw - var(--serif-trim)), 5.95rem);
}
.premium-card h3,
.practice-area-card-grid .premium-card h3 {
  font-size: clamp(1.5rem, calc(2.1vw - var(--serif-trim)), 2rem);
}
.homepage-practice-card strong {
  font-size: clamp(1.2rem, calc(2.05vw - var(--serif-trim)), 1.85rem);
}
.review-flip-face h3,
.result-flip-card h3,
.result-preview-grid .result-flip-card h3,
.endorsement-preview h3,
.endorsement-card h3,
.endorsement-carousel-card h3 {
  font-size: clamp(1.75rem, calc(3vw - var(--serif-trim)), 3.15rem);
}
.review-flip-back blockquote,
.endorsement-card blockquote,
.review-card blockquote {
  font-size: clamp(.9rem, calc(1.3vw - var(--serif-trim)), 1.1rem);
}
.article-header h1,
.results-spotlight-intro h1 {
  font-size: clamp(3.25rem, calc(7vw - var(--serif-trim)), 6.75rem);
}
.blog-article section h2,
.ai-related-reading h2 {
  font-size: clamp(1.95rem, calc(4vw - var(--serif-trim)), 3.55rem);
}
.ai-luxury-copy h2,
.ai-letter-card h2,
.tech-command-section h2,
.law-tree-heading h2,
.law-guide-tree .law-tree-heading h2,
.dwi-flow-heading h2 {
  font-size: clamp(2.55rem, calc(5vw - var(--serif-trim)), 5.35rem);
}
.law-specialty-card h3,
.law-tree-card h3,
.knowledge-tree-category-head h2,
.dwi-flow-start h3,
.dwi-flow-track h3,
.results-category-section h3 {
  font-size: clamp(1.75rem, calc(3.2vw - var(--serif-trim)), 3.55rem);
}
.knowledge-topic-node h3,
.result-case-row h4,
.results-story-card strong,
.footer-shell h2,
.site-footer h2,
.site-footer h3 {
  font-size: clamp(1rem, calc(1.8vw - var(--serif-trim)), 1.55rem);
}
.results-slide-copy h2 {
  font-size: clamp(1.6rem, calc(3.35vw - var(--serif-trim)), 3.75rem);
}
.cta-panel h2,
.final-dark-cta-panel h2,
.final-dark-cta-panel h2 {
  font-size: clamp(2.75rem, calc(6.4vw - var(--serif-trim)), 6.95rem);
}
.case-review-copy h2,
.interior-case-review h2 {
  font-size: clamp(1.9rem, 2.4vw, 2.7rem);
  line-height: 1.14;
  text-wrap: balance;
}
@media (max-width: 760px) {
  .review-flip-carousel {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .75rem;
  }
  .review-carousel-status,
  .review-flip-carousel-track {
    grid-column: 1 / -1;
  }
  .review-carousel-arrow {
    position: static;
    width: 100%;
    height: 2.9rem;
    transform: none;
    justify-self: stretch;
  }
  .review-carousel-arrow-prev {
    grid-column: 1;
    grid-row: 3;
  }
  .review-carousel-arrow-next {
    grid-column: 2;
    grid-row: 3;
  }
  .review-flip-carousel.is-enhanced .review-carousel-card {
    width: 100%;
    min-height: 600px;
  }
  .review-flip-carousel.is-enhanced .review-carousel-card.is-prev,
  .review-flip-carousel.is-enhanced .review-carousel-card.is-next {
    opacity: 0;
    transform: translateX(-50%) scale(.92);
  }
  :where(
    .review-flip-card,
    .result-flip-card,
    .result-case-row,
    .results-slide,
    .results-story-card,
    .google-review-feature,
    .endorsement-preview,
    .endorsement-card,
    .case-review-panel,
    .law-guide-tree .law-tree-card,
    .law-guide-tree .law-tree-next,
    .law-specialty-card,
    .knowledge-tree-rail,
    .knowledge-tree-category,
    .dwi-flow-start,
    .dwi-flow-stage-card,
    .dwi-flow-guides a,
    .ai-flip-card,
    .media-quote
  )::before {
    inset: .55rem;
    background:
      linear-gradient(var(--corner-detail-color), var(--corner-detail-color)) top left / 1.1rem 1px no-repeat,
      linear-gradient(var(--corner-detail-color), var(--corner-detail-color)) top left / 1px 1.1rem no-repeat,
      linear-gradient(var(--corner-detail-color), var(--corner-detail-color)) bottom right / 1.1rem 1px no-repeat,
      linear-gradient(var(--corner-detail-color), var(--corner-detail-color)) bottom right / 1px 1.1rem no-repeat;
  }
}
@media (prefers-reduced-motion: reduce) {
  .review-flip-carousel.is-enhanced .review-carousel-card,
  .review-carousel-arrow,
  :where(
    .review-flip-card,
    .result-flip-card,
    .result-case-row,
    .results-slide,
    .results-story-card,
    .google-review-feature,
    .endorsement-preview,
    .endorsement-card,
    .case-review-panel,
    .law-guide-tree .law-tree-card,
    .law-guide-tree .law-tree-next,
    .law-specialty-card,
    .knowledge-tree-rail,
    .knowledge-tree-category,
    .dwi-flow-start,
    .dwi-flow-stage-card,
    .dwi-flow-guides a,
    .ai-flip-card,
    .media-quote
  )::before {
    transition: none !important;
  }
}

/* Law Guide guided-path layout refresh. */
.law-guide-tree .law-tree {
  max-width: 1480px;
  margin-inline: auto;
  padding: clamp(2rem, 4.5vw, 5.5rem) clamp(1rem, 3.2vw, 3rem) clamp(1.7rem, 3.5vw, 3rem);
  overflow: hidden;
  background:
    radial-gradient(ellipse at 50% -8%, rgba(255,255,255,.96) 0%, rgba(255,255,255,.54) 18%, rgba(250,250,248,0) 39%),
    radial-gradient(circle at 50% 0%, rgba(122,31,46,.09), rgba(122,31,46,0) 27rem),
    linear-gradient(135deg, #F7F3EA 0%, #FAFAF8 42%, #EFE6DB 100%) !important;
  border: 1px solid rgba(122,31,46,.16) !important;
  color: #232629 !important;
  box-shadow: 0 30px 90px rgba(35,38,41,.09) !important;
}
.law-guide-tree .law-tree::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 50% -5%, rgba(255,255,255,.85), rgba(255,255,255,0) 10rem),
    repeating-radial-gradient(ellipse at 50% 31%, rgba(255,255,255,.48) 0 1px, rgba(255,255,255,0) 1px 82px) !important;
  opacity: .72 !important;
}
.law-guide-tree .law-tree::after {
  content: "";
  position: absolute;
  inset: 1.25rem auto auto 1.25rem;
  width: 4.2rem;
  height: 4.2rem;
  pointer-events: none;
  background:
    linear-gradient(#7A1F2E, #7A1F2E) top left / 3.2rem 1px no-repeat,
    linear-gradient(#7A1F2E, #7A1F2E) top left / 1px 3.2rem no-repeat,
    linear-gradient(rgba(122,31,46,.18), rgba(122,31,46,.18)) .9rem .9rem / 3.2rem 1px no-repeat,
    linear-gradient(rgba(122,31,46,.18), rgba(122,31,46,.18)) .9rem .9rem / 1px 3.2rem no-repeat;
  opacity: .58;
}
.law-guide-tree .law-tree-heading {
  max-width: 940px;
  margin: 0 auto clamp(1.5rem, 3vw, 2.2rem);
  text-align: center;
}
.law-guide-tree .law-tree-heading .eyebrow,
.law-guide-tree .law-tree-heading span {
  color: #7A1F2E !important;
  letter-spacing: .18em;
}
.law-guide-tree .law-tree-heading h2 {
  color: #232629 !important;
  font-size: clamp(4rem, calc(7.3vw - var(--serif-trim)), 7.8rem) !important;
  line-height: .9 !important;
}
.law-guide-tree .law-tree-heading p {
  max-width: 760px;
  margin-inline: auto;
  color: #232629 !important;
  font-size: clamp(1rem, 1.35vw, 1.25rem);
}
.law-guide-tree .law-tree-entry {
  position: relative;
  display: grid;
  justify-items: center;
  gap: .5rem;
  width: min(420px, 100%);
  margin: 0 auto clamp(2rem, 4vw, 2.8rem);
  padding: clamp(1rem, 2vw, 1.5rem);
  background: rgba(250,250,248,.88) !important;
  border: 1px solid rgba(212,216,220,.9) !important;
  border-radius: 12px;
  color: #232629 !important;
  box-shadow: 0 18px 42px rgba(35,38,41,.14), inset 0 1px 0 rgba(255,255,255,.9);
}
.law-guide-tree .law-tree-entry::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  width: 1px;
  height: clamp(1.5rem, 3vw, 2.2rem);
  background: rgba(122,31,46,.34) !important;
}
.law-guide-tree .law-tree-entry::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -.42rem;
  z-index: 2;
  width: .82rem;
  height: .82rem;
  background: #B85A46 !important;
  transform: translateX(-50%) rotate(45deg);
  box-shadow: 0 0 0 4px rgba(255,255,255,.82);
}
.law-guide-tree .law-tree-entry-icon {
  width: 3.1rem;
  height: 3.1rem;
  color: #7A1F2E !important;
}
.law-guide-tree .law-tree-entry span:not(.law-tree-entry-icon) {
  color: #7A1F2E !important;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.law-guide-tree .law-tree-entry strong {
  color: #232629 !important;
  font-family: var(--serif-display);
  font-size: clamp(1.9rem, 3vw, 3rem);
  font-weight: 400;
  line-height: 1;
}
.law-guide-tree .law-specialty-paths {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 1.7vw, 1.35rem);
  max-width: none;
  margin: 0 auto clamp(1.35rem, 2.2vw, 1.7rem);
}
.law-guide-tree .law-specialty-paths::before {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  top: -1.65rem;
  height: 1px;
  background: linear-gradient(90deg, rgba(122,31,46,0), rgba(122,31,46,.26), rgba(122,31,46,0));
}
.law-guide-tree .law-specialty-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(8.5rem, .82fr);
  align-items: center;
  gap: clamp(.8rem, 1.2vw, 1.2rem);
  min-height: 14.4rem;
  padding: clamp(1.1rem, 1.7vw, 1.65rem);
  overflow: hidden;
  text-decoration: none;
  background: rgba(250,250,248,.9) !important;
  border: 1px solid rgba(212,216,220,.86) !important;
  border-radius: 10px;
  color: #232629 !important;
  box-shadow: 0 18px 42px rgba(35,38,41,.11), inset 0 1px 0 rgba(255,255,255,.86) !important;
  transition: transform 260ms ease, box-shadow 260ms ease, border-color 260ms ease;
}
.law-guide-tree .law-specialty-card::before {
  content: "";
  position: absolute;
  inset: .7rem;
  pointer-events: none;
  background:
    linear-gradient(rgba(122,31,46,.22), rgba(122,31,46,.22)) top left / 1.5rem 1px no-repeat,
    linear-gradient(rgba(122,31,46,.22), rgba(122,31,46,.22)) top left / 1px 1.5rem no-repeat,
    linear-gradient(rgba(122,31,46,.18), rgba(122,31,46,.18)) bottom right / 1.5rem 1px no-repeat,
    linear-gradient(rgba(122,31,46,.18), rgba(122,31,46,.18)) bottom right / 1px 1.5rem no-repeat;
  opacity: .9;
}
.law-specialty-copy {
  display: grid;
  gap: .65rem;
  min-width: 0;
}
.law-guide-tree .law-specialty-card .eyebrow {
  margin: 0;
  color: #7A1F2E !important;
  font-size: .72rem;
  letter-spacing: .16em;
}
.law-guide-tree .law-specialty-card h3 {
  margin: 0;
  color: #232629 !important;
  font-size: clamp(1.65rem, calc(2.45vw - var(--serif-trim)), 2.75rem) !important;
  line-height: .98 !important;
}
.law-guide-tree .law-specialty-card p:not(.eyebrow) {
  margin: 0;
  color: #3D4652 !important;
  font-size: clamp(.88rem, .96vw, 1rem);
  line-height: 1.48;
}
.law-guide-tree .law-specialty-card .text-link {
  align-self: end;
  color: #7A1F2E !important;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.law-guide-tree .law-specialty-card .text-link i {
  font-style: normal;
  transition: transform 260ms ease;
}
.law-specialty-image {
  position: relative;
  z-index: 1;
  margin: 0;
  min-height: 11.2rem;
  height: 100%;
  overflow: hidden;
  border: 1px solid rgba(212,216,220,.88);
  border-radius: 1.2rem 0 1.2rem 0;
  background: #D4D8DC;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.42);
}
.law-specialty-image img {
  width: 100%;
  height: 100%;
  min-height: 11.2rem;
  display: block;
  object-fit: cover;
  filter: grayscale(.12) saturate(.72) contrast(1.05) brightness(.9);
  transition: transform 320ms ease, filter 320ms ease;
}
.law-specialty-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(35,38,41,.08), rgba(122,31,46,.12));
  pointer-events: none;
}
.law-guide-tree .law-specialty-card:hover,
.law-guide-tree .law-specialty-card:focus-visible {
  transform: translateY(-4px);
  border-color: rgba(122,31,46,.48) !important;
  box-shadow: 0 26px 58px rgba(35,38,41,.16), 0 0 0 1px rgba(122,31,46,.16) !important;
}
.law-guide-tree .law-specialty-card:hover .text-link i,
.law-guide-tree .law-specialty-card:focus-visible .text-link i {
  transform: translateX(.3rem);
}
.law-guide-tree .law-specialty-card:hover .law-specialty-image img,
.law-guide-tree .law-specialty-card:focus-visible .law-specialty-image img {
  transform: scale(1.035);
  filter: grayscale(.05) saturate(.84) contrast(1.08) brightness(.98);
}
.law-guide-tree .law-tree-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(.8rem, 1.2vw, 1.15rem);
  align-items: stretch;
}
.law-guide-tree .law-tree-grid::before,
.law-guide-tree .law-tree-branch::before,
.law-tree-branch::after {
  display: none !important;
}
.law-guide-tree .law-tree-branch {
  min-width: 0;
}
.law-guide-tree .law-tree-card {
  position: relative;
  min-height: 13.2rem !important;
  height: 100%;
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  gap: .72rem;
  padding: clamp(.95rem, 1.4vw, 1.35rem) !important;
  overflow: hidden;
  background: rgba(250,250,248,.92) !important;
  border: 1px solid rgba(212,216,220,.92) !important;
  border-radius: 9px;
  color: #232629 !important;
  box-shadow: 0 14px 34px rgba(35,38,41,.1), inset 0 1px 0 rgba(255,255,255,.88) !important;
  transition: transform 260ms ease, box-shadow 260ms ease, border-color 260ms ease;
}
.law-guide-tree .law-tree-card::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: .42rem;
  background: linear-gradient(90deg, rgba(122,31,46,.72), rgba(122,31,46,.2));
}
.law-guide-tree .law-tree-number {
  width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #7A1F2E !important;
  background: rgba(255,255,255,.55) !important;
  border: 1px solid rgba(122,31,46,.26) !important;
  border-radius: 4px;
  font-family: var(--sans);
  font-size: .82rem;
  font-weight: 900;
}
.law-guide-tree .law-tree-icon {
  justify-self: center;
  width: clamp(3rem, 4.2vw, 4.9rem);
  height: clamp(3rem, 4.2vw, 4.9rem);
  color: #7A1F2E !important;
  opacity: .9;
}
.law-guide-tree .law-tree-icon svg {
  stroke-width: 1.35;
}
.law-guide-tree .law-tree-card h3 {
  margin: 0;
  color: #232629 !important;
  font-family: var(--serif-display);
  font-size: clamp(1.65rem, calc(2vw - var(--serif-trim)), 2.45rem) !important;
  font-weight: 400;
  line-height: .98;
}
.law-guide-tree .law-tree-card p {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
  color: #3D4652 !important;
  font-size: clamp(.9rem, .98vw, 1rem);
  line-height: 1.45;
}
.law-guide-tree .law-tree-select {
  align-self: end;
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #7A1F2E !important;
  font-size: 1.35rem;
  letter-spacing: 0;
  cursor: pointer;
}
.law-guide-tree .law-tree-select span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
.law-guide-tree .law-tree-select i {
  font-style: normal;
  transition: transform 260ms ease;
}
.law-guide-tree .law-tree-branch:hover .law-tree-card,
.law-guide-tree .law-tree-branch:focus-within .law-tree-card {
  transform: translateY(-4px);
  border-color: rgba(122,31,46,.48) !important;
  box-shadow: 0 22px 52px rgba(35,38,41,.16), 0 0 0 1px rgba(122,31,46,.14) !important;
}
.law-guide-tree .law-tree-branch:hover .law-tree-select i,
.law-guide-tree .law-tree-branch:focus-within .law-tree-select i {
  transform: translateX(.28rem);
}
.law-guide-tree .law-tree-next {
  display: grid !important;
  gap: .72rem;
  margin-top: .8rem;
  padding: clamp(.82rem, 1vw, 1rem);
  background: rgba(255,255,255,.82) !important;
  border: 1px solid rgba(212,216,220,.95) !important;
  border-radius: 9px;
  box-shadow: 0 14px 34px rgba(35,38,41,.07) !important;
}
.law-guide-tree .law-tree-branch.is-collapsed .law-tree-next {
  display: none !important;
}
.law-guide-tree .law-tree-next ul {
  display: grid;
  gap: .48rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.law-guide-tree .law-tree-next a:not(.text-link) {
  display: block;
  padding: .6rem .68rem;
  background: #F7F8F8 !important;
  border: 1px solid #D4D8DC !important;
  color: #232629 !important;
  text-decoration: none;
  line-height: 1.32;
}
.law-guide-tree .law-tree-next a:not(.text-link):hover,
.law-guide-tree .law-tree-next a:not(.text-link):focus-visible {
  background: rgba(122,31,46,.05) !important;
  border-color: #7A1F2E !important;
  color: #232629 !important;
}
.law-guide-tree .law-tree-articles-link {
  justify-self: start;
  color: #7A1F2E !important;
  font-weight: 800;
}
@media (max-width: 1180px) {
  .law-guide-tree .law-specialty-paths {
    grid-template-columns: 1fr;
  }
  .law-guide-tree .law-specialty-card {
    grid-template-columns: minmax(0, 1fr) minmax(10rem, .55fr);
  }
  .law-guide-tree .law-tree-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .law-guide-tree .law-tree {
    padding: 2rem .85rem 1.3rem;
  }
  .law-guide-tree .law-tree-heading h2 {
    font-size: clamp(3.1rem, 18vw, 4.3rem) !important;
  }
  .law-guide-tree .law-specialty-card {
    grid-template-columns: 1fr;
  }
  .law-specialty-image {
    min-height: 12rem;
  }
  .law-guide-tree .law-tree-grid {
    grid-template-columns: 1fr;
  }
  .law-guide-tree .law-tree-card {
    min-height: 11.2rem !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .law-guide-tree .law-specialty-card,
  .law-specialty-image img,
  .law-guide-tree .law-tree-card,
  .law-guide-tree .law-tree-select i {
    transition: none !important;
  }
  .law-guide-tree .law-specialty-card:hover,
  .law-guide-tree .law-specialty-card:focus-visible,
  .law-guide-tree .law-tree-branch:hover .law-tree-card,
  .law-guide-tree .law-tree-branch:focus-within .law-tree-card {
    transform: none;
  }
}

/* Law Guide spotlight correction: no random images, just the approved guided-path structure. */
.law-guide-tree .law-tree {
  background:
    radial-gradient(ellipse at 50% -7%, rgba(255,255,255,.98) 0%, rgba(255,255,255,.74) 13%, rgba(247,243,234,.18) 34%, rgba(247,243,234,0) 58%),
    radial-gradient(circle at 50% 0%, rgba(122,31,46,.08), rgba(122,31,46,0) 22rem),
    linear-gradient(180deg, #F7F3EA 0%, #FAFAF8 45%, #EFE6DB 100%) !important;
  border: 1px solid rgba(122,31,46,.14) !important;
  box-shadow: 0 34px 92px rgba(35,38,41,.1) !important;
}
.law-guide-tree .law-tree::before {
  background:
    radial-gradient(ellipse at 50% -6%, rgba(255,255,255,.92), rgba(255,255,255,0) 11rem),
    repeating-radial-gradient(ellipse at 50% 30%, rgba(255,255,255,.42) 0 1px, rgba(255,255,255,0) 1px 90px) !important;
}
.law-guide-tree .law-tree-heading {
  max-width: 980px;
  margin-bottom: clamp(1.2rem, 2.7vw, 2rem);
}
.law-guide-tree .law-tree-heading h2 {
  margin-top: .2rem;
}
.law-guide-tree .law-tree-entry {
  width: min(430px, 100%);
  margin-bottom: clamp(1.8rem, 3.4vw, 2.65rem);
  background:
    linear-gradient(180deg, rgba(255,255,255,.84), rgba(250,250,248,.94)),
    #FAFAF8 !important;
  border-color: rgba(212,216,220,.92) !important;
}
.law-guide-tree .law-specialty-paths {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 1.8vw, 1.45rem);
  margin-bottom: clamp(1.3rem, 2.8vw, 2.1rem);
}
.law-guide-tree .law-specialty-card {
  display: grid !important;
  grid-template-columns: 1fr !important;
  min-height: clamp(14rem, 17vw, 17rem);
  align-content: space-between;
  padding: clamp(1.25rem, 2vw, 1.85rem) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.83), rgba(250,247,241,.94)),
    #FAFAF8 !important;
  border: 1px solid rgba(212,216,220,.9) !important;
  border-radius: 12px;
  box-shadow:
    0 18px 44px rgba(35,38,41,.11),
    inset 0 1px 0 rgba(255,255,255,.9) !important;
}
.law-guide-tree .law-specialty-card::before {
  inset: .75rem;
  background:
    linear-gradient(rgba(122,31,46,.45), rgba(122,31,46,.45)) top left / 1.55rem 1px no-repeat,
    linear-gradient(rgba(122,31,46,.45), rgba(122,31,46,.45)) top left / 1px 1.55rem no-repeat,
    linear-gradient(rgba(212,216,220,.86), rgba(212,216,220,.86)) bottom right / 1.55rem 1px no-repeat,
    linear-gradient(rgba(212,216,220,.86), rgba(212,216,220,.86)) bottom right / 1px 1.55rem no-repeat !important;
}
.law-guide-tree .law-specialty-card::after {
  content: "";
  position: absolute;
  right: clamp(1rem, 2vw, 1.4rem);
  top: clamp(1rem, 2vw, 1.4rem);
  width: clamp(3.4rem, 7vw, 5.8rem);
  aspect-ratio: 1;
  border-radius: 50%;
  border: 1px solid rgba(122,31,46,.18);
  background:
    radial-gradient(circle at 50% 50%, rgba(122,31,46,.08), transparent 58%),
    radial-gradient(circle at 50% 50%, transparent 0 50%, rgba(212,216,220,.6) 51% 52%, transparent 53%);
  opacity: .82;
  pointer-events: none;
}
.law-specialty-copy {
  max-width: 31ch;
}
.law-guide-tree .law-specialty-card h3 {
  max-width: 12ch;
  color: #232629 !important;
  font-size: clamp(1.9rem, calc(2.6vw - var(--serif-trim)), 3rem) !important;
}
.law-guide-tree .law-specialty-card p:not(.eyebrow) {
  max-width: 32ch;
  color: #3D4652 !important;
}
.law-guide-tree .law-specialty-card .text-link {
  margin-top: .5rem;
  color: #7A1F2E !important;
}
.law-specialty-image,
.law-specialty-image img {
  display: none !important;
}
.law-guide-tree .law-tree-grid {
  margin-top: clamp(1rem, 2.4vw, 1.8rem);
}
@media (max-width: 980px) {
  .law-guide-tree .law-specialty-paths {
    grid-template-columns: 1fr;
  }
}

/* Editorial blog image-window cards. */
.knowledge-subway,
.knowledge-subway * {
  box-sizing: border-box;
}
.knowledge-subway {
  --map-bg: #07111A;
  --map-panel: rgba(18, 28, 37, .66);
  --map-panel-strong: rgba(23, 34, 44, .78);
  --map-border: rgba(247, 243, 234, .22);
  --map-ivory: #F7F3EA;
  --map-muted: rgba(247, 243, 234, .72);
  --map-oxblood: #B98590;
  --map-oxblood-deep: #7A1F2E;
  --map-slate: #9DA9B4;
  --map-champagne: #C8A46A;
  margin-top: clamp(1.5rem, 4vw, 3rem);
  color: var(--map-ivory);
}
.knowledge-subway-shell {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(.9rem, 1.4vw, 1.2rem);
  background:
    radial-gradient(circle at 56% 47%, rgba(185,133,144,.14), transparent 12rem),
    radial-gradient(circle at 78% 14%, rgba(200,164,106,.14), transparent 18rem),
    linear-gradient(135deg, rgba(4,11,18,.98), rgba(16,27,37,.96) 48%, rgba(7,13,19,.98));
  border: 1px solid rgba(247,243,234,.18);
  border-radius: 24px;
  box-shadow: 0 34px 90px rgba(7,13,19,.42);
}
.knowledge-subway-shell::before,
.knowledge-subway-shell::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
}
.knowledge-subway-shell::before {
  background:
    radial-gradient(circle at 72% 18%, rgba(185,133,144,.13), transparent 18rem),
    radial-gradient(circle at 50% 48%, rgba(247,243,234,.08), transparent 26rem),
    linear-gradient(135deg, rgba(7,17,26,.94), rgba(18,29,39,.9) 48%, rgba(7,13,19,.96));
  filter: blur(.6px);
  transform: scale(1.025);
}
.knowledge-subway-shell::after {
  background:
    radial-gradient(ellipse at 55% 48%, rgba(247,243,234,.08), transparent 25rem),
    repeating-radial-gradient(ellipse at 56% 48%, rgba(247,243,234,.055) 0 1px, transparent 1px 74px);
  opacity: .82;
}
.knowledge-subway-header {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(16rem, .9fr) minmax(0, 1.4fr) auto;
  gap: clamp(.8rem, 1.6vw, 1.4rem);
  align-items: center;
  padding: clamp(.7rem, 1.2vw, 1rem);
  border: 1px solid rgba(247,243,234,.16);
  border-radius: 18px;
  background: rgba(8, 17, 26, .62);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter: blur(18px) saturate(118%);
}
.knowledge-map-logo {
  display: inline-grid;
  grid-template-columns: auto 1fr;
  gap: .9rem;
  align-items: center;
  min-width: 0;
  color: var(--map-ivory);
  text-decoration: none;
}
.knowledge-map-logo img {
  width: clamp(8.5rem, 16vw, 15rem);
  height: auto;
  display: block;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: none !important;
}
.knowledge-map-logo span {
  color: var(--map-champagne);
  font-family: var(--sans);
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .04em;
}
.knowledge-map-nav {
  display: flex;
  justify-content: center;
  gap: clamp(.75rem, 2vw, 2rem);
  min-width: 0;
}
.knowledge-map-nav a,
.knowledge-help-button {
  color: rgba(247,243,234,.82);
  font-family: var(--sans);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .15em;
  text-transform: uppercase;
  text-decoration: none;
}
.knowledge-map-nav a:first-child {
  color: var(--map-oxblood);
  border-bottom: 1px solid var(--map-oxblood);
}
.knowledge-map-nav a:hover,
.knowledge-map-nav a:focus-visible,
.knowledge-help-button:hover,
.knowledge-help-button:focus-visible {
  color: var(--map-ivory);
  outline: 2px solid rgba(185,133,144,.42);
  outline-offset: 4px;
}
.knowledge-help-button {
  justify-self: end;
  padding: .95rem 1.2rem;
  color: var(--map-ivory);
  border: 1px solid rgba(185,133,144,.52);
  border-radius: 10px;
  background: rgba(122,31,46,.24);
  box-shadow: 0 0 22px rgba(185,133,144,.12), inset 0 1px 0 rgba(255,255,255,.1);
}
.knowledge-subway-stage {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(17rem, 21rem) minmax(0, 1fr);
  gap: clamp(.9rem, 1.6vw, 1.25rem);
  align-items: stretch;
  min-height: 46rem;
  padding-block: clamp(.9rem, 1.5vw, 1.2rem);
}
.knowledge-selected-panel,
.knowledge-map-legend {
  background: var(--map-panel);
  border: 1px solid var(--map-border);
  border-radius: 22px;
  box-shadow: 0 22px 60px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.11);
  backdrop-filter: blur(18px) saturate(122%);
}
.knowledge-selected-panel {
  display: grid;
  align-content: start;
  gap: .95rem;
  padding: clamp(1.1rem, 2vw, 1.6rem);
}
.knowledge-selected-panel .eyebrow,
.knowledge-map-legend .eyebrow,
.knowledge-directory-section .eyebrow {
  color: var(--map-champagne) !important;
}
.knowledge-selected-icon {
  width: 4.2rem;
  height: 4.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--map-oxblood);
  border: 1px solid rgba(185,133,144,.45);
  border-radius: 50%;
  box-shadow: 0 0 30px rgba(185,133,144,.18);
}
.knowledge-selected-panel h3 {
  margin: 0;
  color: var(--map-ivory);
  font-family: var(--serif-display);
  font-size: clamp(2.1rem, 3.2vw, 3.2rem);
  font-weight: 400;
  line-height: .96;
}
.knowledge-selected-tag {
  margin: .2rem 0 0;
  color: var(--map-champagne) !important;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.knowledge-selected-panel p:not(.eyebrow):not(.knowledge-selected-tag) {
  margin: 0;
  color: var(--map-muted);
  line-height: 1.55;
}
.knowledge-selected-panel .button {
  width: 100%;
  margin-top: .4rem;
  background: rgba(122,31,46,.42);
  border-color: rgba(185,133,144,.62);
  box-shadow: 0 0 22px rgba(185,133,144,.12);
}
.knowledge-popular-stations {
  padding-top: .8rem;
  border-top: 1px solid rgba(247,243,234,.12);
}
.knowledge-popular-stations ul {
  display: grid;
  gap: .55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.knowledge-popular-stations a,
.knowledge-view-all {
  color: rgba(247,243,234,.82);
  text-decoration: none;
}
.knowledge-popular-stations a:hover,
.knowledge-popular-stations a:focus-visible,
.knowledge-view-all:hover,
.knowledge-view-all:focus-visible {
  color: var(--map-ivory);
  outline: 2px solid rgba(185,133,144,.34);
  outline-offset: 3px;
}
.knowledge-view-all {
  align-self: end;
  padding-top: .85rem;
  border-top: 1px solid rgba(247,243,234,.12);
  color: var(--map-champagne);
  font-family: var(--sans);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.knowledge-map-canvas {
  position: relative;
  min-width: 0;
  min-height: 46rem;
  padding: clamp(1rem, 1.7vw, 1.45rem);
}
.knowledge-map-silhouette {
  position: absolute;
  inset: 11% 17% 13% 11%;
  border: 1px solid rgba(157,169,180,.12);
  background:
    linear-gradient(135deg, rgba(157,169,180,.08), rgba(247,243,234,.02)),
    repeating-linear-gradient(35deg, rgba(247,243,234,.035) 0 1px, transparent 1px 18px);
  clip-path: polygon(10% 28%, 24% 16%, 39% 21%, 52% 12%, 70% 22%, 88% 33%, 79% 51%, 91% 66%, 70% 74%, 56% 90%, 38% 80%, 20% 85%, 12% 68%, 4% 52%);
  opacity: .8;
}
.knowledge-map-hub {
  position: absolute;
  left: 50%;
  top: 48%;
  z-index: 3;
  display: grid;
  justify-items: center;
  gap: .45rem;
  transform: translate(-50%, -50%);
  color: var(--map-champagne);
  font-family: var(--serif-display);
  text-align: center;
  text-decoration: none;
}
.knowledge-map-hub span {
  width: 3.5rem;
  height: 3.5rem;
  border: 5px solid rgba(247,243,234,.86);
  border-radius: 50%;
  background: rgba(122,31,46,.74);
  box-shadow: 0 0 0 7px rgba(185,133,144,.18), 0 0 40px rgba(185,133,144,.42);
}
.knowledge-map-hub strong {
  max-width: 9rem;
  color: var(--map-champagne);
  font-size: 1.05rem;
  font-weight: 500;
  line-height: 1.05;
  text-transform: uppercase;
}
.knowledge-route-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(.8rem, 1.35vw, 1.15rem);
  min-height: 100%;
}
.knowledge-route {
  --route: var(--map-oxblood);
  --route-glow: rgba(185,133,144,.22);
  display: grid;
  align-content: start;
  gap: .55rem;
  min-width: 0;
  padding: .65rem;
  border-radius: 16px;
}
.knowledge-route.route-champagne {
  --route: var(--map-champagne);
  --route-glow: rgba(200,164,106,.22);
}
.knowledge-route.route-ivory {
  --route: rgba(247,243,234,.9);
  --route-glow: rgba(247,243,234,.18);
}
.knowledge-route.route-slate {
  --route: var(--map-slate);
  --route-glow: rgba(157,169,180,.18);
}
.knowledge-route-head {
  display: inline-grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .6rem;
  align-items: center;
  color: var(--map-ivory);
  text-decoration: none;
}
.knowledge-route-icon {
  width: 2.75rem;
  height: 2.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--route);
  border: 1px solid color-mix(in srgb, var(--route) 62%, transparent);
  border-radius: 50%;
  background: rgba(255,255,255,.05);
  box-shadow: 0 0 24px var(--route-glow);
}
.knowledge-route-head strong {
  color: color-mix(in srgb, var(--route) 44%, var(--map-ivory) 56%);
  font-family: var(--serif-display);
  font-size: clamp(1rem, 1.35vw, 1.35rem);
  font-weight: 500;
  line-height: 1.05;
  text-transform: uppercase;
}
.knowledge-route ul {
  position: relative;
  display: grid;
  gap: .44rem;
  margin: .1rem 0 0 1.32rem;
  padding: 0 0 0 1.2rem;
  list-style: none;
}
.knowledge-route ul::before {
  content: "";
  position: absolute;
  left: .02rem;
  top: .55rem;
  bottom: .55rem;
  width: 2px;
  background: linear-gradient(var(--route), rgba(247,243,234,.38));
  box-shadow: 0 0 14px var(--route-glow);
}
.knowledge-route a {
  color: rgba(247,243,234,.82);
}
.knowledge-route li a {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .5rem;
  align-items: center;
  min-width: 0;
  color: rgba(247,243,234,.82);
  font-size: clamp(.77rem, .9vw, .92rem);
  line-height: 1.22;
  text-decoration: none;
}
.knowledge-station-node {
  width: .85rem;
  height: .85rem;
  margin-left: -.18rem;
  border: 2px solid var(--route);
  border-radius: 50%;
  background: var(--map-bg);
  box-shadow: 0 0 0 2px rgba(247,243,234,.18), 0 0 12px var(--route-glow);
}
.knowledge-route a:hover,
.knowledge-route a:focus-visible {
  color: var(--map-ivory);
  outline: 2px solid color-mix(in srgb, var(--route) 45%, transparent);
  outline-offset: 4px;
}
.knowledge-route a:hover .knowledge-station-node,
.knowledge-route a:focus-visible .knowledge-station-node {
  background: var(--route);
  box-shadow: 0 0 0 3px rgba(247,243,234,.2), 0 0 18px var(--route-glow);
}
.knowledge-map-legend {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(16rem, .65fr) minmax(12rem, .42fr);
  gap: clamp(1rem, 2vw, 1.5rem);
  align-items: center;
  padding: clamp(1rem, 1.7vw, 1.35rem);
}
.knowledge-legend-swatches {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .45rem .9rem;
}
.knowledge-legend-swatches a,
.knowledge-legend-symbols span {
  display: inline-flex;
  gap: .55rem;
  align-items: center;
  color: rgba(247,243,234,.72);
  text-decoration: none;
  font-size: .78rem;
}
.knowledge-legend-swatches span {
  width: 1.2rem;
  height: .42rem;
  border-radius: 999px;
  background: var(--map-oxblood);
  box-shadow: 0 0 12px rgba(185,133,144,.24);
}
.knowledge-legend-swatches .route-champagne span {
  background: var(--map-champagne);
}
.knowledge-legend-swatches .route-ivory span {
  background: rgba(247,243,234,.84);
}
.knowledge-legend-swatches .route-slate span {
  background: var(--map-slate);
}
.knowledge-legend-symbols {
  display: grid;
  gap: .55rem;
  padding-inline: clamp(.8rem, 2vw, 1.2rem);
  border-inline: 1px solid rgba(247,243,234,.14);
}
.knowledge-legend-symbols i {
  display: inline-block;
  border-radius: 50%;
  background: transparent;
}
.knowledge-legend-symbols .interchange {
  width: 1.35rem;
  height: 1.35rem;
  border: 4px solid rgba(185,133,144,.9);
  box-shadow: 0 0 14px rgba(185,133,144,.24);
}
.knowledge-legend-symbols .major {
  width: 1.15rem;
  height: 1.15rem;
  border: 2px solid rgba(247,243,234,.88);
}
.knowledge-legend-symbols .station {
  width: .8rem;
  height: .8rem;
  border: 2px solid var(--map-champagne);
}
.knowledge-map-controls {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  justify-content: end;
}
.knowledge-map-controls .eyebrow {
  flex-basis: 100%;
  text-align: right;
}
.knowledge-map-controls button {
  width: 2.5rem;
  height: 2.5rem;
  border: 1px solid rgba(200,164,106,.48);
  border-radius: 50%;
  background: rgba(255,255,255,.04);
  color: var(--map-champagne);
}
.knowledge-map-directory {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .9rem;
  margin-top: 1rem;
}
.knowledge-directory-section {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1fr);
  gap: .8rem;
  padding: 1rem;
  background: rgba(250,250,248,.94);
  border: 1px solid rgba(212,216,220,.86);
  border-radius: 10px;
}
.knowledge-directory-section h3 {
  margin: 0;
  color: #232629;
  font-family: var(--serif-display);
  font-size: clamp(1.45rem, 2vw, 2.25rem);
  font-weight: 500;
}
.knowledge-directory-section p:not(.eyebrow) {
  margin: .35rem 0 0;
  color: #3D4652;
  line-height: 1.45;
}
.knowledge-directory-section ul {
  display: grid;
  gap: .4rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.knowledge-directory-section a {
  color: #7A1F2E;
  font-weight: 700;
  text-decoration: none;
}
.knowledge-directory-section a:hover,
.knowledge-directory-section a:focus-visible {
  color: #5F1724;
  text-decoration: underline;
}
@media (max-width: 1180px) {
  .knowledge-subway-header {
    grid-template-columns: 1fr auto;
  }
  .knowledge-map-nav {
    grid-column: 1 / -1;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: .2rem;
  }
  .knowledge-subway-stage {
    grid-template-columns: 1fr;
  }
  .knowledge-map-canvas {
    min-height: 0;
  }
  .knowledge-route-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .knowledge-map-hub {
    position: relative;
    inset: auto;
    margin: 0 auto 1rem;
    transform: none;
  }
  .knowledge-map-legend {
    grid-template-columns: 1fr;
  }
  .knowledge-map-controls,
  .knowledge-map-controls .eyebrow {
    justify-content: start;
    text-align: left;
  }
}
@media (max-width: 720px) {
  .knowledge-subway-shell {
    border-radius: 16px;
    padding: .7rem;
  }
  .knowledge-subway-header {
    grid-template-columns: 1fr;
  }
  .knowledge-help-button {
    justify-self: stretch;
    text-align: center;
  }
  .knowledge-route-grid,
  .knowledge-map-directory,
  .knowledge-directory-section,
  .knowledge-legend-swatches {
    grid-template-columns: 1fr;
  }
  .knowledge-subway-stage {
    min-height: 0;
  }
  .knowledge-map-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .65rem;
  }
  .knowledge-map-nav a {
    white-space: nowrap;
  }
}
@media (prefers-reduced-motion: reduce) {
  .knowledge-route a,
  .knowledge-help-button,
  .knowledge-map-controls button {
    transition: none !important;
  }
}

.editorial-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 1.8vw, 1.45rem);
}
.editorial-blog-card {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(9.25rem, .9fr) minmax(0, 1.12fr);
  gap: clamp(1rem, 1.6vw, 1.45rem);
  min-height: 20rem;
  padding: clamp(.72rem, 1vw, .95rem);
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(250,250,248,.9)),
    #FFFFFF;
  border: 1px solid #D4D8DC;
  color: #232629;
  text-decoration: none;
  box-shadow:
    0 20px 44px rgba(35,38,41,.08),
    inset 0 1px 0 rgba(255,255,255,.86);
  transition:
    transform 250ms ease,
    border-color 250ms ease,
    box-shadow 250ms ease,
    background-color 250ms ease;
}
.editorial-blog-card::before,
.editorial-blog-card::after {
  content: "";
  position: absolute;
  pointer-events: none;
}
.editorial-blog-card::before {
  inset: .62rem;
  z-index: 2;
  background:
    linear-gradient(#D4D8DC, #D4D8DC) top left / 1.4rem 1px no-repeat,
    linear-gradient(#D4D8DC, #D4D8DC) top left / 1px 1.4rem no-repeat,
    linear-gradient(#D4D8DC, #D4D8DC) bottom right / 1.4rem 1px no-repeat,
    linear-gradient(#D4D8DC, #D4D8DC) bottom right / 1px 1.4rem no-repeat;
  transition: background 250ms ease;
}
.editorial-blog-card::after {
  right: -8%;
  top: -18%;
  z-index: -1;
  width: 42%;
  height: 78%;
  background: radial-gradient(circle, rgba(122,31,46,.12), rgba(122,31,46,0) 68%);
  opacity: .56;
}
.blog-card-image-window {
  position: relative;
  min-height: 100%;
  margin: 0;
  overflow: hidden;
  background: #232629;
  border: 1px solid rgba(61,70,82,.34);
  border-radius: 0 1.45rem 0 0;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}
.blog-card-image-window img {
  width: 100%;
  height: 100%;
  min-height: 18.5rem;
  display: block;
  object-fit: cover;
  filter: grayscale(.24) saturate(.72) contrast(1.08) brightness(.72);
  transform: scale(1.015);
  transition: transform 320ms ease, filter 320ms ease;
}
.blog-card-image-window::before,
.blog-card-image-window::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.blog-card-image-window::before {
  z-index: 1;
  background:
    linear-gradient(135deg, rgba(35,38,41,.34), rgba(122,31,46,.18)),
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.18), rgba(255,255,255,0) 46%);
}
.blog-card-image-window::after {
  z-index: 2;
  left: auto;
  right: -1px;
  width: 28%;
  background: linear-gradient(135deg, rgba(255,255,255,0) 0 48%, #FFFFFF 49% 100%);
  opacity: .96;
}
.editorial-blog-card[data-blog-visual="dossier"] .blog-card-image-window::before {
  background:
    repeating-linear-gradient(150deg, rgba(255,255,255,.1) 0 1px, rgba(255,255,255,0) 1px 13px),
    linear-gradient(135deg, rgba(35,38,41,.24), rgba(122,31,46,.18));
}
.editorial-blog-card[data-blog-visual="road"] .blog-card-image-window::before {
  background:
    linear-gradient(90deg, rgba(35,38,41,.78), rgba(35,38,41,.16)),
    linear-gradient(135deg, rgba(122,31,46,.14), rgba(255,255,255,0));
}
.editorial-blog-card[data-blog-visual="tech"] .blog-card-image-window::before {
  background:
    linear-gradient(90deg, rgba(35,38,41,.56), rgba(61,70,82,.2)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.09) 0 1px, rgba(255,255,255,0) 1px 18px);
}
.blog-card-copy {
  align-self: center;
  display: grid;
  gap: .8rem;
  padding: clamp(1.05rem, 1.9vw, 1.75rem) clamp(.8rem, 1.4vw, 1.2rem) clamp(.95rem, 1.7vw, 1.35rem) 0;
}
.blog-card-copy span {
  color: #7A1F2E;
  font-family: var(--sans);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.blog-card-copy h3 {
  margin: 0;
  color: #232629;
  font-family: var(--serif-display);
  font-size: clamp(1.6rem, calc(2.4vw - var(--serif-trim)), 2.45rem);
  font-weight: 500;
  line-height: .98;
  letter-spacing: 0;
}
.blog-card-copy p {
  margin: 0;
  color: #3D4652;
  font-family: var(--sans);
  font-size: .98rem;
  line-height: 1.58;
}
.blog-card-copy strong {
  align-self: end;
  display: inline-flex;
  gap: .55rem;
  align-items: center;
  margin-top: .35rem;
  color: #7A1F2E;
  font-family: var(--sans);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.blog-card-copy strong i {
  font-style: normal;
  transition: transform 250ms ease;
}
.editorial-blog-card:hover,
.editorial-blog-card:focus-visible {
  transform: translateY(-5px);
  border-color: #AEB8C1;
  box-shadow:
    0 28px 62px rgba(35,38,41,.14),
    0 0 0 1px rgba(122,31,46,.14),
    inset 0 1px 0 rgba(255,255,255,.92);
}
.editorial-blog-card:hover::before,
.editorial-blog-card:focus-visible::before {
  background:
    linear-gradient(#7A1F2E, #7A1F2E) top left / 1.65rem 1px no-repeat,
    linear-gradient(#7A1F2E, #7A1F2E) top left / 1px 1.65rem no-repeat,
    linear-gradient(#7A1F2E, #7A1F2E) bottom right / 1.65rem 1px no-repeat,
    linear-gradient(#7A1F2E, #7A1F2E) bottom right / 1px 1.65rem no-repeat;
}
.editorial-blog-card:hover .blog-card-image-window img,
.editorial-blog-card:focus-visible .blog-card-image-window img {
  filter: grayscale(.12) saturate(.84) contrast(1.12) brightness(.84);
  transform: scale(1.06);
}
.editorial-blog-card:hover .blog-card-copy strong i,
.editorial-blog-card:focus-visible .blog-card-copy strong i {
  transform: translateX(.28rem);
}
@media (max-width: 1120px) {
  .editorial-blog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .editorial-blog-card {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .blog-card-image-window {
    min-height: 14rem;
    border-radius: 0 1.2rem 0 0;
  }
  .blog-card-image-window img {
    min-height: 14rem;
  }
  .blog-card-image-window::after {
    top: auto;
    bottom: -1px;
    right: -1px;
    width: 32%;
    height: 36%;
  }
  .blog-card-copy {
    padding: .35rem clamp(.8rem, 2.5vw, 1.25rem) clamp(.8rem, 2vw, 1.1rem);
  }
}
@media (max-width: 680px) {
  .editorial-blog-grid {
    grid-template-columns: 1fr;
  }
  .editorial-blog-card {
    min-height: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .editorial-blog-card,
  .blog-card-image-window img,
  .blog-card-copy strong i {
    transition: none !important;
  }
  .editorial-blog-card:hover,
  .editorial-blog-card:focus-visible {
    transform: none;
  }
}

/* AI letterhead stationery treatment. */
.ai-letter-section {
  background:
    radial-gradient(circle at 18% 8%, rgba(255,255,255,.82), rgba(255,255,255,0) 34rem),
    linear-gradient(180deg, #F3F4F5 0%, #F2EDE4 100%) !important;
  color: #232629 !important;
  padding-block: clamp(3.5rem, 7vw, 7rem);
}
.ai-letter-card {
  position: relative;
  isolation: isolate;
  width: min(980px, 100%);
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: clamp(1.7rem, 4vw, 4.2rem) clamp(1.35rem, 5vw, 5rem) clamp(1.6rem, 4vw, 3rem) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(250,250,248,.98)),
    #FFFFFF !important;
  border: 1px solid #D4D8DC !important;
  color: #232629 !important;
  box-shadow:
    0 38px 90px rgba(35,38,41,.13),
    0 2px 10px rgba(35,38,41,.04) !important;
}
.ai-letter-card:before {
  content: "K";
  position: absolute;
  right: clamp(1.2rem, 5vw, 4.5rem);
  top: 47%;
  z-index: -1;
  color: #232629;
  font-family: var(--serif-display);
  font-size: clamp(16rem, 34vw, 30rem);
  font-weight: 400;
  line-height: .68;
  opacity: .025;
  pointer-events: none;
}
.ai-letter-card:after {
  content: "";
  position: absolute;
  inset: clamp(.8rem, 1.5vw, 1.25rem);
  z-index: -1;
  border: 1px solid rgba(212,216,220,.62);
  pointer-events: none;
}
.ai-letterhead {
  display: grid;
  grid-template-columns: minmax(9rem, 15rem) minmax(12rem, 1fr);
  gap: clamp(1.4rem, 3vw, 2.5rem);
  align-items: start;
  padding-bottom: clamp(1.1rem, 2vw, 1.45rem);
  border-bottom: 2px solid #7A1F2E;
}
.ai-letterhead-logo img {
  width: min(13rem, 42vw);
  height: auto;
  filter: none !important;
  opacity: 1 !important;
}
.ai-letterhead-contact {
  display: grid;
  gap: .22rem;
  justify-items: end;
  margin: 0;
  color: #3D4652;
  font-style: normal;
  font-family: var(--sans);
  font-size: .84rem;
  line-height: 1.45;
  text-align: right;
}
.ai-letterhead-contact strong {
  color: #232629;
  font-family: var(--serif-display);
  font-size: clamp(1.35rem, 2.2vw, 2rem);
  font-weight: 500;
  line-height: 1;
}
.ai-letterhead-contact a {
  color: #3D4652;
  text-decoration: none;
}
.ai-letterhead-contact a:hover,
.ai-letterhead-contact a:focus-visible {
  color: #7A1F2E;
}
.ai-letter-title {
  display: grid;
  gap: .65rem;
  margin: clamp(2rem, 4vw, 3.6rem) 0 clamp(1.3rem, 3vw, 2rem);
}
.ai-letter-title .eyebrow {
  margin: 0;
  color: #7A1F2E !important;
}
.ai-letter-title time {
  color: #5E666F;
  font-family: var(--sans);
  font-size: .88rem;
}
.ai-letter-card h2,
.ai-letter-title h2 {
  max-width: 760px !important;
  margin: 0 !important;
  color: #232629 !important;
  font-family: var(--serif-display);
  font-size: clamp(2.25rem, calc(4.35vw - var(--serif-trim)), 4.95rem) !important;
  font-weight: 400;
  line-height: .98;
}
.ai-letter-body {
  position: relative;
  max-width: 74ch !important;
  color: #3D4652;
}
.ai-letter-body p {
  margin: 0 0 1.18rem !important;
  color: #3D4652 !important;
  font-size: clamp(1rem, 1.05vw, 1.08rem) !important;
  line-height: 1.84 !important;
}
.ai-letter-body .ai-letter-salutation {
  margin-bottom: 1.35rem !important;
  color: #232629 !important;
}
.ai-letter-pullquote {
  max-width: 56ch;
  margin: clamp(1.6rem, 3vw, 2.35rem) 0 !important;
  padding: clamp(1rem, 2vw, 1.45rem) clamp(1rem, 2vw, 1.6rem);
  border-left: 3px solid #7A1F2E;
  background: #FAFAF8;
  color: #232629;
  font-family: var(--serif-display);
  font-size: clamp(1.45rem, 2vw, 2rem);
  font-weight: 500;
  line-height: 1.2;
}
.ai-letter-signature {
  display: grid;
  justify-items: start;
  gap: .25rem;
  max-width: 74ch;
  margin-top: clamp(1.9rem, 3vw, 2.7rem) !important;
  padding-top: clamp(1.15rem, 2vw, 1.7rem) !important;
  border-top: 1px solid #D4D8DC !important;
}
.ai-letter-closing {
  margin-bottom: .45rem;
  color: #3D4652 !important;
  font-family: var(--sans) !important;
  font-size: 1rem !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.ai-letter-signature img {
  width: min(320px, 72vw) !important;
  height: auto !important;
  margin: 0 0 .1rem !important;
  filter: none !important;
}
.ai-letter-signature strong {
  color: #232629 !important;
  font-family: var(--serif-display);
  font-size: clamp(1.5rem, 2.2vw, 2.1rem) !important;
  font-weight: 500;
  line-height: 1;
}
.ai-letter-signature span:not(.ai-letter-closing) {
  color: #5E666F !important;
  font-family: var(--sans);
  font-size: .78rem !important;
  font-weight: 650;
  letter-spacing: .12em;
  line-height: 1.25;
  text-transform: uppercase;
}
.ai-letter-footer {
  margin-top: clamp(2rem, 4vw, 3.25rem);
  padding-top: 1rem;
  border-top: 1px solid #D4D8DC;
  color: #5E666F;
  font-family: var(--sans);
  font-size: .76rem;
  letter-spacing: .08em;
  line-height: 1.5;
  text-transform: uppercase;
}
@media (max-width: 700px) {
  .ai-letter-card {
    padding: 1.25rem 1.05rem 1.4rem !important;
  }
  .ai-letter-card:after {
    inset: .55rem;
  }
  .ai-letterhead {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .ai-letterhead-contact {
    justify-items: start;
    text-align: left;
  }
  .ai-letterhead-logo img {
    width: min(11rem, 60vw);
  }
  .ai-letter-card h2,
  .ai-letter-title h2 {
    font-size: clamp(2rem, 10vw, 3.2rem) !important;
  }
}

/* AI letterhead stationery final pass. */
.ai-letter-section {
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.78), rgba(255,255,255,0) 34rem),
    radial-gradient(circle at 12% 18%, rgba(122,31,46,.035), rgba(122,31,46,0) 26rem),
    linear-gradient(180deg, #E9E5DD 0%, #DCD6CC 100%) !important;
  padding: clamp(3.4rem, 6.6vw, 6.8rem) clamp(1rem, 3vw, 2rem) !important;
}
.ai-letter-card {
  width: min(980px, 100%) !important;
  max-width: 980px !important;
  min-height: 0;
  padding: clamp(2.4rem, 5vw, 5.1rem) clamp(1.65rem, 5.5vw, 5.6rem) clamp(3.35rem, 5.4vw, 5rem) !important;
  background:
    linear-gradient(165deg, rgba(255,253,247,.75) 0%, rgba(247,242,230,0) 38%),
    repeating-linear-gradient(90deg, rgba(120,105,75,.05) 0, rgba(120,105,75,.05) 1px, transparent 1px, transparent 5px),
    repeating-linear-gradient(0deg, rgba(120,105,75,.045) 0, rgba(120,105,75,.045) 1px, transparent 1px, transparent 24px),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.04'/%3E%3C/svg%3E"),
    linear-gradient(165deg, #FBF7EE 0%, #F7F1E4 52%, #EFE6D2 100%) !important;
  background-size: auto;
  border: 1px solid rgba(150,135,100,.18) !important;
  box-shadow:
    0 52px 105px rgba(60,50,30,.22),
    0 12px 26px rgba(60,50,30,.12),
    inset 0 0 0 1px rgba(150,135,100,.12),
    inset 0 0 74px rgba(160,140,100,.06) !important;
}
.ai-letter-card:before {
  right: clamp(2.5rem, 8vw, 7rem);
  top: clamp(20rem, 31vw, 27rem);
  font-size: clamp(12rem, 25vw, 21rem);
  color: #232629;
  opacity: .01;
}
.ai-letter-card:after {
  content: "";
  position: absolute;
  inset: clamp(.8rem, 1.5vw, 1.25rem);
  z-index: -1;
  border: 1px solid rgba(150,135,100,.14);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.38),
    inset 0 0 32px rgba(160,140,100,.045);
  pointer-events: none;
}
.ai-letterhead {
  grid-template-columns: minmax(11rem, 15rem) minmax(14rem, 1fr);
  align-items: center;
  padding-bottom: clamp(1.2rem, 2vw, 1.55rem);
  border-bottom: 1.5px solid #7A1F2E;
}
.ai-letterhead-logo img {
  width: min(13.2rem, 42vw) !important;
  background: transparent !important;
}
.ai-letterhead-contact {
  gap: .32rem;
  color: #232629;
  font-family: Georgia, "Times New Roman", serif;
  font-size: .94rem;
  line-height: 1.35;
}
.ai-letterhead-contact strong {
  margin-bottom: .12rem;
  font-family: var(--sans);
  color: #232629;
  font-size: clamp(1rem, 1.5vw, 1.3rem) !important;
  font-weight: 700;
  letter-spacing: .34em;
  text-transform: uppercase;
}
.ai-letterhead-contact span:first-of-type {
  color: #7A1F2E;
}
.ai-letterhead-contact a {
  color: #232629;
}
.ai-letter-title {
  gap: .72rem;
  margin: clamp(2.45rem, 4.4vw, 3.65rem) 0 clamp(1.35rem, 2.2vw, 1.85rem);
}
.ai-letter-title .eyebrow {
  color: #7A1F2E !important;
  letter-spacing: .24em;
}
.ai-letter-title time {
  margin-top: .1rem;
  color: #3D4652;
  font-family: Georgia, "Times New Roman", serif;
}
.ai-letter-card h2,
.ai-letter-title h2 {
  max-width: 650px !important;
  color: #20252A !important;
  font-size: clamp(3rem, calc(5.7vw - var(--serif-trim)), 5.85rem) !important;
  line-height: .94 !important;
  letter-spacing: 0;
}
.ai-letter-body {
  position: relative;
  z-index: 1;
  max-width: 76ch !important;
}
.ai-letter-body p {
  color: #101418 !important;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1rem, 1.08vw, 1.08rem) !important;
  line-height: 1.62 !important;
  margin-bottom: 1.12rem !important;
}
.ai-letter-body .ai-letter-salutation {
  color: #101418 !important;
  font-weight: 500;
}
.ai-letter-pullquote {
  position: relative;
  max-width: 58ch;
  margin: clamp(1.45rem, 2.8vw, 2.1rem) auto !important;
  padding: clamp(.9rem, 1.8vw, 1.25rem) clamp(2rem, 4vw, 4rem);
  border: 0 !important;
  border-top: 1px solid rgba(122,31,46,.58) !important;
  border-bottom: 1px solid rgba(122,31,46,.58) !important;
  background: transparent !important;
  color: #7A1F2E !important;
  font-family: var(--serif-display);
  font-size: clamp(1.38rem, 2vw, 2.05rem);
  font-style: italic;
  line-height: 1.16;
  text-align: center;
}
.ai-letter-pullquote:before,
.ai-letter-pullquote:after {
  position: absolute;
  color: #7A1F2E;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2rem, 3vw, 3rem);
  line-height: 1;
}
.ai-letter-pullquote:before {
  content: "\201C";
  top: -.1rem;
  left: clamp(.45rem, 2vw, 1.55rem);
}
.ai-letter-pullquote:after {
  content: "\201D";
  right: clamp(.45rem, 2vw, 1.55rem);
  bottom: -.72rem;
}
.ai-letter-signature {
  max-width: 76ch;
  margin-top: clamp(1.35rem, 2.4vw, 2rem) !important;
  padding-top: 0 !important;
  border-top: 0 !important;
  gap: .08rem;
}
.ai-letter-closing {
  margin-bottom: .18rem;
  color: #101418 !important;
  font-family: Georgia, "Times New Roman", serif !important;
}
.ai-letter-signature img {
  width: min(285px, 66vw) !important;
}
.ai-letter-signature strong {
  color: #101418 !important;
  font-family: var(--sans);
  font-size: .86rem !important;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.ai-letter-signature span:not(.ai-letter-closing) {
  color: #101418 !important;
  font-family: Georgia, "Times New Roman", serif;
  font-size: .9rem !important;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}
.ai-letter-wax-seal {
  position: absolute;
  right: clamp(1.2rem, 3.4vw, 2.35rem);
  bottom: clamp(4.25rem, 6.4vw, 5.85rem);
  z-index: 4;
  display: block;
  width: clamp(7.4rem, 12.5vw, 10.6rem);
  max-width: 28vw;
  height: auto;
  filter:
    drop-shadow(0 12px 18px rgba(45,15,12,.42))
    drop-shadow(0 2px 2px rgba(255,255,255,.18));
  pointer-events: none;
  user-select: none;
}
.ai-letter-footer {
  max-width: 68ch;
  margin: clamp(2.2rem, 4vw, 3rem) auto 0;
  padding-top: 1rem;
  border-top: 0 !important;
  color: #101418;
  font-family: var(--sans);
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .18em;
  text-align: center;
}
@media (max-width: 700px) {
  .ai-letter-section {
    padding: 1.2rem .6rem !important;
  }
  .ai-letter-card {
    min-height: 0;
    padding: 1.35rem 1.05rem 5.8rem !important;
  }
  .ai-letterhead {
    grid-template-columns: 1fr;
    align-items: start;
  }
  .ai-letterhead-contact {
    justify-items: start;
    text-align: left;
  }
  .ai-letter-title h2 {
    font-size: clamp(2.35rem, 12vw, 3.5rem) !important;
  }
  .ai-letter-pullquote {
    padding-inline: 1.5rem;
  }
  .ai-letter-wax-seal {
    right: 1rem;
    bottom: 6.75rem;
    width: 96px;
    max-width: 34vw;
  }
  .ai-letter-footer {
    text-align: left;
  }
}

/* AI letterhead target-match override. */
.ai-letter-section {
  background:
    radial-gradient(120% 70% at 50% 0%, #F4F4F4 0%, #F2EDE4 46%, #DFE1E3 86%, #D1D5D8 100%) !important;
  color: #232629 !important;
  padding: clamp(3rem, 5.5vw, 4.8rem) clamp(1rem, 3vw, 1.4rem) clamp(4.5rem, 7vw, 6rem) !important;
}
.ai-letter-card {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  width: min(850px, 100%) !important;
  max-width: 850px !important;
  margin: 0 auto !important;
  padding: clamp(2.25rem, 5vw, 3.75rem) clamp(1.75rem, 6vw, 4.375rem) 0 !important;
  border: 0 !important;
  border-radius: 2px !important;
  color: #232629 !important;
  background:
    linear-gradient(165deg, rgba(255,253,247,.6) 0%, rgba(247,242,230,0) 38%),
    repeating-linear-gradient(90deg, rgba(120,105,75,.04) 0, rgba(120,105,75,.04) 1px, transparent 1px, transparent 4px),
    repeating-linear-gradient(0deg, rgba(120,105,75,.045) 0, rgba(120,105,75,.045) 1px, transparent 1px, transparent 26px),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.04'/%3E%3C/svg%3E"),
    linear-gradient(165deg, #FAF6EC 0%, #F7F2E6 50%, #EFE8D6 100%) !important;
  box-shadow:
    0 1px 1px rgba(60,50,30,.1),
    0 4px 10px rgba(60,50,30,.13),
    0 30px 70px rgba(45,40,25,.3),
    inset 0 0 0 1px rgba(150,135,100,.12),
    inset 0 0 60px rgba(160,140,100,.05) !important;
}
.ai-letter-card:before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: clamp(15rem, 24vw, 22rem) !important;
  right: clamp(.5rem, 4vw, 3rem) !important;
  z-index: 0 !important;
  width: clamp(13rem, 33vw, 21rem) !important;
  aspect-ratio: 1 !important;
  background: url("../keil-defense-logo-transparent.png") center / contain no-repeat !important;
  opacity: .045 !important;
  pointer-events: none !important;
}
.ai-letter-card:after {
  border: 0 !important;
  box-shadow: inset 0 0 0 1px rgba(150,135,100,.12), inset 0 0 60px rgba(160,140,100,.05) !important;
}
.ai-letterhead {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1.5rem !important;
  padding-bottom: 1.5rem !important;
  border-bottom: 1.5px solid #232629 !important;
}
.ai-letterhead-logo img {
  width: min(178px, 42vw) !important;
  margin-left: -.35rem !important;
  background: transparent !important;
  filter: none !important;
}
.ai-letterhead-contact {
  display: grid !important;
  justify-items: end !important;
  gap: .28rem !important;
  color: #3D4652 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: .97rem !important;
  line-height: 1.35 !important;
  text-align: right !important;
}
.ai-letterhead-contact strong {
  color: #232629 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(1.35rem, 2.5vw, 1.7rem) !important;
  font-variant: small-caps !important;
  font-weight: 500 !important;
  letter-spacing: .18em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}
.ai-letterhead-contact span:first-of-type {
  margin: .1rem 0 .45rem !important;
  color: #7A1F2E !important;
  font-family: var(--serif-display) !important;
  font-style: italic !important;
  font-size: 1.12rem !important;
  font-weight: 600 !important;
}
.ai-letterhead-contact a,
.ai-letterhead-contact span {
  color: #3D4652 !important;
}
.ai-letter-title {
  position: relative !important;
  z-index: 2 !important;
  margin: clamp(2.6rem, 5vw, 3.1rem) 0 clamp(1.7rem, 3.5vw, 2.25rem) !important;
}
.ai-letter-title .eyebrow {
  margin-bottom: 1rem !important;
  color: #7A1F2E !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  letter-spacing: .3em !important;
}
.ai-letter-title h2,
.ai-letter-card h2 {
  max-width: 62% !important;
  color: #232629 !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(3rem, calc(5.4vw - var(--serif-trim)), 3.75rem) !important;
  font-weight: 600 !important;
  line-height: 1.03 !important;
  letter-spacing: 0 !important;
}
.ai-letter-title time {
  color: #8A806F !important;
  font-family: var(--serif-display) !important;
  font-size: 1.28rem !important;
}
.ai-letter-body {
  position: relative !important;
  z-index: 2 !important;
  max-width: none !important;
}
.ai-letter-body p {
  color: #232629 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(1.02rem, 1.35vw, 1.125rem) !important;
  line-height: 1.64 !important;
  margin-bottom: 1.3rem !important;
  text-align: justify !important;
}
.ai-letter-body .ai-letter-salutation {
  color: #232629 !important;
  font-style: italic !important;
}
.ai-letter-pullquote {
  position: relative !important;
  z-index: 2 !important;
  max-width: 80% !important;
  margin: clamp(2rem, 4vw, 2.5rem) auto clamp(1.9rem, 4vw, 2.4rem) !important;
  padding: 1rem 0 !important;
  border: 0 !important;
  border-top: 1px solid rgba(122,31,46,.5) !important;
  border-bottom: 1px solid rgba(122,31,46,.5) !important;
  background: transparent !important;
  color: #7A1F2E !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(1.55rem, 2.8vw, 1.85rem) !important;
  font-style: italic !important;
  font-weight: 600 !important;
  line-height: 1.32 !important;
  text-align: center !important;
}
.ai-letter-signature {
  position: relative !important;
  z-index: 2 !important;
  max-width: none !important;
  margin-top: 2rem !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}
.ai-letter-closing {
  color: #232629 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1.12rem !important;
  font-style: italic !important;
}
.ai-letter-signature img {
  width: auto !important;
  height: 70px !important;
  max-width: min(300px, 70vw) !important;
  margin: .35rem 0 .25rem !important;
  filter: none !important;
}
.ai-letter-signature strong {
  color: #232629 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1rem !important;
  font-variant: small-caps !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}
.ai-letter-signature span:not(.ai-letter-closing) {
  color: #232629 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: .98rem !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
  text-transform: none !important;
}
.ai-letter-wax-seal {
  position: absolute !important;
  right: clamp(1.5rem, 4.8vw, 2.65rem) !important;
  bottom: clamp(7rem, 10vw, 7.5rem) !important;
  z-index: 6 !important;
  display: block !important;
  width: clamp(6.25rem, 14vw, 8.75rem) !important;
  max-width: 28vw !important;
  height: auto !important;
  opacity: 1 !important;
  filter: drop-shadow(0 8px 14px rgba(45,15,12,.42)) !important;
  pointer-events: none !important;
}
.ai-letter-footer {
  position: relative !important;
  z-index: 7 !important;
  width: 100% !important;
  max-width: none !important;
  margin-top: clamp(2.5rem, 5vw, 2.75rem) !important;
  padding: 1.12rem 0 2rem !important;
  border-top: 1px solid #D8CFBA !important;
  color: #3D4652 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: .82rem !important;
  font-variant: small-caps !important;
  letter-spacing: .16em !important;
  line-height: 1.5 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}
@media (max-width: 720px) {
  .ai-letter-card {
    padding: 2.25rem 1.75rem 0 !important;
  }
  .ai-letterhead {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
  .ai-letterhead-contact {
    justify-items: start !important;
    text-align: left !important;
  }
  .ai-letter-title h2,
  .ai-letter-card h2 {
    max-width: 100% !important;
    font-size: clamp(2.5rem, 11vw, 3.1rem) !important;
  }
  .ai-letter-body p {
    font-size: 1.03rem !important;
    text-align: left !important;
  }
  .ai-letter-pullquote {
    max-width: 100% !important;
  }
  .ai-letter-wax-seal {
    width: 100px !important;
    right: 1.1rem !important;
    bottom: 8rem !important;
  }
}

/* Premium AI letterhead final source of truth. */
.ai-letter-section {
  max-width: none !important;
  width: 100% !important;
  padding: clamp(3rem, 6vw, 6.75rem) clamp(1rem, 3vw, 1.5rem) clamp(4rem, 7vw, 6.5rem) !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.72) 0%, rgba(255,255,255,0) 31rem),
    radial-gradient(circle at 12% 16%, rgba(122,31,46,.04) 0%, rgba(122,31,46,0) 24rem),
    linear-gradient(135deg, #D8D2C8 0%, #ECE7DE 48%, #CFC7BB 100%) !important;
  color: #232629 !important;
}
.ai-letter-card {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  width: min(940px, 100%) !important;
  max-width: 940px !important;
  margin: 0 auto !important;
  padding: clamp(2.65rem, 5vw, 4.45rem) clamp(1.65rem, 6vw, 5rem) clamp(2.2rem, 4vw, 3.2rem) !important;
  border: 0 !important;
  border-radius: 1px !important;
  color: #232629 !important;
  background:
    repeating-linear-gradient(90deg, rgba(120,105,75,.038) 0, rgba(120,105,75,.038) 1px, transparent 1px, transparent 5px),
    repeating-linear-gradient(0deg, rgba(120,105,75,.035) 0, rgba(120,105,75,.035) 1px, transparent 1px, transparent 25px),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)' opacity='.045'/%3E%3C/svg%3E"),
    linear-gradient(165deg, #FAF6EC 0%, #F7F2E6 50%, #EFE8D6 100%) !important;
  box-shadow:
    0 2px 2px rgba(60,50,30,.08),
    0 14px 30px rgba(60,50,30,.16),
    0 42px 92px rgba(45,40,25,.28),
    inset 0 0 0 1px rgba(150,135,100,.14),
    inset 0 0 68px rgba(160,140,100,.055) !important;
}
.ai-letter-card:before {
  content: "K" !important;
  position: absolute !important;
  top: clamp(16rem, 27vw, 24rem) !important;
  right: clamp(1.6rem, 8vw, 6.5rem) !important;
  z-index: 0 !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  aspect-ratio: auto !important;
  background: none !important;
  color: rgba(35,38,41,.04) !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(14rem, 28vw, 24rem) !important;
  font-weight: 400 !important;
  line-height: .7 !important;
  pointer-events: none !important;
}
.ai-letter-card:after {
  content: "" !important;
  position: absolute !important;
  inset: clamp(.7rem, 1.35vw, 1rem) !important;
  z-index: 0 !important;
  display: block !important;
  border: 1px solid rgba(150,135,100,.16) !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.32),
    inset 0 0 28px rgba(160,140,100,.04) !important;
  pointer-events: none !important;
}
.ai-letter-card > * {
  position: relative !important;
  z-index: 2 !important;
}
.ai-letterhead {
  display: grid !important;
  grid-template-columns: minmax(10rem, 15.25rem) minmax(16rem, 1fr) !important;
  align-items: start !important;
  gap: clamp(1.5rem, 4vw, 3rem) !important;
  padding-bottom: clamp(1.15rem, 2vw, 1.45rem) !important;
  border-bottom: 1.5px solid #7A1F2E !important;
}
.ai-letterhead-logo img {
  width: min(14.5rem, 44vw) !important;
  height: auto !important;
  margin: 0 !important;
  background: transparent !important;
  filter: none !important;
  opacity: 1 !important;
}
.ai-letterhead-contact {
  display: grid !important;
  gap: .28rem !important;
  justify-items: end !important;
  text-align: right !important;
  color: #3D4652 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: .96rem !important;
  font-style: normal !important;
  line-height: 1.35 !important;
}
.ai-letterhead-contact strong {
  color: #232629 !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(1.2rem, 1.7vw, 1.55rem) !important;
  font-weight: 700 !important;
  letter-spacing: .24em !important;
  line-height: 1.05 !important;
  text-transform: uppercase !important;
}
.ai-letterhead-contact span:first-of-type {
  color: #7A1F2E !important;
}
.ai-letterhead-contact a,
.ai-letterhead-contact span {
  color: #232629 !important;
  text-decoration: none !important;
}
.ai-letter-title {
  max-width: 670px !important;
  margin: clamp(2.15rem, 4vw, 3rem) 0 0 !important;
}
.ai-letter-title .eyebrow {
  margin: 0 0 .95rem !important;
  color: #7A1F2E !important;
  font-family: var(--sans) !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  letter-spacing: .3em !important;
  line-height: 1.4 !important;
  text-transform: uppercase !important;
}
.ai-letter-title h2,
.ai-letter-card h2 {
  max-width: 690px !important;
  margin: 0 !important;
  color: #232629 !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(3.4rem, 6.2vw, 5.25rem) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.02 !important;
}
.ai-letter-title time {
  display: block !important;
  margin-top: 1.1rem !important;
  color: #3D4652 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1rem !important;
}
.ai-letter-body {
  max-width: 760px !important;
  margin-top: 1.35rem !important;
}
.ai-letter-body p {
  margin: 0 0 1.15rem !important;
  color: #101418 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(1rem, 1.16vw, 1.13rem) !important;
  line-height: 1.66 !important;
}
.ai-letter-salutation {
  margin-bottom: .9rem !important;
}
.ai-letter-pullquote {
  position: relative !important;
  max-width: 610px !important;
  margin: clamp(1.65rem, 3vw, 2.25rem) auto !important;
  padding: clamp(.9rem, 1.8vw, 1.25rem) clamp(2rem, 4vw, 3rem) !important;
  border-top: 1px solid rgba(122,31,46,.48) !important;
  border-bottom: 1px solid rgba(122,31,46,.48) !important;
  color: #7A1F2E !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(1.55rem, 2.5vw, 2.25rem) !important;
  font-style: italic !important;
  font-weight: 400 !important;
  line-height: 1.08 !important;
  text-align: center !important;
}
.ai-letter-pullquote:before,
.ai-letter-pullquote:after {
  position: absolute;
  color: #7A1F2E;
  font-family: var(--serif-display);
  font-size: clamp(1.9rem, 3vw, 2.6rem);
  font-style: normal;
  line-height: 1;
}
.ai-letter-pullquote:before {
  content: "\201C";
  left: clamp(.3rem, 1vw, .75rem);
  top: .55rem;
}
.ai-letter-pullquote:after {
  content: "\201D";
  right: clamp(.3rem, 1vw, .75rem);
  bottom: .25rem;
}
.ai-letter-signature {
  display: grid !important;
  justify-items: start !important;
  gap: .12rem !important;
  max-width: 360px !important;
  margin-top: clamp(1.35rem, 2.4vw, 1.9rem) !important;
  padding: 0 !important;
  border: 0 !important;
}
.ai-letter-closing {
  margin: 0 0 .08rem !important;
  color: #101418 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1.05rem !important;
  font-style: normal !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.ai-letter-signature img {
  width: min(285px, 66vw) !important;
  height: auto !important;
  max-height: none !important;
  margin: .18rem 0 .2rem !important;
  filter: none !important;
}
.ai-letter-signature strong {
  color: #232629 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1rem !important;
  font-variant: small-caps !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  line-height: 1.18 !important;
  text-transform: uppercase !important;
}
.ai-letter-signature span:not(.ai-letter-closing) {
  color: #232629 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: .96rem !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.34 !important;
  text-transform: none !important;
}
.ai-letter-wax-seal {
  position: absolute !important;
  right: clamp(1.35rem, 4.4vw, 3.15rem) !important;
  bottom: clamp(4.6rem, 7vw, 5.9rem) !important;
  z-index: 5 !important;
  display: block !important;
  width: clamp(6.2rem, 13vw, 9.4rem) !important;
  max-width: 26vw !important;
  height: auto !important;
  opacity: 1 !important;
  background: transparent !important;
  border: 0 !important;
  color: transparent !important;
  filter:
    drop-shadow(0 10px 16px rgba(45,15,12,.42))
    drop-shadow(0 2px 2px rgba(255,255,255,.18)) !important;
  pointer-events: none !important;
  user-select: none !important;
}
.ai-letter-footer {
  position: relative !important;
  z-index: 6 !important;
  width: 100% !important;
  max-width: none !important;
  margin: clamp(2.25rem, 4vw, 3rem) auto 0 !important;
  padding: 1rem 0 0 !important;
  border-top: 1px solid rgba(122,31,46,.35) !important;
  color: #232629 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: .78rem !important;
  font-variant: small-caps !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  line-height: 1.45 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}
@media (max-width: 720px) {
  .ai-letter-section {
    padding: 1.25rem .65rem 2rem !important;
  }
  .ai-letter-card {
    padding: 2rem 1.25rem 2rem !important;
  }
  .ai-letter-card:before {
    top: 19rem !important;
    right: -1rem !important;
    font-size: 13rem !important;
  }
  .ai-letterhead {
    grid-template-columns: 1fr !important;
    gap: 1.05rem !important;
  }
  .ai-letterhead-contact {
    justify-items: start !important;
    text-align: left !important;
  }
  .ai-letterhead-logo img {
    width: min(12rem, 72vw) !important;
  }
  .ai-letter-title h2,
  .ai-letter-card h2 {
    max-width: 100% !important;
    font-size: clamp(2.55rem, 11vw, 3.35rem) !important;
  }
  .ai-letter-body p {
    font-size: 1.02rem !important;
    line-height: 1.68 !important;
  }
  .ai-letter-pullquote {
    max-width: 100% !important;
    padding-inline: 1.65rem !important;
  }
  .ai-letter-wax-seal {
    width: 92px !important;
    right: .95rem !important;
    bottom: 5.1rem !important;
    max-width: 34vw !important;
  }
  .ai-letter-footer {
    padding-right: 0 !important;
    font-size: .68rem !important;
    letter-spacing: .1em !important;
    text-align: left !important;
  }
}

/* Keep review and victory cards fixed in place; only the inner face flips. */
.homepage-results-preview .result-preview-grid .result-flip-card:hover,
.homepage-results-preview .result-preview-grid .result-flip-card:focus-visible,
.homepage-results-preview .result-preview-grid .result-flip-card.is-flipped,
.homepage-results-preview .result-preview-grid .result-flip-card[aria-pressed="true"],
.homepage-results-preview .result-flip-card:hover,
.homepage-results-preview .result-flip-card:focus-visible,
.homepage-results-preview .result-flip-card.is-flipped,
.homepage-results-preview .result-flip-card[aria-pressed="true"],
.homepage-reviews .review-flip-card:not(.result-flip-card):hover,
.homepage-reviews .review-flip-card:not(.result-flip-card):focus-visible,
.homepage-reviews .review-flip-card:not(.result-flip-card).is-flipped,
.homepage-reviews .review-flip-card:not(.result-flip-card)[aria-pressed="true"],
.review-flip-carousel:not(.is-enhanced) .review-flip-card:hover,
.review-flip-carousel:not(.is-enhanced) .review-flip-card:focus-visible,
.review-flip-carousel:not(.is-enhanced) .review-flip-card.is-flipped,
.review-flip-carousel:not(.is-enhanced) .review-flip-card[aria-pressed="true"] {
  transform: none !important;
}
.review-flip-carousel.is-enhanced .review-carousel-card.is-active:hover,
.review-flip-carousel.is-enhanced .review-carousel-card.is-active:focus-visible {
  transform: translateX(-50%) scale(1) !important;
}
.review-flip-carousel.is-enhanced .review-carousel-card.is-prev:hover,
.review-flip-carousel.is-enhanced .review-carousel-card.is-prev:focus-visible {
  transform: translateX(-112%) scale(.88) !important;
}
.review-flip-carousel.is-enhanced .review-carousel-card.is-next:hover,
.review-flip-carousel.is-enhanced .review-carousel-card.is-next:focus-visible {
  transform: translateX(12%) scale(.88) !important;
}
html.js .results-carousel.is-enhanced .results-slide.is-active:hover,
html.js .results-carousel.is-enhanced .results-slide.is-active:focus-within {
  transform: translateX(-50%) scale(1) !important;
}
html.js .results-carousel.is-enhanced .results-slide.is-prev:hover,
html.js .results-carousel.is-enhanced .results-slide.is-prev:focus-within {
  transform: translateX(-108%) scale(.82) rotateY(8deg) !important;
}
html.js .results-carousel.is-enhanced .results-slide.is-next:hover,
html.js .results-carousel.is-enhanced .results-slide.is-next:focus-within {
  transform: translateX(8%) scale(.82) rotateY(-8deg) !important;
}
.results-carousel:not(.is-enhanced) .results-slide:hover,
.results-carousel:not(.is-enhanced) .results-slide:focus-within,
.results-story-card:hover,
.results-story-card:focus-visible,
.result-case-row:hover,
.result-case-row:focus-within {
  transform: none !important;
}

/* Final stationary flip lock: never let hover/tap move the card box itself. */
.homepage-results-preview .result-flip-card,
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card),
.review-flip-carousel:not(.is-enhanced) .review-flip-card {
  transform: none !important;
  translate: 0 0 !important;
}
.homepage-results-preview .result-flip-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]),
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card):is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]),
.review-flip-carousel:not(.is-enhanced) .review-flip-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  transform: none !important;
  translate: 0 0 !important;
}
.homepage-results-preview .result-flip-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) .review-flip-inner,
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card):is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) .review-flip-inner,
.review-flip-carousel:not(.is-enhanced) .review-flip-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) .review-flip-inner {
  translate: 0 0 !important;
}
.homepage-results-preview .result-flip-card:is(.is-flipped, [aria-pressed="true"]) .review-flip-inner,
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card):is(.is-flipped, [aria-pressed="true"]) .review-flip-inner,
.review-flip-carousel:not(.is-enhanced) .review-flip-card:is(.is-flipped, [aria-pressed="true"]) .review-flip-inner {
  transform: rotateY(180deg) !important;
}
@media (hover: hover) and (pointer: fine) {
  .homepage-results-preview .result-flip-card:hover .review-flip-inner,
  .homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card):hover .review-flip-inner,
  .review-flip-carousel:not(.is-enhanced) .review-flip-card:hover .review-flip-inner {
    transform: rotateY(180deg) !important;
    translate: 0 0 !important;
  }
}

/* Hard lock flip-card geometry: faces are stacked layers, never layout rows. */
.homepage-results-preview .result-flip-card,
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card),
.review-flip-carousel:not(.is-enhanced) .review-flip-card {
  position: relative !important;
  display: block !important;
  contain: layout paint;
}
.homepage-results-preview .result-flip-card .review-flip-inner,
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card) .review-flip-inner,
.review-flip-carousel:not(.is-enhanced) .review-flip-card .review-flip-inner {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: inherit !important;
  transform-style: preserve-3d !important;
}
.homepage-results-preview .result-flip-card .review-flip-face,
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card) .review-flip-face,
.review-flip-carousel:not(.is-enhanced) .review-flip-card .review-flip-face {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
}
.homepage-results-preview .result-flip-card .review-flip-front,
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card) .review-flip-front,
.review-flip-carousel:not(.is-enhanced) .review-flip-card .review-flip-front {
  transform: rotateY(0deg) !important;
}
.homepage-results-preview .result-flip-card .review-flip-back,
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card) .review-flip-back,
.review-flip-carousel:not(.is-enhanced) .review-flip-card .review-flip-back {
  transform: rotateY(180deg) !important;
}

/* Light architectural watermark treatment for homepage victory flip cards. */
.homepage-results-preview .result-preview-grid .result-flip-card .review-flip-face {
  background-color: rgba(255,255,255,.66) !important;
  background-blend-mode: normal, multiply, normal;
}
.homepage-results-preview .result-preview-grid .result-flip-card:nth-child(1) .review-flip-face {
  background:
    linear-gradient(150deg, rgba(255,255,255,.83), rgba(250,247,241,.56)),
    repeating-linear-gradient(90deg, transparent 0 9%, rgba(61,70,82,.08) 9.4% 10%, transparent 10.4% 15%),
    linear-gradient(165deg, transparent 0 46%, rgba(122,31,46,.07) 47%, rgba(61,70,82,.05) 49%, transparent 50%),
    rgba(255,255,255,.66) !important;
  background-size: auto, 54% 72%, 100% 100%, auto;
  background-position: center, 92% 100%, center, center;
  background-repeat: no-repeat;
}
.homepage-results-preview .result-preview-grid .result-flip-card:nth-child(2) .review-flip-face {
  background:
    linear-gradient(150deg, rgba(255,255,255,.83), rgba(250,247,241,.56)),
    radial-gradient(ellipse at 74% 70%, transparent 0 27%, rgba(61,70,82,.08) 28% 30%, transparent 31%),
    radial-gradient(ellipse at 74% 70%, transparent 0 43%, rgba(122,31,46,.055) 44% 46%, transparent 47%),
    linear-gradient(90deg, transparent 0 64%, rgba(61,70,82,.075) 64.4% 65%, transparent 65.4%),
    rgba(255,255,255,.66) !important;
  background-repeat: no-repeat;
}
.homepage-results-preview .result-preview-grid .result-flip-card:nth-child(3) .review-flip-face {
  background:
    linear-gradient(150deg, rgba(255,255,255,.83), rgba(250,247,241,.56)),
    radial-gradient(circle at 78% 63%, transparent 0 23%, rgba(61,70,82,.08) 23.6% 24.8%, transparent 25.4%),
    linear-gradient(90deg, transparent 0 78%, rgba(61,70,82,.075) 78.2% 78.8%, transparent 79.2%),
    linear-gradient(155deg, transparent 0 73%, rgba(122,31,46,.06) 73.4% 74%, transparent 74.6%),
    linear-gradient(25deg, transparent 0 72%, rgba(61,70,82,.055) 72.4% 73%, transparent 73.6%),
    rgba(255,255,255,.66) !important;
  background-repeat: no-repeat;
}
.homepage-results-preview .result-preview-grid .result-flip-card:hover .review-flip-face,
.homepage-results-preview .result-preview-grid .result-flip-card:focus-visible .review-flip-face,
.homepage-results-preview .result-preview-grid .result-flip-card.is-flipped .review-flip-face,
.homepage-results-preview .result-preview-grid .result-flip-card[aria-pressed="true"] .review-flip-face {
  filter: saturate(1.04) brightness(1.02);
}

/* AI letterhead final override: printed ivory stationery, not the old dark article block. */
.ai-letter-section.section-shell {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: clamp(3.25rem, 6vw, 6.75rem) clamp(1rem, 3vw, 1.6rem) clamp(4.25rem, 7vw, 6.75rem) !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.68) 0%, rgba(255,255,255,0) 32rem),
    radial-gradient(circle at 13% 14%, rgba(122,31,46,.045) 0%, rgba(122,31,46,0) 22rem),
    linear-gradient(135deg, #D8D2C8 0%, #ECE7DE 48%, #CFC7BB 100%) !important;
  color: #232629 !important;
}
.ai-letter-card {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  width: min(940px, 100%) !important;
  max-width: 940px !important;
  margin: 0 auto !important;
  padding: clamp(2.85rem, 5vw, 4.55rem) clamp(1.65rem, 6vw, 5rem) clamp(2.4rem, 4vw, 3.35rem) !important;
  border: 0 !important;
  background:
    linear-gradient(165deg, rgba(250,246,236,.94), rgba(247,242,230,.98) 50%, rgba(239,232,214,.96)),
    repeating-linear-gradient(90deg, rgba(120,105,75,.045) 0, rgba(120,105,75,.045) 1px, transparent 1px, transparent 7px),
    repeating-linear-gradient(0deg, rgba(120,105,75,.04) 0, rgba(120,105,75,.04) 1px, transparent 1px, transparent 26px) !important;
  box-shadow:
    0 30px 75px rgba(60,50,30,.26),
    0 7px 18px rgba(60,50,30,.16),
    inset 0 0 0 1px rgba(150,135,100,.16),
    inset 0 0 70px rgba(160,140,100,.07) !important;
  color: #232629 !important;
}
.ai-letter-card > * {
  position: relative !important;
  z-index: 2 !important;
}
.ai-letter-card::before {
  content: "K" !important;
  position: absolute !important;
  z-index: 0 !important;
  top: clamp(12rem, 23vw, 17rem) !important;
  right: clamp(1.4rem, 8vw, 5rem) !important;
  color: rgba(35,38,41,.045) !important;
  font-family: var(--serif-display), Georgia, serif !important;
  font-size: clamp(12rem, 25vw, 20rem) !important;
  font-weight: 400 !important;
  line-height: .75 !important;
  pointer-events: none !important;
}
.ai-letter-card::after {
  content: "" !important;
  position: absolute !important;
  inset: clamp(.9rem, 1.4vw, 1.2rem) !important;
  z-index: 1 !important;
  border: 1px solid rgba(150,135,100,.22) !important;
  pointer-events: none !important;
}
.ai-letterhead {
  display: grid !important;
  grid-template-columns: minmax(10rem, 15.25rem) minmax(16rem, 1fr) !important;
  align-items: start !important;
  gap: clamp(1.5rem, 4vw, 3rem) !important;
  padding-bottom: clamp(1.15rem, 2vw, 1.45rem) !important;
  border-bottom: 1.5px solid #7A1F2E !important;
}
.ai-letterhead-logo img {
  display: block !important;
  width: min(14.5rem, 44vw) !important;
  height: auto !important;
  margin: 0 !important;
  background: transparent !important;
  filter: none !important;
  opacity: 1 !important;
}
.ai-letterhead-contact {
  display: grid !important;
  gap: .28rem !important;
  justify-items: end !important;
  margin: 0 !important;
  color: #3D4652 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: .96rem !important;
  font-style: normal !important;
  line-height: 1.35 !important;
  text-align: right !important;
}
.ai-letterhead-contact strong {
  color: #232629 !important;
  font-family: var(--serif-display), Georgia, serif !important;
  font-size: clamp(1.2rem, 1.7vw, 1.55rem) !important;
  font-weight: 700 !important;
  letter-spacing: .24em !important;
  line-height: 1.05 !important;
  text-transform: uppercase !important;
}
.ai-letterhead-contact span:first-of-type {
  color: #7A1F2E !important;
}
.ai-letterhead-contact a,
.ai-letterhead-contact span {
  color: #232629 !important;
  text-decoration: none !important;
}
.ai-letter-title {
  max-width: 670px !important;
  margin: clamp(2.15rem, 4vw, 3rem) 0 0 !important;
}
.ai-letter-title .eyebrow {
  color: #7A1F2E !important;
  letter-spacing: .22em !important;
}
.ai-letter-title h2,
.ai-letter-card h2 {
  max-width: 690px !important;
  margin: .75rem 0 1rem !important;
  color: #232629 !important;
  font-family: var(--serif-display), Georgia, serif !important;
  font-size: clamp(3.2rem, 6.6vw, 5.3rem) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: .9 !important;
}
.ai-letter-title time {
  color: #5E666F !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1rem !important;
}
.ai-letter-body {
  max-width: 760px !important;
  margin-top: 1.55rem !important;
}
.ai-letter-body p {
  margin: 0 0 1.18rem !important;
  color: #101418 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(1.02rem, 1.08vw, 1.09rem) !important;
  line-height: 1.64 !important;
}
.ai-letter-body p:first-child {
  margin-bottom: .9rem !important;
}
.ai-letter-pullquote {
  max-width: 610px !important;
  margin: clamp(1.75rem, 3vw, 2.45rem) auto !important;
  padding: .9rem clamp(1.5rem, 4vw, 3rem) !important;
  border-top: 1px solid rgba(122,31,46,.5) !important;
  border-bottom: 1px solid rgba(122,31,46,.5) !important;
  background: transparent !important;
  color: #7A1F2E !important;
  font-family: var(--serif-display), Georgia, serif !important;
  font-size: clamp(1.45rem, 2.2vw, 2rem) !important;
  font-style: italic !important;
  font-weight: 500 !important;
  line-height: 1.18 !important;
  text-align: center !important;
}
.ai-letter-signature {
  display: grid !important;
  justify-items: start !important;
  gap: .16rem !important;
  max-width: 440px !important;
  margin-top: clamp(1.55rem, 3vw, 2.35rem) !important;
  padding: 0 !important;
  border: 0 !important;
}
.ai-letter-closing {
  color: #101418 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.ai-letter-signature img:not(.ai-letter-wax-seal) {
  width: min(295px, 70vw) !important;
  height: auto !important;
  margin: .1rem 0 .2rem !important;
  filter: none !important;
}
.ai-letter-signature strong {
  color: #232629 !important;
  font-family: var(--sans), Arial, sans-serif !important;
  font-size: .86rem !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}
.ai-letter-signature span:not(.ai-letter-closing) {
  color: #232629 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: .96rem !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.34 !important;
  text-transform: none !important;
}
.ai-letter-wax-seal {
  position: absolute !important;
  right: clamp(1.35rem, 4.4vw, 3.15rem) !important;
  bottom: clamp(4.6rem, 7vw, 5.9rem) !important;
  z-index: 5 !important;
  display: block !important;
  width: clamp(6.2rem, 13vw, 9.4rem) !important;
  max-width: 26vw !important;
  height: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: transparent !important;
  filter: drop-shadow(0 10px 16px rgba(45,15,12,.42)) !important;
  pointer-events: none !important;
}
.ai-letter-footer {
  margin: clamp(1.55rem, 3vw, 2.35rem) auto 0 !important;
  padding: 0 clamp(7rem, 14vw, 10rem) 0 0 !important;
  border: 0 !important;
  color: #101418 !important;
  font-family: var(--sans), Arial, sans-serif !important;
  font-size: .72rem !important;
  font-variant: small-caps !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  line-height: 1.45 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}
@media (max-width: 720px) {
  .ai-letter-section.section-shell {
    padding: 1.25rem .65rem 2rem !important;
  }
  .ai-letter-card {
    padding: 2rem 1.25rem 2rem !important;
  }
  .ai-letter-card::before {
    top: 19rem !important;
    right: -1rem !important;
    font-size: 13rem !important;
  }
  .ai-letterhead {
    grid-template-columns: 1fr !important;
    gap: 1.05rem !important;
  }
  .ai-letterhead-contact {
    justify-items: start !important;
    text-align: left !important;
  }
  .ai-letterhead-logo img {
    width: min(12rem, 72vw) !important;
  }
  .ai-letter-title h2,
  .ai-letter-card h2 {
    max-width: 100% !important;
    font-size: clamp(2.55rem, 11vw, 3.35rem) !important;
  }
  .ai-letter-body p {
    font-size: 1.02rem !important;
    line-height: 1.68 !important;
  }
  .ai-letter-pullquote {
    max-width: 100% !important;
    padding-inline: 1.65rem !important;
  }
  .ai-letter-wax-seal {
    width: 92px !important;
    right: .95rem !important;
    bottom: 5.1rem !important;
    max-width: 34vw !important;
  }
  .ai-letter-footer {
    padding-right: 0 !important;
    font-size: .68rem !important;
    text-align: left !important;
  }
}

/* Isolated Modern Defense letterhead: this section intentionally does not use ai-letter classes. */
.kd-letter-section.section-shell {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: clamp(3.25rem, 6vw, 6.75rem) clamp(1rem, 3vw, 1.6rem) clamp(4.25rem, 7vw, 6.75rem) !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.68) 0%, rgba(255,255,255,0) 32rem),
    radial-gradient(circle at 13% 14%, rgba(122,31,46,.045) 0%, rgba(122,31,46,0) 22rem),
    linear-gradient(135deg, #D8D2C8 0%, #ECE7DE 48%, #CFC7BB 100%) !important;
  color: #232629 !important;
}
.kd-letter-card {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  width: min(940px, 100%) !important;
  max-width: 940px !important;
  margin: 0 auto !important;
  padding: clamp(2.85rem, 5vw, 4.55rem) clamp(1.65rem, 6vw, 5rem) clamp(2.4rem, 4vw, 3.35rem) !important;
  border: 0 !important;
  background:
    linear-gradient(165deg, rgba(250,246,236,.94), rgba(247,242,230,.98) 50%, rgba(239,232,214,.96)),
    repeating-linear-gradient(90deg, rgba(120,105,75,.045) 0, rgba(120,105,75,.045) 1px, transparent 1px, transparent 7px),
    repeating-linear-gradient(0deg, rgba(120,105,75,.04) 0, rgba(120,105,75,.04) 1px, transparent 1px, transparent 26px) !important;
  box-shadow:
    0 30px 75px rgba(60,50,30,.26),
    0 7px 18px rgba(60,50,30,.16),
    inset 0 0 0 1px rgba(150,135,100,.16),
    inset 0 0 70px rgba(160,140,100,.07) !important;
  color: #232629 !important;
}
.kd-letter-card > * {
  position: relative !important;
  z-index: 2 !important;
}
.kd-letter-card::before {
  content: "K" !important;
  position: absolute !important;
  z-index: 0 !important;
  top: clamp(12rem, 23vw, 17rem) !important;
  right: clamp(1.4rem, 8vw, 5rem) !important;
  color: rgba(35,38,41,.045) !important;
  font-family: var(--serif-display), Georgia, serif !important;
  font-size: clamp(12rem, 25vw, 20rem) !important;
  font-weight: 400 !important;
  line-height: .75 !important;
  pointer-events: none !important;
}
.kd-letter-card::after {
  content: "" !important;
  position: absolute !important;
  inset: clamp(.9rem, 1.4vw, 1.2rem) !important;
  z-index: 1 !important;
  border: 1px solid rgba(150,135,100,.22) !important;
  pointer-events: none !important;
}
.kd-letterhead {
  display: grid !important;
  grid-template-columns: minmax(10rem, 15.25rem) minmax(16rem, 1fr) !important;
  align-items: start !important;
  gap: clamp(1.5rem, 4vw, 3rem) !important;
  padding-bottom: clamp(1.15rem, 2vw, 1.45rem) !important;
  border-bottom: 1.5px solid #7A1F2E !important;
}
.kd-letterhead-logo img {
  display: block !important;
  width: min(14.5rem, 44vw) !important;
  height: auto !important;
  margin: 0 !important;
  background: transparent !important;
  filter: none !important;
  opacity: 1 !important;
}
.kd-letterhead-contact {
  display: grid !important;
  gap: .28rem !important;
  justify-items: end !important;
  margin: 0 !important;
  color: #3D4652 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: .96rem !important;
  font-style: normal !important;
  line-height: 1.35 !important;
  text-align: right !important;
}
.kd-letterhead-contact strong {
  color: #232629 !important;
  font-family: var(--serif-display), Georgia, serif !important;
  font-size: clamp(1.2rem, 1.7vw, 1.55rem) !important;
  font-weight: 700 !important;
  letter-spacing: .24em !important;
  line-height: 1.05 !important;
  text-transform: uppercase !important;
}
.kd-letterhead-contact span:first-of-type {
  color: #7A1F2E !important;
}
.kd-letterhead-contact a,
.kd-letterhead-contact span {
  color: #232629 !important;
  text-decoration: none !important;
}
.kd-letter-title {
  max-width: 670px !important;
  margin: clamp(2.15rem, 4vw, 3rem) 0 0 !important;
}
.kd-letter-title .eyebrow {
  color: #7A1F2E !important;
  letter-spacing: .22em !important;
}
.kd-letter-title h2 {
  max-width: 690px !important;
  margin: .75rem 0 1rem !important;
  color: #232629 !important;
  font-family: var(--serif-display), Georgia, serif !important;
  font-size: clamp(3.2rem, 6.6vw, 5.3rem) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: .9 !important;
}
.kd-letter-title time {
  color: #5E666F !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1rem !important;
}
.kd-letter-body {
  max-width: 760px !important;
  margin-top: 1.55rem !important;
}
.kd-letter-body p {
  margin: 0 0 1.18rem !important;
  color: #101418 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(1.02rem, 1.08vw, 1.09rem) !important;
  line-height: 1.64 !important;
}
.kd-letter-body .kd-letter-salutation {
  margin-bottom: .9rem !important;
}
.kd-letter-pullquote {
  max-width: 610px !important;
  margin: clamp(1.75rem, 3vw, 2.45rem) auto !important;
  padding: .9rem clamp(1.5rem, 4vw, 3rem) !important;
  border-top: 1px solid rgba(122,31,46,.5) !important;
  border-bottom: 1px solid rgba(122,31,46,.5) !important;
  background: transparent !important;
  color: #7A1F2E !important;
  font-family: var(--serif-display), Georgia, serif !important;
  font-size: clamp(1.45rem, 2.2vw, 2rem) !important;
  font-style: italic !important;
  font-weight: 500 !important;
  line-height: 1.18 !important;
  text-align: center !important;
}
.kd-letter-signature {
  display: grid !important;
  justify-items: start !important;
  gap: .16rem !important;
  max-width: 440px !important;
  margin-top: clamp(1.55rem, 3vw, 2.35rem) !important;
  padding: 0 !important;
  border: 0 !important;
}
.kd-letter-closing {
  color: #101418 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.kd-letter-signature img {
  width: min(295px, 70vw) !important;
  height: auto !important;
  margin: .1rem 0 .2rem !important;
  filter: none !important;
}
.kd-letter-signature strong {
  color: #232629 !important;
  font-family: var(--sans), Arial, sans-serif !important;
  font-size: .86rem !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}
.kd-letter-signature span:not(.kd-letter-closing) {
  color: #232629 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: .96rem !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.34 !important;
  text-transform: none !important;
}
.kd-letter-wax-seal {
  position: absolute !important;
  right: clamp(1.35rem, 4.4vw, 3.15rem) !important;
  bottom: clamp(4.6rem, 7vw, 5.9rem) !important;
  z-index: 5 !important;
  display: block !important;
  width: clamp(6.2rem, 13vw, 9.4rem) !important;
  max-width: 26vw !important;
  height: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: transparent !important;
  filter: drop-shadow(0 10px 16px rgba(45,15,12,.42)) !important;
  pointer-events: none !important;
}
.kd-letter-footer {
  margin: clamp(1.55rem, 3vw, 2.35rem) auto 0 !important;
  padding: 0 clamp(7rem, 14vw, 10rem) 0 0 !important;
  border: 0 !important;
  color: #101418 !important;
  font-family: var(--sans), Arial, sans-serif !important;
  font-size: .72rem !important;
  font-variant: small-caps !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  line-height: 1.45 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}
@media (max-width: 720px) {
  .kd-letter-section.section-shell {
    padding: 1.25rem .65rem 2rem !important;
  }
  .kd-letter-card {
    padding: 2rem 1.25rem 2rem !important;
  }
  .kd-letter-card::before {
    top: 19rem !important;
    right: -1rem !important;
    font-size: 13rem !important;
  }
  .kd-letterhead {
    grid-template-columns: 1fr !important;
    gap: 1.05rem !important;
  }
  .kd-letterhead-contact {
    justify-items: start !important;
    text-align: left !important;
  }
  .kd-letterhead-logo img {
    width: min(12rem, 72vw) !important;
  }
  .kd-letter-title h2 {
    max-width: 100% !important;
    font-size: clamp(2.55rem, 11vw, 3.35rem) !important;
  }
  .kd-letter-body p {
    font-size: 1.02rem !important;
    line-height: 1.68 !important;
  }
  .kd-letter-pullquote {
    max-width: 100% !important;
    padding-inline: 1.65rem !important;
  }
  .kd-letter-wax-seal {
    width: 92px !important;
    right: .95rem !important;
    bottom: 5.1rem !important;
    max-width: 34vw !important;
  }
  .kd-letter-footer {
    padding-right: 0 !important;
    font-size: .68rem !important;
    text-align: left !important;
  }
}

.kd-letter-embed-section.section-shell {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: clamp(3rem, 6vw, 6rem) clamp(1rem, 4vw, 2rem) !important;
  background:
    radial-gradient(120% 70% at 50% 0%, #F4F4F4 0%, #F2EDE4 46%, #DFE1E3 86%, #D1D5D8 100%) !important;
}
.kd-letter-embed-section .section-heading {
  max-width: 1180px !important;
  margin: 0 auto clamp(1.25rem, 3vw, 2rem) !important;
  text-align: center !important;
}
.kd-letter-embed-frame {
  width: min(1360px, 100%) !important;
  margin: 0 auto !important;
  background: #F2EDE4 !important;
  border: 1px solid rgba(35,38,41,.12) !important;
  box-shadow: 0 24px 70px rgba(45,40,25,.18) !important;
  overflow: hidden !important;
}
.kd-letter-embed-frame iframe {
  display: block !important;
  width: 100% !important;
  height: clamp(185rem, 215vw, 245rem) !important;
  border: 0 !important;
  background: #F2EDE4 !important;
  overflow: hidden !important;
}
@media (max-width: 720px) {
  .kd-letter-embed-section.section-shell {
    padding: 1.5rem .65rem 2rem !important;
  }
  .kd-letter-embed-frame iframe {
    height: 275rem !important;
  }
}

.kd-letter-section.section-shell {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: clamp(3.25rem, 6vw, 6.75rem) clamp(1rem, 3vw, 1.6rem) clamp(4.25rem, 7vw, 6.75rem) !important;
}
.kd-letter-section .kd-letter-card {
  width: min(1180px, 100%) !important;
  max-width: 1180px !important;
  margin-inline: auto !important;
  padding: clamp(3.5rem, 5.5vw, 5.4rem) clamp(2rem, 6vw, 6.4rem) clamp(3.15rem, 4.5vw, 4.25rem) !important;
}
.kd-letter-section .kd-letterhead {
  grid-template-columns: minmax(12rem, 18rem) minmax(18rem, 1fr) !important;
}
.kd-letter-section .kd-letterhead-logo img {
  width: min(17rem, 44vw) !important;
}
.kd-letter-section .kd-letterhead-contact {
  font-size: 1.08rem !important;
}
.kd-letter-section .kd-letterhead-contact strong {
  font-size: clamp(1.45rem, 1.9vw, 1.9rem) !important;
}
.kd-letter-section .kd-letter-title {
  max-width: 760px !important;
  margin-top: clamp(2.6rem, 4.5vw, 3.7rem) !important;
}
.kd-letter-section .kd-letter-title h2 {
  max-width: 780px !important;
  font-size: clamp(4.25rem, 7.2vw, 6.8rem) !important;
}
.kd-letter-section .kd-letter-title time {
  font-size: 1.22rem !important;
}
.kd-letter-section .kd-letter-body {
  max-width: 850px !important;
  margin-top: 1.9rem !important;
}
.kd-letter-section .kd-letter-body p {
  margin-bottom: 1.38rem !important;
  font-size: clamp(1.18rem, 1.22vw, 1.28rem) !important;
  line-height: 1.68 !important;
}
.kd-letter-section .kd-letter-pullquote {
  max-width: 700px !important;
  margin-block: clamp(2.1rem, 3.4vw, 2.9rem) !important;
  font-size: clamp(1.8rem, 2.5vw, 2.4rem) !important;
}
.kd-letter-section .kd-letter-signature {
  max-width: 500px !important;
  margin-top: clamp(1.85rem, 3.2vw, 2.65rem) !important;
}
.kd-letter-section .kd-letter-closing {
  font-size: 1.16rem !important;
}
.kd-letter-section .kd-letter-signature img {
  width: min(360px, 72vw) !important;
}
.kd-letter-section .kd-letter-signature strong {
  font-size: .98rem !important;
}
.kd-letter-section .kd-letter-signature span:not(.kd-letter-closing) {
  font-size: 1.08rem !important;
}
.kd-letter-section .kd-letter-wax-seal {
  bottom: clamp(5.1rem, 7vw, 6.5rem) !important;
  width: clamp(7.3rem, 14vw, 11.5rem) !important;
}
.kd-letter-section .kd-letter-footer {
  font-size: .82rem !important;
}
@media (max-width: 720px) {
  .kd-letter-section.section-shell {
    padding: 1.25rem .65rem 2rem !important;
  }
  .kd-letter-section .kd-letter-card {
    width: min(100%, 38rem) !important;
    padding: 2rem 1.25rem 2rem !important;
  }
  .kd-letter-section .kd-letterhead {
    grid-template-columns: 1fr !important;
  }
  .kd-letter-section .kd-letterhead-logo img {
    width: min(13rem, 72vw) !important;
  }
  .kd-letter-section .kd-letter-title h2 {
    max-width: 100% !important;
    font-size: clamp(2.65rem, 12vw, 3.7rem) !important;
  }
  .kd-letter-section .kd-letter-body p {
    font-size: 1.04rem !important;
  }
  .kd-letter-section .kd-letter-wax-seal {
    width: 92px !important;
    right: .95rem !important;
    bottom: 5.1rem !important;
  }
}

/* Modern Defense - approved cinematic correction */
.modern-defense-letter-band {
  position: relative;
  overflow: visible;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(2rem, 4vw, 3.6rem) 0 clamp(3.8rem, 7vw, 6.2rem);
  border: 0;
  border-radius: 0;
  background:
    radial-gradient(80% 42% at 50% 0%, rgba(201,160,99,.20), transparent 62%),
    linear-gradient(180deg, #111820 0%, #151B23 44%, var(--color-cream) 44%, var(--color-cream) 100%);
  color: var(--color-porcelain);
}
.modern-defense-letter-band::before,
.modern-defense-letter-band::after {
  content: "";
  position: absolute;
  left: -6%;
  right: -6%;
  pointer-events: none;
  background:
    radial-gradient(ellipse at center, rgba(201,160,99,.22), transparent 58%),
    repeating-linear-gradient(8deg, transparent 0 18px, rgba(255,255,255,.11) 19px, transparent 20px);
  opacity: .32;
  filter: blur(.4px);
}
.modern-defense-letter-band::before {
  top: 9%;
  height: 16rem;
  transform: rotate(-3deg);
}
.modern-defense-letter-band::after {
  bottom: 31%;
  height: 14rem;
  transform: rotate(4deg);
}
.modern-defense-letter-band .section-shell {
  position: relative;
  z-index: 1;
  max-width: 1240px;
}
.modern-defense-letter-band .eyebrow {
  color: color-mix(in srgb, var(--color-gold) 78%, var(--color-white) 22%);
}
.modern-defense-letter-band h2 {
  max-width: 13ch;
  color: var(--color-porcelain);
  font-family: var(--serif-display);
  font-size: clamp(3rem, 5.4vw, 6.1rem);
  font-weight: 400;
  line-height: .9;
  margin: .45rem 0 1rem;
}
.modern-defense-letter-band .section-shell > p:not(.eyebrow):not(.modern-defense-letter-link) {
  max-width: 710px;
  margin-bottom: clamp(1.4rem, 2.4vw, 2.1rem);
  color: rgba(247,243,234,.82);
}
.modern-defense-letter-preview {
  position: relative;
  width: min(1060px, 100%);
  min-height: clamp(520px, 49vw, 680px);
  margin: clamp(1.2rem, 2.4vw, 2rem) auto 0;
  padding: clamp(1.45rem, 3vw, 3.1rem);
  overflow: hidden;
  border: 1px solid rgba(80,70,48,.22);
  border-radius: 8px;
  background:
    linear-gradient(150deg, rgba(255,255,255,.74), transparent 38%),
    repeating-linear-gradient(90deg, rgba(120,105,75,.035) 0 1px, transparent 1px 7px),
    repeating-linear-gradient(0deg, rgba(120,105,75,.026) 0 1px, transparent 1px 8px),
    linear-gradient(165deg, #FAF6EC, #F7F2E6 52%, #EFE8D6);
  color: var(--color-ink);
  box-shadow: 0 34px 90px rgba(16,20,24,.34), inset 0 0 0 1px rgba(255,255,255,.44);
}
.modern-defense-letter-preview::before {
  content: "K";
  position: absolute;
  right: 8%;
  top: 16%;
  color: rgba(35,38,41,.045);
  font-family: var(--serif-display);
  font-size: clamp(18rem, 34vw, 31rem);
  line-height: .7;
}
.modern-defense-letterhead,
.modern-defense-letter-content,
.modern-defense-letter-rule,
.modern-defense-letter-link {
  position: relative;
  z-index: 1;
}
.modern-defense-letterhead {
  display: flex;
  justify-content: space-between;
  gap: 1.5rem;
  align-items: flex-start;
}
.modern-defense-letterhead img {
  width: clamp(155px, 18vw, 230px);
  height: auto;
}
.modern-defense-letterhead div {
  display: grid;
  gap: .18rem;
  color: var(--color-slate);
  font-size: .84rem;
  text-align: right;
}
.modern-defense-letterhead strong {
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(1rem, 1.6vw, 1.35rem);
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.modern-defense-letter-rule {
  height: 1px;
  margin: clamp(1rem, 2vw, 1.55rem) 0 clamp(1.2rem, 2.6vw, 2rem);
  background: linear-gradient(90deg, rgba(122,31,46,.68), rgba(80,70,48,.28));
}
.modern-defense-letter-content {
  max-width: 710px;
}
.modern-defense-letter-content .eyebrow {
  color: var(--color-oxblood);
}
.modern-defense-letter-content h3 {
  margin: .3rem 0 .55rem;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(2.25rem, 4.4vw, 4.7rem);
  font-weight: 400;
  line-height: .96;
}
.modern-defense-letter-content time {
  display: block;
  margin-bottom: 1rem;
  color: var(--color-muted);
  font-family: var(--serif);
}
.modern-defense-letter-content p {
  color: var(--color-ink);
  font-family: var(--serif);
  font-size: clamp(.96rem, 1.05vw, 1.06rem);
  line-height: 1.6;
}
.modern-defense-letter-content blockquote {
  position: relative;
  max-width: 560px;
  margin: clamp(1rem, 2vw, 1.45rem) 0;
  padding: .85rem 0;
  border-top: 1px solid rgba(122,31,46,.35);
  border-bottom: 1px solid rgba(122,31,46,.35);
  color: var(--color-oxblood);
  font-family: var(--serif-display);
  font-size: clamp(1.35rem, 2.1vw, 2rem);
  font-style: italic;
  line-height: 1.16;
  text-align: center;
}
.modern-defense-letter-continue,
.modern-defense-letter-link a {
  color: var(--color-oxblood);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-decoration: none;
  text-transform: uppercase;
}
.modern-defense-letter-link {
  margin-top: 18px;
  text-align: center;
}
.modern-defense-letter-link a {
  color: var(--color-porcelain);
}
.modern-defense-letter-seal {
  position: absolute;
  right: clamp(2rem, 7vw, 6.5rem);
  bottom: clamp(2.4rem, 6vw, 5.5rem);
  z-index: 1;
  width: clamp(96px, 13vw, 160px);
  height: auto;
  filter: drop-shadow(0 16px 22px rgba(45,15,12,.42));
}
@media (max-width: 700px) {
  .modern-defense-letter-band h2 {
    font-size: clamp(2.35rem, 12vw, 4rem);
  }
  .modern-defense-letterhead {
    display: grid;
  }
  .modern-defense-letterhead div {
    text-align: left;
  }
  .modern-defense-letter-preview {
    min-height: auto;
  }
  .modern-defense-letter-seal {
    position: static;
    display: block;
    margin: 1rem 0 0 auto;
    width: 92px;
  }
}

/* ===== Law page split header (category-based) ===== */
.law-split-header { color:#fff; width:100%; }
.law-split-header__inner { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1.7fr 1fr; min-height:340px; }
.law-split-header__main { padding:64px 48px; display:flex; flex-direction:column; justify-content:center; }
.law-split-header__quote { font-family:var(--serif-display,'Cormorant Garamond',serif); font-size:5rem; line-height:.4; color:var(--color-oxblood,#7A1F2E); }
.law-split-header__title { font-family:var(--serif-display,'Cormorant Garamond',serif); font-size:clamp(2rem,3.6vw,3.2rem); line-height:1.08; margin:.2em 0 0; color:#fff; }
.law-split-header__rule { width:90px; height:3px; background:var(--color-oxblood,#7A1F2E); margin-top:22px; }
.law-split-header__aside { padding:64px 48px; background:rgba(16,21,30,.5); display:flex; flex-direction:column; justify-content:center; gap:14px; }
.law-split-header__eyebrow { font-size:.74rem; letter-spacing:.16em; text-transform:uppercase; color:#fff; font-weight:700; margin:0; opacity:.85; }
.law-split-header__lede { font-size:1rem; line-height:1.5; color:#E7E0D2; margin:0; }
.law-split-header__cta { align-self:flex-start; margin-top:4px; background:var(--color-oxblood,#7A1F2E); color:#fff; padding:11px 20px; border-radius:6px; text-decoration:none; font-weight:600; transition:background .18s ease; }
.law-split-header__cta:hover, .law-split-header__cta:focus { background:#5c1622; }
/* The split header carries the page title; keep the in-article subhead visible but secondary */
.article-header .article-subhead { font-family:var(--serif-display,'Cormorant Garamond',serif); font-size:clamp(1.4rem,2.4vw,2rem); margin:.2em 0 .4em; }
@media (max-width:820px){
  .law-split-header__inner { grid-template-columns:1fr; }
  .law-split-header__main, .law-split-header__aside { padding:40px 26px; }
  .law-split-header__aside { background:rgba(16,21,30,.6); }
}
@media (prefers-reduced-motion: reduce){ .law-split-header__cta { transition:none; } }

/* ===== Shared page banner header (blog, pillar, content pages) ===== */
.page-banner-header { width:100%; color:#fff; border-radius:12px; overflow:hidden; margin-bottom:28px; }
.page-banner-header__inner { max-width:900px; margin:0 auto; padding:72px 40px 56px; }
.page-banner-header .eyebrow { color:#fff; opacity:.85; letter-spacing:.16em; text-transform:uppercase; font-size:.74rem; font-weight:700; }
.page-banner-header h1 { font-family:var(--serif-display,'Cormorant Garamond',serif); color:#fff; font-size:clamp(2rem,4vw,3rem); line-height:1.1; margin:.25em 0 .35em; }
.page-banner-header__desc { color:#E7E0D2; font-size:1.05rem; line-height:1.5; max-width:62ch; margin:0 0 18px; }
.page-banner-header .article-meta { display:flex; flex-wrap:wrap; gap:8px 18px; font-size:.82rem; color:#C9CDD2; }
.page-banner-header + .blog-article { padding-top:clamp(2rem,4vw,3.5rem); }
@media (max-width:700px){ .page-banner-header__inner { padding:48px 24px 40px; } }

/* ===== Practice Areas: cream panel treatment ===== */
.practice-area-group {
  background: var(--color-cream) !important;
  border-radius: 16px !important;
  padding: clamp(2.2rem, 4vw, 3.4rem) !important;
  margin-bottom: clamp(1.6rem, 3vw, 2.4rem) !important;
}
/* Section heading text -> Pearl & Graphite */
.practice-area-group .section-heading h2 { color: var(--color-ink) !important; }
.practice-area-group .section-heading .eyebrow { color: var(--color-oxblood) !important; }
.practice-area-group .section-heading p,
.practice-area-group .section-heading .see-also { color: var(--color-muted) !important; }
.practice-area-group .section-heading a,
.practice-area-group .text-link-inline { color: var(--color-oxblood) !important; }

/* Cards -> cream paper panels, keep all content */
.practice-area-group .practice-area-card-grid > * ,
.practice-area-group .card,
.practice-area-group .card-grid > * {
  background: var(--color-paper) !important;
  border: .5px solid var(--color-hairline) !important;
  border-top: 2px solid var(--color-gold) !important;
  border-radius: 0 0 8px 8px !important;
  color: var(--color-ink) !important;
  box-shadow: 0 1px 3px rgba(35,38,41,0.04) !important;
}
.practice-area-dark-card-grid {
  gap: clamp(1rem, 1.8vw, 1.45rem) !important;
}
.practice-area-dark-card {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  min-height: clamp(245px, 24vw, 330px) !important;
  background: var(--color-paper) !important;
  border: .5px solid var(--color-hairline) !important;
  border-top: 2px solid var(--color-gold) !important;
  border-radius: 0 0 8px 8px !important;
  box-shadow: 0 1px 3px rgba(35,38,41,0.04) !important;
}
.practice-area-dark-card > span {
  color: var(--color-oxblood) !important;
}
.practice-area-dark-card > span:after {
  content: "" !important;
  display: block !important;
  width: 42px !important;
  height: 2px !important;
  margin-top: .75rem !important;
  background: var(--color-oxblood) !important;
}
.practice-area-dark-card:hover,
.practice-area-dark-card:focus-within {
  border-color: var(--color-oxblood) !important;
  border-top-color: var(--color-gold) !important;
  box-shadow: 0 4px 14px rgba(35,38,41,0.08) !important;
  transform: translateY(-3px) !important;
}
/* Card text colors */
.practice-area-group .card :is(h2,h3,h4,strong),
.practice-area-group .practice-area-card-grid :is(h2,h3,h4,strong) { color: var(--color-ink) !important; }
.practice-area-group .card :is(p,li,small,dd),
.practice-area-group .practice-area-card-grid :is(p,li,small,dd) { color: var(--color-muted) !important; }
.practice-area-group .card .eyebrow,
.practice-area-group .practice-area-card-grid .eyebrow { color: var(--color-oxblood) !important; }
/* "What's at stake:" label and links */
.practice-area-group .card strong { color: var(--color-ink) !important; }
.practice-area-group .card a,
.practice-area-group .practice-area-card-grid a,
.practice-area-group .text-link { color: var(--color-oxblood) !important; }
.practice-area-group .card a:hover,
.practice-area-group .practice-area-card-grid a:hover { color: var(--color-oxblood) !important; }
/* Card hover lift */
.practice-area-group .card:hover,
.practice-area-group .practice-area-card-grid > *:hover {
  border-color: var(--color-oxblood) !important;
  border-top-color: var(--color-gold) !important;
  box-shadow: 0 4px 14px rgba(35,38,41,0.08) !important;
  transform: translateY(-3px);
}
/* Any divider lines inside cards -> faint light */
.practice-area-group .card hr,
.practice-area-group .practice-area-card-grid [class*="detail"] { border-color: var(--color-hairline) !important; }

/* ===== Visual stabilization: homepage practice, results, footer ===== */
.homepage-practice-links {
  background: var(--color-cream) !important;
  box-shadow: 0 0 0 100vmax var(--color-cream) !important;
  color: var(--color-ink) !important;
}
.homepage-practice-links .eyebrow {
  color: var(--color-oxblood) !important;
}
.homepage-practice-links .section-heading h2 {
  color: var(--color-ink) !important;
}
.homepage-practice-links .section-heading p {
  color: var(--color-muted) !important;
}
.homepage-practice-card {
  background: var(--color-paper) !important;
  border: .5px solid var(--color-hairline) !important;
  border-top: 2px solid var(--color-gold) !important;
  border-radius: 0 0 8px 8px !important;
  color: var(--color-ink) !important;
  box-shadow: 0 1px 3px rgba(35,38,41,0.04) !important;
}
.homepage-practice-card strong {
  color: var(--color-ink) !important;
}
.homepage-practice-links .button-secondary {
  background: var(--color-oxblood) !important;
  border-color: var(--color-oxblood) !important;
  color: #FFFFFF !important;
}
.homepage-practice-links .button-secondary:hover,
.homepage-practice-links .button-secondary:focus-visible {
  background: var(--color-oxblood) !important;
  border-color: var(--color-oxblood) !important;
  color: #FFFFFF !important;
}
.results-spotlight-shell {
  background:
    radial-gradient(circle at 86% 14%, rgba(255,255,255,.72), rgba(255,255,255,.22) 24%, transparent 50%),
    linear-gradient(180deg, #FAF6EC 0%, #F7F3EA 54%, #FFFFFF 100%) !important;
  color: var(--color-ink) !important;
  border-bottom: 1px solid #D4D8DC !important;
}
.results-spotlight-shell:before,
.results-spotlight-shell::before {
  opacity: .18 !important;
}
.results-spotlight-intro h1,
.results-spotlight-intro p,
.results-spotlight-intro span,
.results-spotlight-shell :is(h1,h2,h3,h4,p,li,dd,dt,strong,span) {
  color: var(--color-ink) !important;
}
.results-spotlight-shell .eyebrow,
.results-spotlight-shell .results-slide-copy .eyebrow,
.results-spotlight-shell .results-story-card span,
.results-spotlight-shell .result-case-row-featured h4,
.results-spotlight-shell .flip-affordance,
.results-spotlight-shell .text-link {
  color: var(--color-oxblood) !important;
}
.results-slide,
.results-story-card,
.result-case-row {
  background:
    linear-gradient(150deg, rgba(255,255,255,.86), rgba(250,247,241,.66)),
    rgba(255,255,255,.72) !important;
  border-color: rgba(212,216,220,.9) !important;
  color: var(--color-ink) !important;
}
.results-arrow {
  background: var(--color-oxblood) !important;
  border-color: var(--color-oxblood) !important;
  color: #FFFFFF !important;
}
.results-arrow:hover,
.results-arrow:focus-visible {
  background: #5F1724 !important;
  border-color: #5F1724 !important;
  color: #FFFFFF !important;
}
.site-footer {
  position: relative !important;
  overflow: hidden !important;
  background: #3D4652 !important;
  color: #F7F7F4 !important;
}
.site-footer::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(
      115deg,
      rgba(122, 31, 46, 0.18) 0%,
      rgba(122, 31, 46, 0.08) 18%,
      rgba(122, 31, 46, 0) 42%
    );
  opacity: .75;
  z-index: 0;
}
.site-footer::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(122,31,46,.7), rgba(201,160,99,.35), rgba(255,255,255,.08));
  pointer-events: none;
  z-index: 0;
}
.site-footer > * {
  position: relative;
  z-index: 1;
}
.site-footer :is(p,li,address,small,span),
.site-footer .footer-column :is(a,span),
.site-footer .footer-contact-line,
.site-footer .footer-contact-line span,
.site-footer .footer-legal p,
.site-footer .footer-legal a,
.site-footer .footer-legal span {
  color: #C8CDD2 !important;
}
.site-footer :is(h2,h3,strong),
.site-footer .footer-links a,
.site-footer .footer-underlined {
  color: #FFFFFF !important;
}
.site-footer .footer-links a:hover,
.site-footer .footer-links a:focus-visible,
.site-footer .footer-legal a:hover,
.site-footer .footer-legal a:focus-visible {
  color: #B98590 !important;
}
.site-footer .footer-icon {
  color: #B98590 !important;
}
.site-footer .footer-underlined {
  background: #7A1F2E !important;
  border-color: #7A1F2E !important;
}
.site-footer .footer-underlined:hover,
.site-footer .footer-underlined:focus-visible {
  background: #5F1724 !important;
  border-color: #5F1724 !important;
  color: #FFFFFF !important;
}
.results-all-cases,
.results-category-section {
  background: #FFFFFF !important;
  color: var(--color-ink) !important;
}
.results-all-cases .section-heading :is(h2,p),
.results-category-section h3,
.results-category-section :is(h4,p,li,span,strong,button) {
  color: var(--color-ink) !important;
}
.results-category-section .eyebrow,
.results-category-section .result-case-row-featured h4,
.results-category-band a span {
  color: var(--color-oxblood) !important;
}
.results-category-band {
  background: rgba(255,255,255,.82) !important;
  border-color: #D4D8DC !important;
}
.results-category-band a {
  color: var(--color-ink) !important;
}
.results-category-band a:hover,
.results-category-band a:focus-visible {
  color: var(--color-oxblood) !important;
}
.site-footer .footer-shell,
.site-footer .footer-bottom,
.site-footer .footer-legal {
  color: #F7F7F4 !important;
}
.site-footer .footer-shell :is(p,li,address,small),
.site-footer .footer-legal p {
  color: #C8CDD2 !important;
}
.site-footer .footer-shell a,
.site-footer .footer-contact-line a,
.site-footer .footer-contact-line span,
.site-footer .footer-legal a {
  color: #FFFFFF !important;
}
.site-footer .footer-shell a:hover,
.site-footer .footer-shell a:focus-visible,
.site-footer .footer-contact-line a:hover,
.site-footer .footer-contact-line a:focus-visible,
.site-footer .footer-legal a:hover,
.site-footer .footer-legal a:focus-visible {
  color: #B98590 !important;
}


/* ===== Luxury legal footer redesign ===================================== */
.site-footer.site-footer-luxury {
  --footer-navy: #071C2D;
  --footer-navy-2: #092238;
  --footer-navy-deep: #061522;
  --footer-cream: #F2EDE4;
  --footer-cream-light: #FBF7EF;
  --footer-gold: #C9A063;
  --footer-gold-soft: #D1AE6A;
  --footer-gold-muted: rgba(201,160,99,.65);
  --footer-icon-gold: #C9A063;
  --footer-ivory: #F4EFE6;
  --footer-text: rgba(244,239,230,.72);
  --footer-muted: rgba(244,239,230,.58);
  position: relative;
  z-index: 2;
  overflow: hidden;
  padding: 0 !important;
  border: 0 !important;
  background:
    radial-gradient(circle at 14% 22%, rgba(201,160,99,.10), transparent 18rem),
    linear-gradient(180deg, var(--footer-navy-2) 0%, var(--footer-navy) 48%, var(--footer-navy-deep) 100%) !important;
  color: var(--footer-ivory) !important;
}
.site-footer.site-footer-luxury::before,
.site-footer.site-footer-luxury::after { display: none !important; }
.site-footer-luxury * { box-sizing: border-box; }
.site-footer-luxury a { text-decoration: none; }
.footer-prelude {
  position: relative;
  min-height: 0 !important;
  padding: clamp(3rem, 5vw, 4rem) 0 clamp(4.5rem, 7vw, 6rem) !important;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 18%, rgba(201,160,99,.13), transparent 17rem),
    linear-gradient(180deg, var(--footer-cream-light) 0%, var(--footer-cream) 100%);
  color: #202833;
}
.footer-prelude::after {
  content: "";
  position: absolute;
  left: -10vw;
  right: -10vw;
  bottom: -5.7rem;
  height: clamp(7.5rem, 12vw, 9.5rem);
  z-index: 1;
  background: linear-gradient(180deg, rgba(242,237,228,0) 0%, var(--footer-navy-2) 58%, var(--footer-navy) 100%);
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
}
.footer-prelude-shell {
  width: min(1160px, calc(100% - 48px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .8fr);
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
  position: relative;
  z-index: 2;
}
.footer-prelude p {
  margin: 0;
  max-width: 470px !important;
  color: #202833 !important;
  font-family: var(--serif-display);
  font-size: clamp(1.15rem, 1.7vw, 1.38rem) !important;
  font-weight: 500;
  line-height: 1.52 !important;
  letter-spacing: 0;
}
.footer-prelude ul {
  display: grid;
  gap: .72rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.footer-prelude li {
  display: grid;
  grid-template-columns: 1.85rem minmax(0, 1fr);
  gap: .75rem;
  align-items: center;
  color: #2D3743 !important;
  font-family: var(--sans);
  font-size: clamp(.94rem, 1.1vw, 1.02rem) !important;
  font-weight: 650;
  line-height: 1.42;
}
.footer-prelude li span {
  width: 1.85rem;
  height: 1.85rem;
  display: grid;
  place-items: center;
  border-radius: 999px;
  color: #071C2D !important;
  background: radial-gradient(circle at 32% 26%, #E7D0A0, var(--footer-gold) 64%, #B9924C);
  box-shadow: 0 8px 18px rgba(185,146,76,.22), inset 0 0 0 1px rgba(255,255,255,.38);
  font-size: .82rem;
  font-weight: 900;
}
.footer-gold-wave {
  position: absolute;
  left: -3vw;
  right: -3vw;
  bottom: clamp(1.9rem, 3vw, 3rem);
  height: clamp(3rem, 5vw, 4.5rem);
  z-index: 3;
  pointer-events: none;
  opacity: .9;
  background:
    radial-gradient(circle at 19% 53%, rgba(209,174,106,.68) 0 1.5px, transparent 2.5px),
    radial-gradient(circle at 33% 42%, rgba(209,174,106,.52) 0 1px, transparent 2px),
    radial-gradient(circle at 58% 60%, rgba(209,174,106,.62) 0 1.3px, transparent 2.4px),
    radial-gradient(circle at 76% 44%, rgba(209,174,106,.54) 0 1px, transparent 2px),
    radial-gradient(ellipse at 50% 62%, rgba(216,179,95,.26), transparent 54%),
    linear-gradient(100deg, transparent 0%, rgba(201,160,99,.16) 22%, rgba(201,160,99,.55) 48%, rgba(201,160,99,.14) 72%, transparent 100%);
  mask-image: radial-gradient(ellipse at center, #000 0 68%, transparent 76%);
}
.footer-gold-wave::before,
.footer-gold-wave::after {
  content: "";
  position: absolute;
  left: 5%;
  right: 5%;
  top: 45%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(209,174,106,.16), rgba(209,174,106,.78), rgba(201,160,99,.20), transparent);
  box-shadow: 0 0 18px rgba(216,179,95,.42);
  transform: rotate(-1.2deg);
}
.footer-gold-wave::after {
  top: 58%;
  opacity: .72;
  transform: rotate(1.15deg);
}
.footer-main-shell {
  width: min(1220px, calc(100% - 48px));
  margin: 0 auto;
  position: relative;
  z-index: 2;
  padding: clamp(3.15rem, 5.5vw, 4.5rem) 0 0 !important;
}
.footer-cta-grid {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(360px, 1fr) minmax(250px, 300px);
  gap: clamp(1.6rem, 3vw, 3rem);
  align-items: center;
  min-height: 0;
  padding: 0 0 clamp(2.6rem, 4vw, 3.4rem) !important;
  border-bottom: 1px solid rgba(201,160,99,.18);
}
.footer-brand-panel,
.footer-contact-panel { position: relative; min-width: 0; }
.footer-brand-panel::after,
.footer-contact-panel::before {
  content: "";
  position: absolute;
  top: 10%;
  bottom: 10%;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(201,160,99,.65), transparent);
}
.footer-brand-panel::after { right: calc(clamp(1.6rem, 3vw, 3rem) * -.5); }
.footer-contact-panel::before { left: calc(clamp(1.6rem, 3vw, 3rem) * -.5); }
.site-footer-luxury .footer-logo,
.site-footer-luxury .footer-logo:hover,
.site-footer-luxury .footer-logo:focus-visible {
  display: inline-flex !important;
  width: min(250px, 72vw) !important;
  max-height: 185px !important;
  min-height: auto !important;
  margin: 0 !important;
  outline-offset: .42rem;
  background: transparent !important;
  box-shadow: none !important;
}
.site-footer-luxury .footer-logo::before { display: none !important; }
.site-footer-luxury .footer-logo img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 185px !important;
  object-fit: contain !important;
  opacity: 1 !important;
  filter: drop-shadow(0 10px 26px rgba(201,160,99,.16)) !important;
  background: transparent !important;
}
.footer-cta-panel { text-align: center; }
.footer-eyebrow,
.site-footer-luxury .footer-eyebrow {
  margin: 0 0 .62rem !important;
  max-width: none !important;
  color: var(--footer-gold-soft) !important;
  font-family: var(--sans);
  font-size: .72rem !important;
  font-weight: 800;
  letter-spacing: .18em;
  line-height: 1.35;
  text-transform: uppercase;
}
.site-footer-luxury .footer-cta-panel h2 {
  margin: 0 auto .75rem !important;
  color: var(--footer-ivory) !important;
  font-family: var(--serif-display);
  font-size: clamp(2.25rem, 3.65vw, 3rem) !important;
  font-weight: 400;
  line-height: 1.12 !important;
  letter-spacing: 0;
  text-wrap: balance;
}
.site-footer-luxury .footer-cta-panel p:not(.footer-eyebrow) {
  margin: 0 auto 1.05rem !important;
  max-width: 510px !important;
  color: var(--footer-text) !important;
  font-size: clamp(.94rem, 1.1vw, 1.02rem) !important;
  line-height: 1.56 !important;
}
.footer-gold-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 0 2rem;
  border: 1px solid rgba(201,160,99,.55);
  border-radius: 999px;
  background: linear-gradient(135deg, var(--footer-gold-soft), var(--footer-gold) 58%, #B9924C);
  color: #071C2D !important;
  font-family: var(--sans);
  font-size: .74rem;
  font-weight: 850;
  letter-spacing: .13em;
  line-height: 1;
  box-shadow: 0 14px 34px rgba(201,160,99,.18);
  text-transform: uppercase;
  transition: transform .18s ease, box-shadow .18s ease;
}
.footer-gold-button:hover,
.footer-gold-button:focus-visible {
  color: #071C2D !important;
  transform: translateY(-1px);
  box-shadow: 0 18px 42px rgba(201,160,99,.20), 0 0 0 3px rgba(201,160,99,.14);
}
.footer-cta-panel small {
  display: block;
  margin-top: .58rem;
  color: var(--footer-muted) !important;
  font-family: var(--sans);
  font-size: .7rem !important;
  letter-spacing: .08em;
  line-height: 1.35;
  text-transform: uppercase;
}
.footer-contact-panel {
  display: grid;
  gap: .72rem;
  margin: 0;
  font-style: normal;
}
.site-footer-luxury .footer-contact-line {
  display: grid !important;
  grid-template-columns: 1.55rem minmax(0, 1fr) !important;
  gap: .68rem !important;
  align-items: start !important;
  max-width: none !important;
  justify-self: stretch !important;
  text-align: left !important;
  color: var(--footer-text) !important;
}
.site-footer-luxury .footer-contact-line span {
  color: var(--footer-text) !important;
  font-family: var(--sans);
  font-size: .86rem !important;
  font-weight: 540 !important;
  letter-spacing: .01em !important;
  line-height: 1.35 !important;
  text-transform: none !important;
}
.site-footer.site-footer-luxury .footer-icon {
  width: 1.05rem !important;
  height: 1.05rem !important;
  color: var(--footer-icon-gold) !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.55 !important;
}
.footer-navigation {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(.85rem, 1.8vw, 1.7rem);
  padding: clamp(2.35rem, 4vw, 3.1rem) 0 !important;
  border-bottom: 1px solid rgba(201,160,99,.16);
}
.site-footer-luxury .footer-column {
  display: block !important;
  min-height: 0 !important;
  padding-right: clamp(.55rem, 1.25vw, 1.05rem);
  border-right: 1px solid rgba(201,160,99,.14);
}
.site-footer-luxury .footer-column:last-child { border-right: 0; }
.site-footer-luxury .footer-column h3 {
  margin: 0 0 .78rem !important;
  color: var(--footer-gold-soft) !important;
  font-family: var(--sans);
  font-size: .7rem !important;
  font-weight: 850;
  letter-spacing: .16em;
  line-height: 1.3;
  text-transform: uppercase;
}
.site-footer-luxury .footer-links {
  display: grid !important;
  gap: .48rem !important;
  margin: 0 !important;
}
.site-footer-luxury .footer-links a,
.site-footer-luxury .footer-social-column p {
  color: var(--footer-text) !important;
  font-family: var(--sans);
  font-size: .82rem !important;
  font-weight: 520 !important;
  letter-spacing: .01em !important;
  line-height: 1.36 !important;
  text-transform: none !important;
}
.site-footer-luxury .footer-links a:hover,
.site-footer-luxury .footer-links a:focus-visible,
.site-footer-luxury .footer-legal a:hover,
.site-footer-luxury .footer-legal a:focus-visible {
  color: var(--footer-gold-soft) !important;
  text-decoration: underline;
  text-underline-offset: .22em;
}
.site-footer-luxury .footer-social-column p {
  margin: 0 0 .82rem !important;
  max-width: 245px !important;
}
.site-footer-luxury .footer-socials {
  display: flex !important;
  flex-wrap: wrap;
  gap: .48rem !important;
  justify-content: flex-start !important;
  margin: 0 !important;
}
.site-footer.site-footer-luxury .footer-socials a {
  width: 2.25rem !important;
  height: 2.25rem !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(201,160,99,.30) !important;
  border-radius: 999px;
  background: rgba(255,255,255,.032) !important;
  color: var(--footer-icon-gold) !important;
}
.site-footer.site-footer-luxury .footer-socials a:hover,
.site-footer.site-footer-luxury .footer-socials a:focus-visible {
  background: rgba(201,160,99,.14) !important;
  color: var(--footer-gold-soft) !important;
  transform: translateY(-1px);
}
.site-footer.site-footer-luxury .footer-socials .footer-icon {
  width: .98rem !important;
  height: .98rem !important;
  color: currentColor !important;
  fill: currentColor !important;
  stroke: none !important;
}
.site-footer.site-footer-luxury .footer-contact-line .footer-icon,
.site-footer.site-footer-luxury .footer-legal-mark {
  color: var(--footer-icon-gold) !important;
}
.site-footer-luxury .footer-legal {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: auto auto minmax(280px, 1fr) auto;
  gap: .65rem .95rem;
  align-items: center;
  margin: 0 !important;
  padding: 1.05rem 0 1.2rem !important;
  border: 0 !important;
  color: var(--footer-muted) !important;
}
.footer-legal-mark {
  width: 1.8rem;
  height: 1.8rem;
  display: grid;
  place-items: center;
  border: 1px solid rgba(201,160,99,.36);
  border-radius: 999px;
  color: var(--footer-gold) !important;
  font-family: var(--serif-display);
  font-size: 1rem;
}
.site-footer-luxury .footer-legal strong {
  color: var(--footer-gold-soft) !important;
  font-family: var(--sans);
  font-size: .68rem !important;
  font-weight: 850;
  letter-spacing: .16em;
  text-transform: uppercase;
  white-space: nowrap;
}
.site-footer-luxury .footer-legal nav {
  display: flex;
  flex-wrap: wrap;
  gap: .48rem .82rem;
  align-items: center;
}
.site-footer-luxury .footer-legal a,
.site-footer-luxury .footer-legal span,
.site-footer-luxury .footer-legal p {
  color: var(--footer-muted) !important;
  font-family: var(--sans);
  font-size: .7rem !important;
  font-weight: 520 !important;
  letter-spacing: .02em !important;
  line-height: 1.42 !important;
  text-transform: none !important;
}
.site-footer-luxury .footer-legal p {
  grid-column: 1 / -1;
  max-width: 1050px !important;
  margin: 0 !important;
}
@media (max-width: 1080px) {
  .footer-prelude-shell { grid-template-columns: 1fr; gap: 1.4rem; }
  .footer-prelude p { max-width: 720px !important; }
  .footer-cta-grid { grid-template-columns: 1fr; text-align: center; }
  .footer-brand-panel::after,
  .footer-contact-panel::before { display: none; }
  .footer-brand-panel { display: flex; justify-content: center; }
  .footer-contact-panel { width: min(560px, 100%); margin-inline: auto; }
  .footer-navigation { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .footer-prelude { padding: 2.5rem 0 4.5rem !important; }
  .footer-prelude-shell,
  .footer-main-shell { width: min(100% - 28px, 1180px); }
  .footer-prelude p { font-size: clamp(1.05rem, 5.5vw, 1.3rem) !important; line-height: 1.5 !important; }
  .footer-gold-wave { bottom: 1.7rem; opacity: .82; }
  .footer-main-shell { padding-top: 2.35rem !important; }
  .footer-cta-grid { gap: 1.45rem; padding-bottom: 2.05rem !important; }
  .site-footer-luxury .footer-logo { width: min(220px, 70vw) !important; }
  .site-footer-luxury .footer-cta-panel h2 { font-size: clamp(2rem, 10vw, 2.85rem) !important; }
  .footer-gold-button { width: min(100%, 340px); }
  .footer-contact-panel { text-align: left; }
  .footer-navigation { grid-template-columns: 1fr; gap: 1.05rem; padding: 2rem 0 !important; }
  .site-footer-luxury .footer-column { border-right: 0; border-bottom: 1px solid rgba(216,179,95,.14); padding: 0 0 1rem; }
  .site-footer-luxury .footer-column:last-child { border-bottom: 0; }
  .site-footer-luxury .footer-legal { grid-template-columns: 1fr; justify-items: start; padding-bottom: 1.4rem !important; }
  .site-footer-luxury .footer-legal strong { white-space: normal; }
}
@media (prefers-reduced-motion: reduce) {
  .footer-gold-button,
  .site-footer-luxury .footer-socials a { transition: none !important; transform: none !important; }
}

/* ===== RESULTS / VICTORIES PAGE CASEBOOK CORRECTION =================== */
.results-featured-system {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  padding: clamp(2.75rem, 5.5vw, 5.25rem) 0 clamp(2.25rem, 4vw, 3.5rem) !important;
  background:
    linear-gradient(90deg, rgba(10,15,22,.92) 0%, rgba(10,15,22,.78) 42%, rgba(10,15,22,.48) 100%),
    radial-gradient(circle at 8% 72%, rgba(122,31,46,.24), transparent 30rem),
    linear-gradient(135deg, #10161F 0%, #171F2A 45%, #232B36 100%) !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #F7F3EA !important;
}
.results-featured-system::before,
.results-featured-system:before {
  display: none !important;
}
.results-featured-system > * {
  position: relative !important;
  z-index: 1 !important;
}
.results-featured-shell {
  width: min(1320px, calc(100% - 48px)) !important;
}
.results-featured-intro {
  max-width: 940px !important;
  margin: 0 !important;
  text-align: left !important;
  gap: .85rem !important;
}
.results-featured-intro .eyebrow,
.results-featured-system .eyebrow {
  color: #C9A063 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
}
.results-featured-intro h1,
.results-featured-intro h2,
.results-featured-system .results-featured-intro h1,
.results-featured-system .results-featured-intro h2 {
  max-width: 980px !important;
  color: #F7F3EA !important;
  font-size: clamp(3rem, 6.4vw, 6.4rem) !important;
  line-height: .94 !important;
  text-wrap: balance !important;
}
.results-featured-intro p:not(.eyebrow) {
  max-width: 680px !important;
  margin: 0 !important;
  color: rgba(247,243,234,.78) !important;
}
.results-featured-carousel {
  max-width: none !important;
  margin-top: clamp(1.4rem, 3vw, 2.6rem) !important;
  gap: 1rem !important;
}
.results-featured-carousel .results-carousel-window,
html.js .results-featured-carousel.is-enhanced .results-carousel-window {
  position: relative !important;
  display: block !important;
  min-height: clamp(420px, 42vw, 560px) !important;
  overflow-x: hidden !important;
  overflow-y: visible !important;
  padding: 0 clamp(3.5rem, 7vw, 6rem) !important;
  scroll-snap-type: none !important;
  scrollbar-width: none !important;
}
.results-featured-carousel .results-carousel-window::-webkit-scrollbar {
  display: none !important;
}
.results-featured-carousel .results-slide,
html.js .results-featured-carousel.is-enhanced .results-slide {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  z-index: 1 !important;
  flex: none !important;
  width: min(62vw, 760px) !important;
  max-width: calc(100% - clamp(7rem, 14vw, 12rem)) !important;
  min-height: clamp(390px, 36vw, 500px) !important;
  height: min(100%, clamp(390px, 36vw, 500px)) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  scroll-snap-align: center !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translate(-50%, -50%) scale(.72) !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(201,160,99,.11), transparent 18rem),
    linear-gradient(135deg, rgba(255,255,255,.085), rgba(255,255,255,.025)),
    rgba(17,25,35,.86) !important;
  border: 1px solid rgba(247,243,234,.24) !important;
  border-radius: 20px !important;
  color: #F7F3EA !important;
  box-shadow: 0 28px 80px rgba(0,0,0,.34) !important;
  transition: opacity 260ms ease, transform 320ms cubic-bezier(.22,.61,.36,1), border-color 260ms ease, box-shadow 260ms ease !important;
}
.results-featured-carousel .results-slide.is-active,
html.js .results-featured-carousel.is-enhanced .results-slide.is-active {
  z-index: 4 !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: translate(-50%, -50%) scale(1) !important;
  border-color: rgba(201,160,99,.72) !important;
  box-shadow: 0 34px 90px rgba(0,0,0,.42), 0 0 0 1px rgba(122,31,46,.28) inset !important;
}
html.js .results-featured-carousel.is-enhanced .results-slide.is-prev,
html.js .results-featured-carousel.is-enhanced .results-slide.is-next {
  z-index: 2 !important;
  opacity: .62 !important;
  pointer-events: auto !important;
  border-color: rgba(247,243,234,.16) !important;
  box-shadow: 0 22px 58px rgba(0,0,0,.28) !important;
}
html.js .results-featured-carousel.is-enhanced .results-slide.is-prev {
  transform: translate(calc(-50% - min(34vw, 450px)), -50%) scale(.72) !important;
}
html.js .results-featured-carousel.is-enhanced .results-slide.is-next {
  transform: translate(calc(-50% + min(34vw, 450px)), -50%) scale(.72) !important;
}
.results-feature-card .results-slide-copy {
  align-content: center !important;
  gap: .95rem !important;
  padding: clamp(1.55rem, 3.2vw, 3rem) !important;
}
.results-feature-card .results-slide-copy h2 {
  max-width: 760px !important;
  color: #F7F3EA !important;
  font-size: clamp(2rem, 4.2vw, 4.6rem) !important;
  line-height: .96 !important;
}
.results-feature-card .results-slide-copy p:not(.eyebrow) {
  max-width: 680px !important;
  color: rgba(247,243,234,.76) !important;
  font-size: clamp(.95rem, 1.15vw, 1.08rem) !important;
  line-height: 1.58 !important;
}
.results-slide-meta {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: .65rem !important;
  margin: .1rem 0 !important;
}
.results-slide-meta div {
  padding: .72rem .8rem !important;
  border: 1px solid rgba(247,243,234,.15) !important;
  background: rgba(255,255,255,.045) !important;
}
.results-slide-meta dt {
  margin: 0 0 .18rem !important;
  color: #C9A063 !important;
  font-size: .66rem !important;
  font-weight: 800 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}
.results-slide-meta dd {
  margin: 0 !important;
  color: #F7F3EA !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(1.05rem, 1.45vw, 1.35rem) !important;
  line-height: 1.08 !important;
}
.results-case-badges {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .5rem !important;
}
.results-case-badges span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 2rem !important;
  padding: .48rem .68rem !important;
  border: 1px solid rgba(201,160,99,.45) !important;
  border-radius: 999px !important;
  background: rgba(201,160,99,.1) !important;
  color: #F4D8A1 !important;
  font-size: .66rem !important;
  font-weight: 800 !important;
  letter-spacing: .13em !important;
}
.results-feature-card .button-secondary {
  width: fit-content !important;
  background: transparent !important;
  border-color: rgba(201,160,99,.72) !important;
  color: #F7F3EA !important;
}
.results-feature-card .button-secondary:hover,
.results-feature-card .button-secondary:focus-visible {
  background: #7A1F2E !important;
  border-color: #7A1F2E !important;
  color: #FFFFFF !important;
}
.results-feature-card .results-slide-art {
  display: none !important;
}
.results-featured-carousel .results-arrow {
  top: clamp(18rem, 31vw, 25rem) !important;
  background: #7A1F2E !important;
  border-color: rgba(201,160,99,.42) !important;
  color: #FFFFFF !important;
}
.results-featured-carousel .results-story-strip {
  display: flex !important;
  gap: .85rem !important;
  overflow-x: auto !important;
  padding: .2rem .1rem .65rem !important;
}
.results-featured-carousel .results-story-card {
  flex: 0 0 min(270px, 74vw) !important;
  min-height: 5.75rem !important;
  background: rgba(255,255,255,.055) !important;
  border: 1px solid rgba(247,243,234,.18) !important;
  border-radius: 14px !important;
  color: #F7F3EA !important;
}
.results-featured-carousel .results-story-card.is-active,
.results-featured-carousel .results-story-card:hover,
.results-featured-carousel .results-story-card:focus-visible {
  background: rgba(122,31,46,.26) !important;
  border-color: rgba(201,160,99,.6) !important;
}
.results-featured-carousel .results-story-card strong {
  color: #F7F3EA !important;
}
.results-featured-carousel .results-story-card small {
  color: rgba(247,243,234,.64) !important;
}
.results-featured-carousel .results-stage-dots span {
  border-color: rgba(247,243,234,.42) !important;
}
.results-featured-carousel .results-stage-dots span.is-active {
  background: #C9A063 !important;
  border-color: #C9A063 !important;
}
.results-archive-system {
  position: relative !important;
  z-index: 1 !important;
  overflow: hidden !important;
  padding: clamp(2.8rem, 5vw, 4.8rem) 0 !important;
  background:
    radial-gradient(circle at 86% 0%, rgba(122,31,46,.06), transparent 32rem),
    #F2EDE4 !important;
  box-shadow: none !important;
  border-top: 0 !important;
  color: var(--color-ink) !important;
}
.results-archive-system::before,
.results-archive-system:before {
  display: none !important;
}
.results-archive-shell {
  width: min(1240px, calc(100% - 48px)) !important;
}
.results-archive-heading {
  max-width: 850px !important;
}
.results-archive-heading h2 {
  margin: .35rem 0 .7rem !important;
  color: var(--color-ink) !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(2.6rem, 5vw, 5.2rem) !important;
  line-height: .98 !important;
}
.results-archive-heading p {
  color: #3D4652 !important;
}
.results-archive-disclaimer {
  margin-top: 1rem !important;
  padding-top: 1rem !important;
  border-top: 1px solid rgba(122,31,46,.18) !important;
  font-size: .92rem !important;
}
.results-archive-filters {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: .8rem !important;
  margin: clamp(1.4rem, 2.4vw, 2rem) 0 !important;
  padding: clamp(1rem, 2vw, 1.35rem) !important;
  background: rgba(255,255,255,.78) !important;
  border: 1px solid rgba(212,216,220,.9) !important;
  border-radius: 14px !important;
  box-shadow: 0 20px 60px rgba(35,38,41,.1) !important;
}
.results-archive-filters label {
  display: grid !important;
  gap: .4rem !important;
  min-width: 0 !important;
  color: #7A1F2E !important;
  font-size: .68rem !important;
  font-weight: 800 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}
.results-archive-filters :is(select,input) {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 3rem !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(61,70,82,.2) !important;
  border-radius: 6px !important;
  background: #FFFFFF !important;
  color: var(--color-ink) !important;
  font: 500 .95rem/1.2 var(--sans) !important;
  padding: .75rem .8rem !important;
}
.results-archive-ledger {
  display: grid !important;
  gap: 1rem !important;
}
.results-ledger-category {
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(212,216,220,.95) !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.72) !important;
  box-shadow: 0 20px 60px rgba(35,38,41,.08) !important;
}
.results-ledger-category-heading {
  display: flex !important;
  align-items: center !important;
  gap: .8rem !important;
  padding: 1rem 1.2rem !important;
  border-bottom: 1px solid rgba(212,216,220,.9) !important;
}
.results-ledger-category-heading span {
  width: 2.2rem !important;
  height: 2.2rem !important;
  display: grid !important;
  place-items: center !important;
  color: #7A1F2E !important;
}
.results-ledger-category-heading h3 {
  margin: 0 !important;
  color: var(--color-ink) !important;
  font-size: clamp(1.6rem, 2.6vw, 2.6rem) !important;
}
.results-ledger-rows {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
}
.results-ledger-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1.45fr) minmax(120px, .42fr) minmax(120px, .42fr) minmax(180px, .7fr) !important;
  align-items: center !important;
  gap: 1rem !important;
  padding: 1rem 1.2rem !important;
  border: 0 !important;
  border-top: 1px solid rgba(212,216,220,.72) !important;
  background: transparent !important;
  box-shadow: none !important;
}
.results-ledger-row:first-child {
  border-top: 0 !important;
}
.results-ledger-row:hover {
  background: rgba(122,31,46,.045) !important;
}
.results-ledger-title h4 {
  margin: 0 0 .28rem !important;
  color: var(--color-ink) !important;
  font-size: clamp(1.22rem, 1.65vw, 1.7rem) !important;
  line-height: 1.08 !important;
}
.results-ledger-title p {
  margin: 0 !important;
  color: #3D4652 !important;
  line-height: 1.48 !important;
}
.results-ledger-row > span {
  color: #3D4652 !important;
  font-size: .88rem !important;
  font-weight: 700 !important;
}
.results-ledger-badges {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .35rem !important;
  justify-content: flex-end !important;
}
.results-ledger-badges em {
  display: inline-flex !important;
  padding: .34rem .48rem !important;
  border: 1px solid rgba(122,31,46,.24) !important;
  border-radius: 999px !important;
  color: #7A1F2E !important;
  background: rgba(122,31,46,.045) !important;
  font-size: .62rem !important;
  font-style: normal !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
}
.results-archive-actions {
  margin-top: 1.25rem !important;
}
.results-compact-cta {
  padding: clamp(1.8rem, 3.5vw, 3rem) 0 !important;
  background: #F2EDE4 !important;
}
.results-compact-cta__panel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: clamp(1rem, 3vw, 2.2rem) !important;
  align-items: center !important;
  padding: clamp(1.35rem, 2.4vw, 2rem) !important;
  background: #FFFFFF !important;
  border: 1px solid rgba(212,216,220,.95) !important;
  border-radius: 16px !important;
  box-shadow: 0 20px 60px rgba(35,38,41,.12) !important;
}
.results-compact-cta h2 {
  margin: .2rem 0 .35rem !important;
  color: var(--color-ink) !important;
  font-size: clamp(2rem, 3.4vw, 3.8rem) !important;
}
.results-compact-cta p:not(.eyebrow) {
  margin: 0 !important;
  max-width: 680px !important;
  color: #3D4652 !important;
}
@media (max-width: 980px) {
  .results-featured-carousel .results-carousel-window,
  html.js .results-featured-carousel.is-enhanced .results-carousel-window {
    display: flex !important;
    gap: 1rem !important;
    min-height: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: .25rem .25rem 1rem !important;
    scroll-snap-type: x mandatory !important;
  }
  .results-featured-carousel .results-slide,
  html.js .results-featured-carousel.is-enhanced .results-slide {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    flex: 0 0 min(86vw, 720px) !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: none !important;
    grid-template-columns: 1fr !important;
    flex-basis: 90vw !important;
  }
  html.js .results-featured-carousel.is-enhanced .results-slide.is-active,
  html.js .results-featured-carousel.is-enhanced .results-slide.is-prev,
  html.js .results-featured-carousel.is-enhanced .results-slide.is-next {
    transform: none !important;
  }
  .results-feature-card .results-slide-art {
    display: none !important;
  }
  .results-archive-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .results-ledger-row {
    grid-template-columns: 1fr !important;
    gap: .55rem !important;
  }
  .results-ledger-badges {
    justify-content: flex-start !important;
  }
  .results-compact-cta__panel {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 640px) {
  .results-featured-shell,
  .results-archive-shell,
  .results-compact-cta__panel {
    width: min(100% - 32px, 1240px) !important;
  }
  .results-slide-meta,
  .results-archive-filters {
    grid-template-columns: 1fr !important;
  }
  .results-featured-carousel .results-slide,
  html.js .results-featured-carousel.is-enhanced .results-slide {
    flex-basis: 92vw !important;
    min-height: 0 !important;
  }
  .results-featured-carousel .results-arrow {
    position: static !important;
    width: 100% !important;
  }
}

/* Results page final carousel + casebook ledger pass */
.results-featured-carousel .results-slide,
html.js .results-featured-carousel.is-enhanced .results-slide {
  min-height: clamp(450px, 40vw, 590px) !important;
  height: clamp(450px, 40vw, 590px) !important;
  background:
    radial-gradient(circle at 94% 12%, rgba(201,160,99,.15), transparent 17rem),
    linear-gradient(135deg, rgba(255,255,255,.09), rgba(255,255,255,.026)),
    rgba(14,20,29,.9) !important;
}
.results-featured-carousel .results-carousel-window,
html.js .results-featured-carousel.is-enhanced .results-carousel-window {
  min-height: clamp(520px, 48vw, 680px) !important;
}
.results-featured-carousel .results-slide::before,
html.js .results-featured-carousel.is-enhanced .results-slide::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, rgba(10,15,22,.88) 0%, rgba(10,15,22,.74) 52%, rgba(10,15,22,.58) 100%),
    url("/assets/results-redesign/results-card-background.png") center / cover no-repeat !important;
  opacity: .72 !important;
}
.results-featured-carousel .results-slide > *,
html.js .results-featured-carousel.is-enhanced .results-slide > * {
  position: relative !important;
  z-index: 1 !important;
}
.results-feature-card .results-slide-copy {
  min-width: 0 !important;
  max-height: 100% !important;
  overflow: auto !important;
  scrollbar-width: thin !important;
}
.results-feature-card .results-slide-copy h2 {
  max-width: 12.5ch !important;
  font-size: clamp(1.85rem, 3.25vw, 3.95rem) !important;
  line-height: 1.04 !important;
  overflow-wrap: anywhere !important;
  hyphens: auto !important;
}
.results-feature-card .results-slide-copy p:not(.eyebrow) {
  max-width: 58ch !important;
  font-size: clamp(.92rem, 1.02vw, 1.02rem) !important;
}
.results-featured-carousel .results-slide.is-active:hover,
.results-featured-carousel .results-slide.is-active:focus-within,
html.js .results-featured-carousel.is-enhanced .results-slide.is-active:hover,
html.js .results-featured-carousel.is-enhanced .results-slide.is-active:focus-within {
  transform: translate(-50%, -50%) scale(1) !important;
}
html.js .results-featured-carousel.is-enhanced .results-slide.is-prev:hover,
html.js .results-featured-carousel.is-enhanced .results-slide.is-prev:focus-within {
  transform: translate(calc(-50% - min(34vw, 450px)), -50%) scale(.72) !important;
}
html.js .results-featured-carousel.is-enhanced .results-slide.is-next:hover,
html.js .results-featured-carousel.is-enhanced .results-slide.is-next:focus-within {
  transform: translate(calc(-50% + min(34vw, 450px)), -50%) scale(.72) !important;
}
.results-archive-filters {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: .65rem !important;
}
.results-archive-filters button {
  appearance: none !important;
  border: 1px solid rgba(122,31,46,.22) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.78) !important;
  color: #7A1F2E !important;
  cursor: pointer !important;
  font: 800 .68rem/1 var(--sans) !important;
  letter-spacing: .14em !important;
  min-height: 2.55rem !important;
  padding: .78rem 1rem !important;
  text-transform: uppercase !important;
  transition: background 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease !important;
}
.results-archive-filters button:hover,
.results-archive-filters button:focus-visible,
.results-archive-filters button.is-active {
  background: #7A1F2E !important;
  border-color: #7A1F2E !important;
  color: #FFFFFF !important;
  transform: translateY(-1px) !important;
}
.results-archive-ledger {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: start !important;
  gap: clamp(1rem, 2vw, 1.4rem) !important;
}
.results-ledger-category {
  background:
    linear-gradient(180deg, rgba(255,255,255,.84), rgba(255,255,255,.68)),
    radial-gradient(circle at 100% 0%, rgba(201,160,99,.16), transparent 14rem) !important;
}
.results-ledger-row {
  position: relative !important;
  grid-template-columns: 2.35rem minmax(0, 1fr) !important;
  align-items: start !important;
  gap: .55rem .85rem !important;
  min-width: 0 !important;
  padding: 1.05rem 1.15rem 1.1rem !important;
}
.results-ledger-row[hidden] {
  display: none !important;
}
.results-ledger-file-icon {
  grid-row: span 5 !important;
  width: 2.25rem !important;
  height: 2.25rem !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(201,160,99,.36) !important;
  border-radius: 999px !important;
  color: #7A1F2E !important;
  background: rgba(201,160,99,.1) !important;
}
.results-ledger-file-icon svg {
  width: 1.15rem !important;
  height: 1.15rem !important;
}
.results-ledger-title,
.results-ledger-outcome,
.results-ledger-county,
.results-ledger-badges,
.results-ledger-link {
  grid-column: 2 !important;
}
.results-ledger-title h4 {
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
}
.results-ledger-outcome,
.results-ledger-county {
  color: #3D4652 !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
}
.results-ledger-outcome {
  color: #7A1F2E !important;
}
.results-ledger-link {
  width: fit-content !important;
  color: #7A1F2E !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  letter-spacing: .13em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}
.results-ledger-link::after {
  content: " ->" !important;
}
.results-ledger-link:hover,
.results-ledger-link:focus-visible {
  color: #5f1824 !important;
}
@media (max-width: 1080px) {
  .results-archive-ledger {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 980px) {
  .results-featured-carousel .results-slide,
  html.js .results-featured-carousel.is-enhanced .results-slide {
    min-height: 0 !important;
    height: auto !important;
  }
  .results-feature-card .results-slide-copy {
    overflow: visible !important;
  }
  .results-featured-carousel .results-slide:hover,
  .results-featured-carousel .results-slide:focus-within,
  html.js .results-featured-carousel.is-enhanced .results-slide:hover,
  html.js .results-featured-carousel.is-enhanced .results-slide:focus-within {
    transform: none !important;
  }
}

/* Results page casebook archive ledger */
.resultsArchive {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  padding: 0 0 clamp(2.8rem, 5vw, 4.5rem) !important;
  background:
    radial-gradient(circle at 90% 11%, rgba(255,255,255,.86), rgba(255,255,255,0) 30rem),
    linear-gradient(180deg, #FAF6EC 0%, #F7F3EA 58%, #FFFFFF 100%) !important;
  color: var(--color-ink) !important;
}
.resultsHero {
  position: relative !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: clamp(3.2rem, 6vw, 5.8rem) clamp(1.5rem, 5vw, 5rem) 2rem !important;
  border-bottom: 1px solid rgba(201,160,99,.38) !important;
}
.resultsHeroContent {
  position: relative !important;
  z-index: 2 !important;
  max-width: 820px !important;
}
.resultsHero .eyebrow {
  margin: 0 0 .55rem !important;
  color: var(--color-oxblood) !important;
  font-size: .78rem !important;
  font-weight: 800 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
}
.resultsHero h2 {
  margin: .2rem 0 .65rem !important;
  color: var(--color-ink) !important;
  font-family: var(--serif-display) !important;
  font-weight: 400 !important;
  font-size: clamp(3.6rem, 7vw, 6.6rem) !important;
  line-height: .95 !important;
  letter-spacing: 0 !important;
}
.resultsHeroRule {
  display: flex !important;
  align-items: center !important;
  gap: .9rem !important;
  width: min(540px, 100%) !important;
  margin: .7rem 0 1.2rem !important;
}
.resultsHeroRule::before,
.resultsHeroRule::after {
  content: "" !important;
  flex: 1 1 auto !important;
  height: 1px !important;
  background: rgba(201,160,99,.58) !important;
}
.resultsHeroRule span::before {
  content: "II" !important;
  color: rgba(201,160,99,.76) !important;
  font-family: var(--serif-display) !important;
  font-size: 1.25rem !important;
  line-height: 1 !important;
}
.resultsHero .intro {
  max-width: 760px !important;
  margin: 0 !important;
  color: #24303A !important;
  font-size: clamp(1rem, 1.25vw, 1.12rem) !important;
  line-height: 1.65 !important;
}
.resultsHero .disclaimer {
  max-width: 760px !important;
  margin: .9rem 0 0 !important;
  padding-top: .85rem !important;
  border-top: 1px solid rgba(201,160,99,.32) !important;
  color: #3D4652 !important;
  font-size: .9rem !important;
  line-height: 1.55 !important;
}
.resultsWatermark {
  position: absolute !important;
  z-index: 1 !important;
  right: 7.5% !important;
  top: 7% !important;
  color: var(--color-ink) !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(11rem, 19vw, 22rem) !important;
  font-weight: 400 !important;
  line-height: .8 !important;
  opacity: .045 !important;
  pointer-events: none !important;
}
.outcomeFilters {
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 1.45rem clamp(1.5rem, 5vw, 5rem) 1.2rem !important;
}
.filterBar {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .8rem !important;
}
.filterPill {
  appearance: none !important;
  min-height: 2.85rem !important;
  padding: .75rem 1.55rem !important;
  border: 1px solid rgba(201,160,99,.72) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.64) !important;
  color: var(--color-oxblood) !important;
  cursor: pointer !important;
  font: 800 .76rem/1 var(--sans) !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  transition: background 180ms ease, border-color 180ms ease, box-shadow 180ms ease, color 180ms ease, transform 180ms ease !important;
}
.filterPill:hover,
.filterPill:focus-visible,
.filterPill.active,
.filterPill.is-active {
  background: var(--color-oxblood) !important;
  border-color: var(--color-oxblood) !important;
  color: #FFFFFF !important;
  box-shadow: 0 16px 30px rgba(122,31,46,.18) !important;
}
.filterPill:focus-visible {
  outline: 2px solid rgba(201,160,99,.75) !important;
  outline-offset: 3px !important;
}
.resultsLedger {
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 0 clamp(1.5rem, 5vw, 5rem) !important;
}
.ledgerHeader,
.ledgerRow {
  display: grid !important;
  grid-template-columns: minmax(260px, 1.6fr) minmax(280px, 1.9fr) minmax(150px, .9fr) minmax(180px, 1fr) !important;
  align-items: stretch !important;
}
.ledgerHeader {
  overflow: hidden !important;
  border: 1px solid rgba(201,160,99,.62) !important;
  border-bottom: 0 !important;
  border-radius: 8px 8px 0 0 !important;
  background: rgba(255,255,255,.52) !important;
}
.ledgerHeader > div {
  min-width: 0 !important;
  padding: 1rem 1.45rem !important;
  border-right: 1px dashed rgba(201,160,99,.46) !important;
  color: var(--color-oxblood) !important;
  font-size: .72rem !important;
  font-weight: 900 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}
.ledgerHeader > div:last-child {
  border-right: 0 !important;
  padding-left: .6rem !important;
  padding-right: .6rem !important;
  font-size: .64rem !important;
  letter-spacing: .08em !important;
  text-align: center !important;
}
.ledgerRow > .ledgerDetails {
  padding-left: .4rem !important;
  padding-right: .4rem !important;
}
.ledgerRow {
  min-height: 114px !important;
  border: 1px solid rgba(201,160,99,.42) !important;
  border-top: 0 !important;
  background: rgba(255,255,255,.58) !important;
  color: var(--color-ink) !important;
  box-shadow: none !important;
  transition: background 180ms ease, box-shadow 180ms ease, transform 180ms ease !important;
}
.ledgerRow:hover {
  background: rgba(255,255,255,.82) !important;
  box-shadow: 0 16px 42px rgba(35,38,41,.08) !important;
  transform: translateY(-1px) !important;
}
.ledgerRow.is-hidden {
  display: none !important;
}
.ledgerRow:last-child {
  border-radius: 0 0 8px 8px !important;
}
.ledgerRow > div,
.ledgerRow > a {
  min-width: 0 !important;
  padding: 1.2rem 1.45rem !important;
  border-right: 1px dashed rgba(201,160,99,.38) !important;
  display: flex !important;
  align-items: center !important;
}
.ledgerRow > :last-child {
  border-right: 0 !important;
}
.ledgerMatter {
  gap: 1rem !important;
}
.resultIcon {
  flex: 0 0 auto !important;
  width: 54px !important;
  height: 54px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(201,160,99,.76) !important;
  border-radius: 50% !important;
  color: var(--color-oxblood) !important;
  background: rgba(255,255,255,.65) !important;
}
.resultIcon svg {
  width: 25px !important;
  height: 25px !important;
}
.ledgerMatter h3 {
  margin: 0 0 .35rem !important;
  color: var(--color-ink) !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(1.18rem, 1.45vw, 1.55rem) !important;
  font-weight: 500 !important;
  line-height: 1.12 !important;
}
.ledgerMatter p {
  margin: 0 !important;
  color: #9A6A2F !important;
  font-size: .76rem !important;
  font-weight: 850 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}
.ledgerSummary {
  color: #24303A !important;
  font-size: .98rem !important;
  line-height: 1.55 !important;
}
.ledgerOutcome {
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
}
.ledgerLabel {
  color: #9A6A2F !important;
  font-size: .7rem !important;
  font-weight: 850 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}
.ledgerOutcome strong {
  margin-top: .2rem !important;
  color: var(--color-oxblood) !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(1.08rem, 1.35vw, 1.4rem) !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.ledgerCounty {
  color: var(--color-ink) !important;
  font-size: .84rem !important;
  font-weight: 850 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}
.ledgerDetails {
  justify-content: center !important;
  color: var(--color-oxblood) !important;
  font-size: 1.55rem !important;
  line-height: 1 !important;
  text-decoration: none !important;
}
.ledgerDetails:hover,
.ledgerDetails:focus-visible {
  color: #5B1522 !important;
  background: rgba(122,31,46,.055) !important;
}
.archiveCTA {
  max-width: 1440px !important;
  margin: 1.6rem auto 0 !important;
  padding: 1rem clamp(1.5rem, 5vw, 5rem) !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 1.25rem !important;
}
.archiveCTA > * {
  min-width: 0 !important;
}
.archiveCTA {
  width: min(1440px, calc(100% - 0px)) !important;
}
.archiveCTAIcon {
  width: 54px !important;
  height: 54px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(201,160,99,.76) !important;
  border-radius: 50% !important;
  color: var(--color-oxblood) !important;
  background: rgba(255,255,255,.62) !important;
}
.archiveCTAIcon svg {
  width: 26px !important;
  height: 26px !important;
}
.archiveCTA h2 {
  margin: 0 0 .2rem !important;
  color: var(--color-ink) !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(1.4rem, 2vw, 1.9rem) !important;
  line-height: 1.12 !important;
}
.archiveCTA p {
  margin: 0 !important;
  color: #3D4652 !important;
}
.archiveCTAButton {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 1.2rem !important;
  min-height: 3rem !important;
  padding: .85rem 1.6rem !important;
  border: 1px solid var(--color-oxblood) !important;
  border-radius: 4px !important;
  background: rgba(255,255,255,.54) !important;
  color: var(--color-oxblood) !important;
  font-size: .78rem !important;
  font-weight: 850 !important;
  letter-spacing: .16em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}
.archiveCTAButton:hover,
.archiveCTAButton:focus-visible {
  background: var(--color-oxblood) !important;
  color: #FFFFFF !important;
}
@media (max-width: 1120px) {
  .ledgerHeader,
  .ledgerRow {
    grid-template-columns: minmax(230px, 1.45fr) minmax(220px, 1.55fr) minmax(135px, .82fr) minmax(150px, .88fr) !important;
  }
  .ledgerHeader > div,
  .ledgerRow > div,
  .ledgerRow > a {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}
@media (max-width: 900px) {
  .resultsHero {
    padding-top: 3rem !important;
  }
  .resultsWatermark {
    right: -1rem !important;
    top: 1.5rem !important;
    opacity: .035 !important;
  }
  .ledgerHeader {
    display: none !important;
  }
  .ledgerRow {
    display: block !important;
    min-height: 0 !important;
    margin-bottom: 1rem !important;
    border: 1px solid rgba(201,160,99,.46) !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.7) !important;
  }
  .ledgerRow > div,
  .ledgerRow > a {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(201,160,99,.26) !important;
    padding: 1rem !important;
  }
  .ledgerRow > :last-child {
    border-bottom: 0 !important;
  }
  .ledgerMatter {
    align-items: flex-start !important;
  }
  .ledgerOutcome,
  .ledgerCounty {
    align-items: flex-start !important;
  }
  .ledgerDetails {
    justify-content: flex-start !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
  }
  .ledgerDetails::before {
    content: "View Result" !important;
    margin-right: .8rem !important;
  }
  .archiveCTA {
    grid-template-columns: 1fr !important;
  }
  .archiveCTAButton {
    width: 100% !important;
  }
}
@media (max-width: 700px) {
  .resultsHero h2 {
    font-size: clamp(3rem, 16vw, 4.7rem) !important;
  }
  .filterBar {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    padding-bottom: .4rem !important;
    scrollbar-width: none !important;
  }
  .filterBar::-webkit-scrollbar {
    display: none !important;
  }
  .filterPill {
    white-space: nowrap !important;
  }
}

/* Results carousel fixed-state flip cards */
.results-featured-carousel .results-carousel-window,
html.js .results-featured-carousel.is-enhanced .results-carousel-window {
  position: relative !important;
  display: block !important;
  min-height: clamp(560px, 52vw, 720px) !important;
  overflow: visible !important;
  perspective: 1800px !important;
  padding: 0 !important;
  scroll-snap-type: none !important;
  scroll-behavior: auto !important;
}
.results-featured-carousel .results-slide,
html.js .results-featured-carousel.is-enhanced .results-slide {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  display: block !important;
  width: min(760px, 64vw) !important;
  max-width: calc(100% - 112px) !important;
  height: clamp(500px, 42vw, 620px) !important;
  min-height: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  opacity: 0 !important;
  overflow: visible !important;
  pointer-events: none !important;
  transform: translate(-50%, -50%) scale(.78) !important;
  transform-origin: center center !important;
  transition: opacity 260ms ease, transform 320ms cubic-bezier(.22,.61,.36,1), filter 260ms ease !important;
}
.results-featured-carousel .results-slide::before,
html.js .results-featured-carousel.is-enhanced .results-slide::before {
  display: none !important;
}
.results-featured-carousel .results-slide.is-active,
html.js .results-featured-carousel.is-enhanced .results-slide.is-active {
  z-index: 4 !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  filter: none !important;
  transform: translate(-50%, -50%) scale(1) !important;
}
.results-featured-carousel .results-slide.is-prev,
html.js .results-featured-carousel.is-enhanced .results-slide.is-prev {
  z-index: 2 !important;
  opacity: .46 !important;
  pointer-events: auto !important;
  filter: saturate(.82) brightness(.78) !important;
  transform: translate(calc(-50% - min(33vw, 430px)), -50%) scale(.74) !important;
}
.results-featured-carousel .results-slide.is-next,
html.js .results-featured-carousel.is-enhanced .results-slide.is-next {
  z-index: 2 !important;
  opacity: .46 !important;
  pointer-events: auto !important;
  filter: saturate(.82) brightness(.78) !important;
  transform: translate(calc(-50% + min(33vw, 430px)), -50%) scale(.74) !important;
}
.results-featured-carousel .results-slide.is-active:hover,
.results-featured-carousel .results-slide.is-active:focus-within,
html.js .results-featured-carousel.is-enhanced .results-slide.is-active:hover,
html.js .results-featured-carousel.is-enhanced .results-slide.is-active:focus-within {
  transform: translate(-50%, -50%) scale(1) !important;
}
.results-featured-carousel .results-slide.is-prev:hover,
.results-featured-carousel .results-slide.is-prev:focus-within,
html.js .results-featured-carousel.is-enhanced .results-slide.is-prev:hover,
html.js .results-featured-carousel.is-enhanced .results-slide.is-prev:focus-within {
  transform: translate(calc(-50% - min(33vw, 430px)), -50%) scale(.74) !important;
}
.results-featured-carousel .results-slide.is-next:hover,
.results-featured-carousel .results-slide.is-next:focus-within,
html.js .results-featured-carousel.is-enhanced .results-slide.is-next:hover,
html.js .results-featured-carousel.is-enhanced .results-slide.is-next:focus-within {
  transform: translate(calc(-50% + min(33vw, 430px)), -50%) scale(.74) !important;
}
.results-card-flip {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  transform-style: preserve-3d !important;
  transition: transform 620ms cubic-bezier(.22,.61,.36,1) !important;
}
.results-feature-card.is-details-open .results-card-flip {
  transform: rotateY(180deg) !important;
}
@media (hover: hover) and (pointer: fine) {
  .results-feature-card.is-active:hover .results-card-flip {
    transform: rotateY(180deg) !important;
  }
}
.results-card-face {
  position: absolute !important;
  inset: 0 !important;
  display: grid !important;
  align-items: stretch !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(201,160,99,.34) !important;
  border-radius: 24px !important;
  background: rgba(14,20,29,.94) !important;
  box-shadow: 0 34px 90px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.065) !important;
  -webkit-backface-visibility: hidden !important;
  backface-visibility: hidden !important;
}
.results-card-face::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background-image:
    linear-gradient(90deg, rgba(10,15,22,.93) 0%, rgba(10,15,22,.76) 43%, rgba(10,15,22,.54) 100%),
    radial-gradient(circle at 66% 42%, rgba(201,160,99,.30) 0%, rgba(122,31,46,.13) 30%, rgba(17,24,32,0) 58%),
    url("/assets/results-redesign/results-card-background.png") !important;
  background-size: cover !important;
  background-position: 62% center !important;
  background-repeat: no-repeat !important;
}
.results-card-face::after {
  content: "" !important;
  position: absolute !important;
  inset: 1rem !important;
  z-index: 1 !important;
  border: 1px solid rgba(247,243,234,.16) !important;
  border-radius: 18px !important;
  pointer-events: none !important;
}
.results-card-face-front {
  transform: rotateY(0deg) !important;
}
.results-card-face-back {
  transform: rotateY(180deg) !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
}
.results-card-face > * {
  position: relative !important;
  z-index: 2 !important;
}
.results-feature-card .results-slide-copy {
  align-content: center !important;
  gap: clamp(.7rem, 1.4vw, 1rem) !important;
  min-width: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  padding: clamp(1.45rem, 3vw, 2.65rem) !important;
}
.results-feature-card .results-slide-copy--front h2 {
  display: -webkit-box !important;
  max-width: 13.5ch !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 4 !important;
  text-overflow: ellipsis !important;
  text-wrap: balance !important;
  font-size: clamp(1.9rem, 3.05vw, 3.7rem) !important;
  line-height: 1.04 !important;
}
.results-feature-card .results-slide-copy--back h3 {
  margin: 0 !important;
  color: #F7F3EA !important;
  font-family: var(--serif-display) !important;
  font-size: clamp(1.5rem, 2.1vw, 2.4rem) !important;
  font-weight: 400 !important;
  line-height: 1.08 !important;
  text-wrap: balance !important;
}
.results-feature-card .results-slide-copy p:not(.eyebrow) {
  max-width: 62ch !important;
  color: rgba(247,243,234,.86) !important;
  font-size: clamp(.9rem, 1vw, 1rem) !important;
  line-height: 1.56 !important;
}
.results-slide-meta--back {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.results-slide-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: .75rem !important;
  margin-top: .25rem !important;
}
.results-detail-toggle {
  min-height: 3rem !important;
  padding: .9rem 1.05rem !important;
  border: 1px solid rgba(201,160,99,.46) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.06) !important;
  color: #F7F3EA !important;
  cursor: pointer !important;
  font: 800 .68rem/1 var(--sans) !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
  transition: border-color 180ms ease, background 180ms ease, color 180ms ease !important;
}
.results-detail-toggle:hover,
.results-detail-toggle:focus-visible {
  border-color: #C9A063 !important;
  background: rgba(201,160,99,.13) !important;
  color: #FFFFFF !important;
}
.results-featured-carousel .results-stage-dots button {
  width: .8rem !important;
  height: .8rem !important;
  padding: 0 !important;
  border: 1px solid rgba(247,243,234,.42) !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: transparent !important;
  cursor: pointer !important;
  overflow: hidden !important;
}
.results-featured-carousel .results-stage-dots button.is-active {
  background: #C9A063 !important;
  border-color: #C9A063 !important;
}
.results-ledger-row {
  border-left: 3px solid transparent !important;
}
.results-ledger-row:hover,
.results-ledger-row:focus-within {
  border-left-color: rgba(122,31,46,.72) !important;
}
@media (max-width: 980px) {
  .results-featured-carousel .results-carousel-window,
  html.js .results-featured-carousel.is-enhanced .results-carousel-window {
    display: block !important;
    min-height: clamp(560px, 112vw, 660px) !important;
    overflow: visible !important;
    padding: 0 !important;
  }
  .results-featured-carousel .results-slide,
  html.js .results-featured-carousel.is-enhanced .results-slide {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: min(92vw, 680px) !important;
    max-width: 100% !important;
    height: clamp(520px, 108vw, 640px) !important;
    flex: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translate(-50%, -50%) scale(.92) !important;
  }
  .results-featured-carousel .results-slide.is-active,
  html.js .results-featured-carousel.is-enhanced .results-slide.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translate(-50%, -50%) scale(1) !important;
  }
  .results-featured-carousel .results-slide.is-prev,
  .results-featured-carousel .results-slide.is-next,
  html.js .results-featured-carousel.is-enhanced .results-slide.is-prev,
  html.js .results-featured-carousel.is-enhanced .results-slide.is-next {
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translate(-50%, -50%) scale(.92) !important;
  }
  .results-feature-card .results-slide-copy {
    padding: 1.25rem !important;
  }
  .results-feature-card .results-slide-copy--front h2 {
    max-width: 100% !important;
    font-size: clamp(1.8rem, 8vw, 2.7rem) !important;
  }
  .results-slide-meta,
  .results-slide-meta--back {
    grid-template-columns: 1fr !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .results-featured-carousel .results-slide,
  .results-card-flip,
  .results-detail-toggle {
    transition: none !important;
  }
}
/* ===== END RESULTS / VICTORIES PAGE CASEBOOK CORRECTION =============== */

/* ===== AUTHORITATIVE FLIP-CARD FIX (must remain last) ===== */
.review-flip-card:not(.review-carousel-card),
.result-flip-card,
.review-flip-carousel:not(.is-enhanced) .review-flip-card {
  position: relative !important;
  height: clamp(440px, 38vw, 560px) !important;
  min-height: 0 !important;
  perspective: 1600px !important;
  overflow: visible !important;
}
.result-flip-card { height: clamp(600px, 42vw, 690px) !important; }
.review-flip-card:not(.review-carousel-card) .review-flip-inner,
.result-flip-card .review-flip-inner {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  transform-style: preserve-3d !important;
  transition: transform 600ms cubic-bezier(.22,.61,.36,1) !important;
}
.review-flip-card:not(.review-carousel-card) .review-flip-face,
.result-flip-card .review-flip-face {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  -webkit-backface-visibility: hidden !important;
  backface-visibility: hidden !important;
}
.review-flip-card:not(.review-carousel-card) .review-flip-front,
.result-flip-card .review-flip-front { transform: rotateY(0deg) !important; }
.review-flip-card:not(.review-carousel-card) .review-flip-back,
.result-flip-card .review-flip-back { transform: rotateY(180deg) !important; }
.review-flip-card:not(.review-carousel-card):hover .review-flip-inner,
.review-flip-card:not(.review-carousel-card):focus-visible .review-flip-inner,
.review-flip-card:not(.review-carousel-card).is-flipped .review-flip-inner,
.review-flip-card:not(.review-carousel-card)[aria-pressed="true"] .review-flip-inner,
.result-flip-card:hover .review-flip-inner,
.result-flip-card:focus-visible .review-flip-inner,
.result-flip-card.is-flipped .review-flip-inner,
.result-flip-card[aria-pressed="true"] .review-flip-inner {
  transform: rotateY(180deg) !important;
}
.review-flip-card:not(.review-carousel-card), .result-flip-card { transform: none !important; translate: 0 0 !important; }
.homepage-results-preview .result-preview-grid .result-flip-card,
.homepage-results-preview .result-flip-card,
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card),
.review-flip-carousel:not(.is-enhanced) .review-flip-card,
.homepage-results-preview .result-preview-grid .result-flip-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]),
.homepage-results-preview .result-flip-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]),
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card):is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]),
.review-flip-carousel:not(.is-enhanced) .review-flip-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  transform: none !important;
  translate: 0 0 !important;
  top: auto !important;
  bottom: auto !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.homepage-results-preview .result-preview-grid .result-flip-card .review-flip-inner,
.homepage-results-preview .result-flip-card .review-flip-inner,
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card) .review-flip-inner,
.review-flip-carousel:not(.is-enhanced) .review-flip-card .review-flip-inner {
  translate: 0 0 !important;
}
.homepage-results-preview .result-preview-grid .result-flip-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) .review-flip-inner,
.homepage-results-preview .result-flip-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) .review-flip-inner,
.homepage-reviews .review-flip-card:not(.result-flip-card):not(.review-carousel-card):is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) .review-flip-inner,
.review-flip-carousel:not(.is-enhanced) .review-flip-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) .review-flip-inner {
  transform: rotateY(180deg) !important;
  translate: 0 0 !important;
}
.review-flip-card:not(.review-carousel-card) .review-flip-face .stars,
.review-flip-card:not(.review-carousel-card) .stars,
.review-flip-card:not(.review-carousel-card) .review-stars,
.result-flip-card .stars {
  font-size: clamp(2.4rem, 4.4vw, 3.4rem) !important;
  letter-spacing: .14em !important;
  line-height: 1 !important;
  transition: transform 240ms ease, text-shadow 240ms ease !important;
}
.review-flip-card:not(.review-carousel-card):hover .review-stars,
.review-flip-card:not(.review-carousel-card):focus-visible .review-stars,
.review-flip-carousel:not(.is-enhanced) .review-flip-card:hover .review-stars,
.review-flip-carousel:not(.is-enhanced) .review-flip-card:focus-visible .review-stars {
  transform: scale(1.18) !important;
  text-shadow: 0 0 16px rgba(122,31,46,.28), 0 0 30px rgba(185,133,144,.22) !important;
}
@media (prefers-reduced-motion: reduce){
  .review-flip-card:not(.review-carousel-card) .review-flip-inner,
  .result-flip-card .review-flip-inner { transition: none !important; }
}

/* Enhanced review carousel: keep the card shell fixed; flip only the inner layer. */
.review-flip-carousel.is-enhanced .review-carousel-card,
.review-flip-carousel.is-enhanced .review-carousel-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  position: absolute !important;
  left: 50% !important;
  top: 0 !important;
  bottom: auto !important;
  margin: 0 !important;
  height: 100% !important;
  min-height: 0 !important;
  translate: 0 0 !important;
  transform-origin: center center !important;
  overflow: visible !important;
}
.review-flip-carousel.is-enhanced .review-carousel-card.is-active,
.review-flip-carousel.is-enhanced .review-carousel-card.is-active:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  transform: translateX(-50%) scale(1) !important;
}
.review-flip-carousel.is-enhanced .review-carousel-card.is-prev,
.review-flip-carousel.is-enhanced .review-carousel-card.is-prev:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  transform: translateX(calc(-50% - clamp(180px, 24vw, 300px))) scale(.88) !important;
}
.review-flip-carousel.is-enhanced .review-carousel-card.is-next,
.review-flip-carousel.is-enhanced .review-carousel-card.is-next:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  transform: translateX(calc(-50% + clamp(180px, 24vw, 300px))) scale(.88) !important;
}
.review-flip-carousel.is-enhanced .review-carousel-card .review-flip-inner {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  translate: 0 0 !important;
  transform-style: preserve-3d !important;
  transform-origin: center center !important;
  transition: transform 600ms cubic-bezier(.22,.61,.36,1) !important;
}
.review-flip-carousel.is-enhanced .review-carousel-card:is(.is-flipped, [aria-pressed="true"]) .review-flip-inner {
  transform: rotateY(180deg) !important;
}
@media (hover: hover) and (pointer: fine) {
  .review-flip-carousel.is-enhanced .review-carousel-card.is-active:hover .review-flip-inner {
    transform: rotateY(180deg) !important;
  }
}
.review-flip-carousel.is-enhanced .review-carousel-card .review-flip-face {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  translate: 0 0 !important;
  -webkit-backface-visibility: hidden !important;
  backface-visibility: hidden !important;
}
.review-flip-carousel.is-enhanced .review-carousel-card .review-flip-front {
  transform: rotateY(0deg) !important;
}
.review-flip-carousel.is-enhanced .review-carousel-card .review-flip-back {
  transform: rotateY(180deg) !important;
}

/* Final in-place flip lock: the shell never moves, and front/back occupy one rectangle. */
.review-flip-card[data-review-flip-card],
.review-flip-card[data-review-flip-card]:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  transform-origin: center center !important;
  perspective: 1600px !important;
  align-self: start !important;
}
.review-flip-card[data-review-flip-card]:not(.review-carousel-card),
.review-flip-card[data-review-flip-card]:not(.review-carousel-card):is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  position: relative !important;
  display: block !important;
  transform: none !important;
  translate: 0 0 !important;
  top: auto !important;
  bottom: auto !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.review-flip-card[data-review-flip-card] > .review-flip-inner {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  translate: 0 0 !important;
  transform: rotateY(0deg) !important;
  transform-origin: center center !important;
  transform-style: preserve-3d !important;
  will-change: transform !important;
}
.review-flip-card[data-review-flip-card]:is(.is-flipped, [aria-pressed="true"]) > .review-flip-inner {
  transform: rotateY(180deg) !important;
}
@media (hover: hover) and (pointer: fine) {
  .review-flip-card[data-review-flip-card]:hover > .review-flip-inner {
    transform: rotateY(180deg) !important;
  }
}
.review-flip-card[data-review-flip-card] > .review-flip-inner > .review-flip-face {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  translate: 0 0 !important;
  transform-origin: center center !important;
  -webkit-backface-visibility: hidden !important;
  backface-visibility: hidden !important;
}
.review-flip-card[data-review-flip-card] > .review-flip-inner > .review-flip-front {
  transform: rotateY(0deg) !important;
}
.review-flip-card[data-review-flip-card] > .review-flip-inner > .review-flip-back {
  transform: rotateY(180deg) !important;
}

/* ===== Cities page: stylistic header + cream tier bands ===== */
.cities-served-header,
.knowledge-tree-cities-band {
  /* reserved hooks */
}
body.page-cities .hero h1,
.cities-hero h1 {
  font-family: var(--serif-display);
  font-weight: 400;
  font-size: clamp(3rem, 7vw, 6rem);
  line-height: 1.01;
  max-width: 18ch;
  letter-spacing: -0.01em;
}
.cities-tier-band {
  position: relative;
  background: var(--color-cream);
  clip-path: inset(0 -100vmax);
}
.cities-tier-band > * { position: relative; z-index: 1; }
.cities-tier-band::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0 auto 0 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: var(--color-cream);
  pointer-events: none;
}
.cities-tier-band .eyebrow,
.cities-tier-band .section-heading h2,
.cities-tier-band .section-heading p { color: var(--color-muted); }
.cities-tier-band .eyebrow { color: var(--color-oxblood); }
.cities-tier-band .section-heading h2 { color: var(--color-ink); }
.cities-tier-band .premium-card,
.cities-tier-band .info-card,
.cities-tier-band article {
  background: var(--color-paper);
  border: .5px solid var(--color-hairline);
  border-top: 2px solid var(--color-gold);
  border-radius: 0 0 8px 8px;
  box-shadow: 0 1px 3px rgba(35,38,41,0.04);
}
.cities-tier-band .premium-card h2,
.cities-tier-band .premium-card h3,
.cities-tier-band .info-card h2,
.cities-tier-band article h2,
.cities-tier-band article h3 { color: var(--color-ink); }
.cities-tier-band .premium-card p,
.cities-tier-band .info-card p,
.cities-tier-band article p { color: var(--color-muted); }
.cities-tier-band a { color: var(--color-oxblood); }

/* Practice Areas page: cream full-bleed band (source-keyed, revert-proof) */
.practice-area-group {
  position: relative;
  background: var(--color-cream);
  clip-path: inset(0 -100vmax);
}
.practice-area-group > * { position: relative; z-index: 1; }
.practice-area-group::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0 auto 0 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: var(--color-cream);
  pointer-events: none;
}
.practice-area-group .eyebrow { color: var(--color-oxblood); }
.practice-area-group .section-heading h2 { color: var(--color-ink); }
.practice-area-group .section-heading p,
.practice-area-group .see-also,
.practice-area-group .see-also a { color: var(--color-muted); }
.practice-area-group .see-also a { color: var(--color-oxblood); }
.practice-area-group .see-also a { text-decoration: underline; }

/* Global heading descender safety: Cormorant/Garamond needs room below the baseline. */
h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.2 !important;
  padding-bottom: .15em;
  overflow: visible;
}
.section-heading,
.article-header,
.page-banner-header,
.hero-editorial-copy,
.hero-video-copy,
.hero-carousel-copy {
  overflow: visible;
}
.faq-section .section-heading {
  margin-bottom: clamp(1.5rem, 2.4vw, 2rem);
}
.faq-list {
  display: grid;
  gap: .5rem;
}
.faq-list details {
  border: 1px solid var(--color-hairline);
  background: var(--color-sand);
  padding: .85rem 1.2rem;
}
.faq-list summary {
  cursor: pointer;
  font-family: var(--serif);
  font-size: 1.25rem !important;
  font-weight: 500;
}
.faq-list summary::before {
  content: none !important;
  display: none !important;
}
.faq-list summary::after {
  content: "+" !important;
  position: absolute !important;
  right: .25rem !important;
  top: 50% !important;
  width: auto !important;
  height: auto !important;
  background: transparent !important;
  color: var(--color-oxblood) !important;
  font-family: var(--sans) !important;
  font-size: 1.7rem !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  transform: translateY(-50%) !important;
  transition: color 180ms ease, transform 180ms ease !important;
}
.faq-list details[open] summary::after {
  content: "\2212" !important;
  transform: translateY(-50%) !important;
}

/* Warm paper elevation pass for white cards and form/content panels. */
:is(.content-section .premium-card,
.content-section .recognition-card,
.court-resources-grid .premium-card,
.info-card,
.payment-panel,
.notice,
.lux-form,
.case-review-form,
.case-review-panel,
.google-review-feature,
.endorsement-preview,
.interior-google-box,
.interior-case-review,
.review-flip-card,
.result-flip-card,
.results-slide,
.results-story-card,
.result-case-row,
.law-aside-card,
.short-answer,
.knowledge-tree-primary .kt-map-wrap,
.knowledge-tree-primary .station-index,
.cities-tier-band .premium-card,
.cities-tier-band .info-card,
.cities-tier-band article,
.practice-area-group .practice-area-card-grid > *,
.practice-area-dark-card) {
  box-shadow: var(--shadow) !important;
}

/* Homepage redesign asset-pack pass */
.homepage-glow-stage {
  background: var(--color-cream);
  overflow: clip;
}
.homepage-glow-stage .video-page-hero--home {
  min-height: clamp(620px, 78svh, 820px);
  padding-top: clamp(5.5rem, 8vw, 7rem);
  padding-bottom: clamp(4rem, 6vw, 5.5rem);
}
.homepage-glow-stage .video-page-hero--home .video-page-hero__inner {
  width: min(1280px, 100%);
}
.homepage-glow-stage .video-page-hero--home h1 {
  max-width: 8.5ch;
  font-size: clamp(4rem, 7.2vw, 7.4rem);
  line-height: .94 !important;
}
.homepage-glow-stage .video-page-hero--home .video-page-hero__subtitle {
  font-weight: 700;
  color: rgba(255,255,255,.94);
}
.homepage-glow-stage .video-page-hero--home .video-page-hero__support {
  max-width: 48ch;
  color: var(--color-gold);
}
.homepage-results-preview {
  width: 100%;
  margin: 0;
  padding: clamp(2.2rem, 4vw, 4rem) 0;
  background:
    radial-gradient(circle at 96% 42%, rgba(122,31,46,.05), transparent 26%),
    var(--color-paper);
}
.homepage-results-preview__inner {
  width: min(1280px, calc(100% - 48px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: .72fr 1.58fr;
  gap: clamp(2rem, 5vw, 5rem);
  align-items: start;
}
.homepage-results-preview__intro {
  padding-right: clamp(1rem, 3vw, 3rem);
  border-right: 1px solid color-mix(in srgb, var(--color-oxblood) 16%, var(--color-hairline));
}
.homepage-results-preview__intro h2 {
  margin: .75rem 0 1.5rem;
  font-size: clamp(2.4rem, 4.3vw, 4.8rem);
  line-height: 1.02 !important;
}
.homepage-results-mini-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.homepage-result-mini {
  min-height: 255px;
  padding: clamp(1.4rem, 2.3vw, 2.4rem);
  border-left: 1px solid color-mix(in srgb, var(--color-oxblood) 14%, var(--color-hairline));
  background: transparent;
}
.homepage-result-mini span,
.homepage-result-mini dt {
  color: var(--color-oxblood);
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.homepage-result-mini h3 {
  margin: .9rem 0 1.4rem;
  font-size: clamp(2rem, 3.2vw, 3.35rem);
  line-height: 1.03 !important;
}
.homepage-result-mini dl,
.homepage-result-mini div {
  display: grid;
  gap: .58rem;
}
.homepage-result-mini div {
  grid-template-columns: 80px minmax(0, 1fr);
  padding: .52rem 0;
  border-top: 1px solid color-mix(in srgb, var(--color-hairline) 76%, transparent);
}
.homepage-result-mini dd {
  margin: 0;
  color: var(--color-muted);
  font-size: .84rem;
  line-height: 1.45;
}
.homepage-practice-links {
  position: relative;
  margin: 0;
  padding: clamp(3rem, 6vw, 5.4rem) 0;
  color: var(--color-white) !important;
  background:
    radial-gradient(circle at 18% 12%, rgba(201,160,99,.13), transparent 40%),
    linear-gradient(135deg, #0e131b 0%, #17202b 48%, #26313f 100%) !important;
  box-shadow: 0 0 0 100vmax #0e131b !important;
  overflow: clip;
}
.homepage-practice-links::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 90px;
  background: linear-gradient(to bottom, transparent, var(--color-cream));
  pointer-events: none;
}
.homepage-practice-links__inner {
  position: relative;
  z-index: 1;
  width: min(1280px, calc(100% - 48px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(250px, .32fr) minmax(390px, .40fr) minmax(260px, .28fr);
  align-items: stretch;
  gap: clamp(1rem, 2vw, 1.6rem);
  min-width: 0;
}
.homepage-practice-copy {
  align-self: center;
  min-width: 0;
  padding: clamp(1.5rem, 3vw, 3rem) clamp(1rem, 2vw, 2rem) clamp(1.5rem, 3vw, 3rem) 0;
}
.homepage-practice-links .eyebrow {
  color: var(--color-gold) !important;
}
.homepage-practice-copy h2 {
  max-width: 12ch;
  margin: .8rem 0 1.2rem;
  color: var(--color-white) !important;
  font-size: clamp(2.4rem, 4.4vw, 5rem);
  line-height: 1.02 !important;
}
.homepage-practice-copy p {
  max-width: 48ch;
  color: rgba(247,243,234,.76) !important;
}
.homepage-practice-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-self: center;
  border: 1px solid rgba(247,243,234,.16);
  background: rgba(255,255,255,.025);
  min-width: 0;
}
.homepage-practice-card {
  min-height: 142px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: .65rem;
  min-width: 0;
  padding: clamp(1rem, 1.8vw, 1.3rem);
  color: var(--color-ivory) !important;
  text-decoration: none;
  text-align: center;
  border: 0 !important;
  border-right: 1px solid rgba(247,243,234,.16) !important;
  border-bottom: 1px solid rgba(247,243,234,.16) !important;
  border-radius: 0 !important;
  background: transparent !important;
  transition: background .22s ease, color .22s ease, transform .22s ease;
}
.homepage-practice-card:nth-last-child(-n+3) {
  border-bottom: 0 !important;
}
.homepage-practice-card span svg {
  width: 42px;
  height: 42px;
  fill: none;
  stroke: var(--color-gold);
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.homepage-practice-card strong {
  max-width: 12ch;
  color: inherit !important;
  font-family: var(--serif-display);
  font-size: clamp(1.08rem, 1.45vw, 1.48rem);
  font-weight: 500;
  line-height: 1.08;
}
.homepage-practice-card:hover,
.homepage-practice-card:focus-visible {
  background: var(--color-oxblood) !important;
  transform: translateY(-2px);
}
.homepage-practice-image {
  min-height: 0;
  margin: 0;
  overflow: hidden;
  align-self: stretch;
  aspect-ratio: 4 / 5;
  border: 1px solid rgba(247,243,234,.16);
  box-shadow: 0 28px 70px rgba(0,0,0,.24);
}
.homepage-practice-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  filter: saturate(.85) contrast(1.05) brightness(.88);
}
.homepage-reviews {
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(0, 1.74fr);
  margin: 0;
  padding: 0;
  background: var(--color-paper);
}
.homepage-reviews__image {
  min-height: 360px;
  margin: 0;
  overflow: hidden;
}
.homepage-reviews__image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: 42% center;
}
.homepage-reviews__content {
  padding: clamp(2.5rem, 5vw, 4.8rem) clamp(2rem, 6vw, 5.8rem);
}
.homepage-reviews .section-heading {
  max-width: 860px;
  margin-bottom: clamp(1.7rem, 3vw, 2.7rem);
}
.homepage-reviews .section-heading h2 {
  font-size: clamp(2.1rem, 3.8vw, 4.4rem);
  line-height: 1.05 !important;
}
.homepage-review-quote-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.homepage-review-quote {
  min-height: 250px;
  padding: 0 clamp(1.2rem, 2.3vw, 2.3rem);
  border-left: 1px solid color-mix(in srgb, var(--color-oxblood) 16%, var(--color-hairline));
}
.homepage-review-quote .stars {
  color: var(--color-oxblood);
  font-size: 1rem;
  letter-spacing: .18em;
}
.homepage-review-quote blockquote {
  margin: 1.1rem 0;
  color: var(--color-ink);
  font-size: clamp(.95rem, 1.12vw, 1.08rem);
  line-height: 1.6;
}
.homepage-review-quote cite {
  display: block;
  color: var(--color-ink);
  font-style: normal;
  font-weight: 700;
}
.homepage-review-quote > span {
  display: block;
  margin-top: .45rem;
  color: var(--color-muted);
  font-size: .64rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.homepage-reviews .text-link {
  display: inline-flex;
  margin-top: clamp(1.3rem, 2vw, 2rem);
}
.case-review-module {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}
.case-review-panel {
  display: grid;
  grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
  width: min(1280px, calc(100% - 48px));
  max-width: 100%;
  margin-inline: auto;
  border: 0;
  background: var(--color-white);
  box-shadow: none !important;
  box-sizing: border-box;
}
.case-review-copy {
  padding: clamp(2.5rem, 5vw, 4.5rem) clamp(2rem, 4vw, 3.5rem);
  color: #FFFFFF;
  background:
    radial-gradient(circle at 12% 10%, rgba(255,255,255,.12), transparent 34%),
    linear-gradient(135deg, #7A1F2E, #4f101c);
}
.case-review-copy .eyebrow {
  color: var(--color-gold);
}
.case-review-copy h2 {
  max-width: 22ch;
  color: #FFFFFF;
  font-size: clamp(1.9rem, 2.4vw, 2.7rem);
  line-height: 1.14 !important;
  text-wrap: balance;
  margin-bottom: 1rem;
}
.case-review-copy p,
.case-review-copy li {
  color: rgba(247,243,234,.82);
}
.case-review-copy a {
  color: #FFFFFF;
}
.payment-options-button,
.case-review-list-intro,
.case-review-signals {
  display: none !important;
}
.case-review-form {
  align-self: center;
  margin: 0;
  padding: clamp(2.4rem, 5vw, 4.5rem) max(32px, calc((100vw - 1280px) / 2 + 48px)) clamp(2.4rem, 5vw, 4.5rem) clamp(2rem, 5vw, 4.5rem);
  border: 0;
  box-shadow: none !important;
  background: #FFFFFF;
}
.case-review-form input,
.case-review-form select,
.case-review-form textarea {
  width: 100%;
  box-sizing: border-box;
  background: var(--color-paper);
}
@media (max-width: 980px) {
  .homepage-results-preview__inner,
  .homepage-practice-links__inner,
  .homepage-reviews,
  .case-review-panel {
    grid-template-columns: 1fr;
  }
  .homepage-results-preview__intro {
    border-right: 0;
    padding-right: 0;
  }
  .homepage-results-mini-grid,
  .homepage-review-quote-grid {
    grid-template-columns: 1fr;
  }
  .homepage-result-mini,
  .homepage-review-quote {
    border-left: 0;
    border-top: 1px solid color-mix(in srgb, var(--color-oxblood) 16%, var(--color-hairline));
  }
  .homepage-practice-copy {
    padding-right: 0;
  }
  .homepage-practice-image {
    min-height: 300px;
  }
  .case-review-copy,
  .case-review-form {
    padding: clamp(2rem, 7vw, 3.2rem) clamp(1.4rem, 5vw, 2rem);
  }
}
@media (max-width: 700px) {
  .homepage-glow-stage .video-page-hero--home {
    min-height: 640px;
  }
  .homepage-glow-stage .video-page-hero--home h1 {
    font-size: clamp(3.2rem, 15vw, 4.8rem);
  }
  .homepage-results-preview__inner,
  .homepage-practice-links__inner,
  .homepage-reviews__content {
    width: min(100% - 28px, 1280px);
  }
  .homepage-practice-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .homepage-practice-card:nth-last-child(-n+3) {
    border-bottom: 1px solid rgba(247,243,234,.16) !important;
  }
  .homepage-practice-card:nth-last-child(-n+2) {
    border-bottom: 0 !important;
  }
}

/* ===== Reviews page redesign pack ================================== */
.reviews-redesign {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 84% 8%, rgba(255,255,255,.86), rgba(255,255,255,.16) 22%, transparent 48%),
    radial-gradient(circle at 12% 35%, rgba(122,31,46,.075), transparent 32%),
    linear-gradient(180deg, #F2EDE4 0%, #FAF7F0 42%, #F2EDE4 100%);
  padding: clamp(3rem, 6vw, 5rem) 0 clamp(3.5rem, 7vw, 6rem);
}
.reviews-redesign::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: min(44vw, 520px);
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(242,237,228,.96), rgba(242,237,228,.62) 35%, rgba(242,237,228,.12)),
    repeating-linear-gradient(90deg, rgba(61,70,82,.08) 0 1px, transparent 1px 84px);
  mask-image: linear-gradient(180deg, #000 0%, transparent 88%);
  opacity: .44;
}
.reviews-redesign > * {
  position: relative;
  z-index: 1;
}
.reviews-trust-intro {
  max-width: 1180px;
}
.reviews-trust-intro .eyebrow {
  color: var(--color-oxblood);
}
.reviews-trust-intro h2 {
  max-width: 16ch;
  margin: .4rem 0 0;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(3rem, 7vw, 6.4rem);
  font-weight: 400;
  line-height: .98 !important;
}
.reviews-trust-intro > p {
  max-width: 760px;
  margin: 1rem 0 0;
  color: var(--color-slate);
  font-size: clamp(1rem, 1.25vw, 1.16rem);
  line-height: 1.65;
}
.reviews-intro-actions {
  margin-top: 1.35rem;
}
.reviews-rating-panel {
  display: grid;
  grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr);
  max-width: 1180px;
  margin-top: clamp(2rem, 4vw, 3.2rem);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.76);
  border-radius: 18px;
  background:
    linear-gradient(150deg, rgba(255,255,255,.78), rgba(250,247,240,.58)),
    rgba(255,255,255,.64);
  -webkit-backdrop-filter: blur(18px) saturate(116%);
  backdrop-filter: blur(18px) saturate(116%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 24px 70px rgba(35,38,41,.13);
}
.reviews-rating-card,
.reviews-trust-card {
  padding: clamp(1.7rem, 3vw, 3rem);
}
.reviews-rating-card {
  border-right: 1px solid rgba(61,70,82,.14);
}
.reviews-rating-card h2,
.reviews-trust-card h2 {
  margin: .4rem 0 0;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(2rem, 3.4vw, 3.4rem);
  font-weight: 400;
  line-height: 1.04 !important;
}
.reviews-score-row {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem 1rem;
  align-items: baseline;
  margin: 1.2rem 0 .5rem;
}
.reviews-score-row strong {
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(3rem, 6vw, 5.5rem);
  font-weight: 400;
  line-height: .9;
}
.reviews-score-row span {
  color: #C9A063;
  font-size: clamp(1.35rem, 2.4vw, 2rem);
  letter-spacing: .08em;
  text-shadow: 0 0 18px rgba(201,160,99,.18);
}
.reviews-rating-card p,
.reviews-trust-card p {
  color: var(--color-slate);
  line-height: 1.62;
}
.reviews-rating-card p a {
  color: var(--color-oxblood);
  text-underline-offset: .18em;
}
.reviews-rating-actions,
.reviews-source-row,
.reviews-category-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
}
.reviews-rating-actions {
  margin-top: 1.35rem;
}
.reviews-mini-divider {
  display: flex;
  align-items: center;
  gap: .55rem;
  margin: 1rem 0 1.1rem;
}
.reviews-mini-divider span {
  width: .32rem;
  height: .32rem;
  background: var(--color-oxblood);
  transform: rotate(45deg);
}
.reviews-mini-divider::after {
  content: "";
  width: 4.2rem;
  height: 1px;
  background: rgba(122,31,46,.24);
}
.reviews-source-row {
  margin-top: 1.4rem;
}
.reviews-source-row :is(a, span) {
  min-width: 8.6rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  min-height: 3.35rem;
  padding: .65rem 1rem;
  border: 1px solid rgba(122,31,46,.18);
  background: rgba(255,255,255,.54);
  color: var(--color-ink);
  font-family: var(--sans);
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-decoration: none;
}
.reviews-source-row strong {
  color: var(--color-oxblood);
  font-size: 1.1rem;
}
.reviews-source-row a:hover,
.reviews-source-row a:focus-visible {
  border-color: var(--color-oxblood);
  box-shadow: 0 12px 30px rgba(35,38,41,.08);
  transform: translateY(-1px);
}
.reviews-category-tabs {
  margin-top: clamp(1.8rem, 3vw, 2.5rem);
  padding-top: 1rem;
  border-top: 1px solid rgba(61,70,82,.14);
}
.reviews-category-tabs a {
  padding-bottom: .55rem;
  border-bottom: 2px solid transparent;
  color: var(--color-muted);
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-decoration: none;
}
.reviews-category-tabs a.is-active,
.reviews-category-tabs a:hover,
.reviews-category-tabs a:focus-visible {
  border-bottom-color: var(--color-oxblood);
  color: var(--color-oxblood);
}
.reviews-carousel-section {
  max-width: 1280px;
  margin-top: clamp(3rem, 6vw, 5rem);
}
.reviews-carousel-heading {
  max-width: 780px;
  margin-bottom: clamp(1rem, 2vw, 1.5rem);
}
.reviews-carousel-heading h2 {
  margin: .35rem 0 0;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(2.6rem, 5vw, 5rem);
  font-weight: 400;
  line-height: 1.02 !important;
}
.reviews-carousel-heading p:not(.eyebrow) {
  max-width: 640px;
  margin: .7rem 0 0;
  color: var(--color-slate);
}
.reviews-redesign .review-flip-carousel {
  max-width: min(1180px, 100%);
  margin: clamp(1.4rem, 2.5vw, 2.1rem) auto 0;
}
.reviews-redesign .review-carousel-status {
  color: var(--color-oxblood);
}
.reviews-redesign .review-flip-carousel.is-enhanced .review-flip-carousel-track {
  min-height: 560px;
  padding-top: clamp(2rem, 3vw, 2.6rem);
}
.reviews-redesign .review-flip-carousel.is-enhanced .review-carousel-card,
.reviews-redesign .review-flip-carousel.is-enhanced .review-carousel-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  width: min(560px, calc(100% - 2rem)) !important;
}
.reviews-redesign .review-flip-carousel.is-enhanced .review-carousel-card.is-prev,
.reviews-redesign .review-flip-carousel.is-enhanced .review-carousel-card.is-prev:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  opacity: .42 !important;
  transform: translateX(calc(-50% - clamp(220px, 31vw, 410px))) scale(.86) rotate(-3deg) !important;
}
.reviews-redesign .review-flip-carousel.is-enhanced .review-carousel-card.is-next,
.reviews-redesign .review-flip-carousel.is-enhanced .review-carousel-card.is-next:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  opacity: .42 !important;
  transform: translateX(calc(-50% + clamp(220px, 31vw, 410px))) scale(.86) rotate(3deg) !important;
}
.reviews-redesign .review-flip-carousel.is-enhanced .review-carousel-card.is-active,
.reviews-redesign .review-flip-carousel.is-enhanced .review-carousel-card.is-active:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  opacity: 1 !important;
  transform: translateX(-50%) scale(1) !important;
}
.reviews-redesign .review-flip-face {
  justify-content: flex-start !important;
  gap: 1rem !important;
  padding: clamp(1.35rem, 2.8vw, 2.35rem) !important;
  border-radius: 16px !important;
  background:
    linear-gradient(150deg, rgba(255,255,255,.92), rgba(250,247,240,.74)),
    rgba(255,255,255,.74) !important;
  border: 1px solid rgba(255,255,255,.76) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.95), 0 22px 64px rgba(35,38,41,.15) !important;
}
.reviews-redesign .review-flip-back {
  background:
    radial-gradient(circle at 62% 16%, rgba(201,160,99,.16), transparent 34%),
    linear-gradient(150deg, rgba(255,255,255,.94), rgba(250,247,240,.78)),
    rgba(255,255,255,.8) !important;
}
.reviews-redesign .review-flip-face > span:first-child {
  color: var(--color-oxblood) !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
}
.reviews-redesign .review-flip-face h3 {
  color: var(--color-ink) !important;
  font-size: clamp(2.1rem, 4vw, 3.8rem) !important;
  line-height: 1.02 !important;
}
.reviews-redesign .review-stars,
.reviews-redesign .review-stars-visible {
  color: var(--color-oxblood) !important;
  font-size: clamp(1.8rem, 3.6vw, 3rem) !important;
  letter-spacing: .13em !important;
  line-height: 1 !important;
}
.reviews-redesign .review-flip-face p,
.reviews-redesign .review-flip-face blockquote {
  color: var(--color-ink) !important;
  font-size: clamp(1rem, 1.3vw, 1.18rem) !important;
  line-height: 1.6 !important;
}
.reviews-redesign .review-flip-back blockquote {
  max-height: 17rem;
  overflow: auto;
  padding-right: .45rem;
}
.reviews-redesign .flip-affordance {
  margin-top: auto;
  color: var(--color-oxblood) !important;
}
.reviews-redesign .review-card-burst {
  top: clamp(8rem, 12vw, 10.25rem) !important;
  left: clamp(4.7rem, 8vw, 7rem) !important;
}
.reviews-redesign .reviews-page-actions {
  margin-top: clamp(1.4rem, 3vw, 2.4rem);
}
.reviews-redesign .testimonial-disclaimer {
  max-width: 980px;
  margin: clamp(1.5rem, 3vw, 2.4rem) auto 0;
  background: transparent;
  box-shadow: none;
}
.reviews-google-only .reviews-carousel-section {
  max-width: 1320px;
  margin-top: 0;
}
.reviews-google-only .reviews-carousel-heading {
  max-width: 760px;
  margin-inline: auto;
  text-align: center;
}
.reviews-google-only .reviews-carousel-heading h2 {
  max-width: 100%;
}
.reviews-google-only .review-flip-carousel {
  margin-top: clamp(1.6rem, 3vw, 2.4rem);
}
.reviews-google-only .review-flip-carousel.is-enhanced .review-flip-carousel-track {
  min-height: clamp(500px, 49vw, 620px);
  padding-block: clamp(1.4rem, 2.5vw, 2.2rem);
}
.reviews-google-only .review-flip-carousel.is-enhanced .review-carousel-card,
.reviews-google-only .review-flip-carousel.is-enhanced .review-carousel-card:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) {
  width: min(520px, calc(100% - 2rem)) !important;
}
.reviews-google-only .review-flip-face {
  min-height: clamp(440px, 43vw, 540px) !important;
}
.reviews-google-only .review-flip-front {
  background:
    linear-gradient(145deg, rgba(255,255,255,.98), rgba(250,247,240,.9)),
    #fff !important;
  border: 1px solid rgba(212,216,220,.92) !important;
  color: var(--color-ink) !important;
}
.reviews-google-only .review-flip-back {
  overflow: hidden !important;
  background:
    radial-gradient(circle at 50% 22%, rgba(201,160,99,.2), transparent 28%),
    radial-gradient(circle at 82% 82%, rgba(122,31,46,.28), transparent 34%),
    linear-gradient(145deg, #101418 0%, #1b222b 52%, #232629 100%) !important;
  border-color: rgba(201,160,99,.28) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 24px 70px rgba(16,20,24,.28) !important;
}
.reviews-google-only .review-flip-card .review-flip-back {
  background-color: #0D1117 !important;
  background-image:
    radial-gradient(circle at 50% 19%, rgba(201,160,99,.18), transparent 23%),
    radial-gradient(circle at 84% 86%, rgba(122,31,46,.22), transparent 30%),
    linear-gradient(145deg, #080B10 0%, #111720 52%, #1A2028 100%) !important;
  border-color: rgba(201,160,99,.34) !important;
  color: #F7F3EA !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    inset 0 0 0 1px rgba(201,160,99,.08),
    0 26px 74px rgba(8,11,16,.42) !important;
}
.reviews-google-only .review-flip-back::before {
  content: "";
  position: absolute;
  inset: 12% 10% auto;
  height: 42%;
  pointer-events: none;
  background:
    radial-gradient(circle, rgba(201,160,99,.28) 0 1px, transparent 2px),
    radial-gradient(circle at 50% 50%, rgba(201,160,99,.16), transparent 62%);
  background-size: 36px 36px, 100% 100%;
  opacity: .55;
  filter: blur(.2px);
}
.reviews-google-only .review-flip-back > * {
  position: relative;
  z-index: 1;
}
.reviews-google-only .review-flip-face > span:first-child {
  text-transform: uppercase;
}
.reviews-google-only .review-flip-back > span:first-child {
  color: rgba(201,160,99,.9) !important;
}
.reviews-google-only .review-flip-back h3,
.reviews-google-only .review-flip-back p,
.reviews-google-only .review-flip-back blockquote {
  color: #F7F3EA !important;
}
.reviews-google-only .review-flip-back blockquote {
  max-height: 15.5rem;
  color: rgba(247,243,234,.92) !important;
}
.reviews-google-only .review-flip-back .review-meta {
  color: rgba(247,243,234,.68) !important;
}
.reviews-google-only .review-flip-front .review-stars-visible {
  color: var(--color-oxblood) !important;
}
.reviews-google-only .review-flip-back .review-stars,
.reviews-google-only .review-flip-back .review-stars-visible {
  color: #C9A063 !important;
  font-size: clamp(2.5rem, 4.8vw, 3.8rem) !important;
  text-shadow: 0 0 20px rgba(201,160,99,.24), 0 0 44px rgba(201,160,99,.14) !important;
}
.reviews-google-only .review-flip-back .star-pop:before {
  color: #C9A063 !important;
  text-shadow: 0 0 14px rgba(201,160,99,.38) !important;
}
.reviews-google-only .review-card-burst {
  top: clamp(6rem, 10vw, 8rem) !important;
  left: 50% !important;
  width: min(340px, 70%) !important;
  transform: translateX(-50%);
}
.reviews-google-only .review-flip-card.is-flipped .review-card-burst,
.reviews-google-only .review-flip-card[aria-pressed="true"] .review-card-burst {
  opacity: 1;
}
.reviews-google-only .flip-affordance {
  display: inline-flex !important;
  align-items: center;
  gap: .45rem;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: .72rem !important;
}
.reviews-google-only .review-flip-front .flip-affordance::before {
  content: "Flip card";
  padding-right: .7rem;
  margin-right: .25rem;
  border-right: 1px solid rgba(122,31,46,.22);
  color: var(--color-slate);
}
.reviews-google-only .flip-affordance::after {
  content: " ->";
  transition: transform 180ms ease;
}
.reviews-google-only .review-flip-card:hover .flip-affordance::after,
.reviews-google-only .review-flip-card:focus-visible .flip-affordance::after {
  transform: translateX(4px);
}
.reviews-google-band,
.reviews-compact-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(1rem, 3vw, 2.2rem);
  align-items: center;
  max-width: 1180px;
  margin-top: clamp(1.8rem, 3.6vw, 3rem);
  padding: clamp(1.35rem, 2.6vw, 2.2rem);
  border: 1px solid rgba(212,216,220,.9);
  border-radius: 16px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.98), rgba(250,247,240,.9)),
    #fff;
  box-shadow: 0 20px 60px rgba(35,38,41,.12);
}
.reviews-google-band .eyebrow,
.reviews-compact-cta .eyebrow {
  color: var(--color-oxblood);
}
.reviews-google-band h2,
.reviews-compact-cta h2 {
  margin: .25rem 0 0;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(2rem, 3.5vw, 3.2rem);
  font-weight: 400;
  line-height: 1.05 !important;
}
.reviews-google-band p,
.reviews-compact-cta p {
  margin: .55rem 0 0;
  color: var(--color-slate);
}
.reviews-google-band p a {
  color: var(--color-oxblood);
  text-underline-offset: .2em;
}
.reviews-google-band__actions,
.reviews-compact-cta__actions {
  justify-content: flex-end;
  margin: 0;
}
.reviews-disclaimer-wrap {
  max-width: 980px;
  margin-top: 0;
}
.reviews-disclaimer-wrap .testimonial-disclaimer {
  margin-top: clamp(1.3rem, 2.6vw, 2rem);
}
@media (max-width: 900px) {
  .reviews-rating-panel {
    grid-template-columns: 1fr;
  }
  .reviews-rating-card {
    border-right: 0;
    border-bottom: 1px solid rgba(61,70,82,.14);
  }
  .reviews-redesign .review-flip-carousel.is-enhanced .review-carousel-card.is-prev,
  .reviews-redesign .review-flip-carousel.is-enhanced .review-carousel-card.is-next {
    opacity: 0 !important;
    pointer-events: none !important;
  }
  .reviews-google-band,
  .reviews-compact-cta {
    grid-template-columns: 1fr;
  }
  .reviews-google-band__actions,
  .reviews-compact-cta__actions {
    justify-content: flex-start;
  }
}
@media (max-width: 640px) {
  .reviews-redesign {
    padding-top: 2.4rem;
  }
  .reviews-trust-intro h2,
  .reviews-carousel-heading h2 {
    max-width: 100%;
  }
  .reviews-redesign .review-flip-carousel.is-enhanced .review-flip-carousel-track {
    min-height: 500px;
  }
  .reviews-redesign .review-flip-face h3 {
    font-size: clamp(1.9rem, 10vw, 2.8rem) !important;
  }
  .reviews-redesign .review-stars,
  .reviews-redesign .review-stars-visible {
    font-size: clamp(1.5rem, 8vw, 2.25rem) !important;
  }
  .reviews-source-row :is(a, span) {
    min-width: calc(50% - .5rem);
  }
  .reviews-google-only .review-flip-face {
    min-height: 430px !important;
  }
  .reviews-google-band,
  .reviews-compact-cta {
    padding: 1.15rem;
  }
  .reviews-google-band__actions .button,
  .reviews-compact-cta__actions .button {
    width: 100%;
  }
}

/* Reviews page final flip-card back treatment: keep Google card backs dark. */
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card] > .review-flip-inner > .review-flip-back,
.reviews-google-only .review-flip-carousel.is-enhanced .review-carousel-card > .review-flip-inner > .review-flip-back,
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card]:is(:hover, :focus-visible, .is-flipped, [aria-pressed="true"]) > .review-flip-inner > .review-flip-back {
  background-color: #0A0E14 !important;
  background-image:
    radial-gradient(circle at 50% 19%, rgba(201,160,99,.2), transparent 22%),
    radial-gradient(circle at 86% 86%, rgba(122,31,46,.2), transparent 30%),
    linear-gradient(145deg, #070A0F 0%, #111720 54%, #1A2028 100%) !important;
  border-color: rgba(201,160,99,.36) !important;
  color: #F7F3EA !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    inset 0 0 0 1px rgba(201,160,99,.09),
    0 28px 76px rgba(7,10,15,.46) !important;
}
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card] > .review-flip-inner > .review-flip-back::before {
  background:
    radial-gradient(circle, rgba(201,160,99,.34) 0 1px, transparent 2px),
    radial-gradient(circle at 50% 50%, rgba(201,160,99,.18), transparent 64%) !important;
  opacity: .48 !important;
}
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card] > .review-flip-inner > .review-flip-back h3,
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card] > .review-flip-inner > .review-flip-back p,
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card] > .review-flip-inner > .review-flip-back blockquote {
  color: #F7F3EA !important;
}
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card] > .review-flip-inner > .review-flip-back .review-stars,
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card] > .review-flip-inner > .review-flip-back .review-stars-visible {
  color: #C9A063 !important;
}
.reviews-google-only .review-flip-back .review-back-stars,
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card] > .review-flip-inner > .review-flip-back .review-back-stars {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  margin: clamp(.45rem, 1.2vw, .8rem) auto clamp(.55rem, 1.4vw, .95rem) !important;
  color: #C9A063 !important;
  font-family: var(--sans) !important;
  font-size: clamp(2.35rem, 4.6vw, 3.7rem) !important;
  line-height: 1 !important;
  letter-spacing: .16em !important;
  text-align: center !important;
  text-shadow: 0 0 18px rgba(201,160,99,.32), 0 0 42px rgba(201,160,99,.16) !important;
}
.reviews-google-only .review-flip-back .review-back-stars span,
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card] > .review-flip-inner > .review-flip-back .review-back-stars span {
  color: inherit !important;
  font: inherit !important;
  letter-spacing: inherit !important;
}
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card]:is(.is-flipped, [aria-pressed="true"]) > .review-flip-inner,
.reviews-google-only .review-flip-carousel.is-enhanced .review-carousel-card:is(.is-flipped, [aria-pressed="true"]) > .review-flip-inner {
  transform: rotateY(180deg) !important;
}
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card]:is(.is-flipped, [aria-pressed="true"]) > .review-flip-inner > .review-flip-front,
.reviews-google-only .review-flip-carousel.is-enhanced .review-carousel-card:is(.is-flipped, [aria-pressed="true"]) > .review-flip-inner > .review-flip-front {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
.reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card]:is(.is-flipped, [aria-pressed="true"]) > .review-flip-inner > .review-flip-back,
.reviews-google-only .review-flip-carousel.is-enhanced .review-carousel-card:is(.is-flipped, [aria-pressed="true"]) > .review-flip-inner > .review-flip-back {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  z-index: 3 !important;
  transform: rotateY(180deg) translateZ(1px) !important;
  background-color: #070A0F !important;
  background-image:
    radial-gradient(circle at 50% 18%, rgba(201,160,99,.22), transparent 23%),
    radial-gradient(circle at 86% 86%, rgba(122,31,46,.2), transparent 30%),
    linear-gradient(145deg, #070A0F 0%, #101722 54%, #1A2028 100%) !important;
  color: #F7F3EA !important;
}
@media (hover: hover) and (pointer: fine) {
  .reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card]:hover > .review-flip-inner > .review-flip-front,
  .reviews-google-only .review-flip-carousel.is-enhanced .review-carousel-card:hover > .review-flip-inner > .review-flip-front {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
  .reviews-google-only .review-flip-carousel .review-flip-card[data-review-flip-card]:hover > .review-flip-inner > .review-flip-back,
  .reviews-google-only .review-flip-carousel.is-enhanced .review-carousel-card:hover > .review-flip-inner > .review-flip-back {
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 3 !important;
    transform: rotateY(180deg) translateZ(1px) !important;
    background-color: #070A0F !important;
    color: #F7F3EA !important;
  }
}

/* DWI guide redesign */
.dwi-redesign {
  background:
    radial-gradient(circle at 12% 8%, rgba(122,31,46,.055), transparent 28rem),
    radial-gradient(circle at 88% 18%, rgba(47,88,120,.055), transparent 30rem),
    var(--color-paper);
  color: var(--color-ink);
}
.dwi-redesign .section-shell {
  width: min(1180px, calc(100% - 48px));
}
.dwi-two-track-intro {
  padding-top: clamp(2.6rem, 5vw, 4.7rem);
  padding-bottom: clamp(1.4rem, 3vw, 2.4rem);
}
.dwi-two-track-intro__grid {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.35fr);
  gap: clamp(1.8rem, 5vw, 5rem);
  align-items: end;
}
.dwi-two-track-intro h2,
.dwi-section-heading h2,
.dwi-difference-heading h2,
.dwi-strategy-panel h2 {
  margin: .35rem 0 0;
  color: var(--color-ink);
  font-family: var(--serif-display);
  font-size: clamp(2.45rem, 4.5vw, 4.6rem);
  font-weight: 400;
  line-height: 1.05;
}
.dwi-two-track-intro p:not(.eyebrow),
.dwi-section-heading p:not(.eyebrow),
.dwi-strategy-panel p {
  color: var(--color-graphite);
  max-width: 62ch;
}
.dwi-proof-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(.85rem, 2vw, 1.5rem);
}
.dwi-proof-grid article {
  position: relative;
  min-height: 160px;
  padding: 1.25rem 1.25rem 1.1rem;
  background: rgba(255,255,255,.72);
  border-left: 1px solid var(--color-hairline);
}
.dwi-proof-grid span {
  display: inline-flex;
  width: 2rem;
  height: 2rem;
  align-items: center;
  justify-content: center;
  margin-bottom: .9rem;
  border: 1px solid rgba(122,31,46,.22);
  border-radius: 999px;
  color: var(--color-oxblood);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .08em;
}
.dwi-proof-grid h3 {
  margin: 0 0 .45rem;
  color: var(--color-ink);
  font-family: var(--sans);
  font-size: .95rem;
  font-weight: 800;
}
.dwi-proof-grid p {
  margin: 0;
  color: var(--color-muted);
  font-size: .92rem;
  line-height: 1.55;
}
.dwi-map-section {
  padding-top: clamp(.8rem, 2vw, 1.4rem);
  padding-bottom: clamp(1.2rem, 3vw, 2.2rem);
}
.dwi-map-panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(190px, .62fr) minmax(0, 1fr);
  gap: clamp(1rem, 2.8vw, 2rem);
  padding: clamp(1.35rem, 3vw, 2.4rem);
  background:
    linear-gradient(135deg, rgba(122,31,46,.045), transparent 28%),
    linear-gradient(225deg, rgba(47,88,120,.05), transparent 28%),
    rgba(255,255,255,.78);
  border: 1px solid var(--color-hairline);
  border-radius: 7px;
  box-shadow: 0 28px 76px rgba(35,38,41,.12);
}
.dwi-map-panel::before {
  content: "";
  position: absolute;
  inset: 1rem;
  pointer-events: none;
  border: 1px solid rgba(122,31,46,.18);
  border-right-color: rgba(47,88,120,.22);
  border-radius: 5px;
}
.dwi-map-badge {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 2;
  transform: translate(-50%, -50%);
  padding: .55rem 1.5rem;
  background: #151B23;
  border: 1px solid rgba(201,160,99,.28);
  border-radius: 3px;
  color: var(--color-ivory);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .18em;
  text-transform: uppercase;
  box-shadow: 0 14px 34px rgba(17,24,32,.2);
}
.dwi-track,
.dwi-map-center {
  position: relative;
  z-index: 1;
}
.dwi-track .eyebrow {
  margin-bottom: .35rem;
}
.dwi-track h2 {
  margin: 0;
  color: var(--color-ink);
  font-size: clamp(1.55rem, 2.2vw, 2.15rem);
}
.dwi-track-note {
  margin: .2rem 0 1.2rem;
  color: var(--color-muted);
  font-size: .9rem;
  line-height: 1.5;
}
.dwi-track ol {
  display: grid;
  gap: .72rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.dwi-track li {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 1.65rem;
  gap: .12rem .68rem;
  align-items: center;
  min-height: 3.35rem;
}
.dwi-track--license li {
  grid-template-columns: 1.65rem minmax(0, 1fr);
}
.dwi-track li::after,
.dwi-track--license li::before {
  content: "";
  width: .55rem;
  height: .55rem;
  border-radius: 50%;
  border: 1px solid currentColor;
  justify-self: center;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(255,255,255,.78);
}
.dwi-track--criminal li::after {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
}
.dwi-track--criminal li strong,
.dwi-track--criminal li span {
  grid-column: 1;
}
.dwi-track--criminal li {
  color: var(--color-oxblood);
}
.dwi-track--license li {
  color: #2F5878;
}
.dwi-track--license li::after {
  display: none;
}
.dwi-track--license li::before {
  grid-column: 1;
  grid-row: 1 / span 2;
  align-self: center;
}
.dwi-track--license li strong,
.dwi-track--license li span {
  grid-column: 2;
}
.dwi-track li strong {
  color: currentColor;
  font-size: .9rem;
}
.dwi-track li span {
  display: block;
  color: var(--color-muted);
  font-size: .78rem;
  line-height: 1.35;
}
.dwi-map-center {
  display: grid;
  justify-items: center;
  gap: 1rem;
}
.dwi-map-center svg {
  width: min(220px, 100%);
  height: auto;
  overflow: visible;
}
.dwi-overlap-card {
  width: min(100%, 240px);
  padding: 1rem;
  background: rgba(247,245,241,.88);
  border: 1px solid var(--color-hairline);
  border-radius: 6px;
}
.dwi-overlap-card h3 {
  margin: 0 0 .55rem;
  color: var(--color-ink);
  font-size: 1.05rem;
}
.dwi-overlap-card ul {
  display: grid;
  gap: .32rem;
  margin: 0;
  padding-left: 1rem;
  color: var(--color-muted);
  font-size: .82rem;
  line-height: 1.35;
}
.dwi-difference-section,
.dwi-insights-section,
.dwi-strategy-cta {
  padding-block: clamp(1.4rem, 3vw, 2.5rem);
}
.dwi-difference-panel {
  display: grid;
  grid-template-columns: minmax(210px, .28fr) minmax(0, 1fr);
  background: linear-gradient(135deg, #111820, #1A1F29);
  border: 1px solid rgba(201,160,99,.22);
  border-radius: 6px;
  color: var(--color-ivory);
  box-shadow: 0 26px 70px rgba(17,24,32,.2);
  overflow: hidden;
}
.dwi-difference-heading {
  padding: clamp(1.25rem, 2.5vw, 2rem);
  border-right: 1px solid rgba(122,31,46,.55);
}
.dwi-difference-heading h2 {
  color: var(--color-ivory);
  font-size: clamp(1.5rem, 2.4vw, 2.15rem);
}
.dwi-comparison-table {
  display: grid;
  overflow-x: auto;
}
.dwi-comparison-table [role="row"] {
  display: grid;
  grid-template-columns: 1.05fr 1.35fr 1.25fr 1.2fr .8fr 1.35fr;
  min-width: 850px;
}
.dwi-comparison-table span {
  padding: .85rem .9rem;
  border-bottom: 1px solid rgba(255,255,255,.18);
  color: rgba(247,245,241,.82);
  font-size: .82rem;
  line-height: 1.35;
}
.dwi-comparison-head span {
  color: rgba(247,245,241,.72);
  font-size: .66rem;
  font-weight: 850;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.dwi-pill {
  display: inline-flex;
  padding: .28rem .65rem;
  border-radius: 3px;
  color: #fff;
  font-size: .68rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.dwi-pill--criminal { background: rgba(122,31,46,.86); }
.dwi-pill--license { background: rgba(47,88,120,.86); }
.dwi-section-heading {
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  align-items: end;
  margin-bottom: clamp(1rem, 2vw, 1.5rem);
}
.dwi-insight-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(.85rem, 1.5vw, 1.1rem);
}
.dwi-insight-card {
  position: relative;
  min-height: 330px;
  display: flex;
  flex-direction: column;
  padding: 0 1.1rem 1.1rem;
  background: #fff;
  border: 1px solid var(--color-hairline);
  border-radius: 5px;
  box-shadow: 0 20px 60px rgba(35,38,41,.1);
  overflow: hidden;
}
.dwi-insight-card::before {
  display: none;
}
.dwi-insight-figure {
  position: relative;
  margin: 0 -1.1rem 1rem;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #151B23;
}
.dwi-insight-figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(17,24,32,0) 46%, rgba(17,24,32,.18) 100%),
    linear-gradient(135deg, rgba(122,31,46,.18), transparent 42%);
  pointer-events: none;
}
.dwi-insight-figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: saturate(.92) contrast(1.04);
}
.dwi-insight-card span {
  color: var(--color-oxblood);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.dwi-insight-card h3 {
  margin: .55rem 0 .55rem;
  font-size: clamp(1.25rem, 1.5vw, 1.55rem);
  line-height: 1.12;
}
.dwi-insight-card h3 a {
  color: var(--color-ink);
}
.dwi-insight-card p {
  color: var(--color-muted);
  font-size: .92rem;
  line-height: 1.55;
}
.dwi-insight-card .text-link {
  margin-top: auto;
}
.dwi-resource-action {
  display: flex;
  justify-content: center;
  margin-top: clamp(1rem, 2vw, 1.5rem);
}
.dwi-strategy-panel {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.2fr) minmax(220px, .75fr);
  gap: clamp(1.2rem, 3vw, 2.4rem);
  align-items: center;
  padding: clamp(1.35rem, 3vw, 2.2rem);
  background:
    linear-gradient(135deg, rgba(122,31,46,.045), transparent 34%),
    rgba(255,255,255,.82);
  border: 1px solid rgba(122,31,46,.25);
  border-radius: 6px;
  box-shadow: 0 26px 70px rgba(35,38,41,.1);
}
.dwi-strategy-panel h2 {
  font-size: clamp(2rem, 3vw, 3rem);
}
.dwi-strategy-proof {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .8rem;
}
.dwi-strategy-proof article {
  padding: .95rem;
  border-left: 1px solid var(--color-hairline);
}
.dwi-strategy-proof strong {
  display: block;
  color: var(--color-ink);
  font-size: .88rem;
}
.dwi-strategy-proof span {
  color: var(--color-muted);
  font-size: .82rem;
  line-height: 1.4;
}
.dwi-strategy-actions {
  display: grid;
  gap: .8rem;
  justify-items: stretch;
}
.dwi-strategy-actions p {
  margin: 0;
  text-align: center;
  color: var(--color-muted);
  font-size: .92rem;
}
.dwi-strategy-actions a:not(.button) {
  color: var(--color-oxblood);
  font-weight: 800;
}
@media (max-width: 1060px) {
  .dwi-two-track-intro__grid,
  .dwi-map-panel,
  .dwi-difference-panel,
  .dwi-strategy-panel {
    grid-template-columns: minmax(0, 1fr);
  }
  .dwi-map-badge {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    justify-self: center;
    grid-column: 1;
  }
  .dwi-map-center {
    order: -1;
  }
  .dwi-difference-heading {
    border-right: 0;
    border-bottom: 1px solid rgba(122,31,46,.55);
  }
  .dwi-insight-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  .dwi-redesign .section-shell {
    width: min(100% - 28px, 1180px);
  }
  .dwi-proof-grid,
  .dwi-insight-grid,
  .dwi-strategy-proof {
    grid-template-columns: minmax(0, 1fr);
  }
  .dwi-map-panel {
    padding-top: 1.2rem;
  }
  .dwi-map-panel::before {
    display: none;
  }
  .dwi-track li,
  .dwi-track--license li {
    grid-template-columns: 1rem minmax(0, 1fr);
  }
  .dwi-track li::after {
    grid-column: 1;
    grid-row: 1 / span 2;
  }
  .dwi-track--license li::before {
    grid-column: 1;
    grid-row: 1 / span 2;
  }
  .dwi-track li strong,
  .dwi-track li span,
  .dwi-track--criminal li strong,
  .dwi-track--criminal li span,
  .dwi-track--license li strong,
  .dwi-track--license li span {
    grid-column: 2;
  }
}

/* ===== Modern Defense approved-page lockup ====================== */
.modern-defense-hero {
  min-height: clamp(430px, 48svh, 620px) !important;
  background:
    radial-gradient(72% 88% at 78% 18%, rgba(201,160,99,.14), transparent 62%),
    linear-gradient(135deg, #090E14 0%, #111820 52%, #1A202A 100%) !important;
}
.modern-defense-hero__video {
  opacity: .58 !important;
  object-position: 62% center !important;
  filter: grayscale(.24) saturate(.76) contrast(1.1) brightness(.52) !important;
}
.modern-defense-hero__overlay {
  background:
    linear-gradient(90deg, rgba(7,11,16,.97) 0%, rgba(9,14,20,.90) 34%, rgba(9,14,20,.58) 62%, rgba(9,14,20,.36) 100%),
    linear-gradient(0deg, rgba(9,14,20,.88) 0%, rgba(9,14,20,.14) 58%, rgba(9,14,20,.68) 100%) !important;
}
.modern-defense-hero__flow {
  position: absolute;
  left: 18%;
  right: 4%;
  top: 34%;
  z-index: 2;
  height: clamp(120px, 18vw, 220px);
  pointer-events: none;
  opacity: .72;
  background:
    radial-gradient(ellipse at 62% 44%, rgba(247,243,234,.48), transparent 22%),
    repeating-linear-gradient(168deg, transparent 0 13px, rgba(247,243,234,.32) 14px, transparent 15px),
    repeating-linear-gradient(174deg, transparent 0 18px, rgba(201,160,99,.30) 19px, transparent 20px);
  mask-image: radial-gradient(ellipse at center, #000 0 48%, transparent 72%);
  transform: rotate(-3deg);
  filter: blur(.2px);
}
.modern-defense-hero__inner {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  align-items: center;
}
.modern-defense-hero__copy {
  max-width: 680px !important;
}
.modern-defense-hero .eyebrow {
  color: color-mix(in srgb, var(--color-gold) 58%, #FFFFFF 42%) !important;
}
.modern-defense-hero h1 {
  max-width: 8.4ch !important;
  font-size: clamp(3.2rem, 6.2vw, 6.7rem) !important;
  line-height: .88 !important;
}
.modern-defense-hero__copy > p:not(.eyebrow) {
  max-width: 620px !important;
}
.modern-defense-hero__device {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: clamp(260px, 29vw, 430px);
  opacity: .98;
}
.modern-defense-hero__asset {
  display: block;
  width: min(100%, 760px);
  height: auto;
  filter: drop-shadow(0 34px 70px rgba(0,0,0,.44));
}
.modern-defense-device__chrome {
  position: absolute;
  left: 3%;
  right: 2%;
  bottom: 3%;
  height: 14%;
  border-radius: 0 0 18px 18px;
  background: linear-gradient(180deg, rgba(255,255,255,.16), rgba(0,0,0,.42));
  box-shadow: 0 32px 80px rgba(0,0,0,.44);
}
.modern-defense-device__screen {
  position: absolute;
  inset: 5% 4% 13% 0;
  overflow: hidden;
  border: 1px solid rgba(247,243,234,.26);
  border-radius: 18px;
  background:
    radial-gradient(circle at 72% 48%, rgba(201,160,99,.38), transparent 12%),
    linear-gradient(120deg, rgba(255,255,255,.12), transparent 40%),
    linear-gradient(135deg, rgba(30,43,58,.88), rgba(8,14,20,.94));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.20), 0 30px 80px rgba(0,0,0,.46);
}
.modern-defense-device__screen::before {
  content: "";
  position: absolute;
  inset: 18% 12% 18% 10%;
  background:
    repeating-linear-gradient(168deg, transparent 0 16px, rgba(247,243,234,.28) 17px, transparent 18px),
    repeating-linear-gradient(174deg, transparent 0 22px, rgba(201,160,99,.32) 23px, transparent 24px);
  mask-image: radial-gradient(ellipse at center, #000 0 42%, transparent 72%);
}
.modern-defense-device__label,
.modern-defense-device__doc,
.modern-defense-device__rail {
  position: absolute;
  border: 1px solid rgba(247,243,234,.18);
  border-radius: 8px;
  background: rgba(255,255,255,.06);
}
.modern-defense-device__label {
  left: 7%;
  top: 9%;
  padding: .55rem .75rem;
  color: rgba(247,243,234,.78);
  font-size: .68rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.modern-defense-device__doc {
  left: 39%;
  top: 22%;
  width: 22%;
  height: 48%;
  background: linear-gradient(180deg, rgba(247,243,234,.74), rgba(247,243,234,.32));
}
.modern-defense-device__rail {
  right: 7%;
  width: 22%;
  height: 11%;
}
.modern-defense-device__rail:nth-of-type(3) { top: 18%; }
.modern-defense-device__rail:nth-of-type(4) { top: 38%; }
.modern-defense-device__rail:nth-of-type(5) { top: 58%; }
.modern-defense-letter-band {
  padding-top: 0 !important;
  background:
    radial-gradient(70% 32% at 50% 12%, rgba(247,243,234,.30), transparent 62%),
    linear-gradient(180deg, #101720 0%, #151B23 34%, #18202B 42%, var(--color-cream) 42%, var(--color-cream) 100%) !important;
}
.modern-defense-letter-preview {
  margin-top: clamp(-4.5rem, -6vw, -2.6rem) !important;
}
.modern-defense-wave {
  display: block;
  width: min(920px, 78%);
  height: auto;
  margin: clamp(.8rem, 1.8vw, 1.5rem) auto clamp(-2rem, -2.5vw, -1rem);
  opacity: .78;
  filter: drop-shadow(0 18px 32px rgba(16,20,24,.18));
  pointer-events: none;
}
.modern-defense-letter-preview--asset {
  min-height: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.modern-defense-letter-preview--asset::before {
  content: none !important;
}
.modern-defense-letter-preview--asset img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
  box-shadow: 0 34px 90px rgba(16,20,24,.30);
}
.ai-principles-section,
.ai-featured-readings,
.ai-faq-consultation {
  background:
    radial-gradient(80% 50% at 50% 0%, rgba(255,255,255,.70), transparent 58%),
    var(--color-cream) !important;
}
.ai-principles-grid article::before {
  content: "";
  display: block;
  width: 3.2rem;
  height: 3.2rem;
  margin-bottom: 1rem;
  border: 1px solid color-mix(in srgb, var(--color-gold) 42%, var(--color-hairline));
  border-radius: 999px;
  background:
    radial-gradient(circle at center, rgba(201,160,99,.18), transparent 48%),
    rgba(255,255,255,.46);
}
.ai-principles-grid span {
  width: auto !important;
  height: auto !important;
  margin: 0 0 .45rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--color-oxblood) !important;
}
.ai-workflow-redesign {
  background:
    radial-gradient(70% 90% at 76% 30%, rgba(201,160,99,.16), transparent 58%),
    linear-gradient(180deg, #101720 0%, #141B24 54%, #0D1218 100%) !important;
}
.ai-reading-card {
  grid-template-columns: minmax(145px, .92fr) minmax(0, 1fr) !important;
}
.ai-reading-card figure img,
.ai-consultation-panel figure img {
  display: block;
}
.ai-reading-visual {
  position: relative;
  min-height: 18rem;
  margin: 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 68% 38%, rgba(201,160,99,.50), transparent 10%),
    radial-gradient(circle at 34% 64%, rgba(247,243,234,.20), transparent 18%),
    linear-gradient(135deg, #121922, #222C38 58%, #0B1016);
}
.ai-reading-visual::before {
  content: "";
  position: absolute;
  inset: 16% 12%;
  border: 1px solid rgba(247,243,234,.18);
  border-radius: 12px;
  background:
    repeating-linear-gradient(0deg, rgba(247,243,234,.18) 0 1px, transparent 1px 13px),
    linear-gradient(120deg, rgba(255,255,255,.12), transparent 42%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 20px 50px rgba(0,0,0,.25);
}
.ai-reading-visual::after {
  content: "";
  position: absolute;
  inset: 20% 10%;
  background:
    repeating-linear-gradient(155deg, transparent 0 14px, rgba(201,160,99,.28) 15px, transparent 16px),
    repeating-linear-gradient(28deg, transparent 0 21px, rgba(247,243,234,.18) 22px, transparent 23px);
  mask-image: radial-gradient(ellipse at center, #000 0 42%, transparent 72%);
}
.ai-reading-visual span,
.ai-reading-visual i {
  position: absolute;
  z-index: 1;
  border: 1px solid rgba(201,160,99,.32);
  background: rgba(255,255,255,.08);
}
.ai-reading-visual span {
  left: 18%;
  top: 24%;
  width: 38%;
  height: 42%;
  border-radius: 8px;
}
.ai-reading-visual i {
  right: 14%;
  bottom: 20%;
  width: 28%;
  height: 26%;
  border-radius: 999px;
}
.ai-reading-card--patterns .ai-reading-visual::before {
  border-radius: 999px;
}
.ai-reading-card--strategy .ai-reading-visual span {
  left: 28%;
  width: 48%;
}
.ai-consultation-visual {
  position: relative;
  margin: 0;
  min-height: 100%;
  overflow: hidden;
  background:
    radial-gradient(circle at 58% 36%, rgba(201,160,99,.38), transparent 12%),
    linear-gradient(135deg, #121922, #25313E);
}
.ai-consultation-visual::before {
  content: "";
  position: absolute;
  inset: 15% 10%;
  border: 1px solid rgba(247,243,234,.20);
  border-radius: 14px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.16), transparent 42%),
    rgba(255,255,255,.06);
}
.ai-consultation-visual::after {
  content: "";
  position: absolute;
  inset: 16% 7%;
  background:
    repeating-linear-gradient(158deg, transparent 0 15px, rgba(247,243,234,.22) 16px, transparent 17px),
    repeating-linear-gradient(24deg, transparent 0 20px, rgba(201,160,99,.28) 21px, transparent 22px);
  mask-image: radial-gradient(ellipse at center, #000 0 44%, transparent 74%);
}
.ai-consultation-visual__screen {
  position: absolute;
  left: 17%;
  top: 28%;
  z-index: 1;
  width: 38%;
  height: 44%;
  border: 1px solid rgba(247,243,234,.24);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(247,243,234,.62), rgba(247,243,234,.16));
}
.ai-consultation-visual__node {
  position: absolute;
  z-index: 1;
  right: 14%;
  width: 28%;
  height: 9%;
  border: 1px solid rgba(201,160,99,.36);
  border-radius: 999px;
  background: rgba(255,255,255,.08);
}
.ai-consultation-visual__node:nth-child(2) { top: 24%; }
.ai-consultation-visual__node:nth-child(3) { top: 44%; }
.ai-consultation-visual__node:nth-child(4) { top: 64%; }
@media (max-width: 980px) {
  .modern-defense-hero__inner {
    grid-template-columns: 1fr !important;
  }
  .modern-defense-hero__device {
    display: none;
  }
  .modern-defense-hero h1 {
    max-width: 9ch !important;
  }
}
@media (max-width: 700px) {
  .modern-defense-letter-preview {
    margin-top: -1.3rem !important;
  }
  .ai-reading-card {
    grid-template-columns: 1fr !important;
  }
  .ai-reading-visual,
  .ai-consultation-visual {
    min-height: 220px;
  }
}

.law-action-strip{margin:0 0 clamp(1.4rem,3vw,2rem);padding:clamp(1.1rem,2.4vw,1.5rem) clamp(1.2rem,2.6vw,1.6rem);border:1px solid var(--color-hairline);border-left:3px solid var(--color-oxblood);border-radius:10px;background:var(--color-sand);box-shadow:0 10px 30px color-mix(in srgb,var(--color-ink) 5%,transparent);}
.law-action-strip__lead{margin:0 0 .75rem;font-weight:600;color:var(--color-ink);}
.law-action-strip__actions{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;}
.law-action-strip__actions .button{font-size:.92rem;width:100%;justify-content:center;text-align:center;}
.law-action-strip__actions .button-primary{grid-column:1 / -1;}
@media (max-width:480px){.law-action-strip__actions{grid-template-columns:1fr;}.law-action-strip__actions .button-primary{grid-column:auto;}}
.law-action-strip__urgent{display:inline-block;margin-top:.8rem;font-weight:600;color:var(--color-oxblood);text-decoration:none;}
.law-action-strip__urgent:hover{text-decoration:underline;}
.payment-callout { margin: 1.4rem 0 0; padding: 1.1rem 1.3rem; border: 1px solid color-mix(in srgb, var(--color-paper) 35%, transparent); border-left: 4px solid var(--color-paper); border-radius: 8px; background: color-mix(in srgb, var(--color-paper) 10%, transparent); }
.payment-callout__head { margin: 0 0 .35rem; font-weight: 700; color: var(--color-paper); font-size: 1.02rem; }
.payment-callout__body { margin: 0; font-size: .92rem; line-height: 1.55; color: color-mix(in srgb, var(--color-paper) 88%, transparent); }
.payment-callout__body a { color: var(--color-paper); font-weight: 600; text-decoration: underline; }
.law-action-strip__payment { margin: .9rem 0 0; font-size: .88rem; color: var(--color-oxblood); font-weight: 600; }
.law-action-strip__payment a { color: var(--color-oxblood); text-decoration: underline; }
.law-action-strip__note{margin:.8rem 0 0;font-size:.86rem;color:var(--color-slate);}

/* ===== STANDALONE ASSET FRAME WRAPPER ===== */
.standalone-asset-page { padding-top: clamp(2rem, 4vw, 3rem); }
.standalone-asset-page .section-heading { max-width: 980px; margin-inline: auto; }
.standalone-asset-frame { display: block; width: 100%; border: 1px solid var(--color-hairline); border-radius: 10px; background: var(--color-graphite); box-shadow: 0 24px 70px rgba(35, 38, 41, 0.14); }
.standalone-asset-frame--letter { min-height: 1800px; }
.standalone-asset-frame--knowledge { min-height: min(1040px, 82vh); }
@media (max-width: 760px) {
  .standalone-asset-frame--letter { min-height: 1500px; }
  .standalone-asset-frame--knowledge { min-height: 760px; }
}
/* ===== CASE-REVIEW FORM LAYOUT (single source of truth) =====
   This is the canonical layout for the homepage case-review panel.
   Every rule below targets the SAME selector specificity
   (.case-review-panel and .case-review-panel > .case-review-form) so the
   narrow-screen stack reliably wins. Do NOT reintroduce a higher-specificity
   variant such as .case-review-panel > .lux-form.case-review-form ? that
   pins grid-column and prevents the panel from stacking, crushing the copy
   column on tablets/phones. */
.case-review-panel {
  display: grid !important;
  grid-template-columns: minmax(320px, 0.9fr) minmax(0, 1.1fr) !important;
  align-items: stretch !important;
  width: min(1280px, calc(100% - 48px)) !important;
  max-width: 100% !important;
  margin-inline: auto !important;
  box-sizing: border-box !important;
}
.case-review-panel > .case-review-copy {
  grid-column: 1 !important;
  min-width: 0 !important;
}
.case-review-panel > .case-review-form {
  grid-column: 2 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  justify-self: stretch !important;
  align-self: stretch !important;
  box-sizing: border-box !important;
  /* internal fields: two equal, blow-out-safe columns on desktop */
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1rem !important;
  padding: clamp(2.4rem, 4vw, 3.5rem) clamp(1.8rem, 3vw, 3rem) !important;
}
.case-review-panel > .case-review-form > .full {
  grid-column: 1 / -1 !important;
}
.case-review-panel > .case-review-form > .checkbox.full {
  grid-column: 1 / -1 !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: .6rem !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding-left: 0 !important;
  text-align: left !important;
  font-size: .85rem !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.case-review-panel > .case-review-form > .checkbox.full input[type="checkbox"] {
  flex: 0 0 auto !important;
  width: 18px !important;
  height: 18px !important;
  margin: .2rem 0 0 0 !important;
}
/* stack everything on narrow screens (uniform specificity = this wins) */
@media (max-width: 900px) {
  .case-review-panel {
    grid-template-columns: 1fr !important;
  }
  .case-review-panel > .case-review-copy,
  .case-review-panel > .case-review-form {
    grid-column: 1 !important;
  }
  .case-review-panel > .case-review-form {
    grid-template-columns: 1fr !important;
  }
}
/* ===== END CASE-REVIEW FORM LAYOUT ===== */
/* Results page visual cleanup: remove bad imagery, soften ledger text, prevent overflow */
.results-featured-carousel .results-card-face::before,
html.js .results-featured-carousel.is-enhanced .results-card-face::before {
  background-image:
    linear-gradient(90deg, rgba(8,13,20,.96) 0%, rgba(12,18,27,.88) 48%, rgba(35,38,41,.76) 100%),
    radial-gradient(circle at 78% 26%, rgba(201,160,99,.24) 0%, rgba(122,31,46,.12) 24%, rgba(17,24,32,0) 56%) !important;
  background-size: cover !important;
  background-position: center !important;
}
.results-featured-carousel .results-slide-copy,
html.js .results-featured-carousel.is-enhanced .results-slide-copy {
  color: #F7F3EA !important;
}
.results-featured-carousel .results-slide-copy :is(h2,h3,strong,dt,dd),
html.js .results-featured-carousel.is-enhanced .results-slide-copy :is(h2,h3,strong,dt,dd) {
  color: #F7F3EA !important;
}
.results-featured-carousel .results-slide-copy p:not(.eyebrow),
html.js .results-featured-carousel.is-enhanced .results-slide-copy p:not(.eyebrow) {
  color: rgba(247,243,234,.84) !important;
}
.results-featured-carousel .results-slide-copy .eyebrow,
html.js .results-featured-carousel.is-enhanced .results-slide-copy .eyebrow {
  color: #C9A063 !important;
}
.resultsArchive {
  color: #2F3843 !important;
}
.resultsHero h2 {
  color: #18212B !important;
}
.resultsHero .intro,
.resultsHero .disclaimer,
.ledgerSummary,
.archiveCTA p {
  color: #3D4652 !important;
}
.ledgerHeader,
.ledgerRow {
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 2fr) minmax(0, .9fr) minmax(0, .95fr) !important;
}
.ledgerRow {
  min-height: 0 !important;
}
.ledgerRow--signature {
  background: linear-gradient(90deg, rgba(122,31,46,.05), rgba(255,255,255,.62) 22%) !important;
  box-shadow: inset 3px 0 0 var(--color-oxblood) !important;
}
.ledgerRow--signature .ledgerMatter h3 {
  font-weight: 600 !important;
  color: var(--color-oxblood) !important;
}
.ledgerRow > div,
.ledgerRow > a {
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding-top: 1.05rem !important;
  padding-bottom: 1.05rem !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}
.ledgerDetails {
  align-items: center !important;
  justify-content: center !important;
}
.ledgerDetails--none {
  color: rgba(61,70,82,.32) !important;
  text-decoration: none !important;
  cursor: default !important;
}
.ledgerMatter h3 {
  color: #202A34 !important;
  font-size: clamp(1.02rem, 1.18vw, 1.28rem) !important;
  line-height: 1.18 !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
}
.ledgerMatter p,
.ledgerCounty {
  color: #6F542C !important;
  font-size: .68rem !important;
  line-height: 1.35 !important;
  overflow-wrap: anywhere !important;
}
.ledgerSummary {
  display: block !important;
  font-size: .9rem !important;
  line-height: 1.48 !important;
}
.ledgerOutcome strong {
  font-size: clamp(.95rem, 1.04vw, 1.14rem) !important;
  line-height: 1.18 !important;
  letter-spacing: .06em !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
.resultIcon,
.archiveCTAIcon {
  width: 46px !important;
  height: 46px !important;
}
.resultIcon svg,
.archiveCTAIcon svg {
  width: 21px !important;
  height: 21px !important;
}
@media (max-width: 1240px) {
  .ledgerHeader,
  .ledgerRow {
    grid-template-columns: minmax(0, 1.45fr) minmax(0, 1.8fr) minmax(0, .85fr) minmax(0, .88fr) !important;
  }
}
@media (max-width: 980px) {
  .ledgerHeader {
    display: none !important;
  }
  .ledgerRow {
    display: block !important;
  }
  .ledgerRow > div,
  .ledgerRow > a {
    align-items: flex-start !important;
    justify-content: flex-start !important;
  }
}


.resultsArchive.results-archive-premium {
  background: var(--color-cream) !important;
  color: var(--color-ink) !important;
  padding: clamp(4rem, 7vw, 7rem) 0 !important;
  overflow: hidden;
}
.results-archive-intro {
  max-width: 980px;
  margin: 0 auto clamp(2rem, 4vw, 3.5rem);
  text-align: center;
  padding: 0 1.5rem;
}
.results-archive-eyebrow {
  color: var(--color-oxblood);
  letter-spacing: .16em;
  text-transform: uppercase;
  font-size: .75rem;
  font-weight: 700;
  margin: 0;
}
.results-archive-title {
  font-family: var(--serif-display);
  color: var(--color-ink) !important;
  font-size: clamp(2.5rem, 5vw, 4.75rem);
  line-height: .95;
  font-weight: 500;
  margin: .75rem auto 0;
  max-width: 13ch;
  letter-spacing: 0;
}
.results-archive-rule {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .8rem;
  margin: 1.25rem auto 0;
  color: var(--color-gold);
}
.results-archive-rule::before,
.results-archive-rule::after {
  content: "";
  width: min(180px, 22vw);
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,160,99,.72));
}
.results-archive-rule::after { transform: scaleX(-1); }
.results-archive-rule span::before {
  content: "\00A7";
  font-family: var(--serif-display);
  font-size: 1.25rem;
  line-height: 1;
}
.results-archive-deck {
  max-width: 760px;
  margin: 1rem auto 0;
  color: var(--color-muted) !important;
  font-size: clamp(1rem, 1.3vw, 1.15rem);
  line-height: 1.65;
}
.results-archive-note {
  max-width: 760px;
  margin: .7rem auto 0;
  color: #5E666F !important;
  font-size: .86rem;
  line-height: 1.55;
}
.results-archive-panel {
  width: min(92vw, 1480px);
  margin: 0 auto;
  padding: clamp(1.5rem, 3vw, 2.75rem);
  border-radius: 26px;
  background:
    radial-gradient(circle at 18% 0%, rgba(201,160,99,.12), transparent 32%),
    radial-gradient(circle at 92% 100%, rgba(122,31,46,.15), transparent 34%),
    linear-gradient(145deg, #101820 0%, #0B1620 46%, #070D12 100%);
  border: 1px solid rgba(201,160,99,.34);
  box-shadow: 0 24px 80px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.04);
  position: relative;
  overflow: hidden;
}
.results-archive-panel::before {
  content: "";
  position: absolute;
  inset: 8px;
  border: 1px solid rgba(201,160,99,.16);
  border-radius: 20px;
  pointer-events: none;
}
.results-archive-toolbar {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 1.25rem;
  align-items: center;
  margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
  position: relative;
  z-index: 1;
}
.results-archive-stat { min-width: 120px; }
.results-archive-stat-number {
  display: block;
  color: var(--color-gold);
  font-family: var(--serif-display);
  font-size: clamp(2rem, 3vw, 3rem);
  line-height: 1;
  font-weight: 500;
}
.results-archive-stat-label {
  display: block;
  margin-top: .35rem;
  color: rgba(255,255,255,.62);
  font-size: .68rem;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.results-filter-pills {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  justify-content: center;
}
.results-filter-pill {
  border: 1px solid rgba(255,255,255,.14);
  color: rgba(255,255,255,.78);
  background: rgba(255,255,255,.035);
  border-radius: 999px;
  padding: .75rem 1.2rem;
  font-size: .72rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-weight: 700;
  transition: border-color 180ms ease, background 180ms ease, color 180ms ease, transform 180ms ease;
}
.results-filter-pill:hover,
.results-filter-pill:focus-visible {
  border-color: rgba(201,160,99,.62);
  color: #fff;
  background: rgba(201,160,99,.08);
  transform: translateY(-1px);
}
.results-filter-pill.is-active,
.results-filter-pill.active {
  background: var(--color-oxblood);
  border-color: rgba(201,160,99,.32);
  color: #fff;
  box-shadow: 0 12px 26px rgba(122,31,46,.24);
}
.results-filter-pill:focus-visible,
.results-archive-filter-button:focus-visible,
.results-archive-card:focus-within {
  outline: 2px solid rgba(201,160,99,.78);
  outline-offset: 3px;
}
.results-archive-filter-button {
  border: 1px solid rgba(201,160,99,.35);
  color: rgba(255,255,255,.82);
  background: transparent;
  border-radius: 999px;
  padding: .75rem 1.1rem;
  font-size: .72rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-weight: 700;
}
.results-archive-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .9rem;
  position: relative;
  z-index: 1;
}
.results-archive-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) minmax(115px, .45fr);
  gap: 1rem;
  align-items: start;
  min-height: 185px;
  padding: clamp(1.1rem, 1.8vw, 1.5rem);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
  border: 1px solid rgba(255,255,255,.09);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 10px 28px rgba(0,0,0,.18);
  position: relative;
  overflow: hidden;
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}
.results-archive-card:hover {
  transform: translateY(-2px);
  border-color: rgba(201,160,99,.38);
  background: linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
}
.results-archive-card--signature {
  border-color: rgba(201,160,99,.42);
  box-shadow: inset 3px 0 0 var(--color-oxblood), inset 0 1px 0 rgba(255,255,255,.05), 0 14px 34px rgba(0,0,0,.22);
}
.result-card-icon {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  color: var(--color-gold);
  background: linear-gradient(145deg, rgba(122,31,46,.28), rgba(255,255,255,.025));
  border: 1px solid rgba(201,160,99,.34);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 10px 24px rgba(0,0,0,.18);
}
.result-card-icon svg {
  width: 28px;
  height: 28px;
  stroke: currentColor;
  stroke-width: 1.35;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.results-archive-card-main { min-width: 0; }
.results-archive-card h3 {
  font-family: var(--serif-display);
  color: rgba(255,255,255,.92) !important;
  font-size: clamp(1.15rem, 1.4vw, 1.45rem);
  line-height: 1.15;
  margin: 0;
  font-weight: 500;
  overflow-wrap: anywhere;
}
.result-card-county {
  margin: .45rem 0 0;
  color: var(--color-gold) !important;
  font-size: .68rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-weight: 700;
}
.result-card-summary {
  margin: .75rem 0 0;
  color: rgba(255,255,255,.64) !important;
  font-size: .88rem;
  line-height: 1.55;
}
.result-card-meta {
  border-left: 1px solid rgba(201,160,99,.18);
  padding-left: 1rem;
  min-width: 0;
}
.result-card-label {
  display: block;
  color: var(--color-gold);
  font-size: .72rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.result-card-small-label {
  display: block;
  margin-top: 1rem;
  color: rgba(255,255,255,.42);
  font-size: .65rem;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.result-card-venue {
  display: block;
  margin-top: .25rem;
  color: rgba(255,255,255,.75);
  font-family: var(--serif-display);
  line-height: 1.25;
}
.result-card-cue {
  position: absolute;
  right: 1rem;
  bottom: .85rem;
  color: rgba(201,160,99,.72);
  font-size: 1.2rem;
}
@media (max-width: 1100px) {
  .results-archive-toolbar { grid-template-columns: 1fr; }
  .results-archive-stat { text-align: center; }
  .results-archive-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .resultsArchive.results-archive-premium { padding: clamp(2.8rem, 8vw, 4rem) 0 !important; }
  .results-archive-panel {
    width: min(94vw, 100%);
    padding: 1rem;
    border-radius: 20px;
  }
  .results-filter-pills {
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: .35rem;
  }
  .results-filter-pills::-webkit-scrollbar { height: 4px; }
  .results-archive-grid { grid-template-columns: 1fr; }
  .results-archive-card { grid-template-columns: auto minmax(0, 1fr); }
  .result-card-meta {
    grid-column: 1 / -1;
    border-left: 0;
    border-top: 1px solid rgba(201,160,99,.18);
    padding-left: 0;
    padding-top: .85rem;
  }
}


/* ===== Modern Defense Option 1 approved layout ================== */
.modern-defense-option {
  background: var(--color-cream);
  color: var(--color-ink);
  overflow: hidden;
}
.modern-defense-option-shell {
  width: min(1240px, calc(100% - 48px));
  margin-inline: auto;
}
.modern-defense-option-hero {
  position: relative;
  min-height: clamp(620px, 76svh, 860px) !important;
  display: grid;
  align-items: center;
  padding: clamp(4.6rem, 8vw, 7.2rem) 0 clamp(5rem, 9vw, 8.2rem);
  background:
    radial-gradient(circle at 78% 22%, rgba(201,160,99,.18), transparent 22rem),
    radial-gradient(circle at 42% 12%, rgba(122,31,46,.18), transparent 28rem),
    linear-gradient(135deg, #081018 0%, #111A25 52%, #1C2632 100%) !important;
}
.modern-defense-option-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 9rem;
  background: linear-gradient(180deg, transparent, var(--color-cream));
  pointer-events: none;
  z-index: 1;
}
.modern-defense-option-hero .modern-defense-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(90deg, rgba(6,10,15,.96) 0%, rgba(10,16,24,.88) 42%, rgba(10,16,24,.32) 100%),
    radial-gradient(circle at 75% 48%, rgba(201,160,99,.12), transparent 26rem) !important;
}
.modern-defense-option-hero__inner {
  position: relative;
  z-index: 2;
  width: min(1240px, calc(100% - 48px));
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr);
  gap: clamp(2rem, 5vw, 5.5rem);
  align-items: center;
}
.modern-defense-option-hero__copy { max-width: 620px; }
.modern-defense-option-hero .eyebrow,
.modern-defense-option .eyebrow {
  color: color-mix(in srgb, var(--color-gold) 76%, #FFFFFF 24%);
  letter-spacing: .18em;
  font-size: .72rem;
  font-weight: 800;
}
.modern-defense-option-hero h1 {
  margin: .55rem 0 1rem;
  max-width: 9.4ch !important;
  color: #F7F3EA;
  font-family: var(--serif-display);
  font-size: clamp(3.45rem, 6.6vw, 7.2rem) !important;
  font-weight: 400;
  line-height: .9 !important;
  letter-spacing: 0;
}
.modern-defense-option-hero__copy > p:not(.eyebrow) {
  max-width: 560px !important;
  color: rgba(247,243,234,.82);
  font-size: clamp(1.02rem, 1.25vw, 1.22rem);
  line-height: 1.68;
}
.modern-defense-option-hero__actions { margin-top: 1.6rem; }
.modern-defense-option-hero__actions .button-secondary,
.modern-defense-option-consult-card .button-secondary {
  color: #F7F3EA;
  border-color: rgba(247,243,234,.42);
  background: rgba(255,255,255,.05);
}
.modern-defense-option-hero__visual {
  margin: 0;
  align-self: center;
  justify-self: end;
  width: min(100%, 760px);
}
.modern-defense-option-hero__visual img {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(0 42px 90px rgba(0,0,0,.42));
}
.modern-defense-option-letter {
  position: relative;
  padding: clamp(2rem, 4vw, 3.5rem) 0 clamp(2.4rem, 5vw, 4rem);
  margin-top: 0;
  z-index: 3;
}
.modern-defense-option-letter-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, .42fr);
  gap: clamp(1.4rem, 3vw, 3rem);
  min-height: clamp(25rem, 42vw, 34rem);
  padding: clamp(2.2rem, 4.6vw, 4.6rem);
  border: 1px solid color-mix(in srgb, var(--color-gold) 38%, var(--color-hairline));
  background:
    radial-gradient(circle at 92% 10%, rgba(201,160,99,.16), transparent 20rem),
    linear-gradient(135deg, #FBF7EF 0%, #F2EDE4 100%);
  box-shadow: 0 34px 90px rgba(35,38,41,.16);
  overflow: hidden;
}
.modern-defense-option-letter-card__copy { position: relative; z-index: 2; max-width: 760px; }
.modern-defense-option-letter-card h2,
.modern-defense-option-principles h2,
.modern-defense-option-section-head h2,
.modern-defense-option-faq-card h2,
.modern-defense-option-consult-card h2 {
  margin: .35rem 0 .8rem;
  font-family: var(--serif-display);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: 0;
}
.modern-defense-option-letter-card h2 { font-size: clamp(2.55rem, 5.4vw, 5.65rem); color: #111820; }
.modern-defense-option-letter-card time {
  display: inline-block;
  margin-bottom: 1.15rem;
  color: var(--color-oxblood);
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-size: .74rem;
}
.modern-defense-option-letter-card p:not(.eyebrow) {
  color: #3D4652;
  font-size: clamp(1rem, 1.1vw, 1.12rem);
  line-height: 1.75;
}
.modern-defense-option-letter-card__art {
  position: relative;
  z-index: 1;
  display: grid;
  align-content: center;
  justify-items: center;
  min-width: 0;
}
.modern-defense-option-wave {
  position: absolute;
  right: -22%;
  bottom: 4%;
  width: min(520px, 150%);
  opacity: .58;
}
.modern-defense-option-seal {
  width: clamp(7.2rem, 14vw, 12.5rem);
  opacity: .92;
  filter: drop-shadow(0 16px 28px rgba(122,31,46,.18));
}
.modern-defense-option-link,
.modern-defense-option-readings__grid a {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  color: var(--color-oxblood);
  font-family: var(--sans);
  font-size: .75rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  text-decoration: none;
}
.modern-defense-option-link::after,
.modern-defense-option-readings__grid a::after { content: "\2192"; }
.modern-defense-option-benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid color-mix(in srgb, var(--color-gold) 30%, var(--color-hairline));
  border-top: 0;
  background: rgba(255,255,255,.7);
}
.modern-defense-option-benefits article {
  padding: clamp(1.15rem, 2.2vw, 1.65rem);
  border-left: 1px solid color-mix(in srgb, var(--color-gold) 26%, var(--color-hairline));
}
.modern-defense-option-benefits article:first-child { border-left: 0; }
.modern-defense-option-benefits h3 { margin: .2rem 0 .3rem; color: #151B23; font-size: 1rem; }
.modern-defense-option-benefits p { margin: 0; color: #4D5762; font-size: .92rem; line-height: 1.55; }
.modern-defense-option-benefits span {
  display: block;
  width: 2.4rem;
  height: 2px;
  margin-bottom: .75rem;
  background: var(--color-gold);
}
.modern-defense-option-principles,
.modern-defense-option-readings,
.modern-defense-option-bottom {
  padding: clamp(2.2rem, 4.5vw, 3.8rem) 0;
  background: var(--color-cream);
}
.modern-defense-option-principles h2 { max-width: 900px; color: #151B23; font-size: clamp(2.25rem, 4.8vw, 5rem); font-style: italic; }
.modern-defense-option-principles__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.35rem);
  margin-top: clamp(1.5rem, 3vw, 2.4rem);
}
.modern-defense-option-principles__grid article {
  padding: clamp(1.4rem, 2.6vw, 2.2rem);
  min-height: 16rem;
  border: 1px solid color-mix(in srgb, var(--color-gold) 26%, var(--color-hairline));
  background: rgba(255,255,255,.62);
  box-shadow: 0 18px 54px rgba(35,38,41,.07);
}
.modern-defense-option-principles__grid span,
.modern-defense-option-workflow__grid span {
  color: var(--color-gold);
  font-family: var(--serif-display);
  font-size: 2.8rem;
  line-height: 1;
}
.modern-defense-option-principles__grid h3,
.modern-defense-option-workflow__grid h3,
.modern-defense-option-readings__grid h3 { margin: .7rem 0 .55rem; color: #151B23; }
.modern-defense-option-principles__grid p { color: #3D4652; line-height: 1.65; }
.modern-defense-option-workflow {
  padding: clamp(2.6rem, 5vw, 4.4rem) 0;
  color: #F7F3EA;
  background-color: #081018;
  background-image:
    radial-gradient(circle at 18% 12%, rgba(122,31,46,.42), transparent 30rem),
    radial-gradient(circle at 86% 18%, rgba(201,160,99,.20), transparent 26rem),
    linear-gradient(135deg, rgba(8,16,24,.86) 0%, rgba(18,27,38,.78) 58%, rgba(28,38,50,.74) 100%),
    url("../modern-defense-redesign/modern-defense-workflow-network.png");
  background-size: cover, cover, cover, cover;
  background-position: center, center, center, center;
  background-repeat: no-repeat;
}
.modern-defense-option-section-head { max-width: 860px; margin-bottom: clamp(1.5rem, 3vw, 2.4rem); }
.modern-defense-option-section-head h2 { color: inherit; font-size: clamp(2.25rem, 4.8vw, 5rem); }
.modern-defense-option-section-head p:not(.eyebrow) { color: rgba(247,243,234,.76); }
.modern-defense-option-workflow__grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .85rem;
}
.modern-defense-option-workflow__grid::before {
  content: "";
  position: absolute;
  left: 5%; right: 5%; top: 2.1rem;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,160,99,.75), transparent);
}
.modern-defense-option-workflow__grid article {
  position: relative;
  padding: clamp(1.15rem, 2vw, 1.65rem);
  min-height: 15rem;
  border: 1px solid rgba(201,160,99,.28);
  background: rgba(255,255,255,.055);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 24px 60px rgba(0,0,0,.16);
}
.modern-defense-option-workflow__grid h3 { color: #F7F3EA; }
.modern-defense-option-workflow__grid p { color: rgba(247,243,234,.74); line-height: 1.58; }
.modern-defense-option-section-head--row {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1.5rem;
  max-width: none;
}
.modern-defense-option-readings h2 { color: #151B23; }
.modern-defense-option-readings__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.35rem);
}
.modern-defense-option-readings__grid article {
  display: grid;
  grid-template-columns: minmax(120px, .42fr) minmax(0, .58fr);
  min-height: 14.5rem;
  border: 1px solid color-mix(in srgb, var(--color-gold) 26%, var(--color-hairline));
  background: rgba(255,255,255,.72);
  box-shadow: 0 18px 54px rgba(35,38,41,.08);
  overflow: hidden;
}
.modern-defense-option-readings__grid figure { margin: 0; min-height: 100%; background: #121B26; }
.modern-defense-option-readings__grid img { display: block; width: 100%; height: 100%; object-fit: cover; }
.modern-defense-option-reading-visual {
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  min-height: 100%;
  background:
    radial-gradient(circle at 72% 24%, rgba(201,160,99,.26), transparent 4.5rem),
    radial-gradient(circle at 20% 84%, rgba(122,31,46,.24), transparent 4.2rem),
    linear-gradient(135deg, #0A111A 0%, #172230 100%);
}
.modern-defense-option-reading-visual::before {
  content: "";
  position: absolute;
  inset: 16%;
  border: 1px solid rgba(201,160,99,.42);
  box-shadow: inset 0 0 0 1px rgba(247,243,234,.06);
}
.modern-defense-option-reading-visual::after {
  content: "";
  position: absolute;
  width: 58%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,160,99,.78), transparent);
  transform: rotate(-28deg);
}
.modern-defense-option-reading-visual span {
  position: absolute;
  display: block;
  border: 1px solid rgba(247,243,234,.2);
  background: rgba(255,255,255,.055);
}
.modern-defense-option-reading-visual span:nth-child(1) { width: 44%; height: 30%; left: 18%; top: 22%; }
.modern-defense-option-reading-visual span:nth-child(2) { width: 38%; height: 24%; right: 16%; bottom: 22%; }
.modern-defense-option-reading-visual span:nth-child(3) { width: 2.5rem; height: 2.5rem; border-radius: 999px; right: 18%; top: 18%; border-color: rgba(201,160,99,.55); }
.modern-defense-option-reading-visual--2 {
  background:
    radial-gradient(circle at 74% 22%, rgba(159,177,192,.24), transparent 4.4rem),
    radial-gradient(circle at 18% 84%, rgba(122,31,46,.24), transparent 4.2rem),
    linear-gradient(135deg, #10151E 0%, #202B38 100%);
}
.modern-defense-option-reading-visual--3 {
  background:
    radial-gradient(circle at 72% 24%, rgba(122,31,46,.24), transparent 4.5rem),
    radial-gradient(circle at 20% 84%, rgba(201,160,99,.24), transparent 4.2rem),
    linear-gradient(135deg, #111820 0%, #27303A 100%);
}
.modern-defense-option-readings__grid article > div { padding: clamp(1.15rem, 2vw, 1.55rem); }
.modern-defense-option-readings__grid p { color: #4D5762; line-height: 1.58; }
.modern-defense-option-bottom__grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(1rem, 2vw, 1.35rem);
}
.modern-defense-option-faq-card,
.modern-defense-option-consult-card {
  min-height: 0;
  padding: clamp(1.8rem, 3vw, 2.8rem);
  border: 1px solid rgba(201,160,99,.28);
  box-shadow: 0 24px 70px rgba(35,38,41,.12);
}
.modern-defense-option-faq-card {
  color: #F7F3EA;
  background:
    radial-gradient(circle at 12% 0%, rgba(122,31,46,.32), transparent 18rem),
    linear-gradient(135deg, #0A111A, #18222E);
}
.modern-defense-option-faq-card h2 { color: #F7F3EA; font-size: clamp(2rem, 3.8vw, 4.2rem); }
.modern-defense-option-faq-list details { border-top: 1px solid rgba(247,243,234,.18); padding: 1rem 0; }
.modern-defense-option-faq-list summary { cursor: pointer; color: #F7F3EA; font-weight: 700; }
.modern-defense-option-faq-list p { color: rgba(247,243,234,.76); line-height: 1.6; }
.modern-defense-option-consult-card {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(200px, .55fr);
  gap: clamp(1.4rem, 2.5vw, 2rem);
  align-items: stretch;
  padding-bottom: clamp(1.8rem, 3vw, 2.8rem);
  background:
    radial-gradient(circle at 88% 20%, rgba(201,160,99,.16), transparent 16rem),
    linear-gradient(135deg, #F7F3EA, #EEE6DA);
}
.modern-defense-option-consult-card > div {
  align-self: center;
}
.modern-defense-option-consult-card h2 { color: #151B23; font-size: clamp(2rem, 3.4vw, 3.7rem); }
.modern-defense-option-consult-card p:not(.eyebrow) { color: #3D4652; line-height: 1.65; }
.modern-defense-option-consult-card figure { margin: 0; align-self: stretch; min-height: 16rem; height: 100%; overflow: hidden; background: #151B23; }
.modern-defense-option-consult-card img { display: block; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 1050px) {
  .modern-defense-option-hero__inner,
  .modern-defense-option-bottom__grid,
  .modern-defense-option-consult-card { grid-template-columns: 1fr; }
  .modern-defense-option-hero__visual { justify-self: start; max-width: 620px; }
  .modern-defense-option-workflow__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
  .modern-defense-option-shell,
  .modern-defense-option-hero__inner { width: min(100% - 32px, 1240px); }
  .modern-defense-option-letter-card,
  .modern-defense-option-benefits,
  .modern-defense-option-principles__grid,
  .modern-defense-option-readings__grid { grid-template-columns: 1fr; }
  .modern-defense-option-benefits article { border-left: 0; border-top: 1px solid color-mix(in srgb, var(--color-gold) 26%, var(--color-hairline)); }
  .modern-defense-option-benefits article:first-child { border-top: 0; }
  .modern-defense-option-workflow__grid { grid-template-columns: 1fr; }
  .modern-defense-option-readings__grid article { grid-template-columns: 1fr; }
  .modern-defense-option-readings__grid figure { min-height: 12rem; }
  .modern-defense-option-section-head--row { display: block; }
}

/* ===== MINNESOTA SENTENCING GRIDS (msg-*) ===== */
.msg-wrap{
  --msg-oxblood:#7A1F2E;
  --msg-gold:#C9A063;
  --msg-ink:#232629;
  --msg-muted:#3D4652;
  --msg-paper:#FBF8F2;
  --msg-paper-deep:#F6F1E8;
  --msg-hairline:#E6DAC2;
  /* Soft prison-zone tint: pale oxblood wash, dark text stays readable (WCAG AA) */
  --msg-prison:#F0DCDD;
  --msg-prison-line:#E3C4C7;
  color:var(--msg-ink);
}

.msg-grid{margin:0 0 2.75rem;padding:0;}
.msg-grid:last-child{margin-bottom:0;}

/* Caption / title bar */
.msg-grid-cap{
  display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;
  gap:.5rem 1rem;
  padding:0 0 1rem;
  border-top:2px solid var(--msg-oxblood);
  padding-top:1.25rem;
}
.msg-grid-title{
  font-family:var(--serif-display,'Cormorant Garamond',Georgia,serif);
  font-size:1.85rem;line-height:1.1;color:var(--msg-oxblood);
}
.msg-grid-meta{
  font-family:var(--sans,'Inter',system-ui,sans-serif);
  font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--msg-oxblood);
}

/* Scroll container — only scrolls when the table can't fit */
.msg-scroll{
  overflow-x:auto;
  border:1px solid var(--msg-hairline);
  border-radius:2px;
  background:var(--msg-paper);
}
.msg-scroll:focus-visible{outline:2px solid var(--msg-oxblood);outline-offset:2px;}

/* Table */
.msg-table{
  width:100%;
  border-collapse:collapse;
  table-layout:fixed;
  font-family:var(--sans,'Inter',system-ui,sans-serif);
}

/* Corner header (row-head column) */
.msg-corner{
  width:30%;min-width:190px;
  text-align:left;vertical-align:bottom;
  padding:.7rem .85rem;
  background:var(--msg-paper-deep);
  border-bottom:2px solid var(--msg-oxblood);
}
.msg-corner-main{
  display:block;font-weight:700;font-size:.9rem;color:var(--msg-ink);
}
.msg-corner-sub{
  display:block;font-size:.66rem;font-weight:600;letter-spacing:.04em;
  text-transform:uppercase;color:var(--msg-oxblood);margin-top:.2rem;
}

/* Column score headers */
.msg-col{
  width:10%;
  text-align:center;vertical-align:bottom;
  padding:.7rem .35rem;
  font-size:1rem;font-weight:700;color:var(--msg-ink);
  background:var(--msg-paper-deep);
  border-bottom:2px solid var(--msg-oxblood);
  border-left:1px solid var(--msg-hairline);
}
/* the "6 or more" header needs to wrap nicely */
.msg-col:last-child{font-size:.82rem;line-height:1.1;}

/* Row head: level + example offense */
.msg-row-head{
  text-align:left;vertical-align:top;
  padding:.6rem .85rem;
  background:var(--msg-paper);
  border-top:1px solid var(--msg-hairline);
}
.msg-lvl{
  display:inline-block;
  font-weight:700;font-size:.95rem;color:var(--msg-oxblood);
  margin-right:.45rem;
}
.msg-off{
  font-size:.84rem;color:var(--msg-ink);line-height:1.3;
}

/* Data cells */
.msg-cell{
  text-align:center;vertical-align:middle;
  padding:.55rem .3rem;
  border-top:1px solid var(--msg-hairline);
  border-left:1px solid var(--msg-hairline);
  background:#fff;
}
.msg-cell--prison{
  background:var(--msg-prison);
  border-left-color:var(--msg-prison-line);
  border-top-color:var(--msg-prison-line);
}
.msg-dur{
  display:block;
  font-size:1.02rem;font-weight:700;color:var(--msg-ink);
  line-height:1.1;
}
.msg-range{
  display:block;
  font-size:.74rem;font-style:italic;color:var(--msg-muted);
  margin-top:.12rem;
}

/* Legend */
.msg-legend{
  display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1.2rem;
  margin:.85rem 0 0;
  font-size:.8rem;color:var(--msg-muted);
}
.msg-legend-item{display:inline-flex;align-items:center;gap:.4rem;}
.msg-swatch{
  width:.95rem;height:.95rem;display:inline-block;
  border:1px solid var(--msg-hairline);background:#fff;border-radius:2px;
}
.msg-swatch--prison{background:var(--msg-prison);border-color:var(--msg-prison-line);}
.msg-legend-note{font-style:italic;}

/* Notes + source */
.msg-foot-note,.msg-source{
  margin:.7rem 0 0;font-size:.8rem;color:var(--msg-muted);line-height:1.5;
}
.msg-foot-note{font-style:italic;}
.msg-source a{color:var(--msg-oxblood);text-decoration:none;border-bottom:1px solid var(--msg-gold);}
.msg-source a:hover,.msg-source a:focus-visible{color:var(--msg-ink);}

/* Mobile: let the table keep its real width and scroll, instead of crushing */
@media (max-width:720px){
  .msg-table{table-layout:auto;min-width:680px;}
  .msg-corner{min-width:150px;}
  .msg-grid-title{font-size:1.5rem;}
  .msg-dur{font-size:.95rem;}
}
/* ===== OFFENSE SEVERITY REFERENCE (sgo-*) ===== */
.sgo-wrap{
  --sgo-oxblood:#7A1F2E;
  --sgo-gold:#C9A063;
  --sgo-ink:#232629;
  --sgo-muted:#3D4652;
  --sgo-paper:#FBF8F2;
  --sgo-paper-deep:#F6F1E8;
  --sgo-hairline:#E6DAC2;
  color:var(--sgo-ink);
}

/* Intro */
.sgo-intro{margin:0 0 1.5rem;}
.sgo-intro p{margin:0 0 .85rem;line-height:1.65;}
.sgo-intro .sgo-note{
  font-size:.94rem;color:var(--sgo-muted);
  border-left:3px solid var(--sgo-gold);
  padding:.15rem 0 .15rem .9rem;margin-top:1rem;
}

/* Jump nav */
.sgo-jump{
  display:flex;flex-wrap:wrap;gap:.5rem;
  margin:0 0 2.25rem;padding:0;
}
.sgo-jump a{
  display:inline-block;
  font-family:var(--sans,'Inter',system-ui,sans-serif);
  font-size:.82rem;font-weight:600;letter-spacing:.01em;
  text-decoration:none;color:var(--sgo-oxblood);
  background:var(--sgo-paper);
  border:1px solid var(--sgo-hairline);
  padding:.5rem .85rem;border-radius:2px;
  transition:background .15s ease,color .15s ease;
}
.sgo-jump a:hover,.sgo-jump a:focus-visible{
  background:var(--sgo-oxblood);color:#fff;border-color:var(--sgo-oxblood);
}

/* Grid section titles */
.sgo-grid-title{
  font-family:var(--serif-display,'Cormorant Garamond',Georgia,serif);
  font-size:1.9rem;line-height:1.15;
  color:var(--sgo-oxblood);
  margin:2.75rem 0 .35rem;
  padding-top:1.4rem;
  border-top:2px solid var(--sgo-oxblood);
  scroll-margin-top:90px;
}
.sgo-grid-lede{
  margin:0 0 1.4rem;color:var(--sgo-muted);
  font-size:.96rem;line-height:1.6;
}

/* Each severity level */
.sgo-level{
  background:var(--sgo-paper);
  border:1px solid var(--sgo-hairline);
  border-radius:2px;
  margin:0 0 1rem;
  overflow:hidden;
}
.sgo-level-head{
  display:flex;align-items:baseline;gap:.75rem;
  background:var(--sgo-paper-deep);
  border-bottom:1px solid var(--sgo-hairline);
  padding:.7rem 1rem;
}
.sgo-badge{
  font-family:var(--sans,'Inter',system-ui,sans-serif);
  font-weight:700;font-size:.95rem;letter-spacing:.02em;
  color:#fff;background:var(--sgo-oxblood);
  padding:.2rem .6rem;border-radius:2px;white-space:nowrap;
}
.sgo-level-sub{
  font-family:var(--sans,'Inter',system-ui,sans-serif);
  font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;
  color:var(--sgo-muted);
}

/* Offense lists */
.sgo-list{list-style:none;margin:0;padding:.35rem 0;}
.sgo-item{
  display:flex;justify-content:space-between;align-items:baseline;gap:1.25rem;
  padding:.5rem 1rem;
  border-bottom:1px solid rgba(230,218,194,.55);
  line-height:1.45;
}
.sgo-item:last-child{border-bottom:none;}
.sgo-offense{flex:1 1 auto;}
.sgo-statute{
  flex:0 0 auto;
  font-family:var(--sans,'Inter',system-ui,sans-serif);
  font-size:.82rem;font-weight:600;
  color:var(--sgo-oxblood);
  white-space:nowrap;
  text-align:right;
}

/* Unranked */
.sgo-unranked-explain{margin:0 0 1.4rem;}
.sgo-unranked-explain p{margin:0 0 .85rem;line-height:1.65;}
.sgo-list--unranked{
  background:var(--sgo-paper);
  border:1px solid var(--sgo-hairline);
  border-radius:2px;
  columns:2;column-gap:0;
}
.sgo-list--unranked .sgo-item{break-inside:avoid;}

/* Source callout */
.sgo-source{
  margin:2.5rem 0 .5rem;
  background:var(--sgo-paper-deep);
  border:1px solid var(--sgo-hairline);
  border-top:4px solid var(--sgo-gold);
  border-radius:2px;
  padding:1.3rem 1.4rem;
}
.sgo-source h3{
  font-family:var(--serif-display,'Cormorant Garamond',Georgia,serif);
  font-size:1.35rem;color:var(--sgo-oxblood);margin:0 0 .5rem;
}
.sgo-source p{margin:0 0 .7rem;line-height:1.6;font-size:.95rem;}
.sgo-source-link{
  font-family:var(--sans,'Inter',system-ui,sans-serif);
  font-weight:600;color:var(--sgo-oxblood);
  text-decoration:none;border-bottom:1px solid var(--sgo-gold);
}
.sgo-source-link:hover,.sgo-source-link:focus-visible{color:var(--sgo-ink);}

@media (max-width:640px){
  .sgo-item{flex-direction:column;gap:.15rem;}
  .sgo-statute{text-align:left;}
  .sgo-list--unranked{columns:1;}
  .sgo-grid-title{font-size:1.55rem;}
}
/* ===== SEVERITY-RANKINGS CTA (msg-cta) ===== */
.msg-cta{
  --cta-oxblood:#7A1F2E;
  --cta-gold:#C9A063;
  --cta-ink:#232629;
  --cta-muted:#3D4652;
  --cta-paper:#FBF8F2;
  --cta-hairline:#E6DAC2;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:1.1rem 1.5rem;
  margin:2rem 0;
  padding:1.4rem 1.5rem;
  background:var(--cta-paper);
  border:1px solid var(--cta-hairline);
  border-left:4px solid var(--cta-gold);
  border-radius:2px;
}
.msg-cta-body{flex:1 1 320px;min-width:0;}
.msg-cta-kicker{
  margin:0 0 .25rem;
  font-family:var(--sans,'Inter',system-ui,sans-serif);
  font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--cta-oxblood);
}
.msg-cta-title{
  margin:0 0 .4rem;
  font-family:var(--serif-display,'Cormorant Garamond',Georgia,serif);
  font-size:1.5rem;line-height:1.15;color:var(--cta-ink);
}
.msg-cta-text{
  margin:0;font-size:.92rem;line-height:1.55;color:var(--cta-muted);
}
.msg-cta-link{
  flex:0 0 auto;
  display:inline-flex;align-items:center;gap:.5rem;
  font-family:var(--sans,'Inter',system-ui,sans-serif);
  font-size:.92rem;font-weight:600;
  text-decoration:none;color:#fff;background:var(--cta-oxblood);
  padding:.7rem 1.15rem;border-radius:2px;
  transition:background .15s ease;
}
.msg-cta-link:hover,.msg-cta-link:focus-visible{background:#5f1623;}
.msg-cta-link:focus-visible{outline:2px solid var(--cta-gold);outline-offset:2px;}
.msg-cta-arrow{transition:transform .15s ease;}
.msg-cta-link:hover .msg-cta-arrow{transform:translateX(3px);}

@media (max-width:560px){
  .msg-cta:is(aside){flex-direction:column;align-items:flex-start;}
  .msg-cta-link{width:100%;justify-content:center;}
}
/* ----- Modern Defense: "Where Defense Is Heading" credibility band ----- */
.modern-defense-heading {
  background: #1a1d20;
  color: #EDE8DE;
  padding: clamp(2.6rem, 5vw, 4.2rem) 0;
}
.modern-defense-heading .modern-defense-option-shell { max-width: 1040px; }
.modern-defense-heading .eyebrow { color: var(--color-gold); margin: 0 0 .6rem; }
.modern-defense-heading h2 {
  font-family: var(--serif-display);
  font-size: clamp(1.9rem, 3.1vw, 2.6rem);
  line-height: 1.1; margin: 0 0 1rem; color: #fff; max-width: 24ch;
}
.md-heading-lead { font-size: 1.05rem; max-width: 68ch; margin: 0 0 2.4rem; color: #C9C3B8; }
.md-heading-quotes {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.6rem; margin: 0 0 2.6rem;
}
.md-heading-quote { margin: 0; border-left: 3px solid var(--color-gold); padding: .25rem 0 .25rem 1.2rem; }
.md-heading-quote blockquote {
  margin: 0 0 .8rem; font-family: var(--serif-display); font-style: italic;
  font-size: clamp(1.2rem, 1.5vw, 1.38rem); line-height: 1.34; color: #fff;
}
.md-heading-quote figcaption { font-size: .76rem; letter-spacing: .03em; color: var(--color-gold); line-height: 1.45; }
.md-heading-pillars {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.6rem;
  border-top: 1px solid rgba(201,160,99,.3); padding-top: 2.2rem;
}
.md-heading-pillar h3 {
  font-family: var(--sans); font-size: .76rem; font-weight: 700; letter-spacing: .06em;
  text-transform: uppercase; color: var(--color-gold); margin: 0 0 .55rem;
}
.md-heading-pillar p { font-size: .92rem; color: #D5CFC4; margin: 0; }
.md-heading-pillar strong { color: #fff; }
@media (max-width: 820px) {
  .md-heading-quotes { grid-template-columns: 1fr; }
  .md-heading-pillars { grid-template-columns: 1fr; gap: 1.4rem; }
}
/* ----- KD section-symbol seam divider (between stacked editorial sections) ----- */
.kd-seam {
  display: flex;
  align-items: center;
  gap: 1.1rem;
  max-width: 880px;
  margin: 0 auto;
  padding: 1.6rem 1.5rem;
}
.kd-seam::before,
.kd-seam::after {
  content: "";
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--color-hairline), transparent);
}
.kd-seam span {
  font-family: var(--serif-display);
  font-size: 1.6rem;
  line-height: 1;
  color: var(--color-gold);
}

/* On dark sections (AI page main), keep the rule visible */
.modern-defense-option .kd-seam::before,
.modern-defense-option .kd-seam::after {
  background: linear-gradient(90deg, transparent, rgba(201,160,99,.35), transparent);
}

/* ===== CONTACT INTAKE CARD = HOMEPAGE CASE-REVIEW CARD ===== */
/* Match the homepage "When the stakes are serious" panel system without changing contact markup. */
.contact-redesign-shell.contact-redesign-intake {
  display: grid !important;
  grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr) !important;
  align-items: stretch !important;
  gap: 0 !important;
  width: min(1280px, calc(100% - 48px)) !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: #FFFFFF !important;
  box-shadow: none !important;
  clip-path: none !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
.contact-redesign-intake > .contact-redesign-panel--firm {
  grid-column: 1 !important;
  min-width: 0 !important;
  padding: clamp(2.5rem, 5vw, 4.5rem) clamp(2rem, 4vw, 3.5rem) !important;
  color: #FFFFFF !important;
  background:
    radial-gradient(circle at 12% 10%, rgba(255,255,255,.12), transparent 34%),
    linear-gradient(135deg, #7A1F2E, #4f101c) !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
.contact-redesign-intake > .contact-redesign-panel--firm::before {
  display: none !important;
}
.contact-redesign-intake > .contact-redesign-panel--firm .eyebrow {
  color: var(--color-gold) !important;
}
.contact-redesign-intake > .contact-redesign-panel--firm h2 {
  max-width: 22ch !important;
  color: #FFFFFF !important;
  font-size: clamp(1.9rem, 2.4vw, 2.7rem) !important;
  line-height: 1.14 !important;
  text-wrap: balance !important;
  margin-bottom: 1rem !important;
}
.contact-redesign-intake > .contact-redesign-panel--firm p,
.contact-redesign-intake > .contact-redesign-panel--firm li {
  color: rgba(247,243,234,.82) !important;
}
.contact-redesign-intake > .contact-redesign-panel--firm a {
  color: #FFFFFF !important;
}
.contact-redesign-intake > .contact-redesign-panel--form {
  grid-column: 2 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  justify-self: stretch !important;
  align-self: stretch !important;
  margin: 0 !important;
  padding: clamp(2.4rem, 4vw, 3.5rem) clamp(1.8rem, 3vw, 3rem) !important;
  border: 0 !important;
  background: #FFFFFF !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}
.contact-redesign-intake .contact-redesign-form {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1rem !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}
.contact-redesign-intake .contact-redesign-form > .full {
  grid-column: 1 / -1 !important;
}
.contact-redesign-intake .contact-redesign-form label {
  display: block !important;
  min-width: 0 !important;
  color: var(--color-graphite) !important;
  font-weight: 700 !important;
}
.contact-redesign-intake .contact-redesign-form input,
.contact-redesign-intake .contact-redesign-form select,
.contact-redesign-intake .contact-redesign-form textarea {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  background: var(--color-paper) !important;
  border: 1px solid var(--color-hairline) !important;
  border-radius: 0 !important;
  color: var(--color-ink) !important;
  min-height: 46px !important;
  padding: .7rem .85rem !important;
  margin-top: .42rem !important;
}
.contact-redesign-intake .contact-redesign-form textarea {
  min-height: 130px !important;
}
.contact-redesign-intake .contact-redesign-form input:focus,
.contact-redesign-intake .contact-redesign-form select:focus,
.contact-redesign-intake .contact-redesign-form textarea:focus {
  border-color: var(--color-oxblood) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-oxblood) 16%, transparent) !important;
  outline: 0 !important;
}
.contact-redesign-intake .contact-redesign-form .form-note,
.contact-redesign-intake .contact-redesign-form .form-status {
  color: var(--color-muted) !important;
}
@media (max-width: 900px) {
  .contact-redesign-shell.contact-redesign-intake {
    grid-template-columns: 1fr !important;
    width: min(100% - 32px, 1280px) !important;
  }
  .contact-redesign-intake > .contact-redesign-panel--firm,
  .contact-redesign-intake > .contact-redesign-panel--form {
    grid-column: 1 !important;
    padding: clamp(2rem, 7vw, 3.2rem) clamp(1.4rem, 5vw, 2rem) !important;
  }
  .contact-redesign-intake .contact-redesign-form {
    grid-template-columns: 1fr !important;
  }
}
/* ===== END CONTACT INTAKE CARD = HOMEPAGE CASE-REVIEW CARD ===== */

/* ===== END ENHANCEMENT LAYER ================================= */