/* style */
:root{--snow:#fffafa;--snow-deep:#F2F1EB;--ink-deep:#0A0A0A;--ink-soft:#2A2A2A;--ink-mid:#5A5A5A;--ink-line:#D8D6CF;--peach:#ffc46c;--cyan-deep:#01696f;--magenta:#c0107f;--navy:#0A1F44}
*{box-sizing:border-box;margin:0;padding:0}body{font-family:Outfit,system-ui,sans-serif;color:var(--ink-deep);background:var(--snow);line-height:1.7}
.top{background:var(--navy);color:#fff;text-align:center;padding:14px;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.top a,.top button{color:#fff;text-decoration:none}.top em{color:var(--peach);font-style:italic;font-family:'Playfair Display',serif;font-weight:700;text-transform:none}
.hdr{max-width:1240px;margin:0 auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;background:var(--snow);border-bottom:1px solid var(--ink-line)}
.hdr-brand{text-decoration:none;color:var(--ink-deep)}.hdr-brand-name{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:800}.hdr-brand-name em{color:var(--magenta);font-style:italic}
.hdr-brand-tag{font-size:.62rem;color:var(--cyan-deep);font-weight:600;letter-spacing:.18em;text-transform:uppercase;margin-top:3px}
.hero{background:linear-gradient(180deg,var(--peach),var(--snow-deep));padding:60px 24px;text-align:center}
.hero h1{font-family:'Playfair Display',serif;font-size:clamp(2rem,4.5vw,3rem);font-weight:800}.hero h1 em{color:var(--magenta);font-style:italic}
.shell{max-width:880px;margin:0 auto;padding:40px 24px}
h2{font-family:'Playfair Display',serif;font-size:1.65rem;margin:32px 0 14px}h3{font-family:'Playfair Display',serif;font-size:1.2rem;margin:20px 0 10px}
p{margin-bottom:14px;color:var(--ink-soft)}ul,ol{margin:0 0 14px 26px}li{margin-bottom:6px}a{color:var(--cyan-deep)}
.cta{background:#0A1F44;color:#fff;padding:32px;margin:32px 0;text-align:center;border-radius:8px}.cta a{display:inline-block;background:#c0107f;color:#fff;padding:14px 28px;border-radius:4px;font-weight:700;text-decoration:none}
.foot{background:var(--ink-deep);color:rgba(255,255,255,.7);padding:32px 24px;text-align:center;margin-top:48px;font-size:.85rem}.foot a{color:var(--peach)}
table{width:100%;border-collapse:collapse;margin:18px 0;font-size:.92rem}th,td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--ink-line)}th{background:#F2F1EB;font-weight:700}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:24px 0}
.card{background:#F2F1EB;padding:24px;border-radius:8px;text-decoration:none;color:#0A0A0A;border-top:3px solid #eb19a3}
.card:hover{transform:translateY(-2px)}
.card h3{font-family:'Playfair Display',serif;margin-bottom:8px;font-size:1.1rem}
.card p{font-size:.88rem;margin:0;color:#5A5A5A}
/* ll-mob-bar-layout-fix */

/* __LL-MOB-BAR-LAYOUT-FIX-V1__
   Fix: canonical mob-bar HTML lacks the .mob-bar-in wrapper, so the inner
   grid/flex rule never targets anything. Force .mob-bar itself to be a
   horizontal flex row, and force each direct-child icon to be a small
   vertical column (icon + label). */
.mob-bar {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-around !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 56px !important;
  padding: 6px 4px calc(6px + env(safe-area-inset-bottom, 0px)) !important;
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 90 !important;
  background: #0e2840 !important;
  border-top: 1px solid rgba(255,196,108,.18) !important;
  gap: 0 !important;
}
.mob-bar > a,
.mob-bar > button {
  flex: 1 1 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 2px !important;
  padding: 4px 2px !important;
  background: transparent !important;
  border: none !important;
  color: #ffc46c !important;
  font-size: .55rem !important;
  font-weight: 600 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  min-width: 0 !important;
  line-height: 1.1 !important;
}
.mob-bar > a svg,
.mob-bar > button svg {
  width: 20px !important;
  height: 20px !important;
  stroke: currentColor !important;
  fill: none !important;
  stroke-width: 1.8 !important;
}
.mob-bar > a:nth-child(2),
.mob-bar > a:nth-child(2) svg { color: #0dbae8 !important; stroke: #0dbae8 !important; }
.mob-bar > a:nth-child(3),
.mob-bar > button:nth-child(3),
.mob-bar > a:nth-child(3) svg,
.mob-bar > button:nth-child(3) svg { color: #c0107f !important; stroke: #eb19a3 !important; }
.mob-bar > a:nth-child(4),
.mob-bar > a:nth-child(4) svg { color: #0dbae8 !important; stroke: #0dbae8 !important; }
.mob-bar > a:nth-child(5),
.mob-bar > a:nth-child(5) svg { color: #ffc46c !important; stroke: #ffc46c !important; }
@media (min-width: 881px) {
  .mob-bar { display: none !important; }
}
/* Reset orphaned .mob-bar-in (if any page accidentally has it) — empty wrapper */
.mob-bar > .mob-bar-in:empty { display: none !important; }

/* ll-page-polish-v1 */

/* __LL-PAGE-POLISH-V1__ */

/* 2) Cred photos — profile bubbles, side-by-side */
.cred-photos {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 0 !important;
}
.cred-photos img,
.cred-photos picture img {
  width: 56px !important;
  height: 56px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  object-position: center top !important;
  border: 3px solid #fff !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.12) !important;
  display: block !important;
  margin: 0 !important;
}
.cred-photos img + img,
.cred-photos picture + picture {
  margin-left: -18px !important;
  position: relative !important;
  z-index: 1 !important;
}

/* 3) Hide redundant sticky-call (mob-bar already has Call button) */
.sticky-call {
  display: none !important;
}
@media (max-width: 880px) {
  .sticky-call { display: none !important; }
}

/* ll-h1-eyebrow-polish */

/* __LL-H1-EYEBROW-POLISH-V1__ — sitewide H1 + eyebrow design flow */

/* H1 base: ensure Playfair serif + bold weight + tight tracking */
.bp-h1,
.loc-h1,
.page-hero h1,
.hero h1,
section.hero h1,
section.page-hero h1,
main h1:first-of-type,
.hub-hero h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.12 !important;
  color: #143350 !important;
}

/* <em> inside H1 → magenta italic gradient (the "pink flow") */
.bp-h1 em,
.loc-h1 em,
.page-hero h1 em,
.hero h1 em,
section.hero h1 em,
section.page-hero h1 em,
main h1:first-of-type em,
.hub-hero h1 em {
  font-style: italic !important;
  background: linear-gradient(100deg, #eb19a3 0%, #ff5cc0 30%, #eb19a3 55%, #bf1383 80%, #eb19a3 100%) !important;
  background-size: 200% 100% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
  font-weight: 800 !important;
  animation: ll-h1-sheen 8s linear infinite !important;
}

@keyframes ll-h1-sheen {
  0% { background-position: 0% 0%; }
  100% { background-position: 200% 0%; }
}

/* Eyebrows — cyan uppercase with letter-spacing */
.post-category,
.bp-eyebrow,
.hero-eyebrow,
.eyebrow,
.loc-eyebrow,
.page-hero .eyebrow {
  display: block !important;
  font-family: 'Outfit', system-ui, -apple-system, sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #077191 !important;
  margin-bottom: 12px !important;
}

/* For H1 that has NO <em>: add a small magenta underline accent so the
   "pink flow" is preserved visually */
.bp-h1:not(:has(em))::after,
h1.bp-h1:not(:has(em))::after,
section.hero h1:not(:has(em))::after {
  content: "";
  display: block;
  width: 64px;
  height: 4px;
  background: linear-gradient(90deg, #eb19a3 0%, #ff5cc0 100%);
  border-radius: 2px;
  margin-top: 14px;
}

/* Spanish-page H1 normalization (some use no serif by default) */
[lang="es"] h1,
.es h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
}

/* ll-header-footer-fix */

/* __LL-HEADER-FOOTER-FIX-V1__ — match homepage header sizing + restore footer Cities/Counties CSS */

/* Header logo — smaller to match homepage (prevents wrapping on narrow viewports) */
.hdr-logo {
  font-size: 1.2rem !important;
  line-height: 1.1 !important;
}
@media (min-width: 880px) {
  .hdr-logo {
    font-size: 1.4rem !important;
  }
}

/* Footer Cities/Counties/Districts section headings */
.fc-h {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #ffc46c !important;
  font-weight: 700 !important;
  margin-bottom: 14px !important;
  border-bottom: 1px solid rgba(255,196,108,0.2) !important;
  padding-bottom: 8px !important;
}

/* Footer Cities grid layout — 2 columns of links */
.fc-cities {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0 16px !important;
  font-size: 0.86rem !important;
  line-height: 1.5 !important;
}

/* Footer plain list */
.fc-list {
  font-size: 0.86rem !important;
  line-height: 1.5 !important;
  display: block !important;
}

/* All footer links — proper color + spacing */
.fc-list a,
.fc-cities a {
  color: #c0c4cb !important;
  text-decoration: none !important;
  padding: 4px 0 !important;
  display: block !important;
  transition: color 0.2s !important;
}
.fc-list a:hover,
.fc-cities a:hover {
  color: #0dbae8 !important;
}

/* Constrain footer width + add safe horizontal padding so it doesn't overflow */
.footer-bottom-cities,
.footer .footer-in > div,
.foot-bottom {
  max-width: 100% !important;
  overflow-x: hidden !important;
}
.footer .footer-in,
.foot-inner {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

/* ll-rounded-line-caps */

/* __LL-ROUNDED-CAPS-V1__ — round the top + bottom of all colored left-border
   accent lines so they have circular caps instead of square ends. */

/* Named callout/card classes that have left-border accents */
.tldr-box,
.pa-callout,
.bp-callout,
.mid-cta,
.mid-cta-strip,
.callout,
.callout-box,
.fact-card,
.fact-box,
.info-card,
.info-box,
.refs,
.bp-refs,
.pa-refs,
.cite-box,
.trust-badges,
.editorial-aside,
.note,
.pull-quote,
.quote,
.statute-callout,
.snippet-answer,
.quick-answer-box,
.last-reviewed-card,
.ll-courthouse-card,
.ll-da-approach,
.ll-defense-process,
.ll-free-downloads,
.ll-local-pd,
.ll-numbers-grid,
.ll-tool-card,
.ll-case-timeline,
.ll-county-faq,
.ig-section,
.ig-meta,
.pa-faq-item,
.faq-item,
.bp-section,
.cred-photos,
.cofounders-block,
.experience-block {
  border-radius: 10px !important;
  overflow: hidden !important;
}

/* Inline-styled elements with border-left: ...
   override the 0 N N 0 pattern by forcing all 4 corners rounded */
[style*="border-left:"][style*="border-radius:0"],
[style*="border-left:4px"],
[style*="border-left: 4px"],
[style*="border-left:3px"],
[style*="border-left: 3px"],
[style*="border-left:6px"],
[style*="border-left: 6px"] {
  border-radius: 10px !important;
}

/* Special: where the box has rounded-only-right (0 N N 0), make rounded-all */
[style*="border-radius:0 6px 6px 0"],
[style*="border-radius: 0 6px 6px 0"],
[style*="border-radius:0 8px 8px 0"],
[style*="border-radius: 0 8px 8px 0"],
[style*="border-radius:0 4px 4px 0"],
[style*="border-radius: 0 4px 4px 0"] {
  border-radius: 10px !important;
}

/* Horizontal rule + decorative line treatment — round the ends */
hr,
.divider,
.scroll-progress-fill {
  border-radius: 4px !important;
}

/* SVG path lines (chrome animations, etc.) — apply stroke-linecap round */
svg {
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* ll-mnav-visible-fix */

/* __LL-MNAV-VISIBLE-FIX-V1__ — force .mnav links visible when menu open */

/* When the body has .mnav-open class, ALL .mnav links should be immediately visible */
body.mnav-open .mnav a,
body.mnav-open .mnav button,
body.mnav-open .mnav-actions a,
body.mnav-open .mnav-actions button,
html body.mnav-open .mnav > a,
html body.mnav-open .mnav .mnav-actions > a {
  opacity: 1 !important;
  transform: translateX(0) !important;
  visibility: visible !important;
  pointer-events: auto !important;
  display: block !important;
}

/* mnav-close button should always be visible when mnav-open */
body.mnav-open .mnav .mnav-close {
  opacity: 1 !important;
  transform: scale(1) rotate(0deg) !important;
  visibility: visible !important;
  display: flex !important;
  pointer-events: auto !important;
}

/* mnav itself must be visible + interactive */
body.mnav-open .mnav {
  visibility: visible !important;
  pointer-events: auto !important;
}

/* Special: mnav-actions wrapper (Call/Email/etc. block) needs to flex properly */
body.mnav-open .mnav-actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}

/* ll-mnav-call-fix */

/* __LL-MNAV-CALL-FIX-V1__ — restore compact Call/Email buttons in mobile nav */

/* Mnav-call buttons: flex row with icon left, text right — NOT block */
body.mnav-open .mnav .mnav-call,
body.mnav-open .mnav-actions .mnav-call,
.mnav .mnav-call,
.mnav-actions .mnav-call {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px 18px !important;
  border-radius: 14px !important;
  background: var(--magenta, #eb19a3) !important;
  color: #fff !important;
  text-decoration: none !important;
  margin: 8px 0 !important;
  width: auto !important;
  min-height: 56px !important;
  box-shadow: 0 4px 14px rgba(235, 25, 163, 0.25) !important;
  border-bottom: 0 !important;
  font-family: 'Outfit', system-ui, sans-serif !important;
  transform: none !important;
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
}

.mnav .mnav-call-email,
body.mnav-open .mnav .mnav-call-email {
  background: var(--cyan, #0dbae8) !important;
  box-shadow: 0 4px 14px rgba(13, 186, 232, 0.25) !important;
}

/* Icon column — fixed size, centered */
.mnav .mnav-call-icon,
body.mnav-open .mnav .mnav-call-icon {
  flex: 0 0 32px !important;
  width: 32px !important;
  height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255, 255, 255, 0.18) !important;
  border-radius: 8px !important;
  padding: 6px !important;
  margin: 0 !important;
}
.mnav .mnav-call-icon svg,
body.mnav-open .mnav .mnav-call-icon svg {
  width: 20px !important;
  height: 20px !important;
  color: #fff !important;
  fill: currentColor !important;
}

/* Text stack — column with label on top, value below */
.mnav .mnav-call-stack,
body.mnav-open .mnav .mnav-call-stack {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  line-height: 1.2 !important;
  gap: 2px !important;
}

.mnav .mnav-call-label,
body.mnav-open .mnav .mnav-call-label {
  font-size: 0.66rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  opacity: 0.85 !important;
  margin: 0 !important;
  display: block !important;
}

.mnav .mnav-call-value,
body.mnav-open .mnav .mnav-call-value {
  font-size: 1rem !important;
  font-weight: 700 !important;
  letter-spacing: -0.005em !important;
  text-transform: none !important;
  margin: 0 !important;
  display: block !important;
}

/* mnav-actions wrapper: vertical stack, full width */
.mnav .mnav-actions,
body.mnav-open .mnav .mnav-actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin-top: 24px !important;
  width: 100% !important;
}

/* ll-mnav-opaque */

/* __LL-MNAV-OPAQUE-V1__ */
.mnav,
body.mnav-open .mnav {
  background-color: #fffafa !important;
  background-image: linear-gradient(135deg, #fffafa 0%, #fff5e8 45%, #e9f9fe 100%) !important;
  z-index: 999 !important;
  isolation: isolate !important;
}
.mnav::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #fffafa !important;
  z-index: -1;
}

/* ll-mnav-header-hide */

/* __LL-MNAV-HEADER-HIDE-V1__ — when mnav is open, kill the sticky header completely */

/* Hide all sticky header chrome behind the mnav */
body.mnav-open .hdr-wrap,
body.mnav-open .canonical-hdr-wrap,
body.mnav-open .announce,
body.mnav-open .scroll-progress,
body.mnav-open header.hdr {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Kill backdrop-filter on Call/Email buttons so nothing bleeds through their
   opaque magenta/cyan backgrounds (defense in depth even with header hidden) */
.mnav .mnav-call,
.mnav .mnav-call-phone,
.mnav .mnav-call-email,
body.mnav-open .mnav .mnav-call,
body.mnav-open .mnav .mnav-call-phone,
body.mnav-open .mnav .mnav-call-email {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  background-color: var(--magenta, #eb19a3) !important;
  isolation: isolate !important;
  position: relative !important;
  z-index: 2 !important;
}

.mnav .mnav-call-email,
body.mnav-open .mnav .mnav-call-email {
  background-color: var(--cyan, #0dbae8) !important;
}

/* Make sure the mnav itself stomps everything below it */
.mnav,
body.mnav-open .mnav {
  z-index: 9999 !important;
}

/* ll-totop-sitewide */

/* __LL-TOTOP-SITEWIDE-V1__ — floating back-to-top button, bottom-LEFT corner */
.ll-totop {
  position: fixed;
  left: 14px;
  right: auto;
  bottom: 80px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #077191;
  color: #fff;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s, visibility .3s, transform .25s, box-shadow .25s, background .25s;
  z-index: 95;
  box-shadow: 0 4px 14px rgba(0,0,0,.18);
  padding: 0;
}
.ll-totop.visible {
  opacity: 1;
  visibility: visible;
}
.ll-totop:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 18px rgba(0,0,0,.22);
  background:#0a7da0;
}
.ll-totop:focus-visible {
  outline: 2px solid #eb19a3;
  outline-offset: 3px;
}
.ll-totop svg {
  width: 18px;
  height: 18px;
  stroke: #fff;
  fill: none;
  stroke-width: 2.5;
}
@media (min-width: 881px) {
  .ll-totop { bottom: 24px; width: 48px; height: 48px; }
  .ll-totop svg { width: 20px; height: 20px; }
}

/* ll-mnav-css-missing */

/* __LL-MNAV-CSS-MISSING-V1__ — canonical mnav modal CSS (positioning, animation, links, close, call buttons) */

/* Hamburger button — hidden on desktop, shown on mobile */
.hdr-ham {
  position: relative !important;
  z-index: 301 !important;
  display: none !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  flex-direction: column !important;
  gap: 5px !important;
  padding: 8px !important;
  width: 44px !important;
  height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
}
.hdr-ham span {
  display: block !important;
  width: 26px !important;
  height: 2px !important;
  background: #0A0A0A !important;
  transition: transform .4s, opacity .25s !important;
  border-radius: 2px !important;
}
body.mnav-open .hdr-ham span:nth-child(1) {
  transform: translateY(7px) rotate(45deg) !important;
  background:#c0107f !important;
}
body.mnav-open .hdr-ham span:nth-child(2) {
  opacity: 0 !important;
  transform: scaleX(0) !important;
}
body.mnav-open .hdr-ham span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg) !important;
  background:#c0107f !important;
}
@media (max-width: 880px) {
  .hdr-nav { display: none !important; }
  .hdr-ham { display: flex !important; }
}

/* Mnav modal — fixed full-viewport, snow gradient, clip-path circular reveal */
.mnav {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9999 !important;
  background: linear-gradient(135deg, #fffafa 0%, #fff5e8 45%, #e9f9fe 100%) !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 96px 40px 40px !important;
  overflow-y: auto !important;
  clip-path: circle(0% at calc(100% - 36px) 56px) !important;
  transition: clip-path .7s cubic-bezier(.22,1,.36,1) !important;
  pointer-events: none !important;
  visibility: hidden !important;
  isolation: isolate !important;
  gap: 0 !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
}
body.mnav-open .mnav {
  clip-path: circle(160% at calc(100% - 36px) 56px) !important;
  pointer-events: auto !important;
  visibility: visible !important;
}
body.mnav-open {
  overflow: hidden !important;
}
body.mnav-open .hdr-wrap {
  display: none !important;
}

/* Mnav links — block-level Playfair serif, big tap targets */
.mnav a {
  display: block !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: clamp(1.6rem, 5vw, 2.4rem) !important;
  font-weight: 700 !important;
  color: #0A0A0A !important;
  padding: 14px 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.06) !important;
  text-decoration: none !important;
  line-height: 1.1 !important;
  background: transparent !important;
  opacity: 1 !important;
  transform: none !important;
}
.mnav a:hover {
  color: #c0107f !important;
}

/* Mnav close button — top-right circle */
.mnav .mnav-close,
.mnav-close {
  position: absolute !important;
  top: 20px !important;
  right: 24px !important;
  background: #fff !important;
  border: 1px solid #e5e2da !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  cursor: pointer !important;
  font-size: 1.2rem !important;
  color: #000 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
}

/* Mnav actions: Call + Email pair */
.mnav-actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin-top: 24px !important;
  width: 100% !important;
  border-bottom: 0 !important;
}
.mnav .mnav-call,
.mnav-actions .mnav-call,
body.mnav-open .mnav .mnav-call {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 18px 24px !important;
  border-radius: 14px !important;
  background-color: #c0107f !important;
  color: #fff !important;
  text-decoration: none !important;
  margin: 0 !important;
  min-height: 56px !important;
  font-family: 'Outfit', system-ui, sans-serif !important;
  font-size: 0.96rem !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  border: 0 !important;
  border-bottom: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  isolation: isolate !important;
  position: relative !important;
  z-index: 2 !important;
  box-shadow: 0 4px 14px rgba(235,25,163,.25) !important;
  opacity: 1 !important;
  transform: none !important;
  font-style: normal !important;
}
.mnav .mnav-call-email,
body.mnav-open .mnav .mnav-call-email {
  background-color: #0dbae8 !important;
  box-shadow: 0 4px 14px rgba(13,186,232,.25) !important;
}

/* ll-unified-mnav-css */

/* __LL-UNIFIED-MNAV-V1__ — unified mnav with modern elegant call/email buttons */

/* The mnav itself: full-viewport modal, snow gradient, clip-path reveal */
.mnav {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9999 !important;
  background: linear-gradient(135deg, #fffafa 0%, #fff5e8 45%, #e9f9fe 100%) !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 88px 28px 36px !important;
  overflow-y: auto !important;
  clip-path: circle(0% at calc(100% - 36px) 56px) !important;
  transition: clip-path .7s cubic-bezier(.22,1,.36,1) !important;
  pointer-events: none !important;
  visibility: hidden !important;
  isolation: isolate !important;
  gap: 0 !important;
  font-size: 1rem !important;
  font-family: 'Outfit', system-ui, -apple-system, sans-serif !important;
}
body.mnav-open .mnav {
  clip-path: circle(160% at calc(100% - 36px) 56px) !important;
  pointer-events: auto !important;
  visibility: visible !important;
}
body.mnav-open {
  overflow: hidden !important;
}
body.mnav-open .hdr-wrap,
body.mnav-open .canonical-hdr-wrap,
body.mnav-open .announce,
body.mnav-open .scroll-progress,
body.mnav-open header.hdr {
  display: none !important;
}

/* Close button — top-right circle, soft shadow */
.mnav .mnav-close,
.mnav-close {
  position: absolute !important;
  top: 22px !important;
  right: 24px !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.95) !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  color: #0a0a0a !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  z-index: 10 !important;
  box-shadow: 0 4px 14px -4px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.04) !important;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease !important;
}
.mnav .mnav-close:hover {
  transform: rotate(90deg) !important;
  background: #fff !important;
  box-shadow: 0 8px 20px -6px rgba(0, 0, 0, 0.15) !important;
}

/* Nav links wrapper */
.mnav-nav {
  display: flex !important;
  flex-direction: column !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
}

/* Nav links — block-level Playfair, big tap targets, subtle slide on hover */
.mnav-nav a,
.mnav a:not(.mnav-call):not(.mnav-close) {
  display: block !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: clamp(1.5rem, 4.4vw, 2rem) !important;
  font-weight: 700 !important;
  color: #0A0A0A !important;
  padding: 14px 4px !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
  text-decoration: none !important;
  line-height: 1.15 !important;
  background: transparent !important;
  letter-spacing: -0.005em !important;
  transition: color .2s ease, padding-left .25s ease !important;
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}
.mnav-nav a:hover,
.mnav a:not(.mnav-call):not(.mnav-close):hover {
  color: #c0107f !important;
  padding-left: 8px !important;
}
.mnav-nav a:last-of-type {
  border-bottom: 0 !important;
}

/* Actions block (Call + Email buttons) */
.mnav-actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin-top: 26px !important;
  width: 100% !important;
  border-bottom: 0 !important;
}

/* ============================================
   MODERN ELEGANT CALL / EMAIL BUTTONS
   ============================================ */
.mnav .mnav-call,
.mnav-actions .mnav-call,
body.mnav-open .mnav .mnav-call {
  position: relative !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 16px 18px 16px 16px !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #eb19a3 0%, #bf1383 100%) !important;
  color: #fff !important;
  text-decoration: none !important;
  margin: 0 !important;
  min-height: 64px !important;
  font-family: 'Outfit', system-ui, sans-serif !important;
  border: 0 !important;
  border-bottom: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  isolation: isolate !important;
  overflow: hidden !important;
  box-shadow:
    0 12px 28px -10px rgba(235, 25, 163, 0.55),
    0 0 0 1px rgba(255, 255, 255, 0.08) inset,
    0 1px 0 rgba(255, 255, 255, 0.22) inset !important;
  transition: transform .35s cubic-bezier(.22, 1, .36, 1), box-shadow .35s ease !important;
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
  font-style: normal !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  align-self: stretch !important;
}
.mnav .mnav-call::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
  width: 100% !important;
  height: 100% !important;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.18) 50%, transparent 100%) !important;
  transition: left .7s ease !important;
  pointer-events: none !important;
}
.mnav .mnav-call:hover {
  transform: translateY(-2px) !important;
  box-shadow:
    0 18px 36px -10px rgba(235, 25, 163, 0.65),
    0 0 0 1px rgba(255, 255, 255, 0.14) inset,
    0 1px 0 rgba(255, 255, 255, 0.32) inset !important;
}
.mnav .mnav-call:hover::before {
  left: 100% !important;
}
.mnav .mnav-call:active {
  transform: translateY(0) scale(0.99) !important;
}

/* Email button — cyan variant */
.mnav .mnav-call-email,
body.mnav-open .mnav .mnav-call-email {
  background: linear-gradient(135deg, #0dbae8 0%, #077191 100%) !important;
  box-shadow:
    0 12px 28px -10px rgba(13, 186, 232, 0.55),
    0 0 0 1px rgba(255, 255, 255, 0.08) inset,
    0 1px 0 rgba(255, 255, 255, 0.22) inset !important;
}
.mnav .mnav-call-email:hover {
  box-shadow:
    0 18px 36px -10px rgba(13, 186, 232, 0.65),
    0 0 0 1px rgba(255, 255, 255, 0.14) inset,
    0 1px 0 rgba(255, 255, 255, 0.32) inset !important;
}

/* Icon tile — glassmorphic square inside button */
.mnav-call-icon {
  flex: 0 0 40px !important;
  width: 40px !important;
  height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255, 255, 255, 0.18) !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  border-radius: 12px !important;
  color: #fff !important;
  position: relative !important;
  z-index: 1 !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.18) inset !important;
}
.mnav-call-icon svg {
  width: 20px !important;
  height: 20px !important;
  fill: currentColor !important;
}

/* Text stack — label + value */
.mnav-call-stack {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  line-height: 1.15 !important;
  gap: 3px !important;
  position: relative !important;
  z-index: 1 !important;
  min-width: 0 !important;
}
.mnav-call-label {
  font-size: 0.66rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(255, 255, 255, 0.85) !important;
  margin: 0 !important;
  display: block !important;
}
.mnav-call-value {
  font-size: 1.02rem !important;
  font-weight: 700 !important;
  letter-spacing: -0.005em !important;
  color: #fff !important;
  margin: 0 !important;
  display: block !important;
  font-family: 'Outfit', system-ui, sans-serif !important;
}

/* Arrow chevron on the right */
.mnav-call-arrow {
  flex: 0 0 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: rgba(255, 255, 255, 0.82) !important;
  position: relative !important;
  z-index: 1 !important;
  transition: transform .3s ease !important;
}
.mnav .mnav-call:hover .mnav-call-arrow {
  transform: translateX(4px) !important;
  color: #fff !important;
}

/* ============================================
   REVIEW WIDGET — at the bottom of mnav
   ============================================ */
.mnav-reviews {
  margin-top: 24px !important;
  padding-top: 22px !important;
  border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
  width: 100% !important;
}
.mnav-reviews-eyebrow {
  font-family: 'Outfit', sans-serif !important;
  font-size: 0.68rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #077191 !important;
  margin-bottom: 12px !important;
}
.ll-grevs {
  background: rgba(255, 255, 255, 0.6) !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  border-radius: 14px !important;
  padding: 16px !important;
  font-family: 'Outfit', sans-serif !important;
  font-size: 0.92rem !important;
  color: #2a2a2a !important;
  min-height: 80px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  box-shadow: 0 4px 12px -6px rgba(0, 0, 0, 0.06) !important;
}
.ll-grevs[aria-busy="true"]::before {
  content: 'Loading reviews…' !important;
  color: #6a6a6a !important;
  font-size: 0.86rem !important;
}

/* Hide the legacy "Main" duplicate mnav if it co-exists */
nav.mnav[aria-label="Main"] {
  display: none !important;
}

/* Larger viewports — keep the close button safe-area aware */
@media (max-width: 380px) {
  .mnav { padding: 82px 22px 32px !important; }
  .mnav-nav a { font-size: 1.45rem !important; padding: 12px 4px !important; }
  .mnav-call { min-height: 60px !important; padding: 14px 16px !important; }
}
@media (min-width: 880px) {
  .mnav { padding: 100px 56px 48px !important; }
  .mnav-nav a { font-size: 2rem !important; }
}

/* ll-mnav-compact-v2 */

/* __LL-MNAV-COMPACT-V2__ — header no-wrap + compact mnav buttons + smaller review widget */

/* ---- HEADER: stop "L and L" from wrapping into hdr-nav row ---- */
.hdr {
  flex-wrap: nowrap !important;
  gap: 16px !important;
}
.hdr-wrap .hdr a[href="/"],
.hdr a[href="/"]:has(.hdr-logo) {
  flex: 0 1 auto !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
.hdr-logo {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
}
.hdr-sub {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.hdr-nav {
  flex: 0 1 auto !important;
  flex-wrap: nowrap !important;
  min-width: 0 !important;
}
.hdr-nav a {
  white-space: nowrap !important;
}
/* Hide nav on viewports too narrow to fit it cleanly — bump from 880 to 1024 */
@media (max-width: 1023px) {
  .hdr-nav { display: none !important; }
  .hdr-ham { display: flex !important; }
}

/* ---- COMPACT MNAV BUTTONS (single-line: icon + value) ---- */
.mnav .mnav-call,
.mnav-actions .mnav-call,
body.mnav-open .mnav .mnav-call {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  padding: 12px 16px !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, #eb19a3 0%, #bf1383 100%) !important;
  color: #fff !important;
  text-decoration: none !important;
  margin: 0 !important;
  min-height: 48px !important;
  font-family: 'Outfit', system-ui, sans-serif !important;
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  font-style: normal !important;
  border: 0 !important;
  border-bottom: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  isolation: isolate !important;
  overflow: hidden !important;
  position: relative !important;
  box-shadow:
    0 6px 16px -8px rgba(235, 25, 163, 0.5),
    0 0 0 1px rgba(255, 255, 255, 0.08) inset !important;
  transition: transform .25s cubic-bezier(.22, 1, .36, 1), box-shadow .25s ease !important;
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
  align-self: stretch !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.mnav .mnav-call:hover {
  transform: translateY(-1px) !important;
  box-shadow:
    0 10px 20px -8px rgba(235, 25, 163, 0.6),
    0 0 0 1px rgba(255, 255, 255, 0.14) inset !important;
}
.mnav .mnav-call:active {
  transform: translateY(0) scale(.99) !important;
}

/* Email button — cyan variant */
.mnav .mnav-call-email,
body.mnav-open .mnav .mnav-call-email {
  background: linear-gradient(135deg, #0dbae8 0%, #077191 100%) !important;
  box-shadow:
    0 6px 16px -8px rgba(13, 186, 232, 0.5),
    0 0 0 1px rgba(255, 255, 255, 0.08) inset !important;
}
.mnav .mnav-call-email:hover {
  box-shadow:
    0 10px 20px -8px rgba(13, 186, 232, 0.6),
    0 0 0 1px rgba(255, 255, 255, 0.14) inset !important;
}

/* Icon — compact glass tile */
.mnav-call-icon {
  flex: 0 0 32px !important;
  width: 32px !important;
  height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255, 255, 255, 0.16) !important;
  border-radius: 9px !important;
  color: #fff !important;
  position: relative !important;
  z-index: 1 !important;
}
.mnav-call-icon svg {
  width: 16px !important;
  height: 16px !important;
  stroke: currentColor !important;
  fill: none !important;
}

/* Value text — phone number or email */
.mnav-call-value {
  flex: 1 1 auto !important;
  font-family: 'Outfit', system-ui, sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: #fff !important;
  letter-spacing: -0.005em !important;
  position: relative !important;
  z-index: 1 !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  display: block !important;
  margin: 0 !important;
}

/* Hide any legacy label/stack/arrow if they exist from previous build */
.mnav-call-label,
.mnav-call-stack .mnav-call-label,
.mnav-call-arrow,
.mnav-call-stack {
  display: none !important;
}
/* If mnav-call-stack is present (older HTML), reset it to flat */
.mnav .mnav-call .mnav-call-stack {
  display: contents !important;
}

.mnav-actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  margin-top: 22px !important;
  width: 100% !important;
}

/* ---- COMPACT REVIEW WIDGET ---- */
.mnav-reviews {
  margin-top: 18px !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
  width: 100% !important;
}
.mnav-reviews-eyebrow {
  font-family: 'Outfit', sans-serif !important;
  font-size: 0.6rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: #077191 !important;
  margin-bottom: 8px !important;
}
.ll-grevs {
  background: rgba(255, 255, 255, 0.55) !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
  border-radius: 10px !important;
  padding: 10px 12px !important;
  font-family: 'Outfit', sans-serif !important;
  font-size: 0.82rem !important;
  color: #2a2a2a !important;
  min-height: 56px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  box-shadow: 0 2px 8px -4px rgba(0, 0, 0, 0.05) !important;
}
.ll-grevs[aria-busy="true"]::before {
  content: 'Loading reviews\2026' !important;
  color: #8a8a8a !important;
  font-size: 0.76rem !important;
}

/* ll-contact-header-mob-fix */

/* __LL-CONTACT-HEADER-MOB-FIX-V1__
   Force the firm-name logo to never wrap. Belt-and-suspenders: nowrap on the
   div, the wrapping <a>, and the parent header row. */
.hdr {
  flex-wrap: nowrap !important;
  align-items: center !important;
}
.hdr > a[href="/"],
.hdr > a:first-child {
  flex: 0 1 auto !important;
  min-width: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
}
.hdr-logo,
.hdr-logo span,
.hdr-logo * {
  white-space: nowrap !important;
  word-spacing: normal !important;
  word-break: keep-all !important;
}
.hdr-logo {
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
}

/* Hide the search button on mobile/tablet — search is still accessible
   inside the mnav modal. Search button is injected by /assets/search.js
   directly into <header class="hdr"> as a sibling of .hdr-ham. */
@media (max-width: 880px) {
  /* __LL-SEARCH-CSS-FIX-V2__ search button always visible — icon-only on all viewports per user 2026-05-19. Sizing handled by /assets/search.js injected styles. */
  .hdr-logo {
    font-size: 1.1rem !important;
  }
}
@media (max-width: 380px) {
  .hdr-logo {
    font-size: 1rem !important;
  }
  .hdr-sub {
    font-size: 0.5rem !important;
  }
}

/* Make sure the 5-button .mob-bar (the calc-page legacy variant) stays hidden
   if any survived the strip. */
div.mob-bar:not([class*="mob-bar-in"]):not([aria-label]) {
  display: none !important;
}

/* ll-canonical-mob-bar-css */

/* __LL-MOB-BAR-CSS-V1__ canonical mob-bar styles — must accompany .canonical-mob-bar HTML injection. 2026-05-19. */
.canonical-mob-bar,.mob-bar{position:fixed!important;bottom:0!important;left:0!important;right:0!important;z-index:90!important;background:#0a1f44!important;border-top:2px solid #ffc46c!important;padding:0!important;margin:0!important;box-shadow:0 -2px 12px rgba(0,0,0,.2);min-height:56px;display:block!important}
.canonical-mob-bar-in,.mob-bar-in,.canonical-mob-bar > a,.canonical-mob-bar > button{display:flex!important;flex-direction:row!important;justify-content:space-around!important;align-items:stretch!important;max-width:100%;width:100%;margin:0!important;padding:0!important;gap:0!important;height:100%}
.canonical-mob-bar-in > a,.canonical-mob-bar-in > button,.mob-bar-in > a,.mob-bar-in > button,.canonical-mob-bar > a,.canonical-mob-bar > button,.mob-bar > a:not(.mob-bar-in),.mob-bar > button:not(.mob-bar-in){display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;flex:1 1 0!important;text-align:center!important;color:#ffc46c!important;text-decoration:none!important;font-weight:600!important;font-size:.62rem!important;letter-spacing:.04em!important;text-transform:uppercase!important;background:none!important;border:none!important;padding:6px 2px!important;margin:0!important;min-width:0!important;font-family:inherit!important;cursor:pointer!important;line-height:1.1}
.canonical-mob-bar-in > a svg,.canonical-mob-bar-in > button svg,.mob-bar-in > a svg,.mob-bar-in > button svg,.canonical-mob-bar svg,.mob-bar svg{width:22px!important;height:22px!important;stroke:currentColor!important;fill:none!important;stroke-width:2!important;color:inherit;display:block!important;margin:0 auto!important;flex-shrink:0}
.canonical-mob-bar-in > :nth-child(2),.mob-bar-in > :nth-child(2),.canonical-mob-bar > :nth-child(2){color:#0dbae8!important}
.canonical-mob-bar-in > :nth-child(3),.mob-bar-in > :nth-child(3),.canonical-mob-bar > :nth-child(3){color:#c0107f!important}
.canonical-mob-bar-in > :nth-child(5),.mob-bar-in > :nth-child(5),.canonical-mob-bar > :nth-child(5){color:#0dbae8!important}
.canonical-mob-bar-in a:hover,.canonical-mob-bar-in button:hover,.mob-bar-in a:hover,.mob-bar-in button:hover{color:#fff!important}
@media(min-width:769px){
  .canonical-mob-bar,.mob-bar,.canonical-mob-bar-in,.mob-bar-in{display:none!important}
  body{padding-bottom:0!important}
}
@media(max-width:768px){
  body{padding-bottom:60px!important}
  .ll-totop{bottom:72px!important}
}

/* ll-hdr-brand-no-truncate-v1 */

/* __LL-HDR-BRAND-NO-TRUNCATE-V1__ — bug class #22 (Header Brand Truncation at Narrow Viewport)
   Releases nowrap/ellipsis at <480px so "L and L Law Group, PLLC"
   and "Criminal Defense · Frisco, Texas" wrap to 2 lines instead of truncating. */
@media (max-width: 480px) {
  .hdr-logo {
    white-space: normal !important;
    word-break: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.05 !important;
    font-size: 1.05rem !important;
    max-width: 100% !important;
  }
  .hdr-logo span,
  .hdr-logo * {
    white-space: normal !important;
  }
  .hdr-sub {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    font-size: 0.62rem !important;
    line-height: 1.25 !important;
    letter-spacing: 0.12em !important;
  }
}

/* ll-avvo-icon-fix-v1 */

/* __LL-FOOTER-AVVO-ICON-FIX-V1__ (rev: inline-fit v2) — Avvo social icon badge sized to match other 6 social icons in same row */
.footer-social-icons a.avvo-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--peach, #ffc46c);
  color: #0a1f44;
  text-decoration: none;
  transition: transform .2s ease, background .2s ease, color .2s ease;
  margin: 0;
  flex-shrink: 0;
}
.footer-social-icons a.avvo-link:hover {
  background: var(--magenta, #eb19a3);
  color: #fff;
  transform: translateY(-2px);
}
.footer-social-icons a.avvo-link .avvo-badge {
  font-family: var(--serif, 'Playfair Display', Georgia, serif);
  font-weight: 800;
  font-size: 18px;
  line-height: 1;
  letter-spacing: -.02em;
}
/* Narrow-viewport: tighten gap so all 7 icons (6 SVG + 1 Avvo) fit in one row */
@media (max-width: 480px) {
  .footer-social-icons {
    gap: 8px !important;
  }
}
@media (max-width: 380px) {
  .footer-social-icons {
    gap: 6px !important;
  }
  .footer-social-icons a,
  .footer-social-icons a.avvo-link {
    width: 34px !important;
    height: 34px !important;
  }
  .footer-social-icons a svg {
    width: 16px;
    height: 16px;
  }
  .footer-social-icons a.avvo-link .avvo-badge {
    font-size: 16px;
  }
}

/* ll-hdr-scroll-restore */

/* __LL-HDR-SCROLL-RESTORE-V1__ Restores sticky positioning on the canonical header wrap.
   Some Pattern A /charges/{slug}/ pages and one city page shipped without
   a sticky-header rule, causing the header to scroll off and never reappear.
   Idempotent — keyed by the sentinel above. 2026-05-19. */
.canonical-hdr-wrap.hdr-wrap,
.hdr-wrap.canonical-hdr-wrap,
.canonical-hdr-wrap,
.hdr-wrap{position:sticky !important;top:0 !important;z-index:100 !important;background:#fffafa;box-shadow:0 1px 8px rgba(0,0,0,.04)}
.canonical-hdr-wrap[hidden],
.canonical-hdr-wrap[aria-hidden="true"][style*="display:none"]{position:static !important;display:none !important}

/* ll-mnav-call-icon-v2 */

/* __LL-MNAV-CALL-ICON-V2_1__ — higher-specificity respec to defeat existing body.mnav-open .mnav .mnav-call-icon rules (specificity 0,3,1); anchors on #mnav ID 2026-05-19 */
#mnav .mnav-actions .mnav-call,
body.mnav-open #mnav .mnav-actions .mnav-call {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  padding: 16px 22px !important;
  text-align: left !important;
  border-radius: 14px !important;
}
#mnav .mnav-actions .mnav-call .mnav-call-icon,
body.mnav-open #mnav .mnav-actions .mnav-call .mnav-call-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 38px !important;
  width: 38px !important;
  height: 38px !important;
  background: rgba(255, 255, 255, 0.22) !important;
  border-radius: 50% !important;
  border: 1px solid rgba(255, 255, 255, 0.35) !important;
  flex-shrink: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
#mnav .mnav-actions .mnav-call .mnav-call-icon svg,
body.mnav-open #mnav .mnav-actions .mnav-call .mnav-call-icon svg {
  width: 20px !important;
  height: 20px !important;
  stroke-width: 1.8 !important;
  stroke: currentColor !important;
  fill: none !important;
  display: block !important;
}
#mnav .mnav-actions .mnav-call .mnav-call-value,
body.mnav-open #mnav .mnav-actions .mnav-call .mnav-call-value {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 700 !important;
  font-size: 1.05rem !important;
  letter-spacing: 0.01em !important;
  line-height: 1.2 !important;
  color: inherit !important;
  display: inline-block !important;
}

/* ll-mnav-after-fix-v1 */

/* __LL-MNAV-AFTER-FIX-V1__ — relocate decorative .mnav::after watermark from absolute-bottom (overlapped nav links on tall menus) to flow-positioned end-of-list 2026-05-19 */
.mnav::after {
  position: static !important;
  display: block !important;
  margin-top: 32px !important;
  padding-top: 24px !important;
  border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
  text-align: center !important;
  left: auto !important;
  bottom: auto !important;
  opacity: 0.45 !important;
  font-size: 0.68rem !important;
}
body.mnav-open .mnav::after {
  opacity: 0.45 !important;
}

/* style */
:root{--snow:#fffafa;--ink-deep:#143350;--peach:#ffc46c;--cyan:#0dbae8;--magenta:#c0107f;--serif:'Playfair Display',Georgia,serif;--sans:'Outfit',system-ui,sans-serif}
/* ll-canonical-header */

/* __LL-CANONICAL-HEADER-V1__ 2026-05-22 — force header chrome to the homepage's canonical sizing.
   Triple-class + !important beats drifted per-page + .canonical-hdr-wrap rules.
   Scope: skip-link hide + .hdr/.hdr-logo/.hdr-sub/.announce sizing only. */
.skip-link.skip-link.skip-link{position:absolute!important;top:-100%!important;left:50%!important;transform:translateX(-50%)!important}
.skip-link.skip-link.skip-link:focus{top:0!important}
.hdr.hdr.hdr{padding:16px 32px!important;max-width:1280px!important;margin-left:auto!important;margin-right:auto!important}
.hdr-logo.hdr-logo.hdr-logo{font-size:1.5rem!important;font-weight:800!important;line-height:1.05!important}
.hdr-logo.hdr-logo.hdr-logo span{color:var(--magenta,#eb19a3)!important}
.hdr-sub.hdr-sub.hdr-sub{font-size:.58rem!important;font-weight:700!important;letter-spacing:.22em!important;text-transform:uppercase!important;margin-top:2px!important}
.announce.announce.announce{padding:12px 24px!important;font-size:.8rem!important;text-align:center!important}
@media(max-width:768px){
  .hdr.hdr.hdr{padding:12px 16px!important}
  .hdr-logo.hdr-logo.hdr-logo{font-size:1.2rem!important}
  .hdr-sub.hdr-sub.hdr-sub{font-size:.55rem!important;letter-spacing:.18em!important}
}

/* ll-mnav-call-aa-v6 */
/* __LL-MNAV-CALL-AA-V6__ 2026-06-10 drawer call-pill AA guarantee (white-on-snow regression fix) */
.mnav .mnav-call,.mnav-call{background:#c0107f !important;color:#fff !important}
.mnav-call *{color:#fff !important}

/* ll-component-css-v1 */
/* __LL-COMPONENT-CSS-V1__ 2026-06-10 missing component stylesheet: bc-grid consult card + hf- form + dta-card + charges-cta buttons (markup shipped without CSS; icons ballooned to container width). Preview-verified 375px. */
.bc-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:36px;align-items:start;max-width:980px;margin:0 auto;padding:36px 32px;background:linear-gradient(135deg,#fff5e8 0%,#fffafa 50%,#e9f9fe 100%);border:1px solid rgba(255,196,108,.4);border-radius:14px}
@media(max-width:880px){.bc-grid{grid-template-columns:1fr;gap:24px;padding:26px 18px;margin:0 14px}}
.bc-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#c0107f;font-weight:700;margin-bottom:10px}
.bc-eyebrow svg{width:14px;height:14px;flex:0 0 auto}
.bc-copy h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(1.45rem,3vw,2rem);line-height:1.22;color:#0a0a0a;margin:0 0 12px}
.bc-copy h2 em{font-style:italic;color:#c0107f}
.bc-copy p{font-size:.98rem;line-height:1.6;color:rgba(0,0,0,.66);margin:0 0 16px}
.bc-meta{display:flex;flex-direction:column;gap:9px}
.bc-meta-row{display:flex;align-items:center;gap:9px;font-size:.92rem;color:rgba(0,0,0,.75)}
.bc-meta-row svg{width:16px;height:16px;flex:0 0 auto;color:#0a99c0}
.bc-meta-row a{color:#0a99c0;font-weight:700;text-decoration:none}
.bc-form .ll-form{display:flex;flex-direction:column;gap:10px}
.bc-form .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}
.bc-form .hf-input{width:100%;padding:13px 14px;border:1px solid rgba(0,0,0,.12);border-radius:8px;font-size:.95rem;font-family:inherit;background:#fff;box-sizing:border-box}
.bc-form .hf-input:focus{outline:none;border-color:#0dbae8;box-shadow:0 0 0 3px rgba(13,186,232,.12)}
.bc-form textarea.hf-input{min-height:96px;resize:vertical}
.bc-form .hf-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:15px 22px;background:#c0107f;color:#fff;font-weight:700;font-size:1rem;border:0;border-radius:10px;cursor:pointer;transition:background .25s ease,transform .15s ease}
.bc-form .hf-submit:hover{background:#a50d6c;transform:translateY(-1px)}
.bc-form .hf-submit svg{width:18px;height:18px;flex:0 0 auto}
.bc-form .hf-note{font-size:.74rem;color:rgba(0,0,0,.55);line-height:1.5;margin-top:6px}
.bc-form .hf-note a{color:#0a99c0}
.dta-card{display:flex;flex-direction:column;gap:10px;margin:18px 0;padding:18px;border:1px solid rgba(255,196,108,.45);border-radius:14px;background:linear-gradient(135deg,#fff5e8,#fffafa 55%,#e9f9fe)}
.dta-eyebrow,.charges-cta-eyebrow{display:block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#c0107f;font-weight:700;margin:0 0 4px}
.dta-btn,.charges-cta-btn{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid rgba(0,0,0,.1);border-radius:12px;background:#fff;text-decoration:none;color:#0a0a0a;transition:transform .15s ease,box-shadow .25s ease}
.dta-btn:hover,.charges-cta-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px -10px rgba(0,0,0,.25)}
.dta-btn-phone,.charges-cta-phone{background:#c0107f;border-color:#c0107f;color:#fff}
.dta-icon-wrap,.charges-cta-icon{flex:0 0 auto;width:38px;height:38px;border-radius:10px;background:rgba(13,186,232,.12);color:#0a99c0;display:inline-flex;align-items:center;justify-content:center}
.dta-btn-phone .dta-icon-wrap,.charges-cta-phone .charges-cta-icon{background:rgba(255,255,255,.2);color:#fff}
.dta-icon-wrap svg,.charges-cta-icon svg{width:20px;height:20px}
.dta-stack,.charges-cta-stack{display:flex;flex-direction:column;line-height:1.25;min-width:0;text-align:left}
.dta-label,.charges-cta-label{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
.dta-value,.charges-cta-value{font-weight:700;font-size:.95rem;word-break:break-word}
.charges-cta-btn{margin:8px 0}
.cta a.charges-cta-btn{display:flex;text-align:left;background:#fff;color:#0a0a0a;padding:12px 16px;border-radius:12px}
.cta a.charges-cta-btn.charges-cta-phone{background:#c0107f;color:#fff}
.cta:has(.charges-cta-btn) p{color:#fff}
.cta:has(.charges-cta-btn) .charges-cta-eyebrow{color:#ff79c8}

/* ll-fc-css */
/* __LL-FOOTER-CITIES-CSS-V1__ */
.footer-cities{background:var(--ink-deep-2,#0e2840);padding:40px 0 32px;border-top:1px solid rgba(255,196,108,.08)}
.footer-cities-inner{max-width:1180px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:32px}

/* ll-aa */
/* __LL-AA-V1__ WCAG 2.2 AA contrast overrides (CHG-15..18) */
.preview-watermark{display:none!important}
body .mob-bar-in > :nth-child(3),body .canonical-mob-bar > :nth-child(3),body .canonical-mob-bar-in > :nth-child(3),body .mob-bar > :nth-child(3){color:#ff66c9!important}
.hf-note,.cf-note,p.ll-mh-disclaimer{color:#595959!important}
.hf-note a,.cf-note a{color:#077191!important}
.lrr-h,.lrr2-h{color:#595959!important}
.lg-cta-h2{color:#fffafa!important}
.lg-step-num{color:rgba(10,10,10,.48)!important}
li.sep,span.sep{color:#666!important;opacity:1!important}
a.statute{color:#077191!important}
.post-category,.hdr-sub,.hero-eyebrow,.mnav-reviews-eyebrow,.author-bio-role,.sidebar-attorney-role{color:#077191!important}
.refs a,.references a,.refs-list a,.article-refs a,.disclaimer-note a{color:#077191!important}
.disclaimer-section,.disclaimer-section p{color:rgba(0,0,0,.62)!important}
.article-body aside a{color:#077191!important}
.ll-grevs-read{color:#c0107f!important}
.ll-grevs-write{color:#077191!important}
.ll-anchor{color:#c0107f!important}
.btn-primary,.cf-submit,a.btn.btn-primary{background:#c0107f!important;border-color:#c0107f!important;color:#fff!important}
.btn-cyan,.btn-urgent,button.cite-tab.active,.cite-tab.active{background:#0a7da0!important;border-color:#0a7da0!important;color:#fff!important}
button.cite-tab:not(.active),.cite-tab:not(.active){color:#077191!important}
.cite-copy{background:#077191!important;color:#fff!important}
body .footer-brand span{color:#ff4fc1!important}
body .footer-bottom,body .footer-bottom span,body .footer-bottom time,footer time{color:#c0c4cb!important}
.footer-desc{color:#c9d2dd!important}
.bar-cite{color:#c9d2dd!important}.bar-cite a{color:#9fd9ea!important}
footer [aria-label="Attorney advertising disclosure"],footer [aria-label="Attorney advertising disclosure"] p,footer [aria-label="Attorney advertising disclosure"] strong{color:#aab6c6!important}
footer a[href^="mailto:"]{color:#8fd9de!important}

/* ll-tpl-design */
/* __LL-TPL-DESIGN-V2__ */
/* HERO BAND — homepage treatment behind crumb+H1+byline+lede */
.tpl-hero{background:linear-gradient(160deg,#0a1f44 0%,#143350 55%,#0e2840 100%);padding:26px 0 34px;margin:0 0 28px}
.tpl-hero nav[aria-label="Breadcrumb"]{color:#c9d2dd!important;margin-top:0!important}
.tpl-hero nav[aria-label="Breadcrumb"] a{color:#7fd4ee!important}
html body .tpl-hero h1,html body .tpl-hero h1 span{color:#fffafa!important;margin:14px auto 18px!important;text-shadow:0 2px 14px rgba(0,0,0,.35)}
html body .tpl-hero .ll-read-time{color:#c9d2dd!important}
html body .tpl-hero [class*=byline], html body .tpl-hero [class*=byline] *:not(a){color:#e8edf3!important}
.tpl-hero h1 em,.tpl-hero h1 i{color:#ff66c9!important}
.tpl-hero .byline,.tpl-hero [class*="byline"]{background:rgba(255,250,250,.08)!important;border-left:3px solid #ff66c9!important;border-radius:8px;color:#e8edf3!important}
.tpl-hero .byline a,.tpl-hero [class*="byline"] a{color:#7fd4ee!important}
.tpl-hero .snippet-lede{color:#e8edf3!important}
.tpl-hero .snippet-lede a{color:#ffc46c!important}
/* SECTION RHYTHM — parchment bands kill the white monotony */
.quick-answer-box,.tldr{background:linear-gradient(135deg,#fff5e8,#e9f9fe)!important;border:none!important;border-left:4px solid #c0107f!important;border-radius:0 12px 12px 0!important;box-shadow:0 6px 22px rgba(10,31,68,.07)}
.trust-badges{background:#0e2840!important;border-radius:14px;padding:18px!important;display:grid!important;grid-template-columns:1fr 1fr;gap:10px}
.trust-badges>*{background:rgba(255,250,250,.06)!important;border:1px solid rgba(255,196,108,.25)!important;border-radius:10px!important;color:#fffafa!important;font-size:.82rem!important}
.trust-badges a{color:#7fd4ee!important}
article h2,main h2{position:relative;padding-bottom:10px}
article h2::after,main h2::after{content:"";position:absolute;left:0;bottom:0;width:54px;height:3px;background:linear-gradient(90deg,#c0107f,#0dbae8)}
.bp-refs,.references{background:#F2F1EB!important;border-radius:12px;padding:22px!important}
/* RELATED CARDS — accent top bar + lift */
.rc-card{border:1px solid #e3e0d8!important;border-top:3px solid #c0107f!important;border-radius:12px!important;box-shadow:0 4px 16px rgba(10,31,68,.06);transition:transform .15s ease,box-shadow .15s ease}
.rc-card:nth-child(2n){border-top-color:#0a7da0!important}
.rc-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(10,31,68,.13)}
.rc-cta{font-weight:800!important}
/* FAQ — card accordions, not bare white */
.faq-item{background:#fff!important;border:1px solid #e3e0d8!important;border-radius:12px!important;box-shadow:0 3px 12px rgba(10,31,68,.05);margin-bottom:12px!important;padding:16px 20px!important}
.faq-item summary{font-weight:700}
.faq-item[open]{border-left:4px solid #0a7da0!important}
/* AUTHORS — cofounders card treatment */
#about-the-authors~*,.authors,.about-authors{background:transparent}
h2#about-the-authors,h2[id*="author"]{margin-top:40px}
.author-card,.bio,[class*="author-b"]{background:#fffafa;border:1px solid #e3e0d8;border-left:4px solid #eb19a3;border-radius:10px;padding:18px 20px;margin:14px 0}
/* YMYL strip */
.ymyl-disclaimer{background:#F2F1EB!important;border-radius:10px;border-left:3px solid #946300!important}
@media(max-width:640px){.tpl-hero h1{font-size:1.9rem!important;line-height:1.15!important}}

/* ll-tpl-topbtn */
/* __LL-TPL-HDR-HOME-V1__ button reset so Free Consult button renders like homepage */
.top button{border:none;background:transparent;cursor:pointer;font:inherit;color:#fff;letter-spacing:inherit;text-transform:inherit;padding:0;margin:0;-webkit-appearance:none;appearance:none}

/* ll-tpl-hdr-home-css */
/* __LL-TPL-HDR-HOME-CSS-V1__ homepage .top/.announce/shimmer verbatim */
:root{--bg-tint:#fff5e8;--black:#000;--border-peach:rgba(255,196,108,.45);--ink-deep:#143350;--ink-soft:#3a3a3a;--magenta:#c0107f;--peach:#ffc46c;--serif:'Playfair Display',Georgia,serif}
.top{display:flex;padding:0;background:var(--ink-deep);position:relative;overflow:hidden;border-bottom:1px solid rgba(255,196,108,.12)}
.top a,.top button{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 20px;background:linear-gradient(120deg,var(--ink-deep) 0%,#214770 50%,var(--ink-deep) 100%);color:#fff;font-size:.86rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;transition:.4s ease;text-decoration:none;border:none;font-family:inherit;cursor:pointer;position:relative;overflow:hidden}
.top a em,.top button em{font-family:var(--serif);font-style:italic;font-weight:700;text-transform:none;letter-spacing:.01em;font-size:1.18em;color:var(--peach);text-shadow:0 0 14px rgba(255,196,108,.55);padding:0 3px}
.top a:first-child,.top button:first-child{border-right:1px solid rgba(255,196,108,.18)}
.announce{background:var(--bg-tint);text-align:center;padding:12px 24px;font-size:.8rem;color:var(--ink-soft);border-bottom:1px solid var(--border-peach)}
.announce strong{color:var(--black)}
.announce em{color:var(--magenta);font-style:italic;font-weight:700}
@media (max-width:768px){
.top a{font-size:.72rem;letter-spacing:.1em;padding:12px 10px;gap:6px;white-space:nowrap}
.top a em{font-size:1.12em}
}
.announce{text-align:center}
.top{position:relative;overflow:hidden}
.top a,.top button{position:relative;overflow:hidden}
.top a::before,.top button::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(13,186,232,.35),rgba(192, 16, 127, .35),transparent);transition:.8s;pointer-events:none}
.top a:hover::before,.top button:hover::before{left:100%}
.top a:hover,.top button:hover{background:linear-gradient(120deg,#0e2840,#214770 50%,#0e2840);letter-spacing:.2em}
.top a:hover em,.top button:hover em{color:#ffd58c;text-shadow:0 0 20px rgba(255,196,108,.8)}
.announce.announce.announce{padding:12px 24px!important;font-size:.8rem!important;text-align:center!important}

/* ll-glass-shimmer-css */

.top a,.top button,.canonical-hdr-wrap .top a,.canonical-hdr-wrap .top button{
  position:relative !important;
  background:linear-gradient(120deg,rgba(20,51,80,.55) 0%,rgba(33,71,112,.55) 50%,rgba(20,51,80,.55) 100%) !important;
  backdrop-filter:blur(14px) saturate(180%);
  -webkit-backdrop-filter:blur(14px) saturate(180%);
  border:1px solid rgba(255,196,108,.18) !important;
  overflow:hidden !important;
}
.top a::before,.top button::before,.canonical-hdr-wrap .top a::before,.canonical-hdr-wrap .top button::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(115deg,
    transparent 6%,
    rgba(255,196,108,.60) 20%,
    rgba(232,164,73,.65) 28%,
    rgba(255,92,192,.65) 38%,
    rgba(192, 16, 127, .75) 48%,
    rgba(191,19,131,.70) 54%,
    rgba(255,92,192,.65) 62%,
    rgba(13,186,232,.65) 72%,
    rgba(1, 105, 111, .55) 82%,
    transparent 94%);
  background-size:220% 100%;
  background-position:200% 0;
  pointer-events:none;
  z-index:0;
  opacity:0;
  animation:none;
  transition:opacity .25s ease;
}
.top a > *,.top button > *,.canonical-hdr-wrap .top a > *,.canonical-hdr-wrap .top button > *{position:relative;z-index:1}
.top a:hover::before,.top button:hover::before,.top a:active::before,.top button:active::before,
.canonical-hdr-wrap .top a:hover::before,.canonical-hdr-wrap .top button:hover::before,
.canonical-hdr-wrap .top a:active::before,.canonical-hdr-wrap .top button:active::before{
  opacity:1;
  animation:llg-shimmer 10s linear infinite;
}
@keyframes llg-shimmer{
  0%{background-position:200% 0}
  100%{background-position:-200% 0}
}

/* Footer columns — glass cards (unchanged from prior pass) */
.canonical-footer-wrap .footer-in > .footer-col{
  background:rgba(255,255,255,.04);
  backdrop-filter:blur(12px) saturate(160%);
  -webkit-backdrop-filter:blur(12px) saturate(160%);
  border:1px solid rgba(255,196,108,.10);
  border-radius:12px;
  padding:22px 22px 18px;
  transition:background .3s ease,border-color .3s ease,transform .3s ease;
}
.canonical-footer-wrap .footer-in > .footer-col:hover{
  background:rgba(255,255,255,.07);
  border-color:rgba(255,196,108,.22);
  transform:translateY(-2px);
}
.canonical-footer-wrap .footer-in > .footer-col h4{
  position:relative;
  padding-bottom:8px;
  margin-bottom:14px;
  border-bottom:1px solid rgba(255,196,108,.15);
}
.canonical-footer-wrap .footer-in > .footer-col h4::after{
  content:"";position:absolute;left:0;bottom:-1px;height:1px;width:36px;
  background:linear-gradient(90deg,#ffc46c,#c0107f);
}
.canonical-footer-wrap .footer-in > .footer-col a:hover{padding-left:6px;color:#ffc46c}
@media(max-width:880px){
  .canonical-footer-wrap .footer-in > .footer-col{padding:18px}
}

/* Mobile bottom bar — full-spectrum tap flash */
.canonical-mob-bar{
  position:fixed !important;
  bottom:0 !important;left:0 !important;right:0 !important;
  background:linear-gradient(180deg,#143350 0%,#0e2840 100%) !important;
  border-top:none !important;
  overflow:hidden !important;
}
.canonical-mob-bar a,.canonical-mob-bar button{
  position:relative !important;
  overflow:hidden !important;
}
.canonical-mob-bar a::after,.canonical-mob-bar button::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(115deg,
    transparent 8%,
    rgba(255,196,108,.40) 22%,
    rgba(232,164,73,.42) 32%,
    rgba(255,92,192,.44) 42%,
    rgba(192, 16, 127, .50) 50%,
    rgba(191,19,131,.45) 58%,
    rgba(255,92,192,.44) 65%,
    rgba(13,186,232,.40) 75%,
    rgba(1, 105, 111, .36) 85%,
    transparent 92%);
  background-size:220% 100%;
  background-position:200% 0;
  pointer-events:none;
  z-index:0;
  opacity:0;
  transition:opacity .15s ease;
}
.canonical-mob-bar a > *,.canonical-mob-bar button > *{position:relative;z-index:1}
.canonical-mob-bar a:active::after,.canonical-mob-bar a:hover::after,
.canonical-mob-bar button:active::after,.canonical-mob-bar button:hover::after{
  opacity:1;
  animation:llg-shimmer-tap 2s ease-out;
}
@keyframes llg-shimmer-tap{
  0%{background-position:200% 0;opacity:0}
  20%{opacity:1}
  100%{background-position:-200% 0;opacity:0}
}

/* ll-tpl-design-v3 */
/* __LL-TPL-DESIGN-V3__ */
/* 1. meta byline: contained card, no full-bleed */
.meta{max-width:880px;margin:18px auto!important;padding:14px 20px!important;background:linear-gradient(135deg,#fff5e8,#fdfcfa)!important;border:1px solid #f0e4d2!important;border-left:4px solid #ffc46c!important;border-radius:0 12px 12px 0;border-bottom:1px solid #f0e4d2!important;color:#3a3a3a!important}
.meta a{color:#0a7da0}
/* 4. quick answer: actual class is .quick-answer */
.quick-answer{background:linear-gradient(135deg,#fff5e8,#e9f9fe)!important;border:none!important;border-left:5px solid #c0107f!important;border-radius:0 14px 14px 0!important;box-shadow:0 8px 26px rgba(10,31,68,.08)!important;padding:24px 22px!important}
.quick-answer h2{margin-top:0}
/* 5. intake card */
.tpl-intake{max-width:880px;margin:26px auto;padding:26px 22px;background:linear-gradient(160deg,#0a1f44,#143350);border-radius:16px;box-shadow:0 14px 36px rgba(10,31,68,.25)}
.tpl-intake h2{color:#fffafa!important;margin:0 0 6px;padding-bottom:0}
.tpl-intake h2::after{display:none}
.tpl-intake .tpl-intake-sub{color:#c9d2dd;font-size:.92rem;margin:0 0 16px}
.tpl-intake .hf-field{margin-bottom:12px}
.tpl-intake .hf-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.tpl-intake input,.tpl-intake textarea{width:100%;box-sizing:border-box;padding:13px 14px;border:1px solid rgba(255,250,250,.25);border-radius:10px;background:rgba(255,250,250,.95);font:inherit;font-size:.95rem}
.tpl-intake input:focus,.tpl-intake textarea:focus{outline:3px solid #0dbae8;outline-offset:1px}
.tpl-intake .hf-submit{width:100%;padding:15px;border:none;border-radius:999px;background:linear-gradient(90deg,#c0107f,#eb19a3);color:#fffafa;font-weight:800;font-size:1rem;letter-spacing:.04em;cursor:pointer;box-shadow:0 8px 22px rgba(235,25,163,.35)}
.tpl-intake .hf-submit:hover{filter:brightness(1.08)}
.tpl-intake .hf-trust{display:flex;gap:8px;align-items:flex-start;color:#c9d2dd;font-size:.78rem;margin-top:12px}
.tpl-intake .hf-trust svg{flex:none;margin-top:2px;color:#ffc46c}
/* 3. google reviews cell inside navy trust grid */
.trust-badges .ll-grevs{grid-column:auto;background:rgba(255,250,250,.97)!important;border:1px solid rgba(255,196,108,.35)!important;border-radius:10px!important;padding:12px!important;display:flex;flex-direction:column;gap:4px;align-items:flex-start;justify-content:center}
.trust-badges .ll-grevs .llg-stars{color:#f5a623;font-size:1.05rem;letter-spacing:2px}
.trust-badges .ll-grevs .llg-line{color:#0a0a0a;font-size:.82rem}
.trust-badges .ll-grevs .llg-link{color:#0a7da0;font-size:.8rem;font-weight:700;text-decoration:none}
/* 6. parchment page bg — flat article markup, so tint the canvas, float white cards */
body{background:#f7f1e6!important}
.tpl-hero,.top,.hdr,.announce,header,footer{background-clip:padding-box}
article table,body>table,.penalty-table,table{background:#fffdfa;border-radius:12px;box-shadow:0 4px 14px rgba(10,31,68,.06);overflow:hidden}
dl{background:#fffdfa;border:1px solid #e9e2d4;border-left:4px solid #0dbae8;border-radius:0 12px 12px 0;padding:16px 18px}
blockquote{background:linear-gradient(135deg,#fff5e8,#fdfcfa);border-left:4px solid #c0107f;border-radius:0 12px 12px 0;padding:14px 18px;margin-left:0;margin-right:0}
/* martindale band sizing inside article column */
.ll-mh-band-v2{border-radius:16px;margin:26px 0}
.ll-mh-band-v2 .ll-mh-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.hf-note,.cf-note,p.ll-mh-disclaimer{color:#595959!important}.hf-note a,.cf-note a{color:#077191!important}.hf-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.32rem .75rem;background:rgba(1,105,111,.08);color:#01696f;font-size:.66rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;border-radius:99px;margin-bottom:1rem;border:1px solid rgba(1,105,111,.18)}.hf-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:#01696f;display:inline-block;box-shadow:0 0 0 3px rgba(1,105,111,.18);animation:hfpulse 2.4s ease-in-out infinite}.hf-title{font-family:"Playfair Display",Georgia,serif;font-size:1.65rem;font-weight:800;color:#143350;line-height:1.15;margin:0 0 .55rem;letter-spacing:-.01em}.hf-title em{font-style:italic;font-weight:800;color:#c0107f;background:linear-gradient(180deg,transparent 60%,rgba(255,196,108,.32) 60%,rgba(255,196,108,.32) 92%,transparent 92%)}.hf-sub{font-size:.92rem;color:#3a3a3a;line-height:1.55;margin:0 0 1.4rem;max-width:48ch}.hf-sub strong{color:#143350;font-weight:600}.hf-field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.95rem}.hf-label{font-family:"Outfit",system-ui,sans-serif;font-size:.74rem;font-weight:700;color:#143350;letter-spacing:.14em;text-transform:uppercase}.hf-submit{margin-top:.75rem;padding:1.1rem 1rem;background:linear-gradient(135deg,#c0107f 0%,#eb19a3 60%,#c0107f 100%);background-size:200% 100%;color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;font-family:"Outfit",sans-serif;width:100%;white-space:nowrap;text-align:center!important;box-shadow:0 8px 24px rgba(192,16,127,.32),inset 0 1px 0 rgba(255,255,255,.18);transition:background-position .4s ease,transform .15s ease,box-shadow .2s ease}.hf-submit{font-size:.95rem;letter-spacing:.16em}.hf-submit:hover{background-position:100% 0;box-shadow:0 12px 32px rgba(192,16,127,.42),inset 0 1px 0 rgba(255,255,255,.24);transform:translateY(-1px)}.hf-submit:active{transform:translateY(0)}.hf-trust{display:flex;align-items:flex-start;gap:.55rem;margin-top:1rem;padding-top:1rem;border-top:1px dashed rgba(20,51,80,.14);font-size:.72rem;color:#6a6a6a;line-height:1.5}.hf-trust svg{flex-shrink:0;margin-top:1px;color:#01696f}.ll-mh-disclaimer{color:#595959!important}.ll-mh-band-v2 {
  background: #ffffff;
  padding: 56px 24px 50px;
  border-top: 1px solid rgba(0,0,0,.06);
  border-bottom: 1px solid rgba(0,0,0,.06);
  position: relative;
}.ll-mh-band-v2::before {
  content: "";
  position: absolute; top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, #c0107f 0%, #ffc46c 50%, #01696f 100%);
  opacity: .55;
}.ll-mh-band-v2 .ll-mh-inner {
  max-width: 1180px;
  margin: 0 auto;
  text-align: center;
}.ll-mh-band-v2 .ll-mh-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: .72rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: #c0107f;
  font-weight: 800;
  margin-bottom: 14px;
}.ll-mh-band-v2 .ll-mh-eyebrow .dot {
  width: 4px; height: 4px; border-radius: 50%;
  background: #ffc46c;
  display: inline-block;
}.ll-mh-band-v2 .ll-mh-h2 {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 800;
  color: #000;
  line-height: 1.18;
  margin: 0 0 10px;
  letter-spacing: -.01em;
}.ll-mh-band-v2 .ll-mh-h2 em {
  font-style: italic;
  color: #c0107f;
}.ll-mh-band-v2 .ll-mh-sub {
  font-size: .96rem;
  color: #6a6a6a;
  margin: 0 0 36px;
  line-height: 1.55;
  max-width: 620px;
  margin-left: auto;
  margin-right: auto;
}.ll-mh-band-v2 .ll-mh-row {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  flex-wrap: wrap;
  margin: 0 auto 28px;
}.ll-mh-band-v2 .ll-mh-badge {
  height: auto;
  max-width: 220px;
  width: 100%;
  transition: transform .25s ease, filter .25s ease;
  filter: drop-shadow(0 4px 10px rgba(0,0,0,.10));
}.ll-mh-band-v2 .ll-mh-badge:hover {
  transform: translateY(-2px);
  filter: drop-shadow(0 8px 20px rgba(0,0,0,.14));
}.ll-mh-band-v2 .ll-mh-row { gap: 22px; }.ll-mh-band-v2 .ll-mh-badge { max-width: 180px; }.ll-mh-band-v2 .ll-mh-disclaimer {
  font-size: .74rem;
  color: #595959;
  font-style: italic;
  letter-spacing: .03em;
  margin: 0 auto;
  max-width: 600px;
  line-height: 1.5;
}.ll-mh-band-v2 .ll-mh-link {
  display: block;
  width: 100%;
  max-width: 220px;
}.ll-mh-band-v2 .ll-mh-link:focus-visible {
  outline: 3px solid #c0107f;
  outline-offset: 4px;
  border-radius: 6px;
}.ll-mh-band-v2 .ll-mh-row { gap: 20px 22px; }.ll-mh-band-v2 .ll-mh-link { width: calc(50% - 11px); max-width: 150px; }.ll-grevs-host{padding:36px 16px;background:#fff;display:flex;justify-content:center}.ll-grevs-host .ll-grevs{margin:0;max-width:720px;width:100%}.ll-grevs-host{padding:24px 14px}.ll-grevs{background: rgba(255, 255, 255, 0.6) !important;
  border: 1px solid rgba(0, 0, 0, 0.06) !important;
  border-radius: 14px !important;
  padding: 16px !important;
  font-family: 'Outfit', sans-serif !important;
  font-size: 0.92rem !important;
  color: #2a2a2a !important;
  min-height: 80px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  box-shadow: 0 4px 12px -6px rgba(0, 0, 0, 0.06) !important;}.ll-grevs{background: rgba(255, 255, 255, 0.55) !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
  border-radius: 10px !important;
  padding: 10px 12px !important;
  font-family: 'Outfit', sans-serif !important;
  font-size: 0.82rem !important;
  color: #2a2a2a !important;
  min-height: 56px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  box-shadow: 0 2px 8px -4px rgba(0, 0, 0, 0.05) !important;}.ll-grevs-read{color:#c0107f!important}.ll-grevs-write{color:#077191!important}

/* ll-tpl-design-v4 */
/* __LL-TPL-DESIGN-V4__ */
/* A. Related charges cards — colorful (cards use inline styles; !important wins) */
.related-articles{background:linear-gradient(135deg,#eef8fc,#fdf6ec)!important;border-radius:18px;padding:24px 18px!important}
.related-articles>div>a,.related-articles a[style]{background:#fffdfa!important;border:1px solid #e8e1d2!important;border-top:4px solid #c0107f!important;border-radius:14px!important;box-shadow:0 6px 18px rgba(10,31,68,.08)!important;transition:transform .15s ease,box-shadow .15s ease}
.related-articles a[style]:nth-of-type(3n+2){border-top-color:#0dbae8!important}
.related-articles a[style]:nth-of-type(3n){border-top-color:#ffc46c!important}
.related-articles a[style]:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(10,31,68,.16)!important}
/* B. About the Authors — navy co-founders card */
.attorney-bios{background:linear-gradient(150deg,#0a1f44,#143350)!important;border:none!important;border-radius:18px!important;padding:26px 22px!important;box-shadow:0 14px 36px rgba(10,31,68,.22)}
.attorney-bios h2{color:#fffafa!important;margin-top:0}
.attorney-bios h2::after{background:linear-gradient(90deg,#ff66c9,#0dbae8)!important}
.attorney-bios h3{color:#ffc46c!important;margin:22px 0 8px}
.attorney-bios p,.attorney-bios div,.attorney-bios li{color:#e8edf3!important}
.attorney-bios a{color:#7fd4ee!important}
.attorney-bios h3+p{display:inline-block;background:rgba(255,250,250,.08)!important;border:1px solid rgba(13,186,232,.45);border-radius:999px;padding:5px 14px;color:#9fdef2!important;font-size:.72rem!important;letter-spacing:.13em;margin:0 0 10px}
/* C1. Related resources card — gradient + pill links */
.ll-related-resources-v2{background:linear-gradient(135deg,#fff3e2,#e9f9fe)!important;border:none!important;border-left:5px solid #0dbae8!important;border-radius:0 16px 16px 0!important;box-shadow:0 8px 24px rgba(10,31,68,.08)}
.ll-related-resources-v2 a{display:inline-block;background:#fffdfa!important;border:1px solid #ffd9a6!important;border-radius:999px;padding:7px 16px!important;margin:4px 6px 4px 0;color:#9a0a64!important;font-weight:700;text-decoration:none!important;box-shadow:0 3px 10px rgba(10,31,68,.06)}
.ll-related-resources-v2 a:hover{border-color:#c0107f!important;background:#fff5fb!important}
/* C2. Sidebar (Texas {offense} Resources) — navy card with pill list */
aside.sidebar{background:linear-gradient(160deg,#0e2840,#143350)!important;border:none!important;border-radius:16px!important;padding:24px 20px!important;box-shadow:0 12px 30px rgba(10,31,68,.2)}
aside.sidebar h2,aside.sidebar h3,aside.sidebar h4{color:#fffafa!important}
aside.sidebar ul{list-style:none;padding-left:0!important;margin:12px 0 0}
aside.sidebar li{margin:0 0 10px}
aside.sidebar a{display:block;background:rgba(255,250,250,.07)!important;border:1px solid rgba(255,196,108,.3)!important;border-radius:10px;padding:11px 14px!important;color:#9fdef2!important;font-weight:600;text-decoration:none!important}
aside.sidebar a:hover{background:rgba(13,186,232,.16)!important;border-color:#0dbae8!important}
/* D. FOOTER FIX — was transparent bg + light text (unreadable). Navy gradient. */
footer.footer{background:linear-gradient(165deg,#0a1f44 0%,#0e2840 60%,#101c33 100%)!important;color:#c9d2dd!important;border-top:3px solid #c0107f;margin-top:38px;padding-top:34px!important;padding-bottom:96px!important}
footer.footer h3,footer.footer h4,footer.footer strong,footer.footer b{color:#ffc46c!important}
footer.footer p,footer.footer li,footer.footer div,footer.footer span{color:#c9d2dd!important}
footer.footer a{color:#9fdef2!important;text-decoration-color:rgba(159,222,242,.45)!important}
footer.footer a:hover{color:#fffafa!important}

/* ll-tpl-design-v5 */
/* __LL-TPL-DESIGN-V5__ dta contact buttons — solid + visible */
aside.sidebar .dta-card{background:#fffdfa!important;border:none!important;border-radius:16px!important;padding:20px 18px!important;box-shadow:0 10px 26px rgba(10,31,68,.18)}
aside.sidebar .dta-card .dta-eyebrow{color:#c0107f!important;font-weight:800!important;letter-spacing:.16em}
aside.sidebar .dta-card a.dta-btn{display:flex!important;align-items:center!important;gap:14px;background:linear-gradient(135deg,#0a1f44,#143350)!important;border:none!important;border-radius:14px!important;padding:15px 16px!important;margin:12px 0 0!important;box-shadow:0 8px 20px rgba(10,31,68,.28);text-decoration:none!important;transition:transform .15s ease,box-shadow .15s ease}
aside.sidebar .dta-card a.dta-btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(10,31,68,.36)}
aside.sidebar .dta-card .dta-icon-wrap{flex:none;width:44px;height:44px;border-radius:12px;display:flex!important;align-items:center;justify-content:center;background:linear-gradient(135deg,#c0107f,#eb19a3)!important;color:#fffafa!important;opacity:1!important}
aside.sidebar .dta-card a.dta-btn-email .dta-icon-wrap{background:linear-gradient(135deg,#0a7da0,#0dbae8)!important}
aside.sidebar .dta-card .dta-icon-wrap svg{width:22px;height:22px;color:#fffafa!important;fill:#fffafa}
aside.sidebar .dta-card .dta-label{display:block;color:#ffc46c!important;font-size:.66rem!important;font-weight:800!important;letter-spacing:.18em;text-transform:uppercase;opacity:1!important}
aside.sidebar .dta-card .dta-stack span:last-child{color:#fffafa!important;font-weight:800!important;font-size:1.02rem;overflow-wrap:anywhere;opacity:1!important}

/* ll-tpl-design-v6 */
/* __LL-TPL-DESIGN-V6__ footer polish */
/* Preferred Source CTA — navy card so footer light-text palette reads */
footer.footer .ll-preferred-source,.ll-preferred-source{background:linear-gradient(150deg,#143350,#0e2840)!important;border:1px solid rgba(255,196,108,.4)!important;border-radius:18px!important;padding:26px 22px!important;box-shadow:0 14px 34px rgba(0,0,0,.3)!important;margin:26px 0}
.ll-preferred-source h2,.ll-preferred-source h3,.ll-preferred-source h4,.ll-preferred-source strong{color:#ffc46c!important}
.ll-preferred-source p,.ll-preferred-source span,.ll-preferred-source div{color:#d7dee8!important}
.ll-preferred-source a{display:inline-block;background:linear-gradient(90deg,#c0107f,#eb19a3)!important;color:#fffafa!important;border-radius:999px!important;padding:14px 28px!important;font-weight:800!important;text-decoration:none!important;box-shadow:0 8px 22px rgba(235,25,163,.4);border:none!important}
.ll-preferred-source a:hover{filter:brightness(1.1)}
/* Footer columns — chip links, kill raw underline/italic run-on */
footer.footer .footer-in *{font-style:normal!important}
footer.footer .footer-in h3,footer.footer .footer-in h4,footer.footer .footer-in strong{display:block;margin:22px 0 10px!important;color:#ffc46c!important;letter-spacing:.14em;text-transform:uppercase;font-size:.8rem!important}
footer.footer .footer-in a{display:inline-block;background:rgba(255,250,250,.06)!important;border:1px solid rgba(159,222,242,.16)!important;border-radius:9px!important;padding:7px 12px!important;margin:3px 6px 3px 0!important;color:#cfe3f0!important;text-decoration:none!important;font-size:.88rem!important;line-height:1.3!important}
footer.footer .footer-in a:hover{background:rgba(13,186,232,.18)!important;border-color:#0dbae8!important;color:#fffafa!important}
/* Cities / counties tables — uniform pills under cyan county heads */
footer.footer .footer-tbls h3,footer.footer .footer-tbls h4,footer.footer .footer-tbls strong,footer.footer .footer-tbls th{color:#7fd4ee!important;letter-spacing:.16em;text-transform:uppercase;font-size:.78rem!important;border:none!important}
footer.footer .footer-tbls a{display:inline-block;background:rgba(255,250,250,.05)!important;border:1px solid rgba(255,196,108,.22)!important;border-radius:999px!important;padding:6px 14px!important;margin:3px 4px 3px 0!important;color:#ffd9a6!important;text-decoration:none!important;font-size:.85rem!important}
footer.footer .footer-tbls a:hover{border-color:#ffc46c!important;color:#fffafa!important;background:rgba(255,196,108,.14)!important}
footer.footer .footer-tbls td,footer.footer .footer-tbls tr,footer.footer .footer-tbls table{border:none!important;border-collapse:separate}
/* Social row — square icon buttons */
footer.footer .footer-social{margin:24px 0 0!important;padding-top:20px!important;border-top:1px solid rgba(159,222,242,.15)}
footer.footer .footer-social a{display:inline-flex!important;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px!important;background:rgba(255,250,250,.07)!important;border:1px solid rgba(159,222,242,.22)!important;margin:6px 10px 0 0!important;padding:0!important;text-decoration:none!important}
footer.footer .footer-social a:hover{background:rgba(13,186,232,.22)!important;border-color:#0dbae8!important}
footer.footer .footer-social svg{width:20px;height:20px}
/* Legal pill row */
footer.footer .footer-legal-links{padding:18px 0 4px!important;margin-top:18px!important;border-top:1px solid rgba(159,222,242,.15)}
footer.footer .footer-legal-links a{display:inline-block;padding:6px 13px!important;margin:3px 5px 3px 0!important;border-radius:999px!important;background:rgba(255,250,250,.05)!important;border:1px solid rgba(159,222,242,.18)!important;color:#9fdef2!important;text-decoration:none!important;font-size:.8rem!important}
footer.footer .footer-legal-links a:hover{color:#fffafa!important;border-color:#0dbae8!important}
/* Bottom credit — keep on navy, no cream strip */
footer.footer .footer-bottom{background:transparent!important;color:#8fa3b8!important;padding:16px 0 0!important;margin:0!important}
footer.footer .footer-bottom a{color:#9fdef2!important;text-decoration-color:rgba(159,222,242,.4)!important}
footer.footer .footer-bottom *{color:#8fa3b8!important}
footer.footer .footer-bottom a,footer.footer .footer-bottom a *{color:#9fdef2!important}

/* ll-tpl-design-v7 */
/* __LL-TPL-DESIGN-V7__ */
/* trust cells stacked, not side-by-side */
.trust-badges{grid-template-columns:1fr!important}
/* intake form — more color */
.tpl-intake{position:relative;overflow:hidden;border:1px solid rgba(255,196,108,.45)!important}
.tpl-intake::before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#ffc46c,#eb19a3 50%,#0dbae8)}
.tpl-intake h2{color:#fffafa!important}
.tpl-intake h2 em,.tpl-intake h2 i{color:#ff66c9!important}
.tpl-intake .tpl-intake-sub{color:#9fdef2!important}
.tpl-intake input,.tpl-intake textarea{border:2px solid rgba(13,186,232,.4)!important;background:#fffdfa!important}
.tpl-intake .hf-field:nth-of-type(odd) input,.tpl-intake .hf-field:nth-of-type(odd) textarea{border-left:5px solid #0dbae8!important}
.tpl-intake .hf-field:nth-of-type(even) input,.tpl-intake .hf-field:nth-of-type(even) textarea{border-left:5px solid #eb19a3!important}
.tpl-intake input:focus,.tpl-intake textarea:focus{outline:3px solid #ffc46c!important;outline-offset:1px;border-color:#ffc46c!important}
.tpl-intake .hf-submit{background:linear-gradient(90deg,#c0107f,#eb19a3 55%,#ff66c9)!important;text-transform:uppercase;letter-spacing:.06em}
.tpl-intake .hf-trust{background:rgba(255,250,250,.06);border:1px solid rgba(255,196,108,.25);border-radius:10px;padding:10px 12px!important}
.tpl-intake .hf-trust svg{color:#ffc46c!important}
.tpl-intake .hf-trust span{color:#d7dee8!important}

/* ll-nav-more-v1 */
/* __LL-NAV-MORE-V1__ 2026-07-16 — desktop-nav consolidation (#418): dedupe + native details dropdown; mnav untouched */
.hdr-nav details.ll-nav-more{position:relative;display:inline-block}
.hdr-nav details.ll-nav-more>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:5px;font:inherit;font-weight:600;color:inherit;padding:0;user-select:none}
.hdr-nav details.ll-nav-more>summary::-webkit-details-marker{display:none}
.hdr-nav details.ll-nav-more>summary::after{content:"\25BE";font-size:.7em;line-height:1;transition:transform .15s ease}
.hdr-nav details.ll-nav-more[open]>summary::after{transform:rotate(180deg)}
.hdr-nav .ll-nav-more-menu{position:absolute;top:calc(100% + 12px);right:-8px;min-width:198px;background:#fffafa;border:1px solid #e8e2e2;border-radius:12px;box-shadow:0 16px 36px -14px rgba(0,0,0,.25);padding:8px;z-index:640;display:flex;flex-direction:column;gap:2px}
.hdr-nav .ll-nav-more-menu a{display:block;padding:10px 14px;border-radius:8px;color:#0e0e0e;text-decoration:none;font-weight:600;white-space:nowrap}
.hdr-nav .ll-nav-more-menu a:hover,.hdr-nav .ll-nav-more-menu a:focus-visible{background:#fdeef7;color:#c0107f}
/* guard: below 1200px the row cannot be guaranteed on every family — hand off to the hamburger */
@media(max-width:1199px){.hdr-nav{display:none!important}.hdr-ham{display:flex!important}}

/* ll-tablewrap-fix */
html body .table-wrap[class],html body .table-wrapper[class],html body .table-scroll[class]{overflow-x:auto!important;max-width:100%}