:root{
  --bg:#F2ECE0;--card:#FAF6EE;--ink:#1B1A18;--sub:#6A6760;--line:#D2CAB5;--paper:#FAF6EE;--dark:#1B1A18;--blue:#3B62BD;--blue-d:#7F97D8;--cream:#F2ECE0;
  --head:'Inter Tight','Inter',-apple-system,Helvetica,Arial,sans-serif;
  --body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --serif:'DM Serif Display',Georgia,'Times New Roman',serif;
  box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#F2ECE0}}
:root[data-theme="dark"]{--bg:#F2ECE0}
html{background:var(--bg);scroll-padding-top:calc(env(safe-area-inset-top,0px) + 76px)}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
p{margin:0}a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.wrap{max-width:1320px;margin:0 auto;padding:0 20px}
.label{font-size:13px;color:var(--sub);margin-bottom:12px}
.pill{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:var(--cream);font-size:14px;font-weight:500;padding:13px 20px;border-radius:999px;border:0;cursor:pointer;font-family:var(--body)}
.pill.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.dot{width:7px;height:7px;border-radius:50%;background:var(--blue);display:inline-block}
.p{color:var(--blue)}
h1,h2,h3{margin:0}
.h1{font-family:var(--head);font-weight:500;font-size:clamp(42px,9vw,104px);line-height:.98;letter-spacing:-.045em;max-width:14ch}
.h2{font-family:var(--head);font-weight:500;font-size:clamp(34px,6vw,56px);letter-spacing:-.04em;line-height:1}
.lead{font-size:18px;line-height:1.6;color:#3C3934;max-width:34em}

/* nav */
.nav{position:sticky;top:0;z-index:30;background:rgba(242,236,224,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding-top:env(safe-area-inset-top,0px)}
.nav .wrap{display:flex;justify-content:space-between;align-items:center;height:64px;gap:16px}
.mark{font-family:'Fraunces',Georgia,'Times New Roman',serif;font-weight:700;font-variation-settings:'opsz' 72,'SOFT' 0,'WONK' 0;font-size:22px;letter-spacing:.03em;color:var(--ink)}
.mark .p{color:var(--blue)}
.links{display:none;gap:26px;font-size:14px}
.links a[aria-current="page"]{color:var(--blue)}
.navr{display:flex;align-items:center;gap:10px}
.menu-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--card);cursor:pointer;display:flex;align-items:center;justify-content:center}
.menu-btn span{display:block;width:16px;height:1.5px;background:var(--ink);box-shadow:0 5px 0 var(--ink),0 -5px 0 var(--ink)}
@media(min-width:900px){.links{display:flex}.menu-btn{display:none}}
.mnav{display:none;border-top:1px solid var(--line);padding:8px 20px 18px}
.mnav.open{display:block}
.mnav a{display:block;font-family:var(--head);font-size:28px;font-weight:500;letter-spacing:-.03em;padding:10px 0}
.mnav a[aria-current="page"]{color:var(--blue)}
@media(min-width:900px){.mnav{display:none!important}}

.phead{padding-top:64px;padding-bottom:56px}
.phead .lead{margin-top:24px}


.car .allm{margin-left:auto;font-size:14px;font-weight:500;color:var(--blue);border-bottom:1px solid var(--blue)}

.meta span:last-child{color:var(--sub)}
.fine{font-size:13px;color:var(--sub);margin-top:28px;max-width:46em;line-height:1.5}

/* home */
.hero{padding-top:56px}
.hero-row{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;margin:28px 0 44px}
.hero-row small{font-size:14px;color:var(--sub);max-width:30em;line-height:1.5}
.proof{padding:72px 0 0}
.proof .label{text-align:center}
.mq{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;-webkit-mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.mq-track{display:flex;gap:48px;width:max-content;animation:mq 34s linear infinite;font-family:var(--head);font-weight:500;font-size:20px;letter-spacing:-.01em;white-space:nowrap}
@keyframes mq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.mq-track{animation:none}}
.who{padding-top:96px;padding-bottom:96px;display:grid;gap:32px}
@media(min-width:960px){.who{grid-template-columns:1fr 1fr;gap:64px;align-items:end}}
.who .h2{font-size:clamp(40px,8vw,84px);line-height:.98;letter-spacing:-.045em}
.stats{display:flex;flex-wrap:wrap;gap:24px 40px;margin-top:28px}
.stats b{display:block;font-family:var(--head);font-weight:500;font-size:40px;letter-spacing:-.03em}
.stats span{font-size:13px;color:var(--sub);display:block;max-width:16em}
.sec{padding-top:96px}
.sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px}
.sec-head .sub{font-size:15px;color:var(--sub);margin-top:10px;max-width:36em;line-height:1.5}

/* accordions */
details{border-top:1px solid var(--line)}
details:last-of-type{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:44px 1fr 28px;align-items:center;padding:24px 0;gap:8px}
summary::-webkit-details-marker{display:none}
summary .n{font-size:13px;color:var(--sub)}
summary h3{font-family:var(--head);font-weight:500;font-size:clamp(24px,4.5vw,40px);letter-spacing:-.03em;line-height:1.05}
summary .pm{font-size:24px;text-align:right;transition:transform .3s}
details[open] .pm{transform:rotate(45deg)}
.dbody{padding:0 0 28px 52px;max-width:720px}
.dbody p{font-size:16px;line-height:1.65;color:#3C3934}
.dbody a.more{display:inline-block;margin-top:14px;font-size:14px;color:var(--blue);border-bottom:1px solid var(--blue)}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.tags span{font-size:13px;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:7px 12px}
.faq{padding-top:96px;padding-bottom:80px;display:grid;gap:28px}
@media(min-width:960px){.faq{grid-template-columns:1fr 1.4fr;gap:64px}}
.faq summary{grid-template-columns:1fr 28px;padding:20px 0}
.faq summary h3{font-size:18px;letter-spacing:-.01em;font-family:var(--body);line-height:1.35}
.faq .dbody{padding:0 0 22px}

/* testimonials */
.quotes{display:grid;gap:14px}
@media(min-width:900px){.quotes{grid-template-columns:repeat(2,minmax(0,1fr))}}
.q{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:28px 24px;display:flex;flex-direction:column;gap:22px}
.q p{font-family:var(--serif);font-size:22px;line-height:1.3}
.q span{font-size:13px;color:var(--sub)}

/* practice page */
.pa{display:grid;gap:28px;padding-top:48px;padding-bottom:48px;border-top:1px solid var(--line)}

.pa .num{font-size:13px;color:var(--blue);margin-bottom:14px}
.pa h2{font-family:var(--head);font-weight:500;font-size:clamp(30px,5vw,48px);letter-spacing:-.04em;line-height:1.02;margin-bottom:16px}
.pa p.d{font-size:17px;line-height:1.65;color:#3C3934;max-width:34em}
.sublinks{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:18px}
.sublinks a{font-size:14px;color:var(--blue);border-bottom:1px solid var(--blue)}

/* services */
.svc{display:grid;gap:14px}
@media(min-width:900px){.svc{grid-template-columns:repeat(2,minmax(0,1fr))}}
.s{border-radius:18px;padding:30px 24px;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line)}
.s .top{display:flex;justify-content:space-between;font-size:13px;color:var(--sub);margin-bottom:28px}
.s .top b{font-weight:500;color:var(--blue)}
.s h2{font-family:var(--head);font-weight:500;font-size:clamp(30px,5vw,40px);letter-spacing:-.035em;line-height:1.02;margin-bottom:14px}
.s p.d{font-size:16px;line-height:1.6;opacity:.85}
.s p.best{font-size:15px;line-height:1.55;margin-top:16px}
.s dl{margin:26px 0 0;padding-top:18px;border-top:1px solid var(--line);display:grid;grid-template-columns:auto 1fr;gap:10px 18px;font-size:14px}
.s dt{color:var(--sub)}.s dd{margin:0;text-align:right}
.s .pill{margin-top:26px;align-self:flex-start}
.s .lm{color:var(--blue);border-color:var(--blue)}
@media(max-width:899px){.svc .s:nth-child(odd){background:var(--dark);color:var(--cream);border-color:var(--dark)}.svc .s:nth-child(odd) .top{color:#A9A196}.svc .s:nth-child(odd) .top b{color:var(--blue-d)}.svc .s:nth-child(odd) dl{border-color:#36332E}.svc .s:nth-child(odd) dt{color:#A9A196}.svc .s:nth-child(odd) .pill{background:var(--cream);color:var(--dark)}.svc .s:nth-child(odd) .lm{color:var(--blue-d);border-color:var(--blue-d)}}
@media(min-width:900px){.svc .s:nth-child(4n+1),.svc .s:nth-child(4n){background:var(--dark);color:var(--cream);border-color:var(--dark)}.svc .s:nth-child(4n+1) .top,.svc .s:nth-child(4n) .top{color:#A9A196}.svc .s:nth-child(4n+1) .top b,.svc .s:nth-child(4n) .top b{color:var(--blue-d)}.svc .s:nth-child(4n+1) dl,.svc .s:nth-child(4n) dl{border-color:#36332E}.svc .s:nth-child(4n+1) dt,.svc .s:nth-child(4n) dt{color:#A9A196}.svc .s:nth-child(4n+1) .pill,.svc .s:nth-child(4n) .pill{background:var(--cream);color:var(--dark)}.svc .s:nth-child(4n+1) .lm,.svc .s:nth-child(4n) .lm{color:var(--blue-d);border-color:var(--blue-d)}}
.note{font-size:15px;color:#3C3934;margin-top:22px;line-height:1.55}

/* about */
.three{display:grid;gap:14px}
@media(min-width:900px){.three{grid-template-columns:repeat(3,minmax(0,1fr))}}
.three .q h3{font-family:var(--head);font-weight:500;font-size:26px;letter-spacing:-.03em}
.three .q p{font-family:var(--body);font-size:16px;line-height:1.6;color:#3C3934}
.three .q .n{font-size:13px;color:var(--blue)}
.split{display:grid;gap:28px;padding-top:96px}
@media(min-width:960px){.split{grid-template-columns:1fr 1fr;gap:64px;align-items:center}}
.split p+p{margin-top:16px}

/* profile */
.prof{display:grid;gap:36px;padding-top:56px}
@media(min-width:960px){.prof{grid-template-columns:380px 1fr;gap:72px;align-items:start}}
.portrait{aspect-ratio:4/5;border-radius:16px;background:linear-gradient(160deg,#D9D0BE,#B9AE98);display:flex;align-items:flex-end;padding:16px;font-size:12px;color:#4E4A43}
.prof .bio p{font-size:17px;line-height:1.7;color:#3C3934}
.prof .bio p+p{margin-top:16px}
.facts{margin-top:36px;border-top:1px solid var(--line)}
.fact{display:grid;grid-template-columns:1fr;gap:4px;padding:16px 0;border-bottom:1px solid var(--line)}
@media(min-width:700px){.fact{grid-template-columns:180px 1fr;gap:24px}}
.fact dt{font-size:13px;color:var(--sub)}
.fact dd{margin:0;font-size:16px;line-height:1.55}
.fact a{color:var(--blue);border-bottom:1px solid var(--blue)}

/* contact */
.ct{display:grid;gap:40px;padding-bottom:40px}
@media(min-width:960px){.ct{grid-template-columns:1fr 1.3fr;gap:72px}}
.reach dl{margin:0}
.reach .fact{grid-template-columns:1fr}
.form{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px 22px;display:grid;gap:18px}
.form label{display:grid;gap:8px;font-size:14px;font-weight:500}
.form input,.form textarea{font:inherit;font-weight:400;font-size:16px;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:13px 14px;color:var(--ink)}
.form textarea{min-height:120px;resize:vertical}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opts button{font:inherit;font-size:14px;font-weight:400;border:1px solid var(--line);background:var(--bg);border-radius:999px;padding:10px 14px;cursor:pointer;color:var(--ink);min-height:44px}
.opts button[aria-pressed="true"]{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.sent{font-size:14px;color:var(--blue);display:none;line-height:1.5}
.grp{display:grid;gap:10px}
.glab{font-size:14px;font-weight:500}
.opt{font-weight:400;color:var(--sub)}
.two{display:grid;gap:18px}
@media(min-width:700px){.two{grid-template-columns:1fr 1fr}}
.priv{font-size:12px;color:var(--sub);line-height:1.5}

.engage{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:30px 24px}
.three .q .more{font-family:var(--body)}
.nextpa{display:flex;flex-direction:column;gap:8px;margin-top:24px;padding:36px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.nextpa .nm{font-family:var(--head);font-weight:500;font-size:clamp(30px,6vw,56px);letter-spacing:-.04em;line-height:1}
.nextpa:hover .nm{color:var(--blue)}
.legal{max-width:720px;padding-bottom:24px}
.legal p,.legal li{font-size:17px;line-height:1.7;color:#3C3934}
.legal p+p{margin-top:16px}
.legal h2{font-family:var(--head);font-weight:500;font-size:26px;letter-spacing:-.02em;margin:44px 0 14px;color:var(--ink)}
.legal ul{margin:14px 0 16px;padding-left:20px}
.legal li+li{margin-top:10px}
.legal strong{color:var(--ink);font-weight:500}
.legal a{color:var(--blue);border-bottom:1px solid var(--blue)}
.legal .xlink{margin-top:48px;padding-top:24px;border-top:1px solid var(--line)}
.idx{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.idx li{border-bottom:1px solid var(--line)}
.idx button.row{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:grid;grid-template-columns:1fr 28px;gap:12px;align-items:center;padding:20px 0}
@media(min-width:800px){.idx button.row{grid-template-columns:200px 1fr 220px 28px}}
.idx button.row:focus-visible{outline:2px solid var(--blue)}
.idx .ty{font-size:13px;color:var(--blue)}
.idx .ti{font-family:var(--head);font-weight:500;font-size:clamp(19px,3vw,24px);letter-spacing:-.02em;line-height:1.2}
.idx .cl{font-size:14px;color:var(--sub)}
.idx .mob{display:flex;flex-direction:column;gap:6px}
@media(min-width:800px){.idx .mob{display:contents}}
.idx .pm{font-size:22px;text-align:right;transition:transform .3s}
.idx li.open .pm{transform:rotate(45deg)}
.idx .det{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.idx li.open .det{grid-template-rows:1fr}
.idx .det>div{overflow:hidden}
.idx .det .in{padding:0 0 24px;display:grid;gap:14px;max-width:760px}
@media(min-width:800px){.idx .det .in{padding-left:212px}}
.idx .det p{font-size:16px;line-height:1.65;color:#3C3934}
.idx .mf{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.idx .mf span{font-size:13px;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:6px 11px}
.idx .mf a{font-size:13px;color:var(--blue);border-bottom:1px solid var(--blue);align-self:center;margin-left:4px}
@media (prefers-reduced-motion:reduce){.idx .det{transition:none}}
.lm{display:inline-block;margin-top:14px;font-size:14px;color:var(--blue-d);border-bottom:1px solid var(--blue-d);align-self:flex-start}
.xb{background:var(--dark);color:var(--cream);border-radius:20px;padding:22px;display:grid;gap:22px}
@media(min-width:900px){.xb{grid-template-columns:1.5fr 1fr;padding:30px;align-items:center}}
.xb svg{width:100%;height:auto;display:block}
.xb .city{cursor:pointer}
.xb .city circle.hit{fill:transparent}
.xb .arc{fill:none;stroke:#6A665E;stroke-width:2;stroke-dasharray:4 5;transition:stroke .3s}
.xb .arc.on{stroke:var(--blue-d);stroke-dasharray:none}
.xb .dotc{fill:#8A847A;transition:fill .3s}
.xb .city.on .dotc{fill:var(--blue-d)}
.xb text{font-family:var(--body);font-size:20px;fill:#C9C3B8}
.xb .city.on text{fill:var(--cream)}
.xb .tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.xb .tabs button{font:inherit;font-size:14px;border:1px solid #3A3731;background:transparent;color:var(--cream);border-radius:999px;padding:10px 14px;cursor:pointer;min-height:44px}
.xb .tabs button[aria-pressed="true"]{background:var(--cream);color:var(--dark)}
.xb .k{font-size:13px;color:var(--blue-d)}
.xb h3{font-family:var(--serif);font-weight:400;font-size:clamp(26px,4vw,32px);line-height:1.1;margin:10px 0 12px}
.xb p.d{font-size:15px;line-height:1.6;color:#C9C3B8}
.xb .xf{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.xb .xf span{font-size:13px;border:1px solid #3A3731;border-radius:999px;padding:6px 11px}
.eb{font-size:14px;color:var(--blue);margin-bottom:14px}
.lph{max-width:17ch}
.lph em{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.02em}
.whobox{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:30px 22px;display:grid;gap:24px}
@media(min-width:960px){.whobox{grid-template-columns:1fr 1.1fr;gap:56px;padding:44px 40px}.whobox .nbh{grid-column:1/-1}}
.wl{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.wl li{display:flex;gap:14px;padding:15px 0;border-bottom:1px solid var(--line);font-size:17px;line-height:1.45}
.wl .ar{color:var(--blue)}
.nbh .label{margin-bottom:10px}
.xlnk{display:inline-block;margin-top:28px;font-size:15px;color:var(--blue);border-bottom:1px solid var(--blue)}
.dbody p a{color:var(--blue);border-bottom:1px solid var(--blue)}
body.min .links,body.min .navr,body.min .mnav,body.min .cta,body.min footer nav{display:none!important}
body.min footer{padding-top:40px}
.gl{display:grid;gap:40px;padding-top:48px;padding-bottom:80px}
@media(min-width:980px){.gl{grid-template-columns:1.15fr 1fr;gap:72px;align-items:start;padding-top:72px}.gl-r{position:sticky;top:96px}}
.gh{max-width:13ch}
.gh em{font-family:var(--serif);font-style:italic;font-weight:400}
.gl .lead{margin-top:22px}
.ih{font-size:clamp(28px,4.5vw,36px);margin-top:40px}
.gi{list-style:none;margin:20px 0 0;padding:0;border-top:1px solid var(--line)}
.gi li{display:flex;gap:16px;padding:15px 0;border-bottom:1px solid var(--line);font-size:17px;line-height:1.45}
.gn{font-size:13px;color:var(--blue);padding-top:3px;min-width:22px}
.gform{gap:16px}
.gf-h{font-family:var(--head);font-weight:500;font-size:28px;letter-spacing:-.03em}
.gf-s{font-size:14px;color:var(--sub);margin-top:-10px}
.gl2{font-size:14px;font-weight:500}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.tyw{padding-top:64px;padding-bottom:96px;max-width:900px}
.tyw .lead{margin-top:22px}
.jump{display:inline-flex;margin-top:26px}
@media(min-width:980px){.jump{display:none}}

.dl{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:30px}
.dl small{font-size:14px;color:var(--sub)}
.tybox{margin-top:64px;background:var(--dark);color:var(--cream);border-radius:20px;padding:34px 24px;display:grid;gap:26px}
@media(min-width:860px){.tybox{grid-template-columns:1.4fr 1fr;align-items:end;padding:44px 40px}}
.tybox h2{font-family:var(--head);font-weight:500;font-size:clamp(30px,5vw,44px);letter-spacing:-.04em;line-height:1.02;margin-bottom:14px}
.tybox p{font-size:16px;line-height:1.6;color:#C9C3B8}
.tyb{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.tybox .pill{background:var(--cream);color:var(--dark)}
.tyl{font-size:14px;color:var(--blue-d);border-bottom:1px solid var(--blue-d)}
.gpromo{display:grid;gap:8px;margin-top:56px;background:var(--dark);color:var(--cream);border-radius:18px;padding:28px 24px}
.gp-k{font-size:13px;color:var(--blue-d)}
.gp-t{font-family:var(--serif);font-size:clamp(26px,4.5vw,34px);line-height:1.1}
.gp-s{font-size:15px;line-height:1.55;color:#C9C3B8;max-width:36em}
.gp-c{font-size:14px;font-weight:500;margin-top:6px;color:var(--cream)}
/* open-state panels for matters + practice accordions */
.idx li,.wrap>details{padding:0 16px;border-radius:0;transition:background-color .3s ease,color .3s ease}
@media (hover:hover){.idx li:not(.open):hover,.wrap>details:not([open]):hover{background:var(--card)}}
.idx li.open,.wrap>details[open]{background:var(--dark);color:var(--cream);border-radius:14px;border-bottom-color:transparent}
.idx li.open .ty{color:var(--blue-d)}
.idx li.open .cl,.wrap>details[open] summary .n{color:#A9A196}
.idx li.open .det p,.wrap>details[open] .dbody p{color:#D8D2C6}
.idx li.open .mf span,.wrap>details[open] .tags span{background:transparent;border-color:#3A3731;color:var(--cream)}
.idx li.open .mf a,.wrap>details[open] .dbody a.more{color:var(--blue-d);border-color:var(--blue-d)}
.idx li.open .pm,.wrap>details[open] .pm{color:var(--cream)}
.idx li.open button.row:focus-visible,.wrap>details[open] summary:focus-visible{outline-color:var(--blue-d)}
@media(min-width:800px){.idx .det .in{padding-left:212px}}
@media (prefers-reduced-motion:reduce){.idx li,.wrap>details{transition:none}}
.idx li,.wrap>details{scroll-margin-top:84px}
/* cta + footer */
.cta{margin:96px 20px 0;background:var(--dark);color:var(--cream);border-radius:22px;padding:64px 24px;text-align:center}
@media(min-width:1360px){.cta{max-width:1320px;margin-left:auto;margin-right:auto}}
.cta .label{color:#A9A196;display:flex;align-items:center;justify-content:center;gap:8px}
.cta h2{font-family:var(--head);font-weight:500;font-size:clamp(38px,8vw,80px);letter-spacing:-.045em;line-height:1;margin:0 auto 18px;max-width:14ch}
.cta .cta-sub{font-size:16px;color:#C9C3B8;margin:0 auto 30px;max-width:32em;line-height:1.55}
.cta h2 .p{color:var(--blue-d)}
.cta .pill{background:var(--cream);color:var(--dark)}
footer{padding:56px 0 64px}
footer .row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;font-size:14px;color:var(--sub)}
footer .mark{color:var(--ink);display:block;margin-bottom:6px}
footer nav{display:flex;flex-wrap:wrap;gap:12px 18px}
footer .disc{font-size:12px;color:var(--sub);margin-top:28px;max-width:60em;line-height:1.5}

/* form chips as radios */
.chip{position:relative;display:inline-flex}
.chip input{position:absolute;opacity:0;width:1px;height:1px}
.chip span{font-size:14px;border:1px solid var(--line);background:var(--bg);border-radius:999px;padding:10px 14px;cursor:pointer;color:var(--ink);min-height:44px;display:inline-flex;align-items:center}
.chip input:checked+span{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.chip input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}
.portrait-img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:16px;background:#D9D0BE;display:block}
.req{color:var(--blue)}
.glab{font-size:14px;font-weight:500;margin-bottom:10px;padding:0}
.grp legend+.opts{margin-top:0}
.nf{padding-top:96px;padding-bottom:120px}
