/* CarMan: photography, editorial sections and accessible motion */
.rotor{animation:rotor-turn 28s linear infinite;transform-origin:0 0}.hero-copy{animation:arrive .8s ease-out both}.hero-art{animation:arrive 1.1s .15s ease-out both}.hero-art:after{content:'';position:absolute;left:0;top:0;height:2px;width:80px;background:var(--accent);animation:scan 4s ease-in-out infinite alternate}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s var(--delay,0ms),transform .75s var(--delay,0ms)}.reveal.is-visible{opacity:1;transform:none}.services article{transition:background .3s}.services article:hover{background:#2e352d}.service-symbol{transition:transform .3s,color .3s}.services article:hover .service-symbol{transform:rotate(-15deg);color:var(--accent)}.button span{transition:transform .25s}.button:hover span{transform:translate(3px,-3px)}.section-intro{color:var(--muted);font-size:15px;line-height:1.8;max-width:420px}.gallery-section{padding-top:25px}.gallery-section .section-title{align-items:end}.gallery-section h2{margin-top:22px}.photo-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:18px}.photo-open{background:#30362e;border:0;padding:0;cursor:zoom-in;color:var(--paper);text-align:left;position:relative;overflow:hidden;font:inherit;min-width:0}.photo-main{grid-row:span 2}.photo-open img{display:block;width:100%;height:230px;object-fit:cover;transition:transform .7s,filter .7s;filter:saturate(.78)}.photo-main img{height:100%;min-height:478px;object-position:45% center}.photo-open:hover img{transform:scale(1.045);filter:saturate(1)}.photo-open>span{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(transparent,#121612d9);padding:55px 24px 20px;font-size:10px;letter-spacing:1.6px}.photo-open b{font-size:24px;font-weight:400}.photo-open:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.photo-source{display:block;text-align:right;font-size:10px;color:var(--muted);margin-top:18px}.parts-section{background:#2c322b;padding:75px 0}.parts-inner{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.parts-image{position:relative}.parts-image img{display:block;width:100%;height:460px;object-fit:cover;filter:saturate(.7)}.image-tag{position:absolute;bottom:22px;left:22px;background:var(--accent);padding:12px 16px;color:var(--bg);font:10px monospace;letter-spacing:1px}.parts-inner h2{margin:24px 0}.parts-inner em{font-style:normal;color:var(--accent)}.parts-tags{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0}.parts-tags span{padding:10px 12px;border:1px solid #ffffff30;font-size:11px}.visit{margin-top:0}.preparation{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px}.preparation h2{margin-top:25px;font-size:38px}.prep-items article{border-top:1px solid #ffffff25;padding:24px 0}.prep-items article:last-child{padding-bottom:0}.prep-items span{font:10px monospace;color:var(--accent);letter-spacing:1px}.prep-items h3{margin:15px 0 8px}.prep-items p{font-size:13px;color:var(--muted);line-height:1.8;margin:0}.faq-section{background:var(--paper);color:var(--bg);padding:80px 0}.faq-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px}.faq-inner h2{margin-top:25px}.faq-inner .section-intro{color:#60675d}.questions details{border-top:1px solid #20232135}.questions details:last-child{border-bottom:1px solid #20232135}.questions summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 0;font-size:16px;font-weight:500}.questions summary::-webkit-details-marker{display:none}.questions summary span{font-size:26px;color:#b44320;transition:transform .25s}.questions details[open] summary span{transform:rotate(45deg)}.questions details p{color:#565e53;font-size:14px;line-height:1.8;margin:0 45px 25px 0;animation:arrive .3s ease-out}.questions summary:focus-visible{outline:2px solid #b44320;outline-offset:4px}.lightbox{width:min(1100px,94vw);max-height:94vh;border:1px solid #ffffff30;background:#202321;color:var(--paper);padding:45px 20px 15px}.lightbox::backdrop{background:#090c09e8;backdrop-filter:blur(6px)}.lightbox img{display:block;max-height:75vh;max-width:100%;margin:auto;object-fit:contain}.lightbox p{font-size:10px;letter-spacing:1px;text-align:center}.close-photo{position:absolute;right:12px;top:5px;background:transparent;color:white;border:0;font-size:26px;padding:5px 10px;cursor:pointer}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation:none!important;transition:none!important}.motion-paused .reveal{opacity:1;transform:none}.motion-paused{scroll-behavior:auto}.motion-paused .photo-open:hover img{transform:none}
@keyframes rotor-turn{to{transform:rotate(360deg)}}@keyframes scan{from{transform:translateX(-80px)}to{transform:translateX(530px)}}@keyframes arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.parts-inner,.preparation,.faq-inner{gap:35px}.parts-image img{height:400px}.preparation h2{font-size:32px}.photo-main img{min-height:418px}.photo-open img{height:200px}.photo-main img{height:100%}}
@media(max-width:700px){h1{font-size:clamp(35px,8.2vw,51px)}.gallery-section{padding-top:0}.gallery-section .section-title{display:block}.section-intro{font-size:14px;margin-top:22px}.photo-grid{grid-template-columns:1fr 1fr;gap:12px}.photo-main{grid-column:span 2;grid-row:auto}.photo-main img{height:260px;min-height:0}.photo-open:not(.photo-main) img{height:170px}.photo-open>span{font-size:8px;padding:35px 12px 12px;letter-spacing:.7px}.photo-source{text-align:left;line-height:1.7}.parts-inner,.preparation,.faq-inner{grid-template-columns:1fr}.parts-inner{gap:28px}.parts-image img{height:280px}.parts-section,.faq-section{padding:50px 0}.parts-inner h2{font-size:40px}.preparation{gap:25px}.preparation h2{font-size:36px}.questions summary{font-size:15px;padding:22px 0}.questions details p{font-size:13px;margin-right:10px}.lightbox{padding:45px 10px 10px}footer{gap:14px}.mobile-call{box-shadow:0 -6px 25px #0002}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.photo-open:hover img{transform:none}}
