@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/roboto-latin-ext-italic.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/roboto-latin-italic.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/roboto-latin-ext-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url(fonts/roboto-latin-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root{--navy:#022c5d;--ink:#22384b;--muted:#536776;--cyan:#007f9f;--cyan-bright:#019cc5;--ice:#f4f6f7;--paper:#fff;--line:#d7e0e8;--action:#b94018;--radius:12px;--shadow:0 3px 14px rgba(22,51,70,.035)}
*{box-sizing:border-box}
html{scroll-padding-top:130px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Roboto',Arial,sans-serif;font-weight:400;font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;vertical-align:middle}
a{color:var(--navy);text-underline-offset:4px;text-decoration-thickness:1px}
a:hover{color:var(--cyan)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--cyan-bright);outline-offset:5px;border-radius:3px}
button,input,select,textarea{font:inherit}
h1,h2,h3,h4,h5,h6{color:var(--navy);font-weight:600;letter-spacing:-.01em;line-height:1.17;margin:0 0 20px;text-wrap:balance}
h1{font-size:clamp(2.25rem,4.1vw,3.8rem)}
h2{font-size:clamp(1.75rem,2.6vw,2.5rem)}
h3{font-size:1.35rem}
p{margin:0 0 20px}
ul,ol{padding-left:23px}
li{margin-bottom:8px}
figure{margin:0}
.wrap,.wp-block-group.wrap{width:min(1200px,calc(100% - 64px));margin-inline:auto}
.reading-width{max-width:790px}
.section-space{padding-block:64px}
.eyebrow{font-size:13px;line-height:1.45;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);margin:0 0 16px}
.lead{font-size:1.22rem;line-height:1.65;color:var(--muted)}
.subtle{color:var(--muted)}
.skip-link{position:absolute;top:-200px;left:24px;padding:12px 18px;background:#fff;z-index:1000}
.skip-link:focus{top:10px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.site-header{--header-progress:0;--brand-height:96px;--brand-height-difference:54px;--symbol-height:58px;--symbol-shrink:24px;--wordmark-size:30px;--wordmark-shrink:10px;--tagline-size:16px;--tagline-shrink:6px;position:sticky;top:0;z-index:90;background:#fff;border-top:3px solid var(--cyan);border-bottom:1px solid var(--line);overflow-anchor:none}
.brand-row{display:flex;align-items:center;gap:28px;height:calc(var(--brand-height) - var(--brand-height-difference) * var(--header-progress));min-height:42px;padding-block:0}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0;color:var(--navy);white-space:nowrap}
.brand:hover{color:var(--navy)}
.site-header .brand{gap:calc(12px - 4px * var(--header-progress))}
.brand-symbol{width:48px;height:58px;object-fit:contain}
.site-header .brand-symbol{height:calc(var(--symbol-height) - var(--symbol-shrink) * var(--header-progress));width:calc((var(--symbol-height) - var(--symbol-shrink) * var(--header-progress)) * .827586)}
.brand-wordmark{display:flex;flex-direction:column;line-height:1.15}
.brand-wordmark strong{font-size:30px;font-weight:750;letter-spacing:-.035em}
.brand-wordmark>span{font-size:16px;letter-spacing:.025em;color:var(--cyan);margin-top:4px;font-weight:650}
.site-header .brand-wordmark strong{font-size:calc(var(--wordmark-size) - var(--wordmark-shrink) * var(--header-progress))}
.site-header .brand-wordmark>span{font-size:calc(var(--tagline-size) - var(--tagline-shrink) * var(--header-progress));margin-top:calc(4px - 2px * var(--header-progress))}
.header-contact{margin-left:auto;text-align:right;display:flex;flex-direction:column;line-height:1.5}
.header-phone{font-size:calc(23px - 6px * var(--header-progress));font-weight:700;text-decoration:none;letter-spacing:-.02em;white-space:nowrap}
.header-contact>span{font-size:13px;color:var(--muted);height:calc(20px - 20px * var(--header-progress));opacity:calc(1 - var(--header-progress));overflow:hidden;white-space:nowrap}
.header-login{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:5px 12px;border:1px solid var(--line);border-radius:7px;font-size:14px;font-weight:600;line-height:1.5;white-space:nowrap;text-decoration:none;color:var(--navy);flex-shrink:0}
.header-login:hover{background:var(--ice);border-color:#9baebb;color:var(--navy)}
.header-login svg{display:block;flex-shrink:0}
.site-nav{border-top:1px solid #edf1f3}
.nav-inner{display:flex;align-items:flex-start;gap:0 24px;min-height:49px}
.primary-menu,.utility-menu,.sub-menu{list-style:none;padding:0;margin:0}
.primary-menu{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:0 28px;flex:1 1 auto;min-width:0}
.primary-menu li{margin:0;padding:0;position:relative}
.primary-menu>li{display:flex;align-items:center;min-height:48px}
.primary-menu a{display:block;color:var(--ink);font-size:15px;font-weight:600;text-decoration:none}
.primary-menu>li>a{display:flex;align-items:center;min-height:48px;padding:10px 0 7px;white-space:nowrap;border-bottom:3px solid transparent}
.primary-menu>li>a:hover,.primary-menu>.current-menu-item>a,.primary-menu>.current-menu-ancestor>a{color:var(--cyan);border-bottom-color:var(--cyan)}
.submenu-toggle,.nav-more-toggle{border:0;background:transparent;color:var(--ink);cursor:pointer;min-height:44px;font-size:15px;font-weight:600;padding:10px 8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}
.submenu-toggle{width:32px;margin-right:-8px}
.submenu-toggle:hover,.nav-more-toggle:hover,.submenu-open>.nav-more-toggle{color:var(--cyan);background:var(--ice)}
.nav-chevron{width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg);margin-top:-4px}
.submenu-open>.submenu-toggle .nav-chevron{transform:rotate(225deg);margin-top:4px}
.nav-more{position:relative;flex:0 0 auto;margin-left:auto;min-height:48px;display:flex;align-items:center}
.nav-more-toggle>span[aria-hidden]{font-size:23px;font-weight:400;line-height:1}
.sub-menu,.utility-menu{background:#fff;border:1px solid var(--line);border-radius:0 0 10px 10px;box-shadow:0 12px 24px rgba(22,51,70,.1);padding:7px;min-width:240px}
.cr-enhanced .sub-menu,.cr-enhanced .utility-menu{display:none;position:absolute;top:100%;left:-10px;z-index:100}
.cr-enhanced .utility-menu{left:auto;right:0;min-width:190px}
.cr-enhanced .submenu-open>.sub-menu,.cr-enhanced .submenu-open>.utility-menu{display:block}
.sub-menu li,.utility-menu li{margin:0}
.sub-menu a,.utility-menu a{display:block;padding:11px 13px;border-radius:5px;font-size:15px;font-weight:500;line-height:1.4;text-decoration:none;white-space:nowrap;color:var(--ink)}
.sub-menu a:hover,.utility-menu a:hover,.sub-menu .current-menu-item>a,.utility-menu .current-menu-item>a{background:var(--ice);color:var(--cyan)}
.menu-toggle{display:none}
html:not(.cr-enhanced) .primary-menu>.menu-item-has-children{align-items:flex-start;flex-direction:column}
html:not(.cr-enhanced) .sub-menu,html:not(.cr-enhanced) .utility-menu{box-shadow:none}
html:not(.cr-enhanced) .nav-more{display:block}
html:not(.cr-enhanced) .nav-more-toggle{cursor:default}
.site-main{min-height:40vh}
.page-content>.wp-block-group{margin-block:0}
.home-hero{padding:0;background:var(--ice)}
.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:center}
.hero-copy h1{max-width:560px}
.hero-copy .lead{max-width:490px;margin-bottom:26px}
.hero-image img{width:100%;height:360px;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}
.hero-image figcaption{font-size:12px;color:var(--muted);margin:9px 4px 0;text-align:right}
.home-hero>.wp-block-group.hero-grid{width:100%;max-width:none;display:flex;flex-direction:column-reverse;gap:0}
.home-hero .hero-image{width:100%;position:relative}
.home-hero .hero-image img{display:block;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:3.68/1;object-fit:cover;object-position:40% 68%;border-radius:0;box-shadow:none}
.home-hero .hero-image figcaption{width:min(1200px,calc(100% - 64px));margin:8px auto 0;text-align:right}
.home-hero .hero-copy{width:min(1200px,calc(100% - 64px));margin-inline:auto;display:grid;grid-template-columns:1.08fr 1fr;column-gap:56px;row-gap:14px;align-items:start;padding-block:30px 36px}
.home-hero .hero-copy>*{margin-block:0!important}
.home-hero .hero-copy .eyebrow{grid-column:1;grid-row:1}
.home-hero .hero-copy h1{grid-column:1;grid-row:2/4;max-width:570px;font-size:clamp(2.4rem,3.2vw,2.9rem)}
.home-hero .hero-copy .lead{grid-column:2;grid-row:1/3;max-width:none;font-size:1.08rem;line-height:1.6}
.home-hero .hero-copy .wp-block-buttons{grid-column:2;grid-row:3;gap:12px}
.wp-block-buttons,.actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:24px}
.wp-block-button__link,.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:11px 22px;border-radius:7px;background:var(--action);color:#fff!important;text-decoration:none;font-size:16px;font-weight:650;line-height:1.5;transition:background-color .16s ease,box-shadow .16s ease;border:1px solid var(--action)}
.wp-block-button__link:hover,.button:hover{background:#993615;border-color:#993615;box-shadow:0 4px 12px rgba(122,43,17,.12)}
.wp-block-button.is-style-outline .wp-block-button__link,.button.secondary{background:transparent;color:var(--navy)!important;border:1px solid #9baebb}
.wp-block-button.is-style-outline .wp-block-button__link:hover,.button.secondary:hover{background:var(--ice);border-color:var(--navy)}
.text-link{font-weight:650;text-decoration:none}
.text-link::after{content:' →';color:var(--cyan);white-space:nowrap}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}
.section-heading h2{margin-bottom:0}
.section-heading p{max-width:540px;margin-bottom:0;color:var(--muted)}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.hero-grid>*,.card-grid>*,.info-grid>*,.content-split>*,.local-panel>*,.contact-grid>*{margin-block:0!important;min-width:0}
.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}
.service-card .wp-block-image{margin:0}
.service-card img{width:100%;height:220px;object-fit:cover}
.service-card .card-body{padding:25px 26px 27px;display:flex;flex-direction:column;flex:1}
.service-card h3{margin-bottom:12px;font-size:1.35rem}
.service-card p{font-size:16px;line-height:1.65;color:var(--muted);margin-bottom:18px}
.service-card .card-body>p:last-child{margin-top:auto;margin-bottom:0}
.service-card .text-link{color:var(--navy)}
.service-card .text-link:hover{color:var(--cyan)}
.repair-photo img{object-position:50% 52%}
.desktop-photo img{object-position:50% 52%}
.more-help{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 22px;margin-top:26px;font-size:15px}
.more-help>p{margin:0;color:var(--muted)}
.more-help a{font-weight:600}
.local-section{padding-block:8px 58px}
.local-panel{padding:36px 40px;background:var(--ice);border-radius:var(--radius);display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:50px}
.local-panel h2{font-size:2rem;margin-bottom:14px}
.local-panel p{margin-bottom:14px;font-size:17px}
.local-panel p:last-child{margin-bottom:0}
.local-details{border-left:1px solid #c8dce3;padding-left:40px}
.local-details strong{color:var(--navy)}
.reviews-section{padding-block:0 62px}
.reviews-section .section-heading{margin-bottom:25px}
.page-hero{padding-block:56px 48px;background:#f2f7f9;border-bottom:1px solid #e8eff2}
.page-hero h1{max-width:850px;font-size:clamp(2.2rem,4vw,3.3rem)}
.page-hero .lead{max-width:770px;margin-bottom:0}
.page-hero .actions{margin-top:24px}
.content-split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.content-split h2{font-size:2rem}
.content-split .wp-block-image img{width:100%;max-height:470px;object-fit:cover;border-radius:var(--radius)}
.content-split figcaption{font-size:13px;color:var(--muted);margin-top:9px}
.soft-section{background:#f6f9fa}
.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.info-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.info-card h3{font-size:1.25rem;margin-bottom:12px}
.info-card p{font-size:16px;color:var(--muted)}
.info-card p:last-child{margin-bottom:0}
.info-card ul{font-size:16px;margin-bottom:0}
.info-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}
.steps-grid{counter-reset:steps}
.steps-grid .info-card:before{counter-increment:steps;content:'0' counter(steps);display:block;color:var(--cyan);font-size:14px;font-weight:750;letter-spacing:.06em;margin-bottom:17px}
.cta-panel{display:flex;gap:30px;align-items:center;justify-content:space-between;padding:32px 36px;background:var(--ice);border-radius:var(--radius)}
.cta-panel h2{font-size:1.7rem;margin-bottom:8px}
.cta-panel p{margin:0;color:var(--muted)}
.cta-panel .wp-block-buttons{margin:0;flex-shrink:0}
.prose p{max-width:72ch}
.prose ul{max-width:72ch}
.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:start}
.contact-card{padding:32px;background:var(--ice);border-radius:var(--radius)}
.contact-card h2{font-size:1.65rem}
.contact-card .large-phone{font-size:2rem;font-weight:700;text-decoration:none;color:var(--navy);display:inline-block;margin-bottom:20px}
.contact-card h3{font-size:1.1rem;margin-top:26px;margin-bottom:8px}
.contact-card p:last-child{margin-bottom:0}
.contact-photo .wp-block-image img{display:block;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:auto;object-fit:contain;border-radius:var(--radius)}
.find-us-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.find-us-grid>.contact-map,.find-us-grid>.contact-street-view{min-width:0;margin-block:0!important;padding:22px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}
.find-us-grid h2{font-size:1.45rem;margin:0 0 16px}
.find-us-grid iframe{display:block;max-width:100%;border-radius:8px}
.hours-table{width:100%;border-collapse:collapse;font-size:17px;margin:24px 0}
.hours-table table{width:100%;border-collapse:collapse}
.hours-table th,.hours-table td{padding:14px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.hours-table th{color:var(--navy);font-weight:600;width:55%}
.status-note{display:inline-block;padding:5px 12px;background:#e1edf3;color:var(--navy);border-radius:5px;font-size:13px;font-weight:650;margin-bottom:18px}
.placeholder-panel{max-width:830px;margin-inline:auto;border:1px solid var(--line);border-radius:var(--radius);padding:42px;background:#fff;box-shadow:var(--shadow)}
.placeholder-panel h2{font-size:2rem}
.wp-block-details{padding:18px 0;border-bottom:1px solid var(--line)}
.wp-block-details summary{font-weight:650;color:var(--navy);cursor:pointer}
.wp-block-details>p{margin:16px 0 0;color:var(--muted)}
.site-footer{background:#f0f5f7;border-top:1px solid var(--line);padding-top:44px}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:60px;padding-bottom:38px}
.footer-grid h2{font-size:16px;letter-spacing:0;margin-bottom:14px;font-weight:700}
.footer-grid p{font-size:15px;color:var(--muted);margin:0 0 12px}
.footer-grid a:not(.brand){font-size:15px;font-weight:600;text-decoration:none}
.footer-grid .footer-phone{font-size:23px!important;display:inline-block;margin-bottom:10px}
.footer-brand .brand{margin-bottom:17px}
.footer-brand .brand-symbol{width:34px;height:42px}
.footer-brand .brand-wordmark strong{font-size:23px}
.footer-brand .brand-wordmark>span{font-size:13px}
.footer-bottom{border-top:1px solid #d8e3e8;display:flex;justify-content:space-between;gap:20px;padding-block:20px;font-size:12px;color:var(--muted)}
.footer-bottom>div{display:flex;gap:24px}
.footer-bottom a{color:var(--muted);text-decoration:none}
.article-summary{padding-block:25px;border-bottom:1px solid var(--line)}
.article-summary h2{font-size:1.8rem}
.page-content>.wp-block-group:last-child{padding-bottom:64px}
.editor-styles-wrapper .wp-block{max-width:1200px}
.editor-styles-wrapper .block-editor-block-list__layout .wp-block{margin-top:16px;margin-bottom:16px}
.editor-styles-wrapper .hero-grid,.editor-styles-wrapper .card-grid{display:block}
.editor-styles-wrapper .wrap{width:100%}
.editor-styles-wrapper .wp-block-group{outline-offset:4px}
@media(min-width:1500px){.hero-image img{height:385px}}
@media(max-width:1119px){
  .site-header{--brand-height:83px;--brand-height-difference:41px;--symbol-height:49px;--symbol-shrink:15px;--wordmark-size:27px;--wordmark-shrink:7px;--tagline-size:14px;--tagline-shrink:4px}
  .brand-row{gap:20px}
  .header-phone{font-size:calc(20px - 3px * var(--header-progress))}
  .primary-menu{gap:0 24px}
  .hero-grid{gap:34px;grid-template-columns:1fr 1fr}
  .hero-image img{height:340px}
  .hero-copy h1{font-size:3rem}
  .hero-copy .lead{font-size:1.1rem}
  .service-card .card-body{padding:21px}
  .service-card img{height:180px}
  .content-split{gap:32px}
  .local-panel{gap:30px;padding:30px}
  .local-details{padding-left:30px}
  .footer-grid{gap:30px}
}
@media(max-width:800px){
  .wrap,.wp-block-group.wrap{width:calc(100% - 40px)}
  .hero-grid{grid-template-columns:1fr;gap:30px}
  .hero-copy h1{max-width:620px;font-size:clamp(2.5rem,7vw,3.2rem)}
  .hero-copy .lead{max-width:600px;font-size:1.15rem}
  .hero-image img{height:auto;max-height:390px;aspect-ratio:16/9}
  .home-hero .hero-image figcaption{width:calc(100% - 40px)}
  .home-hero .hero-copy{width:calc(100% - 40px);display:block;padding-block:28px 32px}
  .home-hero .hero-copy .eyebrow{margin-bottom:10px!important}
  .home-hero .hero-copy h1{max-width:none;font-size:2.6rem;margin-bottom:16px!important}
  .home-hero .hero-copy .lead{font-size:1.08rem;margin-bottom:20px!important}
  .card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .card-grid>.service-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}
  .card-grid>.service-card:last-child img{height:100%;min-height:210px}
  .info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .info-grid>.info-card:last-child:nth-child(odd){grid-column:1/-1}
  .section-space{padding-block:44px}
  .section-heading{align-items:start;flex-direction:column;gap:12px}
  .local-panel{grid-template-columns:1fr;gap:25px}
  .local-details{border-left:0;border-top:1px solid #c8dce3;padding:22px 0 0}
  .local-section{padding-bottom:42px}
  .reviews-section{padding-bottom:42px}
  .content-split,.contact-grid{grid-template-columns:1fr;gap:28px}
  .find-us-grid{grid-template-columns:1fr;gap:20px}
  .content-split .wp-block-image img{max-height:430px}
  .cta-panel{flex-direction:column;align-items:flex-start;padding:28px}
  .page-hero{padding-block:38px}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
  .footer-brand{grid-column:1/-1}
  .footer-brand>p{max-width:400px}
  .footer-bottom{flex-wrap:wrap}
  .page-content>.wp-block-group:last-child{padding-bottom:44px}
}
@media(max-width:620px){
  .site-header{--brand-height:77px;--brand-height-difference:33px;--symbol-height:42px;--symbol-shrink:8px;--wordmark-size:24px;--wordmark-shrink:4px;--tagline-size:12px;--tagline-shrink:2px}
  .brand-row{min-height:44px;gap:10px}
  .site-header .brand{gap:8px}
  .header-contact{display:none}
  .header-login{min-height:40px;width:40px;margin-left:auto;padding:8px}
  .header-login>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

}
@media(max-width:540px){
  body{font-size:17px}
  .wrap,.wp-block-group.wrap{width:calc(100% - 32px)}
  .hero-copy h1{font-size:2.5rem}
  .hero-copy .lead{font-size:1.1rem}
  .hero-image img{border-radius:14px;aspect-ratio:4/3}
  .home-hero .hero-copy,.home-hero .hero-image figcaption{width:calc(100% - 32px)}
  .home-hero .hero-copy h1{font-size:2.3rem}
  .actions,.wp-block-buttons{gap:12px;margin-top:20px}
  .wp-block-button__link,.button{padding:11px 17px;font-size:15px}
  .card-grid,.info-grid,.info-grid.two-col{grid-template-columns:1fr}
  .card-grid>.service-card:last-child{display:flex;grid-column:auto}
  .card-grid>.service-card:last-child img,.service-card img{height:210px;min-height:0}
  .service-card .card-body{padding:24px}
  .info-card{padding:24px}
  .section-heading{margin-bottom:22px}
  .section-heading h2{font-size:1.9rem}
  .more-help{justify-content:flex-start;gap:10px 18px;font-size:14px}
  .more-help>p{width:100%}
  .local-panel{padding:26px 24px;border-radius:14px}
  .local-panel h2{font-size:1.8rem}
  .page-hero h1{font-size:2.35rem}
  .page-hero .lead{font-size:1.12rem}
  .contact-card{padding:26px}
  .find-us-grid>.contact-map,.find-us-grid>.contact-street-view{padding:18px}
  .placeholder-panel{padding:28px 24px}
  .placeholder-panel h2{font-size:1.8rem}
  .footer-grid{grid-template-columns:1fr;gap:26px}
  .footer-brand{grid-column:auto}
  .site-footer{padding-top:32px}
  .footer-bottom{gap:14px;padding-bottom:24px}
  .hours-table{font-size:16px}
  html{scroll-padding-top:90px}
}
@media(max-width:360px){
  .brand-row{gap:8px}
  .cr-enhanced .menu-toggle{width:40px;padding-inline:8px}
  .menu-toggle .menu-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}

/* Selected panorama: keep the shop, entire van and sunset in view on smaller screens. */
@media(max-width:800px){.home-hero .hero-image img{aspect-ratio:2.8/1;object-position:40% center}}
@media(max-width:540px){.home-hero .hero-image img{aspect-ratio:1.8/1;object-position:40% center}}

/* A single editable headline over the sky; phone content remains below the photo. */
@media(min-width:621px){
  .home-hero>.wp-block-group.hero-grid{position:relative}
  .home-hero .hero-image::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(9,27,43,.48) 0%,rgba(9,27,43,.20) 24%,rgba(9,27,43,0) 52%)}
  .home-hero .hero-copy{position:static;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:40px;row-gap:8px;align-items:center;padding-block:26px 30px}
  .home-hero .hero-copy h1{position:absolute;z-index:2;top:clamp(12px,1.4vw,24px);left:50%;transform:translateX(-50%);width:calc(100% - 64px);max-width:1200px;margin:0!important;color:#fff;text-align:center;font-size:clamp(1.75rem,3.3vw,3.5rem);line-height:1.15;letter-spacing:-.01em;text-shadow:0 2px 3px rgba(5,20,35,.65),0 5px 16px rgba(5,20,35,.4)}
  .home-hero .hero-copy .eyebrow{grid-column:1;grid-row:1;margin:0!important}
  .home-hero .hero-copy .lead{grid-column:1;grid-row:2;max-width:740px;margin:0!important}
  .home-hero .hero-copy .wp-block-buttons{grid-column:2;grid-row:1/3;align-self:center;justify-content:flex-end;flex-wrap:wrap;max-width:410px}
}
@media(min-width:621px) and (max-width:1050px){
  .home-hero .hero-copy{grid-template-columns:1fr;row-gap:12px}
  .home-hero .hero-copy .wp-block-buttons{grid-column:1;grid-row:3;justify-content:flex-start;max-width:none;margin-top:4px!important}
}

/* Keep the established wordmark while all interface/content text uses Roboto. */
.brand-wordmark{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
.header-phone,.contact-card .large-phone,.footer-grid h2,.eyebrow,.steps-grid .info-card:before,.status-note{font-weight:600}
.header-login,.primary-menu a,.submenu-toggle,.nav-more-toggle,.wp-block-button__link,.button,.text-link,.more-help a,.footer-grid a:not(.brand),.cr-enhanced .menu-toggle{font-weight:500}
.wp-block-details summary{font-weight:600}
body .cr-google-label,body .cr-review-card h3,body .cr-dialog-content h2{font-weight:600!important;letter-spacing:-.01em!important}
body .cr-google-link,body .cr-review-controls button,body .cr-review-pagination a{font-weight:500}

body>aside[aria-label='Private preview']{font-family:'Roboto',Arial,sans-serif!important}
body .cr-review-summary strong,body .cr-review-avatar,body .cr-review-response strong{font-weight:600}

/* Fade the address and collapse its reserved height together, without clipping the text. */
.header-contact>span{--contact-fade:clamp(0,calc(1 - 5 * var(--header-progress)),1);opacity:var(--contact-fade);height:calc(20px * var(--contact-fade));position:relative;overflow:visible}
.header-login{height:calc(36px - 8px * var(--header-progress));min-height:0;padding-block:0;padding-inline:calc(12px - 3px * var(--header-progress));font-size:calc(14px - 2px * var(--header-progress));gap:calc(7px - 2px * var(--header-progress));border-radius:calc(7px - var(--header-progress) * 1px)}
.header-login svg{width:calc(20px - 4px * var(--header-progress));height:calc(20px - 4px * var(--header-progress))}
/* A light active/hover pill with breathing room above and below. */
.primary-menu>li{min-height:38px;margin-block:5px;border-radius:6px;transition:background-color .12s ease}
.primary-menu>li>a{min-height:38px;padding:8px 10px;border-bottom:0}
.primary-menu>li>.submenu-toggle{min-height:38px;height:38px;padding-block:7px;margin-right:0}
.primary-menu>li:hover{background:#f2f6f8}
.primary-menu>.current-menu-item,.primary-menu>.current-menu-ancestor{background:#eaf3f6}
.primary-menu>.current-menu-item:hover,.primary-menu>.current-menu-ancestor:hover{background:#e2eef3}
.primary-menu>li>a:hover,.primary-menu>.current-menu-item>a,.primary-menu>.current-menu-ancestor>a{border-bottom:0}
@media(min-width:621px){.primary-menu{gap:0 8px}}
@media(max-width:620px){
  .header-login{position:relative;height:calc(40px - 8px * var(--header-progress));width:calc(40px - 8px * var(--header-progress));min-height:0;padding:0}
  .header-login::before{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;transform:translate(-50%,-50%)}
}

/* Keep desktop navigation in step with the logo's existing scroll progress. */
@media(min-width:1120px) and (min-height:601px) and (hover:hover) and (pointer:fine){
  .site-header .nav-inner{min-height:calc(49px - 21px * var(--header-progress))}
  .site-header .primary-menu>li{min-height:calc(38px - 11px * var(--header-progress));margin-block:calc(5px - 4.5px * var(--header-progress))}
  .site-header .primary-menu>li>a{min-height:calc(38px - 11px * var(--header-progress));padding-block:calc(8px - 7px * var(--header-progress));font-size:calc(15px - 1.5px * var(--header-progress))}
  .site-header .primary-menu>li>.submenu-toggle{min-height:calc(38px - 11px * var(--header-progress));height:calc(38px - 11px * var(--header-progress));padding-block:calc(7px - 6px * var(--header-progress))}
  .site-header .nav-more{min-height:calc(48px - 20px * var(--header-progress))}
  .site-header .nav-more-toggle{min-height:calc(44px - 17px * var(--header-progress));padding-block:calc(10px - 9px * var(--header-progress));font-size:calc(15px - 1.5px * var(--header-progress))}
  /* Shorten only the coloured background; preserve bar and click geometry. */
  .site-header .primary-menu>li,
  .site-header .primary-menu>li>.submenu-toggle,
  .site-header .nav-more-toggle{box-shadow:inset 0 calc(2px * var(--header-progress)) 0 #fff,inset 0 calc(-2px * var(--header-progress)) 0 #fff}
}
/* Collapse before tablet navigation wraps; short landscape keeps content in view. */
@media(max-width:1119px),(max-height:600px) and (orientation:landscape){
  .cr-enhanced .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:40px;background:#fff;border:1px solid #c6d6df;border-radius:7px;padding:7px 10px;font-size:15px;color:var(--navy);font-weight:650;cursor:pointer}
  .menu-lines,.menu-lines:before,.menu-lines:after{display:block;width:17px;height:2px;background:currentColor;position:relative}
  .menu-lines:before,.menu-lines:after{content:'';position:absolute;left:0}
  .menu-lines:before{top:-5px}.menu-lines:after{top:5px}
  .cr-enhanced .site-nav{display:none}
  .cr-enhanced .menu-open .site-nav{display:block;max-height:calc(100dvh - 4px - var(--brand-height) + var(--brand-height-difference) * var(--header-progress));overflow-y:auto;overscroll-behavior:contain}
  .nav-inner{display:block;padding-block:8px 16px}
  .primary-menu{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;align-items:start}
  .primary-menu>li{display:flex;flex-wrap:wrap;align-items:center}
  .primary-menu>li>a{font-size:15px;min-height:44px;white-space:normal}
  .primary-menu>.menu-item-has-children{display:grid;grid-template-columns:auto 32px;justify-content:start}
  .cr-enhanced .sub-menu,.cr-enhanced .utility-menu{position:static;grid-column:1/-1;min-width:0;width:100%;border:0;border-radius:7px;box-shadow:none;background:var(--ice);padding:5px;margin-bottom:8px}
  .sub-menu a,.utility-menu a{font-size:14px;white-space:normal;padding:11px 9px}
  .nav-more{display:block;border-top:1px solid var(--line);margin-top:8px;padding-top:5px}
  .nav-more-toggle{padding-inline:0;min-height:44px}
  .cr-enhanced .utility-menu{max-width:100%;margin-bottom:0}
  .primary-menu>li>.submenu-toggle{margin-right:0;min-height:44px;height:44px}
  .cr-enhanced .menu-toggle{flex-shrink:0;min-height:44px;font-weight:500}
  .primary-menu>li{margin-block:2px}
}
@media(max-height:600px) and (orientation:landscape){
  .site-header{--brand-height:56px;--brand-height-difference:0px;--symbol-height:36px;--symbol-shrink:0px;--wordmark-size:22px;--wordmark-shrink:0px;--tagline-size:11px;--tagline-shrink:0px}
  .site-header .brand{gap:8px}
  .site-header .brand-wordmark>span{margin-top:2px}
  .brand-row{min-height:56px;gap:12px}
  .header-contact>span{display:none}
  .header-phone{font-size:17px}
  .header-login{height:40px;padding-inline:10px;font-size:14px;gap:7px}
  .header-login svg{width:20px;height:20px}
  html{scroll-padding-top:72px}
}
@media(max-width:620px) and (max-height:600px) and (orientation:landscape){
  .brand-row{gap:8px}
  .header-login{width:40px;padding:0}
}
@media(max-width:360px){
  .cr-enhanced .menu-toggle{width:40px;padding-inline:8px}
}
@media(min-width:621px) and (max-width:800px){
  .brand-row{gap:12px}
  .header-contact>span{display:none}
  .header-login{width:40px;padding-inline:0}
  .header-login>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
}
/* Keep the linked shop address within the shrinking header label. */
.header-address{color:inherit;text-decoration:none}
.header-address:hover,.header-address:focus-visible{text-decoration:underline;text-underline-offset:3px}

/* Six homepage services: three desktop, two tablet, one phone. */
@media(max-width:800px){
  .home-service-grid>.service-card:last-child{grid-column:auto;display:flex}
  .home-service-grid>.service-card:last-child img{height:180px;min-height:0}
}
@media(max-width:620px){
  .home-service-grid{grid-template-columns:1fr}
  .home-service-grid>.service-card:last-child img,.home-service-grid .service-card img{height:210px;min-height:0}
}

/* Mobile customer actions and single-column service accordion. */
.header-mobile-call,.mobile-login-item{display:none!important}
.site-footer{background:#fff}
@media(max-width:1119px),(max-height:600px) and (orientation:landscape){
 .primary-menu{grid-template-columns:minmax(0,1fr);gap:0}
 .primary-menu>.menu-item-has-children{grid-template-columns:minmax(0,1fr) 44px;justify-content:stretch;width:100%}
 .primary-menu>.menu-item-has-children>.submenu-toggle{width:44px;justify-content:center}
 .primary-menu>li{width:100%}
 .primary-menu>li.mobile-login-item{display:flex!important}
}
@media(max-width:620px){
 .header-login{display:none!important}
 .header-mobile-call{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px;margin-left:auto;padding:8px 10px;border:1px solid #c6d6df;border-radius:7px;color:var(--navy);font-size:14px;font-weight:600;text-decoration:none;flex-shrink:0}
 .brand-row{gap:8px}
 .cr-enhanced .menu-toggle{width:auto!important;min-width:64px;padding-inline:8px;gap:6px;font-size:14px}
 .menu-toggle .menu-label{position:static!important;width:auto!important;height:auto!important;margin:0!important;overflow:visible!important;clip:auto!important;white-space:normal}
 .brand-wordmark strong{font-size:min(24px,calc(28px - 7px * var(--header-progress)))}
 .brand-wordmark>span{font-size:10px}
 .brand-symbol{max-width:34px}
 .footer-brand{order:0}.footer-call-block{order:1}.footer-address-block{order:2}
}

/* Phone/address remain a centred flex group as the address fades and its height collapses. */

/* A restrained downward shadow lifts the shared header above page content. */
.site-header{box-shadow:0 4px 8px -4px rgba(2,44,93,.2)}

/* Keep Call and a full 44px Menu target within the narrowest phone headers. */
@media(max-width:360px){
 .cr-enhanced .site-header .menu-toggle{width:44px!important;min-width:44px;height:44px;gap:0}
 .site-header .menu-toggle .menu-label{position:absolute!important;width:1px!important;height:1px!important;padding:0;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap;border:0}
}