@import url('https://fonts.googleapis.com/css2?family=Spline+Sans:wght@700&display=swap');
/* Jiroum Auto: clear routes into the workshop's real services. */
@font-face { font-family: "DM Sans Local"; src: url("fonts/DMSans-Regular.ttf") format("truetype"); font-weight: 400; font-display: swap; }
@font-face { font-family: "DM Sans Local"; src: url("fonts/DMSans-Bold.ttf") format("truetype"); font-weight: 700 900; font-display: swap; }
:root { --ink: #182531; --blue: #164775; --blue-deep: #112f4b; --red: #d92d38; --paper: #fff; --mist: #eef3f5; --line: #d7e0e5; --muted: #4d5e6d; --wrap: 1200px; }
body { color: var(--ink); font-family: "DM Sans Local", "Segoe UI", Arial, sans-serif; line-height: 1.62; }
h1, h2, h3, h4 { color: inherit; }
.site-header-v2 { position: sticky; top: 0; z-index: 200; color: var(--ink); background: #fff; border-bottom: 1px solid #e8edef; box-shadow: 0 4px 16px rgba(17,47,75,.06); }
.admin-bar .site-header-v2 { top: 32px; }
html { scroll-padding-top: 96px; }
.site-header-v2::before { display: none; }
.utility-bar { color: #d8e4ed; background: var(--blue-deep); font-size: .82rem; }
.utility-inner { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 36px; }
.utility-inner a { color: #fff; text-decoration: none; }
.utility-inner a:hover { text-decoration: underline; }
.utility-inner span[aria-hidden] { margin: 0 5px; color: #93b3cc; }
.navigation-inner { display: flex; align-items: center; gap: 26px; min-height: 76px; }
.navigation-inner .brand { display: flex; align-items: center; flex: none; padding: 3px 9px; border-radius: 5px; background: var(--blue-deep); }
.navigation-inner .brand img { display: block; width: 174px; height: auto; }
.nav-icon-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.site-nav { display: flex; align-items: center; gap: 2px; margin-left: auto; padding: 4px; border: 1px solid #e6eef1; border-radius: 12px; background: #f6f9fa; }
.site-nav a { display: inline-flex; align-items: center; gap: 6px; min-height: 39px; padding: 8px 10px; border-radius: 8px; color: var(--ink); font-size: .86rem; font-weight: 700; text-decoration: none; white-space: nowrap; transition: background-color .15s ease, color .15s ease; }
.nav-divider { flex: none; width: 1px; height: 23px; margin-inline: 5px; background: #cfdee4; }
.nav-icon { display: inline-block; flex: none; width: 17px; height: 17px; fill: none; stroke: #2d7790; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.site-nav a:hover, .site-nav a[aria-current] { color: var(--blue); background: #e6f1f5; box-shadow: none; }
.site-nav a:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.site-nav a[aria-current] .nav-icon { stroke: var(--red); }
.header-actions { display: flex; align-items: center; flex: none; }
.header-call { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-width: 158px; min-height: 47px; padding: 5px 13px; border: 1px solid #a8b9b5; border-radius: 8px; color: #153145; background: #fff; font-weight: 700; line-height: 1.1; text-decoration: none; white-space: nowrap; transition: border-color .15s ease, background-color .15s ease; }
.header-call:hover { color: #153145; border-color: #168052; background: #f0faf5; }
.header-call:focus-visible { outline: 3px solid var(--blue); outline-offset: 4px; }
.header-call-icon { flex: none; width: 19px; height: 19px; color: #168052; transform-origin: 50% 45%; animation: jiroum-phone-ring 5s ease-in-out infinite; }
@keyframes jiroum-phone-ring { 0%,85%,100% { transform: rotate(0); } 88%,94% { transform: rotate(-15deg); } 91%,97% { transform: rotate(15deg); } }
@media (prefers-reduced-motion: reduce) { .header-call-icon { animation: none; } }
@media (max-width: 782px) { .admin-bar .site-header-v2 { top: 46px; } }
.header-call-copy { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; text-align: left; }
.header-call-copy strong { color: #168052; font-size: .69rem; font-weight: 800; letter-spacing: .035em; text-transform: uppercase; }
.header-call-copy small { color: #203342; font-size: .76rem; font-weight: 700; letter-spacing: .01em; }
.header-call-short { display: none; }
.search-reveal { position: relative; }
.search-reveal summary { padding: 8px 2px; color: var(--blue); cursor: pointer; font-size: .86rem; font-weight: 700; list-style: none; }
.search-reveal summary::-webkit-details-marker { display: none; }
.search-reveal summary:hover { text-decoration: underline; }
.search-panel { position: absolute; z-index: 40; top: calc(100% + 27px); right: -50px; width: min(420px, 90vw); padding: 18px; background: #fff; border: 1px solid var(--line); box-shadow: 0 15px 38px rgba(13,42,66,.15); }
.site-search { display: flex; align-items: stretch; gap: 0; width: 100%; }
.site-search input { min-width: 0; flex: 1; padding: 12px 14px; border: 1px solid #a6b9c7; border-radius: 0; background: #fff; color: var(--ink); font-size: .91rem; }
.site-search input::placeholder { color: #53687a; opacity: 1; }
.site-search button { padding: 10px 16px; border: 1px solid var(--red); border-radius: 0; color: #fff; background: var(--red); font-size: .86rem; font-weight: 700; cursor: pointer; }
.site-search button:hover { border-color: #aa1c27; background: #aa1c27; }
.mobile-nav-v2 { display: none; }

.hero-v2 { padding: 38px 0 0; background: #f7f9fa; overflow: hidden; }
.hero-v2-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); align-items: center; gap: 50px; min-height: 505px; }
.hero-v2-copy { padding: 38px 0 70px; }
.place-line { display: inline-block; margin: 0 0 26px; padding-left: 17px; border-left: 4px solid var(--red); color: var(--blue); font-size: .94rem; font-weight: 700; }
.hero-v2 h1 { max-width: 690px; margin: 0 0 22px; font-family: "Arial Narrow", "DM Sans Local", sans-serif; font-size: clamp(3.15rem, 5vw, 5.25rem); font-weight: 900; line-height: 1.01; letter-spacing: -.045em; text-wrap: balance; }
.hero-v2-lead { max-width: 550px; margin: 0 0 28px; color: var(--muted); font-size: 1.12rem; line-height: 1.55; }
.hero-v2 .hero-actions { gap: 10px; }
.hero-v2 .button { min-height: 52px; }
.button-light { color: var(--blue-deep); border-color: #839aaa; background: transparent; }
.button-light:hover { color: #fff; border-color: var(--blue-deep); background: var(--blue-deep); }
.hero-location { margin-top: 33px; color: var(--muted); font-size: .86rem; }
.hero-location span { margin-right: 4px; color: var(--red); font-size: 1.25rem; line-height: 0; }
.hero-v2-media { position: relative; align-self: stretch; min-height: 440px; margin-right: calc((min(100vw - 40px, var(--wrap)) - 100vw) / 2); border-left: 8px solid var(--red); background: var(--blue-deep); }
.hero-v2-media img { width: 100%; height: 100%; min-height: 440px; object-fit: cover; object-position: 49% center; display: block; }
.photo-caption { position: absolute; right: 0; bottom: 0; max-width: 330px; padding: 11px 19px; color: #fff; background: rgba(17,47,75,.93); font-size: .85rem; font-weight: 700; }

/* Home hero: an editorial workshop gallery, with two opposite photo streams. */
.hero-showcase { padding: 16px clamp(14px, 1.3vw, 28px) 0; background: #f7f9fa; }
.hero-showcase-shell { width: 100%; margin: 0 auto; overflow: hidden; border-radius: 28px; color: #fff; background: linear-gradient(122deg, #102b46 0%, #113e65 65%, #235c80 100%); box-shadow: 0 22px 65px rgba(17,47,75,.13); }
.hero-showcase-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); min-height: 575px; }
.hero-showcase-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 68px clamp(35px, 5.1vw, 88px); }
.hero-eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 22px; color: #c5e4f6; font-size: .83rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.hero-eyebrow span { width: 8px; height: 8px; border-radius: 50%; background: #69d6a6; box-shadow: 0 0 0 5px rgba(105,214,166,.13); }
.hero-showcase h1 { max-width: 835px; margin: 0 0 23px; color: #fff; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2.7rem, 2.5vw, 3rem); font-weight: 700; line-height: 1.2; letter-spacing: -.01em; text-wrap: balance; }
.hero-showcase h1 em { color: #8fd6f6; font-style: normal; }
.hero-showcase-lead { max-width: 58ch; margin: 0 0 24px; color: #d5e5ef; font-size: 1.06rem; line-height: 1.62; }
.hero-benefits { display: grid; gap: 10px; margin: 0 0 28px; padding: 0; list-style: none; }
.hero-benefits li { position: relative; padding-left: 31px; color: #f5f9fb; font-size: .95rem; line-height: 1.45; }
.hero-benefits li::before { content: "✓"; position: absolute; left: 0; top: 1px; display: grid; place-items: center; width: 21px; height: 21px; border-radius: 50%; color: #123a58; background: #77deaf; font-size: .78rem; font-weight: 900; }
.hero-showcase-actions { display: flex; flex-wrap: wrap; gap: 11px; }
.hero-showcase-actions .button { display: inline-flex; align-items: center; justify-content: center; gap: 13px; min-height: 54px; padding: 12px 22px; border-radius: 8px; font-size: .94rem; font-weight: 700; text-decoration: none; }
.hero-showcase-actions .button-red { color: #fff; border-color: #d92d38; background: #d92d38; }
.hero-showcase-actions .button-red:hover { border-color: #b21f2b; background: #b21f2b; }
.hero-showcase-actions .button-call { color: #fff; border: 1px solid #278b5d; background: #23855a; }
.hero-showcase-actions .button-call:hover { color: #fff; border-color: #36ad75; background: #1c6f4b; }
.hero-address { margin: 25px 0 0; color: #a9c4d5; font-size: .83rem; }
.hero-photo-wall { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; height: 575px; padding: 0 24px 0 3px; overflow: hidden; mask-image: linear-gradient(to bottom, transparent 0, #000 8%, #000 88%, transparent 100%); }
.photo-lane { overflow: hidden; }
.photo-lane-down { padding-top: 54px; }
.photo-track { display: flex; flex-direction: column; width: 100%; animation: photo-stream 31s linear infinite; will-change: transform; }
.photo-lane-down .photo-track { animation-direction: reverse; animation-duration: 37s; }
.photo-sequence { display: grid; gap: 13px; padding-bottom: 13px; }
.hero-photo-card { position: relative; height: 188px; margin: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 15px; background: #315f7c; box-shadow: 0 13px 24px rgba(1,19,34,.22); }
.hero-photo-card img { display: block; width: 100%; height: 100%; object-fit: cover; }
.hero-photo-card::after { content: ""; position: absolute; inset: 52% 0 0; background: linear-gradient(transparent, rgba(6,27,44,.72)); pointer-events: none; }
.hero-photo-card figcaption { position: absolute; z-index: 1; bottom: 11px; left: 13px; color: #fff; font-size: .78rem; font-weight: 700; }
.hero-photo-wall:hover .photo-track, .hero-photo-wall:focus-within .photo-track { animation-play-state: paused; }
@keyframes photo-stream { from { transform: translateY(0); } to { transform: translateY(-50%); } }
.hero-proof { display: grid; grid-template-columns: 1fr .8fr 1.25fr; gap: 0; margin: 0 24px 23px; border-radius: 15px; color: #16344c; background: #fff; box-shadow: 0 9px 23px rgba(8,32,49,.15); }
.proof-google, .proof-item { display: flex; align-items: center; gap: 15px; min-width: 0; padding: 18px 23px; color: inherit; text-decoration: none; }
.proof-google:hover { color: var(--blue); background: #f2f8fb; }
.proof-google, .proof-item:not(:last-child) { border-right: 1px solid #dbe5eb; }
.proof-google strong, .proof-item strong { display: block; font-size: .92rem; line-height: 1.25; }
.proof-google small, .proof-item small { display: block; margin-top: 3px; color: #5b6e7b; font-size: .74rem; line-height: 1.35; }
.proof-google-g { flex: none; display: grid; place-items: center; width: 37px; height: 37px; border-radius: 50%; color: #4285f4; background: #eef4ff; font-family: Arial,sans-serif; font-size: 1.45rem; font-weight: 700; }
.proof-stars { color: #eba928; letter-spacing: .07em; }
.proof-icon { flex: none; display: grid; place-items: center; width: 37px; height: 37px; border-radius: 50%; color: var(--blue); background: #e8f2f8; font-size: 1.3rem; }

.garage-intro { padding: 96px 0 100px; background: #fff; }
.garage-intro-grid { display: grid; grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr); align-items: center; gap: clamp(42px, 6vw, 94px); }
.garage-intro-photo { position: relative; align-self: stretch; min-height: 470px; margin: 0; overflow: hidden; border-radius: 19px; background: #d6e2e9; }
.garage-intro-photo img { display: block; width: 100%; height: 100%; min-height: 470px; object-fit: cover; object-position: 54% center; }
.garage-intro-photo::after { content: ""; position: absolute; inset: 65% 0 0; background: linear-gradient(transparent, rgba(9,36,59,.7)); pointer-events: none; }
.garage-intro-photo figcaption { position: absolute; z-index: 1; left: 23px; bottom: 18px; color: #fff; font-size: .9rem; font-weight: 700; }
.garage-intro-photo figcaption span { color: #8fd6f6; }
.garage-intro-eyebrow { margin: 0 0 15px; color: var(--blue); font-size: .79rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.garage-intro h2 { max-width: 680px; margin: 0 0 20px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2.1rem, 3vw, 2.8rem); font-weight: 700; line-height: 1.16; letter-spacing: -.025em; text-wrap: balance; }
.garage-intro-lead { max-width: 58ch; margin: 0 0 20px; color: #264f6a; font-size: 1.11rem; font-weight: 700; line-height: 1.55; }
.garage-intro-copy > p:not(.garage-intro-eyebrow, .garage-intro-lead) { max-width: 65ch; margin: 0 0 16px; color: var(--muted); font-size: .96rem; line-height: 1.72; }
.garage-intro-copy a { color: var(--blue); text-underline-offset: 3px; }
.garage-intro-copy a:hover { color: var(--red); }
.garage-intro-links { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-top: 28px; }
.garage-intro-links a { display: inline-flex; align-items: center; gap: 12px; font-size: .9rem; font-weight: 700; text-decoration: none; }
.garage-intro-links a:first-child { min-height: 46px; padding: 10px 17px; border: 1px solid var(--blue); border-radius: 6px; color: #fff; background: var(--blue); }
.garage-intro-links a:first-child:hover { border-color: var(--blue-deep); color: #fff; background: var(--blue-deep); }

.garage-process { padding: 0 clamp(14px, 1.3vw, 28px) 24px; background: #fff; }
.diagnostic-offer { padding: 78px 24px 90px; background: #fff; }
.diagnostic-offer-inner { max-width: 1220px; margin: 0 auto; }
.diagnostic-offer-heading { max-width: 730px; margin: 0 auto 62px; text-align: center; }
.diagnostic-offer-heading h2 { margin: 0 0 20px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.2; letter-spacing: -.025em; text-wrap: balance; }
.diagnostic-offer-heading h2 span { box-shadow: inset 0 -.25em #c7dfee; }
.diagnostic-offer-heading h2 sup { margin-left: 2px; font-size: .48em; line-height: 0; vertical-align: super; }
.diagnostic-offer-heading h2 sup a { color: var(--red); text-decoration: none; }
.diagnostic-offer-heading h2 sup a:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
.diagnostic-offer-heading p { margin: 0 auto; max-width: 65ch; color: var(--muted); font-size: 1rem; line-height: 1.7; }
.diagnostic-offer-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); align-items: center; gap: clamp(48px, 7vw, 112px); }
.diagnostic-offer-points { display: grid; gap: 39px; }
.diagnostic-offer-point { display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 20px; align-items: start; }
.diagnostic-offer-icon { display: grid; place-items: center; width: 58px; height: 58px; border: 2px solid #c7dfee; border-radius: 16px; color: var(--blue); background: #f0f7fb; }
.diagnostic-offer-icon svg { display: block; width: 31px; height: 31px; }
.diagnostic-offer-point h3 { margin: 0 0 7px; color: #142f46; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(1.2rem, 1.5vw, 1.38rem); line-height: 1.3; }
.diagnostic-offer-point p { max-width: 53ch; margin: 0; color: var(--muted); font-size: .96rem; line-height: 1.65; }
.diagnostic-offer-photo { position: relative; height: 475px; margin: 0; overflow: hidden; border: 5px solid var(--blue); border-radius: 18px; background: #d9e7ef; box-shadow: 17px 17px 0 #dcebf4; }
.diagnostic-offer-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 61% center; }
.diagnostic-offer-photo::after { content: ""; position: absolute; inset: 58% 0 0; background: linear-gradient(transparent, rgba(9,36,59,.72)); pointer-events: none; }
.diagnostic-offer-photo figcaption { position: absolute; z-index: 1; right: 20px; bottom: 18px; left: 20px; color: #fff; font-size: .87rem; font-weight: 700; }
.diagnostic-offer-cta { display: flex; align-items: center; justify-content: center; gap: 14px; width: fit-content; min-height: 52px; margin: 56px auto 0; padding: 11px 23px; border-radius: 7px; font-size: .94rem; text-decoration: none; }
@media (max-width: 800px) { .diagnostic-offer { padding: 65px 22px 75px; } .diagnostic-offer-heading { margin-bottom: 44px; } .diagnostic-offer-grid { grid-template-columns: 1fr; gap: 45px; } .diagnostic-offer-photo { max-width: 640px; width: 100%; height: 400px; margin: 0 auto; } }
@media (max-width: 480px) { .diagnostic-offer { padding: 54px 20px 65px; } .diagnostic-offer-heading { margin-bottom: 38px; } .diagnostic-offer-heading h2 { font-size: 1.8rem; } .diagnostic-offer-points { gap: 27px; } .diagnostic-offer-point { grid-template-columns: 46px minmax(0, 1fr); gap: 13px; } .diagnostic-offer-icon { width: 46px; height: 46px; border-radius: 12px; } .diagnostic-offer-icon svg { width: 26px; height: 26px; } .diagnostic-offer-photo { height: 330px; box-shadow: 8px 8px 0 #dcebf4; } .diagnostic-offer-cta { width: 100%; margin-top: 46px; } }
.garage-process-shell { width: 100%; margin: 0 auto; padding: 62px clamp(22px, 5vw, 88px) 43px; border-radius: 24px; background: linear-gradient(135deg, #edf5fa 0%, #e7f1f7 52%, #dcebf4 100%); text-align: center; }
.garage-process-eyebrow { margin: 0 0 14px; color: var(--blue); font-size: .77rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.garage-process h2 { max-width: 930px; margin: 0 auto 35px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2rem, 3vw, 2.75rem); font-weight: 700; line-height: 1.22; letter-spacing: -.025em; text-wrap: balance; }
.garage-process h2 span { box-shadow: inset 0 -.26em #b9d9eb; }
.garage-process-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin: 0; padding: 38px 25px 43px; border: 1px solid #d9e8f0; border-radius: 17px; background: #fff; box-shadow: 0 17px 40px rgba(18,52,79,.06); list-style: none; counter-reset: none; text-align: left; }
.garage-process-steps li { position: relative; min-width: 0; padding: 0 19px; }
.garage-process-steps li:not(:last-child)::after { content: ""; position: absolute; left: calc(50% + 23px); right: calc(-50% + 25px); top: 22px; height: 2px; background: #bdd3e2; }
.process-number { position: relative; z-index: 1; display: grid; place-items: center; width: 46px; height: 46px; margin-bottom: 21px; border-radius: 13px; color: #fff; background: var(--blue); font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: 1.04rem; font-weight: 700; }
.garage-process-steps li:last-child .process-number { background: var(--red); }
.garage-process-steps h3 { margin: 0 0 8px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: 1.06rem; line-height: 1.28; }
.garage-process-steps p { max-width: 25ch; margin: 0; color: var(--muted); font-size: .86rem; line-height: 1.55; }
.garage-process-cta { display: inline-flex; align-items: center; justify-content: center; gap: 17px; min-height: 52px; margin-top: 31px; padding: 11px 22px; border-radius: 7px; font-size: .92rem; text-decoration: none; }
.garage-process-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 820px; margin: 35px auto 0; }
.garage-process-facts > div { display: flex; flex-direction: column; align-items: center; padding: 0 16px; }
.garage-process-facts > div:not(:last-child) { border-right: 1px solid #bfd4e2; }
.process-fact-icon { display: grid; place-items: center; width: 32px; height: 32px; margin-bottom: 7px; border: 1px solid #bdd4e3; border-radius: 50%; color: var(--blue); background: #fff; font-size: 1rem; }
.garage-process-facts strong { color: #12344f; font-size: .89rem; }
.garage-process-facts small { margin-top: 2px; color: var(--muted); font-size: .77rem; line-height: 1.4; }

.finder-section { color: #fff; background: var(--blue-deep); }
.finder-grid { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 60px; padding-block: 38px; }
.finder-intro h2 { margin: 0 0 7px; font-family: "Arial Narrow", "DM Sans Local", sans-serif; font-size: clamp(1.8rem, 2.6vw, 2.55rem); line-height: 1.08; letter-spacing: -.025em; }
.finder-intro p { margin: 0; color: #d2e0eb; font-size: .9rem; }
.finder-section .site-search input { min-height: 54px; border-color: #fff; }
.finder-section .site-search button { padding-inline: 22px; }
.popular-links { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 11px; font-size: .83rem; }
.popular-links span { color: #b4c9d8; }
.popular-links a { color: #fff; text-underline-offset: 3px; }

.services-showcase { padding: 0 clamp(14px, 1.3vw, 28px) 28px; background: #fff; }
.services-showcase-shell { overflow: hidden; border-radius: 24px; background: #e7f6f8; }
.services-showcase-inner { --services-offset: clamp(28px, 21vw, 450px); padding: 67px 0 45px; }
.services-showcase-heading { max-width: 900px; margin: 0 28px 31px var(--services-offset); }
.services-showcase-heading > p:first-child { margin: 0 0 12px; color: var(--blue); font-size: .77rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.services-showcase-heading h2 { margin: 0 0 19px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.2; letter-spacing: -.025em; text-wrap: balance; }
.services-showcase-heading h2 span { box-shadow: inset 0 -.25em #b0dfe9; }
.services-showcase-heading > p:last-child { max-width: 66ch; margin: 0; color: #40596b; font-size: 1rem; line-height: 1.6; }
.services-showcase-track { display: flex; gap: 15px; margin-left: var(--services-offset); padding: 2px 28px 12px 2px; overflow-x: auto; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-color: #add3da transparent; scrollbar-width: thin; }
.services-showcase-card, .services-showcase-intro-card { flex: 0 0 clamp(290px, 20vw, 355px); height: 420px; scroll-snap-align: start; }
.services-showcase-card { position: relative; isolation: isolate; overflow: hidden; border: 4px solid #82d2d9; border-radius: 16px; color: #fff; background: var(--blue-deep); text-decoration: none; }
.services-showcase-intro-card { display: flex; flex-direction: column; justify-content: space-between; margin: 0; padding: 28px; border: 4px solid var(--blue); border-radius: 16px; color: #fff; background: linear-gradient(150deg, #1e567d, #102e49); }
.services-showcase-intro-mark { font-size: 2rem; line-height: 1; color: #9bd8e6; }
.services-showcase-intro-card p { margin: 0 0 15px; color: #b9d9e8; font-size: .82rem; font-weight: 700; }
.services-showcase-intro-card h3 { margin: 0 0 19px; color: #fff; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(1.55rem, 2vw, 2rem); line-height: 1.2; }
.services-showcase-intro-card div > span { display: block; max-width: 28ch; color: #e4f0f5; font-size: .9rem; line-height: 1.5; }
.services-showcase-intro-cta { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 43px; margin-top: 20px; padding: 9px 13px; border-radius: 7px; color: #fff; background: var(--red); font-size: .85rem; font-weight: 700; line-height: 1.2; text-decoration: none; }
.services-showcase-intro-cta:hover { color: #fff; background: #b51e2a; }
.services-showcase-intro-cta:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.services-showcase-card img { display: block; width: 100%; height: 100%; object-fit: cover; }
.services-showcase-card-tow { background: linear-gradient(145deg, #315d7b, #11334f); }
.services-showcase-card-tow img { width: calc(100% - 30px); height: 64%; margin: 0 auto; object-fit: contain; }
.services-showcase-card::after { content: ""; position: absolute; z-index: 0; inset: 30% 0 0; background: linear-gradient(transparent 0%, rgba(4,22,38,.74) 48%, rgba(4,22,38,.95) 100%); pointer-events: none; }
.services-showcase-card-copy { position: absolute; z-index: 1; right: 19px; bottom: 22px; left: 19px; display: grid; gap: 9px; }
.services-showcase-card-copy strong { display: flex; align-items: center; justify-content: space-between; gap: 9px; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: 1.18rem; line-height: 1.3; }
.services-showcase-card-copy strong span { flex: none; font-size: 1.2rem; }
.services-showcase-card-copy > span { display: block; max-width: 34ch; color: #edf6f8; font-size: .88rem; line-height: 1.5; }
.services-showcase-card:hover, .services-showcase-card:focus-visible { border-color: var(--blue); color: #fff; }
.services-showcase-card:focus-visible, .services-showcase-controls button:focus-visible, .services-showcase-track:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
.services-showcase-controls { display: flex; justify-content: flex-end; gap: 8px; margin: 8px clamp(28px, 4vw, 78px) 0 var(--services-offset); }
.services-showcase-controls button { display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 1px solid #9cd0d9; border-radius: 8px; color: #12344f; background: #fff; font-size: 1.24rem; cursor: pointer; }
.services-showcase-controls button:hover { border-color: var(--blue); color: #fff; background: var(--blue); }
.services-showcase-controls button:disabled { opacity: .45; cursor: default; }
@media (max-width: 600px) { .services-showcase { padding: 0 12px 20px; } .services-showcase-shell { border-radius: 17px; } .services-showcase-inner { --services-offset: 17px; padding: 50px 0 35px; } .services-showcase-heading h2 { font-size: 1.8rem; } .services-showcase-track { gap: 12px; } .services-showcase-card, .services-showcase-intro-card { flex-basis: min(77vw, 310px); height: 390px; } .services-showcase-controls { margin-right: 20px; } }

.customer-reviews { padding: 0 clamp(14px, 1.3vw, 28px) 28px; background: #fff; }
.garage-journal { padding: 35px clamp(14px, 1.3vw, 28px) 95px; background: #fff; }
.garage-journal-inner { max-width: 1370px; margin: 0 auto; }
.garage-journal-heading { display: flex; align-items: end; justify-content: space-between; gap: 55px; margin-bottom: 38px; }
.garage-journal-eyebrow { margin: 0 0 12px; color: var(--blue); font-size: .77rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.garage-journal-heading h2 { max-width: 690px; margin: 0; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.2; letter-spacing: -.025em; text-wrap: balance; }
.garage-journal-heading h2 span { box-shadow: inset 0 -.25em #b0dfe9; }
.garage-journal-heading > p { max-width: 440px; margin: 0 0 4px; color: #40596b; font-size: .98rem; line-height: 1.65; }
.garage-journal-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; }
.garage-journal-card { display: flex; flex-direction: column; min-width: 0; min-height: 420px; padding: 30px; border: 1px solid #d8e2e7; border-top: 4px solid var(--blue); border-radius: 14px; background: #fff; box-shadow: 0 12px 34px rgba(17,47,75,.05); }
.garage-journal-card:nth-child(2) { border-top-color: var(--red); }
.garage-journal-card:nth-child(3) { border-top-color: #188552; }
.garage-journal-icon { display: grid; place-items: center; width: 58px; height: 58px; margin-bottom: 21px; border: 1px solid #d0e4ec; border-radius: 15px; color: var(--blue); background: #e9f5f8; }
.garage-journal-icon svg { display: block; width: 39px; height: 39px; }
.garage-journal-card:nth-child(2) .garage-journal-icon { border-color: #f1d6d9; color: #bd2d38; background: #fceff0; }
.garage-journal-card:nth-child(3) .garage-journal-icon { border-color: #d1e9de; color: #17764a; background: #edf8f1; }
.garage-journal-card h3 { margin: 0 0 5px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: 1.4rem; line-height: 1.25; }
.garage-journal-card > p { min-height: 50px; margin: 0 0 22px; color: #586b78; font-size: .9rem; line-height: 1.5; }
.garage-journal-card ul { margin: 0 0 20px; padding: 0; list-style: none; border-top: 1px solid #e3eaed; }
.garage-journal-card li { border-bottom: 1px solid #e3eaed; }
.garage-journal-card li a { display: flex; justify-content: space-between; align-items: start; gap: 15px; padding: 12px 0; color: #193a51; font-size: .93rem; font-weight: 700; line-height: 1.35; text-decoration: none; }
.garage-journal-card li a:hover, .garage-journal-category:hover { color: var(--red); }
.garage-journal-card li span { color: var(--red); }
.garage-journal-category { margin-top: auto; color: var(--blue); font-size: .86rem; font-weight: 700; text-decoration: none; }
.garage-journal-category span { margin-left: 5px; }
.garage-gallery { padding: 0 clamp(14px, 1.3vw, 28px) 95px; background: #fff; }
.garage-gallery-inner { max-width: 1370px; margin: 0 auto; }
.garage-gallery-heading { display: flex; align-items: end; justify-content: space-between; gap: 55px; margin-bottom: 30px; }
.garage-gallery-kicker { margin: 0 0 12px; color: var(--blue); font-size: .77rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.garage-gallery-heading h2 { max-width: 730px; margin: 0; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.2; letter-spacing: -.025em; text-wrap: balance; }
.garage-gallery-heading h2 span { box-shadow: inset 0 -.25em #b0dfe9; }
.garage-gallery-heading > p { max-width: 430px; margin: 0 0 4px; color: #40596b; font-size: .98rem; line-height: 1.65; }
.garage-gallery-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-auto-rows: 205px; gap: 12px; }
.garage-gallery-item { min-width: 0; min-height: 0; margin: 0; }
.garage-gallery-item:first-child, .garage-gallery-item:last-child { grid-column: span 2; }
.garage-gallery-item a { position: relative; display: block; width: 100%; height: 100%; overflow: hidden; border-radius: 13px; background: #dce7eb; }
.garage-gallery-item img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.garage-gallery-item a:hover img { transform: scale(1.035); }
.garage-gallery-item figcaption { position: absolute; right: 0; bottom: 0; left: 0; display: flex; align-items: end; justify-content: space-between; gap: 10px; padding: 34px 16px 15px; color: #fff; background: linear-gradient(transparent, rgba(6, 28, 44, .82)); font-size: .86rem; font-weight: 700; line-height: 1.3; }
.garage-gallery-item figcaption span { flex: none; font-size: 1.1rem; }
.garage-gallery-item a:focus-visible, .garage-gallery-link:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
.garage-gallery-link { display: inline-flex; gap: 12px; margin-top: 24px; color: #165277; font-weight: 700; text-decoration: none; }
.garage-gallery-link:hover { color: var(--red); }
@media (max-width: 1000px) { .garage-gallery-heading { align-items: start; flex-direction: column; gap: 15px; } .garage-gallery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .garage-gallery-item:last-child { grid-column: span 1; } }
@media (max-width: 640px) { .garage-gallery { padding: 0 18px 64px; } .garage-gallery-heading h2 { font-size: 1.8rem; } .garage-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 160px; gap: 9px; } .garage-gallery-item:first-child, .garage-gallery-item:last-child { grid-column: span 2; } .garage-gallery-item figcaption { padding: 28px 10px 10px; font-size: .76rem; } }
@media (prefers-reduced-motion: reduce) { .garage-gallery-item img { transition: none; } .garage-gallery-item a:hover img { transform: none; } }
.editorial-archive, .editorial-single { padding: 42px 0 95px; background: #fff; }
.editorial-breadcrumbs { margin: 0 0 34px; color: #688090; font-size: .8rem; }
.editorial-breadcrumbs a { color: var(--blue); text-decoration: none; }
.editorial-breadcrumbs a:hover { text-decoration: underline; }
.editorial-breadcrumbs span[aria-hidden] { margin: 0 7px; }
.editorial-archive-heading { max-width: 750px; margin-bottom: 34px; }
.editorial-archive-heading > p, .editorial-card-type { margin: 0 0 12px; color: var(--blue); font-size: .75rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.editorial-archive-heading h1, .editorial-single-article h1 { margin: 0 0 15px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2.2rem, 4vw, 3.6rem); line-height: 1.13; letter-spacing: -.03em; }
.editorial-archive-heading > div { max-width: 65ch; color: #526979; font-size: 1.08rem; }
.editorial-categories { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 30px; }
.editorial-categories a { padding: 9px 15px; border: 1px solid #bfd2dd; border-radius: 50px; color: var(--blue); font-size: .87rem; font-weight: 700; text-decoration: none; }
.editorial-categories a:hover, .editorial-categories a[aria-current] { border-color: var(--blue); color: #fff; background: var(--blue); }
.editorial-archive-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; }
.editorial-archive-card { display: flex; flex-direction: column; min-height: 295px; padding: 28px; border: 1px solid #d8e2e7; border-top: 4px solid var(--blue); border-radius: 12px; }
.editorial-archive-card h2 { margin: 0 0 13px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: 1.32rem; line-height: 1.27; }
.editorial-archive-card h2 a { color: inherit; text-decoration: none; }
.editorial-archive-card h2 a:hover { color: var(--red); }
.editorial-archive-card > p:not(.editorial-card-type) { margin: 0 0 20px; color: #526979; font-size: .9rem; }
.editorial-read { margin-top: auto; color: var(--blue); font-size: .88rem; font-weight: 700; text-decoration: none; }
.editorial-read:hover { color: var(--red); }
.editorial-single-article { max-width: 840px; margin: 0 auto; }
.editorial-single-article header { padding-bottom: 31px; margin-bottom: 37px; border-bottom: 1px solid #d8e2e7; }
.editorial-single-lead { margin: 0; color: #526979; font-size: 1.17rem; line-height: 1.6; }
.editorial-single-content { color: #273b49; font-size: 1.04rem; line-height: 1.75; }
.editorial-single-content h2 { margin: 37px 0 10px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: 1.5rem; line-height: 1.3; }
.editorial-single-content p { margin: 0 0 20px; }
.editorial-article-cta { margin-top: 48px; padding: 27px 30px; border-left: 4px solid var(--red); border-radius: 0 12px 12px 0; background: #edf5f8; }
.editorial-article-cta h2 { margin-top: 0; }
.editorial-article-cta p:last-child { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 0; }
.editorial-article-cta a { display: inline-block; padding: 9px 14px; border-radius: 5px; color: #fff; background: var(--blue); font-size: .89rem; font-weight: 700; text-decoration: none; }
.editorial-article-cta a:last-child { background: var(--red); }
.editorial-article-cta a:hover { filter: brightness(.88); }
.editorial-back { margin-top: 30px; font-weight: 700; }
.editorial-back a { color: var(--blue); text-decoration: none; }
.editorial-back a:hover { text-decoration: underline; }
@media (max-width: 800px) { .editorial-archive-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 900px) { .garage-journal-heading { align-items: start; flex-direction: column; gap: 18px; } .garage-journal-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .garage-journal { padding: 30px 20px 65px; } .garage-journal-heading h2 { font-size: 1.8rem; } .garage-journal-grid, .editorial-archive-grid { grid-template-columns: 1fr; } .garage-journal-card { min-height: 0; padding: 25px; } .garage-journal-card > p { min-height: 0; } .editorial-archive, .editorial-single { padding: 25px 0 65px; } .editorial-archive-card { min-height: 0; } .editorial-article-cta { padding: 23px; } }
.customer-reviews-shell { overflow: hidden; padding: 66px 0 60px; border-radius: 24px; color: #fff; background: linear-gradient(135deg, #102b46, #163e5c); }
.customer-reviews-heading { display: flex; align-items: start; justify-content: space-between; gap: 48px; max-width: 1370px; margin: 0 auto 46px; padding: 0 48px; }
.customer-reviews-eyebrow { margin: 0 0 12px; color: #9bc8dd; font-size: .77rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.customer-reviews-heading h2 { max-width: 760px; margin: 0 0 18px; color: #fff; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.2; letter-spacing: -.025em; text-wrap: balance; }
.customer-reviews-heading h2 span { box-shadow: inset 0 -.25em #286582; }
.customer-reviews-heading p:last-child { max-width: 65ch; margin: 0; color: #cbdce6; font-size: 1rem; }
.customer-reviews-rating { display: flex; align-items: center; gap: 17px; flex: none; padding: 18px 22px; border: 1px solid rgba(255,255,255,.25); border-radius: 14px; color: #fff; background: rgba(255,255,255,.08); text-decoration: none; }
.customer-reviews-rating:hover { border-color: #8bd5e3; color: #fff; }
.customer-reviews-google { display: grid; place-items: center; width: 45px; height: 45px; border-radius: 50%; color: #4285f4; background: #fff; font-family: Arial, sans-serif; font-size: 1.65rem; font-weight: 700; }
.customer-reviews-rating strong { display: block; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: 1.55rem; line-height: 1.2; }
.customer-reviews-rating small { display: block; margin-top: 5px; color: #d8e7ef; font-size: .78rem; white-space: nowrap; }
.customer-reviews-rating small span { color: #ffc95b; letter-spacing: .07em; }
.customer-reviews-lanes { display: grid; gap: 16px; overflow: hidden; mask-image: linear-gradient(to right, transparent 0%, #000 5%, #000 95%, transparent 100%); }
.customer-reviews-lane { min-width: 0; overflow: hidden; }
.customer-reviews-track { display: flex; width: max-content; animation: customer-reviews-scroll 45s linear infinite; }
.customer-reviews-lane-reverse .customer-reviews-track { animation-direction: reverse; animation-duration: 52s; }
.customer-reviews-sequence { display: flex; flex: none; gap: 16px; padding-right: 16px; }
.customer-review-card { display: flex; flex-direction: column; width: 330px; min-height: 260px; margin: 0; padding: 23px 25px 21px; border: 1px solid #dbe7ed; border-radius: 16px; color: #1b3346; background: #fff; }
.customer-review-top { display: flex; align-items: start; justify-content: space-between; gap: 15px; margin-bottom: 8px; }
.customer-review-quote { color: #65cbd4; font-family: Georgia, serif; font-size: 4rem; line-height: .8; }
.customer-review-stars { color: #e9a928; font-size: .85rem; letter-spacing: .06em; }
.customer-review-card p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 5; overflow: hidden; margin: 0 0 18px; font-size: .91rem; line-height: 1.55; }
.customer-review-card footer { display: grid; gap: 2px; margin-top: auto; padding-top: 12px; border-top: 1px solid #e4ebef; }
.customer-review-card footer strong { font-size: .89rem; }
.customer-review-card footer small { color: #5b6e7b; font-size: .75rem; }
.customer-reviews-lanes:hover .customer-reviews-track, .customer-reviews-lanes:focus-within .customer-reviews-track { animation-play-state: paused; }
.customer-reviews-shell.is-paused .customer-reviews-track { animation-play-state: paused; }
@keyframes customer-reviews-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.customer-reviews-actions { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 12px; margin: 39px 20px 0; }
.customer-reviews-pause { min-height: 50px; padding: 11px 18px; border: 1px solid #87b6ca; border-radius: 7px; color: #e0edf3; background: transparent; font: inherit; font-size: .86rem; font-weight: 700; cursor: pointer; }
.customer-reviews-pause:hover { color: #fff; border-color: #fff; }
.customer-reviews-all { display: flex; align-items: center; justify-content: center; gap: 13px; width: fit-content; min-height: 50px; padding: 11px 21px; border-radius: 7px; color: #14364c; background: #91e2e4; font-size: .9rem; font-weight: 700; text-decoration: none; }
.customer-reviews-all:hover { color: #14364c; background: #b0eff0; }
.customer-reviews-rating:focus-visible, .customer-reviews-all:focus-visible, .customer-reviews-pause:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
@media (max-width: 800px) { .customer-reviews-heading { flex-direction: column; gap: 26px; margin-bottom: 36px; padding: 0 30px; } }
@media (max-width: 600px) { .customer-reviews { padding: 0 12px 20px; } .customer-reviews-shell { padding: 48px 0 44px; border-radius: 17px; } .customer-reviews-heading { padding: 0 20px; } .customer-reviews-heading h2 { font-size: 1.8rem; } .customer-reviews-lane-reverse { display: none; } .customer-review-card { width: min(83vw, 310px); min-height: 270px; } .customer-reviews-actions { margin-top: 30px; } }
@media (prefers-reduced-motion: reduce) { .customer-reviews-track { animation: none; } .customer-reviews-lane { overflow-x: auto; } .customer-reviews-pause { display: none; } }

.service-paths { padding-block: 83px 95px; }
.section-intro { max-width: 780px; margin-bottom: 30px; }
.section-intro h2 { margin: 0 0 9px; font-family: "Arial Narrow", "DM Sans Local", sans-serif; font-size: clamp(2.1rem, 3.4vw, 3.45rem); line-height: 1.07; letter-spacing: -.035em; }
.section-intro p { max-width: 65ch; margin: 0; color: var(--muted); font-size: 1rem; }
.path-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.path-card { display: flex; flex-direction: column; min-height: 255px; padding: 25px 27px 24px; border: 1px solid var(--line); color: var(--ink); background: #fff; text-decoration: none; }
.path-card:hover { border-color: var(--blue); color: var(--ink); background: #f6f9fb; }
.path-card .path-icon { display: inline-flex; align-items: center; justify-content: center; width: 39px; height: 39px; margin-bottom: 21px; border: 1px solid #b9ccd9; border-radius: 50%; color: var(--blue); font-size: 1rem; line-height: 1; }
.path-card h3 { margin: 0 0 7px; font-family: "Arial Narrow", "DM Sans Local", sans-serif; font-size: 1.65rem; line-height: 1.15; letter-spacing: -.02em; }
.path-card p { margin: 0 0 24px; color: var(--muted); font-size: .92rem; line-height: 1.5; }
.path-card .path-link { margin-top: auto; color: var(--blue); font-size: .86rem; font-weight: 700; }
.path-card-emergency { border-color: #bed0dd; background: #eff4f7; }
.path-card-emergency .path-icon { color: var(--red); border-color: #eab6b9; }

.home-content-section { padding: 77px 0 65px; background: #f4f7f8; }
.home-content-section .section-intro { margin-bottom: 38px; }
.home-content-section .entry-content { padding: 35px 36px 2px; background: #fff; border: 1px solid var(--line); }
.home-content-section .entry-content .vc_row { margin-bottom: 29px !important; }
.home-content-section .entry-content .section-heading { margin-top: 7px; }
.home-content-section .entry-content > .vc_row:first-child .section-heading { margin-top: 0; }
.service-card { border: 0; background: #f0f4f6; }
.service-card img { height: 175px; }
.service-card-body { padding: 19px 19px 21px; }
.service-card a { color: var(--blue); }
.section-heading { border-bottom: 1px solid #bfcdd6; }
.section-heading h2, .section-heading h3, .section-heading h4 { font-family: "Arial Narrow", "DM Sans Local", sans-serif; }
.entry-content { font-size: .99rem; }
.entry-content p { line-height: 1.72; }
.entry-content a { overflow-wrap: anywhere; }
.entry-content img { max-width: 100%; }
.info-block { border-left-color: var(--blue); background: #f1f5f7; }
.faq-item summary { color: var(--blue-deep); }
.faq-item summary:hover { color: var(--red); }

.directory-section { padding: 0 clamp(14px, 1.3vw, 28px) 30px; background: #fff; }
.directory-shell { overflow: hidden; border-radius: 24px; background: #eff6f8; }
.directory-inner { max-width: 1370px; margin: 0 auto; padding: 72px 0 68px; }
.directory-heading { display: flex; align-items: end; justify-content: space-between; gap: 50px; margin-bottom: 37px; }
.directory-eyebrow { margin: 0 0 12px; color: var(--blue); font-size: .77rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.directory-heading h2 { max-width: 720px; margin: 0; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.2; letter-spacing: -.025em; text-wrap: balance; }
.directory-heading h2 span { box-shadow: inset 0 -.25em #b0dfe9; }
.directory-heading > p { max-width: 435px; margin: 0 0 5px; color: #40596b; font-size: .98rem; line-height: 1.65; }
.directory-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.directory-card { display: flex; flex-direction: column; min-width: 0; padding: 30px 32px 27px; border: 1px solid #d5e1e7; border-radius: 17px; background: #fff; box-shadow: 0 16px 42px rgba(17,47,75,.05); }
.directory-card-top { display: flex; align-items: start; justify-content: space-between; gap: 12px; margin-bottom: 21px; }
.directory-icon { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 13px; color: var(--blue); background: #e6f3f7; }
.directory-icon svg { width: 29px; height: 29px; }
.directory-card-reparation .directory-icon { color: #b72732; background: #faeaeb; }
.directory-count { color: #657b88; font-size: .79rem; font-weight: 700; white-space: nowrap; }
.directory-card h3 { margin: 0 0 5px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(1.45rem, 1.8vw, 1.85rem); line-height: 1.23; }
.directory-card-intro { min-height: 51px; margin: 0 0 24px; color: #526979; font-size: .91rem; line-height: 1.55; }
.directory-card nav { margin-bottom: 24px; }
.directory-card ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 22px; margin: 0; padding: 0; list-style: none; border-top: 1px solid #e2e9ed; }
.directory-card li { min-width: 0; border-bottom: 1px solid #e2e9ed; }
.directory-card li a { display: flex; align-items: start; justify-content: space-between; gap: 10px; min-height: 62px; padding: 13px 0 12px; color: #183b51; font-size: .88rem; font-weight: 700; line-height: 1.35; text-decoration: none; }
.directory-card li a span:first-child { min-width: 0; }
.directory-card li a span:last-child { flex: none; color: #b82c37; font-size: .95rem; }
.directory-card li a:hover { color: #b82c37; }
.directory-card-all { display: inline-flex; align-items: center; gap: 8px; width: fit-content; margin-top: auto; padding-bottom: 3px; border-bottom: 2px solid var(--red); color: var(--blue); font-size: .87rem; font-weight: 700; text-decoration: none; }
.directory-card-all:hover { color: var(--red); }
.directory-towing { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 27px; margin-top: 18px; padding: 30px 34px; border-radius: 17px; color: #fff; background: linear-gradient(110deg, #133753, #1c5476); }
.directory-towing-icon { display: grid; place-items: center; width: 66px; height: 66px; border: 1px solid rgba(255,255,255,.35); border-radius: 16px; color: #9ee2e7; }
.directory-towing-icon svg { width: 36px; height: 36px; }
.directory-towing-eyebrow { margin: 0 0 4px; color: #9ee2e7; font-size: .75rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.directory-towing h3 { margin: 0 0 4px; color: #fff; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: 1.35rem; line-height: 1.3; }
.directory-towing p:last-child { margin: 0; color: #d9e8ef; font-size: .88rem; line-height: 1.45; }
.directory-towing > a { display: inline-flex; align-items: center; gap: 9px; min-height: 47px; padding: 10px 17px; border-radius: 6px; color: #12344f; background: #a8e8e8; font-size: .85rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.directory-towing > a:hover { background: #fff; }
.directory-card a:focus-visible, .directory-towing a:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
@media (max-width: 1450px) { .directory-inner { margin: 0 48px; } }
@media (max-width: 1050px) { .directory-heading { align-items: start; flex-direction: column; gap: 16px; } .directory-card ul { grid-template-columns: 1fr; } .directory-card li a { min-height: 0; } }
@media (max-width: 750px) { .directory-cards { grid-template-columns: 1fr; } .directory-card ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } .directory-towing { grid-template-columns: auto 1fr; } .directory-towing > a { grid-column: 2; width: fit-content; } }
@media (max-width: 600px) { .directory-section { padding: 0 12px 20px; } .directory-shell { border-radius: 17px; } .directory-inner { margin: 0 18px; padding: 48px 0; } .directory-heading h2 { font-size: 1.8rem; } .directory-heading > p { font-size: .92rem; } .directory-card { padding: 24px 21px; } .directory-card-intro { min-height: 0; } .directory-card ul { grid-template-columns: 1fr; } .directory-towing { grid-template-columns: 1fr; gap: 13px; padding: 25px 22px; } .directory-towing > a { grid-column: 1; margin-top: 7px; white-space: normal; } }

.page-banner-v2 { padding: 0; color: var(--ink); background: #eff4f6; border-bottom: 1px solid var(--line); }
.page-banner-inner { padding-block: 39px 42px; }
.page-banner-v2 .breadcrumbs { margin-bottom: 18px; color: #547083; font-size: .79rem; }
.page-banner-v2 .breadcrumbs a { color: #547083; }
.page-banner-v2 .breadcrumbs span[aria-hidden] { color: #90a4b2; }
.page-banner-v2 h1, .page-banner-v2 .page-banner-title { max-width: 940px; padding-left: 19px; border-left: 5px solid var(--red); color: var(--ink); font-family: "Arial Narrow", "DM Sans Local", sans-serif; font-size: clamp(2.35rem, 4vw, 4rem); line-height: 1.07; }
.page-banner-support { margin: 14px 0 0 24px; color: var(--muted); font-size: .9rem; }
.page-layout { display: block; padding-top: 45px; }
.page-layout.has-sidebar { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 66px; align-items: start; }
.page-main { min-width: 0; }
.page-context { margin: 0 0 22px; font-size: .82rem; font-weight: 700; }
.page-context a { color: var(--blue); text-decoration: none; }
.page-context a::before { content: "←"; margin-right: 7px; }
.page-context a:hover { text-decoration: underline; }
.page-main .entry-content { max-width: 100%; }
.page-main .entry-content .vc_row { margin-bottom: 29px !important; }
.page-main .entry-content .section-heading { margin-top: 20px; }
.page-main .entry-content > .vc_row:first-child .section-heading { margin-top: 0; }
.page-main .entry-content .service-card img { height: 143px; }
.page-main .entry-content .service-card h3 { font-size: 1.08rem; }
.sidebar-sticky { position: sticky; top: 18px; }
.page-sidebar h2 { margin: 0 0 12px; color: var(--ink); font-family: "Arial Narrow", "DM Sans Local", sans-serif; font-size: 1.3rem; line-height: 1.2; }
.page-sidebar .on-this-page { margin: 0 0 28px; padding: 20px 20px 12px; background: #eef3f6; border-left: 3px solid var(--red); }
.page-sidebar .on-this-page[hidden] { display: none; }
.page-sidebar ol { margin: 0; padding-left: 1.1em; }
.page-sidebar ol li { margin: 0 0 8px; color: var(--blue); font-size: .83rem; }
.page-sidebar ol a { color: var(--ink); text-decoration: none; }
.page-sidebar ol a:hover { color: var(--blue); text-decoration: underline; }
.sibling-nav { padding-top: 19px; border-top: 3px solid var(--blue); }
.sibling-nav ul { max-height: min(42vh, 420px); overflow-y: auto; margin: 0; padding: 0; list-style: none; scrollbar-width: thin; }
.sibling-nav li { border-bottom: 1px solid var(--line); }
.sibling-nav li a { display: block; padding: 8px 2px; color: var(--ink); font-size: .83rem; line-height: 1.35; text-decoration: none; }
.sibling-nav li a:hover, .sibling-nav li a[aria-current] { color: var(--blue); font-weight: 700; }
.sidebar-help { margin-top: 24px; padding: 20px; color: #fff; background: var(--blue-deep); font-size: .86rem; }
.sidebar-help strong { display: block; font-size: 1rem; }
.sidebar-help p { margin: 5px 0 10px; color: #d7e2ea; }
.sidebar-help a { color: #fff; font-size: 1.15rem; font-weight: 700; }
.after-article { margin-top: 52px; padding: 27px 30px; border-top: 4px solid var(--red); background: #edf3f6; }
.after-article h2 { margin: 0 0 6px; font-family: "Arial Narrow", "DM Sans Local", sans-serif; font-size: 1.55rem; }
.after-article p { margin: 0 0 17px; color: var(--muted); }
.after-article > div { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; }
.text-action { font-weight: 700; }
.page-main .entry-content h2[id] { scroll-margin-top: 26px; }
.contact-layout { grid-template-columns: minmax(0, 1fr) 310px !important; gap: 75px !important; }
.contact-aside { padding: 24px; border-top: 4px solid var(--red); background: #eff4f6; }
.contact-aside h2 { margin: 0 0 10px; font-size: 1.65rem; }
.contact-aside p { margin: 0 0 17px; color: var(--muted); font-size: .9rem; }
.contact-aside-phone { display: block; padding: 13px 0; border-block: 1px solid var(--line); color: var(--blue-deep); font-size: 1.4rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.contact-aside-address { margin: 19px 0; }
.contact-aside-address strong { display: block; margin-bottom: 5px; }
.contact-aside-address address { font-style: normal; line-height: 1.6; }

.search-layout { max-width: 990px; }
.search-intro { max-width: 650px; margin-bottom: 30px; }
.search-intro p { margin: 0 0 14px; }
.result-count { margin: 0 0 18px; font-weight: 700; }
.search-results { display: grid; gap: 0; border-top: 2px solid var(--blue); }
.search-result { padding: 23px 0 25px; border-bottom: 1px solid var(--line); }
.search-result h2 { margin: 0 0 3px; font-family: "Arial Narrow", "DM Sans Local", sans-serif; font-size: 1.55rem; }
.search-result h2 a { color: var(--ink); text-decoration: none; }
.search-result h2 a:hover { color: var(--blue); }
.search-result .result-parent { margin: 0 0 6px; color: var(--blue); font-size: .8rem; font-weight: 700; }
.search-result p { max-width: 75ch; margin: 0 0 9px; color: var(--muted); font-size: .9rem; }
.result-link { font-size: .85rem; font-weight: 700; text-decoration: none; }
.no-results { padding: 30px; background: #eff4f6; }
.no-results h2 { margin-top: 0; }

.site-footer-redesign { margin: 0 clamp(12px, 1.3vw, 28px); overflow: hidden; border-radius: 22px 22px 0 0; color: #d7e5ec; background: radial-gradient(circle at 92% 0, rgba(39,106,137,.34), transparent 35%), #102b46; }
.footer-inner { max-width: 1370px; margin: 0 auto; }
.footer-lead { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 48px; padding: 42px 0 36px; border-bottom: 1px solid rgba(255,255,255,.18); }
.footer-eyebrow { margin: 0 0 16px !important; color: #9bdde5; font-size: .77rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.site-footer-redesign .footer-lead h2 { margin: 0 0 16px; color: #fff; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2.3rem, 4vw, 3.85rem); line-height: 1.08; letter-spacing: -.035em; }
.footer-lead > div:first-child > p:last-child { max-width: 650px; margin: 0; color: #bfd3df; font-size: 1.04rem; line-height: 1.6; }
.footer-lead-actions { display: flex; flex-direction: column; gap: 11px; width: 244px; }
.footer-lead-actions a { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 52px; padding: 12px 18px; border-radius: 7px; font-size: .9rem; font-weight: 700; text-decoration: none; }
.site-footer-redesign .footer-quote { color: #fff; background: var(--red); }
.site-footer-redesign .footer-quote:hover { color: #fff; background: #b9232d; }
.site-footer-redesign .footer-phone { color: #fff; background: #188552; }
.site-footer-redesign .footer-phone:hover { color: #fff; background: #126b41; }
.footer-phone svg { width: 19px; height: 19px; }
.site-footer-redesign .footer-grid { display: grid; grid-template-columns: minmax(245px, 1.4fr) repeat(3, minmax(0, 1fr)); gap: 38px; padding: 34px 0 32px; }
.site-footer-redesign .footer-brand { display: inline-flex; gap: 5px; margin-bottom: 16px; color: #fff; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: 1.75rem; font-weight: 700; line-height: 1.15; letter-spacing: -.055em; text-decoration: none; }
.site-footer-redesign .footer-brand img { display: block; width: 198px; max-width: 100%; height: auto; }
.site-footer-redesign .footer-brand span { color: #f36a72; }
.footer-brand-column > p { max-width: 32ch; margin: 0 0 17px !important; color: #bbceda; font-size: .9rem; line-height: 1.6; }
.site-footer-redesign .footer-google { display: flex; flex-direction: column; align-items: flex-start; width: 230px; padding: 15px 16px 13px; border: 1px solid rgba(255,255,255,.27); border-radius: 10px; color: #fff; background: rgba(255,255,255,.045); text-decoration: none; }
.site-footer-redesign .footer-google:hover { border-color: #a0e3e8; color: #fff; background: rgba(255,255,255,.095); }
.footer-google-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; }
.footer-google-logo { display: grid; place-items: center; width: 124px; height: 38px; padding: 1px 2px; border-radius: 5px; background: #fff; }
.footer-google-logo img { display: block; width: 120px; height: 36px; object-fit: contain; }
.footer-google-arrow { color: #9fe3e5; font-size: 1.06rem; }
.footer-google-rating { display: flex; align-items: baseline; gap: 11px; margin-top: 13px; }
.footer-google-rating strong { color: #fff; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: 2rem; line-height: 1.1; letter-spacing: -.03em; }
.footer-google-rating strong span { margin-left: 1px; color: #bdcfda; font-size: 1rem; }
.footer-google-stars { position: relative; display: inline-block; font-size: .95rem; letter-spacing: .01em; line-height: 1; white-space: nowrap; }
.footer-google-stars span:first-child { color: #758d9e; }
.footer-google-stars span:last-child { position: absolute; top: 0; left: 0; width: 94%; overflow: hidden; color: #ffc95b; }
.footer-google-count { margin-top: 4px; color: #d3e3eb; font-size: .8rem; font-weight: 700; }
.site-footer-redesign .footer-nav h2, .site-footer-redesign .footer-contact h2 { margin: 3px 0 17px; color: #fff; font-family: "DM Sans Local", sans-serif; font-size: .9rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.site-footer-redesign .footer-nav ul { margin: 0; padding: 0; list-style: none; }
.site-footer-redesign .footer-nav li { margin: 0 0 11px; }
.site-footer-redesign .footer-nav a, .site-footer-redesign .footer-contact-link { color: #c6d9e4; font-size: .88rem; line-height: 1.45; text-decoration: none; }
.site-footer-redesign .footer-nav a:hover, .site-footer-redesign .footer-contact-link:hover { color: #fff; text-decoration: underline; text-decoration-color: #f36a72; text-underline-offset: 4px; }
.footer-contact address { margin-bottom: 19px; color: #c6d9e4; font-size: .88rem; font-style: normal; line-height: 1.65; }
.site-footer-redesign .footer-contact-phone { display: block; width: fit-content; margin-bottom: 15px; color: #fff; font-size: 1.1rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.site-footer-redesign .footer-contact-phone:hover { color: #9fe3bd; }
.site-footer-redesign .footer-conditions { display: flex; align-items: start; gap: 16px; padding: 21px 23px; border: 1px solid rgba(255,255,255,.13); border-left: 3px solid #f36a72; border-radius: 0 10px 10px 0; background: rgba(255,255,255,.055); }
.footer-conditions-mark { color: #ff9298; font-size: 1.55rem; font-weight: 700; line-height: 1; }
.site-footer-redesign .footer-conditions h2 { margin: 0 0 5px; color: #fff; font-family: "DM Sans Local", sans-serif; font-size: .86rem; font-weight: 700; }
.site-footer-redesign .footer-conditions p { max-width: 115ch; margin: 0; color: #d3e2e9; font-size: .86rem; line-height: 1.6; }
#conditions-diagnostic { scroll-margin-top: 24px; }
.site-footer-redesign .footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 21px; padding: 16px 0 18px; border-top: 1px solid rgba(255,255,255,.18); color: #9fb8c7; font-size: .8rem; }
.footer-bottom-links { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.site-footer-redesign .footer-bottom a { color: #d6e7ef; text-decoration: none; }
.site-footer-redesign .footer-bottom a:hover { color: #fff; text-decoration: underline; }
.site-footer-redesign a:focus-visible { outline: 3px solid #9fe3e5; outline-offset: 3px; }
@media (max-width: 1450px) { .footer-inner { margin: 0 48px; } }
@media (max-width: 1100px) { .site-footer-redesign .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 44px; } }
@media (max-width: 750px) { .footer-lead { grid-template-columns: 1fr; gap: 23px; padding: 35px 0 32px; } .footer-lead-actions { flex-direction: row; width: auto; } .footer-lead-actions a { flex: 1; } }
@media (max-width: 600px) { .footer-inner { margin: 0 23px; } .site-footer-redesign .footer-lead h2 { font-size: 2.5rem; } .footer-lead > div:first-child > p:last-child { font-size: .95rem; } .footer-lead-actions { flex-direction: column; } .footer-lead-actions a { width: 100%; } .site-footer-redesign .footer-grid { grid-template-columns: 1fr 1fr; gap: 25px 22px; padding: 29px 0 30px; } .footer-brand-column { grid-column: 1 / -1; } .footer-contact { grid-column: 1 / -1; } .site-footer-redesign .footer-nav h2, .site-footer-redesign .footer-contact h2 { margin-bottom: 15px; } .site-footer-redesign .footer-nav li { margin-bottom: 11px; } .site-footer-redesign .footer-conditions { padding: 18px 16px; } .site-footer-redesign .footer-bottom { align-items: flex-start; flex-direction: column; gap: 7px; margin-top: 20px; } }

@media (max-width: 1090px) {
  .navigation-inner { gap: 14px; }
  .navigation-inner .brand img { width: 148px; }
  .site-nav { gap: 0; }
  .site-nav a { padding-inline: 6px; font-size: .8rem; }
  .nav-divider { margin-inline: 2px; }
  .site-nav .nav-icon { display: none; }
  .header-call { min-width: 136px; gap: 7px; padding-inline: 8px; }
  .header-call-copy small { font-size: .72rem; }
  .page-layout.has-sidebar { gap: 38px; grid-template-columns: minmax(0, 1fr) 250px; }
}
@media (max-width: 880px) {
  .utility-inner { justify-content: center; }
  .utility-inner > span { display: none; }
  .navigation-inner { min-height: 75px; }
  .navigation-inner .brand img { width: 156px; }
  .site-nav, .search-reveal { display: none; }
  .header-actions { margin-left: auto; }
  .mobile-nav-v2 { display: block; padding-bottom: 13px; }
  .mobile-nav-v2 > summary { display: inline-flex; align-items: center; gap: 11px; padding: 8px 13px; border: 1px solid #d9e7ec; border-radius: 8px; color: var(--blue); background: #f6f9fa; cursor: pointer; font-size: .88rem; font-weight: 700; list-style: none; }
  .mobile-nav-v2 > summary::-webkit-details-marker { display: none; }
  .mobile-nav-v2 > summary::after { content: ''; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .15s ease; }
  .mobile-nav-v2[open] > summary::after { transform: rotate(225deg) translateY(-1px); }
  .mobile-nav-v2 > summary:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; }
  .mobile-nav-v2 nav { display: grid; gap: 2px; margin-top: 8px; padding: 9px 12px 13px; border: 1px solid #e6eef1; border-radius: 12px; background: #f8fafb; }
  .mobile-nav-v2 nav > a { display: flex; align-items: center; gap: 10px; padding: 9px 10px; border-radius: 7px; color: var(--ink); font-size: .9rem; text-decoration: none; }
  .mobile-nav-v2 nav > a:hover { color: var(--blue); background: #e6f1f5; }
  .mobile-nav-v2 .site-search { margin-top: 15px; }
  .hero-v2-grid { grid-template-columns: 1fr; gap: 0; }
  .hero-v2-copy { padding: 30px 0 48px; }
  .hero-v2-media { min-height: 310px; margin: 0 -20px; border-left: 0; border-top: 6px solid var(--red); }
  .hero-v2-media img { min-height: 310px; max-height: 390px; }
  .finder-grid { grid-template-columns: 1fr; gap: 22px; }
  .path-grid { grid-template-columns: 1fr 1fr; }
  .path-card-emergency { grid-column: 1 / -1; min-height: 0; }
  .page-layout.has-sidebar { grid-template-columns: 1fr; }
  .contact-layout { grid-template-columns: 1fr !important; gap: 35px !important; }
  .page-sidebar { order: -1; }
  .sidebar-sticky { position: static; display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
  .sidebar-help { margin: 0; }
  .sibling-nav { grid-column: 1 / -1; }
  .sibling-nav ul { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; max-height: none; }
}
@media (max-width: 600px) {
  .container { width: min(calc(100% - 32px), var(--wrap)); }
  .utility-inner { min-height: 31px; font-size: .77rem; }
  .navigation-inner { min-height: 70px; }
  .navigation-inner .brand img { width: 145px; }
  .header-call { min-height: 44px; padding: 5px 10px; }
  .header-call-icon { width: 19px; height: 19px; }
  .header-call-copy strong { font-size: .67rem; }
  .header-call-copy small { font-size: .69rem; }
  .hero-v2 { padding-top: 0; }
  .hero-v2-copy { padding: 37px 0 43px; }
  .place-line { margin-bottom: 20px; font-size: .84rem; }
  .hero-v2 h1 { font-size: clamp(2.65rem, 11vw, 4.1rem); }
  .hero-v2-lead { font-size: 1rem; }
  .hero-v2 .hero-actions { display: grid; grid-template-columns: 1fr; }
  .hero-location { margin-top: 25px; }
  .hero-v2-media { margin: 0 -16px; min-height: 245px; }
  .hero-v2-media img { min-height: 245px; max-height: 285px; }
  .photo-caption { max-width: 245px; padding: 8px 11px; font-size: .72rem; }
  .finder-grid { padding-block: 30px; }
  .finder-intro h2 { font-size: 1.95rem; }
  .site-search { display: grid; grid-template-columns: 1fr; }
  .site-search button { min-height: 45px; }
  .service-paths { padding-block: 58px 66px; }
  .section-intro h2 { font-size: 2.25rem; }
  .path-grid { grid-template-columns: 1fr; }
  .path-card, .path-card-emergency { grid-column: auto; min-height: 0; }
  .path-card .path-icon { margin-bottom: 16px; }
  .home-content-section { padding: 58px 0; }
  .home-content-section .entry-content { padding: 25px 17px 1px; }
  .home-content-section .entry-content .vc_column_container { margin-bottom: 13px; }
  .page-banner-inner { padding-block: 29px 33px; }
  .page-banner-v2 h1, .page-banner-v2 .page-banner-title { font-size: clamp(2.1rem, 9vw, 3rem); }
  .page-layout { padding-top: 31px; }
  .page-sidebar { order: 2; margin-top: 34px; }
  .sidebar-sticky { display: block; }
  .sibling-nav ul { grid-template-columns: 1fr; }
  .sidebar-help { display: none; }
  .after-article { padding: 22px 20px; }
}
@media (max-width: 420px) {
  .navigation-inner { gap: 12px; }
  .navigation-inner .brand img { width: 130px; }
  .header-call { min-width: 0; min-height: 43px; gap: 7px; padding-inline: 10px; }
  .header-call-copy { display: none; }
  .header-call-short { display: inline; font-size: .83rem; font-weight: 800; }
}

@media (max-width: 1050px) {
  .hero-showcase-grid { grid-template-columns: 1fr .83fr; }
  .hero-showcase-copy { padding: 55px 35px; }
  .hero-showcase h1 { font-size: clamp(2.55rem, 4.5vw, 3rem); }
  .hero-photo-wall { padding-right: 17px; gap: 9px; }
  .photo-sequence { gap: 9px; padding-bottom: 9px; }
  .hero-photo-card { height: 170px; }
  .hero-proof { margin-inline: 17px; }
  .proof-google, .proof-item { padding: 15px 16px; }
}
@media (max-width: 760px) {
  .garage-process-shell { padding: 49px 25px 38px; }
  .garage-process h2 { font-size: clamp(1.85rem, 5vw, 2.3rem); }
  .garage-process-steps { grid-template-columns: 1fr 1fr; gap: 30px 14px; }
  .garage-process-steps li:not(:last-child)::after { display: none; }
  .garage-process-steps p { max-width: 32ch; }
  .garage-intro { padding: 65px 0 70px; }
  .garage-intro-grid { grid-template-columns: 1fr; gap: 32px; }
  .garage-intro-photo { min-height: 340px; }
  .garage-intro-photo img { min-height: 340px; max-height: 430px; }
  .hero-showcase { padding: 12px 12px 0; }
  .hero-showcase-shell { border-radius: 20px; }
  .hero-showcase-grid { grid-template-columns: 1fr; }
  .hero-showcase-copy { padding: 49px 29px 31px; }
  .hero-showcase h1 { max-width: 650px; font-size: clamp(2.25rem, 6vw, 2.8rem); }
  .hero-photo-wall { height: 290px; padding: 0 20px; gap: 11px; }
  .hero-photo-card { height: 165px; }
  .hero-proof { grid-template-columns: 1fr 1fr; margin: 11px 15px 15px; }
  .proof-google { grid-column: 1 / -1; border-right: 0; border-bottom: 1px solid #dbe5eb; }
  .proof-item:nth-child(2) { border-right: 1px solid #dbe5eb; }
}
@media (max-width: 480px) {
  .garage-process { padding: 0 12px 15px; }
  .garage-process-shell { padding: 43px 17px 33px; border-radius: 17px; }
  .garage-process h2 { margin-bottom: 27px; font-size: 1.8rem; }
  .garage-process-steps { grid-template-columns: 1fr; gap: 20px; padding: 25px 20px; }
  .garage-process-steps li { padding: 0 0 0 59px; min-height: 50px; }
  .process-number { position: absolute; top: 1px; left: 0; width: 42px; height: 42px; margin: 0; }
  .garage-process-steps h3 { margin-top: 2px; }
  .garage-process-steps p { max-width: none; }
  .garage-process-cta { width: 100%; }
  .garage-process-facts { grid-template-columns: 1fr; gap: 15px; margin-top: 28px; }
  .garage-process-facts > div { padding: 0 0 15px; border-right: 0 !important; border-bottom: 1px solid #bfd4e2; }
  .garage-process-facts > div:last-child { padding-bottom: 0; border-bottom: 0; }
  .garage-intro { padding: 53px 0 59px; }
  .garage-intro-grid { gap: 26px; }
  .garage-intro-photo, .garage-intro-photo img { min-height: 270px; max-height: 320px; }
  .garage-intro h2 { font-size: 2rem; }
  .garage-intro-lead { font-size: 1rem; }
  .hero-showcase { padding: 0; }
  .hero-showcase-shell { border-radius: 0; }
  .hero-showcase-copy { padding: 41px 20px 29px; }
  .hero-eyebrow { margin-bottom: 19px; font-size: .73rem; }
  .hero-showcase h1 { font-size: clamp(2rem, 9vw, 2.35rem); }
  .hero-showcase-lead { font-size: .96rem; }
  .hero-benefits li { font-size: .87rem; }
  .hero-showcase-actions { display: grid; grid-template-columns: 1fr; width: 100%; }
  .hero-address { margin-top: 19px; }
  .hero-photo-wall { height: 225px; padding: 0 13px; gap: 8px; }
  .photo-sequence { gap: 8px; padding-bottom: 8px; }
  .hero-photo-card { height: 145px; border-radius: 10px; }
  .hero-proof { grid-template-columns: 1fr; margin: 10px 12px 13px; }
  .proof-google, .proof-item { padding: 13px 15px; border-right: 0 !important; border-bottom: 1px solid #dbe5eb; }
  .proof-item:last-child { border-bottom: 0; }
}

/* Parent service pages: one workshop-led layout for entretien, réparation and remorquage. */
.pillar-hero { padding: 15px clamp(12px, 1.3vw, 28px) 0; background: #f7f9fa; }
.pillar-hero-shell { overflow: hidden; border-radius: 25px; color: #fff; background: linear-gradient(125deg, #102b46 0%, #14466d 72%, #235b7d 100%); }
.pillar-breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; max-width: 1380px; margin: 0 auto; padding: 24px 24px 0; color: #bad5e3; font-size: .83rem; }
.pillar-breadcrumbs a { color: #fff; text-underline-offset: 3px; }
.pillar-hero-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); align-items: center; max-width: 1380px; min-height: 445px; margin: 0 auto; }
.pillar-hero-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 35px 32px 45px 24px; }
.pillar-hero h1 { max-width: 760px; margin: 0 0 22px; color: #fff; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2.7rem, 2.5vw, 3rem); line-height: 1.2; letter-spacing: -.01em; text-wrap: balance; }
.pillar-hero-copy > p { max-width: 57ch; margin: 0 0 25px; color: #d5e6ef; font-size: 1.04rem; line-height: 1.6; }
.pillar-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.pillar-call-primary { display: flex; flex-direction: column; justify-content: center; min-height: 58px; padding: 9px 20px; border-radius: 8px; color: #fff; background: #188552; font-size: .8rem; line-height: 1.25; text-decoration: none; }
.pillar-call-primary strong { margin-top: 3px; color: #fff; font-size: 1.04rem; letter-spacing: .01em; }
.pillar-call-primary:hover { color: #fff; background: #126b41; }
.pillar-quote-secondary { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 58px; padding: 12px 19px; border: 1px solid #8baec0; border-radius: 8px; color: #fff; font-size: .9rem; font-weight: 700; text-decoration: none; }
.pillar-quote-secondary:hover { color: #fff; border-color: #fff; background: rgba(255,255,255,.08); }
.pillar-hero-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 25px; margin-top: 23px; }
.pillar-hero-meta > a { display: flex; align-items: center; gap: 9px; color: #fff; text-decoration: none; }
.pillar-hero-meta > a:hover { color: #a8e7f0; }
.pillar-google-g { display: grid; place-items: center; flex: none; width: 32px; height: 32px; border-radius: 50%; color: #4285f4; background: #fff; font-family: Arial, sans-serif; font-size: 1.3rem; font-weight: 700; }
.pillar-hero-meta strong, .pillar-hero-meta small { display: block; }
.pillar-hero-meta strong { font-size: .83rem; }
.pillar-hero-meta small { margin-top: 2px; color: #cddfe9; font-size: .7rem; }
.pillar-hero-meta small span { color: #ffc95b; }
.pillar-hero-location { color: #a7c8da; font-size: .8rem; }
.pillar-hero-location span { margin-right: 6px; color: #89e0bc; font-size: 1.2rem; }
.pillar-hero-visual { position: relative; height: 380px; margin: 12px 24px 34px 10px; overflow: hidden; border: 4px solid #8bd2df; border-radius: 20px; background: #245775; box-shadow: 0 18px 35px rgba(3,25,44,.24); }
.pillar-hero-visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16,43,70,.18), transparent 42%), linear-gradient(0deg, rgba(9,30,49,.35), transparent 38%); pointer-events: none; }
.pillar-hero-visual img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.pillar-hero-visual figcaption { position: absolute; z-index: 2; right: 17px; bottom: 17px; left: 17px; width: fit-content; padding: 8px 12px; border-radius: 7px; color: #fff; background: rgba(12,39,61,.84); font-size: .78rem; font-weight: 700; }
.pillar-hero-remorquage .pillar-hero-visual { display: grid; place-items: center; background: radial-gradient(circle at 55% 40%, #4b819e 0, #215a7e 46%, #143b5b 100%); }
.pillar-hero-remorquage .pillar-hero-visual::before { content: ""; position: absolute; right: -8%; bottom: 15%; left: -8%; height: 2px; background: rgba(192,221,229,.34); transform: rotate(-8deg); }
.pillar-hero-remorquage .pillar-hero-visual img { z-index: 1; width: min(86%, 520px); height: auto; min-height: 0; filter: drop-shadow(0 30px 28px rgba(4,26,43,.32)); }
.pillar-main { background: #fff; }
.pillar-intro { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(270px, .6fr); gap: clamp(35px, 6vw, 100px); padding-block: 86px 91px; }
.pillar-intro h2, .pillar-services h2, .pillar-details h2, .pillar-crosslinks h2, .pillar-final-cta h2 { color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; letter-spacing: -.025em; text-wrap: balance; }
.pillar-intro h2 { max-width: 20ch; margin: 0 0 24px; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.2; }
.pillar-prose { max-width: 74ch; color: #40596b; font-size: 1.03rem; line-height: 1.75; }
.pillar-prose p { margin: 0 0 17px; text-align: left !important; }
.pillar-prose a { color: var(--blue); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.pillar-editorial{max-width:74ch;margin-top:29px;padding-top:25px;border-top:1px solid #d5e5eb}.pillar-editorial h3{margin:0 0 15px;color:#12344f;font-family:"Spline Sans","DM Sans Local",sans-serif;font-size:clamp(1.28rem,1.8vw,1.6rem);line-height:1.3}.pillar-editorial p{margin:0 0 16px;color:#40596b;font-size:1rem;line-height:1.75}.pillar-editorial p:last-child{margin-bottom:0}
.pillar-help { align-self: start; padding: 28px; border-left: 4px solid var(--red); border-radius: 0 13px 13px 0; background: #f1f6f8; }
.pillar-help-icon { display: grid; place-items: center; width: 46px; height: 46px; margin-bottom: 17px; border-radius: 11px; color: #185a78; background: #d9eef1; }
.pillar-help-icon svg { width: 26px; height: 26px; }
.pillar-help h3 { margin: 0 0 9px; color: #12344f; font-size: 1.13rem; }
.pillar-help p { margin: 0 0 17px; color: #496272; font-size: .94rem; line-height: 1.6; }
.pillar-help a { color: #b4222d; font-weight: 700; text-underline-offset: 4px; }
.pillar-services { padding: 0 clamp(12px, 1.3vw, 28px); }
.pillar-services-shell { padding: 69px max(24px, calc((100vw - 1380px) / 2)) 74px; border-radius: 25px; background: #e8f6f8; }
.pillar-services-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 35px; }
.pillar-services h2 { margin: 0 0 13px; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.2; }
.pillar-services-heading p { max-width: 69ch; margin: 0; color: #435d6b; line-height: 1.6; }
.pillar-services-count { flex: none; padding: 8px 13px; border: 1px solid #a9d4dc; border-radius: 100px; color: #225b73; background: #fff; font-size: .8rem; font-weight: 700; }
.pillar-service-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.pillar-service-card { position: relative; display: flex; flex-direction: column; align-items: flex-start; min-height: 184px; padding: 23px 22px; border: 1px solid #c4e2e6; border-radius: 14px; color: #163c55; background: #fff; text-decoration: none; }
.pillar-service-card:hover { border-color: #4ba7b4; color: #12344f; box-shadow: 0 9px 25px rgba(20,77,101,.1); transform: translateY(-2px); }
.pillar-service-icon { display: grid; place-items: center; width: 49px; height: 49px; margin-bottom: auto; border-radius: 11px; color: #16617d; background: #e7f4f6; }
.pillar-service-icon svg { width: 29px; height: 29px; }
.pillar-service-title { display: block; max-width: 22ch; margin-top: 21px; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: 1.08rem; font-weight: 700; line-height: 1.35; }
.pillar-service-text { display: block; max-width: 29ch; margin-top: 10px; color: #5a7180; font-size: .88rem; line-height: 1.5; }
.pillar-service-arrow { position: absolute; right: 21px; top: 25px; color: #b82e39; font-size: 1.25rem; }
.pillar-service-card:focus-visible, .pillar-hero a:focus-visible, .pillar-final-cta a:focus-visible { outline: 3px solid #d92d38; outline-offset: 3px; }
.pillar-service-paths { max-width: 88ch; margin: 30px 0 0; padding: 17px 20px; border-left: 3px solid #2e879c; border-radius: 0 9px 9px 0; color: #365c6e; background: rgba(255,255,255,.7); font-size: .94rem; line-height: 1.65; }
.pillar-service-paths a { color: #124f6a; font-weight: 700; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.pillar-service-paths a:hover { color: #b9232d; }
.pillar-service-paths a:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
.pillar-details { display: grid; grid-template-columns: minmax(245px, .55fr) minmax(0, 1fr); gap: clamp(45px, 8vw, 130px); padding-block: 88px 70px; }
.pillar-details h2 { margin: 0 0 15px; font-size: clamp(1.9rem, 2.8vw, 2.65rem); line-height: 1.2; }
.pillar-details-heading > p { max-width: 35ch; margin: 0; color: #6b8290; line-height: 1.6; }
.pillar-details-prose { max-width: 73ch; }
.pillar-brands { grid-column: 1 / -1; padding: 17px 22px; border: 1px solid #cbdde5; border-radius: 10px; background: #f6fafb; }
.pillar-brands summary { color: #164764; font-weight: 700; cursor: pointer; }
.pillar-brands ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px 20px; margin: 20px 0 0; padding-left: 20px; color: #455f6e; font-size: .87rem; }
.pillar-crosslinks { padding-bottom: 70px; }
.pillar-crosslinks h2 { margin: 0 0 22px; font-size: clamp(1.6rem, 2.3vw, 2.3rem); }
.pillar-crosslinks > div { display: flex; flex-wrap: wrap; gap: 14px; }
.pillar-crosslinks a { display: flex; align-items: center; justify-content: space-between; gap: 35px; min-width: min(100%, 310px); padding: 19px 22px; border: 1px solid #d3e2e8; border-radius: 10px; color: #16435d; background: #fff; font-weight: 700; text-decoration: none; }
.pillar-crosslinks a:hover { color: #b9232d; border-color: #de9ba3; }
.pillar-customer-reviews { padding-top: 78px; }
.pillar-process { padding-bottom: 30px; }
.pillar-process .process-number svg { width: 26px; height: 26px; }
.pillar-process .garage-process-steps li:last-child .process-number { background: var(--blue); }
.pillar-process-call { flex-wrap: wrap; color: #fff; background: #188552; }
.pillar-process-call:hover { color: #fff; background: #126b41; }
.pillar-process-call strong { color: inherit; white-space: nowrap; }
.pillar-process-call:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
.pillar-faq { padding: 70px 20px 50px; background: #fff; }
.pillar-faq-shell { max-width: 1000px; margin: 0 auto; text-align: center; }
.pillar-faq-eyebrow { margin: 0 0 12px; color: #618399; font-size: .77rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.pillar-faq h2 { margin: 0 auto 19px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.2; letter-spacing: -.025em; text-wrap: balance; }
.pillar-faq h2 span { box-shadow: inset 0 -.24em #c7dfee; }
.pillar-faq-intro { max-width: 730px; margin: 0 auto 36px; color: #506b7a; font-size: 1rem; line-height: 1.65; }
.pillar-faq-list { display: grid; gap: 12px; text-align: left; }
.pillar-faq-list details { border: 1px solid #d4e3e9; border-radius: 12px; background: #fff; box-shadow: 0 7px 25px rgba(14,50,73,.035); }
.pillar-faq-list details[open] { border-color: #8ebdcb; background: #f8fbfc; }
.pillar-faq-list summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 70px; padding: 18px 23px; color: #123a54; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: 1.08rem; font-weight: 700; line-height: 1.35; cursor: pointer; list-style: none; }
.pillar-faq-list summary::-webkit-details-marker { display: none; }
.pillar-faq-list summary::marker { content: ""; }
.pillar-faq-list summary:hover { color: #b9232d; }
.pillar-faq-list summary:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; border-radius: 9px; }
.pillar-faq-toggle { display: grid; place-items: center; flex: none; width: 32px; height: 32px; border-radius: 8px; color: #1d6080; background: #e5f2f6; font-family: Arial, sans-serif; font-size: 1.55rem; font-weight: 400; line-height: 1; }
.pillar-faq-list details[open] .pillar-faq-toggle { color: #fff; background: #1d6080; font-size: 0; }
.pillar-faq-list details[open] .pillar-faq-toggle::after { content: "−"; font-size: 1.55rem; }
.pillar-faq-answer { padding: 0 72px 23px 23px; color: #4a6473; line-height: 1.7; }
.pillar-faq-answer p { margin: 0; }
.pillar-faq-answer a { color: #b9232d; font-weight: 700; text-underline-offset: 3px; }
.pillar-brands-section { padding: 0 clamp(12px, 1.3vw, 28px) 30px; background: #fff; }
.pillar-brands-shell { width: 100%; padding: 62px clamp(22px, 5vw, 88px) 70px; border-radius: 24px; background: linear-gradient(135deg, #edf5fa 0%, #e7f1f7 52%, #dcebf4 100%); text-align: center; }
.pillar-brands-eyebrow { margin: 0 0 12px; color: #537d95; font-size: .77rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.pillar-brands-shell h2 { margin: 0 0 16px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.2; letter-spacing: -.025em; text-wrap: balance; }
.pillar-brands-shell h2 span { box-shadow: inset 0 -.24em #bddbea; }
.pillar-brands-intro { max-width: 720px; margin: 0 auto 30px; color: #496877; line-height: 1.65; }
.pillar-brands-panel { max-width: 1260px; margin: 0 auto; padding: 24px 30px; border-radius: 15px; background: #fff; text-align: left; box-shadow: 0 12px 30px rgba(18,52,79,.06); }
.pillar-brands-panel summary { font-size: 1rem; }
.pillar-brands-panel summary:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
.pillar-brands-panel ul { overflow: visible; }
.pillar-faq-cta { display: inline-flex; align-items: center; justify-content: center; gap: 18px; min-height: 52px; margin-top: 32px; padding: 12px 25px; border-radius: 7px; color: #fff; background: var(--red); font-size: .93rem; font-weight: 700; text-decoration: none; }
.pillar-faq-cta:hover { color: #fff; background: #b9232d; }
.pillar-faq-cta:focus-visible { outline: 3px solid #123a54; outline-offset: 3px; }
.pillar-diagnostic { padding: 63px 0 85px; background: #fff; }
.pillar-diagnostic-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr); align-items: center; gap: clamp(35px, 6vw, 100px); }
.pillar-diagnostic h2 { max-width: 17ch; margin: 0 0 21px; color: #12344f; font-family: "Spline Sans", "DM Sans Local", sans-serif; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.2; letter-spacing: -.025em; text-wrap: balance; }
.pillar-diagnostic h2 span { box-shadow: inset 0 -.24em #c7dfee; }
.pillar-diagnostic h2 sup { margin-left: 2px; font-size: .48em; line-height: 0; vertical-align: super; }
.pillar-diagnostic h2 sup a { color: var(--red); text-decoration: none; }
.pillar-diagnostic-copy > p:not(.pillar-diagnostic-condition) { max-width: 65ch; margin: 0 0 26px; color: #4d6573; line-height: 1.65; }
.pillar-diagnostic-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; }
.pillar-diagnostic-call { display: flex; flex-direction: column; min-height: 56px; padding: 9px 19px; border-radius: 8px; color: #fff; background: #188552; font-size: .82rem; text-decoration: none; }
.pillar-diagnostic-call strong { color: #fff; font-size: 1.04rem; }
.pillar-diagnostic-call:hover { color: #fff; background: #126b41; }
.pillar-diagnostic-actions > a:last-child { color: #b9232d; font-weight: 700; text-underline-offset: 4px; }
.pillar-diagnostic-condition { margin: 17px 0 0; font-size: .79rem; }
.pillar-diagnostic-condition a { color: #557181; text-underline-offset: 3px; }
.pillar-diagnostic figure { height: 355px; margin: 0; overflow: hidden; border: 4px solid #a9dce7; border-radius: 17px; background: #e5eef2; box-shadow: 10px 10px 0 #e4f0f5; }
.pillar-diagnostic figure img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.pillar-diagnostic a:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
.pillar-main + .site-footer-redesign .footer-phone { order: -1; }

@media (max-width: 1100px) {
  .pillar-hero-grid { grid-template-columns: 1fr .83fr; }
  .pillar-hero h1 { font-size: clamp(2.55rem, 4.2vw, 3rem); }
  .pillar-intro { gap: 35px; }
  .pillar-services-shell { padding-inline: 32px; }
  .pillar-service-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .pillar-hero-grid { grid-template-columns: 1fr; }
  .pillar-hero-copy { padding: 38px 26px 42px; }
  .pillar-hero-visual { height: 300px; margin: 0 26px 28px; }
  .pillar-hero-visual img { min-height: 0; }
  .pillar-hero-remorquage .pillar-hero-visual img { min-height: 0; }
  .pillar-intro, .pillar-details { grid-template-columns: 1fr; gap: 27px; padding-block: 65px; }
  .pillar-help { max-width: 600px; }
  .pillar-services-shell { padding: 55px 27px; }
  .pillar-service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pillar-brands ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pillar-diagnostic-grid { grid-template-columns: 1fr; }
  .pillar-diagnostic figure { max-width: 650px; }
}
@media (max-width: 520px) {
  .pillar-hero { padding: 0; }
  .pillar-hero-shell { border-radius: 0; }
  .pillar-breadcrumbs { padding: 23px 20px 0; }
  .pillar-hero-copy { padding: 35px 20px 37px; }
  .pillar-hero h1 { font-size: clamp(2rem, 9vw, 2.35rem); }
  .pillar-hero-copy > p { font-size: .99rem; }
  .pillar-hero-actions { width: 100%; }
  .pillar-call-primary, .pillar-quote-secondary { justify-content: center; width: 100%; }
  .pillar-hero-visual { height: 230px; margin: 0 20px 23px; }
  .pillar-hero-visual img { min-height: 0; }
  .pillar-intro, .pillar-details { padding-block: 51px; }
  .pillar-services { padding: 0 11px; }
  .pillar-services-shell { padding: 44px 20px 47px; border-radius: 17px; }
  .pillar-services-heading { align-items: flex-start; flex-direction: column; gap: 15px; margin-bottom: 25px; }
  .pillar-service-grid { grid-template-columns: 1fr; gap: 10px; }
  .pillar-service-card { min-height: 120px; padding: 18px 19px; }
  .pillar-service-icon { width: 42px; height: 42px; margin: 0 0 12px; }
  .pillar-service-icon svg { width: 25px; height: 25px; }
  .pillar-service-title { margin-top: 0; }
  .pillar-brands ul { grid-template-columns: 1fr; }
  .pillar-crosslinks { padding-bottom: 50px; }
  .pillar-crosslinks a { width: 100%; }
  .pillar-customer-reviews { padding-top: 48px; }
  .pillar-faq { padding: 50px 15px 35px; }
  .pillar-faq h2 { font-size: 1.8rem; }
  .pillar-faq-intro { margin-bottom: 27px; }
  .pillar-faq-list summary { min-height: 66px; padding: 16px; font-size: 1rem; }
  .pillar-faq-answer { padding: 0 17px 20px; }
  .pillar-faq-cta { width: 100%; }
  .pillar-brands-section { padding: 0 12px 20px; }
  .pillar-brands-shell { padding: 43px 18px 48px; border-radius: 17px; }
  .pillar-brands-shell h2 { font-size: 1.8rem; }
  .pillar-brands-panel { padding: 19px 18px; }
  .pillar-diagnostic h2 { font-size: 1.8rem; }
  .pillar-diagnostic { padding: 42px 0 68px; }
  .pillar-diagnostic figure { height: 260px; }
  .pillar-diagnostic-call { width: 100%; align-items: center; }
}
@media (prefers-reduced-motion: reduce) {
  .photo-track { animation: none; will-change: auto; }
}
/* Garage / À propos : présentation locale et preuves de confiance. */
.garage-about-hero{padding:15px clamp(12px,1.3vw,28px) 0;background:#f7f9fa}.garage-about-hero-inner{overflow:hidden;border-radius:25px;background:linear-gradient(125deg,#102b46,#17486c);color:#fff}.garage-about-hero-inner>.pillar-breadcrumbs{max-width:1380px;margin:auto;padding:23px 24px 0}.garage-about-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;max-width:1380px;min-height:460px;margin:auto}.garage-about-hero-copy{padding:34px 34px 50px 24px}.garage-about-eyebrow,.garage-about-kicker{margin:0 0 14px;color:#7dcfe1;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.garage-about-hero h1{max-width:690px;margin:0 0 20px;color:#fff;font-family:"Spline Sans","DM Sans Local",sans-serif;font-size:clamp(2.7rem,2.5vw,3rem);line-height:1.2;letter-spacing:-.02em}.garage-about-lead{max-width:58ch;margin:0 0 25px;color:#d5e6ef;font-size:1.05rem;line-height:1.65}.garage-about-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px}.garage-about-actions .button{min-height:51px;display:inline-flex;align-items:center;text-decoration:none}.garage-about-secondary{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:5px}.garage-about-google{display:inline-flex;align-items:center;gap:12px;margin-top:31px;color:#fff;text-decoration:none}.garage-about-google .customer-reviews-google{width:35px;height:35px;font-size:1.35rem}.garage-about-google strong,.garage-about-google small{display:block}.garage-about-google small{color:#b7d0de;font-size:.76rem}.garage-about-hero-photo{position:relative;align-self:stretch;min-height:380px;margin:18px 0 18px 10px;overflow:hidden;border-radius:18px 0 0 18px}.garage-about-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.garage-about-hero-photo figcaption{position:absolute;right:18px;bottom:18px;padding:8px 13px;border-radius:5px;background:rgba(16,43,70,.86);color:#fff;font-size:.79rem;font-weight:700}.garage-about-main{background:#fff}.garage-about-container{max-width:1370px;margin:auto;padding-left:34px;padding-right:34px}.garage-about-intro{padding:82px 0 88px}.garage-about-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.garage-about-kicker{color:#386e90}.garage-about-main h2{margin:0;color:#12344f;font-family:"Spline Sans","DM Sans Local",sans-serif;font-size:clamp(2rem,3vw,2.75rem);line-height:1.2;letter-spacing:-.025em;text-wrap:balance}.garage-about-main h2 span{box-shadow:inset 0 -.23em #c9e9ee}.garage-about-prose p,.garage-about-expertise p,.garage-about-visit p{color:#526b7d;line-height:1.75}.garage-about-prose p:first-child{margin-top:0}.garage-about-prose>a,.garage-about-visit-card>a{font-weight:700;color:#144b70;text-decoration:underline;text-underline-offset:5px}.garage-about-method{padding:0 clamp(12px,1.3vw,28px) 28px}.garage-about-method-shell{padding:70px 50px 75px;border-radius:24px;background:#e9f4f7}.garage-about-method-heading{max-width:840px;margin:0 auto 39px;text-align:center}.garage-about-method-heading>p:last-child{color:#526b7d}.garage-about-method-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:1370px;margin:auto}.garage-about-method-grid article{padding:29px 23px 31px;border:1px solid #d5e8ee;border-radius:15px;background:#fff}.garage-about-icon{display:grid;place-items:center;width:53px;height:53px;border:1px solid #bcd7e4;border-radius:12px;background:#f0f7fa;color:#245b7d}.garage-about-icon svg{width:29px;height:29px}.garage-about-method-grid h3{margin:22px 0 10px;color:#12344f;font-size:1.1rem}.garage-about-method-grid p{margin:0;color:#526b7d;font-size:.91rem;line-height:1.65}.garage-about-expertise{padding:85px 0}.garage-about-expertise-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.garage-about-expertise figure{position:relative;margin:0}.garage-about-expertise figure img{display:block;width:100%;height:430px;object-fit:cover;border:5px solid #205a7e;border-radius:17px}.garage-about-expertise figcaption{position:absolute;bottom:17px;left:17px;padding:9px 13px;border-radius:5px;background:#102b46;color:#fff;font-size:.79rem}.garage-about-expertise ul{padding-left:22px;color:#526b7d;line-height:1.8}.garage-about-expertise li{margin:9px 0}.garage-about-expertise li a{font-weight:700;color:#155378}.garage-about-proof{padding:72px 0 78px;background:#f1f7fa}.garage-about-proof-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:27px}.garage-about-proof-head p:last-child{color:#526b7d}.garage-about-proof-head>a{display:flex;align-items:center;gap:12px;flex:none;padding:14px 18px;border:1px solid #c9e0e8;border-radius:12px;background:#fff;color:#12344f;text-decoration:none}.garage-about-proof-head>a strong{font-size:1.4rem}.garage-about-proof-head>a small{color:#526b7d}.garage-about-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.garage-about-review-grid blockquote{margin:0;padding:25px;border:1px solid #d5e6ed;border-radius:14px;background:#fff}.garage-about-review-grid blockquote>div{color:#f1ab2e;letter-spacing:.08em}.garage-about-review-grid blockquote p{min-height:5em;color:#183b53;line-height:1.65}.garage-about-review-grid footer{font-weight:700;color:#12344f}.garage-about-review-grid footer span{font-weight:400;color:#617789}.garage-about-visit{padding:82px 0 100px}.garage-about-visit-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:80px}.garage-about-visit address{margin:23px 0;color:#12344f;font-style:normal;font-size:1.15rem;font-weight:700;line-height:1.55}.garage-about-visit-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px}.garage-about-visit-actions .button{display:inline-flex;min-height:50px;align-items:center;text-decoration:none}.garage-about-visit-actions>a:last-child{color:#155378;font-weight:700;text-underline-offset:4px}.garage-about-visit-card{padding:35px;border:1px solid #d4e5ed;border-radius:17px;background:#f0f7fa}.garage-about-visit-card h3{color:#12344f;font-size:1.35rem}.garage-about-visit-card p{margin-bottom:20px}
@media(max-width:900px){.garage-about-hero-grid,.garage-about-intro-grid,.garage-about-expertise-grid,.garage-about-visit-grid{grid-template-columns:1fr;gap:35px}.garage-about-hero-photo{margin:0 24px 24px;min-height:330px;border-radius:15px}.garage-about-hero-copy{padding:40px 24px}.garage-about-method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.garage-about-intro,.garage-about-expertise,.garage-about-visit{padding:65px 0}.garage-about-expertise figure img{height:380px}}
@media(max-width:600px){.garage-about-hero{padding:12px}.garage-about-hero-inner{border-radius:17px}.garage-about-hero h1{font-size:2.35rem}.garage-about-hero-photo{min-height:240px;margin:0 14px 14px}.garage-about-hero-inner>.pillar-breadcrumbs{padding:20px 20px 0}.garage-about-hero-copy{padding:35px 20px}.garage-about-actions .button{width:100%;justify-content:center;text-align:center}.garage-about-container{padding-left:22px;padding-right:22px}.garage-about-intro,.garage-about-expertise,.garage-about-visit{padding:54px 0}.garage-about-method{padding:0 12px 20px}.garage-about-method-shell{padding:50px 20px;border-radius:17px}.garage-about-method-grid,.garage-about-review-grid{grid-template-columns:1fr}.garage-about-method-grid article{padding:24px}.garage-about-expertise figure img{height:270px}.garage-about-proof{padding:55px 0}.garage-about-proof-head{align-items:start;flex-direction:column}.garage-about-proof-head>a{width:100%}.garage-about-visit-actions .button{width:100%;justify-content:center}.garage-about-visit-card{padding:25px}}
/* Sous-page : dépannage et réparation moteur */
.engine-page{background:#fff}.engine-wrap{max-width:1370px;margin:auto;padding-inline:34px}.engine-hero{padding:15px clamp(12px,1.3vw,28px) 0;background:#f7f9fa}.engine-hero-shell{overflow:hidden;border-radius:24px;background:#102b46;color:#fff}.engine-hero-shell>.pillar-breadcrumbs{max-width:1370px;margin:auto;padding:22px 34px 0}.engine-hero-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;max-width:1370px;min-height:455px;margin:auto}.engine-hero-copy{padding:31px 30px 45px 34px}.engine-overline{margin:0 0 15px;color:#99d0de;font-size:.82rem;font-weight:700}.engine-hero h1{max-width:730px;margin:0 0 20px;color:#fff;font-family:"Spline Sans","DM Sans Local",sans-serif;font-size:clamp(2.7rem,2.5vw,3rem);line-height:1.19;letter-spacing:-.025em;text-wrap:balance}.engine-hero-copy>p:not(.engine-overline){max-width:60ch;color:#d3e3ed;font-size:1.02rem;line-height:1.65}.engine-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:17px;margin-top:26px}.engine-call{display:inline-flex;flex-direction:column;gap:2px;padding:10px 23px;border-radius:7px;background:#e52c37;color:#fff;font-size:.78rem;font-weight:700;text-decoration:none}.engine-call strong{color:#fff;font-size:1.08rem}.engine-call:hover{background:#c92230;color:#fff}.engine-contact{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:4px}.engine-rating{display:inline-flex;align-items:center;gap:11px;margin-top:27px;color:#fff;text-decoration:none}.engine-rating .customer-reviews-google{width:34px;height:34px;font-size:1.35rem}.engine-rating strong,.engine-rating small{display:block}.engine-rating small{color:#bed5e2;font-size:.77rem}.engine-hero-photo{position:relative;height:390px;margin:15px 0 15px 15px;overflow:hidden;border-radius:16px 0 0 16px;background:#24445e}.engine-hero-photo img{width:100%;height:100%;object-fit:cover}.engine-hero-photo figcaption{position:absolute;bottom:18px;right:18px;padding:8px 13px;border-radius:6px;background:rgba(16,43,70,.88);font-size:.78rem;font-weight:700}.engine-label{margin:0 0 13px;color:#326e90;font-size:.8rem;font-weight:700}.engine-page h2{margin:0;color:#12344f;font-family:"Spline Sans","DM Sans Local",sans-serif;font-size:clamp(2rem,3vw,2.75rem);line-height:1.21;letter-spacing:-.025em;text-wrap:balance}.engine-page h3{color:#12344f}.engine-page p{line-height:1.7}.engine-orient{padding:84px 0}.engine-orient-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.engine-orient-grid>div:first-child>p:last-child{max-width:61ch;color:#526c7e}.engine-symptoms{padding:30px 35px;border-left:5px solid #2a6a90;background:#f0f7fa}.engine-symptoms h3{margin:0 0 20px;font-size:1.25rem}.engine-symptoms ul{padding:0;margin:0;list-style:none}.engine-symptoms li{display:flex;align-items:center;gap:15px;padding:13px 0;border-bottom:1px solid #cddfe8;color:#193d57}.engine-symptoms li svg{flex:none;width:27px;height:27px;color:#27648a}.engine-symptoms>p{margin:19px 0 0;color:#526c7e;font-size:.9rem}.engine-work{padding:0 clamp(12px,1.3vw,28px) 25px}.engine-work-shell{padding:70px 0 75px;border-radius:23px;background:#e9f4f7}.engine-work-head{max-width:840px;margin:0 auto 35px;text-align:center}.engine-work-head>p:last-child{color:#526c7e}.engine-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.engine-work-grid article{padding:28px 27px 30px;border:1px solid #d0e4ec;border-radius:12px;background:#fff}.engine-work-icon{display:grid;place-items:center;width:49px;height:49px;border-radius:10px;background:#e8f3f8;color:#27648a}.engine-work-icon svg{width:29px;height:29px}.engine-work-grid h3{margin:22px 0 12px;font-size:1.15rem}.engine-work-grid ul{padding-left:20px;margin:0;color:#526c7e;line-height:1.75}.engine-work-grid li{margin:6px 0}.engine-work-note{max-width:830px;margin:26px auto 0;color:#516c7c;font-size:.86rem;text-align:center}.engine-path{padding:83px 0 88px}.engine-path-heading{max-width:860px;margin-bottom:35px}.engine-path ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0;margin:0;list-style:none;border-top:2px solid #cadfe9}.engine-path li{position:relative;display:flex;gap:15px;padding:27px 16px 0 0}.engine-path li>span{display:grid;place-items:center;flex:none;width:37px;height:37px;border-radius:8px;background:#1b5a80;color:#fff;font-weight:700}.engine-path li h3{margin:2px 0 8px;font-size:1.05rem}.engine-path li p{margin:0;color:#526c7e;font-size:.89rem}.engine-path-cta{display:flex;align-items:center;gap:22px;margin-top:35px}.engine-path-cta>a:first-child{padding:13px 19px;border-radius:7px;background:#e52c37;color:#fff;font-weight:700;text-decoration:none}.engine-path-cta>a:last-child{color:#205a80;font-weight:700}.engine-links{padding:61px 0 68px;background:#f2f7fa}.engine-links>.engine-wrap>p{color:#526c7e}.engine-links-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:28px 0 23px}.engine-links-grid a{display:flex;align-items:center;justify-content:space-between;gap:13px;min-height:92px;padding:17px 20px;border:1px solid #cbdfe8;border-radius:10px;background:#fff;color:#153b57;font-weight:700;text-decoration:none}.engine-links-grid a:hover{border-color:#25749b}.engine-parent-link{color:#205a80;font-weight:700;text-underline-offset:4px}.engine-reviews{padding:72px 0 82px}.engine-reviews-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:27px}.engine-reviews-head>a{flex:none;color:#205a80;font-weight:700}.engine-reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.engine-reviews-grid blockquote{margin:0;padding:25px;border:1px solid #d4e3ea;border-radius:12px;background:#fff}.engine-reviews-grid blockquote>span{color:#efad36}.engine-reviews-grid blockquote p{min-height:6em;color:#264b63}.engine-reviews-grid blockquote footer{color:#12344f;font-weight:700}.engine-faq{padding:70px 0;background:#edf5f8}.engine-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.engine-faq-grid>div:first-child>p:last-child{color:#526c7e}.engine-faq-list details{border-bottom:1px solid #c6dbe5}.engine-faq-list details:first-child{border-top:1px solid #c6dbe5}.engine-faq-list summary{position:relative;padding:20px 35px 20px 0;color:#12344f;font-weight:700;cursor:pointer}.engine-faq-list summary::marker{color:#24688d}.engine-faq-list details p{margin:0 0 20px;color:#526c7e}.engine-brands{padding:68px 0 78px}.engine-brands p{max-width:82ch;color:#526c7e}.engine-brands details{margin-top:25px;border:1px solid #cbdfe8;border-radius:11px;background:#f5f9fa}.engine-brands summary{padding:18px 22px;color:#164d70;font-weight:700;cursor:pointer}.engine-brands ul{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px 17px;padding:22px 35px;margin:0;border-top:1px solid #d7e7ee;list-style:none}.engine-brands li{font-size:.88rem;color:#496475}.engine-final{padding:28px clamp(12px,1.3vw,28px) 45px}.engine-final>.engine-wrap{display:flex;align-items:center;justify-content:space-between;gap:35px;max-width:none;padding:43px clamp(26px,6vw,95px);border-radius:19px;background:#eaf4f8}.engine-final h2{max-width:750px}.engine-final p{margin-bottom:0;color:#526c7e}.engine-final a{display:flex;flex-direction:column;flex:none;padding:12px 21px;border-radius:7px;background:#177d4e;color:#fff;font-size:.84rem;text-decoration:none}.engine-final a strong{color:#fff;font-size:1.05rem}.engine-page a:focus-visible,.engine-page summary:focus-visible,.engine-hero a:focus-visible{outline:3px solid #d82f3b;outline-offset:3px}
@media(max-width:1050px){.engine-hero-grid{grid-template-columns:1fr .85fr}.engine-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.engine-brands ul{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.engine-hero-grid,.engine-orient-grid,.engine-faq-grid{grid-template-columns:1fr;gap:33px}.engine-hero-photo{height:310px;margin:0 24px 24px;border-radius:13px}.engine-work-grid,.engine-reviews-grid{grid-template-columns:1fr}.engine-path ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.engine-final>.engine-wrap{align-items:flex-start;flex-direction:column}.engine-brands ul{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.engine-wrap{padding-inline:20px}.engine-hero{padding:0}.engine-hero-shell{border-radius:0}.engine-hero-shell>.pillar-breadcrumbs{padding:20px 20px 0}.engine-hero-copy{padding:30px 20px 38px}.engine-hero h1{font-size:clamp(2rem,9vw,2.35rem)}.engine-hero-actions>*{width:100%;justify-content:center;text-align:center}.engine-hero-photo{height:230px;margin:0 20px 22px}.engine-orient,.engine-path,.engine-reviews,.engine-brands{padding:52px 0}.engine-symptoms{padding:24px 20px}.engine-work{padding:0 12px 20px}.engine-work-shell{padding:48px 0;border-radius:16px}.engine-work-grid article{padding:22px}.engine-path ol,.engine-links-grid{grid-template-columns:1fr}.engine-path-cta{align-items:stretch;flex-direction:column}.engine-path-cta>a:first-child{text-align:center}.engine-links{padding:50px 0}.engine-reviews-head{align-items:flex-start;flex-direction:column}.engine-faq{padding:52px 0}.engine-brands ul{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 21px}.engine-final{padding:15px 12px 30px}.engine-final>.engine-wrap{padding:32px 22px}.engine-final a{width:100%;align-items:center}}
/* Page moteur : mêmes volumes et composants que les pages pères. */
.motor-hero .pillar-hero-grid{min-height:445px}.motor-hero .pillar-hero-visual img{object-position:center}.motor-expertise{padding:0 clamp(12px,1.3vw,28px) 25px;background:#fff}.motor-expertise-inner{padding:68px clamp(24px,5vw,80px) 58px;border-radius:24px;background:#f0f7fa}.motor-expertise-heading{max-width:830px;margin:0 auto 32px;text-align:center}.motor-expertise h2{margin:0;color:#12344f;font-family:"Spline Sans","DM Sans Local",sans-serif;font-size:clamp(2rem,3vw,2.75rem);line-height:1.2;letter-spacing:-.025em}.motor-expertise-heading p{color:#536d7d;line-height:1.65}.motor-expertise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;max-width:1370px;margin:auto}.motor-expertise-grid article{padding:27px 25px 30px;border:1px solid #d6e6ed;border-radius:14px;background:#fff}.motor-expertise-grid .pillar-service-icon{margin:0 0 18px}.motor-expertise-grid h3{margin:0 0 13px;color:#12344f;font-size:1.14rem}.motor-expertise-grid ul{margin:0;padding-left:20px;color:#536d7d;line-height:1.7}.motor-expertise-grid li{margin:6px 0}.motor-expertise-note{max-width:800px;margin:25px auto 0;color:#536d7d;font-size:.88rem;line-height:1.6;text-align:center}.motor-related{padding-top:0}.motor-related .pillar-service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.motor-page .pillar-intro{padding-bottom:72px}
@media(max-width:950px){.motor-related .pillar-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.motor-expertise-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.motor-expertise{padding:0 12px 18px}.motor-expertise-inner{padding:44px 20px;border-radius:17px}.motor-expertise-grid,.motor-related .pillar-service-grid{grid-template-columns:1fr}.motor-page .pillar-intro{padding-bottom:50px}}
.motor-expertise-inner{background:#fff}.motor-expertise-grid article{border:0;border-left:2px solid #d6e7ee;border-radius:0;padding-left:28px}.motor-expertise-note{border-top:1px solid #d9e7ed;padding-top:18px}
.motor-featured-brands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:1000px;margin:30px auto 24px;padding:0;list-style:none;text-align:left}.motor-featured-brands li{padding:15px 18px;border:1px solid #cde0e9;border-radius:9px;background:#fff;color:#183e59;font-size:.92rem;font-weight:700}.motor-featured-brands+.pillar-brands-panel{max-width:1000px;margin-inline:auto}
@media(max-width:700px){.motor-featured-brands{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:450px){.motor-featured-brands{grid-template-columns:1fr}}
.motor-models{padding:70px 0 88px;background:#fff}.motor-models-inner{max-width:1370px}.motor-models-heading{max-width:890px;margin:0 auto 32px;text-align:center}.motor-models h2{margin:0;color:#12344f;font-family:"Spline Sans","DM Sans Local",sans-serif;font-size:clamp(2rem,3vw,2.75rem);line-height:1.2;letter-spacing:-.025em}.motor-models-heading p,.motor-models-note{color:#526c7e;line-height:1.65}.motor-models-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.motor-models-grid article{padding:22px 25px 23px;border-top:3px solid #246b92;background:#f1f7fa}.motor-models-grid h3{margin:0 0 9px;color:#12344f;font-size:1.15rem}.motor-models-grid p{margin:0;color:#526c7e;line-height:1.65;font-size:.92rem}.motor-models-grid a{color:#185f83;font-weight:700;text-underline-offset:3px}.motor-models-note{margin:25px 0 0;font-size:.84rem;text-align:center}
.motor-models-action{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:24px;padding:22px 26px;border-radius:14px;background:#12344f;color:#fff}.motor-models-action p{max-width:720px;margin:0;line-height:1.55}.motor-models-action a{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:215px;padding:12px 20px;border-radius:8px;background:#48a76b;color:#fff;font-weight:700;text-decoration:none;white-space:nowrap}.motor-models-action a:hover,.motor-models-action a:focus-visible{background:#358d56}.motor-models-action a span{font-size:.9rem}.motor-models-note a{color:#185f83;text-underline-offset:3px}
@media(max-width:750px){.motor-models{padding:55px 0 65px}.motor-models-grid{grid-template-columns:1fr}.motor-models-grid article{padding:21px}.motor-models-inner{padding-inline:20px}}
@media(max-width:750px){.motor-models-action{flex-direction:column;align-items:stretch;padding:22px}.motor-models-action a{width:100%}}
.service-original-content h2{margin:32px 0 12px;color:#12344f;font-family:"Spline Sans","DM Sans Local",sans-serif;font-size:clamp(1.4rem,2vw,1.85rem);line-height:1.25}.service-original-content h3{margin:25px 0 8px;color:#174c6d;font-size:1.16rem}.service-original-content p{margin:0 0 14px}.service-original-content a{color:#185f83;text-underline-offset:3px}.service-hero .pillar-hero-copy>p{max-width:720px}.service-page .pillar-intro-main{min-width:0}
.service-cases .motor-models-grid article{display:flex;flex-direction:column}.service-cases .motor-models-grid .service-case-source{display:inline-block;align-self:flex-start;margin-top:auto;padding-top:18px;color:#185f83;font-size:.82rem;font-weight:700;text-underline-offset:3px}.service-cases .service-case-guide{border-top-color:#da2837;background:#fff6f7}
.contact-page{background:#fff}.contact-hero{padding:16px clamp(12px,1.3vw,28px) 0;background:#fff}.contact-hero-shell{overflow:hidden;border-radius:23px;background:#112d47;color:#fff}.contact-hero-shell>.pillar-breadcrumbs{max-width:1400px;margin:auto;padding:25px 34px 0}.contact-hero-shell>.pillar-breadcrumbs a,.contact-hero-shell>.pillar-breadcrumbs{color:#b9d3e2}.contact-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);align-items:center;gap:75px;max-width:1400px;margin:auto;padding:58px 34px 77px}.contact-hero h1{margin:0;color:#fff;font-family:"Spline Sans","DM Sans Local",sans-serif;font-size:clamp(2.65rem,3.7vw,4rem);line-height:1.13;letter-spacing:-.035em;text-wrap:balance}.contact-hero-copy>p{max-width:59ch;margin:22px 0 0;color:#cce0eb;font-size:1.08rem;line-height:1.65}.contact-hero-shortcuts{display:flex;flex-wrap:wrap;gap:12px 25px;margin-top:28px}.contact-hero-shortcuts a{color:#eaf5fa;font-weight:700;text-underline-offset:5px}.contact-hero-shortcuts a span{color:#8fbed3}.contact-callout{padding:28px 31px 32px;border:1px solid #44637a;border-radius:16px;background:#1b3a55}.contact-callout-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:11px;background:#dceef4;color:#174765}.contact-callout-icon svg{width:28px;height:28px}.contact-callout>p{margin:24px 0 9px;color:#d4e4ee;font-size:.92rem;font-weight:700}.contact-callout>a{display:block;width:fit-content;color:#fff;font-family:"Spline Sans","DM Sans Local",sans-serif;font-size:clamp(1.8rem,2.8vw,2.8rem);font-weight:700;letter-spacing:-.03em;text-decoration:none}.contact-callout>a:hover{text-decoration:underline;text-underline-offset:5px}.contact-callout-help{display:block;max-width:33ch;margin-top:10px;color:#b7d1e0;font-size:.88rem;line-height:1.5}.contact-main-shell{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(310px,.85fr);gap:clamp(34px,6vw,90px);max-width:1370px;margin:auto;padding:80px 34px 88px}.contact-section-head{display:flex;align-items:flex-start;gap:17px;margin-bottom:31px}.contact-section-icon{display:grid;place-items:center;flex:none;width:51px;height:51px;border:1px solid #c4dbe6;border-radius:10px;background:#eff7fa;color:#245d80}.contact-section-icon svg{width:29px;height:29px}.contact-section-head h2,.contact-location h2{margin:2px 0 9px;color:#12344f;font-family:"Spline Sans","DM Sans Local",sans-serif;font-size:clamp(1.8rem,2.4vw,2.35rem);line-height:1.2}.contact-section-head p{max-width:62ch;margin:0;color:#526c7e;line-height:1.65}.contact-form-frame{padding:30px 33px 32px;border:1px solid #d5e5ec;border-radius:14px;background:#f4f9fb}.contact-form-frame .wpcf7 form{margin:0}.contact-form-frame .wpcf7 label{display:block;margin:0 0 17px;color:#183d56;font-size:.91rem;font-weight:700;line-height:1.45}.contact-form-frame .wpcf7 label .wpcf7-form-control-wrap{display:block;margin-top:7px}.contact-form-frame .wpcf7 input:not([type=submit]),.contact-form-frame .wpcf7 textarea{display:block;width:100%;min-height:48px;padding:11px 14px;border:1px solid #bacfda;border-radius:7px;background:#fff;color:#173a52;font:inherit;font-weight:400;box-sizing:border-box}.contact-form-frame .wpcf7 textarea{min-height:150px;resize:vertical}.contact-form-frame .wpcf7 input:focus,.contact-form-frame .wpcf7 textarea:focus{border-color:#246e95;outline:3px solid rgba(36,110,149,.16)}.contact-form-frame .wpcf7 input[type=submit]{min-width:180px;padding:13px 20px;border:0;border-radius:7px;background:#df2938;color:#fff;font:inherit;font-weight:700;cursor:pointer}.contact-form-frame .wpcf7 input[type=submit]:hover{background:#c52331}.contact-form-frame .wpcf7-not-valid-tip{margin-top:5px;font-size:.8rem}.contact-form-frame .wpcf7-response-output{margin:18px 0 0!important;border-radius:7px}.contact-location{align-self:start;overflow:hidden;border-radius:15px;background:#eaf4f7}.contact-location-top{padding:34px 37px 36px}.contact-location-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:20px;border-radius:10px;background:#d3e8f0;color:#165274;font-size:2rem;font-weight:700}.contact-location address{margin:20px 0 25px;color:#234b63;font-size:1.08rem;font-style:normal;line-height:1.65}.contact-location address strong{color:#12344f}.contact-directions{display:inline-flex;justify-content:space-between;gap:22px;min-width:220px;padding:12px 17px;border-radius:7px;background:#12344f;color:#fff;font-weight:700;text-decoration:none}.contact-directions:hover{background:#1e587a;color:#fff}.contact-workshop-photo{position:relative;min-height:250px;margin:0;background:#1c3a53}.contact-workshop-photo img{display:block;width:100%;height:280px;object-fit:cover}.contact-workshop-photo figcaption{position:absolute;right:0;bottom:0;left:0;padding:34px 25px 17px;background:linear-gradient(transparent,rgba(12,32,48,.85));color:#fff;font-size:.85rem;font-weight:700}.contact-next{padding:24px clamp(12px,1.3vw,28px) 40px}.contact-next-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;max-width:1370px;margin:auto;padding:25px 30px;border-radius:13px;background:#f1f7f9}.contact-next p{margin:0;color:#12344f;font-weight:700}.contact-next-inner>div{display:flex;flex-wrap:wrap;gap:10px 20px}.contact-next a{color:#205a7c;font-size:.91rem;font-weight:700;text-underline-offset:4px}.contact-page a:focus-visible,.contact-hero a:focus-visible{outline:3px solid #e52c37;outline-offset:4px}@media(max-width:850px){.contact-hero-grid{grid-template-columns:1fr;gap:34px;padding:43px 28px 54px}.contact-callout{max-width:480px}.contact-main-shell{grid-template-columns:1fr;gap:45px;padding:61px 28px 67px}.contact-location{max-width:640px}.contact-next-inner{align-items:flex-start;flex-direction:column}}@media(max-width:550px){.contact-hero{padding-inline:10px}.contact-hero-shell{border-radius:16px}.contact-hero-shell>.pillar-breadcrumbs{padding:20px 22px 0}.contact-hero-grid{padding:34px 22px 42px}.contact-hero h1{font-size:clamp(2.3rem,9vw,3rem)}.contact-hero-copy>p{font-size:.98rem}.contact-callout{padding:23px}.contact-main-shell{padding:52px 20px 57px}.contact-section-head{gap:12px}.contact-section-icon{width:43px;height:43px}.contact-form-frame{padding:22px 18px}.contact-location-top{padding:27px 25px}.contact-workshop-photo img{height:230px}.contact-next{padding:0 12px 32px}.contact-next-inner{padding:22px}}
.contact-callout>a{padding:7px 16px;border-radius:8px;background:#2b9957}.contact-callout>a:hover{background:#247f49;text-decoration:none}.contact-form-frame .wpcf7 form>p{margin:0 0 16px}.contact-form-frame .wpcf7 form>p:last-of-type{margin-bottom:0}
/* Contact: editorial layout with immediate access to all three contact methods. */
.contact-v2{background:#fff;color:#173b55}.contact-v2-hero{padding:15px clamp(12px,1.3vw,28px) 0}.contact-v2-hero-inner{overflow:hidden;border-radius:24px;background:#112d47;color:#fff}.contact-v2-hero .pillar-breadcrumbs{max-width:1390px;margin:auto;padding:22px 28px 0;color:#c4dce8}.contact-v2-hero .pillar-breadcrumbs a{color:#c4dce8}.contact-v2-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:55px;max-width:1390px;min-height:390px;margin:auto;padding:32px 28px 42px}.contact-v2-eyebrow,.contact-v2-kicker{margin:0 0 12px;color:#4083a3;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.contact-v2-eyebrow{color:#9fd1de}.contact-v2 h1,.contact-v2 h2{font-family:"Spline Sans","DM Sans Local",sans-serif;letter-spacing:-.025em;text-wrap:balance}.contact-v2 h1{max-width:680px;margin:0;color:#fff;font-size:clamp(2.55rem,3vw,3.1rem);line-height:1.16}.contact-v2-hero-copy>p:not(.contact-v2-eyebrow){max-width:58ch;margin:20px 0 0;color:#d0e2ea;font-size:1.05rem;line-height:1.65}.contact-v2-proof{display:inline-flex;align-items:center;gap:11px;margin-top:26px;color:#fff;text-decoration:none}.contact-v2-proof .customer-reviews-google{display:grid;place-items:center;width:35px;height:35px;font-size:1.5rem}.contact-v2-proof strong,.contact-v2-proof small{display:block}.contact-v2-proof small{color:#c4dce8;font-size:.76rem}.contact-v2-hero-photo{position:relative;height:345px;margin:0;overflow:hidden;border-radius:15px;background:#244963}.contact-v2-hero-photo img{display:block;width:100%;height:100%;object-fit:cover}.contact-v2-hero-photo figcaption{position:absolute;right:14px;bottom:14px;padding:8px 12px;border-radius:5px;background:rgba(17,45,71,.88);color:#fff;font-size:.78rem;font-weight:700}.contact-v2-access{position:relative;z-index:1;max-width:1310px;margin:-22px auto 0;padding:0 22px}.contact-v2-access-inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:25px 10px;border:1px solid #dbe8ed;border-radius:15px;background:#fff;box-shadow:0 12px 38px rgba(17,45,71,.09)}.contact-v2-access-inner>div{display:flex;gap:16px;padding:7px 24px;border-right:1px solid #dbe8ed}.contact-v2-access-inner>div:last-child{border-right:0}.contact-v2-access-icon{display:grid;place-items:center;flex:none;width:41px;height:41px;border-radius:10px;background:#e9f3f7;color:#215c7e;font-size:1.42rem}.contact-v2-access-label{display:block;margin:0 0 5px;color:#5c7788;font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.contact-v2-access strong{display:block;margin-bottom:8px;color:#12344f;font-size:1.07rem}.contact-v2-access a{color:#155978;font-size:.87rem;font-weight:800;text-underline-offset:4px}.contact-v2-access a.contact-v2-call{color:#26804b}.contact-v2-container{max-width:1320px;margin:auto;padding-inline:28px}.contact-v2-message{padding:88px 0 98px}.contact-v2-heading{max-width:820px;margin:0 0 39px}.contact-v2 h2{margin:0 0 14px;color:#12344f;font-size:clamp(2rem,2.8vw,2.7rem);line-height:1.2}.contact-v2-heading>p:last-child,.contact-v2-visit-copy>p:not(.contact-v2-kicker){max-width:70ch;color:#526c7d;line-height:1.7}.contact-v2-message-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(315px,.9fr);gap:48px;align-items:start}.contact-v2-form{padding:35px 39px 39px;border:1px solid #d5e5eb;border-radius:15px;background:#f7fafb}.contact-v2-form h3,.contact-v2-guide h3{margin:0 0 7px;color:#12344f;font-family:"Spline Sans","DM Sans Local",sans-serif;font-size:1.55rem}.contact-v2-form>p{margin:0 0 27px;color:#607989;font-size:.89rem}.contact-v2-form .wpcf7 form{margin:0}.contact-v2-form .wpcf7 form>p{margin:0 0 16px}.contact-v2-form .wpcf7 label{display:block;color:#1e475e;font-size:.9rem;font-weight:700}.contact-v2-form .wpcf7-form-control-wrap{display:block;margin-top:7px}.contact-v2-form .wpcf7 input:not([type=submit]),.contact-v2-form .wpcf7 textarea{display:block;box-sizing:border-box;width:100%;min-height:46px;padding:10px 13px;border:1px solid #bdcfd8;border-radius:7px;background:#fff;color:#14384e;font:inherit;font-weight:400}.contact-v2-form .wpcf7 textarea{min-height:135px;resize:vertical}.contact-v2-form .wpcf7 input[type=submit]{min-width:190px;padding:13px 22px;border:0;border-radius:7px;background:#df2938;color:#fff;font:inherit;font-weight:800;cursor:pointer}.contact-v2-form .wpcf7 input:focus,.contact-v2-form .wpcf7 textarea:focus{outline:3px solid #a9d8e7;outline-offset:1px}.contact-v2-guide{padding:12px 0 0 8px}.contact-v2-guide h3{margin-bottom:24px}.contact-v2-guide-item{display:flex;gap:17px;padding:20px 0;border-top:1px solid #dbe7ec}.contact-v2-guide-item>span{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:10px;background:#eaf4f7;color:#255f82}.contact-v2-guide-item svg{width:26px;height:26px}.contact-v2-guide-item h4{margin:0 0 6px;color:#143a54;font-size:1rem}.contact-v2-guide-item p{margin:0;color:#587284;font-size:.91rem;line-height:1.65}.contact-v2-guide-note{margin-top:24px;padding:22px 24px;border-left:4px solid #df2938;background:#f0f6f8}.contact-v2-guide-note strong{color:#143a54}.contact-v2-guide-note p{margin:7px 0 0;color:#587284;font-size:.91rem;line-height:1.6}.contact-v2-visit{padding:0 clamp(12px,1.3vw,28px) 38px}.contact-v2-visit-inner{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:50px;max-width:none;padding:65px max(28px,calc((100vw - 1320px)/2));border-radius:23px;background:#eaf4f7}.contact-v2-visit-copy>p:not(.contact-v2-kicker){max-width:56ch}.contact-v2-visit address{margin:25px 0;color:#143a54;font-size:1.08rem;font-style:normal;line-height:1.7}.contact-v2-visit-actions{display:flex;flex-wrap:wrap;gap:11px}.contact-v2-visit-actions a{display:inline-flex;align-items:center;min-height:46px;padding:10px 18px;border-radius:7px;background:#133d5b;color:#fff;font-weight:700;text-decoration:none}.contact-v2-visit-actions a:last-child{background:#29814b}.contact-v2-visit figure{position:relative;min-height:320px;margin:0;overflow:hidden;border-radius:14px;background:#173b55}.contact-v2-visit img{display:block;width:100%;height:340px;object-fit:cover}.contact-v2-visit figcaption{position:absolute;right:0;bottom:0;left:0;padding:35px 20px 16px;background:linear-gradient(transparent,rgba(13,35,53,.9));color:#fff;font-size:.82rem;font-weight:700}.contact-v2 a:focus-visible{outline:3px solid #df2938;outline-offset:4px}
@media(max-width:900px){.contact-v2-hero-grid{gap:25px}.contact-v2-access-inner>div{padding-inline:14px}.contact-v2-message-grid{gap:25px}.contact-v2-visit-inner{gap:28px}}
@media(max-width:740px){.contact-v2-hero-grid,.contact-v2-message-grid,.contact-v2-visit-inner{grid-template-columns:1fr}.contact-v2-hero-grid{padding-bottom:25px}.contact-v2-hero-photo{height:260px}.contact-v2-access{margin:20px auto 0}.contact-v2-access-inner{grid-template-columns:1fr;padding:4px 20px}.contact-v2-access-inner>div{padding:16px 0;border-right:0;border-bottom:1px solid #dbe8ed}.contact-v2-access-inner>div:last-child{border-bottom:0}.contact-v2-guide{padding:0}.contact-v2-message{padding:58px 0 68px}.contact-v2-visit-inner{padding:42px 26px}.contact-v2-visit figure{min-height:240px}.contact-v2-visit img{height:270px}}
@media(max-width:550px){.contact-v2-hero{padding:10px 10px 0}.contact-v2-hero-inner{border-radius:16px}.contact-v2-hero .pillar-breadcrumbs{padding:19px 20px 0}.contact-v2-hero-grid{padding:32px 20px 20px}.contact-v2 h1{font-size:2.35rem}.contact-v2-hero-photo{height:220px}.contact-v2-access{padding-inline:20px}.contact-v2-container{padding-inline:20px}.contact-v2-heading{margin-bottom:27px}.contact-v2-form{padding:24px 20px}.contact-v2-form .wpcf7 input[type=submit]{width:100%}.contact-v2-visit{padding:0 10px 25px}.contact-v2-visit-inner{padding:39px 20px;border-radius:16px}.contact-v2-visit-actions a{width:100%;justify-content:center}.contact-v2-visit img{height:230px}}
/* PrestaWeb: editorial credit page within the Jiroum Auto design system. */
.presta-page{background:#fff;color:#173a53}.presta-container{max-width:1320px;margin:auto;padding-inline:30px}.presta-page h1,.presta-page h2{font-family:"Spline Sans","DM Sans Local",sans-serif;letter-spacing:-.025em;text-wrap:balance}.presta-kicker{margin:0 0 13px;color:#356f90;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.presta-hero{padding:15px clamp(12px,1.3vw,28px) 0}.presta-hero-inner{overflow:hidden;border-radius:24px;background:#112d47;color:#fff}.presta-hero .pillar-breadcrumbs{max-width:1320px;margin:auto;padding:22px 30px 0;color:#bdd7e5}.presta-hero .pillar-breadcrumbs a{color:#bdd7e5}.presta-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:75px;max-width:1320px;min-height:475px;margin:auto;padding:36px 30px 57px}.presta-hero .presta-kicker{color:#9bd0dc}.presta-hero h1{max-width:780px;margin:0;color:#fff;font-size:clamp(2.65rem,3.2vw,3.45rem);line-height:1.15}.presta-hero-grid>div:first-child>p:not(.presta-kicker){max-width:68ch;margin:22px 0;color:#cce0eb;font-size:1.04rem;line-height:1.7}.presta-hero-links{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:27px}.presta-hero-links a:first-child,.presta-software-actions a:first-child{display:inline-flex;padding:13px 19px;border-radius:7px;background:#df2938;color:#fff;font-weight:800;text-decoration:none}.presta-hero-links a:last-child{color:#fff;font-weight:700;text-underline-offset:4px}.presta-hero-mark{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:315px;padding:32px;overflow:hidden;border:1px solid #4a6d83;border-radius:18px;background:radial-gradient(circle at 90% 15%,#376b87 0,#183d59 40%,#112d47 80%)}.presta-hero-mark>span{position:relative;z-index:1;font-family:"Spline Sans",sans-serif;font-size:clamp(2.3rem,4vw,4.2rem);font-weight:800;letter-spacing:-.07em}.presta-hero-mark>span span{color:#72c2d4}.presta-hero-mark small{z-index:1;color:#c5dce7}.presta-hero-mark i{position:absolute;right:-70px;bottom:-115px;width:340px;height:340px;border:2px solid rgba(140,203,220,.22);border-radius:50%;box-shadow:0 0 0 48px rgba(140,203,220,.08),0 0 0 100px rgba(140,203,220,.045)}.presta-hero-mark b{z-index:1;align-self:flex-end;margin-top:72px;color:#a5d3df;font-size:1.2rem;line-height:1.25;text-align:right}.presta-intro{padding:82px 0 91px}.presta-intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px}.presta-page h2{margin:0;color:#12344f;font-size:clamp(2.05rem,2.8vw,2.75rem);line-height:1.2}.presta-intro-grid>div:last-child p{margin:0 0 17px;color:#536e7e;line-height:1.8}.presta-expertise{padding:0 clamp(12px,1.3vw,28px) 25px}.presta-expertise-inner{padding:70px 0 73px;border-radius:23px;background:#eaf4f7}.presta-section-head{max-width:800px;margin-bottom:33px}.presta-section-head>p:last-child{color:#536e7e;line-height:1.7}.presta-expertise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.presta-expertise-grid article{min-height:235px;padding:29px 27px;border:1px solid #d5e6ed;border-radius:13px;background:#fff}.presta-expertise-grid article>span{color:#29799b;font-size:.86rem;font-weight:800;letter-spacing:.12em}.presta-expertise-grid h3{margin:29px 0 12px;color:#12344f;font-size:1.21rem}.presta-expertise-grid p{margin:0;color:#557183;font-size:.92rem;line-height:1.7}.presta-text-link{display:inline-block;margin-top:27px;color:#185a7a;font-weight:800;text-underline-offset:4px}.presta-software{padding:90px 0 95px}.presta-software-grid{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:85px}.presta-software-grid>div:first-child>p:not(.presta-kicker){max-width:65ch;color:#536e7e;line-height:1.75}.presta-software-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:27px}.presta-software-actions a:last-child{color:#185a7a;font-weight:800;text-underline-offset:4px}.presta-software-panel{padding:30px;border:1px solid #bdd8e5;border-radius:18px;background:#f1f8fa;box-shadow:16px 16px 0 #dceef3}.presta-software-panel-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:24px;border-bottom:1px solid #cddfe7}.presta-software-panel-top strong{color:#12344f;font-size:1.35rem;letter-spacing:-.04em}.presta-software-panel-top strong span{color:#317fa0}.presta-software-panel-top>span{color:#5e7b89;font-size:.67rem;font-weight:800;letter-spacing:.08em}.presta-software-flow{display:flex;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid #cddfe7}.presta-software-flow>span{display:grid;place-items:center;flex:none;width:41px;height:41px;border-radius:9px;background:#1b5b7d;color:#fff;font-weight:800}.presta-software-flow strong,.presta-software-flow small{display:block}.presta-software-flow strong{color:#143a52}.presta-software-flow small{margin-top:3px;color:#607989}.presta-software-panel>p{margin:20px 0 0;color:#607989;font-size:.78rem;line-height:1.55}.presta-outro{padding:70px 0 90px;background:#f3f8fa}.presta-outro-links{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:29px}.presta-outro-links a{position:relative;display:flex;flex-direction:column;min-height:150px;padding:28px 30px;border:1px solid #d4e5ec;border-radius:12px;background:#fff;text-decoration:none}.presta-outro-links a>span{color:#367391;font-size:.73rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.presta-outro-links strong{margin-top:13px;color:#12344f;font-size:1.5rem}.presta-outro-links small{max-width:36ch;margin-top:7px;color:#5a7484;font-size:.89rem}.presta-outro-links b{position:absolute;right:27px;top:26px;color:#df2938;font-size:1.45rem}.presta-page a:focus-visible{outline:3px solid #df2938;outline-offset:4px}
@media(max-width:950px){.presta-hero-grid{gap:35px}.presta-intro-grid,.presta-software-grid{gap:45px}}
@media(max-width:740px){.presta-hero-grid,.presta-intro-grid,.presta-software-grid{grid-template-columns:1fr}.presta-hero-grid{padding-bottom:30px}.presta-hero-mark{min-height:230px}.presta-intro{padding:62px 0}.presta-expertise-grid{grid-template-columns:1fr}.presta-expertise-grid article{min-height:0}.presta-software{padding:62px 0 75px}.presta-outro-links{grid-template-columns:1fr}}
@media(max-width:550px){.presta-hero{padding:10px}.presta-hero-inner{border-radius:16px}.presta-hero .pillar-breadcrumbs{padding:19px 20px 0}.presta-hero-grid{padding:30px 20px 22px}.presta-hero h1{font-size:2.3rem}.presta-hero-links a:first-child{width:100%;justify-content:center}.presta-hero-mark{padding:22px}.presta-hero-mark>span{font-size:2.8rem}.presta-container{padding-inline:20px}.presta-expertise{padding:0 10px 20px}.presta-expertise-inner{padding:48px 0;border-radius:16px}.presta-software-panel{padding:21px;box-shadow:9px 9px 0 #dceef3}.presta-software-panel-top{align-items:flex-start;flex-direction:column}.presta-outro{padding:54px 0 70px}}
.contact-v2-hours{max-width:470px;margin:-6px 0 27px;padding:18px 20px;border:1px solid #cfe0e8;border-radius:12px;background:#fff}.contact-v2-hours h3{margin:0 0 10px;color:#143a54;font-size:1.04rem}.contact-v2-hours p{display:flex;justify-content:space-between;gap:14px;margin:0;padding:7px 0;border-top:1px solid #edf3f5;color:#536f80;font-size:.9rem}.contact-v2-hours strong{color:#143a54;text-align:right}.contact-v2-hours small{display:block;margin-top:10px;color:#5b7585;line-height:1.5}.contact-v2-hours small a{color:#235f83}@media(max-width:550px){.contact-v2-hours p{flex-direction:column;gap:2px}.contact-v2-hours strong{text-align:left}}
.presta-hero-logo{position:relative;z-index:1;display:block;width:100%;max-width:440px;height:auto;margin:-8px 0 0 -8px;object-fit:contain}

/* Compact mobile navigation and persistent contact actions. */
.mobile-quick-actions { display: none; }
@media (max-width: 880px) {
  .site-header-v2, .admin-bar .site-header-v2 { top: 0; }
  .navigation-inner { position: relative; min-height: 70px; justify-content: space-between; }
  .header-actions { display: none; }
  .mobile-nav-v2 { display: block; width: auto; margin-left: auto; padding: 0; }
  .mobile-nav-v2 > summary { display: grid; place-items: center; width: 46px; height: 46px; padding: 0; border: 1px solid #d9e7ec; border-radius: 9px; background: #f6f9fa; color: var(--blue); cursor: pointer; list-style: none; }
  .mobile-nav-v2 > summary::after { display: none; }
  .mobile-nav-v2 > summary::-webkit-details-marker { display: none; }
  .mobile-menu-bars { display: grid; gap: 5px; width: 21px; }
  .mobile-menu-bars span { display: block; width: 100%; height: 2px; border-radius: 2px; background: currentColor; }
  .mobile-nav-v2[open] .mobile-menu-bars span:first-child { transform: translateY(7px) rotate(45deg); }
  .mobile-nav-v2[open] .mobile-menu-bars span:nth-child(2) { opacity: 0; }
  .mobile-nav-v2[open] .mobile-menu-bars span:last-child { transform: translateY(-7px) rotate(-45deg); }
  .mobile-nav-v2 nav { position: absolute; top: calc(100% + 1px); right: 0; left: 0; z-index: 5; display: grid; gap: 3px; max-height: calc(100dvh - 85px); margin: 0; padding: 13px; overflow-y: auto; border: 1px solid #d9e7ec; border-radius: 0 0 13px 13px; background: #fff; box-shadow: 0 20px 32px rgba(17,47,75,.16); }
  .mobile-nav-v2 nav > a { min-height: 43px; }
  html { scroll-padding-top: 80px; }
}
@media (max-width: 600px) {
  .navigation-inner { min-height: 66px; }
  .mobile-quick-actions { position: fixed; right: 0; bottom: 0; left: 0; z-index: 210; display: grid; grid-template-columns: 1fr 1fr; gap: 9px; padding: 10px 12px calc(10px + env(safe-area-inset-bottom)); border-top: 1px solid #d9e7ec; background: #fff; box-shadow: 0 -8px 26px rgba(17,47,75,.13); opacity: 0; pointer-events: none; transform: translateY(100%); transition: transform .2s ease, opacity .2s ease; }
  .mobile-quick-actions a { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 48px; padding: 8px 5px; border-radius: 8px; color: #fff; font-size: .83rem; font-weight: 800; line-height: 1.15; text-align: center; text-decoration: none; }
  .mobile-quick-actions svg { flex: none; width: 18px; height: 18px; }
  .mobile-quick-call { background: #188352; }
  .mobile-quick-quote { background: var(--red); }
  .mobile-quick-actions a:focus-visible { outline: 3px solid var(--blue); outline-offset: -3px; }
  body.mobile-actions-visible { padding-bottom: calc(68px + env(safe-area-inset-bottom)); }
  body.mobile-actions-visible .mobile-quick-actions { opacity: 1; pointer-events: auto; transform: translateY(0); }
}
@media (max-width: 370px) { .mobile-quick-actions a { font-size: .75rem; } }
@media (prefers-reduced-motion: reduce) { .mobile-quick-actions { transition: none; } }
