/* Schwartsman Law Group — design system. Zero external fonts, zero frameworks: pure speed. */
:root{
  --navy:#0f2233; --navy-2:#16324a; --ink:#22303c; --body:#3c4a56;
  --gold:#8a6520; --gold-2:#d8b25c; --gold-soft:#f3e8cf; /* audit X1: gold darkened for WCAG AA on white/cream; gold-2 stays for navy backgrounds */
  --cream:#faf8f3; --paper:#ffffff; --line:#e7e1d4; --line-2:#d8d0bf;
  --serif:"Palatino Linotype",Palatino,"Book Antiqua",Georgia,"Times New Roman",serif;
  --sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --maxw:min(1400px,94vw); --r:14px; --shadow:0 10px 40px -12px rgba(15,34,51,.18);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);font-size:1.0625rem;line-height:1.7;color:var(--body);background:var(--cream)}
img,svg,iframe{max-width:100%;height:auto}
a{color:var(--navy);text-decoration-color:var(--gold-2);text-underline-offset:3px}
a:hover{color:var(--gold)}
h1,h2,h3,h4,h5{font-family:var(--serif);color:var(--navy);line-height:1.22;font-weight:700;text-wrap:balance}
h1{font-size:clamp(2rem,4.4vw,3.3rem);letter-spacing:-.01em}
h2{font-size:clamp(1.55rem,3vw,2.25rem)}
h3{font-size:clamp(1.25rem,2.2vw,1.5rem)}
.h3{font-size:clamp(1.25rem,2.2vw,1.5rem)}
h4{font-size:1.15rem}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(1rem,4vw,2rem)}
.eyebrow{font-family:var(--sans);font-size:.78rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:.7rem;display:block}
.lead{font-size:1.2rem;color:var(--ink)}
section{padding:clamp(3rem,7vw,5.5rem) 0}
.center{text-align:center}
.mt-1{margin-top:1rem}.mt-2{margin-top:2rem}

/* skip link + a11y */
.skip{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:.6rem 1rem;z-index:200}
.skip:focus{left:0}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* Header */
.topbar{background:var(--navy);color:#cfd9e2;font-size:.85rem}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:38px}
.topbar a{color:#e9eef3;text-decoration:none}
.topbar a:hover{color:var(--gold-2)}
.topbar .tb-r{display:flex;gap:1.4rem;white-space:nowrap}
.site-head-wrap{position:sticky;top:0;z-index:100}
header.site{background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);transition:box-shadow .2s}
header.site.scrolled{box-shadow:0 4px 24px -10px rgba(15,34,51,.25)}
.nav-row{display:flex;align-items:center;justify-content:space-between;gap:1.1rem;min-height:84px}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none}
.brand svg{flex:none;width:52px;height:52px;aspect-ratio:1/1}
.brand .bn{font-family:var(--serif);font-weight:700;font-size:1.18rem;color:var(--navy);line-height:1.1;letter-spacing:.01em}
.brand .bt{font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}
nav.main ul{list-style:none;display:flex;gap:.2rem;align-items:center}
nav.main>ul>li{position:relative}
nav.main a{display:block;padding:.6rem .8rem;text-decoration:none;font-weight:600;font-size:.95rem;color:var(--ink);border-radius:8px}
nav.main a:hover,nav.main a[aria-current=page]{color:var(--navy);background:var(--gold-soft)}
nav.main .sub{position:absolute;left:0;top:100%;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);min-width:280px;padding:.5rem;display:none;flex-direction:column;gap:0}
nav.main li:hover>.sub,nav.main li:focus-within>.sub{display:flex}
nav.main .sub{text-align:left;align-items:stretch}
nav.main .sub li{width:100%}
nav.main .sub a{font-weight:500;padding:.55rem .8rem;display:block;text-align:left;justify-content:flex-start}
.cta-btn,.btn{display:inline-block;background:var(--gold);color:#fff!important;font-weight:700;padding:.78rem 1.5rem;border-radius:999px;text-decoration:none;border:2px solid var(--gold);transition:.18s;white-space:nowrap;cursor:pointer;font-size:.98rem}
.cta-btn:hover,.btn:hover{background:var(--navy);border-color:var(--navy)}
.btn-ghost{background:transparent;color:var(--navy)!important;border-color:var(--navy-2)}
.btn-ghost:hover{background:var(--navy);color:#fff!important}
.btn-light{background:#fff;color:var(--navy)!important;border-color:#fff}
.btn-light:hover{background:var(--gold);border-color:var(--gold);color:#fff!important}
.hamb{display:none;background:none;border:0;cursor:pointer;padding:.5rem}
.hamb span{display:block;width:26px;height:2.5px;background:var(--navy);margin:5.5px 0;border-radius:2px;transition:.25s}

/* Hero */
.hero{background:linear-gradient(160deg,var(--navy) 0%,var(--navy-2) 60%,#1d4260 100%);color:#e8eef4;position:relative;overflow:hidden;padding:clamp(4rem,9vw,7.5rem) 0}
.hero::after{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='420' viewBox='0 0 420 420'%3E%3Cg fill='none' stroke='%23c9a22722' stroke-width='1'%3E%3Ccircle cx='210' cy='210' r='140'/%3E%3Ccircle cx='210' cy='210' r='200'/%3E%3Ccircle cx='210' cy='210' r='260'/%3E%3C/g%3E%3C/svg%3E") right -80px top -80px no-repeat;pointer-events:none}
.hero h1{color:#fff}
.hero .lead{color:#c9d6e0;max-width:640px}
.hero .hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:3rem;align-items:center;position:relative;z-index:1}.hero .hero-grid>*{min-width:0}.hero h1,.hero .lead,.hero .eyebrow,.hero .actions,.hero .trust,.hero .prior-results{overflow-wrap:anywhere;word-wrap:break-word;max-width:100%}
.hero .actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem}
.hero .trust{margin-top:2.2rem;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .8rem;color:#c9d6e0;font-size:.95rem;min-width:0;max-width:100%}.hero .trust>*{min-width:0;overflow-wrap:anywhere}
.stars{color:var(--gold-2);letter-spacing:.15em;font-size:1.05rem}
.hero-art{justify-self:center;align-self:center;width:100%;max-width:min(288px,100%)}
.hero-art-pic{display:block;width:100%;max-width:100%;margin:0 auto;aspect-ratio:583/743}
.hero-art-pic img{display:block;width:100%;height:100%;border-radius:var(--r,12px);object-fit:cover;object-position:center center;background:#0f2233}

/* Stats */
.stats{background:var(--paper);border-block:1px solid var(--line);padding:2.2rem 0}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;text-align:center}
.stats .n{font-family:var(--serif);font-size:2.3rem;font-weight:700;color:var(--navy)}
.stats .n em{color:var(--gold);font-style:normal}
.stats .l{font-size:.9rem;color:var(--body)}

/* Cards */
.grid{display:grid;gap:1.5rem}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:1.8rem;transition:.2s;position:relative;display:flex;flex-direction:column}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--gold-2)}
.card .icon{width:52px;height:52px;border-radius:12px;background:var(--gold-soft);display:grid;place-items:center;margin-bottom:1.1rem;color:var(--gold)}
.card h3 a{text-decoration:none}
.card h3 a::after{content:"";position:absolute;inset:0}
.card p{margin-top:.6rem;font-size:.97rem;flex:1}
.card .more{margin-top:1rem;font-weight:700;font-size:.9rem;color:var(--gold);letter-spacing:.04em}

/* Split sections */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.badge-list{list-style:none;margin-top:1.4rem;display:grid;gap:.9rem}
.badge-list li{display:flex;gap:.85rem;align-items:flex-start}
.badge-list .bi{flex:none;width:40px;height:40px;border-radius:10px;background:var(--gold-soft);color:var(--gold);display:grid;place-items:center;margin-top:.15rem}
.badge-list b{color:var(--navy);display:block;font-family:var(--serif);font-size:1.08rem}

/* Quote / testimonials */
.quoteband{background:var(--navy);color:#dde6ee;position:relative}
.quoteband h2{color:#fff}
.t-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.4rem}
.t-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:var(--r);padding:1.7rem;font-size:.97rem}
.t-card .stars{display:block;margin-bottom:.8rem}
.t-card .who{margin-top:1rem;font-weight:700;color:#fff;font-family:var(--serif)}

/* FAQ */
.faq details{background:var(--paper);border:1px solid var(--line);border-radius:12px;margin-bottom:.9rem;overflow:hidden}
.faq summary{cursor:pointer;padding:1.1rem 1.4rem;font-weight:700;color:var(--navy);font-family:var(--serif);font-size:1.1rem;list-style:none;position:relative;padding-right:3rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:1.3rem;top:50%;transform:translateY(-50%);color:var(--gold);font-size:1.5rem;font-weight:400;transition:.2s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details>div{padding:0 1.4rem 1.3rem}

/* CTA band */
.ctaband{background:linear-gradient(120deg,var(--gold) 0%,#a67a24 100%);color:#fff;text-align:center;border-radius:calc(var(--r) + 6px);padding:clamp(2.5rem,6vw,4rem);position:relative;overflow:hidden}
.ctaband h2{color:#fff}
.ctaband p{max-width:560px;margin:.8rem auto 1.6rem;color:#fdf6e6}
.ctaband .phone{font-family:var(--serif);font-size:1.5rem;font-weight:700;color:#fff;text-decoration:none;display:inline-block;margin-top:1rem}

/* Page hero (interior) */
.page-hero{background:linear-gradient(160deg,var(--navy),var(--navy-2));color:#dbe5ee;padding:clamp(2.6rem,6vw,4.2rem) 0}
.page-hero h1{color:#fff;max-width:900px}
.page-hero .lead{color:#c2d0dc;max-width:760px;margin-top:.8rem}
.crumbs{font-size:.85rem;margin-bottom:1.1rem;color:#9fb2c2}
.crumbs a{color:#cdd9e4;text-decoration:none}
.crumbs a:hover{color:var(--gold-2)}
.crumbs span[aria-current]{color:#fff}

/* Article / prose */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.prose>*+*{margin-top:1.1rem}
.prose h2{margin-top:2.4rem}
.prose h3,.prose h4{margin-top:2rem}
.prose ul,.prose ol{padding-left:1.4rem}
.prose li+li{margin-top:.45rem}
.prose img{border-radius:var(--r);box-shadow:var(--shadow)}
.prose blockquote{border-left:4px solid var(--gold);padding:.6rem 0 .6rem 1.3rem;font-family:var(--serif);font-size:1.15rem;color:var(--navy);background:var(--gold-soft);border-radius:0 10px 10px 0}
.prose table{width:100%;border-collapse:collapse;font-size:.95rem}
.prose th,.prose td{border:1px solid var(--line-2);padding:.6rem .8rem;text-align:left}
.prose th{background:var(--gold-soft);color:var(--navy)}
.prose iframe{border:0;border-radius:var(--r)}
aside .panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:1.5rem;margin-bottom:1.4rem}
aside .panel h3,aside .panel .h3{font-size:1.15rem;margin-bottom:.9rem}
aside .panel ul{list-style:none}
aside .panel li{border-bottom:1px solid var(--line)}
aside .panel li:last-child{border-bottom:0}
aside .panel li a{display:block;padding:.55rem 0;text-decoration:none;font-size:.95rem;font-weight:600}
aside .panel li a[aria-current=page]{color:var(--gold)}
.panel.contactcard{background:var(--navy);color:#d6e1ea;border:0}
.panel.contactcard h3{color:#fff}
.panel.contactcard a.tel{font-family:var(--serif);font-size:1.4rem;color:var(--gold-2);text-decoration:none;font-weight:700}
.panel.contactcard .btn{margin-top:1rem;width:100%;text-align:center}
.sticky{position:sticky;top:100px}

/* Blog cards */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}
.post-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:.2s;position:relative}
.post-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.post-card picture{display:block;background:var(--paper,#f6f4ef)}.post-card img{width:100%;aspect-ratio:16/10;object-fit:cover;background:var(--paper,#f6f4ef)}
.post-card .pc-b{padding:1.3rem;display:flex;flex-direction:column;flex:1}
.post-card time{font-size:.8rem;color:var(--gold);font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.post-card h3{font-size:1.12rem;margin-top:.5rem;flex:1}
.post-card h3 a{text-decoration:none}
.post-card h3 a::after{content:"";position:absolute;inset:0}
.pager{display:flex;gap:.4rem;justify-content:center;margin-top:2.5rem;flex-wrap:wrap}
.pager a,.pager span{min-width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line-2);border-radius:10px;text-decoration:none;font-weight:600;padding:0 .6rem}
.pager span[aria-current],.pager a:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.meta-row{display:flex;gap:1rem;align-items:center;font-size:.9rem;color:var(--body);margin-top:1rem}
.authorbox{display:flex;gap:1.2rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:1.5rem;margin-top:3rem;align-items:center}
.authorbox .av{flex:none;width:72px;height:72px;border-radius:50%;background:var(--navy);color:var(--gold-2);display:grid;place-items:center;font-family:var(--serif);font-size:1.6rem;font-weight:700}

/* Forms */
form.lead-form{display:grid;gap:1rem}
.lead-form label{font-weight:600;color:var(--navy);font-size:.92rem}
.lead-form input,.lead-form select,.lead-form textarea{width:100%;padding:.85rem 1rem;border:1.5px solid var(--line-2);border-radius:10px;font:inherit;background:#fff;margin-top:.35rem}
.lead-form input:focus,.lead-form textarea:focus,.lead-form select:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px rgba(185,138,47,.18)}
.lead-form .row2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-note{font-size:.83rem;color:#5b6975}

/* Offices */
.office-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.office{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:1.7rem}
.office h3{display:flex;align-items:center;gap:.5rem}
.office address{font-style:normal;margin:.8rem 0;line-height:1.6}
.office a.map{font-size:.9rem;font-weight:700}

/* Footer */
footer.site{background:var(--navy);color:#aebccb;font-size:.95rem;margin-top:4rem}
footer.site .cols{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr);gap:2.5rem;padding:3.5rem 0 2.5rem}footer.site .cols>*{min-width:0}footer.site a,footer.site li,footer.site p,footer.site .fh{overflow-wrap:anywhere;word-wrap:break-word;max-width:100%}
footer.site h4,footer.site .fh{color:#fff;font-family:var(--sans);font-size:.82rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:1.1rem;font-weight:700}
footer.site ul{list-style:none}
footer.site li{margin-bottom:.55rem}
footer.site a{color:#c8d4df;text-decoration:none}
footer.site a:hover{color:var(--gold-2)}
footer.site .fbrand p{margin-top:1rem;max-width:34ch}
.footbar{border-top:1px solid rgba(255,255,255,.12);padding:1.3rem 0;font-size:.83rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.disclaimer{font-size:.8rem;color:#8298ab;padding-bottom:1.6rem}

/* Utility banners */
.notice{background:var(--gold-soft);border:1px solid var(--gold-2);border-radius:12px;padding:1rem 1.3rem;font-size:.95rem}

/* Responsive */
@media (max-width:1020px){
  .grid-3,.post-grid,.office-grid,.t-grid{grid-template-columns:repeat(2,1fr)}
  .hero .hero-grid{grid-template-columns:minmax(0,1fr)}
  .hero-art{display:none}
  .layout{grid-template-columns:minmax(0,1fr)}
  .sticky{position:static}
  footer.site .cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.4rem}
}
@media (max-width:880px){
  .topbar .tb-l{display:none}
  .hamb{display:block}
  nav.main{position:fixed;inset:0;top:0;background:var(--paper);display:none;overflow:auto;z-index:150;padding:5.5rem 1.5rem 2rem}
  body.nav-open nav.main{display:block}
  body.nav-open .hamb{position:relative;z-index:160}
  body.nav-open .hamb span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  body.nav-open .hamb span:nth-child(2){opacity:0}
  body.nav-open .hamb span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  nav.main ul{flex-direction:column;align-items:stretch;gap:0}
  nav.main a{font-size:1.15rem;padding:.9rem .4rem;border-bottom:1px solid var(--line)}
  nav.main .sub{display:flex;position:static;border:0;box-shadow:none;padding:0 0 0 1rem;min-width:0}
  nav.main .sub a{font-size:1rem}
  .nav-cta{display:none}
  .stats .wrap{grid-template-columns:repeat(2,1fr);gap:1.4rem}
  .split,.grid-2{grid-template-columns:1fr}
}
@media (max-width:600px){
  .grid-3,.post-grid,.office-grid,.t-grid{grid-template-columns:1fr}
  .lead-form .row2{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none!important;scroll-behavior:auto!important}
}

/* ===== v2 additions: i18n, consent, a11y, mobile ===== */
body{overflow-x:clip}
a,button{-webkit-tap-highlight-color:rgba(185,138,47,.25)}
.prose,.post-grid,.faq{content-visibility:auto;contain-intrinsic-size:auto 600px}

/* language switcher */
.langsw{display:flex;gap:.15rem;align-items:center;margin-left:.8rem}
.langsw a{padding:.25rem .5rem;border-radius:7px;text-decoration:none;color:#e9eef3;font-size:.8rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}
.langsw a[aria-current=true]{background:var(--gold);color:#fff}
.langsw a:hover{background:rgba(255,255,255,.15);color:#fff}

/* cookie banner */
#slg-cookie{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:300;max-width:520px;margin:auto;background:var(--paper);border:1px solid var(--line-2);border-radius:16px;box-shadow:0 18px 60px -12px rgba(15,34,51,.45);animation:ckin .3s ease}
@keyframes ckin{from{transform:translateY(20px);opacity:0}to{transform:none;opacity:1}}
#slg-cookie .ck-in{padding:1.3rem 1.4rem}
#slg-cookie h3{font-size:1.1rem;margin-bottom:.4rem}
#slg-cookie p{font-size:.88rem;line-height:1.55}
#slg-cookie .ck-btns{display:flex;gap:.55rem;margin-top:.9rem;flex-wrap:wrap}
#slg-cookie .btn{padding:.55rem 1.1rem;font-size:.88rem}
#slg-cookie .ck-opts{margin-top:.8rem;display:grid;gap:.55rem}
#slg-cookie .ck-opts label{display:grid;grid-template-columns:auto auto 1fr;gap:.5rem;align-items:baseline;font-size:.85rem;background:var(--cream);border:1px solid var(--line);border-radius:10px;padding:.55rem .7rem}
#slg-cookie .ck-opts b{color:var(--navy)}
#slg-cookie .ck-opts span{grid-column:2/4;color:var(--body)}
#slg-cookie .ck-opts input{width:1.05rem;height:1.05rem;accent-color:var(--gold)}

/* accessibility widget */
#slg-a11y-btn{position:fixed;left:1rem;bottom:1rem;z-index:290;width:52px;height:52px;border-radius:50%;background:var(--navy);color:#fff;border:2px solid var(--gold-2);cursor:pointer;display:grid;place-items:center;box-shadow:0 8px 26px -8px rgba(15,34,51,.5)}
#slg-a11y-btn:hover{background:var(--gold)}
#slg-a11y-panel{position:fixed;left:1rem;bottom:5.2rem;z-index:295;width:min(320px,calc(100vw - 2rem));background:var(--paper);border:1px solid var(--line-2);border-radius:16px;box-shadow:0 18px 60px -12px rgba(15,34,51,.45);padding:1.2rem 1.3rem}
#slg-a11y-panel h3{font-size:1.05rem;margin-bottom:.7rem}
.ay-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.45rem 0;border-bottom:1px solid var(--line);font-size:.92rem;font-weight:600;color:var(--ink)}
.ay-row input{width:1.5rem;height:1.5rem;accent-color:var(--gold)}
.ay-size{display:flex;gap:.5rem;align-items:center}
.ay-size button{width:34px;height:34px;border-radius:8px;border:1.5px solid var(--line-2);background:#fff;font-size:1.2rem;cursor:pointer;color:var(--navy)}
.ay-size button:hover{border-color:var(--gold)}

/* a11y modes */
html[data-a11y-contrast]{--navy:#000a14;--navy-2:#001628;--ink:#000;--body:#111;--gold:#8a6200;--gold-2:#8a6200;--cream:#fff;--paper:#fff;--line:#666;--line-2:#444}
html[data-a11y-contrast] .hero,html[data-a11y-contrast] .page-hero,html[data-a11y-contrast] .quoteband{background:#000a14}
html[data-a11y-contrast] img{filter:contrast(1.1)}
html[data-a11y-underline] a{text-decoration:underline!important}
html[data-a11y-font] body,html[data-a11y-font] h1,html[data-a11y-font] h2,html[data-a11y-font] h3,html[data-a11y-font] h4{font-family:Verdana,Arial,sans-serif!important;letter-spacing:.01em}
html[data-a11y-spacing] body{letter-spacing:.08em;word-spacing:.16em;line-height:1.95}
html[data-a11y-motion] *,html[data-a11y-motion] *::before,html[data-a11y-motion] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}

/* mobile fine-tuning */
@media (max-width:880px){
  .nav-row{min-height:64px}
  nav.main a{padding:1rem .4rem;min-height:48px}
  .btn,.cta-btn{padding:.9rem 1.6rem;min-height:48px}
  .topbar .tb-r a{padding:.4rem 0;display:inline-flex;align-items:center;gap:.3rem}
  .langsw{margin-left:0}
  .hero{padding:3.2rem 0}
  section{padding:2.6rem 0}
  .wrap{padding:0 1.05rem}
  .authorbox{flex-direction:column;text-align:center}
  #slg-cookie{left:.6rem;right:.6rem;bottom:.6rem}
}
@media (max-width:600px){
  h1{font-size:1.85rem}
  .lead{font-size:1.06rem}
  .stats .n{font-size:1.7rem}
  .ctaband{padding:1.8rem 1.2rem}
  .office{padding:1.3rem}
  .prose img{width:100%}
  table{display:block;overflow-x:auto}
}
/* iOS input zoom prevention */
input,select,textarea{font-size:16px}

/* ===== v3: nav alignment fix + guides + portal ===== */
nav.main a{white-space:nowrap}
nav.main>ul{flex-wrap:nowrap}
@media (min-width:881px) and (max-width:1180px){
  nav.main a{font-size:.86rem;padding:.55rem .55rem}
  .brand .bn{font-size:1.02rem}
  .cta-btn.nav-cta{padding:.65rem 1.1rem;font-size:.88rem}
}
.guide-toc{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:1.2rem 1.4rem;margin:1.4rem 0}
.guide-toc h2{font-size:1.05rem;margin-bottom:.6rem}
.guide-toc ol{padding-left:1.3rem;font-size:.95rem;columns:2;column-gap:2rem}
.guide-toc li{margin-bottom:.35rem;break-inside:avoid}
.keybox{background:var(--gold-soft);border:1px solid var(--gold-2);border-radius:12px;padding:1.2rem 1.4rem;margin:1.4rem 0}
.keybox h2,.keybox h3{font-size:1.05rem;margin-bottom:.6rem}
.keybox ul{padding-left:1.2rem;font-size:.95rem}
@media (max-width:700px){.guide-toc ol{columns:1}}

/* ===== v4: search ===== */
.searchbtn{background:none;border:1.5px solid var(--line-2);border-radius:10px;width:42px;height:42px;display:grid;place-items:center;cursor:pointer;color:var(--navy);flex:none}
.searchbtn:hover{border-color:var(--gold);color:var(--gold)}
#slg-search{position:fixed;inset:0;background:rgba(15,34,51,.55);backdrop-filter:blur(3px);z-index:400;display:grid;place-items:start center;padding:8vh 1rem 1rem}
.srch-box{background:var(--paper);border-radius:16px;width:min(680px,100%);max-height:75vh;display:flex;flex-direction:column;box-shadow:0 30px 80px -20px rgba(0,0,0,.5);overflow:hidden}
.srch-row{display:flex;gap:.5rem;padding:1rem;border-bottom:1px solid var(--line)}
.srch-row input{flex:1;padding:.75rem 1rem;border:1.5px solid var(--line-2);border-radius:10px;font:inherit;font-size:16px}
.srch-row input:focus{border-color:var(--gold);outline:none}
.srch-close{background:none;border:0;font-size:1.2rem;cursor:pointer;color:var(--navy);width:44px;border-radius:10px}
.srch-close:hover{background:var(--gold-soft)}
.srch-out{overflow:auto;padding:.6rem}
.srch-none{padding:1rem;color:#5b6975;font-size:.92rem}
.srch-list{list-style:none;margin:0;padding:0}
.srch-list li+li{border-top:1px solid var(--line)}
.srch-list a{display:block;padding:.7rem .8rem;text-decoration:none;border-radius:8px}
.srch-list a:hover{background:var(--gold-soft)}
.srch-list b{color:var(--navy);font-family:var(--serif)}
.srch-sec{color:var(--gold);font-size:.85rem;margin-left:.4rem;font-weight:600}
.srch-x{display:block;font-size:.83rem;color:var(--body);margin-top:.15rem}
.srch-target{outline:3px solid var(--gold);outline-offset:6px;border-radius:4px;transition:outline-color 1s}
@media (max-width:880px){.searchbtn{width:44px;height:44px;margin-left:auto}}

/* ===== v5: SLG brand lockup ===== */
.brand{gap:.8rem}
.brand .bwrap{display:flex;flex-direction:column;justify-content:center;white-space:nowrap}
.brand .bn{font-family:var(--serif);font-weight:700;font-size:1.34rem;color:var(--navy);line-height:1;letter-spacing:.015em}
.brand .bg{display:block;color:var(--gold);font-size:.64rem;font-weight:700;letter-spacing:.46em;margin-top:.3rem;font-family:var(--sans)}
.brand-f .bn{color:#fff}
.brand-f{display:inline-flex;align-items:center;text-decoration:none}
@media (max-width:880px){
  .brand svg{width:44px;height:44px}
  .brand .bn{font-size:1.12rem}
  .brand .bg{letter-spacing:.34em;font-size:.6rem}
}

/* social icons */
.socialrow{display:flex;gap:.9rem;margin-top:1rem}
.socialrow a{color:#c8d4df;display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.18);border-radius:10px}
.socialrow a:hover{color:#fff;border-color:var(--gold-2);background:rgba(216,178,92,.12)}

/* ===== v6: chat assistant ===== */
#slg-chat-btn{position:fixed;right:1rem;bottom:1rem;z-index:290;display:flex;align-items:center;gap:.55rem;background:var(--navy);color:#fff;border:2px solid var(--gold-2);border-radius:999px;padding:.7rem 1.2rem;cursor:pointer;font-weight:700;font-size:.92rem;box-shadow:0 8px 26px -8px rgba(15,34,51,.5)}
#slg-chat-btn:hover{background:var(--gold)}
#slg-chat{position:fixed;right:1rem;bottom:4.8rem;z-index:295;width:min(390px,calc(100vw - 2rem));height:min(560px,calc(100vh - 8rem));background:var(--paper);border:1px solid var(--line-2);border-radius:18px;box-shadow:0 24px 70px -18px rgba(15,34,51,.55);display:flex;flex-direction:column;overflow:hidden}
.cb-head{display:flex;align-items:center;gap:.6rem;background:var(--navy);color:#fff;padding:.85rem 1rem;font-family:var(--serif)}
.cb-dot{width:9px;height:9px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px #4ade80}
.cb-x{margin-left:auto;background:none;border:0;color:#cfd9e2;font-size:1rem;cursor:pointer;width:34px;height:34px;border-radius:8px}
.cb-x:hover{background:rgba(255,255,255,.15);color:#fff}
.cb-log{flex:1;overflow:auto;padding:1rem;display:flex;flex-direction:column;gap:.55rem;background:var(--cream)}
.cb-msg{max-width:85%;padding:.6rem .85rem;border-radius:14px;font-size:.92rem;line-height:1.5}
.cb-bot{background:var(--paper);border:1px solid var(--line);border-bottom-left-radius:4px;align-self:flex-start}
.cb-me{background:var(--navy);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}
.cb-quick{display:flex;flex-wrap:wrap;gap:.4rem;align-self:flex-start;max-width:95%}
.cb-quick button{background:var(--gold-soft);border:1px solid var(--gold-2);color:var(--navy);border-radius:999px;padding:.42rem .8rem;font-size:.82rem;cursor:pointer;font-weight:600}
.cb-quick button:hover{background:var(--gold);color:#fff}
.cb-cta{display:block;background:var(--gold);color:#fff!important;text-decoration:none;font-weight:700;border-radius:10px;padding:.6rem .9rem;text-align:center;margin:.25rem 0;font-size:.9rem}
.cb-cta2{background:var(--navy)}
.cb-cta:hover{opacity:.92}
.cb-note{font-size:.68rem;color:#8a97a3;padding:.4rem 1rem;border-top:1px solid var(--line);background:var(--paper)}
.cb-row{display:flex;gap:.5rem;padding:.7rem;background:var(--paper)}
.cb-row input{flex:1;padding:.65rem .9rem;border:1.5px solid var(--line-2);border-radius:10px;font:inherit;font-size:16px}
.cb-row input:focus{border-color:var(--gold);outline:none}
.cb-send{background:var(--gold);color:#fff;border:0;border-radius:10px;padding:0 1.1rem;font-weight:700;cursor:pointer}
.cb-typing{letter-spacing:.2em;animation:cbty 1s infinite}
@keyframes cbty{50%{opacity:.3}}
@media (max-width:600px){#slg-chat{right:.5rem;bottom:4.6rem}#slg-chat-btn span{display:none}#slg-chat-btn{padding:.85rem}}

/* ===== v7: color-science + fluid polish =====
   Palette follows 60-30-10 (cream 60% / navy 30% / gold 10%) with WCAG-verified pairs:
   navy-on-cream 15.3:1 AAA · body-on-cream 8.6:1 AAA · gold-on-navy 8.1:1 AAA.
   Gold as SMALL text on light backgrounds was 2.9:1 -> replaced with --gold-text (5.1:1 AA+). */
:root{--gold-text:#8a681f;--maxw-wide:94vw}
.eyebrow{color:var(--gold-text)}
.card .more,.post-card time,.meta-row time,.srch-sec{color:var(--gold-text)}
a{text-decoration-color:#c9a75f}
.brand .bg{color:var(--gold-text)}
h2[id],h3[id]{scroll-margin-top:96px}
@media (min-width:1600px){.wrap{max-width:var(--maxw-wide)}}
@media (max-width:360px){
  .brand .bn{font-size:1rem}.brand svg{width:38px;height:38px}
  h1{font-size:1.6rem}.btn,.cta-btn{padding:.8rem 1.2rem;font-size:.9rem}
  .stats .wrap{grid-template-columns:1fr 1fr;gap:1rem}
}
img{height:auto}
.hero .actions .btn{min-width:44%;text-align:center}
@media (hover:none){.card:hover{transform:none}}

/* ads landing pages */
.lp-hero{background:linear-gradient(150deg,var(--navy) 0%,var(--navy-2) 70%,#1d4260 100%);color:#e8eef4;padding:clamp(2.5rem,6vw,4.5rem) 0}
.lp-hero h1{color:#fff;font-size:clamp(1.7rem,4vw,2.7rem)}
.lp-hero .lead{color:#c9d6e0}
.lp-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(1.5rem,4vw,3rem);align-items:start}
.lp-form{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:1.6rem;box-shadow:var(--shadow)}
.lp-form h2{font-size:1.25rem}
.lp-points{list-style:none;display:grid;gap:.7rem;margin-top:1.2rem}
.lp-points li{display:flex;gap:.6rem;align-items:flex-start;color:#dbe5ee}
.lp-points svg{flex:none;color:var(--gold-2);margin-top:.15rem}
.lp-trust{display:flex;gap:1.4rem;flex-wrap:wrap;margin-top:1.6rem;color:#c9d6e0;font-size:.9rem;align-items:center}
.lp-steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.lp-steps div{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:1.3rem;position:relative}
.lp-steps div::before{counter-increment:s;content:counter(s);position:absolute;top:-14px;left:1.1rem;width:30px;height:30px;border-radius:50%;background:var(--gold);color:#fff;display:grid;place-items:center;font-weight:700;font-size:.9rem}
.lp-phone-strip{position:sticky;bottom:0;z-index:120;background:var(--navy);padding:.7rem 1rem;display:none;text-align:center}
.lp-phone-strip a{color:#fff;font-weight:700;text-decoration:none;font-size:1.05rem}
@media (max-width:880px){.lp-grid{grid-template-columns:1fr}.lp-steps{grid-template-columns:1fr}.lp-phone-strip{display:block}}

/* connect / QR card */
.qr-card{display:grid;grid-template-columns:auto 1fr;gap:2rem;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:2rem;align-items:center;max-width:720px}
.qr-card img{width:220px;height:220px;image-rendering:pixelated;border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff}
@media (max-width:640px){.qr-card{grid-template-columns:1fr;text-align:center;justify-items:center}}

/* ===== v8: prominent 24/7 chat launcher ===== */
#slg-chat-btn{display:flex;align-items:center;gap:.7rem;padding:.65rem 1.3rem .65rem 1rem;border-radius:999px;background:linear-gradient(135deg,#16324a,#0f2233);border:2px solid var(--gold-2);box-shadow:0 10px 32px -8px rgba(15,34,51,.6)}
#slg-chat-btn:hover{background:var(--gold);border-color:var(--gold)}
#slg-chat-btn .cb-btn-txt{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15;text-align:left}
#slg-chat-btn .cb-btn-txt b{font-size:.95rem}
#slg-chat-btn .cb-btn-txt small{font-size:.68rem;font-weight:600;color:#d8b25c}
#slg-chat-btn:hover .cb-btn-txt small{color:#fff}
.cb-btn-dot{width:10px;height:10px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 0 rgba(74,222,128,.7);animation:cbpulse 2s infinite;flex:none}
@keyframes cbpulse{0%{box-shadow:0 0 0 0 rgba(74,222,128,.7)}70%{box-shadow:0 0 0 9px rgba(74,222,128,0)}100%{box-shadow:0 0 0 0 rgba(74,222,128,0)}}
#slg-chat-teaser{position:fixed;right:1rem;bottom:5.6rem;z-index:294;display:flex;gap:.7rem;align-items:center;background:var(--paper);border:1px solid var(--line-2);border-radius:16px;padding:.9rem 2.2rem .9rem .9rem;box-shadow:0 18px 50px -14px rgba(15,34,51,.5);max-width:300px;cursor:pointer;animation:ckin .35s ease}
#slg-chat-teaser p{font-size:.9rem;line-height:1.45;color:var(--ink)}
#slg-chat-teaser .cb-teaser-x{position:absolute;top:.3rem;right:.4rem;background:none;border:0;color:#8a97a3;cursor:pointer;font-size:.85rem;padding:.2rem}
.cb-avatar{width:38px;height:38px;border-radius:50%;background:var(--gold);color:#fff;display:grid;place-items:center;font-weight:700;font-family:var(--serif);font-size:1.1rem;flex:none}
.cb-head .cb-avatar{width:34px;height:34px;font-size:1rem}
.cb-head-t{display:flex;flex-direction:column;line-height:1.2}
.cb-head-t b{font-size:.95rem}
.cb-status{font-size:.7rem;color:#a9e5b8;display:flex;align-items:center;gap:.35rem}
.cb-sid{margin-left:auto;font-size:.62rem;color:#8aa0b4;font-family:ui-monospace,Consolas,monospace;letter-spacing:.03em}
.cb-x{margin-left:.4rem}
.cb-sys{align-self:center;font-size:.72rem;color:#5b6975;background:var(--gold-soft);border-radius:99px;padding:.2rem .8rem}
@media (max-width:600px){#slg-chat-btn .cb-btn-txt small{display:none}#slg-chat-teaser{max-width:250px}}

/* ===== v9: live-presence launcher ===== */
#slg-chat-btn .cb-btn-av{position:relative;width:40px;height:40px;border-radius:50%;background:var(--gold);color:#fff;display:grid;place-items:center;font-weight:700;font-family:var(--serif);font-size:1.15rem;flex:none}
#slg-chat-btn .cb-btn-av .cb-btn-dot{position:absolute;right:-2px;bottom:-2px;border:2px solid #0f2233}

/* ---------- Save-our-contact QR popover (topbar) ---------- */
.vcard-pop{position:relative;display:inline-block}
.vcard-pop summary{list-style:none;cursor:pointer;color:#0f2233;background:var(--gold,#c9a227);display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;border-radius:999px;font-weight:600;font-size:.85rem;user-select:none;box-shadow:0 2px 8px rgba(15,34,51,.18)}
.vcard-pop summary::-webkit-details-marker{display:none}
.vcard-pop summary:hover{filter:brightness(1.08);color:#0f2233}
.vcard-pop[open] summary{filter:brightness(1.05);color:#0f2233}
.vcard-pane{position:absolute;right:0;top:calc(100% + 8px);z-index:400;background:#fff;color:var(--ink,#1c2b36);border:1px solid #e3ddd2;border-radius:12px;box-shadow:0 12px 34px rgba(15,34,51,.22);padding:1rem;width:min(280px,86vw);max-width:min(280px,86vw);text-align:center;white-space:normal;overflow-wrap:anywhere;word-wrap:break-word;box-sizing:border-box;overflow:hidden}
.vcard-pane img{display:block;margin:0 auto .6rem;border-radius:8px;max-width:100%;height:auto}
.vcard-pane p{font-size:.82rem;line-height:1.45;margin-bottom:.7rem;color:#41525f;white-space:normal;overflow-wrap:anywhere;word-wrap:break-word;max-width:100%;min-width:0;hyphens:auto}
.vcard-pane .btn{display:block;width:100%;margin-bottom:.5rem;font-size:.85rem;padding:.55rem .6rem;white-space:normal;overflow-wrap:anywhere;max-width:100%;box-sizing:border-box}
.vcard-pane .btn:last-child{margin-bottom:0}
@media (max-width:560px){.vcard-pane{position:fixed;left:50%;right:auto;top:calc(var(--headh,150px) + 6px);transform:translateX(-50%)}}
.topbar .tb-r .vcard-pane a{display:block;width:100%;margin-bottom:.5rem;padding:.55rem .6rem;text-align:center}
.topbar .tb-r .vcard-pane a:last-child{margin-bottom:0}

/* ---------- credentials bar / consent rows / prior-results / fee table ---------- */
.cred-bar{background:var(--paper);border-bottom:1px solid var(--line);font-size:.85rem;color:#41525f}
.cred-bar .wrap{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem 0.8rem;padding:.55rem 1rem;text-align:center}
.cred-bar span{white-space:nowrap}
.cred-bar .cred-sep{color:var(--gold)}
@media (max-width:700px){.cred-bar span{white-space:normal}}
.consent-row{display:flex;gap:.55rem;align-items:flex-start;font-size:.8rem;line-height:1.45;color:#41525f;margin:.6rem 0}
.consent-row input{margin-top:.2rem;flex:none;width:16px;height:16px}
.prior-results{font-size:.78rem;color:#5b6975;margin-top:1rem}
.fee-table{width:100%;border-collapse:collapse;margin:1rem 0}
.fee-table th,.fee-table td{border:1px solid var(--line);padding:.55rem .7rem;text-align:left;font-size:.95rem}
.fee-table th{background:var(--paper);font-family:var(--serif);color:var(--navy)}

/* ---------- topbar alignment polish ---------- */
.topbar .wrap{min-height:42px;gap:1.5rem}
.topbar .tb-l{opacity:.85;letter-spacing:.01em}
.topbar .tb-r{gap:0;align-items:center}
.topbar .tb-r>a,.topbar .tb-r>.vcard-pop{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .95rem;line-height:1}
.topbar .tb-r>a+a,.topbar .tb-r>.vcard-pop{border-left:1px solid rgba(255,255,255,.14)}
.topbar .tb-r .vcard-pop summary{padding:0;display:inline-flex;align-items:center;gap:.4rem;line-height:1}
.topbar .tb-r .langsw{margin-left:.95rem;padding-left:1.1rem;border-left:1px solid rgba(255,255,255,.14);gap:.3rem}
.topbar svg{flex:none;display:block}
@media (max-width:900px){
  .topbar .tb-r{flex-wrap:wrap;justify-content:flex-end;gap:.1rem 0}
  .topbar .tb-r>a,.topbar .tb-r>.vcard-pop{padding:.4rem .6rem}
}
@media (max-width:560px){
  .topbar .wrap{justify-content:center}
  .topbar .tb-r{justify-content:center}
  .topbar .tb-r>a+a,.topbar .tb-r>.vcard-pop{border-left:none}
  .topbar .tb-r .langsw{margin-left:.3rem;padding-left:.5rem}
}

/* ---------- topbar left: practice line over locations line ---------- */
.topbar .tb-l{display:flex;flex-direction:column;justify-content:center;gap:.12rem;opacity:1;line-height:1.3;padding:.35rem 0}
.topbar .tb-l1{font-weight:600;color:#e9eef3;letter-spacing:.015em;font-size:.83rem}
.topbar .tb-l2{font-size:.76rem;color:#8fa5b5;display:inline-flex;align-items:center;gap:.35rem}
.topbar .tb-l2 svg{color:var(--gold-2)}
@media (max-width:1100px){.topbar .tb-l1{font-size:.78rem}}


/* ---------- overflow-wrap global (Audit4 overflow pass) ---------- */
/* overflow-wrap-global-a4 */
/* overflow-footer-a4 */
@media (max-width:520px){
  footer.site .cols{grid-template-columns:minmax(0,1fr);gap:1.6rem}
  .hero .actions .btn{min-width:0;width:100%}
  .hero .trust{font-size:.88rem}
  .grid-3,.post-grid,.office-grid,.t-grid,.stats .wrap{grid-template-columns:minmax(0,1fr) !important}
}
table.fee-table,table.nynum,.nynum,table{max-width:100%}
table.fee-table,table.nynum{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
table.fee-table th,table.fee-table td,table.nynum th,table.nynum td{overflow-wrap:anywhere;word-break:break-word}

.wrap,.content,main,article,section,.card,.post-card,.srch-box,.cb-log,.faq,.dgm,.page-hero,.lp-grid,.t-grid{overflow-wrap:anywhere;word-wrap:break-word}
.btn,.cta-btn{max-width:100%;box-sizing:border-box}
@media (max-width:560px){
  .btn,.cta-btn,.sub-row .btn,.clarity-band .btn{white-space:normal;overflow-wrap:anywhere;hyphens:auto}
  .cred-bar{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .cred-bar span{white-space:normal}
  .nynum td.nynum-val{white-space:normal}
  #slg-chat{max-width:calc(100vw - 1rem)}
  .srch-box{max-width:calc(100vw - 1.5rem)}
}
.topbar .tb-r .vcard-pop{white-space:normal} /* keep summary compact via summary rule */
.topbar .tb-r .vcard-pop > summary{white-space:nowrap}
/* ---------- mobile overflow guards ---------- */
@media (max-width:640px){
  .t-grid{grid-template-columns:1fr !important;}
  .lp-grid{grid-template-columns:1fr;}
  .lp-trust{flex-wrap:wrap;}
}
@media (max-width:420px){
  #slg-chat-btn{max-width:calc(100vw - 24px);}
  #slg-chat-btn .cb-btn-txt b,#slg-chat-btn .cb-btn-txt small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60vw;display:block;}
}
/* never let any stray element create a horizontal scrollbar.
   overflow-x:clip (not hidden!) — hidden would break position:sticky on the header */
html,body{overflow-x:clip;}

/* mobile: keep the top bar compact — hide the long practice line, keep offices */
@media (max-width:760px){
  .topbar .tb-l1{display:none;}
  .topbar .tb-l{padding:.2rem 0;}
  .topbar .tb-l2{font-size:.8rem;}
}

/* ---------- questions glossary (/questions/) ---------- */
.q-letters{display:flex;flex-wrap:wrap;gap:.3rem;margin:0 0 1.6rem;position:sticky;top:calc(var(--headh,128px) + 4px);background:var(--cream,#faf8f3);padding:.5rem 0;z-index:5}
.q-letters a{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;border:1px solid var(--line);border-radius:8px;text-decoration:none;font-weight:700;color:var(--navy)}
.q-letters a:hover{background:var(--gold);color:#fff;border-color:var(--gold)}
.q-group{margin-bottom:1.4rem}
.q-letter{font-family:var(--serif);color:var(--gold);font-size:1.6rem;border-bottom:2px solid var(--line);margin-bottom:.6rem;scroll-margin-top:110px}
.q-list{list-style:none;padding:0;columns:2;column-gap:2.2rem}
.q-list li{margin:0 0 .55rem;break-inside:avoid;padding-left:1.1rem;position:relative}
.q-list li::before{content:"?";position:absolute;left:0;top:.1em;color:var(--gold);font-weight:700;font-size:.85em}
.q-list a{text-decoration:none;color:var(--ink,#1c2b36)}
.q-list a:hover{color:var(--gold-2);text-decoration:underline}
@media (max-width:700px){.q-list{columns:1}.q-letters{top:calc(var(--headh,150px) + 4px)}}
a.tb-l2{text-decoration:none;color:#8fa5b5}
a.tb-l2:hover{color:var(--gold-2)}

/* ---------- interactive diagrams ---------- */
.dgm{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.3rem 1rem 1rem;margin:1.6rem 0;box-shadow:0 4px 18px rgba(15,34,51,.06)}
.dgm-title{font-family:var(--serif);color:var(--navy);font-weight:700;font-size:1.05rem;text-align:center;margin-bottom:1rem}
.dgm-row{display:flex;justify-content:center;gap:1.2rem;flex-wrap:wrap}
.dgm-card{position:relative;background:#fff;border:1px solid #e3ddd2;border-radius:10px;padding:.65rem .9rem;min-width:130px;text-align:center;box-shadow:0 2px 8px rgba(15,34,51,.08);transition:transform .15s,box-shadow .15s;cursor:default}
.dgm-card:hover,.dgm-card:focus-visible{transform:translateY(-3px);box-shadow:0 8px 22px rgba(15,34,51,.16);outline:none;border-color:var(--gold)}
.dgm-root{border-top:3px solid var(--navy)}
.dgm-tag{display:block;font-size:.62rem;letter-spacing:.14em;color:#556a7c;font-weight:700;margin-bottom:.15rem}
.dgm-card b{display:block;color:var(--navy);font-size:.95rem}
.dgm-card span{display:block;font-size:.78rem;color:#536270}
.dgm-card em{display:block;font-style:normal;color:#1b6ec2;font-weight:700;font-size:.9rem;margin-top:.15rem}
.dgm-card[data-tip]::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);width:230px;background:var(--navy);color:#e9eef3;font-size:.75rem;line-height:1.4;padding:.55rem .7rem;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .15s;z-index:30;font-weight:400;text-align:left}
.dgm-card[data-tip]:hover::after,.dgm-card[data-tip]:focus-visible::after{opacity:1}
.dgm-split{display:flex;justify-content:space-around;align-items:center;height:52px;position:relative;max-width:560px;margin:0 auto}
.dgm-split::before{content:"";position:absolute;inset:0 15% 0 15%;border-left:2px dashed var(--gold);border-right:2px dashed var(--gold);opacity:.55}
.dgm-chip{background:#fff;border:1px solid var(--line);color:#1b6ec2;font-size:.72rem;font-weight:700;padding:.15rem .5rem;border-radius:20px;z-index:1}
.dgm-4 .dgm-card{min-width:104px;padding:.5rem .6rem}
.dgm-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;counter-reset:s}
.dgm-steps li{position:relative;border:1px solid #e3ddd2;border-radius:10px;padding:.7rem .8rem .7rem 2.6rem;background:#fff;transition:transform .15s,box-shadow .15s}
.dgm-steps li:hover,.dgm-steps li:focus-visible{transform:translateY(-3px);box-shadow:0 8px 22px rgba(15,34,51,.16);border-color:var(--gold);outline:none}
.dgm-steps b{font-size:.86rem;color:var(--navy)}
.dgm-num{position:absolute;left:.7rem;top:.7rem;width:1.45rem;height:1.45rem;border-radius:50%;background:var(--gold);color:#fff;font-weight:700;font-size:.8rem;display:flex;align-items:center;justify-content:center}
.dgm-steps li[data-tip]::after{content:attr(data-tip);position:absolute;left:0;top:calc(100% + 6px);width:100%;background:var(--navy);color:#e9eef3;font-size:.74rem;line-height:1.4;padding:.5rem .65rem;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .15s;z-index:30;box-sizing:border-box}
.dgm-steps li[data-tip]:hover::after,.dgm-steps li[data-tip]:focus-visible::after{opacity:1}
.dgm-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;max-width:640px;margin:0 auto}
.dgm-col{display:flex;flex-direction:column;align-items:center;gap:0;border:1px dashed var(--line);border-radius:12px;padding:.9rem .7rem}
.dgm-col .dgm-tag{margin-bottom:.5rem}
.dgm-col .dgm-card{width:100%}
.dgm-vline{width:2px;height:18px;border-left:2px dashed var(--gold);opacity:.6;margin:.1rem 0}
.dgm-badge{margin-top:.6rem;font-size:.72rem;font-weight:700;padding:.2rem .6rem;border-radius:20px}
.dgm-good{border-color:var(--gold)}
.dgm-good .dgm-badge{background:#e8f4e8;color:#256029}
.dgm-slow .dgm-badge{background:#f7ecec;color:#8a3030}
.dgm-timeline{position:relative;display:flex;justify-content:space-between;margin:1.6rem .5rem 1rem}
.dgm-tl-bar{position:absolute;left:4%;right:4%;top:9px;height:4px;background:linear-gradient(90deg,var(--gold),#e6c67e);border-radius:2px}
.dgm-tl-node{position:relative;text-align:center;max-width:32%;padding-top:26px;cursor:default}
.dgm-tl-node i{position:absolute;top:2px;left:50%;transform:translateX(-50%);width:18px;height:18px;border-radius:50%;background:#fff;border:4px solid var(--navy)}
.dgm-tl-mid i{border-color:var(--gold)}
.dgm-tl-node b{font-size:.82rem;color:var(--navy)}
.dgm-tl-node[data-tip]::after{content:attr(data-tip);position:absolute;left:50%;transform:translateX(-50%);top:calc(100% + 6px);width:200px;background:var(--navy);color:#e9eef3;font-size:.74rem;line-height:1.4;padding:.5rem .65rem;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .15s;z-index:30}
.dgm-tl-node[data-tip]:hover::after,.dgm-tl-node[data-tip]:focus::after{opacity:1}
.dgm-cliff .dgm-card{flex:1;max-width:200px}
.dgm-ok{border-top:3px solid #2e7d32}
.dgm-bad{border-top:3px solid #b3261e;background:#fdf6f5}
.dgm-bad em{color:#b3261e}
.dgm-note{font-size:.82rem;color:#536270;text-align:center;margin:.6rem auto 0;max-width:560px}
.dgm-hint{font-size:.7rem;color:#5b6975;text-align:center;margin-top:.7rem}
@media (max-width:640px){
  .dgm-steps{grid-template-columns:1fr}
  .dgm-cols{grid-template-columns:1fr}
  .dgm-row{gap:.6rem}
  .dgm-card[data-tip]::after{width:180px}
  .dgm-timeline{flex-direction:column;gap:1.1rem;margin-top:.5rem}
  .dgm-tl-bar{left:9px;right:auto;top:4%;bottom:4%;width:4px;height:auto}
  .dgm-tl-node{max-width:100%;text-align:left;padding:0 0 0 34px}
  .dgm-tl-node i{left:2px;top:0;transform:none}
  .dgm-tl-node[data-tip]::after{left:34px;transform:none}
}

/* ---------- press-and-hold humanity check ---------- */
.hold-check{margin:.9rem 0 .5rem}
.hold-btn{position:relative;display:block;width:100%;border:1.5px dashed var(--gold);background:#fff;border-radius:10px;padding:.7rem 1rem;font:inherit;font-weight:600;color:var(--navy);cursor:pointer;overflow:hidden;user-select:none;-webkit-user-select:none;touch-action:none}
.hold-fill{position:absolute;inset:0;width:0;background:linear-gradient(90deg,rgba(201,162,39,.25),rgba(201,162,39,.45));transition:width .05s linear;pointer-events:none}
.hold-txt{position:relative;z-index:1;font-size:.88rem}
.hold-btn.hold-ok{border-style:solid;border-color:#2e7d32;background:#e8f4e8;color:#256029;cursor:default}
.hold-btn.hold-nudge{animation:holdnudge .5s}
@keyframes holdnudge{0%,100%{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.hold-check small{display:block;text-align:center;font-size:.68rem;color:#5b6975;margin-top:.3rem}

/* ---------- inline field validation ---------- */
.field-err{display:block;color:#b3261e;font-size:.78rem;margin-top:.3rem;font-weight:600}
input.field-invalid,textarea.field-invalid{border-color:#b3261e !important;background:#fdf6f5}
.consent-req>span{font-weight:600}

/* ---------- NY Numbers hub ---------- */
.nynum td.nynum-val{white-space:nowrap;font-family:var(--serif);font-size:1.05rem;color:var(--navy);font-weight:700}
.nynum-verified{display:inline-block;background:#eef6ee;color:#1d5c2f;border:1px solid #bcd9c2;border-radius:8px;padding:.45rem .8rem;font-size:.88rem;font-weight:600}

/* ---------- newsletter subscribe ---------- */
.sub-panel h3{margin-bottom:.4rem}
.sub-row{display:flex;gap:.5rem;margin:.5rem 0}
.sub-row input{flex:1;min-width:0;padding:.6rem .7rem;border:1px solid var(--line);border-radius:8px;font:inherit}
.sub-row .btn{white-space:nowrap;padding:.6rem 1rem;max-width:100%;box-sizing:border-box}
.sub-form small{color:#556a7c}
.sub-msg{margin-top:.5rem;font-size:.9rem;font-weight:600}
.sub-msg.ok{color:#1d5c2f}
.sub-msg.err{color:#b3261e}
@media(max-width:520px){.sub-row{flex-direction:column}.sub-row .btn{width:100%}}

/* ---------- attorney sidebar panel ---------- */
.atty-panel .atty-row{display:flex;gap:.7rem;align-items:center;margin:.5rem 0}
.atty-panel .atty-row img{border-radius:10px;object-fit:cover;flex:0 0 auto}
.atty-panel .av{width:56px;height:56px;border-radius:50%;background:var(--navy);color:#d8b25c;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;flex:0 0 auto}
.atty-panel .atty-role{font-size:.82rem;color:#556a7c}
.atty-panel .atty-note{font-size:.86rem;color:#4a5f70;margin:.4rem 0}
.atty-panel .atty-dl{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:#556a7c}

/* ---------- topic cluster / related services ---------- */
.rel-svc{background:var(--paper);border:1px solid var(--line);border-left:4px solid #d8b25c;border-radius:10px;padding:1rem 1.2rem;margin:1.6rem 0}
.rel-svc h3{font-family:var(--serif);color:var(--navy);font-size:1.05rem;margin-bottom:.5rem}
.rel-svc ul{list-style:none;margin:0;padding:0}
.rel-svc li{margin:.3rem 0}

/* ---------- glossary auto-links ---------- */
a.gl{border-bottom:1px dotted #b08d3c;text-decoration:none}
a.gl:hover{border-bottom-style:solid}

/* ---------- Estate Clarity Score ---------- */
.clarity-band{background:linear-gradient(120deg,#0f2233,#1b3a52);color:#fff;padding:2.2rem 0}
.cl-band-in{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
.clarity-band h2{font-family:var(--serif);color:#fff;font-size:1.5rem;margin-bottom:.35rem}
.clarity-band p{color:#c8d6e0;max-width:46em;margin:0}
.clarity-band .btn{white-space:nowrap;max-width:100%;box-sizing:border-box}
.cl-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.6rem;box-shadow:0 6px 24px #0f223310}
.cl-intro{text-align:center}
.cl-privacy{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:.8rem 1rem;font-size:.92rem;margin-bottom:1.2rem}
.cl-start{font-size:1.05rem;padding:.85rem 1.8rem}
.cl-prog{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.2rem}
.cl-bar{display:block;height:6px;background:#e8eef3;border-radius:4px;overflow:hidden}
.cl-bar span{display:block;height:100%;background:#b08d3c;border-radius:4px;transition:width .3s}
.cl-q{border:0;border-top:1px solid var(--line);padding:1rem 0;margin:0}
.cl-q legend{font-weight:700;color:var(--navy);padding-top:1rem;font-size:1.02rem}
.cl-q.cl-miss{background:#fdf6f5;border-radius:8px;outline:2px solid #e3b7b3;outline-offset:-2px;padding-left:.6rem;padding-right:.6rem}
.cl-help{font-size:.88rem;color:#4f6274;margin:.35rem 0 .2rem}
.cl-opts{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}
.cl-opt{border:1.5px solid var(--line);border-radius:24px;padding:.45rem 1rem;cursor:pointer;font-size:.92rem;transition:all .15s;background:#fff}
.cl-opt:hover{border-color:#b08d3c}
.cl-opt.sel{background:var(--navy);border-color:var(--navy);color:#fff}
.cl-opt input{position:absolute;opacity:0;pointer-events:none}
.cl-nav{display:flex;justify-content:space-between;margin-top:1.4rem}
.cl-gauge{max-width:280px;display:block;margin:.5rem auto}
.cl-cmp{text-align:center;font-size:1.02rem;max-width:38em;margin:.6rem auto}
.cl-flag{border:1px solid var(--line);border-left-width:5px;border-radius:10px;padding:1rem 1.2rem;margin:.8rem 0;position:relative}
.cl-flag h3{font-family:var(--serif);color:var(--navy);font-size:1.05rem;margin:.1rem 0 .35rem}
.cl-flag p{font-size:.94rem;margin-bottom:.4rem}
.cl-high{border-left-color:#b3261e;background:#fdf8f7}
.cl-med{border-left-color:#c99013;background:#fdfaf2}
.cl-low{border-left-color:#5b7d97;background:#f7fafc}
.cl-tag{position:absolute;top:.8rem;right:1rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:#4f6274}
.cl-high .cl-tag{color:#b3261e}.cl-med .cl-tag{color:#a17410}
.cl-plan{margin:.6rem 0 0 1.2rem}
.cl-plan li{margin:.35rem 0}
.cl-map{width:100%;height:auto;border:1px solid var(--line);border-radius:10px;background:var(--paper);margin:.6rem 0 .3rem}
.cl-gh{font-size:12px;fill:#556a7c;text-transform:uppercase;letter-spacing:.06em;font-weight:700}
.cl-node rect{fill:#fff;stroke:#cfd9e0;stroke-width:1.5}
.cl-node text{font-size:12.5px;fill:#22323f}
.cl-n-ok rect{stroke:#1d7a3a;fill:#f0f8f2}
.cl-n-warn rect{stroke:#c99013;fill:#fdf9ee}
.cl-n-gap rect{stroke:#b3261e;stroke-dasharray:5 4;fill:#fdf6f5}
.cl-n-gap text{fill:#8f2018}
.cl-legend{display:flex;gap:1.2rem;flex-wrap:wrap;font-size:.85rem;margin:.3rem 0}
.cl-legend i{display:inline-block;width:14px;height:14px;border-radius:4px;margin-right:.35rem;vertical-align:-2px;border:1.5px solid}
.cl-l-ok{background:#f0f8f2;border-color:#1d7a3a}
.cl-l-warn{background:#fdf9ee;border-color:#c99013}
.cl-l-gap{background:#fdf6f5;border-color:#b3261e;border-style:dashed}
.cl-simtabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:.8rem 0}
.cl-simtab{border:1.5px solid var(--line);background:#fff;border-radius:24px;padding:.5rem 1rem;cursor:pointer;font:inherit;font-size:.88rem}
.cl-simtab.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.cl-simpane{border:1px solid var(--line);border-radius:10px;padding:1rem 1.2rem;background:var(--paper)}
.cl-simpane p{font-size:.95rem;margin-bottom:.6rem}
.cl-cta{background:linear-gradient(120deg,#0f2233,#1b3a52);border-radius:12px;color:#fff;padding:1.5rem;margin-top:1.8rem;text-align:center}
.cl-cta h2{color:#fff;font-family:var(--serif);margin-bottom:.4rem}
.cl-cta p{color:#c8d6e0;max-width:44em;margin:0 auto .9rem}
.cl-disc{font-size:.75rem;color:#556a7c;margin-top:1.2rem}
@media(max-width:640px){.cl-band-in{flex-direction:column;align-items:flex-start}.cl-card{padding:1.1rem}.cl-tag{position:static;display:inline-block;margin-bottom:.2rem}}
@media print{.site-head-wrap,.topbar,footer.site,.cta-band,.cl-cta button,.chat-fab,#slg-cookie{display:none !important}.cl-card{border:0;box-shadow:none}}
.cl-cta .btn-ghost{border-color:#c8d6e0;color:#fff;background:transparent;margin-top:.5rem}
.cl-cta .btn-ghost:hover{background:#ffffff18}
.cl-legend i{vertical-align:middle}
.cl-wrap{scroll-margin-top:calc(var(--headh,130px) + 14px)}
.cl-preview{display:grid;grid-template-columns:1fr 1.6fr;gap:1rem;margin:1.2rem 0;text-align:left}
.cl-prev-tile{border:1px solid var(--line);border-radius:10px;padding:.9rem;background:var(--paper)}
.cl-prev-tile h3{font-family:var(--serif);color:var(--navy);font-size:.98rem;margin-bottom:.4rem}
.cl-prev-tile .cl-gauge{max-width:190px;margin:0 auto}
.cl-prev-wide{grid-column:1/-1}
.cl-map-demo{border:0;background:transparent;margin:.2rem 0}
.cl-prev-sim{pointer-events:auto}
@media(max-width:680px){.cl-preview{grid-template-columns:1fr}}

/* ---------- life-moment hub & pages ---------- */
.life-card .life-hook{font-style:italic;color:#8a6d1f;font-size:.92rem;margin:.3rem 0 .5rem}
.prose-p{max-width:56em;margin-bottom:1rem;line-height:1.65}

/* ---------- interactive step checklists ---------- */
.ls-steps{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:1.3rem 1.4rem;margin:1.8rem 0}
.ls-steps>h2{margin-top:0 !important}
.ls-prog{display:flex;align-items:center;gap:.8rem;margin:.8rem 0 1rem}
.ls-bar{flex:1;height:9px;background:#e4ebf0;border-radius:6px;overflow:hidden}
.ls-bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,#b08d3c,#d8b25c);transition:width .3s}
.ls-count{font-size:.85rem;color:#4f6274;white-space:nowrap}
.ls-list{list-style:none;margin:0;padding:0;counter-reset:lsn}
.ls-step{border:1px solid var(--line);border-radius:10px;background:#fff;margin:.55rem 0;counter-increment:lsn;position:relative}
.ls-step label{display:flex;gap:.8rem;padding:.85rem 1rem .85rem 3.1rem;cursor:pointer;align-items:flex-start}
.ls-step label::before{content:counter(lsn);position:absolute;left:1rem;top:.95rem;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--navy);color:#d8b25c;font-weight:700;font-size:.8rem;display:flex;align-items:center;justify-content:center}
.ls-step input{margin-top:.3rem;width:1.15rem;height:1.15rem;accent-color:#1d7a3a;flex:0 0 auto}
.ls-body b{display:block;color:var(--navy);margin-bottom:.15rem}
.ls-body span{font-size:.92rem;color:#4a5f70}
.ls-step.ls-ok{background:#f4faf5;border-color:#bcd9c2}
.ls-step.ls-ok .ls-body b{text-decoration:line-through;text-decoration-color:#1d7a3a99}
.ls-forgot{border-color:#d8b25c;background:#fdfaf0}
.ls-forgot .ls-tag{position:absolute;top:-0.7rem;left:2.9rem;background:#4a3810;color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:.15rem .6rem;border-radius:10px}
.ls-forgot label::before{content:"★";background:#b08d3c;color:#fff}
.ls-done{color:#1d5c2f;font-weight:600;margin:.8rem 0}
.ls-print{margin-top:.4rem}

/* ---------- membership tiers ---------- */
.mem-login{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:.8rem 1rem;font-size:.92rem}
.tier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.2rem}
.tier{border:1px solid var(--line);border-radius:14px;background:#fff;padding:1.5rem;display:flex;flex-direction:column}
.tier-hl{border-color:#b08d3c;box-shadow:0 8px 28px #b08d3c22;position:relative}
.tier h3{font-family:var(--serif);color:var(--navy);font-size:1.2rem}
.tier-price{font-family:var(--serif);font-size:1.5rem;color:#8a6d1f;font-weight:700;margin:.3rem 0}
.tier-for{font-size:.9rem;color:#4f6274;min-height:3.2em}
.tier ul{list-style:none;margin:.6rem 0 1rem;padding:0;flex:1}
.tier li{padding:.35rem 0 .35rem 1.4rem;position:relative;font-size:.93rem;border-bottom:1px dashed #eef2f5}
.tier li::before{content:"✓";position:absolute;left:0;color:#1d7a3a;font-weight:700}

/* ---------- emergency card ---------- */
.ec-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:1.5rem}
@media(max-width:800px){.ec-grid{grid-template-columns:1fr}}
.ec-form label{display:block;margin:.6rem 0;font-size:.88rem;font-weight:600;color:var(--navy)}
.ec-form input{display:block;width:100%;margin-top:.25rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:8px;font:inherit;font-weight:400}
.ec-card{background:#0f2233;color:#fff;border-radius:14px;padding:1.1rem 1.2rem;max-width:430px;box-shadow:0 10px 30px #0f223344;position:relative;font-size:.78rem}
.ec-head{display:flex;gap:.6rem;align-items:center;border-bottom:2px solid #d8b25c;padding-bottom:.5rem;margin-bottom:.6rem}
.ec-logo{background:#d8b25c;color:#0f2233;font-weight:800;font-family:var(--serif);border-radius:8px;padding:.35rem .5rem}
.ec-sub{color:#c8d6e0;font-size:.68rem}
.ec-line{margin:.3rem 0;line-height:1.35}
.ec-line b{color:#8fa7b8;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;display:block}
.ec-qr{display:flex;gap:.5rem;align-items:center;margin-top:.6rem;border-top:1px solid #ffffff22;padding-top:.5rem}
.ec-qr img{background:#fff;border-radius:6px;padding:2px}
.ec-qr span{color:#c8d6e0;font-size:.66rem}
@media print{body.print-card *{visibility:hidden}body.print-card .ec-card,body.print-card .ec-card *{visibility:visible}body.print-card .ec-card{position:fixed;left:10mm;top:10mm;width:85.6mm;box-shadow:none}}

/* ---------- decoder ---------- */
.dec-text{width:100%;padding:.8rem;border:1px solid var(--line);border-radius:10px;font:.92rem/1.5 monospace;resize:vertical}
.dec-out{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:1rem 1.2rem;margin-top:1rem}
.dec-out h3{font-family:var(--serif);color:var(--navy);margin:.4rem 0}
.dec-out ul{margin:.3rem 0 .8rem 1.2rem}
.dec-out li{margin:.3rem 0}
.dec-miss li{color:#8f2018}
.dec-cta{margin-top:1rem;font-weight:600}

/* ---------- stay-current ---------- */
.nudge-list{margin:.5rem 0 0 1.2rem;max-width:56em}
.nudge-list li{margin:.45rem 0}
.sc-topics{border:1px solid var(--line);border-radius:10px;padding:.6rem .9rem;margin:.6rem 0}
.sc-topics legend{font-size:.85rem;font-weight:700;color:var(--navy);padding:0 .4rem}
.adv-res{list-style:none;margin:.4rem 0;padding:0}
.adv-res li{margin:.45rem 0}
section.alt{background:var(--paper)}
.f-legal{margin-top:1.3rem}
.srch-cat{display:inline-block;background:#eef3f7;color:#3d5468;border-radius:6px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .5rem;white-space:nowrap}
a.srch-row{display:grid;grid-template-columns:120px 1fr;gap:.8rem;align-items:start}
@media(max-width:560px){a.srch-row{grid-template-columns:1fr}.srch-cat{justify-self:start}}

/* ===== v5: header fit — header shares the content container so the brand aligns with page content ===== */
header.site .wrap{max-width:var(--maxw);padding:0 clamp(1rem,4vw,2rem)}
.cta-btn.nav-cta{display:none}
nav.main a{font-size:.92rem;padding:.58rem .55rem}
@media (max-width:1400px){nav.main a{font-size:.9rem;padding:.55rem .5rem}}
@media (max-width:1240px){
  .hamb{display:block}
  nav.main{position:fixed;inset:0;top:0;background:var(--paper);display:none;overflow:auto;z-index:150;padding:5.5rem 1.5rem 2rem}
  body.nav-open nav.main{display:block}
  body.nav-open .hamb{position:relative;z-index:160}
  body.nav-open .hamb span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  body.nav-open .hamb span:nth-child(2){opacity:0}
  body.nav-open .hamb span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  nav.main ul{flex-direction:column;align-items:stretch;gap:0}
  nav.main a{font-size:1.15rem;padding:.9rem .4rem;border-bottom:1px solid var(--line)}
  nav.main .sub{display:flex;position:static;border:0;box-shadow:none;padding:0 0 0 1rem;min-width:0}
  nav.main .sub a{font-size:1rem}
  .nav-cta{display:none}
}

/* v6: chat "new chat" reset button */
#slg-chat .cb-new{background:none;border:0;color:#fff;cursor:pointer;font-size:1.15rem;line-height:1;opacity:.75;padding:.2rem .4rem}
#slg-chat .cb-new:hover{opacity:1}

/* ===== v7: mobile polish — topbar, menu overlay, chat launcher, tap-cards ===== */
/* the header's backdrop blur made it the containing block for the fixed mobile
   menu (menu trapped in a 120px strip) — release it while the menu is open */
body.nav-open header.site{backdrop-filter:none;-webkit-backdrop-filter:none}
body.nav-open .site-head-wrap{z-index:160}
@media (max-width:880px){
  /* topbar: compact strip — practice/borough block is desktop-only */
  .topbar .tb-l{display:none !important}
  .topbar .wrap{justify-content:center;min-height:0;padding:.1rem .6rem}
  .topbar .tb-r{flex-wrap:wrap;justify-content:center;gap:0}
  .topbar .tb-r>a,.topbar .tb-r>.vcard-pop{padding:.35rem .55rem;font-size:.8rem}
  .topbar .tb-r .langsw{margin-left:.3rem;padding-left:.55rem}
  nav.main{z-index:320}
  /* diagram cards: tips flow inline on tap instead of overlaying the next card */
  .dgm-card[data-tip]::after,.dgm-steps li[data-tip]::after{position:static;display:none;width:auto;transform:none;margin-top:.5rem;opacity:1}
  .dgm-card[data-tip]:hover::after,.dgm-card[data-tip]:focus::after,
  .dgm-steps li[data-tip]:hover::after,.dgm-steps li[data-tip]:focus::after{display:block;opacity:1}
  .dgm-steps{grid-template-columns:1fr}
}
@media (max-width:600px){
  /* chat launcher: compact icon bubble — stop covering page CTAs */
  #slg-chat-btn{padding:.55rem;gap:0;right:.8rem;bottom:.8rem}
  #slg-chat-btn .cb-btn-txt{display:none}
  #slg-chat-btn .cb-btn-av{width:46px;height:46px}
  /* chat window: near-full-width sheet above the launcher */
  #slg-chat{left:.5rem;right:.5rem;width:auto;bottom:4.4rem}
  #slg-chat-teaser{right:.8rem;left:auto;max-width:78vw;bottom:4.6rem}
  /* trust-vs-will comparison stacks on phones */
  .dgm-cols{grid-template-columns:1fr}
}

/* ===== v8: mobile menu accordion — collapsed sections, chevron to expand ===== */
nav.main .subtoggle{display:none}
@media (max-width:1240px){
  nav.main>ul>li{position:relative}
  nav.main .subtoggle{display:grid;place-items:center;position:absolute;right:0;top:.3rem;width:46px;height:46px;background:none;border:0;cursor:pointer;color:var(--navy)}
  nav.main .subtoggle::before{content:"";width:10px;height:10px;border-right:2.5px solid currentColor;border-bottom:2.5px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform .18s}
  nav.main li.open>.subtoggle{color:var(--gold)}
  nav.main li.open>.subtoggle::before{transform:rotate(225deg) translate(-2px,-2px)}
  nav.main li.has-sub>a{padding-right:56px}
  nav.main .sub{display:none !important}
  nav.main li.open>.sub{display:flex !important;padding-bottom:.4rem}
  nav.main .sub a{border-bottom:0;padding:.55rem .4rem;font-size:1rem;color:var(--body)}
}

/* ---- Reviewer QA (Aug 2026): image sizing, About Us layout, footer brand, intestacy calculator ---- */
.prose.svc img{width:100%;max-height:220px;object-fit:cover;object-position:center 35%}
.prose.svc img[src$=".svg"]{width:auto;max-width:120px;max-height:120px;box-shadow:none;border-radius:0;display:block;margin:.5rem 0}
.prose .about-portrait{float:left;width:min(300px,42%);height:auto;margin:.2rem 1.6rem 1rem 0}
.prose .about-portrait+h3,.prose .about-portrait+h2{margin-top:0}
.prose .about-clear{clear:both}
.brand-f .bn{color:#efe9da}
.brand-f .bg{color:#d6c08a}
@media (max-width:640px){.prose .about-portrait{float:none;width:100%;max-width:340px;display:block;margin:0 auto 1.2rem}}
.icalc{background:#fff;border:1px solid var(--line,#e7e2d6);border-radius:14px;padding:1.4rem 1.5rem;margin:2.2rem 0;box-shadow:var(--shadow)}
.icalc h3{margin-top:0}
.icalc label{display:block;font-weight:600;color:var(--navy);margin:.9rem 0 .3rem}
.icalc select,.icalc input[type=number]{width:100%;max-width:420px;padding:.6rem .7rem;border:1px solid #cfc8b8;border-radius:8px;font:inherit;background:#fff}
.icalc .chk{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.35rem .8rem;margin:.3rem 0 .6rem}
.icalc .chk label{display:flex;align-items:center;gap:.5rem;font-weight:500;margin:0}
.icalc .icalc-out{margin-top:1.1rem;padding:1rem 1.1rem;border-radius:10px;background:var(--gold-soft,#faf5e6);border-left:4px solid var(--gold)}
.icalc .icalc-out b{color:var(--navy)}
.icalc .fine{font-size:.86rem;color:#6b6457;margin-top:.8rem}

/* Guides not yet published are rendered as plain text by generate.js (stripUnpublishedLinks) */
.coming-soon{color:#4a5a68}
.coming-soon::after{content:" (coming soon)";color:#556a7c;font-size:.85em}
html[lang="es"] .coming-soon::after{content:" (pr\f3ximamente)"}
html[lang="ru"] .coming-soon::after{content:" (\441\43a\43e\440\43e)"}

/* audit X1: contrast fixes for small text on the navy bands */
.quoteband .eyebrow,.hero .eyebrow,.page-hero .eyebrow{color:var(--gold-2)}
.quoteband .prior-results,.hero .prior-results{color:#cfd9e2}
.quoteband .prior-results a,.hero .prior-results a{color:#fff}

/* LT-10 / LT-11: above-the-fold block on the Google Ads final URLs */
.ad-fold-wrap{background:var(--cream);border-bottom:1px solid var(--line);padding:1.6rem 0}
.ad-fold{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:start}
.ad-fold .ad-free{font-size:1.15rem;font-weight:600;color:var(--navy);margin:0 0 .8rem}
.ad-fold .btn{font-size:1.05rem;padding:.9rem 1.4rem}
.ad-fold .ad-notcourt{margin-top:1rem;padding:.8rem 1rem;border-left:4px solid var(--gold);background:#fff;border-radius:8px;font-weight:600;color:var(--navy)}
.ad-form{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.2rem 1.3rem}
.ad-form .h3{margin:0 0 .8rem;font-size:1.15rem}
.lead-form-short{gap:.75rem}
@media (max-width:860px){.ad-fold{grid-template-columns:1fr}}
button.linklike{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:underline}
button.linklike:hover{color:#fff}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* LC-54: visible keyboard focus on the Estate Clarity quiz options (WCAG 2.4.7)
   Use ::after ring — outline/box-shadow on the label itself are unreliable with the
   opacity:0 radio inside (computed outline-color sticks to currentColor). */
.cl-opt{position:relative}
.cl-opt:focus-within{outline:none}
.cl-opt:focus-within::after{
  content:"";position:absolute;inset:-4px;border:3px solid #0f2233;border-radius:28px;
  box-shadow:0 0 0 5px #d8b25c;pointer-events:none;z-index:2
}
.cl-opt.sel:focus-within::after{border-color:#d8b25c;box-shadow:0 0 0 5px #0f2233}
.cl-opt:focus-visible,.cl-opt input:focus-visible{outline:none}
/* LC-68: buttons never wider than the screen; 44 px minimum tap targets on small screens */
.btn,.btn-ghost{max-width:100%;box-sizing:border-box;white-space:normal}
@media (max-width:480px){.btn,.btn-ghost,.hold-btn,.tb-r a,.site-head button,.hamb,[data-cookie-settings]{min-height:44px}.tb-r a{display:inline-flex;align-items:center}}
@media (max-width:480px){html[data-private="1"] button,html[data-private="1"] .btn,html[data-private="1"] select,html[data-private="1"] input:not([type=checkbox]):not([type=radio]),html[data-private="1"] a.btn{min-height:44px;min-width:44px}}


/* AUDIT4 maps tap targets */
a.maps-link, a.footer-office-link, a.map.maps-link {
  display: inline-block;
  min-height: 44px;
  line-height: 1.35;
  padding: .35rem 0;
  text-decoration: underline;
  text-underline-offset: 2px;
}
/* visualfix_r2: inline address links inside cards — normal line spacing */
.card p .maps-link,
.card p a.maps-link {
  display: inline;
  min-height: 0;
  line-height: inherit;
  padding: 0;
}
.footer-offices a.footer-office-link {
  color: #c5d0da;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
.footer-offices a.footer-office-link:hover { color: var(--gold-2); }
.office address a.maps-link { color: inherit; }
@media (max-width: 480px) {
  a.maps-link, a.footer-office-link, .office a.map { min-height: 44px; padding: .5rem 0; }
}

/* AUDIT4 overflow: long RU/ES CTAs wrap on narrow viewports (overrides later nowrap on .clarity-band/.sub-row) */
@media (max-width:560px){
  .btn,.cta-btn,.btn-ghost,.sub-row .btn,.clarity-band .btn,.hero .actions .btn,.cl-cta .btn{
    white-space:normal;overflow-wrap:anywhere;word-break:break-word;hyphens:auto;max-width:100%;box-sizing:border-box;text-align:center;line-height:1.25
  }
  .clarity-band .cl-band-in{min-width:0;align-items:stretch}
  .clarity-band .btn{width:100%}
}
/* ===== selfcheck Oct28: mobile lang switcher spacing (no overlap) ===== */
@media (max-width:560px){
  .langsw{gap:.35rem;flex-wrap:nowrap}
  .langsw a{padding:.22rem .42rem;font-size:.74rem;letter-spacing:0}
  .topbar .tb-r .langsw{margin-left:.2rem;padding-left:.35rem;border-left:none}
  .topbar .tb-r{row-gap:.25rem}
}

/* ===== selfcheck Oct28: Galaxy Fold (<=360px) overflow lock ===== */
@media (max-width:360px){
  html,body{overflow-x:clip;max-width:100%}
  .topbar .wrap{gap:.45rem;padding-left:.55rem;padding-right:.55rem;box-sizing:border-box;max-width:100%}
  .topbar .tb-r{max-width:100%;min-width:0;flex-wrap:wrap;justify-content:center}
  .topbar .tb-r>a,.topbar .tb-r>.vcard-pop{padding:.35rem .45rem}
  .langsw a{padding:.2rem .36rem;font-size:.72rem}
  .site-head .wrap,.brand{min-width:0;max-width:100%}
}


/* ===== Batch 3 LC-68 / LC-71 / LC-72: mobile taps, 16px inputs, CTA fit 390px ===== */
@media (max-width: 900px) {
  /* LC-71: never let iOS zoom on focus — inputs/selects >= 16px on all public forms */
  input, select, textarea,
  .lead-form input, .lead-form select, .lead-form textarea,
  .ad-form input, .ad-form select, .ad-form textarea,
  .srch-row input, .cb-row input {
    font-size: 16px !important;
  }
  /* LC-68 / LC-72: 44x44 tap targets on interactive chrome (public + cheap admin) */
  .btn, .btn-ghost, .cta-btn, .hold-btn, .hamb, .searchbtn,
  .site-head button, [data-cookie-settings],
  .topbar .tb-r > a, .langsw a, .nav a, .footer a.btn,
  .cl-opt, .cl-cta .btn, .sub-row .btn,
  html[data-private="1"] button, html[data-private="1"] .btn, html[data-private="1"] a.btn {
    min-height: 44px;
    min-width: 44px;
    box-sizing: border-box;
  }
  .langsw a, .nav a { display: inline-flex; align-items: center; justify-content: center; padding: .5rem .65rem; }
  /* LC-68: 392px calculator CTA on /es|/ru/ny-numbers must fit a 390px viewport — never overflow */
  .btn, .cta-btn, .btn-ghost, .cl-cta .btn, .clarity-band .btn,
  .numbers-cta, .calc-cta, [class*="ny-numbers"] .btn, main .btn {
    max-width: 100%;
    width: auto;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
    box-sizing: border-box;
  }
  /* hero CTAs: keep overflow guards; do not set width:auto (staging full-width at <=520px) */
  .hero .actions .btn {
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
    box-sizing: border-box;
  }
  .hero .actions, .cl-cta, .clarity-band .cl-band-in { max-width: 100%; min-width: 0; }
}
@media (max-width: 400px) {
  /* Extra lock for iPhone SE / Fold-narrow: no horizontal overflow from CTAs */
  .btn, .cta-btn { max-width: calc(100vw - 2rem); }
  html, body { overflow-x: clip; }
}


/* ===== Batch 3b: Fold overflow + tablet tap/font coverage ===== */
@media (max-width: 1024px) {
  input, select, textarea,
  .lead-form input, .lead-form select, .lead-form textarea,
  .ad-form input, .ad-form select, .ad-form textarea {
    font-size: 16px !important;
  }
  .btn, .btn-ghost, .cta-btn, .hold-btn, .hamb, .searchbtn,
  .site-head button, [data-cookie-settings],
  .topbar .tb-r > a, .langsw a,
  .vcard-pop .btn, a.btn {
    min-height: 44px;
    min-width: 44px;
    box-sizing: border-box;
  }
  .searchbtn { width: 44px; height: 44px; }
  .langsw a { display: inline-flex; align-items: center; justify-content: center; padding: .45rem .6rem; }
}
@media (max-width: 400px) {
  .lead-form, .ad-form, .ad-fold, form.lead-form, .row2 {
    max-width: 100%;
    width: 100%;
    box-sizing: border-box;
    min-width: 0;
  }
  .row2 { display: grid !important; grid-template-columns: 1fr !important; gap: .65rem; }
  .ad-form, .lead-form { padding-left: .85rem; padding-right: .85rem; }
  main .wrap, .site-main .wrap, .ad-fold { padding-left: .65rem; padding-right: .65rem; box-sizing: border-box; max-width: 100%; }
  input, select, textarea { max-width: 100%; box-sizing: border-box; }
}



.srch-row{display:flex;gap:.85rem;align-items:flex-start}
.srch-thumb{flex:0 0 120px;width:120px;border-radius:8px;overflow:hidden;background:var(--paper,#f6f4ef)}
.srch-thumb img{display:block;width:120px;height:63px;object-fit:cover}

.related-posts{padding:2.2rem 0 1rem;border-top:1px solid var(--line,#e6e2d8)}
.related-posts .h3{margin-bottom:1.2rem}

/* LC-78: lazy office map embed */
.office-map-wrap{margin:1rem 0 1.25rem;border-radius:10px;overflow:hidden;border:1px solid var(--border,#d8dee6);background:#f4f6f8}
.office-map{display:block;width:100%;height:min(320px,50vw);border:0}
.office-map-cta{margin:.65rem 0 0;padding:0 .25rem .25rem}

/* Save-our-contact pill: white text/icon (matches topbar email link) */
.topbar .vcard-pop summary,.topbar .vcard-pop summary:hover,.topbar .vcard-pop summary:focus,.topbar .vcard-pop summary:focus-visible,.topbar .vcard-pop[open] summary,.vcard-pop summary,.vcard-pop summary:hover,.vcard-pop[open] summary{color:#e9eef3}
.vcard-pop summary svg{stroke:currentColor}
.vcard-pop summary:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* Save-our-contact: full pill matching active language button */
.topbar .tb-r>.vcard-pop,.topbar .tb-r>.vcard-pop:hover{padding:0 0 0 .95rem;background:none;display:inline-flex;align-items:center}
html body .topbar .tb-r .vcard-pop>summary{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap;width:auto;max-width:none;overflow:visible;padding:.25rem .6rem;border-radius:7px;background:var(--gold,#c9a227);color:#fff;font-size:.8rem;font-weight:700;letter-spacing:.02em;line-height:1.2;box-shadow:none}
html body .topbar .tb-r .vcard-pop>summary svg{flex:0 0 auto;stroke:currentColor}
@media (max-width:560px){.topbar .tb-r>.vcard-pop{padding-left:.4rem}html body .topbar .tb-r .vcard-pop>summary{padding:.22rem .45rem;font-size:.74rem;letter-spacing:0}}
html body .topbar .tb-r .vcard-pop>summary{padding:.25rem .5rem;min-height:30px;box-sizing:border-box}
@media (max-width:560px){html body .topbar .tb-r .vcard-pop>summary{padding:.22rem .42rem}}
@media (max-width:480px){html body .topbar .tb-r .vcard-pop>summary{min-height:44px}}

/* Mobile hero CTAs: match staging @media (max-width:520px) - full-width stacked, centered */
@media (max-width:520px){
  .hero .actions{width:100%;max-width:100%}
  .hero .actions .btn{min-width:0;width:100%;text-align:center;display:block;box-sizing:border-box}
}

/* ===== visualfix_20261030 ===== */
/* 2. Dark hero inline links — readable on navy */
.page-hero a,
.page-hero a.maps-link,
.hero a.maps-link,
.quoteband a.maps-link {
  color: var(--gold-2);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.page-hero a:hover,
.page-hero a.maps-link:hover,
.hero a.maps-link:hover,
.quoteband a.maps-link:hover {
  color: #fff;
}
.page-hero .lead a,
.page-hero p a { color: var(--gold-2); }

/* 1. Location card more links */
.card .more {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  margin-top: 1rem;
  padding: .45rem 0;
  min-height: 44px;
  font-weight: 700;
  font-size: .92rem;
  color: var(--gold);
  text-decoration: none;
  letter-spacing: .02em;
  border-bottom: 2px solid transparent;
}
.card .more:hover {
  color: var(--navy);
  border-bottom-color: var(--gold);
}
.office-grid .card { display: flex; flex-direction: column; }
.office-grid .card .more { margin-top: auto; }

/* 3. Mobile menu open: fixed header band + full-height drawer (visualfix_r4).
   Header wrap is position:fixed top:0 so it stays after page scroll.
   No backdrop-filter/filter/transform on wrap/header — those trap fixed nav. */
@media (max-width: 1240px) {
  html.nav-open,
  body.nav-open {
    overflow: hidden !important;
    overscroll-behavior: none;
    touch-action: none;
  }
  body.nav-open .topbar {
    display: none !important;
  }
  body.nav-open .site-head-wrap {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 520 !important;
    overflow: visible !important;
  }
  body.nav-open header.site {
    position: relative;
    z-index: 530;
    background: #fff !important;
    box-shadow: 0 1px 0 var(--line);
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  body.nav-open header.site .brand,
  body.nav-open header.site .hamb,
  body.nav-open header.site .searchbtn {
    position: relative;
    z-index: 540;
  }
  body.nav-open .hamb span {
    background: var(--navy);
  }
  body.nav-open nav.main {
    display: block !important;
    position: fixed !important;
    inset: auto !important;
    top: var(--open-nav-offset, 84px) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    z-index: 510 !important;
    padding: 0.5rem 1.5rem 2.5rem !important;
    background: var(--paper, #faf8f3) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    box-shadow: none;
  }
}

/* 5. Chat: never cover sidebar CTAs or location cards */
#slg-chat-btn {
  bottom: 1.15rem;
  right: 1rem;
}
@media (min-width: 1021px) {
  main {
    padding-bottom: 5.5rem;
  }
  .office-grid {
    padding-bottom: 1.25rem;
  }
  .layout .sticky {
    padding-bottom: 5.75rem;
  }
  aside .panel.contactcard {
    margin-bottom: 0.5rem;
  }
  aside .sticky .panel.contactcard .btn {
    position: relative;
    z-index: 1;
  }
  /* Dock bottom-left (above a11y) on aside pages and all /locations/ paths */
  body:has(aside) #slg-chat-btn,
  html[data-path*="locations"] #slg-chat-btn {
    right: auto;
    left: 1.25rem;
    bottom: 4.85rem; /* clears #slg-a11y-btn at left:1rem;bottom:1rem */
  }
  body:has(aside) #slg-chat,
  html[data-path*="locations"] #slg-chat {
    right: auto;
    left: 1.25rem;
    bottom: 8.6rem;
  }
  /* Compact label on mid desktop */
  @media (max-width: 1360px) {
    #slg-chat-btn {
      padding: 0.55rem 0.9rem;
      font-size: 0.82rem;
      gap: 0.4rem;
    }
    #slg-chat-btn .cb-btn-txt {
      max-width: 8.5rem;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
  }
}
@media (max-width: 1020px) {
  #slg-chat-btn {
    bottom: 1.1rem;
  }
  main {
    padding-bottom: 4.75rem;
  }
}

