:root{--bg:#ffffff;--band:#F2F2F2;--ink:#052148;--muted:#5a5a5a;--blue:#024772;--sky:#65A4BE;--navy:#052148;--cta:#016E31;--cta-ink:#ffffff;--line:#D6D6D6;--card:#ffffff;--hero-a:#F2F2F2;--hero-b:#ffffff;--hero-ink:#052148;--head:'Titillium Web','Segoe UI',Arial,sans-serif;--body:'Lato','Segoe UI',Calibri,Arial,sans-serif}
*{box-sizing:border-box}
html,body{overflow-x:clip}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 var(--body);padding-inline:16px}
h1,h2,h3{font-family:var(--head);font-weight:400;line-height:1.15;margin:0;text-wrap:balance}
p{margin:0}a{color:var(--blue)}
:focus-visible{outline:3px solid var(--cta);outline-offset:3px}
.wrap{max-width:1120px;margin:0 auto}
.band{margin-inline:calc(50% - 50vw);padding-inline:max(16px,calc(50vw - 560px))}
.sect{padding-block:72px}.alt{background:var(--band)}
.eyebrow{font:700 13px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
h2{font-size:clamp(28px,3.6vw,42px);margin-top:12px}
.lead{color:var(--muted);max-width:62ch;margin-top:14px;font-size:17px}
.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:16px;flex-wrap:wrap}
.logo{font:700 32px/1 var(--head);color:var(--navy);text-decoration:none}
.logo .c1{color:#387A9C}.logo b{color:#03A549}
.by{font-size:13px;color:var(--muted)}
.btn{display:inline-block;background:var(--cta);color:var(--cta-ink);font:700 15px/1 var(--body);letter-spacing:.03em;text-transform:uppercase;text-decoration:none;padding:16px 26px;border:0;border-radius:4px;cursor:pointer}
.btn:hover{filter:brightness(1.08)}.btn.sm{padding:12px 18px;font-size:13px}
.strip{background:var(--navy);color:#cfe3f8;font-size:13px}
.strip .wrap{display:flex;justify-content:space-between;gap:6px 24px;flex-wrap:wrap;padding-block:8px}
.strip strong{color:#fff;font-family:var(--head);letter-spacing:.04em}
.nav{display:flex;gap:22px;flex-wrap:wrap}
.nav a{font:600 14px var(--body);color:var(--ink);text-decoration:none;padding-block:6px;border-bottom:2px solid transparent}
.nav a:hover,.nav a[aria-current=page]{border-color:var(--blue)}
.about{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.about>*{min-width:0}
.facts{display:grid;gap:14px;margin:0;padding:0;list-style:none}
.facts li{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--blue);padding:16px 18px}
.facts b{display:block;margin-bottom:2px}
.contact{display:flex;gap:10px 40px;flex-wrap:wrap;margin-top:18px}
.contact span{display:block;font:700 12px var(--body);letter-spacing:.12em;text-transform:uppercase;color:#8dc3e0}
.contact p{color:#fff;overflow-wrap:anywhere}
.hero{background:linear-gradient(160deg,var(--hero-a),var(--hero-b));border-bottom:1px solid var(--line);color:var(--hero-ink);padding-block:64px}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.hero.simple .wrap{display:block;max-width:860px}
.hero h1{font-size:clamp(34px,5vw,58px);font-weight:300}
.hero p.sub{font-size:18px;margin-top:20px;max-width:58ch}
.hero ul{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:10px}
.hero li{padding-left:28px;position:relative}
.hero li::before{content:"";position:absolute;left:0;top:.5em;width:14px;height:8px;border-left:3px solid var(--sky);border-bottom:3px solid var(--sky);transform:rotate(-45deg)}
.echo .eb{stroke:var(--sky)}.echo .ea{stroke:var(--ink)}.echo .et{fill:var(--muted)}
.echo{width:100%;max-width:200px;margin-top:28px;display:block}
.form{background:var(--card);border-radius:6px;padding:28px;box-shadow:0 18px 40px rgba(0,0,0,.18);min-width:0}
.form h2{font-size:22px;margin:0}.form p.s{color:var(--muted);font-size:14px;margin-top:6px}
label{display:block;font:600 13px/1.2 var(--body);margin:16px 0 6px}
input,select{width:100%;font:16px var(--body);padding:12px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--ink)}
.form .btn{width:100%;margin-top:20px}
.fine{font-size:12px;color:var(--muted);margin-top:12px}
.hp{position:absolute;left:-9999px;height:0;width:0;overflow:hidden}
.ok{display:none;text-align:center;padding:24px 0}.ok h3{font-size:22px}
.sent .ok{display:block}.sent form{display:none}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px}
.card{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--blue);padding:28px;min-width:0}
.card h3{font-size:20px;margin-bottom:10px}.card p{color:var(--muted)}
.card .tag{display:block;font:700 12px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:14px}
.card a.more{display:inline-block;margin-top:14px;font-weight:700}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:36px}
.step{border-left:2px solid var(--blue);padding-left:18px;min-width:0}
.step h3{font-size:18px;margin-bottom:8px}.step p{color:var(--muted);font-size:15px}
.step .n{font:800 13px var(--body);color:var(--blue);letter-spacing:.1em;display:block;margin-bottom:8px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.two>*{min-width:0}
.pill{display:grid;gap:14px;margin:0;padding:0;list-style:none}
.pill li{background:var(--card);border:1px solid var(--line);padding:16px 18px}
details{border-bottom:1px solid var(--line);padding:16px 0}
summary{cursor:pointer;font:700 17px var(--body)}details p{color:var(--muted);margin-top:10px}
.prose{max-width:760px}.prose p{margin-top:16px;color:var(--ink)}.prose h3{font-size:24px;margin-top:36px}
.prose ul{padding-left:20px}.prose li{margin-top:8px}
.note{background:var(--band);border-left:4px solid var(--blue);padding:16px 18px;margin-top:24px;font-size:15px}
.cta-band{background:var(--navy);color:#fff;text-align:center;padding-block:64px}
.cta-band .btn{background:#fff;color:#052148}.cta-band h2{color:#fff;margin:0 auto;max-width:22ch}
.cta-band p{opacity:.85;margin:14px auto 26px;max-width:56ch}
footer{background:var(--navy);color:#a9bdd3;font-size:13px;padding-block:28px;border-top:1px solid #1f3f6e}
footer .wrap{display:flex;gap:16px 32px;justify-content:space-between;flex-wrap:wrap}
footer a{color:#cfe3f8}footer h3{color:#fff;font-size:20px}
@media (max-width:880px){.nav{display:none}.hero .wrap,.two,.about{grid-template-columns:1fr}.grid3{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.sect{padding-block:52px}}
@media (max-width:520px){.steps{grid-template-columns:1fr}.form{padding:22px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
