/* ── Tokens & Reset ── */
:root{--steel-950:#0f1720;--steel-900:#17212b;--steel-800:#22303c;--steel-700:#384957;--steel-300:#a7b2bc;--steel-200:#d2d9df;--paper:#f7f5f0;--paper-dim:#ece8df;--amber:#b7791f;--amber-bright:#d9a24b;--ink:#17202a;--muted:#4f5c68;--rule:#3a4956;--light-rule:#d8d2c7;--display:'Source Serif 4',Georgia,serif;--body:'Source Sans 3',-apple-system,'Segoe UI',sans-serif}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
body{font-family:var(--body);color:var(--ink);background:var(--paper);font-size:17px;line-height:1.68;-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
.skip-link{position:fixed;top:10px;left:10px;z-index:100;background:var(--amber-bright);color:var(--steel-950);padding:10px 16px;border-radius:3px;font-weight:700;text-decoration:none;transform:translateY(-160%);transition:transform .2s}
.skip-link:focus{transform:translateY(0)}

/* ── Rail Divider ── */
.rail{position:relative;height:1px;background:var(--light-rule)}
.rail::before{content:"";position:absolute;left:max(20px,calc((100% - 1124px)/2 + 28px));top:0;width:76px;height:2px;background:var(--amber)}

/* ── Header & Nav ── */
.topbar{background:var(--steel-950);color:var(--steel-200);font-size:13.5px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.topbar .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.topbar a{color:var(--amber-bright);text-decoration:none;font-weight:600}
header.site{position:sticky;top:0;z-index:50;background:var(--steel-900);border-bottom:1px solid rgba(255,255,255,.12)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:14px;padding-bottom:14px;gap:18px}
.logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0}
.logo img{display:block;width:220px;height:59px}
nav.main{display:flex;gap:18px;align-items:center}
nav.main a,.nav-dropdown-toggle{color:var(--steel-200);text-decoration:none;font-weight:600;font-size:15px;font-family:var(--body)}
nav.main > a:hover,nav.main > a:focus-visible,.nav-dropdown-toggle:hover,.nav-dropdown-toggle:focus-visible{color:var(--amber-bright)}
.nav-dropdown{position:relative}
.nav-dropdown-toggle{display:flex;align-items:center;gap:7px;background:none;border:0;padding:8px 0;cursor:pointer}
.nav-chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.nav-dropdown.open .nav-chevron{transform:rotate(225deg) translate(-1px,-1px)}
.nav-submenu{position:absolute;top:100%;left:-18px;z-index:55;min-width:250px;background:var(--steel-950);border:1px solid var(--rule);padding:8px;box-shadow:0 16px 30px rgba(0,0,0,.3);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s,transform .18s,visibility .18s}
.nav-submenu a{display:block;padding:10px 12px;border-radius:2px;color:var(--steel-200);white-space:nowrap}
.nav-submenu a:hover,.nav-submenu a:focus-visible{background:var(--steel-800);color:var(--amber-bright)}
.nav-dropdown.open .nav-submenu{opacity:1;visibility:visible;transform:translateY(0)}
@media(min-width:761px){.nav-dropdown:not(.escape-closed):hover .nav-submenu,.nav-dropdown:not(.escape-closed):focus-within .nav-submenu{opacity:1;visibility:visible;transform:translateY(0)}.nav-dropdown:not(.escape-closed):hover .nav-chevron,.nav-dropdown:not(.escape-closed):focus-within .nav-chevron{transform:rotate(225deg) translate(-1px,-1px)}}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;background:var(--amber);color:#fff;font-weight:700;text-decoration:none;padding:11px 23px;border:1px solid var(--amber);border-radius:2px;font-size:15px;cursor:pointer;font-family:var(--body);transition:background-color .2s,color .2s,border-color .2s}
.btn:hover,.btn:focus-visible{background:var(--amber-bright)}
.btn.ghost{background:transparent;color:var(--paper);border:1px solid rgba(255,255,255,.5);padding:11px 21px}
.btn.ghost:hover{background:var(--paper);border-color:var(--paper);color:var(--steel-950)}
.btn.dark{background:var(--steel-900);color:var(--paper)}
.btn.dark:hover{background:var(--steel-800)}
a:focus-visible,button:focus-visible{outline:3px solid var(--amber-bright);outline-offset:2px}
.menu-toggle{display:none;align-items:center;justify-content:center;width:46px;height:44px;background:none;border:1px solid var(--rule);color:var(--paper);padding:0;border-radius:3px;cursor:pointer}
.menu-icon,.menu-icon::before,.menu-icon::after{display:block;width:20px;height:2px;background:currentColor;transition:transform .2s,opacity .2s}
.menu-icon{position:relative}.menu-icon::before,.menu-icon::after{content:"";position:absolute;left:0}.menu-icon::before{top:-6px}.menu-icon::after{top:6px}
.menu-toggle[aria-expanded="true"] .menu-icon{background:transparent}.menu-toggle[aria-expanded="true"] .menu-icon::before{top:0;transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-icon::after{top:0;transform:rotate(-45deg)}

/* ── Homepage: Hero ── */
.hero{background:var(--steel-900);color:var(--paper);padding:76px 0 70px;border-bottom:1px solid rgba(255,255,255,.08)}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(330px,.72fr);gap:76px;align-items:center}
.kicker{font-weight:700;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--amber-bright);margin-bottom:18px}
.hero h1{font-family:var(--display);font-weight:600;font-size:clamp(42px,5.2vw,64px);line-height:1.03;letter-spacing:-.026em;margin-bottom:24px;max-width:760px;text-wrap:balance}
.hero p.lede{font-size:19px;color:var(--steel-200);max-width:650px;margin-bottom:28px;line-height:1.65}
.hero-points{display:flex;flex-wrap:wrap;gap:10px 24px;list-style:none;margin:28px 0 0;color:var(--steel-200);font-size:14px;font-weight:600}
.hero-points li{position:relative;padding-left:15px}
.hero-points li::before{content:"";position:absolute;left:0;top:.7em;width:5px;height:5px;background:var(--amber);border-radius:50%}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.hero-promise{font-size:13.5px;color:var(--steel-300);letter-spacing:.02em}
.hero-media{margin:0;align-self:center;width:100%;display:flex;flex-direction:column}
.hero-image-frame{aspect-ratio:4/5;min-height:400px;position:relative;overflow:hidden;background:#202c37;border:1px solid rgba(255,255,255,.18);isolation:isolate}
.hero-image-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;opacity:0;transition:opacity .2s ease}
.hero-image-frame.has-image img{opacity:1}.hero-image-frame.has-image .hero-image-fallback{opacity:0}
.hero-image-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--steel-300);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;text-align:center;padding:30px;transition:opacity .2s ease}
.hero-image-frame::after{content:"";position:absolute;z-index:2;left:0;bottom:0;width:88px;height:4px;background:var(--amber)}
.hero-media figcaption{padding:14px 0 0;color:var(--paper);font-family:var(--display);font-size:18px;font-weight:600}
.hero-media figcaption span{display:block;font-family:var(--body);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--steel-300);margin-top:2px}

/* ── Homepage: Trust Strip ── */
.trust{background:var(--paper);color:var(--muted);padding:22px 0;border-bottom:1px solid var(--light-rule)}
.trust .wrap{display:flex;justify-content:center;gap:22px 42px;flex-wrap:wrap;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-align:center}
.trust span b{color:var(--steel-900)}

/* ── Homepage: Sections ── */
section{padding:92px 0}
section[id]{scroll-margin-top:96px}
.eyebrow{font-weight:700;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--amber);margin-bottom:13px}
h2.sec{font-family:var(--display);font-weight:600;font-size:clamp(32px,3.8vw,46px);line-height:1.1;letter-spacing:-.018em;margin-bottom:18px;text-wrap:balance}
.sec-intro{max-width:720px;font-size:18px;color:var(--muted);margin-bottom:48px}
.center-cta{text-align:center;margin-top:42px}

/* ── Homepage: Results Carousel ── */
.results-carousel{position:relative;overflow:hidden;padding:22px 0 8px;touch-action:pan-y}
.results-carousel:focus-visible{outline:3px solid var(--amber);outline-offset:4px}
.results-viewport{position:relative;min-height:340px;overflow:hidden}
.result-slide{position:absolute;left:50%;top:28px;width:min(520px,42vw);min-height:260px;display:flex;flex-direction:column;background:#fff;border:1px solid var(--light-rule);opacity:0;visibility:hidden;pointer-events:none;transform:translateX(calc(-50% + var(--slide-x,0%))) scale(.78);transition:transform .35s ease,opacity .25s ease,visibility .25s ease;box-shadow:0 12px 30px rgba(15,23,32,.08)}
.result-slide.is-neighbor{opacity:.58;visibility:visible;transform:translateX(calc(-50% + var(--slide-x,0%))) scale(.84)}
.result-slide.is-active{z-index:3;opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) scale(1);border-color:var(--steel-700);box-shadow:0 20px 42px rgba(15,23,32,.16)}
.result-slide-head{background:var(--paper-dim);border-bottom:1px solid var(--light-rule);padding:20px 24px;text-align:center}
.result-slide.is-active .result-slide-head{background:var(--steel-900);color:var(--paper);padding:26px 24px}
.result-slide .amt{font-family:var(--display);font-weight:600;font-size:30px;line-height:1.05}
.result-slide .kind{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--amber);margin-top:7px}
.result-slide.is-active .kind{color:var(--amber-bright)}
.result-slide p{display:grid;place-items:center;flex:1;padding:28px 30px;text-align:center;font-size:16px;color:var(--muted);line-height:1.58}
.carousel-control{position:absolute;z-index:5;top:50%;width:46px;height:46px;border-radius:50%;border:2px solid var(--paper);background:var(--amber);color:#fff;cursor:pointer;font-size:26px;line-height:1;display:grid;place-items:center;box-shadow:0 4px 14px rgba(0,0,0,.22);transition:background-color .2s,border-color .2s}
.carousel-control:hover,.carousel-control:focus-visible{background:var(--amber-bright);border-color:#fff}
.carousel-control.prev{left:calc(50% - min(260px,21vw) - 23px)}
.carousel-control.next{right:calc(50% - min(260px,21vw) - 23px)}
.carousel-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.results-note{margin-top:18px;font-size:13px;color:#68737e;max-width:860px;border-top:1px solid var(--light-rule);padding-top:18px}

/* ── Homepage: Practice Cards (index) ── */
.practice{background:var(--steel-900);color:var(--paper)}
.practice .eyebrow{color:var(--amber-bright)}
.practice .sec-intro{color:var(--steel-300)}
.pa{background:var(--steel-800);border:1px solid rgba(255,255,255,.13);padding:27px 26px;border-radius:2px;display:flex;flex-direction:column;gap:10px;transition:border-color .2s,background-color .2s}
.pa.signature{background:#263643;border-top:3px solid var(--amber);padding:34px 32px}
.pa:hover,.pa:focus-within{border-color:rgba(217,162,75,.8);background:#293945}
.pa h3{font-family:var(--display);font-size:23px;font-weight:600;color:var(--paper);line-height:1.18}
.pa.signature h3{font-size:29px}
.pa .tag{font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--amber-bright)}
.pa p{font-size:15px;color:var(--steel-200);line-height:1.62;flex:1}
.pa a{color:var(--amber-bright);font-weight:700;text-decoration:none;font-size:14.5px}
.pa a:hover{text-decoration:underline}
.pa-links{display:flex;gap:8px 16px;flex-wrap:wrap;margin-top:4px}

/* ── Homepage: About ── */
.about .wrap{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:72px;align-items:start}
.about .about-photo{position:sticky;overflow:hidden;background:#e5e1d9;border-radius:2px;aspect-ratio:4/5;width:100%;max-width:360px;justify-self:center;border:1px solid var(--light-rule);top:96px}
.about .about-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .2s ease}
.about .about-photo.has-image img{opacity:1}.about .about-photo.has-image .image-fallback{opacity:0}
.about h2.sec{margin-bottom:14px}
.about p{margin-bottom:17px;color:#35424e}
.creds{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cred{background:#fff;border:1px solid var(--light-rule);padding:18px;border-radius:2px}
.cred b{display:block;font-family:var(--display);font-size:17px;color:var(--steel-900);margin-bottom:3px}
.cred span{font-size:13.5px;color:#5a6472}

/* ── Homepage: Process ── */
.process{background:var(--paper-dim);border-top:1px solid var(--light-rule);border-bottom:1px solid var(--light-rule)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.step{background:transparent;border-top:2px solid var(--steel-700);padding:24px 10px 0 0;position:relative}
.step .n{font-family:var(--body);font-weight:700;font-size:12px;color:var(--amber);letter-spacing:.12em;margin-bottom:12px}
.step h3{font-family:var(--display);font-size:21px;font-weight:600;margin-bottom:8px}
.step p{font-size:15px;color:#4a5563}

/* ── Homepage: Contact ── */
.contact{background:var(--steel-900);color:var(--paper);border-top:1px solid rgba(255,255,255,.08)}
.contact .wrap{display:grid;grid-template-columns:.82fr 1.18fr;gap:72px;align-items:start}
.contact .eyebrow{color:var(--amber-bright)}
.contact p{color:var(--steel-200);margin-bottom:18px}
.contact .phone-big{font-family:var(--display);font-weight:600;font-size:clamp(30px,4vw,44px);color:var(--paper);text-decoration:none;display:inline-block;margin:6px 0 20px;border-bottom:2px solid var(--amber)}
.nap{font-size:15.5px;color:var(--steel-300);line-height:1.8}
form{background:#202d38;border:1px solid rgba(255,255,255,.14);padding:32px;border-radius:2px;display:grid;gap:16px}
form label{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--steel-300)}
form input,form select,form textarea{width:100%;background:var(--paper);border:1px solid var(--rule);color:var(--ink);padding:12px 14px;border-radius:2px;font-family:var(--body);font-size:16px;margin-top:6px}
form input::placeholder,form textarea::placeholder{color:var(--muted)}
form input:-webkit-autofill{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 100px var(--paper) inset}
form input:focus,form select:focus,form textarea:focus{outline:2px solid var(--amber-bright);outline-offset:1px;border-color:var(--amber-bright);background:#fff}
form .fine{font-size:12.5px;color:var(--steel-300);line-height:1.5}
form .btn{width:100%}

/* ── Inner Pages: Page Hero ── */
.crumbs{font-size:13.5px;color:var(--steel-300);padding:18px 0 0}
.crumbs a{color:var(--steel-300);text-decoration:none}
.crumbs a:hover{color:var(--amber-bright)}
.page-hero{background:var(--steel-900);color:var(--paper);padding:0 0 64px}
.page-hero .kicker{font-weight:700;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--amber-bright);margin:40px 0 16px}
.page-hero h1{font-family:var(--display);font-weight:600;font-size:clamp(34px,4.4vw,52px);line-height:1.08;letter-spacing:-.02em;max-width:840px;margin-bottom:20px;text-wrap:balance}
.page-hero p.lede{font-size:18px;color:var(--steel-200);max-width:720px;margin-bottom:30px;line-height:1.65}
.page-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:52px;align-items:center}
.page-hero-media{margin:40px 0 0;align-self:center}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap}

/* ── Inner Pages: Image Shell ── */
.image-shell{position:relative;overflow:hidden;background:#26333e;border:1px solid rgba(255,255,255,.16);isolation:isolate}
.image-shell img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .2s ease}
.image-shell.has-image img{opacity:1}.image-shell.has-image .image-fallback{opacity:0}
.image-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;color:var(--steel-300);font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;transition:opacity .2s ease}
.page-hero-media .image-shell{aspect-ratio:3/2}.page-hero-media .image-shell::after{content:"";position:absolute;z-index:2;left:0;bottom:0;width:72px;height:3px;background:var(--amber)}

/* ── Inner Pages: Layout & Article ── */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:72px;padding:80px 0;align-items:start}
article{min-width:0}
article h2{font-family:var(--display);font-weight:600;font-size:clamp(27px,3vw,35px);line-height:1.18;letter-spacing:-.012em;margin:42px 0 15px}
article h2:first-child{margin-top:0}
article h3{font-family:var(--display);font-weight:600;font-size:22px;margin:28px 0 10px}
article p{margin-bottom:17px;color:#35424e}
article ul{margin:0 0 20px 22px;color:#35424e}
article li{margin-bottom:8px}
article strong{color:var(--steel-900)}
.callout strong{color:var(--paper)}
.callout{background:var(--steel-900);color:var(--paper);border-left:3px solid var(--amber);padding:26px 28px;border-radius:2px;margin:34px 0}
.callout p{color:var(--steel-200);margin-bottom:14px}
.callout p:last-child,.callout .btn{margin-bottom:0}
.related-practice-link{background:var(--paper-dim);border-left:3px solid var(--amber);padding:20px 22px;margin:28px 0}
.related-practice-link strong{display:block;font-family:var(--display);font-size:19px;margin-bottom:5px}
.related-practice-link p{margin:0;font-size:15px}
.related-practice-link a{color:#875817;font-weight:700}
.prose{max-width:780px}
.prose h2{font-family:var(--display);font-weight:600;font-size:clamp(27px,3vw,36px);line-height:1.16;margin:42px 0 15px}
.prose h2:first-child{margin-top:0}
.prose p{margin-bottom:17px;color:#35424e}
.prose ul{margin:0 0 20px 22px;color:#35424e}

/* ── Inner Pages: Sidebar ── */
aside.side{position:sticky;top:112px}
aside.side > div{background:#fff;border:1px solid var(--light-rule);border-radius:2px;padding:26px;margin-bottom:22px}
aside.side h3{font-family:var(--display);font-size:20px;margin-bottom:12px}
aside.side .phone{font-family:var(--display);font-weight:700;font-size:28px;color:var(--steel-900);text-decoration:none;display:block;margin-bottom:8px}
aside.side p{font-size:14.5px;color:#5a6472;margin-bottom:14px}
aside.side .result{border-top:1px solid #eee9dd;padding:12px 0}
aside.side .result b{font-family:var(--display);font-size:20px;color:var(--steel-900);display:block}
aside.side .result span{font-size:13.5px;color:#5a6472}
aside.side a.pa-link{display:block;padding:8px 0;border-top:1px solid #eee9dd;text-decoration:none;font-weight:600;font-size:14.5px;color:var(--steel-800)}
aside.side a.pa-link:hover{color:#a3752a}

/* ── Inner Pages: Practice Cards (overview page) ── */
.signature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-bottom:22px}
.supporting-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.practice-card{background:#fff;border:1px solid var(--light-rule);border-top:2px solid var(--steel-700);display:flex;flex-direction:column;overflow:hidden}
.practice-card.signature{background:var(--steel-800);border-color:var(--rule);border-top:3px solid var(--amber);color:var(--paper)}
.practice-card-media{display:block;aspect-ratio:3/2;border:0;border-bottom:1px solid var(--light-rule);background:#dfe2e2;cursor:pointer}
.practice-card-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(15,23,32,.22));z-index:1;pointer-events:none;transition:background-color .2s}
.practice-card-media:hover::after{background-color:rgba(23,33,43,.12)}
.practice-card-media:focus-visible{outline:3px solid var(--amber-bright);outline-offset:-4px}
.practice-card-media .image-fallback{color:#64717c}
.practice-card.signature .practice-card-media{border-bottom-color:var(--rule);background:#293945}
.practice-card-body{padding:28px 26px;display:flex;flex:1;flex-direction:column;gap:10px}
.practice-card.signature .practice-card-body{padding:30px 32px 32px}
.practice-card.no-image .practice-card-body{padding-top:30px}
.practice-card .tag{font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--amber)}
.practice-card.signature .tag{color:var(--amber-bright)}
.practice-card h2,.practice-card h3{font-family:var(--display);font-weight:600;line-height:1.16}
.practice-card h2{font-size:29px}
.practice-card h3{font-size:23px}
.practice-card p{color:var(--muted);font-size:15px;line-height:1.62;flex:1}
.practice-card.signature p{color:var(--steel-200)}
.practice-card a{color:#966018;font-weight:700;text-decoration:none}
.practice-card.signature a{color:var(--amber-bright)}
.practice-card .practice-card-title{color:inherit}
.practice-card .practice-card-title:hover,.practice-card .practice-card-title:focus-visible{color:#966018;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.practice-card.signature .practice-card-title:hover,.practice-card.signature .practice-card-title:focus-visible{color:var(--amber-bright)}
.practice-card a:hover{text-decoration:underline}
.practice-subcard{margin-top:10px;padding:10px;background:var(--paper-dim);border-left:2px solid var(--amber);display:grid;grid-template-columns:88px minmax(0,1fr);gap:13px;align-items:center;color:var(--steel-900)!important;transition:background-color .2s}
.practice-subcard:hover,.practice-subcard:focus-visible{background:#e3ddd1;text-decoration:none!important}
.practice-subcard-media{aspect-ratio:3/2;border:0;background:#d7d9d7}
.practice-subcard-media .image-fallback{font-size:8px;padding:8px;color:#65717b}
.practice-subcard-copy{min-width:0}
.practice-subcard-copy>span{display:block;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.practice-subcard-copy strong{display:block;font-size:14px;line-height:1.35}
.practice-card.signature .practice-subcard{background:var(--steel-900);border-left-color:var(--amber-bright);color:var(--paper)!important}

/* ── Inner Pages: Bio / About ── */
.section-heading{margin-bottom:38px}
.section-heading h2{font-family:var(--display);font-weight:600;font-size:clamp(30px,3.5vw,42px);line-height:1.12;margin-bottom:12px}
.section-heading p{max-width:700px;color:var(--muted)}
.bio-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:68px;align-items:start}
.about-photo{aspect-ratio:4/5;background:#e5e1d9;border-color:var(--light-rule);position:sticky;top:112px}
.about-photo .image-fallback{color:#69737c}
.credential-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:28px}
.credential{background:#fff;border:1px solid var(--light-rule);padding:18px}
.credential b{display:block;font-family:var(--display);font-size:18px;margin-bottom:4px}
.credential span{display:block;color:var(--muted);font-size:14px;line-height:1.5}

/* ── Inner Pages: Results Grid ── */
.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.case-result{background:#fff;border:1px solid var(--light-rule);border-top:2px solid var(--steel-700);padding:25px 23px}
.case-result .amount{font-family:var(--display);font-weight:600;font-size:31px;line-height:1;color:var(--steel-900)}
.case-result .type{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--amber);margin:8px 0 10px}
.case-result p{font-size:15px;color:var(--muted);line-height:1.58}
.results-disclaimer{margin-top:28px;padding-top:18px;border-top:1px solid var(--light-rule);font-size:13px;color:#68737e;max-width:880px}

/* ── Inner Pages: FAQ ── */
.faq{padding:0 0 70px}
.faq h2{font-family:var(--display);font-weight:700;font-size:clamp(25px,3vw,33px);margin-bottom:22px}
.faq details{background:#fff;border:1px solid var(--light-rule);border-radius:2px;margin-bottom:12px}
.faq summary{cursor:pointer;font-weight:700;font-family:var(--display);font-size:18px;padding:16px 20px;list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center}
.faq summary:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
.faq summary::after{content:"+";color:var(--amber);font-size:24px;font-weight:600;line-height:1;font-family:var(--body)}
.faq details[open] summary::after{content:"\2013"}
.faq .a{padding:0 20px 18px;color:#4a5563;font-size:15.5px}
.standalone-faq{padding:0}
.standalone-faq .faq-links{margin-bottom:30px;color:var(--muted)}
.standalone-faq .faq-links a{color:#8a5918;font-weight:700}

/* ── Homepage FAQ overrides (larger sizing on index.html) ── */
.home-faq{padding-top:76px}
.home-faq summary{font-size:19px;padding:18px 22px}
.home-faq summary::after{font-size:26px}
.home-faq .a{padding:0 22px 20px;font-size:16px}

/* ── Inner Pages: Contact ── */
.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:68px;align-items:start}
.contact-copy p{color:var(--muted);margin-bottom:18px}
.contact-copy .phone-big{font-family:var(--display);font-weight:600;font-size:clamp(30px,4vw,44px);color:var(--steel-900);text-decoration:none;display:inline-block;border-bottom:2px solid var(--amber);margin:5px 0 20px}
.address{line-height:1.8}
.contact-form{background:var(--steel-900);border:1px solid var(--rule);padding:32px;display:grid;gap:16px}
.contact-form label{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--steel-300)}
.contact-form .btn{width:100%}
.form-fine{font-size:12.5px;color:var(--steel-300);line-height:1.5}

/* ── Inner Pages: CTAs & Standalone ── */
.page-cta{margin-top:52px;padding:34px;background:var(--paper-dim);border-left:3px solid var(--amber)}
.page-cta h2{font-family:var(--display);font-weight:600;font-size:28px;margin-bottom:8px}
.page-cta p{color:var(--muted);margin-bottom:18px}
.bottom-cta{background:var(--steel-900);color:var(--paper);text-align:center;padding:68px 24px;border-top:1px solid rgba(255,255,255,.08)}
.bottom-cta h2{font-family:var(--display);font-weight:700;font-size:clamp(28px,3.4vw,40px);margin-bottom:12px}
.bottom-cta p{color:var(--steel-200);max-width:560px;margin:0 auto 26px}
.bottom-cta .phone-big{font-family:var(--display);font-weight:700;font-size:clamp(28px,4vw,42px);color:var(--amber-bright);text-decoration:none;display:block;margin-bottom:22px}
.standalone{padding:80px 0}

/* ── Footer ── */
.footer-logo{display:block;width:150px;height:40px;margin-bottom:12px;opacity:.9}
footer{background:var(--steel-950);color:var(--steel-300);padding:52px 0 96px;font-size:14px}
footer .wrap{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px}
footer h4{font-family:var(--display);color:var(--paper);font-size:18px;margin-bottom:12px}
footer a{color:var(--steel-300);text-decoration:none;display:block;padding:3px 0}
footer a:hover{color:var(--amber-bright)}
.legal{margin-top:36px;padding-top:20px;border-top:1px solid var(--rule);font-size:12.5px;color:#9aa8b5;grid-column:1/-1;line-height:1.7}
.legal-links{grid-column:1/-1;margin-top:16px;font-size:12.5px;color:#9aa8b5}
.legal-links a{display:inline;color:#9aa8b5;padding:0}
.legal-links a:hover{color:var(--amber-bright)}

/* ── Honeypot & Form Status ── */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.form-status{font-size:14px;font-weight:600;min-height:1.5em;margin-top:4px}

/* ── Mobile Call Bar ── */
.callbar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:60;background:var(--amber);color:var(--steel-950);text-align:center;padding:14px 18px calc(14px + env(safe-area-inset-bottom));font-weight:800;font-size:16px;text-decoration:none;letter-spacing:.03em;box-shadow:0 -4px 18px rgba(0,0,0,.3)}

/* ── Responsive ── */
@media(min-width:981px){
  .page-hero-media .image-shell{width:100%;height:clamp(360px,29vw,420px);aspect-ratio:auto}
}
@media(max-width:980px){
  .hero .wrap,.about .wrap,.contact .wrap{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr 1fr}
  .hero{padding-top:72px}
  .hero-media{max-width:620px}.hero-image-frame{min-height:340px}
  .about .about-photo{position:relative;top:0;max-width:360px;justify-self:start}
  .layout{grid-template-columns:1fr;gap:36px}
  .side{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.side > div{margin-bottom:0!important}
  aside.side{position:static}
  .bio-layout,.contact-grid{grid-template-columns:1fr}
  .about-photo{position:relative;top:0;max-width:360px}
  .result-grid{grid-template-columns:repeat(2,1fr)}
  footer .wrap{grid-template-columns:1fr 1fr}
  .page-hero-grid{grid-template-columns:1fr;gap:30px}
  .page-hero-media{margin:0;max-width:620px}
}
@media(max-width:760px){
  body{padding-bottom:58px}
  body.menu-open{overflow:hidden}
  .wrap{padding-left:20px;padding-right:20px}
  header.site .wrap{padding-top:11px;padding-bottom:11px}
  .logo img{width:150px}
  nav.main{display:none;position:absolute;top:100%;left:0;right:0;background:var(--steel-900);flex-direction:column;align-items:stretch;gap:0;padding:8px 20px 18px;border-bottom:1px solid var(--rule);box-shadow:0 12px 22px rgba(0,0,0,.28);max-height:calc(100vh - 96px);overflow-y:auto}
  nav.main.open{display:flex}
  nav.main > a,.nav-dropdown-toggle{padding:13px 4px;border-bottom:1px solid var(--rule);width:100%;min-height:48px;display:flex;align-items:center;justify-content:space-between}
  .nav-dropdown{width:100%}.nav-submenu{display:none;position:static;min-width:0;background:var(--steel-950);border:0;border-bottom:1px solid var(--rule);padding:5px 10px 10px;box-shadow:none;opacity:1;visibility:visible;transform:none}.nav-dropdown.open .nav-submenu{display:block}.nav-submenu a{min-height:44px;padding:10px 14px;border:0;border-left:2px solid var(--rule);white-space:normal}
  .menu-toggle{display:flex}
  .header-cta{display:none}
  .signature-grid,.supporting-grid,.steps,.creds{grid-template-columns:1fr}
  .results-carousel{padding-top:8px}
  .results-viewport{min-height:330px}
  .result-slide{width:calc(100% - 32px);top:18px;min-height:270px}
  .result-slide.is-neighbor{opacity:0;visibility:hidden}
  .carousel-control{top:auto;bottom:0}
  .carousel-control.prev{left:calc(50% - 58px)}
  .carousel-control.next{right:calc(50% - 58px)}
  .callbar{display:block}
  footer .wrap,.side{grid-template-columns:1fr}
  section{padding:64px 0}
  .topbar .wrap{justify-content:center;text-align:center}
  .trust .wrap{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
  .contact .wrap{gap:40px}
  .page-hero{padding-bottom:46px}
  .page-hero .kicker{margin-top:28px}
  .layout{padding:48px 0}
  .bottom-cta{padding:54px 20px}
  .faq{padding-bottom:54px}
}
@media(max-width:480px){
  body{font-size:16px}.topbar{font-size:13px}.topbar .wrap{gap:2px}.topbar span{width:100%}.topbar span:first-child{display:none}nav.main{min-height:calc(100vh - 104px)}
  .hero{padding:54px 0 50px}.hero h1{font-size:40px}.hero p.lede{font-size:17px}.hero-ctas{display:grid}.hero-ctas .btn{width:100%}
  .hero-points{display:grid;gap:8px}.hero-image-frame{min-height:260px}.hero-media figcaption{font-size:17px}
  .trust .wrap{grid-template-columns:1fr}
  section{padding:54px 0}.sec-intro{font-size:17px;margin-bottom:34px}
  .pa.signature{padding:28px 24px}.pa.signature h3{font-size:26px}
  form{padding:24px 20px}
  .page-hero h1{font-size:34px}.page-hero p.lede{font-size:17px}
  .hero-ctas{display:grid}.hero-ctas .btn{width:100%}
  article h2{margin-top:32px}
  .crumbs{font-size:12.5px}
  .bottom-cta .btn{width:100%}
  .standalone{padding:54px 0}
  .credential-grid,.signature-grid,.supporting-grid,.result-grid{grid-template-columns:1fr}
  .practice-card.signature .practice-card-body{padding:28px 24px}
  .contact-form{padding:24px 20px}
  .page-cta{padding:26px 22px}
}
@media(prefers-reduced-motion:reduce){.result-slide{transition:none}}
