@charset "UTF-8";
:root{--green:#153c30;--green-deep:#102d24;--white:#fff;--paper:#f2f1ec;--ink:#161d19;--orange:#e9962a;--orange-dark:#a64615;--muted:#506158;--line:#cad3cc;--display:'Barlow Condensed',sans-serif;--serif:'Libre Caslon Display',Georgia,serif;--body:'Public Sans',sans-serif;--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.65}::selection{background:var(--orange);color:var(--ink)}a{color:inherit;text-decoration:none;text-underline-offset:5px}a:focus-visible{outline:3px solid var(--orange-dark);outline-offset:6px}button,a{-webkit-tap-highlight-color:transparent}svg{display:block}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance}h1,h2{font-family:var(--display);font-weight:600;line-height:.94;letter-spacing:-.025em}h1 em,h2 em{font-family:var(--serif);font-weight:400}p+p{margin-top:20px}.skip{position:absolute;left:18px;top:-100px;padding:12px 20px;background:var(--white);z-index:20}.skip:focus{top:12px}body::-webkit-scrollbar{width:12px}body::-webkit-scrollbar-track{background:var(--paper)}body::-webkit-scrollbar-thumb{background:var(--green);border:3px solid var(--paper)}
.masthead{background:var(--green);color:var(--white)}.header-inner{max-width:1440px;padding:25px 5%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px}.brand svg{width:57px;fill:var(--white)}.brand .snow{fill:var(--green)}.brand span{font-family:var(--display);font-size:27px;font-weight:700;letter-spacing:.025em;line-height:1}.brand small{display:block;font-family:var(--body);font-size:8px;font-weight:600;letter-spacing:.16em;margin-top:8px}.header-inner nav{display:flex;gap:28px;font-size:13px}.header-inner nav a:hover{text-decoration:underline}.header-call{font-size:15px;font-weight:700;white-space:nowrap;border-bottom:1px solid #a6b5aa;padding-bottom:4px}.header-call span{color:var(--orange);margin-left:15px}.opening{max-width:1440px;margin:auto;padding:0 5%}.hero-title{padding:58px 0 46px;display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:40px}.hero-title h1{font-size:clamp(70px,7.9vw,96px);max-width:8ch;color:var(--green)}.hero-title h1 em{white-space:nowrap}.hero-intro{padding:0 0 5px 14%;max-width:510px}.hero-intro p{font-size:19px;line-height:1.5}.hero-intro strong{font-weight:600}.hero-intro .intro-secondary{font-size:14px;color:var(--muted);margin:17px 0 24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--orange);color:var(--ink);padding:15px 22px;font-weight:700;font-size:13px;line-height:1.5;transition:background .2s}.button svg,.text-link svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.6}.button:hover{background:#f2ad52}.photo-spread{display:grid;grid-template-columns:minmax(0,1fr) 94px;gap:26px}.hero-photo{position:relative;min-width:0}.hero-photo img{width:100%;height:500px;object-fit:cover;object-position:50% 50%;background:var(--green);animation:photo-arrival 1.1s var(--ease) both}.hero-photo figcaption{font-size:11px;display:flex;justify-content:space-between;gap:15px;color:var(--muted);padding-top:12px}.hero-photo figcaption span{font-size:10px}.margin-note{display:flex;flex-direction:column;align-items:center;justify-content:space-between;border-top:1px solid var(--green);padding:20px 0 5px}.vertical-note{writing-mode:vertical-rl;font-size:11px;letter-spacing:.2em;font-weight:600}.margin-note>span:last-child{font-size:10px;text-align:center;line-height:1.7}.compass{width:66px;fill:none;stroke:var(--green);stroke-width:1}.compass path{stroke:var(--orange-dark)}.coverage-strip{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 0;border-bottom:1px solid var(--green);margin-top:10px}.coverage-strip>span{font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:.08em}.coverage-strip p{font-size:14px;font-weight:500}.coverage-strip i{font-style:normal;color:var(--orange-dark);padding:0 10px}
.section-grid{max-width:1440px;margin:auto;padding:110px 5%;display:grid;grid-template-columns:1fr 1fr;gap:60px}.section-heading h2,.service h2,.reviews h2{font-size:clamp(44px,4.4vw,66px);color:var(--green)}.section-heading .text-link{margin-top:35px}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:13px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:7px}.text-link span{color:var(--orange-dark);font-size:19px}.text-link:hover{color:var(--orange-dark)}.story-copy{max-width:65ch}.story-copy .lead{font-size:21px;line-height:1.6;color:var(--green)}.story-copy>p:not(.lead){font-size:15px;color:var(--muted)}.signed{font-family:var(--serif);font-size:31px;color:var(--green);margin-top:30px;font-style:italic}.service{background:var(--green);color:var(--white);padding:80px max(5%,calc((100vw - 1296px)/2)) 35px}.service-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:60px}.service h2{color:var(--white)}.service-heading>p{font-size:15px;max-width:48ch;color:#d0ded3}.service-entries{display:grid;grid-template-columns:1fr 1fr;gap:70px}.service-entries article{position:relative;padding:30px 0 45px;border-top:1px solid #739283;display:grid;grid-template-columns:42px 1fr;gap:22px}.entry-mark svg{width:40px;stroke:var(--orange);fill:none;stroke-width:1.5}.service h3{font-family:var(--display);font-size:36px;font-weight:600;line-height:1.05;margin-bottom:20px}.service-entries article p{color:#d0ded3;font-size:14px;max-width:45ch}.entry-label{grid-column:2;font-size:10px;letter-spacing:.15em;color:#d0ded3;margin-top:7px}.service-bottom{border-top:1px solid #739283;display:flex;gap:25px;align-items:center;justify-content:space-between;padding-top:27px}.service-bottom p{font-size:13px;color:#d0ded3}.service-bottom .text-link span{color:var(--orange)}.service-bottom a:hover{color:var(--orange)}
.territory .section-heading>p{font-size:15px;color:var(--muted);max-width:32ch;margin-top:26px}.territory .section-heading>.text-link{margin-top:25px}.route-diagram{background:var(--paper);padding:16px 20px}.route-diagram svg{width:100%;overflow:visible;fill:var(--green);font-family:var(--display);font-size:23px}.route-diagram .route{stroke:var(--green);stroke-width:1.5;stroke-dasharray:5 6;fill:none}.route-diagram circle{stroke:var(--paper);stroke-width:3}.route-diagram .shop-dot{fill:var(--orange-dark)}.route-diagram .map-small{font-family:var(--body);font-size:9px;letter-spacing:.08em;fill:var(--orange-dark)}.diagram-caption{font-size:10px;color:var(--muted);display:block;margin-top:8px}.location-note{font-size:12px;color:var(--muted);margin-top:18px;max-width:62ch}.location-note strong{font-weight:600;color:var(--green)}.reviews{background:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:80px max(5%,calc((100vw - 1296px)/2))}.review-heading>p{font-size:14px;color:var(--muted);max-width:37ch;margin-top:25px}.review-heading>.text-link{margin-top:25px}.quotes figure{padding:0 0 28px}.quotes figure+figure{border-top:1px solid var(--line);padding-top:25px}.quotes blockquote{font-family:var(--serif);font-size:29px;line-height:1.25;margin:0 0 20px}.quotes figcaption{display:flex;flex-direction:column;font-size:11px;gap:3px}.quotes figcaption strong{font-weight:700}.quotes figcaption span,.review-source{color:var(--muted);font-size:10px}.review-source{max-width:65ch}.contact{padding:85px 5%;max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:40px}.contact h2{font-size:clamp(48px,5vw,76px);color:var(--green)}.contact p{margin-top:22px;font-size:14px;color:var(--muted)}.contact-action>a{font-family:var(--display);font-size:clamp(30px,3.5vw,52px);display:flex;gap:28px;align-items:center;line-height:1.2;border-bottom:2px solid var(--orange);padding-bottom:15px}.contact-action>a:hover{color:var(--orange-dark)}.contact-action svg{width:34px;fill:none;stroke:var(--orange-dark);stroke-width:1.5}.contact-action>span{display:block;font-size:10px;margin-top:15px;color:var(--muted)}footer{background:var(--green-deep);color:var(--white);padding:36px 5%;display:flex;align-items:center;justify-content:space-between;gap:28px}footer .footer-brand{font-family:var(--display);font-size:25px;font-weight:700;line-height:1}.footer-brand small{display:block;font-family:var(--body);font-size:8px;letter-spacing:.16em;margin-top:9px}footer p{font-size:11px;line-height:1.8}footer p span,footer .legal{color:#c0d0c5}footer .legal{font-size:9px;text-align:right}.mobile-call{display:none}@keyframes photo-arrival{from{clip-path:inset(0 0 4% 0)}to{clip-path:inset(0)}}
@media(min-width:1600px){.service,.reviews{padding-left:calc((100vw - 1296px)/2);padding-right:calc((100vw - 1296px)/2)}}
@media(max-width:1000px){.header-inner nav{gap:16px;font-size:11px}.brand svg{width:40px}.brand span{font-size:23px}.brand small{font-size:7px}.header-call{font-size:13px}.hero-intro{padding-left:3%}.hero-photo img{height:410px}.section-grid{gap:40px;padding-top:80px;padding-bottom:80px}.service-entries{gap:40px}.service-heading{gap:40px}.service h3{font-size:31px}.reviews{gap:40px}.contact-action>a{gap:15px}}
@media(max-width:720px){.header-inner{padding:20px 6%;flex-wrap:wrap;gap:20px}.brand svg{width:42px}.brand span{font-size:25px}.header-inner nav{order:3;width:100%;justify-content:space-between;font-size:12px;border-top:1px solid #648273;padding-top:15px}.header-call{font-size:12px}.header-call span{margin-left:3px}.opening{padding:0 6%}.hero-title{display:block;padding:37px 0 30px}.hero-title h1{font-size:clamp(70px,17vw,96px);max-width:9ch}.hero-intro{padding:25px 0 0;max-width:none}.hero-intro p{font-size:17px}.hero-intro .intro-secondary{display:none}.button{margin-top:20px;width:100%;justify-content:space-between;padding:15px 20px}.photo-spread{display:block}.hero-photo img{height:360px;object-position:50% 50%}.hero-photo figcaption{font-size:10px;flex-wrap:wrap;gap:2px}.hero-photo figcaption span{font-size:9px}.margin-note{display:none}.coverage-strip{display:block;padding:19px 0 22px;margin-top:5px}.coverage-strip>span{font-size:9px}.coverage-strip p{font-size:12px;margin-top:7px}.coverage-strip i{padding:0 4px}.section-grid{grid-template-columns:1fr;padding:60px 6%;gap:32px}.section-heading h2,.service h2,.reviews h2{font-size:49px}.section-heading .text-link{margin-top:25px}.story-copy .lead{font-size:19px}.story-copy>p:not(.lead){font-size:14px}.signed{font-size:28px}.service{padding:55px 6% 30px}.service-heading{grid-template-columns:1fr;gap:25px;margin-bottom:35px}.service-heading>p{font-size:14px}.service-entries{grid-template-columns:1fr;gap:0}.service-entries article{padding:27px 0 32px;gap:18px}.service h3{font-size:34px}.entry-label{margin-top:3px}.service-bottom{display:block;padding-top:22px}.service-bottom .text-link{margin-top:18px}.territory{gap:32px}.territory .section-heading>p{max-width:40ch}.route-diagram{padding:14px 10px}.reviews{grid-template-columns:1fr;padding:55px 6%;gap:36px}.quotes blockquote{font-size:28px}.contact{display:block;padding:60px 6%}.contact h2{font-size:62px}.contact-action{margin-top:38px}.contact-action>a{font-size:43px;justify-content:space-between}.contact-action>span{font-size:10px}footer{padding:35px 6% 105px;align-items:start;flex-direction:column;gap:22px}footer .legal{text-align:left}.mobile-call{position:fixed;z-index:10;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:17px 6% max(17px,env(safe-area-inset-bottom));background:var(--orange);color:var(--ink);font-size:12px;box-shadow:0 -4px 20px #102d2420}.mobile-call strong{font-size:15px}.mobile-call:focus-visible{outline-offset:-6px}}
@media(max-width:380px){.brand svg{width:32px}.brand span{font-size:22px}.brand small{font-size:6px}.header-call{font-size:11px}.contact-action>a{font-size:37px}.coverage-strip p{font-size:11px}.hero-photo img{height:310px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Readable journal notes and source attribution. */
.hero-photo figcaption,.hero-photo figcaption span,.margin-note>span:last-child,.vertical-note,.coverage-strip>span,.entry-label,.diagram-caption,.location-note,.quotes figcaption,.quotes figcaption span,.review-source,.contact-action>span,footer p,footer .legal{font-size:12px}.hero-intro .appointment-note{font-size:12px;line-height:1.5;margin-top:14px;color:var(--muted)}

.arrow-icon{display:inline-block;width:18px;height:18px;fill:none;stroke:var(--orange-dark);stroke-width:1.6;flex-shrink:0}.header-call{display:flex;align-items:center;gap:12px}.header-call .arrow-icon,.service-bottom .arrow-icon{stroke:var(--orange)}@media(max-width:380px){.header-call{gap:4px}.header-call .arrow-icon{width:13px}}

.brand .flange-mark{width:42px;fill:none;stroke:var(--white);stroke-width:2}.brand .flange-mark .hub{fill:var(--orange);stroke:none}.brand .flange-mark .lug{fill:var(--white);stroke:none}.heritage-logo{margin-top:26px;display:flex;align-items:center;gap:22px}.heritage-logo img{width:130px;height:72px;object-fit:cover;object-position:center}.heritage-logo span{font-size:11px;color:var(--muted);letter-spacing:.06em}.brand small{font-size:9px}@media(max-width:380px){.brand small{font-size:8px}.brand .flange-mark{width:29px}}

/* 2026-11-12 tightening: Wrenchworks transition banner, vehicle scope, three service modes */
.ww-banner{background:#000;color:#fff;border-bottom:3px solid #00adef}
.ww-inner{max-width:1440px;margin:auto;padding:9px 5%;display:flex;align-items:center;gap:20px}
.ww-inner img{height:30px;width:auto;flex-shrink:0}
.ww-inner p{font-size:13px;line-height:1.45}
.ww-kicker{color:#00adef;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:11px;margin-right:8px}
.ww-inner a{color:#00adef;font-weight:700;white-space:nowrap;text-decoration:underline}
.ww-inner a:focus-visible{outline-color:#00adef}
.signed small{display:block;font-family:var(--body);font-style:normal;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:6px}
.vehicles{max-width:1440px;margin:auto;padding:0 5% 110px}
.vehicles-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:46px}
.vehicles h2{font-size:clamp(44px,4.4vw,66px);color:var(--green)}
.vehicles-heading>p{font-size:15px;color:var(--muted);max-width:46ch}
.vehicle-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.vehicle-cards article{background:var(--paper);border-top:4px solid var(--green);padding:28px 26px 30px}
.vc-tag{display:inline-block;background:var(--orange);color:var(--ink);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px}
.vehicle-cards h3,.work-types h3{font-family:var(--display);font-weight:600;font-size:36px;line-height:1.05;color:var(--green);margin:16px 0 10px}
.vehicle-cards p,.work-types p{font-size:14px;color:var(--muted)}
.work-types{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;border-top:1px solid var(--line);padding-top:8px}
.work-types h3{font-size:30px}
.service-entries{grid-template-columns:repeat(3,1fr);gap:44px}
@media(max-width:1000px){.service-entries{grid-template-columns:1fr;gap:0}.vehicle-cards{grid-template-columns:1fr}}
@media(max-width:720px){.ww-inner{padding:9px 6%;gap:12px;align-items:flex-start}.ww-inner img{height:22px;margin-top:2px}.ww-inner p{font-size:12px}.ww-kicker{display:none}.vehicles{padding:0 6% 60px}.vehicles-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.vehicles h2{font-size:49px}.work-types{grid-template-columns:1fr;gap:0}}
