:root{--navy: #0a2233;--navy2: #0d2c46;--blue: #0f6fd6;--blue2: #1b8ae6;--cyan: #10b6cf;--accent: #ff6a1a;--accent2: #ea5a0c;--ink: #10202f;--muted: #566674;--line: #e3ebf2;--bg: #ffffff;--soft: #f1f7fb;--soft2: #e9f3fa;--ok: #12a150;--star: #ffb300;--radius: 16px;--radius-sm: 10px;--shadow: 0 18px 50px -18px rgba(10, 34, 51, .28);--shadow-sm: 0 6px 20px -8px rgba(10, 34, 51, .22);--wrap: 1180px;--f-display: "Archivo", system-ui, sans-serif;--f-body: "Inter Tight", system-ui, -apple-system, sans-serif;--ease: cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--f-body);color:var(--ink);background:var(--bg);line-height:1.65;font-size:17px;-webkit-font-smoothing:antialiased;overflow-x:hidden}img{max-width:100%;display:block}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--accent);color:#fff}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-thumb{background:#c4d3df;border-radius:8px;border:3px solid #fff}h1,h2,h3,h4{font-family:var(--f-display);line-height:1.05;color:var(--navy);margin:0 0 .5em;font-weight:800;letter-spacing:-.02em}h1{font-size:clamp(2.1rem,5.2vw,3.5rem)}h2{font-size:clamp(1.7rem,3.6vw,2.5rem)}h3{font-size:1.22rem;letter-spacing:-.01em}p{margin:0 0 1rem}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}.section{padding:74px 0}.section--soft{background:var(--soft)}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-family:var(--f-display);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;margin-bottom:.7rem}.eyebrow:before{content:"";width:22px;height:2px;background:var(--accent);border-radius:2px}.center{text-align:center}.center .eyebrow{justify-content:center}.lead{font-size:1.16rem;color:var(--muted);max-width:700px}.center .lead{margin-left:auto;margin-right:auto}.text-balance{text-wrap:balance}.progress-bar{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--cyan),var(--accent));z-index:100;transition:width .1s linear}.reveal-on [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal-on [data-reveal=left]{transform:translate(-26px)}.reveal-on [data-reveal=right]{transform:translate(26px)}.reveal-on [data-reveal=scale]{transform:scale(.94)}.reveal-on [data-reveal].in{opacity:1;transform:none}.btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--accent);color:#fff;font-family:var(--f-display);font-weight:800;padding:14px 26px;border-radius:999px;font-size:1.02rem;border:none;cursor:pointer;transition:transform .16s var(--ease),box-shadow .2s,background .2s;box-shadow:0 10px 24px -8px #ff6a1aa6;letter-spacing:-.01em}.btn:hover{background:var(--accent2);text-decoration:none;transform:translateY(-2px);color:#fff;box-shadow:0 16px 30px -10px #ff6a1ab3}.btn--ghost{background:#fff;color:var(--navy);box-shadow:var(--shadow-sm);border:1px solid var(--line)}.btn--ghost:hover{background:#fff;color:var(--blue);border-color:var(--blue)}.btn--white{background:#fff;color:var(--navy);box-shadow:var(--shadow-sm)}.btn--white:hover{background:#eef6ff;color:var(--navy)}.btn--lg{padding:17px 34px;font-size:1.1rem}.topbar{background:var(--navy);color:#cfe0f0;font-size:.85rem}.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 20px}.topbar a{color:#fff;font-weight:700}.topbar .badges{display:flex;gap:18px}.topbar .badges span:before{content:"✓ ";color:#46d69a;font-weight:900}header.site{position:sticky;top:0;z-index:50;background:#ffffffeb;backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--line)}header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px}.brand{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:900;color:var(--navy);font-size:1.16rem;letter-spacing:-.03em}.brand:hover{text-decoration:none}.brand .drop{width:32px;height:32px;flex:none}nav.main{display:flex;align-items:center;gap:22px}nav.main a{color:var(--ink);font-weight:600;font-size:.96rem;position:relative}nav.main a:after{content:"";position:absolute;left:0;bottom:-5px;width:0;height:2px;background:var(--accent);transition:width .25s var(--ease)}nav.main a:hover{color:var(--navy);text-decoration:none}nav.main a:hover:after{width:100%}.nav-cta{display:flex;align-items:center;gap:14px}.phone-link{font-family:var(--f-display);font-weight:900;color:var(--navy);font-size:1.05rem;white-space:nowrap}.phone-link:hover{color:var(--blue);text-decoration:none}.menu-toggle{display:none;background:none;border:0;font-size:1.7rem;color:var(--navy);cursor:pointer}.hero{position:relative;background:radial-gradient(1200px 500px at 80% -20%,#12406e 0%,transparent 55%),linear-gradient(135deg,var(--navy) 0%,#0e3a63 100%);color:#fff;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:22px 22px;opacity:.5}.hero .wrap{position:relative;z-index:2;padding:70px 20px 78px;display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center}.hero h1{color:#fff}.hero h1 .hl{color:#7fdcff}.hero p.sub{color:#d3e6f6;font-size:1.18rem;max-width:540px}.hero .cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.hero .trust{margin-top:28px;display:flex;gap:24px;flex-wrap:wrap;color:#cfe1f2;font-weight:700;font-size:.92rem}.hero .trust span{display:inline-flex;align-items:center;gap:7px}.hero .trust .rate b{color:#fff}.hero .trust .stars{color:var(--star);letter-spacing:1px}.ba{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4 / 3;user-select:none;touch-action:pan-y;background:#0a2233}.ba .layer{position:absolute;inset:0}.ba .after{z-index:1}.ba .before{z-index:2;clip-path:inset(0 50% 0 0)}.ba .before svg,.ba .after svg{width:100%;height:100%;display:block}.ba .tag{position:absolute;top:12px;z-index:3;font-family:var(--f-display);font-weight:800;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:5px 11px;border-radius:999px;color:#fff}.ba .tag.b{left:12px;background:#0a2233d1}.ba .tag.a{right:12px;background:#12a150eb}.ba .handle{position:absolute;top:0;bottom:0;left:50%;z-index:4;width:42px;transform:translate(-50%);cursor:ew-resize;display:grid;place-items:center}.ba .handle .grip{width:42px;height:42px;border-radius:50%;background:#fff;box-shadow:var(--shadow);display:grid;place-items:center;color:var(--blue);font-size:1.1rem;font-weight:900}.ba .handle:before{content:"";position:absolute;top:0;bottom:0;width:3px;background:#fff}.ba-caption{text-align:center;margin-top:12px;font-weight:600;color:var(--muted);font-size:.95rem}.hero .ba{aspect-ratio:5 / 4}.trust-strip{background:var(--navy2)}.trust-strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:30px 20px;text-align:center}.trust-strip .item b{display:block;font-family:var(--f-display);font-size:2.1rem;color:#fff;font-weight:900;letter-spacing:-.02em}.trust-strip .item span{font-size:.9rem;color:#a9c6e2}.grid{display:grid;gap:22px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow-sm);transition:transform .18s var(--ease),box-shadow .25s,border-color .25s}.card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#cfe0ef}.card .ico{width:52px;height:52px;border-radius:13px;background:linear-gradient(140deg,var(--cyan),var(--blue));display:grid;place-items:center;color:#fff;font-size:1.5rem;margin-bottom:15px;box-shadow:0 10px 22px -10px #0f6fd6b3}.card h3 a{color:var(--navy)}.card .price{color:var(--blue);font-family:var(--f-display);font-weight:800;font-size:.9rem;margin-top:8px}.card .more{display:inline-flex;align-items:center;gap:5px;margin-top:13px;font-family:var(--f-display);font-weight:800;color:var(--accent2);font-size:.95rem}.card:hover .more{gap:9px}.checks{list-style:none;padding:0;margin:0;display:grid;gap:13px}.checks li{position:relative;padding-left:34px}.checks li:before{content:"✓";position:absolute;left:0;top:1px;width:23px;height:23px;background:var(--ok);color:#fff;border-radius:50%;display:grid;place-items:center;font-size:.8rem;font-weight:900}.steps{counter-reset:step;display:grid;gap:18px;grid-template-columns:repeat(4,1fr)}.step{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow-sm)}.step:before{counter-increment:step;content:counter(step);display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--navy);color:#fff;font-family:var(--f-display);font-weight:900;margin-bottom:12px}.split{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}.est{background:linear-gradient(135deg,var(--navy) 0%,#0e3a63 100%);color:#fff;border-radius:22px;padding:clamp(24px,4vw,44px);box-shadow:var(--shadow);position:relative;overflow:hidden}.est:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:22px 22px}.est>*{position:relative;z-index:1}.est h2{color:#fff}.est .est-sub{color:#cfe1f2;margin-bottom:22px}.est .est-label{font-family:var(--f-display);font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.74rem;color:#8fc4ee;margin:18px 0 10px}.est .opts{display:flex;flex-wrap:wrap;gap:10px}.est .opt{padding:11px 18px;border-radius:999px;border:1.5px solid rgba(255,255,255,.28);background:#ffffff0f;color:#eaf3fb;font-family:var(--f-display);font-weight:700;font-size:.95rem;cursor:pointer;transition:all .18s var(--ease)}.est .opt:hover{border-color:#fff}.est .opt.sel{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 10px 22px -10px #ff6a1acc}.est .result{margin-top:26px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius);padding:22px 24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.est .result .est-price{font-family:var(--f-display);font-weight:900;font-size:clamp(1.8rem,4vw,2.6rem);color:#fff;letter-spacing:-.02em}.est .result .est-price small{display:block;font-size:.8rem;font-weight:600;color:#a9c6e2;letter-spacing:0}.est .disclaimer{color:#9fbdd8;font-size:.82rem;margin-top:14px}.review{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow-sm);position:relative}.review .stars{color:var(--star);letter-spacing:2px;margin-bottom:10px;font-size:1.05rem}.review p{color:var(--ink)}.review .who{margin-top:14px;font-family:var(--f-display);font-weight:800;color:var(--navy);display:flex;align-items:center;gap:10px}.review .who .av{width:38px;height:38px;border-radius:50%;background:linear-gradient(140deg,var(--cyan),var(--blue));color:#fff;display:grid;place-items:center;font-size:.95rem;font-weight:900}.review .who span{color:var(--muted);font-weight:600;font-size:.9rem}.rating-badge{display:inline-flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:10px 20px;box-shadow:var(--shadow-sm);font-weight:700}.rating-badge b{font-family:var(--f-display);font-size:1.4rem;color:var(--navy)}.rating-badge .stars{color:var(--star)}.faq{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:var(--shadow-sm)}.faq details{border-bottom:1px solid var(--line)}.faq details:last-child{border-bottom:0}.faq summary{cursor:pointer;padding:19px 24px;font-family:var(--f-display);font-weight:700;color:var(--navy);list-style:none;display:flex;justify-content:space-between;gap:12px;transition:background .2s}.faq summary:hover{background:var(--soft)}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--blue);font-weight:900;font-size:1.4rem;line-height:1;transition:transform .2s}.faq details[open] summary:after{content:"–"}.faq .a{padding:0 24px 20px;color:var(--muted)}.area-list{display:flex;flex-wrap:wrap;gap:10px}.area-list a{background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 18px;font-family:var(--f-display);font-weight:700;color:var(--navy);font-size:.92rem;transition:all .18s var(--ease)}.area-list a:hover{background:var(--blue);color:#fff;text-decoration:none;border-color:var(--blue);transform:translateY(-2px)}.cta-band{background:radial-gradient(800px 300px at 20% 0%,#ff9250 0%,transparent 60%),linear-gradient(120deg,var(--accent) 0%,var(--accent2) 100%);color:#fff;text-align:center;position:relative;overflow:hidden}.cta-band h2{color:#fff}.cta-band p{color:#fff2e8;max-width:640px;margin:0 auto 24px;font-size:1.14rem}.hero-card{background:#ffffff1a;border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px);border-radius:var(--radius);padding:26px}.hero-card h3{color:#fff;margin-bottom:14px}.quote-form label{display:block;font-size:.8rem;font-family:var(--f-display);font-weight:700;color:#eaf3fb;margin:10px 0 4px}.quote-form input,.quote-form select,.quote-form textarea{width:100%;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.3);background:#fffffff7;color:var(--ink);font-family:inherit;font-size:.95rem}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{outline:2px solid var(--accent)}.quote-form .btn{width:100%;justify-content:center;margin-top:16px}.quote-panel{background:linear-gradient(140deg,var(--navy),#0e3a63);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}.quote-panel h3{color:#fff;margin-bottom:6px}.quote-panel .qp-sub{color:#bcd6ee;font-size:.9rem;margin:0 0 6px}.form-success{background:#12a15029;border:1px solid var(--ok);color:#eafff3;border-radius:var(--radius-sm);padding:18px;font-weight:700;text-align:center}.page-hero{background:radial-gradient(900px 400px at 85% -30%,#12406e,transparent 55%),linear-gradient(120deg,var(--navy),#0e3a63);color:#fff;padding:58px 0;position:relative;overflow:hidden}.page-hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:22px 22px}.page-hero .wrap{position:relative;z-index:1}.page-hero h1{color:#fff;margin-bottom:8px}.page-hero .crumb{color:#bcd4ea;font-size:.9rem}.page-hero .crumb a{color:#fff}.prose{max-width:760px}.prose h2{margin-top:1.6em}.prose ul{padding-left:1.2em}.pricetable{width:100%;border-collapse:collapse;margin:1.2em 0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}.pricetable th,.pricetable td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line)}.pricetable th{background:var(--soft);color:var(--navy);font-family:var(--f-display);font-weight:800}.pricetable tr:last-child td{border-bottom:0}footer.site{background:var(--navy);color:#bcd0e6;padding:58px 0 26px;font-size:.95rem}footer.site .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:34px}footer.site h4{color:#fff;margin:0 0 14px;font-size:1rem}footer.site a{color:#cfe0f0}footer.site ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}footer.site .brand-f{font-family:var(--f-display);color:#fff;font-weight:900;font-size:1.25rem;margin-bottom:10px;letter-spacing:-.02em}footer.site .bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:34px;padding-top:18px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:#8fb0d2;font-size:.85rem}.mobile-call{display:none;position:fixed;bottom:0;left:0;right:0;z-index:60;background:var(--accent);box-shadow:0 -6px 20px #0000002e}.mobile-call a{display:block;text-align:center;color:#fff;font-family:var(--f-display);font-weight:900;padding:14px;font-size:1.05rem}.mobile-call a:hover{text-decoration:none;color:#fff}@media (max-width: 960px){.hero .wrap,.split,.trust-strip .wrap,.grid-3,.grid-2{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.trust-strip .wrap{grid-template-columns:1fr 1fr;gap:26px}footer.site .cols{grid-template-columns:1fr}nav.main{display:none}.menu-toggle{display:block}nav.main.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:#fff;padding:16px 20px;border-bottom:1px solid var(--line);align-items:flex-start;gap:14px;box-shadow:var(--shadow)}.topbar .badges{display:none}.mobile-call{display:block}body{padding-bottom:54px}}@media (max-width: 560px){.steps{grid-template-columns:1fr}.phone-link{display:none}.est .result{flex-direction:column;align-items:stretch;text-align:center}}@media (prefers-reduced-motion: reduce){*{animation:none!important;scroll-behavior:auto!important}[data-reveal]{opacity:1!important;transform:none!important}}
