*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#1f2933;line-height:1.6;background:#fff;padding-bottom:62px}
.wrap{max-width:980px;margin:0 auto;padding:0 18px}
a{color:#0a58a8}
h1,h2,h3{line-height:1.25;color:#102a43}h1{font-size:2rem;margin:22px 0 10px}h2{font-size:1.4rem;margin:34px 0 10px}h3{font-size:1.1rem;margin:22px 0 6px}
.top{background:#102a43;color:#fff;position:sticky;top:0;z-index:10}
.bar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:10px;padding-bottom:10px}
.logo{color:#fff;font-weight:800;font-size:1.1rem;text-decoration:none;line-height:1.2}
.call-top{background:#ffb020;color:#111;font-weight:800;padding:9px 14px;border-radius:6px;text-decoration:none;white-space:nowrap;font-size:1rem}
.call-top small{display:block;font-weight:600;font-size:.7rem;line-height:1.1}
.nav{background:#243b53}.nav .wrap{display:flex;gap:16px;overflow-x:auto;padding-top:8px;padding-bottom:8px;font-size:.92rem}
.nav a{color:#d9e2ec;text-decoration:none;white-space:nowrap}.nav a.on,.nav a:hover{color:#fff;text-decoration:underline}
.hero{background:#f0f4f8;border-bottom:1px solid #d9e2ec;padding:6px 0 22px}
.lead{font-size:1.12rem}
.cta{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 4px}
.btn{display:inline-block;background:#ffb020;color:#111;font-weight:800;padding:13px 20px;border-radius:6px;text-decoration:none;border:0;font-size:1.05rem;cursor:pointer;font-family:inherit}
.btn.alt{background:#0a58a8;color:#fff}
.fine{font-size:.85rem;color:#52606d}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.card{border:1px solid #d9e2ec;border-radius:8px;padding:14px 16px;background:#f8fafc}.card h3{margin-top:0}
ul.checks{padding-left:20px}ul.checks li,ol.steps li{margin-bottom:8px}
table{width:100%;border-collapse:collapse;margin:12px 0;font-size:.95rem}th,td{border:1px solid #d9e2ec;padding:8px 9px;text-align:left;vertical-align:top}th{background:#f0f4f8}
.tbl{overflow-x:auto}
.note{background:#fffbea;border-left:4px solid #ffb020;padding:10px 14px;margin:14px 0}
.quote{scroll-margin-top:110px;background:#f0f4f8;border-radius:10px;padding:18px 20px;margin:40px 0 10px}
.quote h2{margin-top:4px}
.quote form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.quote label{display:flex;flex-direction:column;font-weight:600;font-size:.95rem}
.quote input,.quote select,.quote textarea{margin-top:4px;padding:10px;border:1px solid #9fb3c8;border-radius:6px;font-size:1rem;font-family:inherit;background:#fff}
.quote .full{grid-column:1/-1}
.quote .consent{flex-direction:row;gap:10px;font-weight:400;font-size:.8rem;line-height:1.45}
.quote .consent input{margin-top:3px;flex:0 0 auto}
.hp{position:absolute;left:-5000px}
.faq details{border-bottom:1px solid #d9e2ec;padding:10px 0}.faq summary{font-weight:700;cursor:pointer}
.foot{background:#102a43;color:#d9e2ec;margin-top:40px;padding:26px 0 12px;font-size:.9rem}
.foot a{color:#fff}.foot ul{list-style:none;padding:0;margin:6px 0}.foot li{margin:3px 0}.foot strong{color:#fff}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px}
.disc{border-top:1px solid #334e68;margin-top:16px;padding-top:12px;font-size:.8rem}
.discbar{background:#fffbea;border-bottom:1px solid #f0d78c;font-size:.82rem;color:#3e4c59}.discbar .wrap{padding-top:6px;padding-bottom:6px}
figure{margin:18px 0}figure img{display:block;width:100%;height:auto;border-radius:8px;background:#e4e7eb}figure.half{max-width:460px}figcaption{font-size:.78rem;color:#52606d;margin-top:5px}
.pricebox{background:#fff;border:2px solid #0a58a8;border-radius:10px;padding:12px 16px;margin:14px 0}.pricebox h2{margin:0 0 6px;font-size:1.15rem}.pricebox ul{margin:6px 0;padding-left:20px}.pricebox li{margin-bottom:4px}
.est{display:inline-block;background:#ffb020;color:#111;font-size:.72rem;font-weight:800;padding:1px 6px;border-radius:4px;vertical-align:middle}
.sticky{position:fixed;bottom:0;left:0;right:0;background:#ffb020;color:#111;text-align:center;font-weight:800;padding:15px;text-decoration:none;z-index:20;font-size:1.05rem;box-shadow:0 -2px 8px rgba(0,0,0,.15)}
@media(min-width:860px){.sticky{display:none}body{padding-bottom:0}h1{font-size:2.3rem}}
@media(max-width:620px){h1{font-size:1.6rem}.quote form{grid-template-columns:1fr}.logo{font-size:.98rem}.call-top{padding:8px 10px;font-size:.95rem}}
