/* APG brand colors — see BRAND-COLORS.md. Yellow is used only as thin rules / tiny details. */
:root{--apg-blue:#23408F;--apg-navy:#021647;--apg-yellow:#FFE800;--apg-light:#F1F1EF;
--navy:var(--apg-navy);--blue:var(--apg-blue);--ink:#1a2233;--mut:#5a6372;--line:#e3e3de;--line2:#d4d4ce;
--serif:"Cormorant Garamond","Iowan Old Style","Palatino Linotype",Georgia,serif;
--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font:400 16px/1.7 var(--sans);font-variant-numeric:lining-nums;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}
p{margin:0 0 1.1em}ul{padding-left:1.1em}
.wrap{max-width:1240px;margin:0 auto;padding:0 40px}.narrow{max-width:820px}
h1,h2{font-variant-numeric:lining-nums;font-family:var(--serif);font-weight:500;color:var(--navy);letter-spacing:-.005em;margin:0 0 .45em}
h1{font-size:clamp(40px,5vw,66px);line-height:1.04}h2{font-size:clamp(32px,3.4vw,46px);line-height:1.1}
h3{font:600 17px/1.35 var(--sans);color:var(--navy);margin:0 0 .5em;letter-spacing:-.005em}
.serif{font-family:var(--serif)}
.eyebrow,.shead p.eyebrow,.dark p.eyebrow{display:flex;align-items:center;gap:14px;font:600 11px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--blue);margin:0 0 22px}
.eyebrow:before{content:"";width:28px;height:2px;background:var(--apg-yellow);flex:none}
.eyebrow.plain:before{display:none}
.lead{font-size:19px;line-height:1.65;color:#3c4554;max-width:680px}
.mut,.note{color:var(--mut)}.note{font-size:13px;line-height:1.6}
section{padding:112px 0}section.tight{padding:72px 0}section.light{background:var(--apg-light)}
.shead{max-width:760px;margin-bottom:56px}.shead.row{max-width:none;display:flex;justify-content:space-between;align-items:flex-end;gap:32px}
.shead p{color:#3c4554;font-size:17px}
.hair{border:0;border-top:1px solid var(--line);margin:0}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:600 12px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;padding:18px 30px;border:1px solid var(--navy);background:var(--navy);color:#fff;transition:background .2s,color .2s;white-space:nowrap}
.btn:hover{text-decoration:none;background:var(--blue);border-color:var(--blue)}
.btn.ghost{background:transparent;color:var(--navy)}.btn.ghost:hover{background:var(--navy);color:#fff}
.btn.light{background:#fff;color:var(--navy);border-color:#fff}.btn.light:hover{background:var(--apg-light)}
.btn.olight{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}.btn.olight:hover{background:#fff;color:var(--navy)}
.btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.tlink{font:600 12px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--navy);border-bottom:1px solid var(--navy);padding-bottom:6px;white-space:nowrap}
.tlink:hover{text-decoration:none;color:var(--blue);border-color:var(--blue)}
/* header */
header.top{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;height:82px;gap:24px}
.brand{color:var(--navy);line-height:1;display:block}.brand:hover{text-decoration:none}
.brand b{font:600 25px/1 var(--serif);letter-spacing:.01em}.brand b span{font:600 12px/1 var(--sans);letter-spacing:.18em;margin-left:6px;color:var(--blue)}
.brand small{display:block;white-space:nowrap;font:500 9.5px/1 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--mut);margin-top:8px}
nav.main>ul{list-style:none;margin:0;padding:0;display:flex;gap:26px;align-items:center}
nav.main li{position:relative}
nav.main>ul>li>a{display:block;white-space:nowrap;font:500 11.5px/82px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}
nav.main>ul>li>a:hover,nav.main a[aria-current]{color:var(--blue);text-decoration:none}
nav.main>ul>li>a[aria-current]{box-shadow:inset 0 -2px 0 var(--apg-yellow)}
nav.main .sub{display:none;position:absolute;left:-24px;top:100%;background:#fff;border:1px solid var(--line);min-width:250px;padding:12px 0;list-style:none;margin:0;box-shadow:0 18px 40px rgba(2,22,71,.08)}
nav.main li:hover>.sub,nav.main li:focus-within>.sub{display:block}
nav.main .sub a{display:block;padding:9px 24px;font-size:14px;color:var(--ink)}nav.main .sub a:hover{background:var(--apg-light);text-decoration:none;color:var(--navy)}
.hcall{font:600 11.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#fff;background:var(--navy);padding:14px 20px;white-space:nowrap}
.hcall:hover{background:var(--blue);text-decoration:none}
details.mnav{display:none}
details.mnav summary{list-style:none;cursor:pointer;font:600 11px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--navy);border:1px solid var(--navy);padding:12px 14px}
details.mnav summary::-webkit-details-marker{display:none}
details.mnav[open] .mpanel{display:block}
.mpanel{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);padding:12px 22px 26px;max-height:80vh;overflow:auto;box-shadow:0 24px 40px rgba(2,22,71,.08)}
.mpanel a{display:block;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink);font-size:15px}
.mpanel a.sub{padding-left:16px;font-size:14px;color:var(--mut)}
/* hero */
.hero{padding:0;border-bottom:1px solid var(--line)}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:72px;align-items:stretch;min-height:640px}
.hero .copy{padding:104px 0 96px;display:flex;flex-direction:column;justify-content:center}
.hero h1{font-size:clamp(44px,5.4vw,74px);margin-bottom:28px}
.hero .lead{font-size:19px}
.hero .portrait{background:var(--apg-light);position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.hero .portrait img{width:86%;max-width:470px;height:auto;mix-blend-mode:multiply;margin-top:48px}
.hero .portrait .cap{position:absolute;left:0;bottom:0;background:var(--navy);color:#fff;padding:18px 24px;font:500 11px/1.5 var(--sans);letter-spacing:.18em;text-transform:uppercase}
.hero .portrait .cap b{display:block;font:500 22px/1.2 var(--serif);letter-spacing:0;text-transform:none}
/* credentials strip */
.cred{border-bottom:1px solid var(--line)}
.cred ul{list-style:none;margin:0 auto;padding:0;display:grid;grid-template-columns:repeat(5,1fr)}
.cred li{padding:34px 24px;border-right:1px solid var(--line);text-align:left}.cred li:last-child{border-right:0}.cred li:first-child{padding-left:0}
.cred b{display:block;font:500 25px/1.15 var(--serif);color:var(--navy);margin-bottom:6px}
.cred span{font:500 10.5px/1.5 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--mut)}
/* welcome letter */
.letter{display:grid;grid-template-columns:.8fr 1.2fr;gap:88px;align-items:start}
.letter blockquote{margin:0;padding:0;border:0;background:none;font:500 clamp(23px,2.1vw,28px)/1.5 var(--serif);color:var(--navy)}
.letter blockquote p{margin:0 0 .9em}
.sig{margin-top:30px;padding-top:24px;border-top:1px solid var(--line);display:flex;align-items:center;gap:18px}
.sig img{width:64px;height:64px;object-fit:cover;object-position:top;border-radius:50%;background:var(--apg-light)}
.sig b{display:block;font:600 22px/1.2 var(--serif);color:var(--navy)}.sig span{font:500 11px/1.6 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
/* listing cards */
.lgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:56px 40px}
.lcard{display:flex;flex-direction:column;min-width:0}
.lcard .im{display:block;overflow:hidden;aspect-ratio:3/2;background:var(--apg-light)}
.lcard .im img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.lcard:hover .im img{transform:scale(1.035)}
.lk{display:flex;gap:10px;align-items:center;font:600 10.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--blue);margin:22px 0 12px}
.lk i{font-style:normal;color:var(--mut)}.lk .dot{width:3px;height:3px;background:var(--line2);border-radius:50%}
.lcard h3{font:500 25px/1.18 var(--serif);color:var(--navy);margin:0 0 6px}.lcard h3 a{color:inherit}
.lcard .addr{font-size:14px;color:var(--mut);margin:0 0 18px}
.lfacts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:auto}
.lfacts div{padding:14px 0 0}.lfacts div+div{padding-left:18px;border-left:1px solid var(--line)}
.lfacts dt{font:600 9.5px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--mut);margin-bottom:8px}
.lfacts dd{margin:0;font:600 15px/1.3 var(--sans);color:var(--navy);font-variant-numeric:tabular-nums}
.lcard.text{border-top:1px solid var(--navy);padding-top:6px}
/* filters */
.filters{display:flex;flex-wrap:wrap;gap:0;margin:0 0 48px;border-bottom:1px solid var(--line)}
.filters button{font:600 11px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;background:none;border:0;border-bottom:2px solid transparent;color:var(--mut);padding:16px 0;margin-right:32px;cursor:pointer}
.filters button.on,.filters button:hover{color:var(--navy);border-bottom-color:var(--navy)}
/* full-bleed mosaic */
.mosaic{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:#fff}
.mosaic a{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;color:#fff}
.mosaic img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.mosaic a:hover img{transform:scale(1.04)}.mosaic a:hover{text-decoration:none}
.mosaic a:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,22,71,0) 35%,rgba(2,22,71,.88))}
.mosaic .mc{position:absolute;left:28px;right:28px;bottom:28px;z-index:2}
.mosaic .mc span{display:block;font:600 10px/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:#dfe5f3;margin-bottom:10px}
.mosaic .mc b{display:block;font:500 34px/1.05 var(--serif)}
.mosaic .mc em{display:block;font-style:normal;font-size:14px;color:#dfe5f3;margin-top:8px}
/* services index */
.svc{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.svc a{display:block;padding:40px 40px 44px 0;border-bottom:1px solid var(--line);color:var(--ink)}
.svc a:nth-child(3n+2),.svc a:nth-child(3n){padding-left:40px;border-left:1px solid var(--line)}
.svc a:hover{text-decoration:none;background:linear-gradient(var(--apg-light),var(--apg-light))}
.svc .n{font:500 13px/1 var(--serif);color:var(--mut);letter-spacing:.1em}
.svc h3{font:500 28px/1.15 var(--serif);color:var(--navy);margin:18px 0 12px}
.svc p{color:var(--mut);font-size:15px;margin:0 0 18px}.svc .more{font:600 10.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--blue)}
/* dark panel */
.dark{background:var(--navy);color:#cfd6e6}.dark h2,.dark h3{color:#fff}.dark .eyebrow{color:#fff}.dark a{color:#fff}
.dark .lead,.dark p{color:#cfd6e6}.dark p.eyebrow{color:#fff}
.slb{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:center}
.slb h2{font-size:clamp(36px,4vw,56px)}
.slb .phone{font:500 clamp(34px,3.6vw,48px)/1 var(--serif);color:#fff;display:block;margin:6px 0 26px}
.slb .rule{border-left:1px solid rgba(255,255,255,.18);padding-left:56px}
.ticks{list-style:none;padding:0;margin:26px 0 0;columns:2;column-gap:40px}
.ticks li{padding:12px 0;border-top:1px solid rgba(255,255,255,.14);break-inside:avoid;font-size:15px}
.ticks.dk li{border-top-color:var(--line)}
/* help (special situations) */
.help{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--navy)}
.help div{padding:30px 28px 10px 0}.help div+div{padding-left:28px;border-left:1px solid var(--line)}
.help h3{font:500 24px/1.2 var(--serif);margin-bottom:12px}.help p{font-size:15px;color:var(--mut)}
/* data strips */
.ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0;background:#fff}
.tk{display:flex;align-items:stretch}
.tklabel{flex:none;display:flex;align-items:center;padding:0 28px 0 0;margin-right:28px;border-right:1px solid var(--line);font:600 10px/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--navy);max-width:220px}
.tkview{overflow:hidden;flex:1;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
#tk{display:flex;gap:56px;list-style:none;margin:0;padding:22px 0;white-space:nowrap;width:max-content;animation:tk 140s linear infinite}
#tk li{font-size:13.5px;color:var(--ink)}#tk li b{font-weight:600;color:var(--navy);margin-right:8px;font-variant-numeric:tabular-nums}#tk li span{color:var(--mut);font-size:12px;margin-left:8px}
.ticker:hover #tk{animation-play-state:paused}@keyframes tk{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){#tk{animation:none}.tkview{overflow-x:auto}}
.tknote{font-size:12px;color:var(--mut);margin:14px 0 0}
.rates{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--navy);border-bottom:1px solid var(--line)}
.rate{padding:30px 32px 26px 0}.rate+.rate{padding-left:32px;border-left:1px solid var(--line)}
.rl{display:block;font:600 10.5px/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.rate b{display:block;font:500 54px/1.1 var(--serif);color:var(--navy);margin:12px 0 10px;font-variant-numeric:lining-nums}
.rate .note{font-size:12px}
/* tables */
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
table.dt{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
.dt th{font:600 10px/1.3 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--mut);text-align:left;padding:0 14px 14px 0;border-bottom:1px solid var(--navy);white-space:nowrap}
.dt td{padding:17px 14px 17px 0;border-bottom:1px solid var(--line);vertical-align:top}
.dt td.num,.dt th.num{text-align:right}.dt td.num{white-space:nowrap}
.dt td b{font-weight:600;color:var(--navy)}.dt .sm{display:block;font-size:12.5px;color:var(--mut);margin-top:2px}
.dt th[data-sort]{cursor:pointer}.dt th[data-sort]:after{content:" \2195";color:var(--line2)}.dt th.asc:after{content:" \2191";color:var(--navy)}.dt th.desc:after{content:" \2193";color:var(--navy)}
.dt tr.hide{display:none}.sm.mo{display:none}
.rank{font:500 18px/1 var(--serif);color:var(--mut)}
.tbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px}
.tbar .filters{margin:0;border:0}
.sel{font:500 13px var(--sans);padding:10px 34px 10px 12px;border:1px solid var(--line2);background:#fff;color:var(--ink);border-radius:0}
.srcbox{margin-top:26px;padding-top:18px;border-top:1px solid var(--line);font-size:12.5px;color:var(--mut);line-height:1.7}
/* split market preview */
.split{display:grid;grid-template-columns:1.25fr .75fr;gap:72px}
/* reviews */
.revs{display:grid;grid-template-columns:repeat(3,1fr);gap:56px}
.review{margin:0;padding:34px 0 0;border-top:1px solid var(--navy);background:none}
.review p{font:500 20px/1.55 var(--serif);color:var(--ink);margin:0 0 .8em}
.review cite{display:block;font:600 11px/1.5 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--navy);font-style:normal;margin-top:18px}
.review .note{display:block;margin-top:6px;font-size:12px}
.stars{display:block;margin-bottom:16px;font:600 10px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--blue)}
.gsum{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:baseline;justify-content:space-between;padding:0 0 28px;margin-bottom:44px;border-bottom:1px solid var(--line)}
.gsum b.big{font:500 44px/1 var(--serif);color:var(--navy);margin-right:10px}
blockquote.q{margin:34px 0;padding:6px 0 6px 28px;border-left:2px solid var(--apg-yellow);font:500 25px/1.5 var(--serif);color:var(--navy);background:none}
blockquote.q cite{display:block;font:600 11px/1.5 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--mut);font-style:normal;margin-top:14px}
/* talk */
.talk{background:var(--apg-light)}
.talkgrid{display:grid;grid-template-columns:.75fr 1.25fr;gap:88px;align-items:center}
.talk .portrait{background:#e7e7e3;aspect-ratio:4/5;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.talk .portrait img{width:100%;height:100%;object-fit:cover;object-position:center top;mix-blend-mode:multiply;padding-top:28px}
.contactlines{display:grid;grid-template-columns:.8fr .8fr 1.5fr;border-top:1px solid var(--navy);margin-top:34px}
.contactlines div{padding:22px 20px 0 0}.contactlines div+div{padding-left:20px;border-left:1px solid var(--line2)}
.contactlines span{display:block;font:600 10px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--mut);margin-bottom:10px}
.contactlines a{font:500 22px/1.3 var(--serif);color:var(--navy)}.contactlines a.em{font:500 15px/1.9 var(--sans)}
.cform{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}
.cform label{display:flex;flex-direction:column;gap:6px;font:600 10.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
.cform input,.cform select,.cform textarea{font:400 15px var(--sans);padding:12px;border:1px solid var(--line2);border-radius:0;background:#fff;text-transform:none;letter-spacing:0}
.cform label:nth-of-type(5),.cform p,.cform button{grid-column:1/-1}
/* page head */
.pagehead{padding:84px 0 64px;border-bottom:1px solid var(--line)}
.pagehead h1{max-width:980px}.pagehead .lead{margin:0}
.crumbs{font:500 11px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--mut);margin-bottom:30px}
.crumbs a{color:var(--mut)}.crumbs span{margin:0 10px;color:var(--line2)}
.byline{display:flex;align-items:center;gap:14px;margin-top:30px;font-size:13px;color:var(--mut)}
.byline img{width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:top;background:var(--apg-light)}
.byline b{color:var(--navy);font-weight:600}
.answer{font:500 clamp(22px,2vw,26px)/1.55 var(--serif);color:var(--navy);border-left:2px solid var(--apg-yellow);padding-left:26px;margin:0 0 48px}
.prose{max-width:760px}.prose h2{font-size:clamp(28px,2.6vw,36px);margin-top:1.6em}.prose h3{margin-top:1.6em}
.prose li{margin-bottom:.5em}
.two{display:grid;grid-template-columns:1fr 1fr;gap:72px}
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}
.aside{border-top:1px solid var(--navy);padding-top:26px}
.aside h3{font:600 10.5px/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.aside ul{list-style:none;padding:0;margin:0}.aside li{padding:11px 0;border-bottom:1px solid var(--line);font-size:15px}
.withaside{display:grid;grid-template-columns:1fr 300px;gap:88px;align-items:start}
.withaside .aside{position:sticky;top:110px}
details.faq{border-bottom:1px solid var(--line);padding:0}
details.faq summary{list-style:none;cursor:pointer;padding:26px 40px 26px 0;font:500 23px/1.35 var(--serif);color:var(--navy);position:relative}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary:after{content:"+";position:absolute;right:4px;top:22px;font:300 26px var(--sans);color:var(--blue)}
details.faq[open] summary:after{content:"\2013"}
details.faq p{max-width:820px;color:#3c4554;padding-bottom:18px}
.cardlist{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
.cardlist a,.cardlist div.c{display:block;padding:32px 32px 36px 0;border-bottom:1px solid var(--line);color:var(--ink)}
.cardlist>*:nth-child(3n+2),.cardlist>*:nth-child(3n){padding-left:32px;border-left:1px solid var(--line)}
.cardlist a:hover{text-decoration:none}.cardlist a:hover h3{color:var(--blue)}
.cardlist h3{font:500 24px/1.2 var(--serif);margin:12px 0 10px}.cardlist p{font-size:14.5px;color:var(--mut);margin:0}
.kicker{font:600 10px/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--blue)}
.cta{background:var(--navy);color:#cfd6e6;padding:96px 0}
.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:48px}
.cta h2{color:#fff;margin:0;max-width:720px;font-size:clamp(30px,3vw,42px)}
.figs{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--navy);border-bottom:1px solid var(--line);margin:0 0 48px}
.figs div{padding:26px 24px 22px 0}.figs div+div{padding-left:24px;border-left:1px solid var(--line)}
.figs b{display:block;font:500 38px/1.1 var(--serif);color:var(--navy);margin-bottom:6px}.figs span{font:600 10px/1.5 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--mut)}
.confirm{background:#fff3c4;color:#7a5600;border:1px solid #e6c65c;padding:0 5px;font:700 .8em var(--sans);letter-spacing:0;text-transform:none}
/* footer */
footer{background:var(--navy);color:#aeb8cf;font-size:14px;padding:88px 0 0}
footer a{color:#fff}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;padding-bottom:64px}
footer h4{font:600 10px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:#fff;margin:0 0 22px}
footer ul{list-style:none;padding:0;margin:0}footer li{margin-bottom:10px}
.fbrand b{display:block;font:500 30px/1.1 var(--serif);color:#fff;margin-bottom:12px}
.apglogo{display:inline-block;background:#fff;padding:10px 14px;margin-top:22px}.apglogo img{height:30px;width:auto}
.fbot{border-top:1px solid rgba(255,255,255,.12);padding:26px 0 30px;font-size:12px;color:#8f9bb6;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
/* responsive */
@media(max-width:1180px){nav.main{display:none}details.mnav{display:block}header.top .wrap{position:relative}.hcall{display:none}
.svc{grid-template-columns:1fr 1fr}.svc a:nth-child(n){padding-left:0;border-left:0}.svc a:nth-child(2n){padding-left:40px;border-left:1px solid var(--line)}
.help{grid-template-columns:1fr 1fr}.help div:nth-child(3){padding-left:0;border-left:0}.cred ul{grid-template-columns:repeat(3,1fr)}.cred li:nth-child(3){border-right:0}.cred li:nth-child(4){padding-left:0}.cred li:nth-child(n+4){border-top:1px solid var(--line)}}
@media(min-width:1181px){details.mnav{display:none!important}}
@media(max-width:900px){
.wrap{padding:0 22px}section{padding:76px 0}section.tight{padding:52px 0}
header.top .wrap{height:68px}.brand b{font-size:22px}.brand small{font-size:8.5px;letter-spacing:.2em}
.hero .wrap{grid-template-columns:1fr;gap:0;min-height:0}.hero .copy{padding:56px 0 48px}.hero .portrait{margin:0 -22px;height:440px}.hero .portrait img{width:auto;height:100%;max-width:none;margin-top:28px}
.cred ul{grid-template-columns:1fr 1fr}.cred li{padding:22px 16px 22px 0!important;border-right:0!important;border-top:1px solid var(--line)}.cred li:nth-child(even){padding-left:16px!important;border-left:1px solid var(--line)}.cred li:nth-child(-n+2){border-top:0}.cred li:last-child{grid-column:1/-1;border-left:0;padding-left:0!important}
.letter,.slb,.split,.talkgrid,.two,.withaside{grid-template-columns:1fr;gap:44px}.slb .rule{border-left:0;padding-left:0;border-top:1px solid rgba(255,255,255,.18);padding-top:36px}
.lgrid{grid-template-columns:1fr;gap:48px}.three{grid-template-columns:1fr;gap:36px}
.mosaic{grid-template-columns:1fr 1fr}.mosaic .mc{left:16px;right:16px;bottom:16px}.mosaic .mc b{font-size:24px}.mosaic .mc em{display:none}
.svc{grid-template-columns:1fr}.svc a:nth-child(n){padding:30px 0;border-left:0}
.help{grid-template-columns:1fr}.help div+div,.help div{padding:24px 0 6px;border-left:0}.help div+div{border-top:1px solid var(--line)}
.ticks{columns:1}.revs{grid-template-columns:1fr;gap:40px}.rates{grid-template-columns:1fr}.rate+.rate{padding-left:0;border-left:0;border-top:1px solid var(--line)}.rate b{font-size:46px}
.contactlines{grid-template-columns:1fr}.contactlines div+div{padding-left:0;border-left:0}.cform{grid-template-columns:1fr}
.cardlist{grid-template-columns:1fr}.cardlist>*:nth-child(n){padding:26px 0;border-left:0}
.figs{grid-template-columns:1fr 1fr}.figs div:nth-child(3){padding-left:0;border-left:0}.figs div:nth-child(n+3){border-top:1px solid var(--line)}
.fgrid{grid-template-columns:1fr 1fr;gap:36px}.fbrand{grid-column:1/-1}
.cta .wrap{flex-direction:column;align-items:flex-start}.shead.row{flex-direction:column;align-items:flex-start}
.pagehead{padding:52px 0 44px}.tklabel{max-width:120px;padding-right:16px;margin-right:16px}
.withaside .aside{position:static}.talk .portrait{max-width:360px}
.dt.stack,.dt.stack tbody{display:block;width:100%}.dt.stack thead{display:none}.dt.stack tr{display:grid;grid-template-columns:1fr auto;gap:4px 16px;padding:18px 0;border-bottom:1px solid var(--line)}
.dt.stack td{border:0;padding:0;grid-column:1/-1;text-align:left!important;font-size:12.5px;color:var(--mut)}.dt.stack td.rk,.dt.stack td.hm{display:none}
.dt.stack td.c1{grid-column:1;grid-row:1;font-size:14px;color:var(--ink)}.dt.stack td.pr{grid-column:2;grid-row:1;text-align:right!important;font-size:14px}
.dt.stack td[data-l]:before{content:attr(data-l) ": ";color:var(--mut)}.dt.stack td .sm{display:inline;margin-left:0}.dt.stack td.x .sm:before{content:" · "}.dt.stack td.pr .sm.mo{display:block;margin:0}.dt.stack td.c1 .sm{display:block;margin:2px 0 0}
.dt.stack tr.hide{display:none}
}
@media(max-width:520px){h1{font-size:40px}.hero h1{font-size:42px}.btns .btn{flex:1 1 100%}.fgrid{grid-template-columns:1fr}.filters button{margin-right:20px}}