/*
Theme Name: Lincoln Square Law
Theme URI: https://lincolnsquarelaw.com/
Author: Mohamed Law Office, LLC
Author URI: https://lincolnsquarelaw.com/
Description: An elegant, bilingual (EN/ES) theme for Lincoln Square Law — a Chicago boutique firm serving families and healthcare businesses. Navy + tan brand system (Square Ink, Giddings Brass, Parchment), Fraunces + Inter typography, the square as signature device, structured-data ready, and WCAG-AA contrast throughout.
Version: 3.6.72
Requires at least: 6.2
Tested up to: 7.1
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lincoln-square-law
Tags: business, portfolio, custom-menu, featured-images, translation-ready, custom-logo, blog, two-columns, right-sidebar
*/


/* ============ TOKENS ============ */
:root{
  --display:"Fraunces", Georgia, "Times New Roman", serif;
  --serif:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --ui:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
--legal:"Source Serif 4", Georgia, serif;
  --focus:#3D5A73;
  /* Individuals & Families theme (light, warm) */
  --ind-bg:#F3EEE3;
  --ind-raise:#FFFFFF;
  --ind-ink:#14273D;
  --ind-slate:#3D5A73;
  --ind-accent:#3D5A73;       /* brick */
  --ind-accent-deep:#14273D;
  --ind-tint:#EDE7DA;         /* warm tint */
  --ind-line:#C9C3B4;
  /* B2B theme (dark, steel) — all foregrounds audited ≥ 7:1 on their surfaces */
  --b2b-bg:#FBFAF6;           /* page: light steel */
  --b2b-raise:#FFFFFF;        /* cards */
  --b2b-raise2:#F3EEE3;       /* nested panels */
  --b2b-fg:#14273D;           /* headings: 13.9:1 on white */
  --b2b-body:#14273D;         /* body text: 8.2:1 on white, 7.5:1 on bg */
  --b2b-mute:#3D5A73;         /* captions: 4.6:1 on bg */
  --b2b-accent:#3D5A73;       /* steel blue: 4.6:1 on white (bold/large + buttons) */
  --b2b-accent-strong:#14273D;/* links/body accents: 6.3:1 on bg */
  --b2b-line:#C9C3B4;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
body{font-family:var(--serif);line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased;background:var(--ind-bg);color:#1B1B1A}
a{color:inherit}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:2px}
.skip-link{position:absolute;left:-9999px;top:0;background:#14273D;color:#fff;padding:.6rem 1rem;z-index:300;font-family:var(--ui)}
.skip-link:focus{left:8px;top:8px}
.wrap{max-width:1140px;margin:0 auto;padding:0 22px}
.star{display:inline-block;width:.85em;height:.85em;vertical-align:-.06em}
h1,h2,h3{font-family:var(--display);line-height:1.02;color:#14273D}
.eyebrow{font-family:var(--ui);font-weight:700;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;display:flex;align-items:center;gap:.5rem;margin-bottom:.9rem}
h2.section-title{font-size:clamp(2.1rem,5vw,3.3rem);font-weight:800;text-transform:uppercase;margin-bottom:.6rem}
.section-lede{font-size:1.08rem;max-width:58ch;margin-bottom:2.2rem}
.section{padding:4.3rem 0}
.btn{display:inline-block;font-family:var(--ui);font-weight:700;font-size:.85rem;letter-spacing:.03em;padding:.75rem 1.4rem;border-radius:4px;text-decoration:none;border:2px solid transparent;cursor:pointer;text-align:center}
/* v3.6.0: progressive enhancement. Content must never disappear while JS,
   IntersectionObserver, file previews, caching, or delayed scripts initialize.
   Keep the subtle movement without using opacity as a content gate. */
.js .rise{opacity:1;transform:translateY(8px);transition:transform .35s ease}
.rise.in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.rise,.js .rise{opacity:1;transform:none}}
.view{display:none}
.view.active{display:block}

/* ============ TOP BAR (shared, always dark = light text) ============ */
.topbar{background:#14273D;color:#F4EFE4;font-family:var(--ui);font-size:.8rem}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;min-height:40px;gap:1rem;flex-wrap:wrap;padding-top:5px;padding-bottom:5px}
.topbar a{color:#fff;text-decoration:none;font-weight:600}
.topbar a:hover{color:#F4EFE4}
.lang-toggle{display:flex;border:1px solid rgba(244,239,228,.16);border-radius:999px;overflow:hidden}
.lang-toggle button{font-family:var(--ui);font-weight:700;font-size:.72rem;letter-spacing:.06em;padding:.3rem .75rem;background:transparent;color:#F4EFE4;border:none;cursor:pointer}
.lang-toggle button[aria-pressed="true"]{background:#F4EFE4;color:#14273D}
.path-switch{display:flex;border:1px solid rgba(244,239,228,.16);border-radius:999px;overflow:hidden}
.path-switch button{font-family:var(--ui);font-weight:700;font-size:.72rem;letter-spacing:.04em;padding:.3rem .8rem;background:transparent;color:#F4EFE4;border:none;cursor:pointer;white-space:nowrap}
.path-switch button[aria-pressed="true"]{background:#fff;color:#14273D}

/* ============ NAV (theme-aware) ============ */
.nav{position:sticky;top:0;z-index:100;border-bottom:1px solid var(--ind-line);background:rgba(243,238,227,.94);backdrop-filter:blur(8px)}
body.theme-b2b .nav{background:rgba(251,250,246,.94);border-bottom:1px solid #C9C3B4}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;min-height:70px;gap:1rem}
.brand{font-family:var(--display);font-weight:800;font-size:1.5rem;text-transform:uppercase;letter-spacing:.02em;text-decoration:none;display:flex;align-items:center;gap:.55rem;line-height:1;color:var(--ind-ink);background:none;border:none;cursor:pointer;text-align:left}
body.theme-b2b .brand{color:var(--b2b-fg)}
.brand .star{width:1.05em;height:1.05em;fill:#B08442}
body.theme-b2b .brand .star{fill:#B08442}
.brand small{display:block;font-family:var(--ui);font-weight:600;font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ind-slate)}
body.theme-b2b .brand small{color:var(--b2b-mute)}
.nav-links{display:flex;gap:1.5rem;align-items:center;font-family:var(--ui);font-size:.85rem;font-weight:600}
.nav-links a{text-decoration:none;color:var(--ind-ink)}
.nav-links a:hover{color:var(--ind-accent)}
body.theme-b2b .nav-links a{color:var(--b2b-body)}
body.theme-b2b .nav-links a:hover{color:var(--b2b-accent-strong)}
.menu-toggle{display:none;background:none;border:0;cursor:pointer;padding:.55rem;margin-left:auto;align-items:center;justify-content:center}
.menu-toggle__bars,.menu-toggle__bars::before,.menu-toggle__bars::after{display:block;width:26px;height:2.5px;background:var(--ind-ink);border-radius:2px;transition:transform .2s,opacity .2s}
.menu-toggle__bars{position:relative}
.menu-toggle__bars::before,.menu-toggle__bars::after{content:"";position:absolute;left:0}
.menu-toggle__bars::before{top:-8px}.menu-toggle__bars::after{top:8px}
.menu-toggle[aria-expanded="true"] .menu-toggle__bars{background:transparent}
.menu-toggle[aria-expanded="true"] .menu-toggle__bars::before{transform:translateY(8px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-toggle__bars::after{transform:translateY(-8px) rotate(-45deg)}
@media(max-width:900px){
  .menu-toggle{display:inline-flex}
  .nav .wrap{position:relative;flex-wrap:wrap}
  .nav-links{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--paper);border-bottom:1px solid var(--ind-line);box-shadow:0 14px 28px -14px rgba(20,39,61,.45);display:none;padding:.3rem 0}
  .nav-links.is-open{display:flex}
  .nav-links a{display:block;padding:.95rem 1.3rem;font-size:1.05rem;color:var(--ind-ink);border-bottom:1px solid rgba(20,39,61,.10);min-height:44px}
  .nav-links a:last-child{border-bottom:0}
  .nav-links .sub-menu a{padding-left:2.2rem;font-size:.98rem}
}


/* ============ GATEWAY ============ */
.gate{min-height:calc(100vh - 110px);display:flex;flex-direction:column}
.gate-head{text-align:center;padding:3.4rem 22px 2.2rem}
.gate-head h1{font-size:clamp(2.6rem,6vw,4.4rem);font-weight:800;text-transform:uppercase;color:var(--ind-ink)}
.gate-head p{font-size:1.12rem;color:var(--ind-slate);max-width:52ch;margin:.7rem auto 0}
.gate-split{flex:1;display:grid;grid-template-columns:1fr 1fr;min-height:440px}
.gate-panel{padding:3rem 2.6rem;display:flex;flex-direction:column;justify-content:flex-end;text-align:left;text-decoration:none;position:relative;transition:filter .2s ease;border:none;cursor:pointer;font-family:inherit}
.gate-panel:hover{filter:brightness(1.05)}
.gate-panel .eyebrow{margin-bottom:.6rem}
.gate-panel h2{font-size:clamp(1.9rem,3.6vw,2.9rem);font-weight:800;text-transform:uppercase;margin-bottom:.6rem}
.gate-panel p{font-size:1rem;max-width:44ch;margin-bottom:1.4rem}
.gate-panel .go{font-family:var(--ui);font-weight:700;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}
.gate-ind{background:linear-gradient(160deg,#EDE7DA 0%,#C9C3B4 100%);color:var(--ind-ink)}
.gate-ind .eyebrow{color:var(--ind-accent-deep)}
.gate-ind .star{fill:#B08442}
.gate-ind p{color:#14273D}
.gate-ind .go{color:var(--ind-accent-deep)}
.gate-b2b{background:linear-gradient(160deg,#EDE7DA 0%,#C9C3B4 100%);color:var(--b2b-fg)}
.gate-b2b .eyebrow{color:var(--b2b-accent)}
.gate-b2b .star{fill:#B08442}
.gate-b2b p{color:var(--b2b-body)}
.gate-b2b .go{color:var(--b2b-accent-strong)}
@media(max-width:760px){.gate-split{grid-template-columns:1fr}}

/* ============ INDIVIDUALS THEME ============ */
.ind-scope{background:var(--ind-bg);color:var(--ind-ink)}
.ind-scope .eyebrow{color:var(--ind-accent-deep)}
.ind-scope .star{fill:#B08442}
.ind-scope .section-lede{color:var(--ind-slate)}
.btn--brick{background:#B08442;color:#1B1B1A}
.btn--brick:hover{background:#14273D;color:#F4EFE4}
.btn--ink{border-color:var(--ind-ink);color:var(--ind-ink);background:transparent}
.btn--ink:hover{background:var(--ind-ink);color:#fff}
.hero{padding:4rem 0 3rem;position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.12fr .88fr;gap:3rem;align-items:start;position:relative;z-index:1}
.hero h1{font-size:clamp(2.7rem,6vw,4.5rem);font-weight:800;text-transform:uppercase;margin-bottom:1rem}
.hero .accent{color:var(--ind-accent)}
.hero .sub{font-size:1.15rem;color:var(--ind-slate);max-width:46ch;margin-bottom:1.7rem}
.hero-ctas{display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:1.4rem}
.hero-note{font-family:var(--ui);font-size:.8rem;color:var(--ind-slate)}
.threeq{display:flex;flex-direction:column;gap:.9rem}
.qa{background:var(--ind-raise);border:1px solid var(--ind-line);border-left:5px solid var(--ind-accent);border-radius:6px;padding:1rem 1.15rem;box-shadow:0 1px 2px rgba(28,39,48,.05)}
.qa h3{font-family:var(--ui);font-size:.95rem;font-weight:700;margin-bottom:.3rem;display:flex;gap:.5rem;align-items:baseline}
.qa p{font-size:.94rem;color:var(--ind-slate);line-height:1.5}
@media(max-width:840px){.hero .wrap{grid-template-columns:1fr;gap:2rem}}
.promise{background:#14273D;color:#fff}
.promise .wrap{display:flex;align-items:center;gap:1rem;min-height:56px;flex-wrap:wrap;padding-top:.6rem;padding-bottom:.6rem}
.promise p{font-family:var(--ui);font-weight:600;font-size:.93rem;color:#F4EFE4}
.promise .badge{background:var(--ind-accent);color:#fff;font-family:var(--ui);font-weight:700;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .7rem;border-radius:3px}
.practice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem}
.pcard{background:var(--ind-raise);border:1px solid var(--ind-line);border-radius:8px;padding:1.6rem 1.6rem 1.4rem;transition:transform .18s ease, box-shadow .18s ease}
.pcard:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(28,39,48,.09)}
.pcard .kicker{font-family:var(--ui);font-weight:700;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ind-accent-deep);margin-bottom:.3rem}
.pcard h3{font-family:var(--display);font-size:1.6rem;font-weight:700;text-transform:uppercase;margin:.15rem 0 .5rem}
.pcard p{font-size:.95rem;color:var(--ind-slate);margin-bottom:.8rem}
.pcard .tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.9rem}
.pcard .tag{font-family:var(--ui);font-size:.66rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;background:var(--ind-tint);color:#14273D;padding:.25rem .6rem;border-radius:999px}
.pcard .assure{font-size:.85rem;font-style:italic;color:var(--ind-accent-deep);border-top:1px dashed var(--ind-line);padding-top:.7rem;margin-bottom:.85rem}
.pcard .cta-line{font-family:var(--ui);font-size:.82rem;font-weight:700}
.pcard .cta-line a{color:var(--ind-accent-deep);text-decoration:none}
.pcard .cta-line a:hover{text-decoration:underline}
@media(max-width:760px){.practice-grid{grid-template-columns:1fr}}
.pricing-ind{background:var(--ind-tint)}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.price-card{background:var(--ind-raise);border:1px solid var(--ind-line);border-radius:8px;padding:1.6rem;display:flex;flex-direction:column}
.price-card h3{font-family:var(--display);font-size:1.55rem;font-weight:700;text-transform:uppercase;margin-bottom:.2rem}
.price-card .model{font-family:var(--ui);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ind-accent-deep);margin-bottom:.9rem}
.price-card ul{list-style:none;margin-bottom:1rem}
.price-card li{font-size:.91rem;padding:.5rem 0;border-bottom:1px dashed var(--ind-line);display:flex;justify-content:space-between;gap:1rem}
.price-card li strong{font-family:var(--ui);font-size:.84rem;white-space:nowrap}
.price-card .fine{font-size:.8rem;color:var(--ind-slate);margin-top:auto}
.worked{background:var(--ind-tint);border-radius:6px;padding:.9rem 1rem;font-size:.88rem;margin-bottom:1rem}
.worked strong{font-family:var(--ui);font-size:.8rem}
@media(max-width:900px){.price-grid{grid-template-columns:1fr}}


/* ============ B2B THEME (dark, contrast-audited) ============ */
.b2b-scope{background:var(--b2b-bg);color:var(--b2b-body)}
.b2b-scope h1,.b2b-scope h2,.b2b-scope h3{color:var(--b2b-fg)}
.b2b-scope .eyebrow{color:var(--b2b-accent)}
.b2b-scope .star{fill:#B08442}
.b2b-scope .section-lede{color:var(--b2b-body)}
.b2b-scope a{color:var(--b2b-accent-strong)}
.btn--steel{background:#B08442;color:#1B1B1A}
.btn--steel:hover{background:#14273D;color:#F4EFE4}
.btn--outline-light{border-color:var(--b2b-accent);color:var(--b2b-accent-strong);background:transparent}
.btn--outline-light:hover{background:var(--b2b-accent);color:#fff}
.hero-b2b{padding:4rem 0 3rem;background:linear-gradient(180deg,#FBFAF6 0%,#F3EEE3 100%)}
.hero-b2b .wrap{display:grid;grid-template-columns:1.12fr .88fr;gap:3rem;align-items:start}
.hero-b2b h1{font-size:clamp(2.6rem,5.6vw,4.2rem);font-weight:800;text-transform:uppercase;margin-bottom:1rem}
.hero-b2b .accent{color:var(--b2b-accent)}
.hero-b2b .sub{font-size:1.13rem;color:var(--b2b-body);max-width:48ch;margin-bottom:1.7rem}
.hero-b2b .hero-note{color:var(--b2b-mute)}
.cred-band{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.4rem}
.cred{font-family:var(--ui);font-weight:700;font-size:.75rem;letter-spacing:.08em;border:1.5px solid var(--b2b-accent);color:var(--b2b-accent-strong);padding:.35rem .75rem;border-radius:3px}
.b2b-proof{background:var(--b2b-raise);border:1px solid #C9C3B4;border-radius:10px;padding:1.7rem}
.b2b-proof h3{font-family:var(--ui);font-size:.95rem;font-weight:700;margin-bottom:1rem;color:var(--b2b-fg)}
.proof-item{display:flex;gap:.7rem;padding:.6rem 0;border-bottom:1px dashed #C9C3B4;font-size:.92rem;color:var(--b2b-body)}
.proof-item:last-child{border-bottom:none}
.proof-item .star{flex:none;margin-top:.3rem}
@media(max-width:840px){.hero-b2b .wrap{grid-template-columns:1fr;gap:2rem}}
.promise-b2b{background:#EDE7DA;border-top:1px solid #C9C3B4;border-bottom:1px solid #C9C3B4}
.promise-b2b .wrap{display:flex;align-items:center;gap:1rem;min-height:56px;flex-wrap:wrap;padding-top:.6rem;padding-bottom:.6rem}
.promise-b2b p{font-family:var(--ui);font-weight:600;font-size:.93rem;color:#14273D}
.promise-b2b .badge{background:var(--b2b-accent);color:#fff;font-family:var(--ui);font-weight:700;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .7rem;border-radius:3px}
.svc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem}
.svc{background:var(--b2b-raise);border:1px solid #C9C3B4;border-top:4px solid var(--b2b-accent);border-radius:8px;padding:1.6rem 1.6rem 1.4rem;transition:transform .18s ease, box-shadow .18s ease}
.svc:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(20,48,63,.14)}
.svc .kicker{font-family:var(--ui);font-weight:700;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--b2b-accent);margin-bottom:.3rem}
.svc h3{font-family:var(--display);font-size:1.55rem;font-weight:700;text-transform:uppercase;margin:.15rem 0 .5rem}
.svc p{font-size:.95rem;color:var(--b2b-body);margin-bottom:.85rem}
.svc ul{list-style:none;margin-bottom:1rem}
.svc li{font-size:.88rem;color:var(--b2b-body);padding:.32rem 0 .32rem 1.2rem;position:relative}
.svc li::before{content:"";position:absolute;left:0;top:.72em;width:.55em;height:.55em;background:var(--b2b-accent);}
.svc .cta-line{font-family:var(--ui);font-size:.82rem;font-weight:700}
.svc .cta-line a{color:var(--b2b-accent-strong);text-decoration:none}
.svc .cta-line a:hover{text-decoration:underline}
@media(max-width:760px){.svc-grid{grid-template-columns:1fr}}
.pricing-b2b{background:#F3EEE3}
.engage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.engage{background:var(--b2b-raise);border:1px solid #C9C3B4;border-radius:8px;padding:1.6rem;display:flex;flex-direction:column}
.engage h3{font-family:var(--display);font-size:1.5rem;font-weight:700;text-transform:uppercase;margin-bottom:.2rem}
.engage .model{font-family:var(--ui);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--b2b-accent);margin-bottom:.9rem}
.engage ul{list-style:none;margin-bottom:1rem}
.engage li{font-size:.91rem;color:var(--b2b-body);padding:.5rem 0;border-bottom:1px dashed #C9C3B4;display:flex;justify-content:space-between;gap:1rem}
.engage li strong{font-family:var(--ui);font-size:.84rem;white-space:nowrap;color:var(--b2b-fg)}
.engage .fine{font-size:.8rem;color:var(--b2b-mute);margin-top:auto}
@media(max-width:900px){.engage-grid{grid-template-columns:1fr}}

/* ============ FORMS (theme-aware) ============ */
.intake-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:start}
@media(max-width:900px){.intake-grid{grid-template-columns:1fr}}
.form-shell{border-radius:10px;padding:2rem}
.ind-scope .form-shell{background:var(--ind-raise);border:1px solid var(--ind-line);box-shadow:0 6px 22px rgba(28,39,48,.07)}
.b2b-scope .form-shell{background:var(--b2b-raise);border:1px solid #C9C3B4}
.form-shell h3{font-family:var(--display);font-size:1.8rem;font-weight:800;text-transform:uppercase;margin-bottom:.3rem}
.form-shell .reassure{font-size:.96rem;margin-bottom:1.4rem}
.ind-scope .reassure{color:var(--ind-slate)}
.b2b-scope .reassure{color:var(--b2b-body)}
.field{margin-bottom:1.1rem}
.field label{display:block;font-family:var(--ui);font-size:.82rem;font-weight:700;margin-bottom:.35rem}
.b2b-scope .field label{color:var(--b2b-fg)}
.field .hint{font-weight:500}
.ind-scope .hint{color:var(--ind-slate)}
.b2b-scope .hint{color:var(--b2b-mute)}
.field input,.field select,.field textarea{width:100%;font-family:var(--serif);font-size:1rem;padding:.7rem .8rem;border-radius:5px}
.ind-scope .field input,.ind-scope .field select,.ind-scope .field textarea{border:1.5px solid var(--ind-line);background:#fff;color:var(--ind-ink)}
.b2b-scope .field input,.b2b-scope .field select,.b2b-scope .field textarea{border:1.5px solid #C9C3B4;background:#FFFFFF;color:var(--b2b-fg)}
.b2b-scope .field input::placeholder,.b2b-scope .field textarea::placeholder{color:#3D5A73}
.field textarea{resize:vertical;min-height:92px}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--focus);outline:2px solid var(--focus);outline-offset:0}
.field.error input,.field.error select,.field.error textarea{border-color:#A23A2E}
.err-msg{display:none;font-family:var(--ui);font-size:.78rem;margin-top:.3rem}
.ind-scope .err-msg{color:#A23A2E}
.b2b-scope .err-msg{color:#A23A2E}
.field.error .err-msg{display:block}
.check{display:grid;grid-template-columns:18px minmax(0,1fr);column-gap:.65rem;align-items:start;margin-bottom:1rem;max-width:100%}
.check input[type="checkbox"],.check input[type="radio"]{margin:.22rem 0 0;width:17px;height:17px;min-width:17px;max-width:17px;padding:0}
.check label{min-width:0;max-width:100%;overflow-wrap:anywhere}
.ind-scope .check input{accent-color:var(--ind-accent)}
.b2b-scope .check input{accent-color:var(--b2b-accent)}
.check label{font-size:.85rem;font-weight:400;font-family:var(--serif)}
.ind-scope .check label{color:var(--ind-slate)}
.b2b-scope .check label{color:var(--b2b-body)}
.microcopy{font-size:.83rem;border-radius:6px;padding:.85rem 1rem;margin-bottom:1rem}
.ind-scope .microcopy{background:var(--ind-tint);color:#14273D}
.b2b-scope .microcopy{background:var(--b2b-raise2);color:var(--b2b-body);border:1px solid #C9C3B4}
.reveal{display:none;margin-top:.7rem}
.reveal.open{display:block}
.form-shell .btn{width:100%;font-size:1rem;padding:.95rem}
.privacy-note{font-family:var(--ui);font-size:.75rem;text-align:center;margin-top:.7rem}
.ind-scope .privacy-note{color:var(--ind-slate)}
.b2b-scope .privacy-note{color:var(--b2b-mute)}
.progress{display:flex;gap:.4rem;margin:0 0 1.3rem}
.progress span{height:6px;flex:1;border-radius:99px}
.ind-scope .progress span{background:var(--ind-line)}
.ind-scope .progress span.done{background:var(--ind-accent)}
.b2b-scope .progress span{background:#C9C3B4}
.b2b-scope .progress span.done{background:var(--b2b-accent)}
.step-label{font-family:var(--ui);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.9rem}
.ind-scope .step-label{color:var(--ind-slate)}
.b2b-scope .step-label{color:var(--b2b-accent)}
.stage2-nav{display:flex;gap:.7rem;margin-top:1.2rem}
.stage2-nav .btn{width:auto;flex:1}
.confirm{border-radius:8px;padding:1.4rem;margin-bottom:1.2rem}
.ind-scope .confirm{background:var(--ind-tint);border:1px solid #C9C3B4}
.b2b-scope .confirm{background:var(--b2b-raise2);border:1px solid var(--b2b-accent)}
.confirm h4{font-family:var(--ui);font-size:1rem;margin-bottom:.4rem;display:flex;align-items:center;gap:.5rem}
.b2b-scope .confirm h4{color:var(--b2b-fg)}
.confirm p{font-size:.92rem}
.ind-scope .confirm p{color:#14273D}
.b2b-scope .confirm p{color:var(--b2b-body)}
.trauma-note{font-size:.85rem;font-style:italic;padding:.6rem .9rem;margin-bottom:1rem}
.ind-scope .trauma-note{color:var(--ind-slate);background:var(--ind-bg);border-left:3px solid var(--ind-accent)}
.field-note{font-size:.8rem;margin-top:.35rem}
.ind-scope .field-note{color:var(--ind-accent-deep)}
.b2b-scope .field-note{color:var(--b2b-accent-strong)}
.side-block{border-radius:10px;padding:1.5rem;margin-bottom:1.2rem}
.ind-scope .side-block{background:var(--ind-raise);border:1px solid var(--ind-line)}
.b2b-scope .side-block{background:var(--b2b-raise);border:1px solid #C9C3B4}
.side-block h3{font-family:var(--ui);font-size:.95rem;font-weight:700;margin-bottom:.8rem;display:flex;align-items:center;gap:.5rem}
.channel{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 0;font-size:.92rem}
.ind-scope .channel{border-bottom:1px dashed var(--ind-line)}
.b2b-scope .channel{border-bottom:1px dashed #C9C3B4}
.channel:last-child{border-bottom:none}
.channel a{font-family:var(--ui);font-weight:700;font-size:.82rem;text-decoration:none}
.ind-scope .channel a{color:var(--ind-accent-deep)}
.steps123{list-style:none;counter-reset:s}
.steps123 li{counter-increment:s;display:flex;gap:.9rem;padding:.55rem 0;font-size:.92rem;align-items:flex-start}
.steps123 li::before{content:counter(s);font-family:var(--display);font-weight:800;font-size:1.25rem;line-height:1.15;flex:none}
.ind-scope .steps123 li::before{color:var(--ind-accent)}
.b2b-scope .steps123 li::before{color:var(--b2b-accent)}
.logi p{font-size:.9rem;margin-bottom:.5rem}
.ind-scope .logi p{color:var(--ind-slate)}
.b2b-scope .logi p{color:var(--b2b-body)}
.logi strong{font-family:var(--ui);font-size:.8rem}
.ind-scope .logi strong{color:var(--ind-ink)}
.b2b-scope .logi strong{color:var(--b2b-fg)}

/* ============ ABOUT ============ */
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:3rem;align-items:start}
@media(max-width:840px){.about-grid{grid-template-columns:1fr}}
.attorney-card{border-radius:10px;padding:2rem}
.ind-scope .attorney-card{background:var(--ind-raise);border:1px solid var(--ind-line)}
.b2b-scope .attorney-card{background:var(--b2b-raise);border:1px solid #C9C3B4}
.attorney-card .portrait{width:92px;height:92px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:800;font-size:2rem;margin-bottom:1rem}
.ind-scope .portrait{background:var(--ind-ink);color:var(--ind-tint)}
.b2b-scope .portrait{background:var(--b2b-accent);color:#FFFFFF}
.attorney-card h3{font-family:var(--display);font-size:1.85rem;font-weight:800;text-transform:uppercase}
.attorney-card .role{font-family:var(--ui);font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem}
.ind-scope .role{color:var(--ind-accent-deep)}
.b2b-scope .role{color:var(--b2b-accent)}
.attorney-card .bio{font-size:.94rem}
.ind-scope .bio{color:var(--ind-slate)}
.b2b-scope .bio{color:var(--b2b-body)}
.creds-ind .cred{border-color:var(--ind-ink);color:var(--ind-ink)}
.about-copy p{margin-bottom:1rem}

/* ============ FOOTER + MOBILE BAR ============ */
footer{background:#14273D;color:#C9C3B4;padding:3rem 0 6rem;font-size:.85rem}
footer .wrap{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:2.5rem}
footer h4{font-family:var(--ui);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:.9rem}
footer a{color:#F4EFE4;text-decoration:none}
footer a:hover{color:#F4EFE4}
footer ul{list-style:none}
footer li{margin-bottom:.5rem}
footer button.linklike{background:none;border:none;color:#F4EFE4;font:inherit;cursor:pointer;padding:0}
footer button.linklike:hover{color:#F4EFE4}
.foot-brand{font-family:var(--display);font-weight:800;font-size:1.4rem;text-transform:uppercase;color:#fff;display:flex;align-items:center;gap:.5rem;margin-bottom:.8rem}
.foot-brand .star{fill:#B08442}
.disclaim{font-size:.76rem;line-height:1.55;color:#C9C3B4;margin-top:1rem}
@media(max-width:840px){footer .wrap{grid-template-columns:1fr}}
.mobile-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:150;background:#14273D}
.mobile-bar a{flex:1;text-align:center;padding:.85rem .3rem;font-family:var(--ui);font-weight:700;font-size:.78rem;letter-spacing:.03em;color:#fff;text-decoration:none;border-right:1px solid #C9C3B4}
.mobile-bar a:last-child{border-right:none}
body.theme-ind .mobile-bar{border-top:2px solid var(--ind-accent)}
body.theme-ind .mobile-bar a:last-child{background:var(--ind-accent)}
body.theme-b2b .mobile-bar{border-top:2px solid var(--b2b-accent)}
body.theme-b2b .mobile-bar a:last-child{background:var(--b2b-accent);color:#fff}
@media(max-width:840px){body.theme-ind .mobile-bar,body.theme-b2b .mobile-bar{display:flex}}


.path-switch a{display:block;font-family:var(--ui);font-weight:700;font-size:.72rem;letter-spacing:.04em;padding:.3rem .8rem;color:#F4EFE4;text-decoration:none;white-space:nowrap}
.path-switch a[aria-current="true"]{background:#fff;color:#14273D}
.path-switch a:hover{color:#fff}
.path-switch a[aria-current="true"]:hover{color:#14273D}

.hp{position:absolute!important;left:-9999px!important;top:-9999px!important;height:1px;width:1px;overflow:hidden;opacity:0}

.page-hero{padding:3.4rem 0 2.4rem}
.page-hero h1{font-size:clamp(2.4rem,5.4vw,3.8rem);font-weight:800;text-transform:uppercase;margin-bottom:.7rem}
.page-hero .dek{font-size:1.12rem;color:var(--ind-slate);max-width:60ch}
.track{padding:2.6rem 0}
.track-head{display:flex;align-items:center;gap:.7rem;margin-bottom:1.4rem}
.track-head h2{font-family:var(--display);font-size:1.9rem;font-weight:800;text-transform:uppercase}
.res-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}
@media(max-width:760px){.res-grid{grid-template-columns:1fr}}
.res-card{border-radius:8px;padding:1.4rem 1.5rem;display:flex;flex-direction:column;gap:.5rem;text-decoration:none;transition:transform .18s ease}
.res-card:hover{transform:translateY(-3px)}
.res-card .rk{font-family:var(--ui);font-weight:700;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase}
.res-card h3{font-family:var(--display);font-size:1.35rem;font-weight:700;text-transform:uppercase;line-height:1.06}
.res-card p{font-size:.92rem}
.res-card .rmeta{font-family:var(--ui);font-size:.75rem;font-weight:700;margin-top:auto}
.res-fam{background:var(--ind-raise);border:1px solid var(--ind-line);border-left:5px solid var(--ind-accent);color:var(--ind-ink)}
.res-fam .rk{color:var(--ind-accent-deep)}.res-fam p{color:var(--ind-slate)}.res-fam .rmeta{color:var(--ind-accent-deep)}
.res-biz{background:var(--b2b-raise);border:1px solid rgba(244,239,228,.16);border-left:5px solid var(--b2b-accent);color:var(--b2b-body)}
.res-biz h3{color:var(--b2b-fg)}.res-biz .rk{color:var(--b2b-accent)}.res-biz .rmeta{color:var(--b2b-accent-strong)}
.soon{opacity:.62;pointer-events:none}
.gate-box{border-radius:10px;padding:1.8rem;margin-top:1.6rem}
.gate-fam{background:var(--ind-tint);border:1px solid #C9C3B4}
.gate-biz{background:#FBFAF6;border:1px solid #C9C3B4;border-left:4px solid #B08442;color:#14273D}
.gate-biz h3{color:#14273D}
.gate-box h3{font-family:var(--display);font-size:1.45rem;font-weight:800;text-transform:uppercase;margin-bottom:.35rem}
.gate-box p{font-size:.93rem;margin-bottom:.9rem}
.gate-row{display:flex;gap:.6rem;flex-wrap:wrap}
.gate-row input[type=email]{flex:1;min-width:220px;font-family:var(--serif);font-size:1rem;padding:.7rem .8rem;border-radius:5px;border:1.5px solid var(--ind-line)}
.gate-biz .gate-row input[type=email]{border-color:#C9C3B4;background:#FFFFFF;color:#14273D}
.gate-list{list-style:none;margin-top:.6rem}
.gate-list li{padding:.4rem 0;font-size:.93rem;display:flex;gap:.5rem;align-items:baseline}
.gate-note{font-family:var(--ui);font-size:.74rem;margin-top:.6rem}
.gate-fam .gate-note{color:var(--ind-slate)}.gate-biz .gate-note{color:#3D5A73}
.gate-err{display:none;font-family:var(--ui);font-size:.78rem;color:var(--ind-accent-deep);margin-top:.4rem}
.gate-biz .gate-err{color:#8B2E23}
.article{max-width:74ch;margin:0 auto;padding:3rem 22px 4rem}
.article .kicker{font-family:var(--ui);font-weight:700;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.6rem}
.article h1{font-size:clamp(2.1rem,4.8vw,3.2rem);font-weight:800;text-transform:uppercase;line-height:1.03;margin-bottom:.8rem}
.article .dek{font-size:1.14rem;margin-bottom:1.2rem}
.article .byline{font-family:var(--ui);font-size:.78rem;font-weight:600;padding-bottom:1.4rem;margin-bottom:1.8rem}
.article h2{font-family:var(--display);font-size:1.7rem;font-weight:800;text-transform:uppercase;margin:2.2rem 0 .7rem}
.article p{margin-bottom:1rem}
.article ol,.article ul{margin:0 0 1rem 1.3rem}
.article li{margin-bottom:.5rem}
.callout{border-radius:8px;padding:1.1rem 1.3rem;margin:1.4rem 0;font-size:.95rem}
.article-ind{background:var(--ind-bg);color:var(--ind-ink)}
.article-ind .kicker{color:var(--ind-accent-deep)}
.article-ind .dek,.article-ind .byline{color:var(--ind-slate)}
.article-ind .byline{border-bottom:1px solid var(--ind-line)}
.article-ind .callout{background:var(--ind-tint);border-left:4px solid var(--ind-accent);color:#14273D}
.article-b2b{background:var(--b2b-bg);color:var(--b2b-body)}
.article-b2b h1,.article-b2b h2{color:var(--b2b-fg)}
.article-b2b .kicker{color:var(--b2b-accent)}
.article-b2b .dek{color:var(--b2b-body)}
.article-b2b .byline{color:var(--b2b-mute);border-bottom:1px solid rgba(244,239,228,.16)}
.article-b2b .callout{background:var(--b2b-raise2);border-left:4px solid var(--b2b-accent)}
.article-b2b a{color:var(--b2b-accent-strong)}
.article-cta{border-radius:10px;padding:1.6rem;margin-top:2.4rem;text-align:center}
.article-ind .article-cta{background:var(--ind-raise);border:1px solid var(--ind-line)}
.article-b2b .article-cta{background:var(--b2b-raise);border:1px solid rgba(244,239,228,.16)}
.article-cta h3{font-family:var(--display);font-size:1.55rem;font-weight:800;text-transform:uppercase;margin-bottom:.4rem}
.article-cta p{font-size:.95rem;margin-bottom:1rem}
.legal{max-width:74ch;margin:0 auto;padding:3rem 22px 4rem;color:var(--ind-ink)}
.legal h1{font-size:clamp(2.1rem,4.6vw,3rem);font-weight:800;text-transform:uppercase;margin-bottom:.5rem}
.legal .effective{font-family:var(--ui);font-size:.78rem;font-weight:700;color:var(--ind-slate);margin-bottom:1.8rem}
.legal h2{font-family:var(--display);font-size:1.5rem;font-weight:800;text-transform:uppercase;margin:2rem 0 .6rem}
.legal p{margin-bottom:1rem}
.legal ul{margin:0 0 1rem 1.3rem}
.legal li{margin-bottom:.45rem}
.legal .plain{background:var(--ind-tint);border-left:4px solid var(--ind-accent);border-radius:8px;padding:1rem 1.2rem;margin:1.2rem 0;font-size:.95rem;color:#14273D}


/* ---- WordPress core / utility classes ---- */
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden;word-wrap:normal!important}
.skip-link:focus{position:fixed;left:8px;top:8px;z-index:100000;background:#14273D;color:#F4EFE4;padding:.6rem 1rem;border-radius:4px}
.alignwide{max-width:1180px;margin-left:auto;margin-right:auto}
.alignfull{max-width:none}
.aligncenter{display:block;margin-left:auto;margin-right:auto}
.wp-caption{max-width:100%}
.wp-caption-text{font-family:var(--ui);font-size:.85rem;color:#3D5A73}
.admin-bar .topbar{top:32px}
img{max-width:100%;height:auto}


/* ---- Primary-nav dropdown (Business / Individuals submenus) ---- */
.nav-links .menu-item-has-children{position:relative}
.nav-links .sub-menu{position:absolute;left:0;top:100%;min-width:250px;margin:0;padding:.4rem 0;list-style:none;
  background:#14273D;border:1px solid rgba(176,132,66,.35);border-radius:8px;box-shadow:0 12px 28px rgba(20,39,61,.28);
  opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .16s,transform .16s,visibility .16s;z-index:60}
.nav-links .menu-item-has-children:hover>.sub-menu,.nav-links .menu-item-has-children:focus-within>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.nav-links .sub-menu li{margin:0}
.nav-links .sub-menu a{display:block;padding:.5rem 1rem;color:#F4EFE4;font-family:var(--ui);font-size:.92rem;white-space:nowrap;text-decoration:none}
.nav-links .sub-menu a:hover,.nav-links .sub-menu a:focus{background:rgba(176,132,66,.18);color:#fff}
.nav-links .menu-item-has-children>a::after{content:"\25BE";font-size:.7em;margin-left:.35em;opacity:.8}
@media(max-width:860px){.nav-links .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:transparent;padding:.2rem 0 .2rem 1rem}}

/* ---- Gated PDF download box ---- */
.lsl-gate{margin:2.4rem 0 1rem}
.lsl-gate__inner{background:#14273D;color:#F4EFE4;border-radius:12px;padding:1.6rem 1.7rem;border:1px solid rgba(176,132,66,.4);box-shadow:0 14px 34px rgba(20,39,61,.22)}
.lsl-gate__kicker{font-family:var(--ui);font-weight:700;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#B08442;margin:0 0 .3rem}
.lsl-gate__title{font-family:var(--display);color:#F4EFE4;font-size:1.5rem;line-height:1.15;margin:.1rem 0 .5rem;text-transform:none}
.lsl-gate__lede{font-family:var(--ui);color:#EDE7DA;font-size:.98rem;line-height:1.5;margin:0 0 1.1rem;max-width:60ch}
.lsl-gate__grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem .8rem;margin:0 0 .3rem}
.lsl-gate__field{display:flex;flex-direction:column}
.lsl-gate__lab{font-family:var(--ui);font-size:.8rem;font-weight:600;color:#EDE7DA;margin-bottom:.3rem}
.lsl-gate__opt{font-weight:400;color:#C9C3B4;font-size:.72rem}
.lsl-gate__field input{font-family:var(--ui);font-size:1rem;padding:.7rem .8rem;border-radius:7px;border:1px solid #C9C3B4;background:#FBFAF6;color:#1B1B1A}
.lsl-gate__field input:focus{outline:2px solid #B08442;outline-offset:1px}
.lsl-gate__consent{display:flex;gap:.5rem;align-items:flex-start;font-family:var(--ui);font-size:.85rem;color:#EDE7DA;margin:.9rem 0 .2rem;line-height:1.4}
.lsl-gate__btn{margin-top:.9rem}
.lsl-gate__micro{font-family:var(--ui);font-size:.76rem;color:#C9C3B4;line-height:1.4;margin:.6rem 0 0}
.lsl-gate__done-h{font-family:var(--display);color:#F4EFE4;font-size:1.25rem;margin:0 0 .8rem}
.lsl-gate__err{font-family:var(--ui);font-size:.9rem;color:#F4EFE4;background:rgba(176,132,66,.22);border-left:3px solid #B08442;padding:.6rem .8rem;border-radius:6px;margin:.9rem 0 0}
@media(max-width:600px){.lsl-gate__grid{grid-template-columns:1fr}.lsl-gate__btn{width:100%}}


/* ============================================================================
   BRAND STYLE GUIDE v1.1 — CONFORMANCE LAYER  (added v1.0.9)
   Fixes: (1) undefined brand buttons + .sq square device used across the
   theme's own templates and the [lsl_intake] form; (2) the star-shaped list
   bullet (guide: the square is the only approved bullet); (3) uppercase
   Fraunces display headings (guide reserves uppercase for Inter labels only);
   (4) unscoped intake inputs; (5) native blog / archive / single / 404 styles.
   All text pairings verified WCAG-AA. Appended last so equal-specificity
   rules win. Imported money/privacy pages ship their own inline <style> and
   are unaffected (their later inline rules override where they differ).
   ============================================================================ */

:root{
  --hair:rgba(20,39,61,.16);
  --hair-brass:rgba(176,132,66,.55);
  --brass-on-navy:#B08442;      /* large text / UI only on ink (4.49:1) */
  --on-navy-head:#F4EFE4;       /* 13.2:1 on ink */
  --on-navy-sub:#C7D2DD;        /* 9.9:1 on ink  */
  /* Core brand tokens referenced by pages.css — MUST be defined or the hero
     gradient (and every brass element) becomes invalid, letting a dark
     viewer backdrop show through behind Court-Black text. */
  --paper:#FBFAF6;              /* warm page white */
  --court:#1B1B1A;              /* body copy */
  --brass:#B08442;              /* accent, sparing */
  --parchment:#F3EEE3;
}
/* Declare the site light so dark-mode browsers/viewers never invert or punch
   a dark backdrop through any element left with a transparent background. */
html{color-scheme:light}
body{background:var(--paper)}

/* ---- Brand buttons (primary brass = Court-Black text, 5.11:1 AA) ---- */
.btn--brass{background:#B08442;color:#1B1B1A;border-color:#B08442}
.btn--brass:hover,.btn--brass:focus{background:#14273D;color:#F4EFE4;border-color:#14273D}
.btn--onnavy{background:#14273D;color:#F4EFE4;border-color:#14273D}
.btn--onnavy:hover,.btn--onnavy:focus{background:#0E1B2B;color:#FFFFFF;border-color:#0E1B2B}
.btn--ghost{background:transparent;color:#14273D;border-color:#C9C3B4}
.btn--ghost:hover,.btn--ghost:focus{background:#14273D;color:#F4EFE4;border-color:#14273D}
/* On dark grounds the secondary becomes a light outline (F4EFE4 on ink = 13.2:1) */
.cta .btn--onnavy,.section--navy .btn--onnavy,.gate-biz .btn--onnavy{background:transparent;color:#F4EFE4;border-color:rgba(244,239,228,.6)}
.cta .btn--onnavy:hover,.section--navy .btn--onnavy:hover,.gate-biz .btn--onnavy:hover{background:#F4EFE4;color:#14273D;border-color:#F4EFE4}

/* ---- The square: the only approved bullet + inline device ---- */
span.sq{display:inline-block;width:.62em;height:.62em;background:#B08442;flex:none;vertical-align:baseline}
/* Canonical square-bullet list (the ONLY approved bullet). ul.sq must NOT inherit the span device box. */
ul.sq{list-style:none;margin:0 0 1rem;padding:0}
ul.sq li{position:relative;padding-left:1.3rem;margin-bottom:.5rem}
ul.sq li::before{content:"";position:absolute;left:0;top:.55em;width:.5rem;height:.5rem;background:#B08442}
.svc li::before{clip-path:none;border-radius:0;width:.5em;height:.5em} /* star -> square */

/* ---- Fraunces display headings are title case (uppercase is for Inter labels) ---- */
h2.section-title,.gate-head h1,.gate-panel h2,.hero h1,.pcard h3,.price-card h3,
.hero-b2b h1,.svc h3,.engage h3,.form-shell h3,.attorney-card h3,.brand,.foot-brand,
.page-hero h1,.track-head h2,.res-card h3,.gate-box h3,.article h1,.article h2,
.article-cta h3,.legal h1,.legal h2{text-transform:none;letter-spacing:-.01em}

/* ---- Intake form: inputs are styled even when not inside .ind-scope/.b2b-scope ---- */
.lsl-intake-wrap{max-width:640px}
.lsl-intake-wrap .field input,.lsl-intake-wrap .field select,.lsl-intake-wrap .field textarea{
  border:1.5px solid #C9C3B4;background:#FFFFFF;color:#14273D}
.lsl-intake-wrap .field input:focus,.lsl-intake-wrap .field select:focus,.lsl-intake-wrap .field textarea:focus{
  border-color:#3D5A73;outline:2px solid #3D5A73;outline-offset:0}
.lsl-intake-wrap .field label{color:#14273D}
.lsl-hp,.lsl-gate__hp{position:absolute!important;left:-9999px!important;top:-9999px!important;width:1px;height:1px;overflow:hidden;opacity:0}
.radio-row{display:flex;gap:1.2rem;flex-wrap:wrap;margin:.45rem 0 .2rem;align-items:center}
.radio-row label{display:inline-flex!important;align-items:center;gap:.42rem;margin:0!important;font-family:var(--ui);font-size:.9rem;font-weight:600;line-height:1.25;color:#14273D!important;cursor:pointer}
.radio-row input[type="radio"]{width:18px!important;height:18px!important;min-width:18px;max-width:18px;margin:0!important;padding:0!important;flex:0 0 18px;accent-color:#B08442}
@media(max-width:480px){.radio-row{gap:1rem}.radio-row label{min-height:28px}}
.striped>*:nth-child(even){background:rgba(20,39,61,.03)}
.steplabel{font-family:var(--ui);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#3D5A73;margin-bottom:.6rem}
.stage2-form .field:last-child{margin-bottom:0}

/* ---- Gated download: form/done states (companion to .lsl-gate__* already defined) ---- */
.lsl-gate__form .lsl-gate__grid{margin-bottom:.3rem}
.lsl-gate__done{display:none}
.lsl-gate__dl{display:inline-block;margin-top:.4rem}

/* ---- Registration marks + square device usable outside template scope (404 etc.) */
.reg{position:absolute;width:16px;height:16px;opacity:.9;pointer-events:none}
.reg::before,.reg::after{content:"";position:absolute;background:var(--hair-brass)}
.reg::before{left:50%;top:0;width:1px;height:100%;transform:translateX(-.5px)}
.reg::after{top:50%;left:0;height:1px;width:100%;transform:translateY(-.5px)}
.reg.tl{top:22px;left:22px}.reg.tr{top:22px;right:22px}.reg.bl{bottom:22px;left:22px}.reg.br{bottom:22px;right:22px}
body.error404 .hero{background:#14273D}
body.error404 .hero .reg::before,body.error404 .hero .reg::after{background:rgba(176,132,66,.8)}

/* ---- Native blog / archive / single / search / page styling ---- */
.page-body{padding:2.8rem 0 4.4rem}
.page-hero .meta,.meta{font-family:var(--ui);font-size:.82rem;color:#3D5A73}
.post-list{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:2.6rem;align-items:start;max-width:1120px;margin:0 auto}
.post-list>article.entry{min-width:0}
.entry-title{font-family:var(--display);font-size:clamp(2rem,4.4vw,3rem);color:#14273D;line-height:1.05;margin-bottom:1rem}
.post-thumb{display:block;border-radius:10px;overflow:hidden;margin-bottom:1.5rem}
.post-thumb img{display:block;width:100%;height:auto}
.entry-content{font-family:var(--legal);font-size:1.05rem;line-height:1.7;color:#1B1B1A;max-width:74ch}
.entry-content h2{font-family:var(--display);font-size:1.7rem;color:#14273D;margin:2rem 0 .7rem;text-transform:none}
.entry-content h3{font-family:var(--display);font-size:1.35rem;color:#14273D;margin:1.6rem 0 .5rem;text-transform:none}
.entry-content p{margin:0 0 1.1rem}
.entry-content ul,.entry-content ol{margin:0 0 1.1rem 1.3rem}
.entry-content li{margin-bottom:.5rem}
.entry-content a{color:#3D5A73;text-underline-offset:2px}
.entry-content img{border-radius:8px;height:auto}
.page-links{font-family:var(--ui);font-size:.85rem;margin-top:1.4rem}
.posts-main{min-width:0}
.post-card{background:#FFFFFF;border:1px solid #C9C3B4;border-radius:10px;padding:1.6rem 1.7rem;margin-bottom:1.4rem}
.post-card h2{font-family:var(--display);font-size:1.4rem;line-height:1.1;margin:.2rem 0 .5rem;text-transform:none}
.post-card h2 a{color:#14273D;text-decoration:none}
.post-card h2 a:hover{color:#B08442}
.post-card .excerpt{font-size:.96rem;color:#3D5A73;line-height:1.6}
.post-card .read-more{display:inline-block;margin-top:.7rem;font-family:var(--ui);font-weight:700;font-size:.82rem;color:#14273D;text-decoration:none}
.post-card .read-more:hover{color:#B08442}
.post-meta{font-family:var(--ui);font-size:.78rem;color:#3D5A73}
.sidebar{min-width:0;font-family:var(--ui)}
.sidebar .widget{background:#F3EEE3;border:1px solid #C9C3B4;border-radius:10px;padding:1.3rem 1.4rem;margin-bottom:1.4rem}
.sidebar .widget-title{font-family:var(--ui);font-weight:700;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#14273D;margin-bottom:.7rem}
.crumb{font-family:var(--ui);font-size:.78rem;color:#3D5A73}
.crumb .wrap{padding-top:.8rem;padding-bottom:.8rem}
.crumb a{color:#3D5A73;text-decoration:none}
.crumb a:hover{color:#B08442}
.crumb .sep{margin:0 .4rem;color:#C9C3B4}
.crumb [aria-current="page"]{color:#14273D;font-weight:600}
@media(max-width:860px){.post-list{grid-template-columns:1fr;gap:2rem}}

/* ---- Brand logo lockup in header / footer (image lockups, brand-accurate) ---- */
.brand-logo{display:block;height:56px;width:auto}
.brand{gap:0}
.foot-logo{display:block;height:68px;width:auto;margin-bottom:1rem}
@media(max-width:640px){.brand-logo{height:52px}}
@media(max-width:400px){.brand-logo{height:46px}}

/* ---- Footer menu + comments (light polish) ---- */
.foot-links{margin:1rem 0 0;display:flex;flex-wrap:wrap;gap:.2rem 1.1rem;padding:0;list-style:none}
.foot-links li{margin:0}
.comments{margin-top:2.4rem;padding-top:1.6rem;border-top:1px solid var(--hair)}
.comments .comment-reply-title{font-family:var(--display);font-size:1.4rem;color:#14273D;margin-bottom:.8rem}
.commentlist{list-style:none;margin:1rem 0;padding:0}
.commentlist li{margin-bottom:1.2rem;padding-bottom:1.2rem;border-bottom:1px solid var(--hair)}
.stage2-offer{margin-top:1.2rem}

/* ===== v3.3 approved premium header/footer + mobile UX ===== */
:root{--paper:#FBFAF6;--ink:#14273D;--brass:#B08442;--parch:#F3EEE3;--slate:#3D5A73;--line:#C9C3B4;--court:#1B1B1A;--hair:rgba(20,39,61,.16)}
.site-utility{background:var(--ink);color:#F4EFE4;font-family:var(--ui);position:sticky;top:0;z-index:210}.site-utility .wrap{min-height:48px;display:flex;align-items:center}.utility-actions{display:flex;justify-content:space-between;align-items:center;width:100%;gap:1rem}.utility-right{display:flex;align-items:center;gap:1rem}.lang-toggle{display:flex;border:1px solid rgba(244,239,228,.28);border-radius:999px;overflow:hidden}.lang-toggle button{font:700 .76rem/1 var(--ui);letter-spacing:.05em;padding:.46rem .9rem;background:transparent;color:#F4EFE4;border:0;cursor:pointer}.lang-toggle button[aria-pressed="true"]{background:#F4EFE4;color:var(--ink)}.utility-phone{display:inline-flex;align-items:center;gap:.48rem;color:#fff!important;text-decoration:none!important;font:700 .84rem/1 var(--ui)}.utility-phone:before{content:"☎";color:var(--brass);font-size:1rem}.utility-book{background:var(--brass);color:var(--court)!important;text-decoration:none;font:700 .76rem/1 var(--ui);letter-spacing:.06em;text-transform:uppercase;padding:.62rem .88rem;border:1px solid var(--brass)}
.site-header{position:sticky;top:48px;z-index:205;background:rgba(243,238,227,.97);border-bottom:1px solid var(--hair);backdrop-filter:blur(12px)}.site-header__row{min-height:94px;display:flex;align-items:center;gap:2rem}.site-brand{display:flex;align-items:center;flex:none;padding:14px 0}.site-brand img{width:280px;max-width:36vw;height:auto;display:block}.primary-nav{margin-left:auto;display:flex;align-items:center;gap:1.1rem;font-family:var(--ui)}.primary-nav>a,.nav-services__trigger{position:relative;border:0;background:transparent;color:var(--ink);font:700 .78rem/1 var(--ui);letter-spacing:.05em;text-transform:uppercase;text-decoration:none;padding:.72rem .1rem;cursor:pointer}.primary-nav>a:not(.header-cta):after,.nav-services__trigger:after{content:"";position:absolute;left:0;right:100%;bottom:.46rem;height:1px;background:var(--brass);transition:right .18s ease}.primary-nav>a:not(.header-cta):hover:after,.nav-services__trigger:hover:after,.nav-services__trigger[aria-expanded="true"]:after{right:0}.header-cta{background:var(--brass)!important;color:var(--court)!important;padding:.82rem 1rem!important;border:1px solid var(--brass)!important}.header-cta:hover{background:#C79A57!important}.nav-services{position:relative}.nav-mega{position:absolute;right:-220px;top:calc(100% + 18px);width:min(760px,calc(100vw - 40px));background:var(--paper);border:1px solid var(--hair);box-shadow:0 20px 55px rgba(20,39,61,.16);padding:1rem;opacity:0;visibility:hidden;transform:translateY(-6px);transition:.16s}.nav-services.is-open .nav-mega{opacity:1;visibility:visible;transform:none}.mega-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.mega-card{padding:1.35rem;border:1px solid var(--line);background:white}.mega-card--dark{background:var(--ink);border-color:var(--ink);color:#F4EFE4}.mega-ey{font:700 .65rem/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--brass);margin:0 0 .6rem}.mega-card h2{font:400 1.45rem/1.08 var(--display);text-transform:none;margin:0 0 .8rem;color:var(--ink)}.mega-card--dark h2{color:#F4EFE4}.mega-list{list-style:none;margin:0;padding:0}.mega-list li+li{margin-top:.4rem}.mega-list a{font:600 .84rem/1.35 var(--ui);color:var(--slate);text-decoration:none}.mega-card--dark .mega-list a{color:#EDE7DA}.mega-list a:hover,.mega-all:hover{color:var(--brass)}.mega-all{display:inline-block;margin-top:.9rem;color:inherit;text-decoration:none;font:700 .78rem/1.2 var(--ui);border-bottom:1px solid var(--brass);padding-bottom:.18rem}
.menu-toggle{display:none}.mobile-drawer{display:none}
.site-footer{background:var(--ink);color:#D9D4C9;padding:4.5rem 0 2rem;font-family:var(--ui)}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr .8fr;gap:2.6rem}.footer-logo{width:260px;max-width:100%;height:auto;display:block;margin-bottom:1.2rem}.footer-brand p{max-width:38ch;line-height:1.65;font-size:.88rem}.site-footer h2{font:700 .68rem/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--brass);margin:0 0 1rem}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li+li{margin-top:.62rem}.site-footer a{color:#F4EFE4;text-decoration:none}.site-footer a:hover{text-decoration:underline;text-underline-offset:3px}.footer-book{display:inline-block;background:var(--brass);color:var(--court)!important;font-weight:700;padding:.8rem 1rem;margin-top:.65rem;text-decoration:none!important}.footer-legal{border-top:1px solid rgba(244,239,228,.18);margin-top:2.5rem;padding-top:1.4rem;display:grid;grid-template-columns:2fr 1fr;gap:1rem 2rem;font-size:.74rem;line-height:1.55;color:#BFC9D3}.footer-legal nav{display:flex;justify-content:flex-end;gap:1rem}.footer-legal>p:last-child{grid-column:1/-1;margin:0}.footer-legal>p:first-child{margin:0}
.lsl-editorial-depth,.lsl-service-depth,.legal-extra,.contact-expect,.directions-extra{margin-top:2.25rem;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--brass);padding:clamp(1.35rem,3vw,2rem)}.lsl-editorial-depth h2,.lsl-service-depth h2,.legal-extra h2,.contact-expect h2,.directions-extra h2{margin:1.85rem 0 .85rem}
.lsl-editorial-depth h2:first-child,.lsl-service-depth h2:first-child,.legal-extra h2:first-child,.contact-expect h2:first-child,.directions-extra h2:first-child{margin-top:0}
.lsl-editorial-depth h3,.lsl-service-depth h3,.legal-extra h3,.contact-expect h3,.directions-extra h3{margin:1.55rem 0 .55rem;line-height:1.12}
.lsl-editorial-depth h2 + h3,.lsl-service-depth h2 + h3,.legal-extra h2 + h3,.contact-expect h2 + h3,.directions-extra h2 + h3{margin-top:1.15rem}
.lsl-editorial-depth p,.lsl-service-depth p,.legal-extra p,.contact-expect p,.directions-extra p{max-width:75ch;margin:0 0 1rem}.book-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.book-grid>div{min-width:0}
@media(max-width:840px){.site-utility .wrap{min-height:54px}.site-header{top:54px}.site-header__row{min-height:72px;gap:.7rem}.site-brand{padding:10px 0}.site-brand img{width:190px;max-width:52vw}.primary-nav{display:none}.menu-toggle{display:inline-flex;width:46px;height:46px;align-items:center;justify-content:center;background:transparent;border:1px solid var(--hair);cursor:pointer}.menu-toggle__bars,.menu-toggle__bars:before,.menu-toggle__bars:after{display:block;content:"";width:21px;height:2px;background:var(--ink);position:relative;transition:.2s}.menu-toggle__bars:before,.menu-toggle__bars:after{position:absolute;left:0}.menu-toggle__bars:before{top:-7px}.menu-toggle__bars:after{top:7px}.menu-toggle[aria-expanded="true"] .menu-toggle__bars{background:transparent}.menu-toggle[aria-expanded="true"] .menu-toggle__bars:before{top:0;transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-toggle__bars:after{top:0;transform:rotate(-45deg)}.mobile-drawer{display:block;position:fixed;inset:126px 0 0;background:var(--paper);z-index:200;overflow:auto;padding:1.35rem 1.2rem 2rem;transform:translateX(100%);visibility:hidden;pointer-events:none;transition:transform .24s ease,visibility 0s linear .24s;border-top:1px solid var(--hair)}.mobile-drawer.is-open{transform:none;visibility:visible;pointer-events:auto;transition:transform .24s ease}.menu-open{overflow:hidden}.mobile-drawer__utility{display:grid;gap:.9rem;padding-bottom:1rem;border-bottom:1px solid var(--hair)}.mobile-drawer__utility .lang-toggle{width:max-content;border-color:rgba(20,39,61,.24)}.mobile-drawer__utility .lang-toggle button{color:var(--ink)}.mobile-drawer__utility .lang-toggle button[aria-pressed="true"]{background:var(--ink);color:white}.mobile-drawer__phone{font:700 .95rem/1.2 var(--ui)!important;color:var(--ink)!important;text-decoration:none}.mobile-drawer__section{padding:1.1rem 0;border-bottom:1px solid var(--hair)}.mobile-drawer__label{font:700 .66rem/1 var(--ui);letter-spacing:.18em;text-transform:uppercase;color:var(--brass);margin:0 0 .65rem}.mobile-drawer a{display:block;color:var(--ink);text-decoration:none;font:600 1.05rem/1.3 var(--ui);padding:.48rem 0}.mobile-drawer .drawer-primary{font:400 1.55rem/1.12 var(--display);padding:.56rem 0}.mobile-drawer__cta{margin-top:1.2rem;background:var(--brass);color:var(--court)!important;text-align:center;padding:1rem!important;font-weight:700!important}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-legal{grid-template-columns:1fr}.footer-legal nav{justify-content:flex-start}.book-grid{grid-template-columns:1fr}}
@media(max-width:620px){.site-utility .wrap{padding-left:16px;padding-right:16px}.lang-toggle button{min-width:76px;padding:.42rem .62rem;font-size:.7rem}.utility-phone{font-size:.76rem!important}.site-header__row{min-height:68px}.site-brand img{width:174px;max-width:50vw}.mobile-drawer{inset:122px 0 0}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-legal nav{flex-wrap:wrap}}
@media(max-width:390px){.lang-toggle button{min-width:68px;padding:.4rem .5rem;font-size:.66rem}.utility-phone{font-size:.7rem!important}.site-brand img{width:160px}}@media(min-width:783px){.admin-bar .site-utility{top:32px}.admin-bar .site-header{top:80px}}@media(max-width:782px){.admin-bar .site-utility{top:46px}.admin-bar .site-header{top:100px}.admin-bar .mobile-drawer{top:172px}}@media(max-width:620px){.admin-bar .mobile-drawer{top:168px}}@media(prefers-reduced-motion:reduce){.nav-mega,.mobile-drawer,.menu-toggle__bars,.menu-toggle__bars:before,.menu-toggle__bars:after{transition:none!important}}.lang-toggle button:focus-visible,.menu-toggle:focus-visible,.primary-nav a:focus-visible,.nav-services__trigger:focus-visible,.mobile-drawer a:focus-visible,.site-footer a:focus-visible{outline:3px solid var(--brass);outline-offset:3px}

/* v3.4 accessibility contrast refinements */
.mega-ey{color:var(--slate)}
.mega-card--dark .mega-ey{color:var(--parch)}
.mobile-drawer__label{color:var(--slate);border-left:3px solid var(--brass);padding-left:.55rem}
.site-footer h2{color:var(--parch);border-left:3px solid var(--brass);padding-left:.55rem}
.lsl-gate__kicker{color:#F3EEE3}
.post-card .read-more:hover,.crumb a:hover{color:#14273D;text-decoration:underline;text-decoration-color:#B08442;text-underline-offset:3px}

/* ============================================================================
   v3.4.1 REMEDIATION LAYER  (appended last so equal-specificity rules win)
   Fixes found in the functional/visual audit:
   D1  Legacy `footer .wrap` grid bled onto the current `.site-footer .wrap`,
       compressing footer content into ~40% width. Reset it to a normal wrap.
   D2  inc/firm.php emits `.lsl-mobilebar` on every page but no rule matched it
       (styled class was the unused legacy `.mobile-bar`). Give it real styles:
       a mobile-only sticky Call/Text/Email bar — a high-intent conversion
       control for a law firm — with >=44px targets and AA contrast
       (#F4EFE4 on #14273D = 13.2:1; brass primary = Court-Black text 5.11:1).
   ============================================================================ */

/* D1 — neutralize the legacy footer grid on the real footer wrapper. */
.site-footer .wrap{display:block;max-width:1140px;margin:0 auto;padding:0 22px}

/* D2 — sticky mobile action bar (Call / Text / Email). Mobile only. */
.lsl-mobilebar{display:none}
@media (max-width:840px){
  .lsl-mobilebar{
    display:flex;position:fixed;left:0;right:0;bottom:0;z-index:150;
    background:#14273D;border-top:2px solid #B08442;
    padding-bottom:env(safe-area-inset-bottom,0);
  }
  .lsl-mobilebar a{
    flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;
    min-height:52px;padding:.5rem .3rem;
    font-family:var(--ui);font-weight:700;font-size:.74rem;letter-spacing:.02em;
    color:#F4EFE4;text-decoration:none;border-right:1px solid rgba(244,239,228,.18);
  }
  .lsl-mobilebar a:last-child{border-right:0}
  .lsl-mobilebar a [aria-hidden="true"]{font-size:1.1rem;line-height:1;color:#B08442}
  .lsl-mobilebar a:active{background:#0E1B2B}
  /* keep the last CTA/footer content clear of the fixed bar */
  body{padding-bottom:56px}
  /* the off-canvas drawer (z-index 200) overlays the bar; hide it while open */
  body.menu-open .lsl-mobilebar{display:none}
}

/* ==========================================================================
   v3.4.8 — cards, forms, mobile breakpoints, and light/dark surface repair
   ========================================================================== */

/* Light B2B surfaces need visible neutral borders, not translucent light lines. */
.article-b2b .byline{border-bottom-color:#C9C3B4}
.article-b2b .article-cta{border-color:#C9C3B4}
.res-biz{border-color:#C9C3B4;border-left-color:var(--b2b-accent)}
.b2b-proof,.svc,.engage,.b2b-scope .form-shell,.b2b-scope .side-block{border-color:#C9C3B4}

/* Long legal/resource strings must not force horizontal scrolling. */
.pcard,.price-card,.svc,.engage,.res-card,.gate-box,.form-shell,.side-block,.article-cta{
  min-width:0;
  overflow-wrap:anywhere;
}

/* Form/touch target hardening across native theme forms. */
.field input,.field select,.field textarea,.gate-row input[type=email],.lsl-gate__field input{
  min-height:44px;
}
.field textarea{min-height:110px}

@media(max-width:600px){
  .form-shell{padding:1.35rem}
  .field input,.field select,.field textarea,.gate-row input[type=email],.lsl-gate__field input{
    font-size:16px;
  }
  .gate-row{display:grid;grid-template-columns:1fr;gap:.7rem}
  .gate-row input[type=email]{min-width:0;width:100%}
  .gate-row .btn{width:100%;min-height:44px}
  .stage2-nav{flex-direction:column}
  .stage2-nav .btn{width:100%}
  .channel{align-items:flex-start;flex-direction:column;gap:.35rem}
  .pcard,.price-card,.svc,.engage,.res-card,.gate-box{width:100%;max-width:none}
}


/* v3.4.9 — verified founding-attorney headshot rendering */
.attorney-card .portrait{overflow:hidden;padding:0;border:2px solid #C9C3B4}
.attorney-card .portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 24%;border-radius:inherit}
.lsla-mark{overflow:hidden;padding:0}
.lsla-mark img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 24%;border-radius:inherit}
.lslh-counsel .port{overflow:hidden;border:2px solid #14273D}
.lslh-counsel .port > img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 20%}

/* v3.5.5 inline Spanish orientation layer */
.lsl-inline-language-note{max-width:1180px;margin:0 auto;padding:.65rem clamp(1.1rem,4vw,2rem);font-family:var(--ui);font-size:.82rem;line-height:1.45;color:#3D5A73;background:#F3EEE3;border-bottom:1px solid #C9C3B4}
.lsl-inline-language-note p{margin:0}

/* v3.5.8 approved A production: resource citation/editorial-depth rendering repair */
.lsl-content span.cite{display:inline}
.lsl-content p.cite,.lsl-content div.cite{display:block}
.lsl-content > .lsl-editorial-depth{width:calc(100% - 44px);max-width:74ch;margin:2.25rem auto 4rem;box-sizing:border-box;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--brass);padding:clamp(1.35rem,3vw,2rem)}
.lsl-content > .lsl-editorial-depth h2{font-family:var(--display);font-weight:400;font-size:clamp(1.5rem,3.4vw,2rem);line-height:1.15;color:var(--ink);margin:2.2rem 0 .7rem;text-transform:none}
.lsl-content > .lsl-editorial-depth h2:first-child{margin-top:0}
.lsl-content > .lsl-editorial-depth p{max-width:none;font-family:var(--legal);font-size:1.08rem;line-height:1.72;color:var(--court);margin:0 0 1.15rem}
@media(max-width:600px){.lsl-content > .lsl-editorial-depth{width:calc(100% - 28px);padding:1.25rem 1.05rem;margin-top:1.5rem}}


/* v3.6.1 migrated page component CSS: restores approved Home/About/Contact component
   architecture after WXR-local <style> blocks were removed. Styles live in the theme
   so content remains semantic/import-safe and presentation remains reusable. */

/* migrated from approved home component */
/* ===================== Lincoln Square Law  -  Home (Option A, inlined) =====================
  Self-contained, prefixed (lslh-) so it never collides with the theme chrome.
  Bilingual via [data-es] (app.js swaps). Square is the only bullet. WCAG-AA throughout.
  Contact details come from Appearance > Customize > Firm Details via shortcodes. */
.lslh{--ink:#14273D;--brass:#B08442;--slate:#3D5A73;--parch:#F3EEE3;--paper:#FBFAF6;--line:#C9C3B4;--court:#1B1B1A;
 --on-ink:#F4EFE4;--on-ink-body:#EDE7DA;--on-ink-mute:#C7D2DD;
 --display:"Fraunces",Georgia,"Times New Roman",serif;--ui:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--legal:"Source Serif 4",Georgia,serif;}
.lslh *{box-sizing:border-box}
.lslh .wrap{max-width:1180px;margin:0 auto;padding:0 clamp(1.1rem,4vw,2rem)}
.lslh .ey{font-family:var(--ui);font-weight:700;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;display:flex;align-items:center;gap:.55rem;margin:0 0 1rem}
.lslh .ey .sq{width:.62em;height:.62em;background:var(--brass);flex:none;display:inline-block}
.lslh h1,.lslh h2,.lslh h3{font-family:var(--display);font-weight:400;margin:0;letter-spacing:-.01em;line-height:1.05}

/* ---- Hero (navy gateway) ---- */
.lslh-hero{position:relative;overflow:hidden;background:linear-gradient(160deg,#14273D 0%,#1a3149 58%,#22405c 100%);color:var(--on-ink);padding:clamp(3.4rem,8vw,5.5rem) 0 clamp(3rem,7vw,4.6rem)}
.lslh-hero .ey{color:var(--on-ink-mute)}
.lslh-hero .wm{position:absolute;right:-2.5rem;bottom:-5.5rem;font-family:var(--display);font-weight:500;font-size:24rem;line-height:.7;color:rgba(176,132,66,.08);letter-spacing:-.04em;pointer-events:none;user-select:none}
.lslh-hero .in{position:relative;z-index:2;max-width:44ch}
.lslh-hero h1{font-size:clamp(2.6rem,7vw,4.3rem);color:var(--on-ink)}
.lslh-hero h1 .amp{color:var(--brass)}
.lslh-hero h1 em{font-style:italic}
.lslh-hero .sub{font-family:var(--legal);font-size:clamp(1.1rem,2.6vw,1.3rem);line-height:1.5;color:var(--on-ink-body);margin:1rem 0 0;max-width:42ch}
.lslh-hero .body{font-family:var(--ui);font-size:1rem;line-height:1.6;color:var(--on-ink-mute);margin:1rem 0 1.7rem;max-width:46ch}
.lslh-cta{display:flex;gap:.7rem;flex-wrap:wrap}
.lslh-btn{font-family:var(--ui);font-weight:700;font-size:.95rem;padding:.9rem 1.6rem;border:1.6px solid;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap;transition:background .15s,color .15s}
.lslh-btn.p{background:var(--brass);color:var(--court);border-color:var(--brass)}
.lslh-btn.p:hover{background:#c79553;border-color:#c79553}
.lslh-btn.o{background:transparent;color:var(--on-ink);border-color:rgba(244,239,228,.6)}
.lslh-btn.o:hover{background:var(--on-ink);color:var(--ink)}
.lslh-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.2rem;padding-top:1.4rem;border-top:1px solid rgba(244,239,228,.18);max-width:640px}
.lslh-trust .k{font-family:var(--ui);font-weight:700;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--on-ink-mute);margin-bottom:.25rem}
.lslh-trust .v{font-family:var(--ui);font-weight:600;font-size:.85rem;color:var(--on-ink);line-height:1.3}

/* ---- Section base ---- */
.lslh-sec{padding:clamp(3rem,7vw,4.6rem) 0}
.lslh-parch{background:var(--parch)}
.lslh-navy{background:var(--ink);color:var(--on-ink)}
.lslh-head{max-width:60ch;margin:0 0 2.3rem}
.lslh-parch .ey{color:var(--slate)}
.lslh-parch h2{color:var(--ink);font-size:clamp(1.9rem,4.4vw,3rem)}
.lslh-navy .ey{color:var(--on-ink-mute)}
.lslh-navy h2{color:var(--on-ink);font-size:clamp(1.9rem,4.4vw,3rem)}
.lslh-lede{font-family:var(--legal);font-size:1.1rem;line-height:1.55;margin:.4rem 0 0;max-width:62ch}
.lslh-parch .lslh-lede{color:var(--slate)}
.lslh-navy .lslh-lede{color:var(--on-ink-mute)}

/* ---- Paths (two cards) ---- */
.lslh-paths{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.lslh-card{background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--brass);padding:2rem 1.9rem 1.8rem}
.lslh-card .num{font-family:var(--display);font-weight:300;font-size:3.2rem;line-height:.8;color:var(--line);letter-spacing:-.03em;margin-bottom:.4rem}
.lslh-card .tag{font-family:var(--ui);font-weight:700;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);display:block;margin-bottom:.5rem}
.lslh-card h3{font-size:1.6rem;color:var(--ink);margin-bottom:.5rem}
.lslh-card p{font-family:var(--legal);font-size:1rem;line-height:1.6;color:var(--court);margin:0 0 1rem}
.lslh-list{list-style:none;margin:0 0 1.2rem;padding:0}
.lslh-list li{position:relative;padding-left:1.35rem;margin-bottom:.55rem;font-family:var(--ui);font-size:.94rem;line-height:1.45;color:var(--slate)}
.lslh-list li::before{content:"";position:absolute;left:0;top:.5em;width:.5rem;height:.5rem;background:var(--brass)}
.lslh-go{font-family:var(--ui);font-weight:700;font-size:.85rem;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}
.lslh-go:hover{color:var(--brass)}

/* ---- Counsel strip ---- */
.lslh-counsel{display:grid;grid-template-columns:.42fr .58fr;gap:2.4rem;align-items:center}
.lslh-counsel .port{border:1px solid rgba(244,239,228,.18);background:#22405c;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}
.lslh-counsel .port .mk{width:34%;height:34%;border:2.5px solid var(--brass);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:500;color:var(--on-ink);font-size:1.6rem}
.lslh-counsel p{font-family:var(--legal);font-size:1.02rem;line-height:1.6;color:var(--on-ink-body);margin:0 0 1rem}
.lslh-creds{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.4rem}
.lslh-creds span{font-family:var(--ui);font-weight:700;font-size:.72rem;letter-spacing:.06em;border:1.5px solid var(--brass);color:var(--on-ink);padding:.32rem .7rem}

/* ---- Standard (three points) ---- */
.lslh-std{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.lslh-std .item{background:var(--paper);border:1px solid var(--line);padding:1.6rem 1.5rem}
.lslh-std .n{font-family:var(--ui);font-weight:700;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin-bottom:.5rem}
.lslh-std h3{font-size:1.2rem;color:var(--ink);margin-bottom:.4rem}
.lslh-std p{font-family:var(--ui);font-size:.92rem;line-height:1.55;color:var(--slate);margin:0}

/* ---- CTA ---- */
.lslh-ctas{text-align:center}
.lslh-ctas h2{color:var(--on-ink);font-size:clamp(1.9rem,4.4vw,2.8rem);margin-bottom:.5rem}
.lslh-ctas p{font-family:var(--legal);color:var(--on-ink-body);margin:0 auto 1.4rem;max-width:52ch}
.lslh-ctas .lslh-cta{justify-content:center}
.lslh-fine{font-family:var(--ui);font-size:.8rem;color:var(--on-ink-mute);margin-top:1.4rem}

@media(max-width:820px){
 .lslh-paths{grid-template-columns:1fr}
 .lslh-counsel{grid-template-columns:1fr;gap:1.6rem}
 .lslh-std{grid-template-columns:1fr}
 .lslh-trust{grid-template-columns:1fr;gap:.7rem;max-width:none}
}

/* migrated from approved about component */
.lsla{--ink:#14273D;--brass:#B08442;--slate:#3D5A73;--parch:#F3EEE3;--paper:#FBFAF6;--line:#C9C3B4;--court:#1B1B1A;--on-ink:#F4EFE4;--on-ink-body:#EDE7DA;--on-ink-mute:#C7D2DD;--display:"Fraunces",Georgia,serif;--ui:"Inter",-apple-system,Arial,sans-serif;--legal:"Source Serif 4",Georgia,serif;}
.lsla *{box-sizing:border-box}
.lsla .wrap{max-width:1180px;margin:0 auto;padding:0 clamp(1.1rem,4vw,2rem)}
.lsla .ey{font-family:var(--ui);font-weight:700;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;display:flex;align-items:center;gap:.55rem;margin:0 0 1rem}
.lsla .ey .sq{width:.62em;height:.62em;background:var(--brass);flex:none;display:inline-block}
.lsla h1,.lsla h2,.lsla h3{font-family:var(--display);font-weight:400;margin:0;letter-spacing:-.01em;line-height:1.06}
.lsla-hero{background:linear-gradient(160deg,#14273D 0%,#1a3149 60%,#22405c 100%);color:var(--on-ink);padding:clamp(3rem,7vw,4.6rem) 0}
.lsla-hero .ey{color:var(--on-ink-mute)}
.lsla-hero h1{color:var(--on-ink);font-size:clamp(2.3rem,5.6vw,3.4rem);max-width:22ch}
.lsla-hero .sub{font-family:var(--legal);font-size:clamp(1.05rem,2.4vw,1.25rem);line-height:1.5;color:var(--on-ink-body);margin:1rem 0 0;max-width:54ch}
.lsla-sec{padding:clamp(3rem,7vw,4.6rem) 0}
.lsla-parch{background:var(--parch)}
.lsla-bio{display:flex;flex-wrap:wrap;gap:2.4rem}
.lsla-bio>.mk{flex:0 0 200px}
.lsla-bio>.tx{flex:1 1 420px}
.lsla-mark{width:200px;height:200px;border:2px solid var(--ink);border-radius:0;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:500;font-size:4rem;color:var(--ink);background:var(--paper)}
.lsla-bio h2{color:var(--ink);font-size:clamp(1.7rem,3.6vw,2.3rem);margin-bottom:.2rem}
.lsla-bio .role{font-family:var(--ui);font-weight:600;font-size:.9rem;color:var(--slate);margin:0 0 1rem}
.lsla-bio p{font-family:var(--legal);font-size:1.05rem;line-height:1.6;color:var(--court);margin:0 0 1rem}
.lsla-creds{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}
.lsla-creds span{font-family:var(--ui);font-weight:700;font-size:.72rem;letter-spacing:.06em;border:1.5px solid var(--brass);color:var(--ink);padding:.32rem .7rem;border-radius:4px}
.lsla-cta{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.4rem}
.lsla-btn{font-family:var(--ui);font-weight:700;font-size:.95rem;padding:.85rem 1.6rem;border:1.6px solid;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap}
.lsla-btn.p{background:var(--brass);color:var(--court);border-color:var(--brass)}
.lsla-btn.p:hover{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}
.lsla-btn.o{background:transparent;color:var(--ink);border-color:var(--line)}
.lsla-btn.o:hover{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}
@media(max-width:560px){.lsla-mark{width:120px;height:120px;font-size:2.4rem}.lsla-bio>.mk{flex-basis:120px}}

/* migrated from approved contact component */
.lslc{--ink:#14273D;--brass:#B08442;--slate:#3D5A73;--parch:#F3EEE3;--paper:#FBFAF6;--line:#C9C3B4;--court:#1B1B1A;--on-ink:#F4EFE4;--on-ink-body:#EDE7DA;--on-ink-mute:#C7D2DD;--display:"Fraunces",Georgia,serif;--ui:"Inter",-apple-system,Arial,sans-serif;--legal:"Source Serif 4",Georgia,serif;}
.lslc *{box-sizing:border-box}
.lslc .wrap{max-width:1180px;margin:0 auto;padding:0 clamp(1.1rem,4vw,2rem)}
.lslc .ey{font-family:var(--ui);font-weight:700;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;display:flex;align-items:center;gap:.55rem;margin:0 0 1rem}
.lslc .ey .sq{width:.62em;height:.62em;background:var(--brass);flex:none;display:inline-block}
.lslc h1{font-family:var(--display);font-weight:400;margin:0;letter-spacing:-.01em;line-height:1.06}
.lslc-hero{background:linear-gradient(160deg,#14273D 0%,#1a3149 60%,#22405c 100%);color:var(--on-ink);padding:clamp(2.6rem,6vw,4rem) 0}
.lslc-hero .ey{color:var(--on-ink-mute)}
.lslc-hero h1{color:var(--on-ink);font-size:clamp(2.1rem,5vw,3.2rem)}
.lslc-hero .sub{font-family:var(--legal);font-size:clamp(1.05rem,2.4vw,1.2rem);line-height:1.5;color:var(--on-ink-body);margin:1rem 0 0;max-width:54ch}
.lslc-sec{padding:clamp(2.6rem,6vw,4rem) 0;background:var(--parch)}
.lslc-cols{display:flex;flex-wrap:wrap;gap:2.4rem}
.lslc-info{flex:1 1 280px}
.lslc-form{flex:2 1 420px}
.lslc-info h2{font-family:var(--display);font-weight:400;font-size:1.5rem;color:var(--ink);margin:0 0 .8rem}
.lslc-row{font-family:var(--ui);font-size:.98rem;color:var(--court);margin:0 0 .7rem;line-height:1.5}
.lslc-row b{display:block;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);margin-bottom:.15rem}
.lslc-row a{color:var(--ink);text-decoration:none;font-weight:600}
.lslc-row a:hover{color:var(--brass)}
.lslc-note{font-family:var(--legal);font-size:.95rem;color:var(--slate);line-height:1.55;margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--line)}
@media(max-width:720px){.lslc-form,.lslc-info{flex-basis:100%}}

/* END v3.6.1 migrated page component CSS */

/* v3.6.1 readability and resilient component rhythm */
.lsl-service-depth h2,.lsl-editorial-depth h2,.legal-extra h2,.contact-expect h2,.directions-extra h2{
  line-height:1.12;margin:0 0 1.15rem;
}
.lsl-service-depth h2:not(:first-child),.lsl-editorial-depth h2:not(:first-child),.legal-extra h2:not(:first-child),.contact-expect h2:not(:first-child),.directions-extra h2:not(:first-child){margin-top:2.5rem}
.lsl-service-depth h3,.lsl-editorial-depth h3,.legal-extra h3,.contact-expect h3,.directions-extra h3{
  line-height:1.18;margin:1.75rem 0 .8rem;
}
.lsl-service-depth h2 + h3,.lsl-editorial-depth h2 + h3,.legal-extra h2 + h3,.contact-expect h2 + h3,.directions-extra h2 + h3{margin-top:1.45rem}
.lsl-service-depth p,.lsl-editorial-depth p,.legal-extra p,.contact-expect p,.directions-extra p{line-height:1.72;margin:0 0 1.25rem}
.lsla .ey,.lslh .ey,.lslc .ey{display:flex;align-items:center;gap:.55rem}
.lsla .ey .sq,.lslh .ey .sq,.lslc .ey .sq{margin:0;flex:0 0 auto}
.lsla-creds{display:flex;flex-wrap:wrap;gap:.5rem .65rem;margin-top:1.2rem}
.lsla-creds span{display:inline-flex;align-items:center;min-height:2rem;padding:.28rem .55rem;border:1px solid var(--hair);font:700 .74rem/1.1 var(--ui);letter-spacing:.05em;color:var(--ink);background:var(--paper)}
.lsla-cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}
.lsla-cta a{display:inline-flex;align-items:center;min-height:44px;padding:.72rem 1rem;text-decoration:none;border:1px solid var(--ink);font:700 .82rem/1.2 var(--ui)}
.lsla-cta .p{background:var(--brass);border-color:var(--brass);color:var(--court)}
.lsla-cta .o{background:transparent;color:var(--ink)}
@media(max-width:620px){
  h1,h2,h3{line-height:1.09}
  .section{padding:3rem 0}
  .lsl-content p,.entry-content p{line-height:1.68}
  .lsl-service-depth,.lsl-editorial-depth,.legal-extra,.contact-expect,.directions-extra{padding:1.2rem 1.05rem}
  .lsl-service-depth h2,.lsl-editorial-depth h2,.legal-extra h2,.contact-expect h2,.directions-extra h2{font-size:clamp(1.65rem,8vw,2.15rem);line-height:1.1;margin-bottom:1.15rem}
  .lsl-service-depth h3,.lsl-editorial-depth h3,.legal-extra h3,.contact-expect h3,.directions-extra h3{font-size:clamp(1.35rem,6.3vw,1.75rem);line-height:1.15;margin-top:1.65rem;margin-bottom:.85rem}
  .lsl-service-depth h2 + h3,.lsl-editorial-depth h2 + h3,.legal-extra h2 + h3,.contact-expect h2 + h3,.directions-extra h2 + h3{margin-top:1.5rem}
  .lsla-cta{flex-direction:column}.lsla-cta a{width:100%;justify-content:center}
}


/* ==========================================================================
   v3.6.2 BRAND CONTRACT
   Source: Lincoln Square Law Brand Style Guide v1.1.
   The content/WXR layer may supply semantics and copy, never typography.
   ========================================================================== */
:root{
  --ink:#14273D;--brass:#B08442;--slate:#3D5A73;--parchment:#F3EEE3;
  --limestone:#C9C3B4;--court:#1B1B1A;--paper:#FBFAF6;
  --display:"Fraunces",Georgia,"Times New Roman",serif;
  --ui:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --legal:"Source Serif 4",Georgia,serif;
}
body{font-family:var(--ui);font-size:16px;line-height:1.6;color:var(--court);background:var(--parchment)}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;text-transform:none;letter-spacing:-.01em;color:var(--ink)}
.eyebrow,.kicker,.mega-ey,.mobile-drawer__label{font-family:var(--ui);font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.hero-b2b h1,.hero h1,.gate-head h1,.gate-panel h2{font-family:var(--display);font-weight:400;text-transform:none;letter-spacing:-.015em;line-height:1.04}
h2.section-title{font-family:var(--display);font-weight:400;text-transform:none;letter-spacing:-.01em;line-height:1.08;margin-bottom:1rem}
.svc h3,.engage h3,.pcard h3,.price-card h3,.form-shell h3,.attorney-card h3{font-family:var(--display);font-weight:400;text-transform:none;letter-spacing:-.005em;line-height:1.12}
.svc p,.engage p,.pcard p,.price-card p,.hero-b2b .sub,.hero-note{line-height:1.65}
.section-lede{line-height:1.6;margin-bottom:2.35rem}
/* Square is the signature device. Language toggle remains pill-shaped by approved header design. */
.btn,.header-cta,.mobile-drawer__cta,.svc,.engage,.pcard,.price-card,.form-shell,.res-card,.article-cta,.lsl-gate,.lsl-gate__inner,.gate-box,.side-block,.mega-card{border-radius:0!important}
/* Exact endorsed primary lockup. Preserve its vector aspect ratio; never rasterize it. */
.site-brand img{display:block;width:280px;max-width:36vw;height:auto;aspect-ratio:757.81/136;object-fit:contain;image-rendering:auto}
.footer-logo{height:auto;object-fit:contain;image-rendering:auto}
/* Paragraph and heading rhythm shared across designed service and editorial blocks. */
.lsl-service-depth,.lsl-editorial-depth,.legal-extra,.contact-expect,.directions-extra{border-radius:0}
.lsl-service-depth h2,.lsl-editorial-depth h2,.legal-extra h2,.contact-expect h2,.directions-extra h2{font-weight:400;font-size:clamp(1.8rem,3.8vw,2.35rem);line-height:1.1;margin:0 0 1.1rem}
.lsl-service-depth h3,.lsl-editorial-depth h3,.legal-extra h3,.contact-expect h3,.directions-extra h3{font-weight:400;font-size:clamp(1.35rem,2.8vw,1.75rem);line-height:1.16;margin:2rem 0 .75rem}
.lsl-service-depth h2+h3,.lsl-editorial-depth h2+h3,.legal-extra h2+h3,.contact-expect h2+h3,.directions-extra h2+h3{margin-top:1.35rem}
.lsl-service-depth p,.lsl-editorial-depth p,.legal-extra p,.contact-expect p,.directions-extra p{line-height:1.72;margin:0 0 1.35rem}
/* About/firm typography must use the same hierarchy, not fall back to generic document flow. */
.lsla h1,.lsla h2,.lsla h3,.lslh h1,.lslh h2,.lslh h3,.lslc h1,.lslc h2,.lslc h3{font-family:var(--display);font-weight:400;text-transform:none;letter-spacing:-.01em}
.lsla-bio p,.lslh-counsel p{line-height:1.68}
.lsla-creds span,.lslh-creds span{border-radius:0}
@media(max-width:840px){
  .site-brand img{width:190px;max-width:58vw;height:auto}
  .hero-b2b{padding:3.25rem 0 2.75rem}
  .hero-b2b h1{font-size:clamp(2.2rem,10vw,3.25rem)}
  h2.section-title{font-size:clamp(1.95rem,8.5vw,2.75rem)}
}
@media(max-width:620px){
  .site-brand img{width:180px;max-width:58vw}
  .section{padding:3.25rem 0}
  .lsl-service-depth,.lsl-editorial-depth,.legal-extra,.contact-expect,.directions-extra{padding:1.35rem 1.15rem}
  .lsl-service-depth h2,.lsl-editorial-depth h2,.legal-extra h2,.contact-expect h2,.directions-extra h2{font-size:clamp(1.7rem,8vw,2.1rem);margin-bottom:1.15rem}
  .lsl-service-depth h3,.lsl-editorial-depth h3,.legal-extra h3,.contact-expect h3,.directions-extra h3{font-size:clamp(1.35rem,6.4vw,1.7rem);margin-top:1.9rem;margin-bottom:.8rem}
}

/* ========================================================================== 
   v3.6.5 SOURCE-ARCHITECTURE REPAIR
   Exact endorsed brand lockup from the brand package; preserve full vector
   bounds and readable endorsement line. Preview and production use same rules.
   ========================================================================== */
.site-brand{min-width:0;overflow:visible}
.site-brand img{width:340px;max-width:min(42vw,340px);height:auto;aspect-ratio:757.81/136;object-fit:contain;object-position:left center;overflow:visible}
@media(max-width:840px){
  .site-header__row{min-height:82px}
  .site-brand img{width:250px;max-width:calc(100vw - 112px)}
}
@media(max-width:620px){
  .site-header__row{min-height:80px;padding-left:18px;padding-right:18px}
  .site-brand img{width:242px;max-width:calc(100vw - 108px)}
  .menu-toggle{flex:0 0 48px;width:48px;height:48px}
}
@media(max-width:390px){.site-brand img{width:222px;max-width:calc(100vw - 104px)}}

/* Landing-page contrast belongs to the landing components, not article CSS. */
.lslh-hero h1,.lsla-hero h1,.lslc-hero h1{color:var(--on-ink)}
.lslh-hero .sub,.lsla-hero .sub,.lslc-hero .sub{color:var(--on-ink-body)}
.lslh-hero .body,.lsla-hero .body,.lslc-hero .body{color:var(--on-ink-mute)}
.lslh-hero a,.lsla-hero a,.lslc-hero a{color:inherit}


/* ============ BRAND PICTOGRAM SYSTEM · v3.6.13 ============
   Approved 2026-09-18. Literal outline marks only: 1.5pt line weight,
   square caps/corners, no fills. Semantic mapping lives in inc/pictograms.php. */
.lsl-pictogram-sprite{position:absolute;width:0;height:0;overflow:hidden}
.lsl-pictogram{
  width:54px;height:54px;display:block;flex:0 0 auto;color:#B08442;
  fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:square;stroke-linejoin:miter;
}
.lsl-pictogram--sm{width:42px;height:42px}
.lsl-pictogram--lg{width:64px;height:64px}
.lsl-pictogram-wrap{display:flex;align-items:flex-start;gap:1rem}
.lsl-pictogram-wrap > .lsl-pictogram{margin-top:.08rem}
.lsl-pictogram-card{position:relative}
.lsl-pictogram-card > .lsl-pictogram{margin-bottom:.85rem}
.lsl-pictogram-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:1.25rem;align-items:start}
.lsl-pictogram-row > .lsl-pictogram{margin-top:.15rem}
.lsl-pictogram-card:hover .lsl-pictogram,
.lsl-pictogram-card:focus-within .lsl-pictogram{color:#14273D}
.theme-b2b .lsl-pictogram-card:hover .lsl-pictogram,
.theme-b2b .lsl-pictogram-card:focus-within .lsl-pictogram{color:#3D5A73}
.hero-b2b .lsl-pictogram,.site-footer .lsl-pictogram,.lslh-navy .lsl-pictogram{color:#B08442}
.res-card.lsl-pictogram-card{display:grid;grid-template-columns:82px minmax(0,1fr) 32px;gap:1.25rem;align-items:center}
.res-card.lsl-pictogram-card > .lsl-pictogram{margin:0}
.dir-block.lsl-pictogram-card > .lsl-pictogram{margin-bottom:.6rem}
@media(max-width:720px){
  .lsl-pictogram{width:46px;height:46px}
  .lsl-pictogram--lg{width:54px;height:54px}
  .res-card.lsl-pictogram-card{grid-template-columns:56px minmax(0,1fr);gap:1rem}
  .res-card.lsl-pictogram-card > .lsl-pictogram{grid-row:1 / span 2}
  .lsl-pictogram-row{grid-template-columns:52px minmax(0,1fr);gap:.9rem}
}

/* v3.6.11: page-level healthcare CTA is a light B2B card, even when it is not wrapped in .article-b2b. */
.lsl-content .b2b-scope .article-cta{
  background:var(--b2b-raise,#fff);
  color:var(--b2b-body,#14273D);
  border:1px solid var(--b2b-line,#C9C3B4);
}
.lsl-content .b2b-scope .article-cta h3,
.lsl-content .b2b-scope .article-cta p{color:var(--ink,#14273D)}
.lsl-content .b2b-scope .article-cta .btn,
.lsl-content .b2b-scope .article-cta .btn--steel{
  background:var(--brass,#B08442);
  color:var(--court,#1B1B1A);
  border-color:var(--brass,#B08442);
}

/* ============ v3.6.14 APPROVED REGRESSION REPAIR ============
   Approved 2026-09-18. Source-specific corrections only:
   - preserve the canonical SVG header lockup and restore legible display size/clear space;
   - normalize all canonical founder portrait frames to Giddings Brass and centered crop;
   - restore the Resources gateway pictogram/content grid so copy occupies one content column. */
.site-brand{min-width:0;overflow:visible;padding:12px 0}
.site-brand img{width:360px;max-width:min(44vw,360px);height:auto;object-fit:contain;object-position:left center;image-rendering:auto}
.attorney-card .portrait,.lsla-mark,.lslh-counsel .port{border:2px solid #B08442!important;overflow:hidden;padding:0}
.attorney-card .portrait img,.lsla-mark img,.lslh-counsel .port img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 22%;margin:0 auto}
.res-card.lsl-pictogram-card{display:grid;grid-template-columns:82px minmax(0,1fr);column-gap:1.25rem;row-gap:.45rem;align-items:start}
.res-card.lsl-pictogram-card > .lsl-pictogram{grid-column:1;grid-row:1 / span 4;align-self:center;margin:0}
.res-card.lsl-pictogram-card > :not(.lsl-pictogram){grid-column:2}
@media(max-width:840px){.site-brand img{width:252px;max-width:calc(100vw - 112px)}}
@media(max-width:720px){.res-card.lsl-pictogram-card{grid-template-columns:56px minmax(0,1fr);column-gap:1rem;row-gap:.35rem}.res-card.lsl-pictogram-card > .lsl-pictogram{grid-row:1 / span 4}}
@media(max-width:620px){.site-brand{padding:10px 0}.site-brand img{width:242px;max-width:calc(100vw - 108px)}}



/* ==========================================================================
   v3.6.17 — approved UX/functionality corrections (retained where still applicable)
   ========================================================================== */
/* Resource landing pages already output .resource-topic-nav/.btn--outline, but
   their only prior component rule lived in article-only content.css. Keep the
   designed landing pages out of that compatibility sheet and define the
   component globally instead. */
.resource-topic-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.72rem;margin:1.15rem 0 0}
.resource-topic-nav .btn--outline{position:relative;display:flex;align-items:center;min-height:54px;padding:.82rem .9rem .82rem 1.65rem;border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);text-align:left;text-decoration:none;font:700 .79rem/1.35 var(--ui);letter-spacing:.01em;white-space:normal}
.resource-topic-nav .btn--outline::before{content:"";position:absolute;left:.82rem;top:1.13rem;width:.46rem;height:.46rem;background:var(--brass)}
.resource-topic-nav .btn--outline:hover{border-color:var(--ink);background:var(--ink);color:#F4EFE4}
.resource-topic-nav .btn--outline:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
@media(max-width:760px){.resource-topic-nav{grid-template-columns:1fr}.resource-topic-nav .btn--outline{min-height:48px}}

/* Keep appended Privacy/Terms/Accessibility sections on the same legal reading
   axis as .legal instead of jumping to the site-wide 1140px wrap. */
.legal-extra>.wrap{max-width:74ch;margin-left:auto;margin-right:auto;padding-left:22px;padding-right:22px}


/* v0.10 visibility + translation control hardening */
.lsl-content .promise p,
.promise p{color:#F4EFE4!important}
.lsl-content .promise .badge,
.promise .badge{color:#fff!important}


.zoom-scheduler-embed{max-width:920px;margin:1.5rem auto 0}.zoom-scheduler-embed iframe{display:block;background:#fff;border-radius:8px}.zoom-scheduler-fallback{padding:1rem 1.2rem;border:1px solid var(--hair);background:#fff;border-radius:8px}

/* =========================================================================
   v3.6.18 FINAL PRODUCTION — approved front-page hero + gateway hygiene.
   Uses only the canonical pictogram sprite from inc/pictograms.php.
   No generated glyph icons are permitted on the production home page.
   ========================================================================= */
.lsl-prod-home{--ink:#14273D;--brass:#B08442;--parch:#F3EEE3;--paper:#FBFAF6;--line:#C9C3B4;--court:#1B1B1A;--display:"Fraunces",Georgia,"Times New Roman",serif;--ui:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--legal:"Source Serif 4",Georgia,serif}
.lsl-prod-home *{box-sizing:border-box}
.lsl-prod-home__hero{position:relative;min-height:clamp(470px,39vw,570px);overflow:hidden;background:var(--ink);color:#F4EFE4}
.lsl-prod-home__hero-media{position:absolute;inset:0;display:block;width:100%;height:100%;z-index:0}
.lsl-prod-home__hero-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 24%;margin:0}
.lsl-prod-home__hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(20,39,61,.96) 0%,rgba(20,39,61,.88) 28%,rgba(20,39,61,.52) 46%,rgba(20,39,61,.12) 68%,rgba(20,39,61,0) 82%)}
.lsl-prod-home__hero-wrap{position:relative;z-index:2;min-height:inherit;display:flex;align-items:center;padding-top:2rem;padding-bottom:2rem}
.lsl-prod-home__hero-copy{max-width:43rem}
.lsl-prod-home__eyebrow{position:relative;margin:0 0 1.15rem;padding-left:3rem;font-family:var(--ui);font-weight:700;font-size:.78rem;letter-spacing:.18em;color:#D7A45B}
.lsl-prod-home__eyebrow::before{content:"";position:absolute;left:0;top:50%;width:2rem;height:2px;background:var(--brass);transform:translateY(-50%)}
.lsl-prod-home__hero h1{margin:0;max-width:11ch;font-family:var(--display);font-weight:400;font-size:clamp(3rem,5.6vw,5rem);line-height:.98;letter-spacing:-.02em;color:#F4EFE4}
.lsl-prod-home__sub{margin:1.3rem 0 0;max-width:32rem;font-family:var(--legal);font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.45;color:#F4EFE4}
.lsl-prod-home__actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:2rem}
.lsl-prod-home__btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.85rem 1.55rem;border:1.5px solid;font-family:var(--ui);font-weight:700;font-size:.92rem;text-decoration:none;transition:background .15s ease,color .15s ease,border-color .15s ease}
.lsl-prod-home__btn--primary{background:var(--brass);border-color:var(--brass);color:var(--ink)}
.lsl-prod-home__btn--primary:hover,.lsl-prod-home__btn--primary:focus-visible{background:#C3944D;border-color:#C3944D;color:var(--ink)}
.lsl-prod-home__btn--outline{background:rgba(20,39,61,.22);border-color:rgba(244,239,228,.82);color:#F4EFE4}
.lsl-prod-home__btn--outline:hover,.lsl-prod-home__btn--outline:focus-visible{background:#F4EFE4;color:var(--ink)}
.lsl-prod-home__gateways{background:var(--paper);border-bottom:1px solid var(--line)}
.lsl-prod-home__gateway-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1440px;margin:0 auto}
.lsl-prod-home__gateway{display:flex;flex-direction:column;align-items:center;text-align:center;min-height:250px;padding:2rem 2rem 1.8rem;color:var(--ink);text-decoration:none;border-right:1px solid #DED8CA;background:var(--paper)}
.lsl-prod-home__gateway:last-child{border-right:0}
.lsl-prod-home__gateway > .lsl-pictogram{width:58px;height:58px;margin:0 0 .85rem;color:var(--brass);stroke:currentColor}
.lsl-prod-home__gateway h2{margin:0 0 .6rem;font-family:var(--display);font-weight:400;font-size:1.45rem;line-height:1.1;color:var(--ink)}
.lsl-prod-home__gateway p{margin:0 auto 1rem;max-width:26rem;font-family:var(--legal);font-size:.98rem;line-height:1.48;color:var(--court)}
.lsl-prod-home__more{margin-top:auto;padding-bottom:.2rem;border-bottom:1px solid var(--brass);font-family:var(--ui);font-weight:700;font-size:.88rem;color:var(--ink)}
.lsl-prod-home__gateway:hover,.lsl-prod-home__gateway:focus-visible{background:#F7F3EB;outline:none}
.lsl-prod-home__gateway:hover .lsl-pictogram,.lsl-prod-home__gateway:focus-visible .lsl-pictogram{color:var(--ink)}
.lsl-prod-home__band{background:var(--ink);color:#F4EFE4;border-bottom:1px solid #0E1B2B}
.lsl-prod-home__band p{margin:0;padding:1.7rem 0;text-align:center;font-family:var(--display);font-weight:400;font-size:clamp(1.55rem,2.6vw,2.2rem);line-height:1.2}
@media(max-width:900px){
  .lsl-prod-home__hero{min-height:520px}
  .lsl-prod-home__hero-media img{object-position:50% 31%}
  .lsl-prod-home__hero-shade{background:linear-gradient(90deg,rgba(20,39,61,.96) 0%,rgba(20,39,61,.83) 42%,rgba(20,39,61,.3) 68%,rgba(20,39,61,.08) 100%)}
  .lsl-prod-home__hero-copy{max-width:36rem}
  .lsl-prod-home__gateway{padding:1.7rem 1.2rem 1.55rem}
}
@media(max-width:620px){
  .lsl-prod-home__hero{min-height:600px}
  .lsl-prod-home__hero-media img{object-position:50% 50%}
  .lsl-prod-home__hero-shade{background:linear-gradient(180deg,rgba(20,39,61,.08) 0%,rgba(20,39,61,.16) 28%,rgba(20,39,61,.88) 62%,rgba(20,39,61,.97) 100%)}
  .lsl-prod-home__hero-wrap{align-items:flex-end;padding-bottom:1.7rem}
  .lsl-prod-home__hero-copy{max-width:none;width:100%}
  .lsl-prod-home__hero h1{max-width:12ch;font-size:clamp(2.7rem,12vw,3.5rem)}
  /* v3.6.40: eyebrow on a square Square Ink plate so it stays legible over the arch lettering (approved option B; no font change). */
  .lsl-prod-home__eyebrow{display:inline-block;padding:.45rem .7rem .45rem 3.1rem;background:rgba(20,39,61,.86)}
  .lsl-prod-home__eyebrow::before{left:.7rem;width:1.8rem}
  .lsl-prod-home__sub{font-size:1.05rem}
  .lsl-prod-home__actions{display:grid;grid-template-columns:1fr;gap:.65rem;margin-top:1.35rem}
  .lsl-prod-home__btn{width:100%}
  .lsl-prod-home__gateway-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lsl-prod-home__gateway{min-height:285px;padding:1.25rem .55rem 1.1rem}
  .lsl-prod-home__gateway > .lsl-pictogram{width:42px;height:42px;margin-bottom:.6rem}
  .lsl-prod-home__gateway h2{font-size:1rem;line-height:1.05}
  .lsl-prod-home__gateway p{font-size:.75rem;line-height:1.4}
  .lsl-prod-home__more{font-size:.72rem}
  .lsl-prod-home__band p{padding:1.25rem 0;font-size:1.45rem}
}


/* =========================================================================
   v3.6.19 — approved intake form and booking corrections (audit F-07, F-08, F-10, F-11, F-12).
   Reuses existing tokens and components. No new visual language.
   ========================================================================= */
.lsl-intake-wrap .err-msg{color:#A23A2E}
.lsl-intake-wrap .field.has-err input:not([type=checkbox]):not([type=radio]),.lsl-intake-wrap .field.has-err select,.lsl-intake-wrap .field.has-err textarea{border-color:#A23A2E;box-shadow:inset 3px 0 0 #A23A2E}
.lsl-intake-wrap .check input[aria-invalid="true"]{outline:2px solid #A23A2E;outline-offset:2px}
.lsl-intake-wrap .f-phone .err-msg{margin:.3rem 0 .2rem}
.lsl-intake fieldset.field{border:0;padding:0;margin:0 0 1.1rem;min-width:0}
.lsl-intake fieldset.field legend{display:block;padding:0;font-family:var(--ui);font-size:.82rem;font-weight:700;color:#14273D;margin-bottom:.35rem}
.lsl-intake-wrap > div > h3{margin:0 0 .55rem}
.lsl-intake-wrap .reassure{margin:0 0 1.5rem}
.lsl-intake-wrap .microcopy{background:#FBFAF6;border:1px solid rgba(20,39,61,.16);color:#14273D}
.lsl-intake-wrap .stage2-err{margin:1rem 0 0}
.lsl-intake-wrap .book-next{margin:0 0 1.2rem}
.zoom-scheduler-embed iframe{width:100%;min-height:720px;border:0}
.lsl-book .book-grid > div{min-width:0}
@media(max-width:840px){.lsl-book .book-grid > div:last-child{order:-1}}
/* Book a Consultation: copy rhythm once the page renders full width (F-04). Square brass bullet per Style Guide §03. */
.lsl-book .book-grid{gap:clamp(2rem,4vw,3.25rem)}
.lsl-book .book-grid h2{font-family:var(--display);font-weight:400;font-size:clamp(1.55rem,2.4vw,1.95rem);line-height:1.12;margin:0 0 .9rem;color:#14273D}
.lsl-book .book-grid h3{font-family:var(--display);font-weight:400;font-size:clamp(1.2rem,1.8vw,1.35rem);line-height:1.2;margin:1.7rem 0 .6rem;color:#14273D}
.lsl-book .book-grid p{margin:0 0 1.05rem;line-height:1.68;max-width:62ch}
.lsl-book .book-grid ul{list-style:none;padding:0;margin:0 0 1.2rem}
.lsl-book .book-grid li{position:relative;padding-left:1.15rem;margin:0 0 .5rem;line-height:1.55}
.lsl-book .book-grid li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;background:#B08442}
.lsl-intake fieldset.field .radio-row{margin-top:.15rem}
@media(max-width:840px){.lsl-book .page-hero{padding-bottom:1.25rem}.lsl-book .page-hero + .section{padding-top:1.5rem}}
/* Live-page review (Sept 23): align the confidentiality line with the left-aligned submit button; tighten the gap before the scheduler; fee line above it. */
.lsl-intake-wrap .privacy-note{text-align:left}
.lsl-book #schedule{padding-top:clamp(1.5rem,4vw,2.5rem)}
.lsl-book .section:has(+ #schedule){padding-bottom:clamp(1.5rem,4vw,2.5rem)}
.lsl-book .book-fee{margin-top:.6rem!important;font-family:var(--ui);font-weight:700;color:#14273D;border-left:3px solid #B08442;padding:.15rem 0 .15rem .8rem;margin:0 0 .9rem}
/* v3.6.20 — gated download: show the thank-you/download panel once the script un-hides it.
   A companion rule (.lsl-gate__done{display:none}) kept it hidden even after success. */
.lsl-gate__done:not([hidden]){display:block}
