:root{--navy:#0A3F78;--navy2:#0A3F78;--blue:#2291EB;--black:#000000;--white:#FFFFFF;--ink:#000000;--head:Gilroy,"Gilroy Bold",Montserrat,"Avenir Next","Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif;--muted:#5b6675;--line:#e3e8ef;--bg2:#f5f7fa;--max:1120px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:17px/1.65 Arial,"Helvetica Neue",Helvetica,sans-serif;color:var(--ink);background:#fff}
img{max-width:100%;height:auto;display:block}a{color:var(--blue)}
h1,h2,h3,.eyebrow,.btn,nav.main a,footer.site h4{font-family:var(--head)}h1,h2,h3{font-weight:700;line-height:1.2;color:var(--navy);margin:0 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(2rem,4.2vw,3.1rem)}h2{font-size:clamp(1.5rem,2.6vw,2.1rem)}h3{font-size:1.15rem}
p{margin:0 0 1em}.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:9}
header.site{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);z-index:10}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;height:76px}
.brand img{height:48px;width:auto;min-width:130px}
nav.main ul{list-style:none;margin:0;padding:0;display:flex;gap:26px;align-items:center}
nav.main a{color:var(--ink);text-decoration:none;font-size:.95rem;font-weight:500}nav.main a:hover,nav.main a[aria-current]{color:var(--blue)}
.btn{display:inline-block;background:var(--blue);color:#fff!important;padding:12px 22px;border-radius:6px;font-weight:600;text-decoration:none;border:0;font-size:1rem;cursor:pointer}
.btn:hover{background:var(--navy)}.btn.ghost{background:transparent;border:1.5px solid rgba(255,255,255,.7)}.btn.ghost:hover{background:rgba(255,255,255,.1)}
nav.main .btn{padding:9px 16px}
.menu-toggle{display:none}
.hero{background:var(--navy);color:#fff;padding:96px 0 88px}
.hero h1{color:#fff;max-width:20ch}.hero p.lead{font-size:1.2rem;max-width:58ch;color:#fff}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:700;color:var(--blue);margin-bottom:14px;display:block}
.hero .actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.page-hero{background:var(--navy);color:#fff;padding:64px 0 56px}.page-hero h1{color:#fff}.page-hero p{max-width:62ch;font-size:1.1rem;margin:0}
section{padding:80px 0}section.alt{background:var(--bg2)}
.grid{display:grid;gap:28px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:28px}
.card p:last-child{margin:0}.card .more{font-weight:600;text-decoration:none}
.service{border-top:4px solid var(--blue)}
.intro{max-width:70ch}.muted{color:var(--muted)}
.split{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}
ul.check{list-style:none;padding:0;margin:0 0 1em}ul.check li{padding-left:28px;position:relative;margin-bottom:.6em}
ul.check li:before{content:"";position:absolute;left:0;top:.5em;width:14px;height:8px;border-left:2.5px solid var(--blue);border-bottom:2.5px solid var(--blue);transform:rotate(-45deg)}
ol.steps{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;gap:18px}
ol.steps li{counter-increment:s;padding:20px 22px 20px 70px;position:relative;background:#fff;border:1px solid var(--line);border-radius:10px}
ol.steps li:before{content:counter(s);position:absolute;left:20px;top:18px;width:34px;height:34px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:700}
ol.steps strong{display:block;color:var(--navy)}
.callout{background:var(--navy);color:#fff;border-radius:12px;padding:44px}.callout h2{color:#fff}
.cta{background:var(--navy);color:#fff;text-align:center}.cta h2{color:#fff}.cta p{max-width:56ch;margin:0 auto 24px}
.team{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.person{text-decoration:none;color:inherit}.person img{border-radius:10px;aspect-ratio:1;object-fit:cover;width:100%;margin-bottom:14px;background:var(--bg2)}
.person h3{margin:0}.person span{color:var(--muted);font-size:.95rem}
.bio{display:grid;grid-template-columns:300px 1fr;gap:48px;align-items:start}.bio img{border-radius:12px}
blockquote{margin:1.5em 0;padding:4px 0 4px 20px;border-left:3px solid var(--blue);color:var(--muted);font-style:italic}
.placeholder{border:2px dashed #d9a400;background:#fffaeb;border-radius:10px;padding:18px 22px;color:#6b5200;font-size:.95rem}
.placeholder strong{color:#6b5200}
form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-weight:600;font-size:.9rem;margin:0 0 6px;color:var(--navy)}
input,textarea,select{width:100%;padding:12px;border:1px solid #c8d1dc;border-radius:6px;font:inherit;margin-bottom:16px;background:#fff}
textarea{min-height:140px}.contact-list{list-style:none;padding:0;margin:0}.contact-list li{margin-bottom:18px}
.contact-list b{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.contact-list span{font-size:1.15rem;font-weight:600;color:var(--navy)}.contact-list a,.card a[href^="tel:"]{display:inline-block;min-height:44px;padding:10px 0;line-height:1.4;font-size:1.15rem;font-weight:600;color:var(--navy);text-decoration:none}
footer.site{background:var(--navy);color:#fff;padding:56px 0 28px;font-size:.93rem}
footer.site a{color:#fff;text-decoration:none}footer.site .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:32px}
footer.site h4{color:#fff;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin:0 0 12px}
footer.site ul{list-style:none;padding:0;margin:0}footer.site li{margin-bottom:8px}
footer.site .legal{border-top:1px solid rgba(255,255,255,.25);margin-top:40px;padding-top:20px;font-size:.85rem}
.fine{font-size:.85rem;color:var(--muted)}
@media(max-width:900px){.g3,.g4{grid-template-columns:1fr 1fr}.split,.bio{grid-template-columns:1fr;gap:32px}.bio img{max-width:260px}footer.site .cols{grid-template-columns:1fr 1fr}
 .menu-toggle{display:block;background:none;border:1px solid var(--line);border-radius:6px;padding:8px 12px;font:inherit;font-weight:600}
 nav.main{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:16px 24px}
 nav.main.open{display:block}nav.main ul{flex-direction:column;align-items:flex-start;gap:14px}}
@media(max-width:600px){body{font-size:16px}.g2,.g3,.g4,form .row{grid-template-columns:1fr}section{padding:56px 0}.hero{padding:64px 0}.callout{padding:28px}footer.site .cols{grid-template-columns:1fr}}
footer.site .flogo{width:200px;height:auto;margin:0 0 14px -6px}
/* v4 additions */
.prose{max-width:760px}.prose h2{margin-top:1.6em}.prose h3{margin-top:1.3em}.prose ul,.prose ol{padding-left:1.3em;margin:0 0 1em}.prose li{margin-bottom:.45em}
.toc{background:var(--bg2);border-radius:10px;padding:18px 22px;margin:0 0 28px}.toc b{display:block;margin-bottom:6px;color:var(--navy)}.toc ol{margin:0;padding-left:1.2em}
.sources{font-size:.92rem;color:var(--muted);border-top:1px solid var(--line);margin-top:40px;padding-top:20px}.sources li{margin-bottom:6px}
.cite{font-size:.85rem;color:var(--muted)}
table.data{border-collapse:collapse;width:100%;margin:0 0 1.2em;font-size:.95rem}table.data th,table.data td{border:1px solid var(--line);padding:9px 12px;text-align:left;vertical-align:top}table.data th{background:var(--bg2);color:var(--navy)}
.ph{display:inline-block;border:1.5px dashed #d9a400;background:#fffaeb;color:#6b5200;border-radius:6px;padding:1px 8px;font-size:.85rem;font-weight:600}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stat{background:#fff;border:2px dashed #d9a400;border-radius:10px;padding:22px;text-align:center}.stat b{display:block;font-size:1.6rem;color:#6b5200;font-family:var(--head)}.stat span{color:var(--muted);font-size:.9rem}
ol.steps li em{display:block;font-style:normal;color:var(--blue);font-weight:600;font-size:.9rem;margin-top:6px}
.who{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.who a{display:flex;gap:16px;align-items:center;text-decoration:none;color:inherit;background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px}.who img{width:84px;height:84px;border-radius:50%;object-fit:cover}.who b{display:block;color:var(--navy)}.who span{color:var(--muted);font-size:.9rem}
.guide-card h3 a{text-decoration:none;color:var(--navy)}.meta{font-size:.88rem;color:var(--muted);margin-bottom:10px}
.keyfacts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.keyfacts div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);border-radius:10px;padding:16px;color:#fff}.keyfacts b{display:block;font-size:1.35rem;font-family:var(--head)}
@media(max-width:900px){.stats,.keyfacts{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.stats,.keyfacts{grid-template-columns:1fr}table.data{font-size:.85rem}}
.fowned{margin-top:8px;font-size:.9rem;opacity:.85}
/* v14: accessible blue (#0B6FC2 = 5.0:1 on white) for text/fills; #2291EB kept for decoration */
:root{--link:#0B6FC2;--tint:#A9D6FA}
a{color:var(--link)}nav.main a:hover,nav.main a[aria-current]{color:var(--link)}
.btn{background:var(--link)}.eyebrow{color:var(--link)}
.hero .eyebrow,.page-hero .eyebrow,.callout .eyebrow,.cta .eyebrow{color:var(--tint)!important}
.hero a:not(.btn),.page-hero a:not(.btn),.callout a:not(.btn),.cta a:not(.btn),.keyfacts a{color:#fff}
ol.steps li em{color:var(--ink);font-weight:500}
.flabel{color:#fff;font-family:var(--head);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin:0 0 12px}
.email{overflow-wrap:anywhere;word-break:normal}
footer.site li a,.more,.prose a,p a,.cite a,td a{display:inline-block;padding:3px 0;min-height:24px}
footer.site li{margin-bottom:4px}
h2.h3{font-size:1.25rem}
.notice{background:#fff8e1;border:1px solid #e0b400;border-left:5px solid #b38600;border-radius:8px;padding:18px 20px;color:var(--ink)}
.notice .btn{margin-left:8px;padding:8px 16px;font-size:.92rem}
.stats.track{grid-template-columns:repeat(3,1fr)}.stats.track .stat{border:1px solid var(--line)}.stats.track .stat b{color:var(--navy)}
@media(max-width:900px){.stats.track{grid-template-columns:1fr}}
@media(max-width:600px){table.data,table.data tbody,table.data tr,table.data td{display:block;width:100%}table.data tr:first-child{display:none}table.data tr{border:1px solid var(--line);border-radius:8px;margin-bottom:12px;padding:6px 0}table.data td{border:0;padding:6px 14px}table.data td:first-child{font-weight:700;color:var(--navy)}}

/* solid blue CTA on navy: thin white border for contrast */.hero .btn:not(.ghost),.page-hero .btn:not(.ghost),.cta .btn:not(.ghost),.callout .btn:not(.ghost){border:2px solid #fff}
/* tap targets >=24px */.guide-card h3 a,.page-hero .eyebrow a,a[href*="mm-14415"]{display:inline-block;min-height:24px;padding:4px 0;line-height:1.4}
/* v23 hero visual + card icons */
.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:56px;align-items:center}
.hero .hero-fee{margin-top:4px}
.hero-visual{margin:0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:26px 26px 18px}
.hero-visual figcaption{font-family:var(--head);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:700;color:#9fd0f7;margin-bottom:14px}
.hero-visual ol{list-style:none;margin:0;padding:0;position:relative}
.hero-visual ol:before{content:"";position:absolute;left:21px;top:22px;bottom:30px;border-left:2px dashed rgba(255,255,255,.3)}
.hero-visual li{display:flex;gap:16px;align-items:flex-start;padding:0 0 18px;position:relative}
.hv-ic{flex:0 0 44px;height:44px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;box-shadow:0 0 0 4px var(--navy)}
.hero-visual li:last-child .hv-ic{background:#fff;color:var(--navy)}
.hero-visual b{display:block;color:#fff;font-family:var(--head);font-size:1.02rem;margin-top:2px}
.hero-visual small{display:block;color:rgba(255,255,255,.78);font-size:.9rem;line-height:1.45;margin-top:2px}
.card-ic{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#e8f3fd;color:var(--navy);margin-bottom:12px}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:36px}.hero-visual{max-width:520px}}
/* v26 contact form */
.hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-msg{color:#a3001b;font-weight:600;min-height:1.2em;margin:0 0 12px}
.form-done{border:1px solid var(--line);border-left:4px solid var(--blue);background:#f3f8fd;border-radius:10px;padding:24px 26px}
.form-done:focus{outline:2px solid var(--blue);outline-offset:2px}
button.btn:disabled{opacity:.7;cursor:wait}
