@font-face{font-family:'Pit Display';src:url('assets/display.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:'Pit Sans';src:url('assets/sans.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:'Pit Sans';src:url('assets/sans-bold.woff') format('woff');font-weight:700;font-display:swap}
@font-face{font-family:'Pit Hand';src:url('assets/hand.woff') format('woff');font-weight:400;font-display:swap}
:root{--ink:#191712;--cream:#f2e7ce;--red:#b63925;--gutter:clamp(24px,4.5vw,90px);--ease:cubic-bezier(.2,.75,.2,1);color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:95px}
body{margin:0;background:var(--cream);color:var(--ink);font:18px/1.45 'Pit Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,input,textarea,select{font:inherit}
button,a,summary{-webkit-tap-highlight-color:transparent}
button{cursor:pointer;color:inherit}
a{color:inherit;text-decoration:none}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #d95b34;outline-offset:6px}
::selection{background:var(--red);color:var(--cream)}
img{display:block;width:100%;height:auto}
button{border:0}
svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:square;stroke-linejoin:miter}
button svg,a svg{width:28px;height:24px;flex:none}
.svg-library{position:absolute;width:0;height:0;overflow:hidden}
.skip-link{position:fixed;left:24px;top:-100px;z-index:120;padding:12px 18px;background:var(--cream);color:var(--ink)}
.skip-link:focus{top:16px}
.section-label{font:700 12px/1.3 'Pit Sans',Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase}
.display{margin:0;font-family:'Pit Display',Impact,'Arial Narrow',sans-serif;font-weight:400;line-height:.98;letter-spacing:-.025em}
.display>span{display:block;width:147.06%;transform:scaleX(.68);transform-origin:left center}
.handwritten{font-family:'Pit Hand',Georgia,serif;font-weight:400;line-height:.98}
.button{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:38px;min-height:60px;padding:17px 24px;font-size:18px;font-weight:700;line-height:1.1;overflow:hidden;transition:background .25s,color .25s,box-shadow .25s,transform .25s var(--ease)}
.button:before{content:'';position:absolute;inset:0;transform:translateX(-101%);background:#0000000c;transition:transform .35s var(--ease)}
.button:hover:before{transform:translateX(0)}
.button svg{transition:transform .3s var(--ease)}
.button:hover svg{transform:translateX(5px)}
.button:active{transform:translateY(2px)}
.button-red{background:var(--red);color:var(--cream)}
.button-red:hover{background:#c74a30}
.button-cream{background:var(--cream);color:var(--ink)}
.button-cream:hover{background:#fff4dc}
.text-link{display:inline-flex;gap:16px;align-items:center;background:none;padding:4px 0;font-weight:700;font-size:14px;text-align:left;line-height:1.4}
.text-link svg{width:22px;transition:transform .25s var(--ease)}
.text-link:hover svg{transform:translateX(5px)}
.text-link:hover{text-decoration:underline;text-underline-offset:5px}
.site-header{position:absolute;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;min-height:91px;padding:23px var(--gutter);color:var(--cream);transition:background .3s,padding .3s}
.wordmark{font-family:'Pit Display',Impact,'Arial Narrow',sans-serif;letter-spacing:.3em;font-size:24px;line-height:1;white-space:nowrap}
.site-header nav{display:flex;gap:40px;font-size:15px;align-items:center}
.site-header nav a{position:relative;padding:7px 0}
.site-header nav a:after{content:'';position:absolute;bottom:1px;left:0;width:100%;height:1px;background:var(--cream);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}
.site-header nav a:hover:after,.site-header nav a[aria-current]:after{transform:scaleX(1)}
.reading-line{position:absolute;height:2px;bottom:0;left:0;width:100%;background:var(--red);transform:scaleX(var(--progress,0));transform-origin:left;opacity:0}
.site-header.is-scrolled{position:fixed;min-height:70px;padding-top:17px;padding-bottom:17px;background:#191712f5;box-shadow:0 1px #f2e7ce18;animation:header-in .35s var(--ease)}
.site-header.is-scrolled .reading-line{opacity:1}
@keyframes header-in{from{transform:translateY(-100%)}to{transform:translateY(0)}}
.hero{position:relative;height:100svh;min-height:720px;max-height:1120px;overflow:hidden;color:var(--cream);background:#10100c}
.hero-scene{position:absolute;inset:0;overflow:hidden}
.hero-photo{height:100%;object-fit:cover;object-position:50% 48%;transform:scale(1.025);will-change:transform}
.hero-scene:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0d0e0b16 35%,#0d0e0b55)}
.hero-content{position:absolute;left:var(--gutter);right:var(--gutter);bottom:112px;display:grid;grid-template-columns:56% 44%;gap:0;align-items:end}
.hero-title{margin:0;font:400 clamp(180px,25.7vw,480px)/.87 'Pit Display',Impact,'Arial Narrow',sans-serif;letter-spacing:-.02em}
.hero-title>span{display:block;width:147.06%;transform:scaleX(.68);transform-origin:left bottom;white-space:nowrap}
.hero-copy{padding-bottom:8px;justify-self:end}
.hero-subtitle{margin:0;font-size:clamp(21px,2.15vw,34px);line-height:1.2;letter-spacing:-.03em}
.hero-subline{margin:8px 0 28px;font-size:15px;color:#f2e7ced6}
.hero-bottom{position:absolute;bottom:28px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:center}
.scroll-cue{display:inline-flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.scroll-track{display:flex;width:20px;height:33px;align-items:center;overflow:hidden}
.scroll-cue svg{height:28px;width:20px;animation:scroll-nudge 2.8s ease-in-out infinite}
.hero-location{font-size:12px;letter-spacing:.08em}
@keyframes scroll-nudge{0%,70%,100%{transform:translateY(0)}85%{transform:translateY(5px)}}
.shop-threshold{height:35px;position:relative;background:var(--red) url('assets/red-shop-metal.webp') center 45%/cover;border-top:3px solid #e5dac5;border-bottom:3px solid #cbbca0;box-shadow:inset 0 2px 4px #0005,inset 0 -4px 8px #0003;z-index:2}
.services{position:relative;isolation:isolate;min-height:clamp(1060px,88vw,1510px);overflow:hidden;padding:95px var(--gutter) 0;background:var(--cream) url('assets/cream-brick-wall.webp') center top/1250px auto}
.services:before{content:'';position:absolute;inset:0;z-index:-1;background:#f2e7ce25;pointer-events:none}
.services-heading{position:relative;width:63%;z-index:2;pointer-events:none}
.services-heading h2{font-size:clamp(100px,13.25vw,225px)}
.paint-stroke{display:block;width:clamp(170px,19vw,300px);height:30px;margin:20px 0 0 5px;color:var(--red);stroke-width:5;stroke-linecap:butt}
.paint-stroke path{stroke-dasharray:800;stroke-dashoffset:0}
.service-list{position:relative;z-index:4;width:32%;margin-left:auto;margin-top:clamp(-385px,-29vw,-310px)}
.service-intro{font-size:16px;line-height:1.4;margin:0 0 22px 26px;max-width:27ch}
.service{border-top:1px solid #49402d5c}
.service:last-child{border-bottom:1px solid #49402d5c}
.service summary{display:grid;grid-template-columns:13px 1fr 21px;gap:13px;align-items:center;padding:22px 0;list-style:none;cursor:pointer}
.service summary::-webkit-details-marker{display:none}
.service-name{display:block;font:400 clamp(29px,3.15vw,53px)/1.15 'Pit Display',Impact,'Arial Narrow',sans-serif;text-transform:uppercase;letter-spacing:-.018em}
.service-short{display:block;font-size:15px;line-height:1.3;margin-top:5px}
.service-slash{display:block;width:3px;height:46px;background:var(--red);transform:rotate(18deg);transition:height .3s}
.disclosure{width:20px;height:20px;stroke-width:1.2;align-self:start;margin-top:12px}
.service[open] .disclosure{transform:rotate(45deg)}
.service[open] .service-slash{height:70px}
.service[open] .service-name{color:var(--red)}
.service-body{padding:0 3px 25px 26px;font-size:15px;line-height:1.45;animation:detail-in .25s ease}
.service-body p{margin:0 0 14px;max-width:35ch}
.service-body .text-link{color:#922b1c}
@keyframes detail-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.brake-stage{position:absolute;z-index:1;bottom:-18vw;left:-7vw;width:76vw;max-width:1260px;aspect-ratio:1;--light-x:50%;--light-y:50%;transform:translateY(var(--part-y,0px));will-change:transform}
.brake-photo{width:100%;height:100%;object-fit:contain;filter:drop-shadow(14px 28px 12px #41371e25);pointer-events:none;user-select:none}
.inspection-light{position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(circle 180px at var(--light-x) var(--light-y),#ffe3ab55,transparent 100%);mask:url('assets/brake-assembly.webp') center/contain no-repeat;mix-blend-mode:screen;transition:opacity .5s}
.brake-stage:hover .inspection-light{opacity:1}
.inspection-point{position:absolute;z-index:5}
.inspection-point:has(.part-marker[aria-expanded=true]){z-index:10}
.inspection-point-caliper{top:43%;left:31%}
.inspection-point-rotor{top:30%;left:77%}
.part-marker{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:50%;background:var(--cream);color:var(--red);box-shadow:0 0 0 8px #f2e7ce22,0 2px 20px #0003;transition:box-shadow .25s,background .25s,transform .25s}
.part-marker svg{width:22px;height:22px}
.part-marker:hover{box-shadow:0 0 0 12px #f2e7ce33,0 2px 20px #0003;transform:scale(1.05)}
.part-marker[aria-expanded=true]{background:var(--red);color:var(--cream)}
.part-marker[aria-expanded=true] svg{transform:rotate(45deg)}
.part-note{position:absolute;left:53px;bottom:5px;width:265px;padding:20px;background:var(--cream);color:var(--ink);box-shadow:0 10px 36px #0003;border-top:3px solid var(--red);animation:detail-in .2s ease}
.part-note[hidden]{display:none}
.part-note strong{font:400 30px/1.1 'Pit Display',sans-serif;text-transform:uppercase}
.part-note p{font-size:14px;line-height:1.4;margin:10px 0 14px}
.part-note span{font-size:11px;color:#6c6354}
.inspection-point-rotor .part-note{left:auto;right:52px;bottom:5px}
.part-caption{position:absolute;bottom:78px;right:var(--gutter);width:25%;z-index:2;transform:rotate(-5deg)}
.part-caption .handwritten{font-size:clamp(35px,4.1vw,66px)}
.part-caption p{font-size:11px;font-weight:700;letter-spacing:.13em;line-height:1.8;margin:22px 0 0 12px;transform:rotate(5deg)}
.part-caption p span{font-weight:400;letter-spacing:0;font-size:13px}
.part-caption>svg{color:var(--red);width:130px;height:62px;margin:-8px 0 0 -50px;stroke-width:2}
.the-shop{position:relative;min-height:800px;height:64vw;max-height:1040px;background:#171812;color:var(--cream);overflow:hidden;border-top:2px solid #d8c9ac}
.shop-photo{position:absolute;inset:0;height:100%;object-fit:cover;object-position:50% center}
.the-shop:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0b0d08b8,transparent 53%),linear-gradient(0deg,#10120cd9,transparent 28%)}
.shop-content{position:relative;z-index:2;margin:76px 0 0 var(--gutter);width:39%}
.shop-content h2{margin:0 0 39px 58px;color:#e7dbc0}
.process-list{position:relative;list-style:none;margin:0;padding:0}
.process-list:before{content:'';position:absolute;left:17px;top:25px;bottom:65px;width:1px;background:#cc492f}
.process-step{position:relative;display:flex;gap:22px;margin-bottom:40px}
.step-number{margin-top:13px;flex:none;display:flex;align-items:center;justify-content:center;width:35px;height:35px;background:var(--red);border-radius:50%;font-size:17px;font-weight:700;position:relative;z-index:1}
.process-step h3{font:400 clamp(48px,5.1vw,82px)/1.1 'Pit Display',Impact,'Arial Narrow',sans-serif;letter-spacing:-.02em;text-transform:uppercase;margin:0;transform:scaleX(.8);transform-origin:left center;width:125%}
.process-step p{margin:8px 0 0;font-size:16px;line-height:1.35}
.shop-note{position:absolute;top:75px;right:var(--gutter);z-index:2;font-size:clamp(32px,3.7vw,58px);text-align:center;transform:rotate(-9deg);text-shadow:0 2px 20px #0005}
.shop-note svg{display:block;width:160px;height:25px;margin:8px auto 0;stroke-width:2}
.shop-promise{position:absolute;bottom:38px;left:var(--gutter);right:var(--gutter);display:flex;align-items:end;justify-content:space-between;gap:30px;z-index:2;padding-top:20px;border-top:1px solid #f2e7ce4d}
.shop-promise p{font-size:20px;line-height:1.3;margin:0}
.shop-promise p strong{font-weight:400}
.shop-promise>span{font-size:13px;line-height:1.35;text-align:right}
.questions{display:grid;grid-template-columns:42% 51%;gap:7%;padding:100px var(--gutter) 105px;position:relative;background:#eee3cd}
.questions-heading>.section-label{display:block;margin-bottom:25px}
.questions h2{font-size:clamp(67px,6.9vw,115px);line-height:1.05}
.little-slash{display:block;background:var(--red);width:60px;height:5px;margin-top:28px;transform:rotate(-6deg)}
.question-list{padding-top:6px}
.question-list details{border-top:1px solid #655c454d}
.question-list details:last-child{border-bottom:1px solid #655c454d}
.question-list summary{display:flex;gap:20px;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font-size:18px;font-weight:700;line-height:1.25;padding:25px 0}
.question-list summary::-webkit-details-marker{display:none}
.question-list summary svg{width:21px;height:21px;flex:none;transition:transform .2s}
.question-list details[open] summary svg{transform:rotate(45deg)}
.question-list details>p{max-width:47ch;margin:0 35px 25px 0;font-size:16px;line-height:1.5;animation:detail-in .25s ease}
.visit{position:relative;background:var(--red) url('assets/red-shop-metal.webp') center/cover;color:var(--cream);padding:90px var(--gutter) 24px;isolation:isolate;overflow:hidden}
.visit:before{content:'';position:absolute;inset:0;background:#a9301815;z-index:-1}
.visit-top{display:grid;grid-template-columns:54% 46%;align-items:center}
.visit-title{font:400 clamp(150px,23vw,370px)/.95 'Pit Display',Impact,'Arial Narrow',sans-serif;text-transform:uppercase;letter-spacing:-.02em;margin:0}
.visit-title>span{display:block;width:147.06%;transform:scaleX(.68);transform-origin:left center;white-space:nowrap}
.visit-invitation{padding:12px 0 12px 45px;border-left:1px solid #f2e7ce6e}
.visit-invitation p{font-size:clamp(23px,2.3vw,38px);letter-spacing:-.03em;line-height:1.25;margin:0 0 30px}
.visit-details{display:grid;grid-template-columns:1fr 1.18fr 1.13fr;gap:30px;margin-top:64px;padding:32px 0 48px;border-top:1px solid #f2e7ce8a}
.visit-details h3{font-size:17px;margin:0 0 12px;line-height:1.2}
.visit-details>div+div{border-left:1px solid #f2e7ce60;padding-left:30px}
.visit-address address{font-style:normal;font-size:19px;line-height:1.4}
.contact-caption{display:block;font-size:11px;opacity:.8;margin-top:12px;letter-spacing:.035em}
.visit-hours dl{margin:0;font-size:16px;line-height:1.6}
.visit-hours dl>div{display:flex;gap:20px;justify-content:space-between}
.visit-hours dt{flex:none}
.visit-hours dd{margin:0;text-align:right}
.visit-phone>p{font-size:clamp(24px,2.4vw,40px);line-height:1.1;letter-spacing:-.025em;margin:0;font-weight:700;white-space:nowrap}
.cream-link{color:var(--cream);margin-top:19px;font-size:13px}
.site-footer{margin-top:14px}
.footer-top{display:flex;justify-content:space-between;gap:24px;align-items:end;padding:16px 0 28px}
.back-to-top{display:inline-flex;gap:12px;align-items:center;font-size:12px;line-height:1.2}
.back-to-top svg{width:18px;height:25px;transform:rotate(180deg);transition:transform .25s}
.back-to-top:hover svg{transform:rotate(180deg) translateY(4px)}
.footer-wordmark{font:400 42px/1 'Pit Display',sans-serif;letter-spacing:.25em;color:var(--ink);white-space:nowrap}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:35px;border-top:1px solid #f2e7ce4d;padding-top:18px;font-size:10px;line-height:1.5;letter-spacing:.015em}
.footer-bottom p{margin:0;max-width:70ch}
.footer-bottom>span{flex:none}
.footer-bottom>span>span{padding:0 8px}
.no-script{padding:12px 24px;background:var(--ink);color:var(--cream);font-size:13px}
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .8s var(--ease)}
.js .reveal.is-visible{opacity:1;transform:translateY(0)}
.js .part-caption.reveal.is-visible{transform:rotate(-5deg)}
.js .shop-note.reveal.is-visible{transform:rotate(-9deg)}
@media(min-width:1800px){.brake-stage{bottom:-250px;left:0}.services{min-height:1450px}.service-list{margin-top:-400px}.service-intro{font-size:18px}.service-short,.service-body{font-size:17px}.hero-content{bottom:130px}}
@media(max-width:1100px){.hero{min-height:690px}.hero-content{grid-template-columns:55% 45%}.hero-subtitle{font-size:23px}.hero-subline{font-size:14px}.service-list{width:35%;margin-top:-260px}.services-heading{width:61%}.services{min-height:1010px;padding-top:80px}.service-name{font-size:34px}.service-intro{font-size:14px}.service-short,.service-body{font-size:14px}.brake-stage{width:83vw;bottom:-17vw;left:-15vw}.part-caption{bottom:60px;width:27%}.the-shop{min-height:780px}.shop-content{margin-top:65px;width:45%}.process-step h3{font-size:61px}.shop-photo{object-position:60%}.shop-note{right:35px;top:55px;font-size:39px}.visit{padding-top:65px}.visit-invitation{padding-left:28px}.visit-details{gap:22px}.visit-details>div+div{padding-left:22px}.visit-hours dl{font-size:14px}.visit-hours dl>div{gap:13px}.visit-address address{font-size:17px}.visit-phone>p{font-size:27px}.footer-bottom{font-size:10px}}
@media(max-width:760px){
  :root{--gutter:25px}
  html{scroll-padding-top:78px}
  body{font-size:16px}
  .site-header{padding-top:22px;padding-bottom:22px;min-height:77px}
  .site-header nav{gap:24px;font-size:13px}
  .wordmark{font-size:21px}
  .site-header.is-scrolled{min-height:64px;padding-top:16px;padding-bottom:16px}
  .hero{min-height:760px;height:100svh;max-height:1050px}
  .hero-photo{object-position:50% 40%}
  .hero-content{bottom:95px;display:block}
  .hero-title{font-size:43.3vw;line-height:.91;margin:0 0 23px}
  .hero-copy{padding:0;display:grid;grid-template-columns:1fr auto;column-gap:20px;align-items:center}
  .hero-subtitle{font-size:20px;letter-spacing:-.025em;grid-column:1;align-self:end}
  .hero-subline{font-size:12px;margin:7px 0 0;grid-column:1;align-self:start}
  .hero-copy .button{grid-column:2;grid-row:1/3;font-size:15px;padding:15px 18px;gap:20px;min-height:54px}
  .hero-copy .button svg{width:23px}
  .hero-bottom{bottom:25px}
  .hero-location{font-size:10px}
  .scroll-cue{font-size:9px;gap:10px}
  .shop-threshold{height:26px}
  .services{min-height:1260px;padding-top:58px;background-size:950px auto}
  .services-heading{width:100%}
  .services-heading h2{font-size:16.1vw;line-height:.97}
  .paint-stroke{width:170px;height:22px;margin-top:14px}
  .service-list{width:59%;margin-top:35px;margin-left:auto}
  .service-intro{font-size:13px;margin-left:20px;margin-bottom:15px}
  .service summary{grid-template-columns:8px 1fr 18px;gap:11px;padding:16px 0}
  .service-name{font-size:32px}
  .service-short{font-size:13px}
  .service-slash{height:39px;width:2px}
  .service[open] .service-slash{height:54px}
  .service-body{padding-left:19px;padding-bottom:18px;font-size:13px}
  .service-body .text-link{font-size:12px;gap:8px}
  .brake-stage{width:95vw;bottom:-17vw;left:-27vw}
  .inspection-point-caliper{left:42%;top:43%}
  .inspection-point-rotor{left:78%;top:30%}
  .part-caption{right:20px;bottom:65px;width:32%}
  .part-caption .handwritten{font-size:35px}
  .part-caption p{font-size:9px;margin-top:13px;margin-left:0}
  .part-caption p span{font-size:11px}
  .part-caption>svg{width:85px;height:43px;margin-left:-24px}
  .part-note{width:220px;left:45px;padding:16px}
  .part-note strong{font-size:26px}
  .part-note p{font-size:12px}
  .part-note span{font-size:10px}
  .part-marker{width:35px;height:35px;box-shadow:0 0 0 6px #f2e7ce22,0 2px 20px #0003}
  .part-marker svg{width:18px;height:18px}
  .the-shop{height:auto;min-height:940px}
  .shop-photo{object-position:69% center}
  .the-shop:after{background:linear-gradient(90deg,#0b0d08da,transparent 85%),linear-gradient(0deg,#10120ceb,transparent 40%)}
  .shop-content{margin-top:70px;width:64%}
  .shop-content h2{margin-left:43px;margin-bottom:36px;font-size:10px}
  .process-step{gap:14px;margin-bottom:48px}
  .process-step h3{font-size:60px}
  .process-step p{font-size:14px;line-height:1.4;max-width:21ch}
  .process-step p br{display:none}
  .step-number{width:28px;height:28px;font-size:14px;margin-top:13px}
  .process-list:before{left:13px;bottom:71px}
  .shop-note{right:27px;top:auto;bottom:205px;font-size:34px}
  .shop-note svg{width:120px}
  .shop-promise{bottom:37px;display:block;padding-top:22px}
  .shop-promise p{font-size:18px}
  .shop-promise>span{display:block;text-align:left;font-size:12px;margin-top:16px}
  .shop-promise>span br{display:none}
  .questions{grid-template-columns:1fr;gap:32px;padding-top:65px;padding-bottom:70px}
  .questions-heading>.section-label{font-size:10px;margin-bottom:22px}
  .questions h2{font-size:15vw;line-height:1}
  .questions h2 span{display:inline;width:auto;transform:none}
  .questions h2 span+span{margin-left:.15em}
  .little-slash{margin-top:23px;width:48px;height:4px}
  .question-list summary{font-size:16px;padding:21px 0}
  .question-list details>p{font-size:15px;margin-right:20px}
  .visit{padding-top:57px}
  .visit-top{grid-template-columns:1fr;gap:29px}
  .visit-title{font-size:40vw;line-height:1}
  .visit-invitation{border-left:0;padding:0;display:flex;justify-content:space-between;align-items:center;gap:25px}
  .visit-invitation p{font-size:22px;margin:0}
  .visit-invitation .button{font-size:15px;gap:23px;padding:16px 18px;min-height:54px;flex:none}
  .visit-details{grid-template-columns:1fr 1.15fr;gap:30px 22px;margin-top:46px;padding-bottom:28px}
  .visit-details>div+div{padding-left:20px}
  .visit-details h3{font-size:15px;margin-bottom:9px}
  .visit-address address{font-size:15px}
  .visit-hours dl{font-size:13px}
  .visit-hours dl>div{gap:10px}
  .visit-phone{grid-column:1/-1;border-top:1px solid #f2e7ce4d;padding-top:25px}
  .visit-details>.visit-phone{border-left:0;padding-left:0}
  .visit-phone>p{font-size:35px}
  .visit-phone .cream-link{margin-top:13px}
  .footer-wordmark{font-size:29px}
  .footer-top{padding-bottom:24px}
  .footer-bottom{display:block;font-size:10px}
  .footer-bottom>span{display:block;margin-top:10px}
  .back-to-top{font-size:11px;gap:7px}
}
@media(max-width:480px){
  :root{--gutter:22px}
  .site-header nav{gap:25px}
  .nav-shop{display:none}
  .hero{min-height:740px}
  .hero-content{bottom:92px}
  .hero-title{font-size:47.8vw;margin-bottom:29px}
  .hero-copy{display:block}
  .hero-subtitle{font-size:23px}
  .hero-subline{font-size:13px;margin-top:7px}
  .hero-copy .button{margin-top:24px;padding:16px 20px;font-size:16px;gap:36px}
  .hero-bottom{bottom:24px}
  .services{min-height:0;padding-top:47px}
  .services-heading h2{font-size:23.6vw;line-height:1.01}
  .paint-stroke{width:142px;margin-top:13px}
  .service-list{width:100%;margin-top:38px}
  .service-intro{font-size:14px;margin-left:23px}
  .service summary{grid-template-columns:10px 1fr 22px;gap:13px;padding:19px 0}
  .service-name{font-size:35px}
  .service-short{font-size:14px}
  .service-body{padding-left:23px;font-size:14px;padding-bottom:22px}
  .service-body .text-link{font-size:13px}
  .brake-stage{position:relative;width:116vw;bottom:auto;left:calc(-22px - 26vw);margin-top:90px;margin-bottom:-27vw}
  .part-caption{right:18px;bottom:290px;width:180px}
  .part-caption .handwritten{font-size:28px;white-space:nowrap}
  .part-caption p{font-size:9px;line-height:1.8;margin-top:9px}
  .part-caption p span{font-size:10px;max-width:none;display:block;line-height:1.3;margin-top:3px}
  .part-caption>svg{width:72px;margin-left:-27px;margin-top:3px}
  .inspection-point-caliper{top:47%;left:41%}
  .inspection-point-rotor{top:34%;left:76%}
  .part-note{width:210px;bottom:45px;left:0}
  .inspection-point-rotor .part-note{left:auto;right:-10px;bottom:45px}
  .the-shop{min-height:900px}
  .shop-content{margin-top:56px;width:73%}
  .shop-photo{object-position:65% center}
  .the-shop:after{background:linear-gradient(90deg,#0b0d08d0,transparent 94%),linear-gradient(0deg,#10120cf0,transparent 35%)}
  .process-step{margin-bottom:42px}
  .process-step h3{font-size:56px}
  .process-step p{font-size:14px;max-width:20ch}
  .shop-note{right:18px;bottom:195px;font-size:31px}
  .questions h2{font-size:19vw}
  .questions h2 span{display:block;width:147.06%;transform:scaleX(.68);transform-origin:left center}
  .questions h2 span+span{margin-left:0}
  .visit-title{font-size:45.4vw}
  .visit-invitation{display:block}
  .visit-invitation p{font-size:25px;margin-bottom:23px}
  .visit-invitation .button{font-size:16px;gap:34px}
  .visit-details{grid-template-columns:1fr;gap:25px;margin-top:40px}
  .visit-details>div+div{border-left:0;border-top:1px solid #f2e7ce4d;padding-left:0;padding-top:25px}
  .visit-address address{font-size:18px}
  .visit-hours{max-width:100%}
  .visit-hours dl{font-size:15px;max-width:320px}
  .visit-phone>p{font-size:36px}
  .contact-caption{font-size:10px}
  .footer-wordmark{font-size:29px;letter-spacing:.18em}
}
@media(max-width:360px){.part-caption{bottom:245px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero-photo{transform:none!important;will-change:auto}.brake-stage{transform:none!important;will-change:auto}.js .reveal{opacity:1;transform:none}.js .part-caption.reveal{transform:rotate(-5deg)}.js .shop-note.reveal{transform:rotate(-9deg)}.inspection-light{display:none}}
@media(hover:none){.inspection-light{display:none}.button:before{display:none}}

.js .services-heading:not(.is-visible) .paint-stroke path{stroke-dashoffset:800}
.js .services-heading.is-visible .paint-stroke path{transition:stroke-dashoffset 1s var(--ease) .2s;stroke-dashoffset:0}

/* Responsive sources keep the original image as the layout and interaction target. */
picture.responsive-image{display:contents}
