:root{--navy:#073b67;--navy-2:#052b4c;--blue:#0a5a98;--amber:#f2a51a;--amber-dark:#d88700;--ink:#102435;--muted:#5f6f7c;--cream:#f7f4ed;--ice:#edf5f9;--white:#fff;--line:#dbe3e8;--danger:#a22b2b;--shadow:0 18px 52px rgba(7,59,103,.13);--radius:18px;--container:1180px}
.mobile-sticky-cta{display:none}@media (max-width: 820px){.mobile-sticky-cta{display:flex}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65;overflow-x:hidden}body.menu-open{overflow:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}p{margin:0 0 1em}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;margin:0 0 .55em;color:var(--ink)}h1{font-size:clamp(2.7rem,5.8vw,5.8rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,3.7vw,3.5rem);letter-spacing:-.035em}h3{font-size:1.45rem}.container{width:min(calc(100% - 40px),var(--container));margin:auto}.narrow{max-width:800px}.section{padding:88px 0}.skip-link{position:fixed;left:12px;top:-100px;background:#fff;color:var(--navy);padding:10px 16px;z-index:200}.skip-link:focus{top:12px}.eyebrow{display:block;color:var(--amber-dark);font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;margin-bottom:15px}.eyebrow.light{color:#ffd276}.button,.nav-cta,.hero-search button,.location-search button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;border:0;border-radius:999px;background:var(--amber);color:#15222e;font-weight:850;padding:13px 24px;cursor:pointer;box-shadow:0 8px 20px rgba(242,165,26,.22);transition:.2s}.button:hover,.nav-cta:hover,.hero-search button:hover,.location-search button:hover{background:#ffbb3c;transform:translateY(-1px)}.text-link{font-weight:800;color:var(--blue);text-decoration:underline;text-underline-offset:4px}.site-header{height:80px;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(7,59,103,.1);position:sticky;top:0;z-index:100;backdrop-filter:blur(14px)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:11px;color:var(--navy);font-weight:900;line-height:1.05;letter-spacing:-.02em}.brand>span:last-child{display:flex;flex-direction:column}.brand small{color:var(--amber-dark);font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;margin-top:3px}.brand-icon{width:43px;height:43px;display:grid;place-items:center;background:var(--navy);border-radius:10px}.brand-icon svg{width:31px;height:31px;fill:none;stroke:#fff;stroke-width:3}.brand-icon circle{fill:var(--amber);stroke:none}.main-nav{display:flex;align-items:center;gap:27px;font-size:.93rem;font-weight:750}.main-nav>a:not(.nav-cta):hover{color:var(--blue)}.nav-cta{min-height:43px;padding:9px 18px}.menu-toggle{display:none;border:0;background:transparent;padding:9px;width:47px;height:47px}.menu-toggle>span:not(.sr-only){height:2px;width:27px;background:var(--navy);display:block;margin:6px auto;transition:.2s}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.home-hero{min-height:680px;position:relative;color:#fff;background:var(--navy-2);overflow:hidden}.hero-media{position:absolute;inset:0}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,35,61,.96) 0%,rgba(5,35,61,.8) 43%,rgba(5,35,61,.25) 72%,rgba(5,35,61,.12) 100%)}.hero-media img{width:100%;height:100%;object-fit:cover}.hero-inner{min-height:680px;display:flex;align-items:center;position:relative;z-index:1}.hero-copy{width:min(670px,64%);padding:70px 0}.hero-copy h1,.page-hero h1{color:#fff}.hero-copy>p:not(.eyebrow){font-size:1.17rem;color:#e4edf3;max-width:610px}.hero-copy ul{display:flex;gap:24px;list-style:none;padding:0;margin:28px 0 0;font-size:.88rem;color:#e6eef4;flex-wrap:wrap}.hero-copy li:before{content:"✓";color:var(--amber);font-weight:900;margin-right:7px}.hero-search{background:#fff;border-radius:16px;padding:16px;box-shadow:var(--shadow);margin-top:28px;max-width:560px}.hero-search label,.location-search label{display:block;color:var(--navy);font-size:.8rem;font-weight:800;margin:0 0 8px 4px}.hero-search>div,.location-search>div{display:flex;gap:10px}.hero-search input,.location-search input{min-width:0;flex:1;border:1px solid var(--line);border-radius:999px;padding:0 18px;font:inherit}.hero-search button{white-space:nowrap}.trust-strip{border-bottom:1px solid var(--line);background:#fff}.trust-strip .container{min-height:72px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--navy);font-size:.82rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.section-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:70px;align-items:end;margin-bottom:42px}.section-heading h2{margin-bottom:0}.section-heading>p{color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{border:1px solid var(--line);border-radius:var(--radius);padding:30px;min-height:235px;display:flex;flex-direction:column;background:#fff;transition:.22s}.service-card:hover{transform:translateY(-4px);border-color:#9bb8ca;box-shadow:var(--shadow)}.service-card>span{font-size:.74rem;color:var(--amber-dark);font-weight:900;letter-spacing:.12em}.service-card p{color:var(--muted);flex:1}.service-card strong{font-size:.9rem;color:var(--blue)}.price-section{background:var(--ice)}.split{display:grid;grid-template-columns:1.08fr .92fr;gap:7vw;align-items:center}.advice-image{margin:0;background:#fff;padding:12px;border-radius:var(--radius);box-shadow:var(--shadow)}.advice-image img{border-radius:12px;aspect-ratio:3/2;object-fit:cover}.advice-image figcaption{font-size:.82rem;color:var(--muted);padding:12px 6px 3px}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:#fff;margin:24px 0}table{width:100%;border-collapse:collapse;min-width:520px}th,td{text-align:left;padding:15px 18px;border-bottom:1px solid var(--line)}th{background:var(--navy);color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}tbody tr:last-child td{border-bottom:0}.source-line{font-size:.82rem;color:var(--muted)}.source-line a{text-decoration:underline}.provinces{background:var(--cream)}.province-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.province-grid a{background:#fff;border:1px solid var(--line);border-radius:14px;padding:23px;display:flex;flex-direction:column;gap:5px;transition:.2s}.province-grid a:hover{border-color:var(--amber);transform:translateY(-2px)}.province-grid strong{font-family:Georgia,serif;color:var(--navy);font-size:1.15rem}.province-grid span{font-size:.78rem;color:var(--muted)}
.company-section{background:#fff}.company-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}.company-card{min-width:0;border:1px solid var(--line);border-top:4px solid var(--navy);border-radius:16px;padding:23px;display:flex;flex-direction:column;background:linear-gradient(180deg,#fff,#fbfcfd);box-shadow:0 9px 25px rgba(7,59,103,.06)}.company-specialty{color:var(--blue);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850}.company-card h3{font-size:1.26rem;margin-top:10px}.company-card p{color:var(--muted);font-size:.9rem}.company-base{font-size:.82rem;font-weight:800;color:var(--ink);margin-top:auto}.verified{align-self:flex-start;margin:14px 0 17px;background:#e8f3eb;color:#25633a;border-radius:99px;padding:5px 9px;font-size:.7rem}.company-cta{display:flex;align-items:center;justify-content:center;text-align:center;min-height:46px;border-radius:10px;background:var(--navy);color:#fff;font-size:.82rem;font-weight:850;padding:10px}.company-cta:hover{background:var(--blue)}.company-note{font-size:.8rem;color:var(--muted);margin-top:22px}.faq-section{background:var(--ice)}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:12px;margin:11px 0;padding:0 20px}.faq-list summary{cursor:pointer;padding:18px 30px 18px 0;font-weight:850;position:relative}.faq-list summary:after{content:"+";position:absolute;right:0;color:var(--amber-dark)}.faq-list details[open] summary:after{content:"−"}.faq-list p{color:var(--muted);padding-bottom:17px}
.page-hero{background:radial-gradient(circle at 85% 20%,#176ba8 0,transparent 26%),var(--navy-2);color:#fff;padding:72px 0 82px;overflow:hidden}.page-hero h1{font-size:clamp(2.6rem,5vw,4.8rem);max-width:960px}.page-hero>div>p:not(.eyebrow){max-width:720px;color:#dce8f0;font-size:1.1rem}.breadcrumbs{display:flex;gap:9px;align-items:center;color:#c9d9e4;font-size:.8rem;margin-bottom:33px;flex-wrap:wrap}.breadcrumbs a{text-decoration:underline}.hero-actions{display:flex;align-items:center;gap:20px;margin-top:29px;flex-wrap:wrap}.page-hero .hero-actions>span{color:#cfdeea}.weather-strip{background:#fff8e8;border-bottom:1px solid #ead9b7}.weather-widget{display:grid;grid-template-columns:1.1fr 2fr;gap:35px;align-items:center;padding-top:24px;padding-bottom:24px}.weather-widget p{margin:0;color:#5f5646;font-size:.88rem}.weather-widget dl{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:0}.weather-widget dl div{border-left:1px solid #d9cbaa;padding-left:12px}.weather-widget dt{font-size:.66rem;text-transform:uppercase;color:#766a53}.weather-widget dd{margin:3px 0 0;font-weight:850;color:var(--navy);font-size:.86rem}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:8vw;align-items:start}.content-layout article>p{color:var(--muted);font-size:1.04rem}.content-layout article h2:not(:first-child){margin-top:52px}.quote-card{position:sticky;top:105px;background:var(--cream);border:1px solid #e8dfca;border-radius:var(--radius);padding:28px}.quote-card h2{font-size:2rem}.quote-card .button{width:100%}.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:28px 0}.check-grid div{border:1px solid var(--line);border-radius:12px;padding:17px;display:flex;flex-direction:column}.check-grid strong{color:var(--navy)}.check-grid span{color:var(--muted);font-size:.85rem}.link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.link-grid a{border:1px solid var(--line);border-radius:10px;padding:13px 15px;display:flex;justify-content:space-between;gap:9px}.link-grid a:hover{border-color:#8caec4;background:var(--ice)}.link-grid small{color:var(--muted)}.long-list{grid-template-columns:repeat(4,1fr)}.search-hero{padding-bottom:65px}.location-search{max-width:650px;background:#fff;padding:15px;border-radius:16px;margin-top:25px}.empty-state{text-align:center;padding:70px 20px}.form-page{background:var(--navy-2);padding:70px 0 90px}.form-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:start}.form-intro{color:#fff;position:sticky;top:120px}.form-intro h1{color:#fff;font-size:clamp(2.6rem,5vw,4.6rem)}.form-intro>p:not(.eyebrow){color:#d5e2eb}.form-intro ol{list-style:none;padding:0;margin:35px 0}.form-intro li{display:flex;gap:15px;align-items:center;margin:20px 0}.form-intro li b{width:38px;height:38px;border-radius:50%;background:var(--amber);color:var(--ink);display:grid;place-items:center}.form-intro li span{display:flex;flex-direction:column}.form-intro li small{color:#aec2d0}.form-card{background:#fff;border-radius:22px;padding:36px;box-shadow:var(--shadow)}fieldset{border:0;padding:0;margin:0 0 30px}legend{font-family:Georgia,serif;font-size:1.55rem;font-weight:700;margin-bottom:18px;color:var(--navy)}label{display:flex;flex-direction:column;gap:7px;font-size:.84rem;font-weight:800;color:var(--ink);margin-bottom:16px}input,select,textarea{width:100%;font:inherit;border:1px solid #bfcbd2;border-radius:10px;padding:12px 13px;background:#fff;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:3px solid rgba(10,90,152,.15);border-color:var(--blue)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.consent{flex-direction:row;align-items:flex-start;font-weight:500}.consent input{width:19px;height:19px;flex:none;margin-top:3px}.consent a{text-decoration:underline}.honeypot{position:absolute!important;left:-9999px!important}.submit{width:100%;border-radius:12px}.form-note{text-align:center;color:var(--muted);font-size:.8rem;margin:12px 0 0}.notice{padding:14px 16px;border-radius:10px;margin-bottom:24px}.notice.error{background:#fff0f0;color:var(--danger)}.legal h1,.success-page h1,.error-page h1{font-size:clamp(2.6rem,5vw,4.5rem);color:var(--navy)}.legal h2{font-size:1.6rem;margin-top:38px}.legal a{text-decoration:underline;color:var(--blue)}.sources ul{padding-left:20px}.success-page,.error-page{text-align:center;min-height:600px;display:flex;align-items:center}.success-mark{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:#e4f4e7;color:#24703b;font-size:2rem;margin:0 auto 20px}
.site-footer{background:#061f35;color:#c9d6df;padding:70px 0 25px}.site-footer h2{color:#fff;font-family:inherit;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:55px}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:9px 0}.site-footer a:hover{color:#fff}.brand-footer{color:#fff;margin-bottom:18px}.network-links{border-top:1px solid #173b56;margin-top:45px;padding-top:25px;display:flex;gap:25px;align-items:flex-start}.network-links p{color:#fff;font-weight:800;white-space:nowrap}.network-links nav{display:flex;gap:18px;flex-wrap:wrap}.network-links a{text-decoration:underline}.footer-bottom{border-top:1px solid #173b56;margin-top:28px;padding-top:23px;font-size:.78rem}.mobile-cta{display:none}
.split>*,.content-layout>*,.form-layout>*{min-width:0}
@media(max-width:1020px){.main-nav{gap:15px}.company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.province-grid{grid-template-columns:repeat(3,1fr)}.long-list{grid-template-columns:repeat(3,1fr)}.weather-widget{grid-template-columns:1fr}.footer-grid{grid-template-columns:1.4fr repeat(2,1fr)}.footer-grid>div:last-child{grid-column:2}}
@media(max-width:880px){.site-header{backdrop-filter:none}.menu-toggle{display:block}.main-nav{position:fixed;top:80px;left:0;right:0;height:calc(100dvh - 80px);background:#fff;z-index:105;display:none;flex-direction:column;align-items:stretch;padding:25px 20px;gap:0;overflow:auto}.main-nav.is-open{display:flex}.main-nav a{padding:17px 5px;border-bottom:1px solid var(--line)}.main-nav .nav-cta{margin-top:18px;border:0}.hero-copy{width:100%;max-width:650px}.hero-media:after{background:linear-gradient(90deg,rgba(5,35,61,.95),rgba(5,35,61,.75))}.section-heading,.split,.content-layout,.form-layout{grid-template-columns:1fr}.advice-image{order:-1}.quote-card,.form-intro{position:static}.service-grid{grid-template-columns:repeat(2,1fr)}.weather-widget dl{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.footer-grid>div:last-child{grid-column:auto}.mobile-cta{position:fixed;display:flex;align-items:center;gap:8px;left:12px;right:12px;bottom:12px;z-index:90;background:var(--navy);padding:8px;border-radius:14px;box-shadow:0 12px 35px rgba(0,0,0,.3);transform:translateY(130%);transition:.25s}.mobile-cta.is-visible{transform:translateY(0)}.mobile-cta a{flex:1;background:var(--amber);color:var(--ink);border-radius:10px;padding:11px 12px;text-align:center;font-size:.78rem;font-weight:900}.mobile-cta button{width:35px;height:35px;border:0;border-radius:50%;background:#194f78;color:#fff;font-size:1.2rem}.section{padding:70px 0}}
@media(max-width:620px){.container{width:min(calc(100% - 28px),var(--container))}.home-hero,.hero-inner{min-height:650px}.hero-copy{padding:55px 0}.hero-copy h1{font-size:3rem}.hero-copy ul{display:block}.hero-copy li{margin:8px 0}.hero-search>div,.location-search>div{flex-direction:column}.hero-search input,.location-search input{min-height:48px}.trust-strip .container{overflow-x:auto;justify-content:flex-start;white-space:nowrap}.service-grid,.company-grid,.province-grid,.link-grid,.long-list,.check-grid,.field-row,.footer-grid{grid-template-columns:1fr}.section-heading{gap:20px}.section-heading>p{font-size:.9rem}.weather-widget dl{grid-template-columns:repeat(2,1fr)}.weather-widget dl div{padding:8px;border:0;background:#fff;border-radius:8px}.page-hero{padding:52px 0 63px}.page-hero h1{font-size:2.8rem}.form-card{padding:24px 18px}.company-card{padding:21px}.network-links{display:block}.network-links nav{display:flex;flex-direction:column;gap:9px}.footer-grid>div{border-bottom:1px solid #173b56;padding-bottom:18px}.footer-grid>div:last-child{border:0}body{padding-bottom:78px}}
