/* Original CPK 3D parts. Transparent WebP pixels and proportions are preserved. */
.part-object{display:block;position:relative;aspect-ratio:var(--part-ratio);overflow:hidden;isolation:isolate;pointer-events:none}
.part-object img{position:absolute;width:var(--image-width);max-width:none;height:auto;left:var(--image-left);top:var(--image-top)}
.hero{min-height:44rem;padding-top:3rem;padding-bottom:11rem;background:linear-gradient(115deg,#f2f5f4 42%,#e4edef 100%)}
.hero-copy{width:52%;max-width:48rem}
.hero h1{font-size:clamp(22px,2.04vw,39px)}
.hero .hbtns{margin-top:5rem}
.hero .hbtn{padding-left:3.5rem;padding-right:2.7rem}
.hero .hbtn b{font-size:clamp(18px,1.45vw,26px)}
.hero .button-icon{left:.9rem}
.hero .hours{font-size:13px}
.hero .geo{left:44%;top:12rem;width:6rem;height:8.5rem;z-index:3}
.parts-stage{position:absolute;left:55%;right:2%;top:2rem;bottom:12rem;pointer-events:none}
.parts-stage::before{content:'';position:absolute;inset:12% 0 4% 7%;border-radius:50%;background:radial-gradient(ellipse,#fff9,transparent 72%)}
.parts-stage .part-object{position:absolute;filter:drop-shadow(0 12px 10px #173f5514)}
.parts-stage .hp1{width:43%;left:20%;top:24%;z-index:3}
.parts-stage .hp2{width:10%;left:3%;top:6%;transform:rotate(-13deg)}
.parts-stage .hp3{width:21%;right:3%;top:5%;transform:rotate(12deg)}
.parts-stage .hp4{width:37%;left:25%;top:0;transform:rotate(-8deg)}
.parts-stage .hp5{width:38%;left:9%;bottom:0;transform:rotate(-8deg);z-index:4}
.parts-stage .hp6{width:20%;right:7%;bottom:1%;transform:rotate(10deg);z-index:4}
.parts-caption{position:absolute;right:4%;bottom:10rem;font-size:13px;line-height:1.6;color:#000;letter-spacing:.03em}
.category-parts{position:absolute;inset:8% 5% 27% 26%;pointer-events:none}
.category-parts .part-object{position:absolute;filter:drop-shadow(0 7px 5px #173f5512)}
.category-main{width:77%;right:2%;top:3%;transition:translate .4s ease}
.category-secondary{width:50%;left:0;bottom:0}
.cats a:first-child .category-main{width:15%;right:42%;top:0;transform:rotate(14deg)}
.cats a:first-child .category-secondary{width:28%;left:9%;bottom:1%;transform:rotate(-12deg)}
.cats a:nth-child(3) .category-main{width:44%;right:0;top:0}
.cats a:nth-child(3) .category-secondary{width:52%}
.cats a:nth-child(4) .category-main{width:60%;top:0}
.cats a:nth-child(4) .category-secondary{width:45%}
.cats a:nth-child(5) .category-main{width:48%;right:0;top:0}
.cats a:nth-child(5) .category-secondary{width:82%;left:-7%;bottom:0}
.cats a:nth-child(6) .category-main{width:55%;top:0;right:5%}
.cats a:nth-child(6) .category-secondary{width:72%;left:-8%;bottom:0}
.cats a:nth-child(7) .category-main{width:35%;right:5%;top:0}
.cats a:nth-child(7) .category-secondary{width:46%;left:0;bottom:0}
.cats a:hover .category-main{translate:0 -5px}
.showcase .category-name{font-size:clamp(21px,2vw,34px);line-height:1.35;bottom:8%;left:6.2%}
.row-parts{display:block;position:relative;grid-column:1;grid-row:2;width:100%;height:auto;aspect-ratio:1.5;margin-top:0}
.row-parts .part-object{position:absolute;filter:drop-shadow(0 5px 4px #173f5510)}
.row-main{width:65%;left:0;top:7%}
.row-secondary{width:43%;right:0;bottom:0}
.ptr:not(.th){row-gap:.8rem;min-height:15rem}
.ptr .pname{grid-column:1;grid-row:1;align-self:end;font-size:21px}
.ptr .plist{grid-column:2;grid-row:1 / span 2;font-size:17px;color:#000}
.ptr .pgrade{grid-column:3;grid-row:1 / span 2;font-size:17px;color:#000}
.ptr .pgrade small{font-size:13px;color:#000}
.ptr:nth-child(5) .row-secondary,.ptr:nth-child(6) .row-secondary{width:30%}
.ptr:nth-child(7) .row-main{width:45%}
.ptr:nth-child(7) .row-secondary{width:60%}
.row-parts.drive-parts{aspect-ratio:1.1}
.ptr .drive-parts .row-main{width:52%;left:auto;right:0;top:0}
.ptr .drive-parts .row-secondary{width:95%;left:0;right:auto;bottom:0}
.parts-notice{margin:1.25rem 0 0;font-size:13px;line-height:1.8;color:#000;letter-spacing:.035em}
.classic-parts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;margin:0 0 3rem}
#old-car .sec-head h2{text-wrap:balance}
.classic-parts figure{margin:0;min-width:0;padding:1.5rem 1rem 1rem;border-bottom:2px solid #d5dfdf}
.classic-object{position:relative;height:10rem;display:flex;align-items:center;justify-content:center}
.classic-object .part-object{width:92%;filter:drop-shadow(0 7px 5px #173f5514)}
.classic-parts figure:nth-child(2) .part-object{width:35%}
.classic-parts figure:nth-child(4) .part-object{width:64%}
.classic-parts figcaption{font-size:17px;font-weight:700;line-height:1.7;letter-spacing:.025em;text-align:center;color:#000;margin-top:1.4rem}
@media(max-width:1199px) and (min-width:768px){
 .hero{padding-left:5%;padding-right:5%;padding-bottom:28rem;min-height:64rem}
 .hero-copy{width:100%;max-width:47rem}
 .hero h1{font-size:32px}
 .hero .hbtns{margin-top:2rem}
 .hero .geo{left:auto;right:6%;top:8.5rem}
 .parts-stage{left:17%;right:8%;top:auto;bottom:12rem;height:23rem}
 .parts-stage .hp1{width:30%;left:30%;top:20%}
 .parts-stage .hp2{width:6.5%;left:10%;top:0}
 .parts-stage .hp3{width:12%;right:2%;top:0}
 .parts-stage .hp4{width:25%;left:22%;top:0}
 .parts-stage .hp5{width:26%;left:3%;bottom:0}
 .parts-stage .hp6{width:12%;right:15%;bottom:0}
 .parts-caption{bottom:10rem}
 .classic-parts{gap:1rem}
 .classic-object{height:8rem}
}
@media(max-width:767px){
 .hero{display:flex;flex-direction:column;padding:2rem 7% 7rem;min-height:0}
 .hero-copy{display:contents;width:auto}
 .hero .eyeb{order:0;font-size:13px;line-height:1.8;padding-right:4.5rem;margin-bottom:.75rem}
 .hero h1{order:1;font-size:clamp(18px,4.35vw,31px);line-height:1.8}
 .hero .geo{top:1.4rem;right:6%;left:auto;width:3.8rem;height:5.4rem}
 .parts-stage{position:relative;order:2;inset:auto;width:100%;height:auto;aspect-ratio:1.32;margin:1.6rem 0 .5rem}
 .parts-stage .hp1{width:45%;left:18%;top:23%}
 .parts-stage .hp2{width:11%;left:1%;top:0}
 .parts-stage .hp3{width:20%;right:0;top:0}
 .parts-stage .hp4{width:36%;left:22%;top:0}
 .parts-stage .hp5{width:39%;left:0;bottom:0}
 .parts-stage .hp6{width:20%;right:5%;bottom:0}
 .parts-caption{position:static;order:3;font-size:13px;margin:.3rem 0 1.5rem;letter-spacing:0;text-align:right}
 .hero .hbtns{order:4;display:grid;width:100%;margin:0;max-width:none}
 .hero .hbtn{padding:2.2rem 2.8rem .35rem 3.5rem}
 .hero .hbtn b{font-size:22px}
 .hero .hours{order:5;font-size:13px;line-height:1.8;margin:1rem 0 0}
 .hero .town-loop{height:5rem}
 .category-parts{inset:6% 7% 30% 23%}
 .showcase .category-name{font-size:clamp(21px,5.4vw,28px)}
 .ptr:not(.th){display:grid;grid-template-columns:minmax(0,1fr);padding:1.75rem;min-height:0;row-gap:1.25rem}
 .ptr .pname{grid-column:1;grid-row:1;margin:0;font-size:22px}
 .row-parts{grid-row:2;max-width:19rem;width:100%;margin:0 auto}
 .row-main{width:58%}
 .row-secondary{width:37%}
 .ptr .plist{grid-column:1;grid-row:3;font-size:17px;line-height:1.9}
 .ptr .pgrade{grid-column:1;grid-row:4;font-size:17px;line-height:1.8;margin:0}
 .classic-parts{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:2rem}
 .classic-parts figure{padding:.5rem 0 1rem}
 .classic-object{height:7rem}
 .classic-parts figcaption{font-size:15px;margin-top:1rem;overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){.category-main{transition:none}}
