/* Shared service architecture and province-focused page design. */
.nav-submenu{width:min(560px,calc(100vw - 64px));padding:16px;left:-10px}.nav-dropdown[open]::after{width:560px}.nav-submenu .all-services-link{font-size:12px;font-weight:800;background:#eef6e5;border-radius:7px;color:#274b21;margin-bottom:12px;padding:10px 12px}.service-menu-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:16px}.nav-submenu .service-menu-title{color:#007b96;font-size:13px;font-weight:800;padding-bottom:12px;margin-bottom:4px;border-bottom:1px solid #deebe5;border-radius:0}.service-menu-group>a{display:block}.service-menu-group p{font-size:11px;line-height:1.7;margin:12px;color:#697c80}.footer-category{font-weight:800!important;color:#16788b!important;padding-top:8px}.homepage .footer-category{color:#c0df8d!important}
.service-page{--ink:#142638;--muted:#586b77;--blue:#087f9a;--lime:#b5dc59;--dark:#101e30;--line:#dce7e4;font-size:16px}.service-page .container{width:min(1240px,calc(100% - 72px))}.service-page .section{padding:76px 0}.service-page h1,.service-page h2,.service-page h3{font-family:Oswald,'Arial Narrow',Arial,sans-serif;letter-spacing:-.6px}.service-page h2{font-size:clamp(29px,3vw,41px);line-height:1.25}.service-page .eyebrow{color:#507d22;font-size:10px;letter-spacing:2px}.service-page .button{background:linear-gradient(120deg,#bddf61,#8fc445);color:#18351d;border-radius:8px;min-height:52px;padding:15px 24px;font-size:13px}.service-page .header{border:0;background:#fff;padding:14px 24px}.service-page .nav-shell{max-width:1400px;padding:6px 14px;gap:23px}.service-page .nav-shell nav{gap:20px}.service-page .page-hero{padding:44px 0 60px;background:linear-gradient(115deg,#0d2237,#184f59);position:relative}.service-page .page-hero .eyebrow{color:#c1e384;margin-bottom:18px}.service-page .inner-hero-grid{grid-template-columns:1.2fr .85fr;gap:65px;align-items:center}.service-page .breadcrumbs{font-size:11px;line-height:1.8;margin-bottom:27px;max-width:680px}.service-page .page-hero h1{font-size:clamp(38px,3.9vw,55px);line-height:1.13;letter-spacing:-1px;margin-bottom:20px}.service-page .page-hero h1 span{color:#bee376;display:block;margin-top:6px}.service-page .page-hero .lead{font-size:15px;line-height:1.8;color:#cedfe5}.service-location{font-size:12px;color:#d3e5cc;line-height:1.65;margin:0 0 15px}.service-page .hero-buttons{margin-top:25px;gap:22px}.service-page .inner-hero-photo{border-radius:18px;margin:12px 0 0;box-shadow:0 20px 45px #00132335;border:1px solid #ffffff24}.service-page .inner-hero-photo img{width:100%;height:350px;object-fit:cover}.service-page .inner-hero-photo figcaption{font-size:10px;padding:17px;text-align:center;letter-spacing:.3px;color:#4d646e;background:#fff}.service-page .trust-strip{background:#f5f8ef;border-color:#e4ebde}.service-page .trust-strip .container{padding:24px 0}.service-page .trust-strip strong{font-family:Oswald,Arial,sans-serif;font-size:20px}.service-page .trust-strip span,.service-page .trust-strip a{font-size:11px}.service-page .trust-strip .stars{font-size:11px}
.category-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:30px}.category-card{display:block;min-width:0;color:#172b3c;border:1px solid #dce7e4;background:#fff;border-radius:17px;overflow:hidden;box-shadow:0 10px 25px #102a3406;transition:transform .18s,box-shadow .18s}.category-card:hover{transform:translateY(-3px);box-shadow:0 15px 34px #132d3f13;text-decoration:none}.category-card img{width:100%;height:265px;object-fit:cover}.category-card>div{padding:30px}.category-card .eyebrow{font-size:10px;letter-spacing:1.8px;color:#548023;margin:0 0 12px}.category-card h3{font-size:28px;line-height:1.2;margin-bottom:15px;display:flex;justify-content:space-between;gap:12px}.category-card h3 span{color:#117f94}.category-card p:last-child{font-size:14px;line-height:1.8;margin:0;color:#60717d}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:34px}.catalog-card{min-width:0;border:1px solid #dce7e4;border-radius:15px;overflow:hidden;background:white;box-shadow:0 12px 25px #172a3605;display:flex;flex-direction:column}.catalog-image{display:block;overflow:hidden}.catalog-card img{width:100%;height:224px;object-fit:cover;transition:transform .25s}.catalog-card:hover img{transform:scale(1.03)}.catalog-body{padding:27px;display:flex;flex-direction:column;flex:1}.catalog-type{color:#638831;font-size:9px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase;margin-bottom:12px}.catalog-card h3{font-size:24px;line-height:1.3;margin-bottom:14px}.catalog-card h3 a{color:#142d40}.catalog-card p{font-size:14px;line-height:1.8;margin-bottom:26px}.catalog-link{display:flex;align-items:center;justify-content:space-between;color:#127b91;font-size:12px;font-weight:800;border-top:1px solid #e4ece9;padding-top:18px;margin-top:auto}.single-catalog{grid-template-columns:1fr;max-width:980px}.single-catalog .catalog-card{display:grid;grid-template-columns:1fr 1fr}.single-catalog .catalog-card img{height:100%;min-height:340px}.single-catalog .catalog-body{padding:40px}.single-catalog h3{font-size:32px}.related-catalog{background:#f5f8f3}.related-catalog .catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.related-catalog .catalog-card img{height:165px}.related-catalog .catalog-body{padding:21px}.related-catalog .catalog-card h3{font-size:22px}.related-catalog .catalog-card p{font-size:12px}
.service-page .reading-section .container{max-width:1240px}.service-scope h2{margin-bottom:34px}.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.service-page .text-block{border:1px solid #e0e9e5;border-radius:13px;padding:28px;margin:0;background:#fff;max-width:none}.service-page .text-block h3{font-size:23px;color:#193849;margin-bottom:14px}.service-page .text-block p{font-size:14px;line-height:1.85;margin:0}.scope-grid>.text-block:last-child:nth-child(odd){grid-column:1/-1}.service-proof{background:linear-gradient(90deg,#101f32ee,#163345e8),url('images/dial4duct-service-van.webp') center 52%/cover;color:#fff}.service-proof h2{max-width:860px;margin-bottom:35px}.service-page .service-proof .eyebrow{color:#c1e582}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.proof-grid article{padding:30px;background:#102035df;border:1px solid #9bb8c245;border-radius:14px}.proof-grid article>span{display:grid;place-items:center;width:46px;height:46px;border:1px solid #bee07690;border-radius:50%;background:#badf6520;color:#c2e984;font-size:14px;margin-bottom:25px}.proof-grid h3{font-size:23px;margin-bottom:15px;color:#fff}.proof-grid p{font-size:14px;line-height:1.8;color:#d2dfe6;margin:0}.service-page .dark{background:#102337}.service-page .dark .eyebrow{color:#c1e384}.service-page .steps article>span{color:#acd45e}.service-page .steps h3{font-size:23px}.service-page .steps p{font-size:14px}
.provincial-coverage{background:linear-gradient(125deg,#f0f7e8,#edf7f9)}.provincial-coverage>.container{display:grid;grid-template-columns:.8fr 1.3fr;gap:50px;align-items:center}.provincial-coverage h2{font-size:38px}.provincial-coverage p{font-size:14px;line-height:1.8}.province-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.province-grid article{background:#fff;padding:29px;border:1px solid #dce6dd;border-radius:14px;display:flex;flex-direction:column}.province-grid article>span{font-size:9px;color:#56802c;letter-spacing:1.8px;font-weight:800;margin-bottom:24px}.province-grid h3{font-size:25px;line-height:1.25}.province-grid p{font-size:13px;line-height:1.8}.province-grid a{font-size:12px;font-weight:800;margin-top:auto;color:#067d98}.service-faq{background:white}.service-faq h2{max-width:900px}.service-page .faq-list{max-width:none}.service-page .faq-list details{border:1px solid #dce5e7;border-radius:10px;margin-bottom:12px;padding:0 22px;background:#fff}.service-page .faq-list summary{list-style:none;font-size:16px;line-height:1.5;padding:20px 38px 20px 0;position:relative}.service-page .faq-list summary::-webkit-details-marker{display:none}.service-page .faq-list summary:after{content:'+';position:absolute;right:0;top:15px;font-size:26px;font-weight:400;color:#1e7286}.service-page .faq-list details[open] summary:after{content:'−'}.service-page .faq-list details p{margin:0 0 22px;font-size:14px;line-height:1.8;max-width:1040px}.service-page .customer-reviews{background:#f4f8f0}.service-page .reviews-heading h2{max-width:750px}.service-page .review-card{box-shadow:none;background:#fff;border:1px solid #dce6d8}.service-page .review-card blockquote{font-size:14px}.service-quote{background:linear-gradient(140deg,#edf5e2,#f3f8fa)}.quote-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.quote-layout>div:first-child p{max-width:440px}.quote-phone{font-size:29px;font-weight:800;color:#0a7d94;display:inline-block;margin:7px 0 18px}.quote-footnote{font-size:12px}.service-page .quote-card{padding:35px;box-shadow:0 15px 45px #143d4c0c;border:1px solid #e0e8db;border-top:4px solid #a1ce59}.service-page .quote-card h3{font-size:29px;margin-bottom:25px}.service-page .quote-form{gap:16px}.service-page .quote-form input,.service-page .quote-form select,.service-page .quote-form textarea{min-height:45px;background:#f8faf8}.service-page .closing{background:#102337}.service-page .closing h2{font-size:34px}.service-page .closing .eyebrow{color:#bedd7a}.service-page .closing .button{color:#18351d}.service-page footer h2{font:700 14px Inter,Arial,sans-serif;letter-spacing:0}.service-page .service-quote{scroll-margin-top:22px}.service-page .nav-quote{min-height:44px;padding:12px 18px}
/* A longer province-focused H1 remains readable beside the homepage quote form. */
.homepage .home-hero h1{font-size:clamp(42px,4.6vw,64px);line-height:1.12;max-width:720px;letter-spacing:-1px}.homepage .home-hero h1 em{display:block;margin-top:8px}.homepage .hero-grid{grid-template-columns:1.2fr 1fr;gap:55px}.homepage .home-hero .hero-grid>div:first-child{padding-top:10px}.homepage .home-hero .hero-lead{font-size:17px}.homepage .provincial-coverage h2{font-size:38px}.homepage .category-grid h3{font-size:29px}
@media(max-width:1150px){.service-page .nav-shell nav{gap:14px}.service-page .nav-shell{gap:17px}.service-page .container{width:calc(100% - 56px)}.service-page .inner-hero-grid{gap:35px;grid-template-columns:1.15fr 1fr}.service-page .page-hero h1{font-size:43px}.service-page .inner-hero-photo img{height:330px}.catalog-grid{gap:20px}.catalog-body{padding:23px}.provincial-coverage>.container{gap:30px;grid-template-columns:.85fr 1.3fr}.province-grid{gap:12px}.province-grid article{padding:23px}.province-grid h3{font-size:23px}.related-catalog .catalog-grid{grid-template-columns:repeat(2,1fr)}.quote-layout{gap:40px}.homepage .hero-grid{gap:32px}.homepage .home-hero h1{font-size:52px}}
@media(max-width:800px){.nav-submenu{position:static;width:100%;padding:10px}.service-menu-columns{grid-template-columns:1fr 1fr;gap:12px}.nav-dropdown[open]::after{display:none}.service-page .header{padding:10px 14px}.service-page .nav-shell{gap:12px}.service-page .nav-shell nav.open{gap:0}.service-page .container{width:calc(100% - 40px)}.service-page .inner-hero-grid{grid-template-columns:1fr;gap:30px}.service-page .page-hero h1{font-size:46px;max-width:700px}.service-page .page-hero{padding:28px 0 45px}.service-page .inner-hero-photo{width:100%;max-width:none;margin:0}.service-page .inner-hero-photo img{height:360px}.service-page .section{padding:55px 0}.service-page .trust-strip .container{grid-template-columns:1fr 1fr;gap:18px}.catalog-grid{grid-template-columns:1fr 1fr;gap:20px}.catalog-card img{height:200px}.category-card img{height:215px}.category-card>div{padding:24px}.category-card h3{font-size:26px}.proof-grid{gap:15px}.proof-grid article{padding:23px}.proof-grid h3{font-size:22px}.proof-grid p{font-size:12px}.provincial-coverage>.container{grid-template-columns:1fr;gap:22px}.provincial-coverage>.container>div:first-child{max-width:700px}.province-grid h3{font-size:27px}.province-grid article{padding:28px}.quote-layout{grid-template-columns:1fr;gap:24px}.quote-layout>div:first-child p{max-width:620px}.service-page .quote-card{max-width:none}.homepage .hero-grid{grid-template-columns:1fr;gap:42px}.homepage .home-hero h1{font-size:58px;max-width:680px}.homepage .quote-stack{max-width:560px;width:100%}.single-catalog .catalog-body{padding:28px}.single-catalog h3{font-size:29px}.scope-grid{gap:16px}.service-page .text-block{padding:24px}.service-page .text-block h3{font-size:22px}}
@media(max-width:520px){.service-menu-columns{grid-template-columns:1fr}.service-menu-group p{margin:8px 12px}.nav-submenu .service-menu-title{font-size:14px}.nav-submenu a{white-space:normal}.service-page .nav-shell{gap:8px}.service-page .nav-quote{font-size:10px;min-height:40px;padding:10px 12px}.service-page .container{width:calc(100% - 36px)}.service-page .page-hero h1{font-size:36px;letter-spacing:-.7px}.service-page .page-hero .lead{font-size:14px;line-height:1.8}.service-page .breadcrumbs{font-size:10px;margin-bottom:22px}.service-page .inner-hero-photo img{height:270px}.service-page .inner-hero-photo figcaption{font-size:9px;padding:14px 10px}.service-page .hero-buttons{gap:17px}.service-page .button{padding:14px 19px;font-size:12px}.service-page .trust-strip strong{font-size:17px}.service-page .trust-strip span,.service-page .trust-strip a{font-size:10px}.service-page .trust-strip .stars{font-size:9px}.service-page .section{padding:46px 0}.category-grid,.catalog-grid,.related-catalog .catalog-grid{grid-template-columns:1fr;gap:21px}.category-card img{height:230px}.category-card h3{font-size:27px}.category-card>div{padding:26px}.catalog-card img{height:245px}.catalog-body{padding:27px}.catalog-card h3{font-size:25px}.single-catalog .catalog-card{display:flex}.single-catalog .catalog-card img{min-height:0;height:245px}.related-catalog .catalog-card img{height:220px}.related-catalog .catalog-card p{font-size:14px}.scope-grid,.proof-grid{grid-template-columns:1fr}.proof-grid article{padding:27px}.proof-grid article>span{margin-bottom:20px}.proof-grid p{font-size:14px}.scope-grid>.text-block:last-child:nth-child(odd){grid-column:auto}.service-page .text-block{padding:26px}.service-page .text-block p{font-size:14px}.province-grid{grid-template-columns:1fr;gap:16px}.provincial-coverage h2,.homepage .provincial-coverage h2{font-size:32px}.province-grid article{padding:27px}.service-page .faq-list details{padding:0 17px}.service-page .faq-list summary{font-size:14px;padding-top:18px;padding-bottom:18px}.service-page .faq-list details p{font-size:13px}.service-page .quote-card{padding:27px 21px}.service-page .quote-form{gap:13px}.service-page .quote-form input,.service-page .quote-form select,.service-page .quote-form textarea{font-size:16px}.service-page .quote-card h3{font-size:27px}.service-page .closing h2{font-size:30px}.service-page .reviews-heading{display:block}.service-page .review-profile{white-space:normal}.homepage .home-hero h1{font-size:clamp(34px,9.1vw,46px);line-height:1.16;letter-spacing:-.8px}.homepage .hero-grid{gap:38px}.homepage .home-hero .hero-lead{font-size:16px}.homepage .category-grid h3{font-size:27px}}
@media(prefers-reduced-motion:reduce){.catalog-card img,.category-card{transition:none}.catalog-card:hover img,.category-card:hover{transform:none}}
