@font-face{font-family:"Fraunces";src:url(/fonts/fraunces-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Inter";src:url(/fonts/inter-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Inter";src:url(/fonts/inter-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
.layout>*,.prose{min-width:0}.tbl{max-width:100%}.prose :where(p,li,dd,blockquote,figcaption){overflow-wrap:anywhere}.apanel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:260px;height:100%;padding:32px;text-align:center;background:var(--brand-tint);color:var(--ink)}.apanel .apin{width:56px;height:56px;color:var(--brand)}.apanel b{font:700 1.5rem/1.2 var(--fd),serif;color:var(--ink)}.apanel span{color:var(--ink)}@media (max-width:400px){header .logo img{width:auto!important;height:auto!important;max-width:118px;max-height:34px}}
:root{--bg:#FAF7F5;--surface:#F0E9E5;--ink:#2A1F1D;--text:#3A2E2B;--muted:#645652;--brand:#8C4F4A;--action:#7A3F3A;--on-action:#FFFFFF;--dark:#2A1F1D;--on-dark:#FAF7F5;--accent:#E8B9B0;--action-h:#663531;--brand-tint:#EFE6E4;--action-tint:#EBE1DF;--line:#DFDBD9;--surface-2:#E6DAD7;--surface-3:#F5F0ED;--dark-2:#392F2D;--dark-card:#3B312F;--dark-card-h:#483E3D;--on-dark-muted:#CCC7C5;--on-dark-link:#C3A9A6;--action-l:#A27975;--action-xl:#C3A9A6;--field:#CCC7C5;--accent-on-brand:#F1D4CE;--r:0px;--br:4px;--sh:none;--sp:clamp(56px,7vw,96px);--cw:1140px;--case:none;--fd:"Fraunces";--fb:"Inter"}

@layer base, primitives, family;
@layer base{
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--bg);color:var(--text);font:400 17.5px/1.7 var(--fb),system-ui,-apple-system,"Segoe UI",sans-serif;padding-bottom:60px;counter-reset:folio}
img{display:block;max-width:100%;height:auto}
:where(a){color:var(--action);text-underline-offset:3px;text-decoration-thickness:1px}:where(a:hover){color:var(--action-h)}
:where(h1,h2,h3){font-family:var(--fd),Georgia,"Times New Roman",serif;font-weight:400;color:var(--ink);margin:0 0 .4em;line-height:1.12;letter-spacing:-.01em}
:where(h1){font-size:clamp(2.3rem,5vw,3.9rem)}:where(h2){font-size:clamp(1.75rem,3.2vw,2.6rem)}:where(h3){font-size:1.35rem}
:where(p){margin:0 0 1em}:where(ul,ol){margin:0 0 1em;padding-left:1.2em}:where(li){margin:.3em 0}
}
@layer primitives{
:where(.wrap){max-width:var(--cw);margin:0 auto;padding:0 28px}
:where(.measure){max-width:68ch}
.skip{position:absolute;left:-999px;top:0;background:var(--bg);padding:10px 14px;z-index:99}.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.ic{width:1.1em;height:1.1em;flex:none;vertical-align:-.15em}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.broker{font-size:.86rem;line-height:1.55;color:var(--muted);margin:14px 0 0}
}
@layer family{
:where(.sec){padding:var(--sp) 0;border-top:1px solid var(--line)}:where(.sec.paper){background:var(--surface)}
:where(.folio){display:block;font:600 .8rem/1.2 var(--fb),sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--brand);margin-bottom:16px}
:where(.ey-numbered) :where(.folio)::before{counter-increment:folio;content:counter(folio,decimal-leading-zero) " \2014\00a0";color:var(--muted)}
:where(.ey-mono-label) :where(.folio){font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em}
:where(.lede){font-size:1.18rem;line-height:1.65;color:var(--text)}
:where(.rule){border:0;border-top:1px solid var(--ink);margin:0 0 28px}
/* buttons */
:where(.btn){display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 24px;border:1px solid var(--ink);border-radius:var(--br);
 background:var(--ink);color:var(--bg);font:600 .98rem/1 var(--fb),sans-serif;text-decoration:none;cursor:pointer;white-space:nowrap}
:where(.btn:hover){background:var(--action);border-color:var(--action);color:var(--on-action)}
:where(.btn.ghost){background:transparent;color:var(--ink)}:where(.btn.ghost:hover){background:var(--ink);color:var(--bg)}
:where(.bc-caps) :where(.btn){text-transform:uppercase;letter-spacing:.08em;font-size:.86rem}
:where(.bt-double-rule) :where(.btn){border:3px double var(--bg);outline:1px solid var(--ink)}
:where(.bt-underline-link) :where(.btn.ghost){border:0;background:none;padding:0 2px;min-height:48px;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
:where(.bi-none) :where(.btn) .ic.trail{display:none}
:where(.textlink){font-weight:600;text-decoration:underline}
:where(.ctas){display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:24px 0 0}
/* masthead */
:where(.tstrip){border-bottom:1px solid var(--line);font-size:.84rem;color:var(--muted);background:var(--surface)}
:where(.tstrip .wrap){display:flex;justify-content:space-between;gap:18px;padding-top:7px;padding-bottom:7px}:where(.tstrip a){color:var(--ink);text-decoration:none;font-weight:600}
:where(.hdr){position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--ink)}
:where(.hdr .wrap){display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;min-height:84px}
:where(.logo){display:block}:where(.logo img){height:46px;width:auto}
:where(.navl,.navr){display:flex;align-items:center;gap:4px}:where(.navr){justify-content:flex-end}
:where(.nav) :where(a){display:block;padding:10px 12px;color:var(--ink);text-decoration:none;font-size:.97rem;white-space:nowrap}
:where(.nav) :where(a:hover,a[aria-current]){text-decoration:underline;text-underline-offset:6px}
:where(.drop){position:relative}:where(.drop-m){display:none;position:absolute;left:0;top:100%;min-width:260px;background:var(--bg);border:1px solid var(--ink);padding:6px 0;z-index:60}
:where(.drop:hover .drop-m,.drop:focus-within .drop-m){display:block}:where(.drop-m a){padding:9px 16px}
:where(.sub-t){display:none}
:where(.nav) :where(.btn){margin-left:8px;color:var(--bg)}:where(.nav-call){display:none}
:where(.mbtn){display:none;background:none;border:0;color:var(--ink);padding:6px;cursor:pointer}:where(.mbtn) .ic{width:28px;height:28px}
.mbtn .i-x,.mbtn.x .i-menu{display:none}.mbtn.x .i-x{display:block}
:where(.h-utility .wrap,.h-letterhead .wrap){grid-template-columns:auto 1fr}
@media (min-width:1101px){.h-center .wrap{display:flex;position:relative;max-width:1600px;padding-left:32px;padding-right:32px}.h-center .logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
 .h-center .nav{display:grid;grid-template-columns:minmax(0,1fr) var(--lw,260px) minmax(0,1fr);align-items:center;width:100%}
 .h-center .navl{grid-column:1;flex-wrap:wrap;justify-content:flex-start}.h-center .navr{grid-column:3;flex-wrap:wrap;justify-content:flex-end}}
@media (min-width:1101px) and (max-width:1440px){.h-center .nav a:not(.btn){padding:10px 8px;font-size:.93rem}.h-center .nav .btn{margin-left:4px}}
@media (min-width:1101px) and (max-width:1279px){.h-center .nav a:not(.btn){padding:8px 6px;font-size:.9rem}.h-center .nav .btn{padding-left:14px;padding-right:14px}}
:where(.h-utility .nav,.h-letterhead .nav){display:flex;justify-content:flex-end}
:where(.h-letterhead .wrap){grid-template-columns:1fr;justify-items:center;padding-top:16px}:where(.h-letterhead .nav){justify-content:center;padding-bottom:6px}
:where(.addr){font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:center;margin-top:4px}
/* hero */
:where(.hero){background:var(--surface)}:where(.hero .wrap){padding-top:clamp(48px,7vw,96px);padding-bottom:clamp(48px,7vw,96px)}
:where(.hero-a .card){max-width:860px;margin:0 auto;border:1px solid var(--line);background:var(--bg);padding:clamp(28px,5vw,64px);text-align:center;border-radius:var(--r)}
:where(.hero-b .wrap){display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(32px,6vw,88px);align-items:end}
:where(.hero-c h1){max-width:16em}
:where(.start){display:grid;grid-template-columns:1fr auto;gap:10px;max-width:560px;margin:26px 0 0}
:where(.hero-a .start){margin-left:auto;margin-right:auto}
:where(.start label){grid-column:1/-1;font-weight:600;color:var(--ink);font-size:.95rem}
:where(.start select){height:52px;border:1px solid var(--ink);border-radius:var(--br);background:var(--bg);padding:0 14px;font:500 1rem var(--fb),sans-serif;color:var(--ink)}
:where(.glance){margin:0;border-top:1px solid var(--ink)}:where(.glance div){display:grid;grid-template-columns:8.5em 1fr;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
:where(.glance dt){font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding-top:3px}:where(.glance dd){margin:0;color:var(--ink)}
:where(.letterbox){margin:34px 0 0}:where(.letterbox img){width:100%;aspect-ratio:21/9;object-fit:cover;border-radius:var(--r)}:where(.letterbox figcaption){font-size:.8rem;color:var(--muted);margin-top:8px}
:where(.img-img-fade) :where(.pic img){-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent);mask-image:linear-gradient(180deg,#000 55%,transparent)}
:where(.img-img-duotone) :where(.pic){background:var(--brand)}:where(.img-img-duotone) :where(.pic img){filter:grayscale(1) contrast(1.05);mix-blend-mode:multiply;opacity:.9}
/* page hero */
:where(.phero){background:var(--surface);border-bottom:1px solid var(--line)}:where(.phero .wrap){padding-top:30px;padding-bottom:clamp(36px,5vw,64px)}
:where(.phero h1){max-width:18em}:where(.phero .lede){max-width:44em}
:where(.crumbs){font-size:.86rem;color:var(--muted);margin-bottom:26px}:where(.crumbs ol){list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0}:where(.crumbs li){margin:0}
:where(.crumbs li+li)::before{content:"\00b7";margin-right:8px}:where(.crumbs a){color:var(--muted)}
/* index (numbered product list) */
:where(.index){list-style:none;margin:0;padding:0;border-top:1px solid var(--ink);counter-reset:ix}
:where(.index li){display:grid;grid-template-columns:4.5rem minmax(0,1fr) minmax(0,1.3fr) auto;gap:20px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line);margin:0;counter-increment:ix}
:where(.index li)::before{content:counter(ix,decimal-leading-zero);font:400 1.7rem/1 var(--fd),serif;color:var(--brand)}
:where(.index h3){margin:0;font-size:1.4rem}:where(.index h3 a){color:var(--ink);text-decoration:none}:where(.index h3 a:hover){text-decoration:underline}
:where(.index p){margin:0;color:var(--muted)}:where(.index .go){font-weight:600;color:var(--action);white-space:nowrap}
:where(.icn-i-outline-thin) :where(.index li)::before{content:none}:where(.index .gl){color:var(--brand)}:where(.index .gl .ic){width:1.7rem;height:1.7rem}
:where(.card-c-leftrule) :where(.index li){border-left:3px solid var(--brand);padding-left:16px}
:where(.card-c-toprule) :where(.index li){border-top:3px solid var(--brand)}
/* two-column editorial */
:where(.cols){display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,6vw,96px);align-items:start}
:where(.figs){display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}
:where(.figs div){padding:26px 24px 10px 0;border-right:1px solid var(--line)}:where(.figs div:last-child){border-right:0}
:where(.figs b){display:block;font:400 clamp(2.6rem,5vw,3.8rem)/1 var(--fd),serif;color:var(--brand);margin-bottom:12px}
:where(.figs h3){font-size:1.1rem;font-family:var(--fb),sans-serif;font-weight:600}:where(.figs p){color:var(--muted);font-size:.95rem;margin:0 0 6px}:where(.figs small){color:var(--muted);font-size:.78rem}
:where(.office){border:1px solid var(--ink);display:grid;grid-template-columns:1fr 1fr;border-radius:var(--r)}
:where(.office > div){padding:clamp(24px,4vw,48px)}:where(.office > div + div){border-left:1px solid var(--line)}
:where(.office .pic img){width:100%;height:100%;object-fit:cover}
:where(.towns){display:flex;flex-wrap:wrap;gap:6px 0;list-style:none;padding:0;margin:0;font:400 clamp(1.5rem,3vw,2.2rem)/1.3 var(--fd),serif}
:where(.towns li){margin:0}:where(.towns li + li)::before{content:"\00b7";margin:0 .45em;color:var(--brand)}:where(.towns a){color:var(--ink);text-decoration:none}:where(.towns a:hover){text-decoration:underline}
:where(.steps){list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);counter-reset:st}
:where(.steps li){margin:0;padding:24px 24px 6px 0;counter-increment:st}:where(.steps li + li){padding-left:24px;border-left:1px solid var(--line)}
:where(.steps li)::before{content:counter(st,upper-roman) ".";display:block;font:400 1.9rem/1 var(--fd),serif;color:var(--brand);margin-bottom:12px}
:where(.steps h3){font-size:1.25rem}:where(.steps p){color:var(--muted)}
/* typographic CTA */
:where(.ctyp){text-align:center;background:var(--surface)}:where(.ctyp .big){display:inline-block;font:400 clamp(2.6rem,8vw,6rem)/1 var(--fd),serif;color:var(--ink);text-decoration:none;margin:10px 0 14px;border-bottom:2px solid var(--brand)}
:where(.ctyp .big:hover){color:var(--action)}
:where(.cta-cta-solid) :where(.ctyp){background:var(--dark)}:where(.cta-cta-solid) :where(.ctyp) :where(h2,p,.big,.broker){color:var(--on-dark)}:where(.cta-cta-solid) :where(.ctyp) :where(.folio),:where(.cta-cta-solid) :where(.ctyp) :where(.folio)::before{color:var(--on-dark-muted)}
:where(.cta-cta-letter) :where(.ctyp .wrap){max-width:760px;text-align:left;border:1px solid var(--ink);padding:40px;background:var(--bg)}
/* article */
:where(.layout){display:grid;grid-template-columns:230px minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
:where(.toc){position:sticky;top:110px;font-size:.92rem}:where(.toc b){display:block;font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
:where(.toc ol){list-style:none;margin:0;padding:0;border-left:1px solid var(--line)}:where(.toc li){margin:0}:where(.toc a){display:block;padding:6px 0 6px 14px;color:var(--text);text-decoration:none;line-height:1.35}
:where(.toc a:hover){color:var(--action)}
:where(.prose){max-width:70ch}:where(.prose h2){font-size:clamp(1.55rem,2.6vw,2.1rem);margin-top:1.8em;scroll-margin-top:110px}:where(.prose h2:first-child){margin-top:0}
:where(.prose h3){font-family:var(--fb),sans-serif;font-weight:600;font-size:1.12rem;margin-top:1.4em}
:where(.tbl){overflow-x:auto;margin:0 0 1.4em}
:where(.prose table){border-collapse:collapse;width:100%;font-size:.95rem;border-top:1px solid var(--ink)}:where(.prose th,.prose td){border-bottom:1px solid var(--line);padding:11px 12px 11px 0;text-align:left;vertical-align:top;line-height:1.5}
:where(.prose thead th){font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600}:where(.prose caption){caption-side:top;text-align:left;font:400 1.2rem var(--fd),serif;color:var(--ink);padding:0 0 10px}
.summary{border-top:2px solid var(--ink);border-bottom:1px solid var(--line);padding:18px 0;margin:0 0 28px}.summary b{display:block;font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--brand);margin-bottom:8px}
.summary p{margin:0;font:400 1.22rem/1.55 var(--fd),serif;color:var(--ink)}
:where(.kf){margin-bottom:28px}
:where(.signoff){border:1px solid var(--line);padding:24px 26px;margin-top:40px;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;border-radius:var(--r)}
:where(.signoff h2){font-size:1.4rem;margin:0 0 4px}:where(.signoff p){margin:0;color:var(--muted)}:where(.signoff .tel){font:400 1.6rem/1.1 var(--fd),serif;color:var(--ink);text-decoration:none}
:where(.updated){font-size:.88rem;color:var(--muted)}
/* faq */
:where(.faqgrid){display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,6vw,96px)}
:where(.faq){border-top:1px solid var(--ink);counter-reset:q}:where(.faq details){border-bottom:1px solid var(--line);counter-increment:q}
:where(.faq summary){cursor:pointer;list-style:none;position:relative;padding:18px 40px 18px 0;font:400 1.22rem/1.4 var(--fd),serif;color:var(--ink)}
:where(.faq summary)::-webkit-details-marker{display:none}:where(.faq summary)::after{content:"+";position:absolute;right:4px;top:16px;font:300 1.6rem/1 var(--fb),sans-serif;color:var(--brand)}
:where(.faq details[open] summary)::after{content:"\2212"}:where(.faq details > div){padding:0 0 16px;color:var(--text)}
:where(.faq-faq-numbered) :where(.faq summary)::before{content:counter(q,decimal-leading-zero) "\00a0\00a0";color:var(--brand);font-family:var(--fb),sans-serif;font-size:.9rem;letter-spacing:.08em}
:where(.faq-faq-numbered) :where(.faq details[open]){background:var(--surface)}
:where(.faq-faq-rules,.faq-faq-numbered) :where(.faqgrid){grid-template-columns:1fr}:where(.faq-faq-rules,.faq-faq-numbered) :where(.faqgrid > div:first-child){max-width:none}
:where(.faq-faq-serif) :where(.faq summary){font-size:1.4rem}
:where(.faq-more){color:var(--muted);margin-top:18px;font-size:.95rem}
/* related */
:where(.further){list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}:where(.further li){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:20px;padding:16px 0;border-bottom:1px solid var(--line);margin:0}
:where(.further a){font:400 1.2rem/1.3 var(--fd),serif}:where(.further p){margin:0;color:var(--muted);font-size:.95rem}
/* forms, calculator, map */
.form-wrap{border:1px solid var(--ink);padding:10px;min-height:960px;background:var(--bg)}.form-wrap iframe{display:block;width:100%;min-height:932px;border:0}
.calc{display:grid;grid-template-columns:1.1fr .9fr;border:1px solid var(--ink);background:var(--bg)}
.calc form{padding:30px}.calc label{display:block;font-weight:600;color:var(--ink);margin:0 0 6px}.calc .fld{margin-bottom:18px}.calc .hint{font-weight:400;color:var(--muted);font-size:.85rem}
.calc input{width:100%;height:50px;border:0;border-bottom:1px solid var(--ink);padding:0 2px;font:400 1.3rem var(--fd),serif;color:var(--ink);background:transparent}.calc input:focus{outline:2px solid var(--ink)}
.calc .res{border-left:1px solid var(--line);background:var(--surface);padding:30px;display:flex;flex-direction:column;gap:14px}.calc .res h2{font-size:1.5rem;margin:0}
.calc dl{margin:0;display:grid;gap:14px}.calc dt{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.calc dd{margin:2px 0 0;font:400 2rem/1.1 var(--fd),serif;color:var(--ink)}.calc dd.sm{font-size:1.3rem}
.calc .res p{font-size:.84rem;color:var(--muted);margin:auto 0 0}
.mapbox{position:relative;min-height:340px;border:1px solid var(--ink);display:grid;place-items:center;text-align:center;padding:24px;background:var(--surface)}.mapbox iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
/* footer */
:where(.colophon){border-top:1px solid var(--ink);padding:56px 0 30px;text-align:center;font-size:.94rem}
:where(.colophon .logo img){height:42px;margin:0 auto 20px}
:where(.frow){list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:4px 22px;padding:0;margin:0 0 22px}:where(.frow li){margin:0}:where(.frow a){color:var(--ink)}
:where(.colophon address){font-style:normal;color:var(--muted);margin-bottom:18px}
:where(.legal){font-size:.85rem}:where(.legal a){color:var(--muted)}
:where(.linkbtn){background:none;border:0;padding:0;font:inherit;color:var(--muted);text-decoration:underline;cursor:pointer;min-height:24px}
:where(.fdisc){max-width:820px;margin:26px auto 0;font-size:.82rem;line-height:1.6;color:var(--muted);text-align:left;border-top:1px solid var(--line);padding-top:20px}
:where(.ft-ft-dark4) :where(.colophon){background:var(--dark);color:var(--on-dark);border:0}:where(.ft-ft-dark4) :where(.colophon) :where(a,.linkbtn,address,.fdisc){color:var(--on-dark)}
:where(.ft-ft-nap-first) :where(.colophon .napbig){display:block;font:400 clamp(2rem,5vw,3.2rem)/1.1 var(--fd),serif;color:var(--ink);text-decoration:none;margin-bottom:6px}
:where(.napbig){display:none}
/* mobile bar */
:where(.mbar){position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;background:var(--bg);border-top:1px solid var(--ink);padding-bottom:env(safe-area-inset-bottom)}
:where(.mbar nav){display:grid;grid-template-columns:1fr 1fr}:where(.mbar a){display:flex;align-items:center;justify-content:center;gap:8px;min-height:56px;text-decoration:none;font-weight:600;color:var(--ink)}
:where(.mbar a.p){background:var(--ink);color:var(--bg)}
:where(.mb-mb-call-pill) :where(.mbar){left:auto;right:16px;bottom:16px;border:0;background:none}:where(.mb-mb-call-pill) :where(.mbar nav){grid-template-columns:auto}
:where(.mb-mb-call-pill) :where(.mbar a:not(.p)){display:none}:where(.mb-mb-call-pill) :where(.mbar a.p){border-radius:999px;padding:0 22px}
/* consent (shared script, family styling) */
.cc-bar{position:fixed;left:0;right:0;bottom:0;z-index:70;background:var(--bg);border-top:1px solid var(--ink)}
.cc-in{max-width:var(--cw);margin:0 auto;padding:16px 28px;display:flex;gap:20px;align-items:center}.cc-txt{margin:0;font-size:.9rem;line-height:1.5;flex:1}
.cc-btns{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.cc-b{font:600 .9rem/1 var(--fb),sans-serif;padding:12px 18px;cursor:pointer;border:1px solid var(--ink);background:var(--bg);color:var(--ink);white-space:nowrap;border-radius:var(--br)}
.cc-acc,.cc-save{background:var(--ink);color:var(--bg)}.cc-set{border:0;text-decoration:underline}
.cc-ov{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.45);display:grid;place-items:center;padding:16px}.cc-ov[hidden]{display:none}
.cc-dlg{background:var(--bg);max-width:560px;width:100%;max-height:calc(100vh - 32px);overflow:auto;padding:26px;border:1px solid var(--ink)}
.cc-row{display:flex;gap:16px;justify-content:space-between;border-top:1px solid var(--line);padding:14px 0}.cc-row p{margin:4px 0 0;color:var(--muted);font-size:.95rem}
.cc-sw{appearance:none;-webkit-appearance:none;flex:none;width:46px;height:26px;border-radius:13px;background:#b9bec3;position:relative;cursor:pointer}
.cc-sw::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .15s}
.cc-sw:checked{background:var(--ink)}.cc-sw:checked::after{left:23px}.cc-sw:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
/* responsive */
@media (max-width:1100px){
 .hdr .wrap{grid-template-columns:auto 1fr auto;min-height:70px}.h-letterhead .wrap{justify-items:start;padding-top:0}.addr{display:none}
 .hdr .logo{grid-column:1;grid-row:1}.mbtn{display:block;grid-column:3;grid-row:1}.hcall{grid-column:2;grid-row:1;justify-self:end}
 .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--ink);flex-direction:column;align-items:stretch;padding:8px 0 16px;max-height:calc(100dvh - 120px);overflow-y:auto}
 .nav.open{display:flex}.navl,.navr{flex-direction:column;align-items:stretch;gap:0}.nav a{padding:14px 28px;border-bottom:1px solid var(--line)}
 .drop{display:grid;grid-template-columns:1fr auto}.sub-t{display:grid;place-items:center;width:56px;background:none;border:0;border-bottom:1px solid var(--line);color:var(--ink);cursor:pointer}
 .drop:hover .drop-m,.drop:focus-within .drop-m{display:none}.drop-m{grid-column:1/-1;position:static;border:0;padding:0 0 0 18px}.drop.open .drop-m{display:block}
 .nav .btn{margin:14px 28px 0}.nav-call{display:block}
 .layout{grid-template-columns:minmax(0,1fr)}.toc{position:static}.toc a{overflow-wrap:anywhere}}
@media (min-width:1101px){.hcall{display:none}}
@media (max-width:860px){.mbar{display:block}.hero-b .wrap,.cols,.faqgrid,.office,.calc,.figs,.steps{grid-template-columns:1fr}
 .office > div + div{border-left:0;border-top:1px solid var(--line)}.figs div{border-right:0;border-bottom:1px solid var(--line)}.steps li + li{padding-left:0;border-left:0;border-top:1px solid var(--line)}
 .index li{grid-template-columns:3rem minmax(0,1fr);gap:6px 14px}.index li p,.index .go{grid-column:2}.further li{grid-template-columns:1fr;gap:6px}
 .signoff{grid-template-columns:1fr}.wrap{padding:0 18px}.tstrip .wrap>:last-child{display:none}
 .cc-bar{bottom:calc(56px + env(safe-area-inset-bottom))}.cc-in{flex-direction:column;align-items:stretch;gap:12px;padding:14px 16px}.cc-txt{font-size:.84rem}.cc-btns .cc-b{flex:1}.cc-set{flex-basis:100%!important;order:3}}
@media (min-width:861px){body{padding-bottom:0}}
@media (max-width:560px){.start{grid-template-columns:1fr}.btn{white-space:normal;text-align:center}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
}
