/* Torquehouse learning and customization pages. */
.btl.btl{--btl-yellow:var(--yellow)}
.lab-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.lab-card{display:flex;flex-direction:column;background:#e9ecdf;border:1px solid #cbd1be;padding:26px;min-width:0;transition:background .2s}.lab-card:hover{background:#e0e8c8;text-decoration:none}.lab-card>.eyebrow{font-size:9px;color:#596249}.lab-card svg{height:155px;width:100%;margin:15px 0;color:#59683d}.lab-card h2,.lab-card h3{font-size:29px;line-height:1.1;letter-spacing:-.04em;margin:5px 0 14px}.lab-card p{font-size:14px;flex:1}.lab-card>.text-link{margin-top:9px}.torque-extra-links{padding:27px 0 0;border:0;margin:0}.learning-lab .lab-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.type-dimensions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.type-dimensions p{margin:7px 0!important}.type-dimensions b{font:700 18px var(--mono)}.type-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.type-card{background:#fafbf6;border:1px solid var(--line);padding:24px;display:flex;flex-direction:column;min-width:0}.type-card[hidden]{display:none}.type-card h2{font-size:25px;letter-spacing:-.04em}.type-card p{font-size:13px;line-height:1.7}.type-silhouette{width:100%;max-height:115px;color:#86964f;margin:10px 0 18px}.type-check{border-top:1px solid var(--line);padding-top:15px;margin-top:auto;color:var(--muted)}.type-check b{color:var(--ink)}[data-type-count]{font:11px var(--mono);margin-bottom:22px}.types-section>.source-context{margin-top:0}.customizer,.suspension-demo{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);border:1px solid var(--line);background:#fafbf6}.livery-stage,.suspension-visual{padding:32px;background:#e8ebdf;min-width:0}.livery-stage{display:flex;flex-direction:column;justify-content:center}.livery-stage svg{width:100%;display:block;margin:24px 0}.livery-stage>p{font:12px/1.7 var(--mono)}.livery-stage .small{font:12px/1.7 Arial,sans-serif;color:var(--muted)}.livery-controls,.suspension-controls{padding:30px;min-width:0}.livery-controls h2,.suspension-controls h2{font-size:28px;margin-bottom:26px}.livery-controls label{margin-bottom:17px}.livery-controls button{margin-top:5px}.bodyshop-notes{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:42px}.bodyshop-notes article{padding-top:25px;border-top:1px solid var(--line)}.bodyshop-notes h2{font-size:29px;line-height:1.15;margin:15px 0}.bodyshop-notes p{font-size:14px;line-height:1.8}.bodyshop-notes a,.source-context a{text-decoration:underline;text-underline-offset:3px}.suspension-visual svg{width:100%;display:block}.suspension-visual>p{font:12px/1.7 var(--mono);margin-top:20px}.suspension-controls input[type=range]{padding:0;border:0;background:transparent;accent-color:#617337;min-height:36px;margin:10px 0 20px}.suspension-controls output{float:right;font:12px var(--mono)}.suspension-controls .filter-chips{gap:4px;margin-bottom:25px}.suspension-controls .filter-chips button{padding:8px;font-size:10px}.demo-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.demo-buttons button:disabled{opacity:.5;cursor:not-allowed}.suspension-controls>p{font-size:13px}.source-context summary{font-weight:700;cursor:pointer;min-height:30px}.torque-learn-teaser{border-bottom:1px solid var(--line)}
@media(min-width:761px) and (max-width:1120px){.site-header .shell{width:calc(100% - 36px)}.nav nav{gap:13px}.nav nav a{font-size:11px}.nav .brand-name{font-size:12px}.nav .brand-mark{font-size:37px}.nav nav .nav-start{padding-left:14px;margin-left:0}}
@media(max-width:900px){.lab-card-grid,.type-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customizer,.suspension-demo{grid-template-columns:1fr}.type-dimensions{grid-template-columns:1fr 1fr}.suspension-visual svg{max-height:340px}.livery-stage svg{max-height:350px}.bodyshop-notes{gap:24px}}
@media(min-width:761px) and (max-width:1000px){.nav{flex-wrap:wrap;padding:13px 0}.menu-toggle{display:flex;gap:15px;align-items:center;min-height:44px;background:none;border:1px solid var(--line);padding:8px 14px}.nav nav{width:100%;display:none;flex-direction:column;align-items:stretch;gap:0;padding:12px 0}.nav nav.is-open{display:flex}.nav nav a{border-top:1px solid var(--line);padding:14px 4px}.nav nav .nav-start{border-left:0;margin:0;padding-left:4px}}
@media(max-width:540px){.lab-card-grid,.learning-lab .lab-card-grid,.type-card-grid,.bodyshop-notes{grid-template-columns:1fr}.lab-card{padding:23px}.livery-stage,.suspension-visual{padding:20px}.livery-controls,.suspension-controls{padding:22px}.type-dimensions{gap:18px}.bodyshop-notes h2{font-size:27px}.suspension-controls .filter-chips{flex-wrap:wrap}.suspension-visual svg text{font-size:20px}.lab-card svg{height:135px}}

/* Deliberately static workshop illustrations: movement is initiated only by the suspension control. */
.customizer,.suspension-demo{box-shadow:0 16px 42px rgba(35,38,33,.09);overflow:hidden}.livery-stage,.suspension-visual{position:relative;background:linear-gradient(135deg,#f2f4e9 0%,#dfe5d4 54%,#cdd4bf 100%);isolation:isolate}.livery-stage:before,.suspension-visual:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,rgba(35,38,33,.075) 1px,transparent 1px),linear-gradient(rgba(35,38,33,.055) 1px,transparent 1px);background-size:24px 24px;mask-image:linear-gradient(to bottom,black,transparent)}.livery-stage .eyebrow,.suspension-visual .eyebrow{display:block;color:#445035;letter-spacing:.13em}.livery-stage svg{filter:drop-shadow(0 14px 8px rgba(27,31,25,.18));margin:16px 0 22px}.livery-stage svg>path:first-of-type{stroke:#7f8878;stroke-width:2}.livery-stage svg>path:nth-of-type(2){filter:drop-shadow(0 3px 0 rgba(35,38,33,.22))}.livery-stage svg circle:nth-of-type(1),.livery-stage svg circle:nth-of-type(2){stroke:#11150f;stroke-width:7;stroke-dasharray:4 5;filter:drop-shadow(0 3px 1px rgba(0,0,0,.28))}.livery-stage svg circle:nth-of-type(3),.livery-stage svg circle:nth-of-type(4){fill:#aeb7a7;stroke:#3d473b;stroke-width:6}.livery-stage svg circle:nth-of-type(3):hover,.livery-stage svg circle:nth-of-type(4):hover{fill:#c5cfbc}.livery-stage svg rect{stroke:#232621;stroke-width:2;filter:drop-shadow(0 2px 0 rgba(35,38,33,.16))}.livery-stage svg text{paint-order:stroke;stroke:#f4f3ee;stroke-width:1px}.livery-controls,.suspension-controls{background:#fbfcf7}.livery-controls h2,.suspension-controls h2{padding-bottom:14px;border-bottom:3px solid var(--yellow);position:relative}.livery-controls h2:after,.suspension-controls h2:after{content:"";display:block;width:54px;border-bottom:3px solid #232621;position:absolute;bottom:-3px;left:0}.livery-controls label,.suspension-controls label{font:700 11px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:#4a5145}.livery-controls select,.livery-controls input{margin-top:7px;background:#f4f5ee;border-color:#afb8a8}.livery-controls select:focus,.livery-controls input:focus{outline:3px solid rgba(228,240,100,.6);outline-offset:2px}.livery-stage>p:first-of-type,.suspension-visual>p{padding:10px 12px;background:rgba(250,251,246,.78);border-left:3px solid var(--yellow)}
.suspension-visual{display:flex;flex-direction:column;justify-content:center}.suspension-visual svg{filter:drop-shadow(0 10px 8px rgba(35,38,33,.12));margin-top:8px}.suspension-visual svg>path:first-of-type{stroke:#4e574b;stroke-width:7;stroke-linecap:round}.suspension-visual svg>path:nth-of-type(2){stroke:#232621;stroke-width:11;stroke-linecap:round}.suspension-visual svg rect{fill:#4e574b;stroke:#232621;stroke-width:3}.suspension-visual svg [data-spring]{stroke:#a5b549;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(2px 2px 0 rgba(35,38,33,.22))}.suspension-visual svg [data-damper]{stroke:#232621;stroke-width:10;stroke-linecap:round}.suspension-visual svg line{stroke:#76806d;stroke-width:2}.suspension-visual svg [data-sprung-mass] rect{fill:#e4f064;filter:drop-shadow(0 5px 0 rgba(35,38,33,.22))}.suspension-visual svg [data-sprung-mass] text{font-weight:700;letter-spacing:.09em}.suspension-controls .filter-chips button{border:1px solid #aeb7a4;background:#f0f2ea}.suspension-controls .filter-chips button[aria-pressed=true]{background:#232621;color:#f4f3ee;border-color:#232621}.suspension-controls input[type=range]{accent-color:#7f913a}.suspension-controls input[type=range]:focus{outline:3px solid rgba(228,240,100,.65);outline-offset:3px}.suspension-controls output{background:#232621;color:#f4f3ee;padding:3px 6px}.demo-buttons .button{box-shadow:3px 3px 0 #bcc4b3}.demo-buttons .button:active{transform:translate(2px,2px);box-shadow:1px 1px 0 #bcc4b3}
@media(max-width:540px){.livery-stage svg{margin:10px 0 16px}.livery-stage svg text{font-size:30px}.livery-stage>p:first-of-type,.suspension-visual>p{padding:9px}.customizer,.suspension-demo{box-shadow:0 10px 28px rgba(35,38,33,.08)}}

/* SVG-only detail layers: no external art asset or automatic motion. */
.livery-ground{stroke:#747d70;stroke-width:3}.livery-shadow{fill:#66705f;opacity:.25}.livery-tire{fill:#20251e;stroke:#11150f;stroke-width:7;stroke-dasharray:5 6}.livery-sidewall{fill:#30372e;stroke:#65705f;stroke-width:2}.livery-lug{fill:#252c25;stroke:#e2e7da;stroke-width:2}.livery-spokes{fill:none;stroke:#e4e9dd;stroke-width:3;opacity:.76}.livery-shell{stroke:#20251e;stroke-width:4;stroke-linejoin:round}.livery-gloss{fill:#fff;opacity:.22}.livery-roofline,.livery-panel-lines{fill:none;stroke:#232621;stroke-width:3;stroke-linejoin:round}.livery-window{fill:#33433c;stroke:#232621;stroke-width:3}.livery-window-detail{fill:#71909a;opacity:.8}.livery-rocker{stroke:#232621;stroke-width:7}.livery-highlight{fill:none;stroke:#f8faef;stroke-width:3;opacity:.65}.livery-number-plate{fill:#f7f8f0;stroke:#232621;stroke-width:3}.livery-number{font:700 36px Consolas,monospace;fill:#20251e;paint-order:stroke;stroke:#f7f8f0;stroke-width:1px}.livery-outline{fill:none;stroke:#20251e;stroke-width:4;stroke-linejoin:round}
.suspension-ground{stroke:#596253;stroke-width:7;stroke-linecap:round}.suspension-axle{stroke:#20251e;stroke-width:10;stroke-linecap:round}.suspension-wheel{fill:#2a3028;stroke:#11150f;stroke-width:6;stroke-dasharray:3 4}.suspension-arms{fill:none;stroke:#3c463a;stroke-width:9;stroke-linecap:round;stroke-linejoin:round}.suspension-mounts{stroke:#20251e;stroke-width:11;stroke-linecap:round}.suspension-lower-shaft{stroke:#20251e;stroke-width:10;stroke-linecap:round}.suspension-shock-body{fill:url(#shock-body);stroke:#20251e;stroke-width:3}.suspension-visual svg [data-damper]{stroke:#d9dfd2;stroke-width:7;stroke-linecap:round}.suspension-rest-line{stroke:#75806e;stroke-width:2;stroke-dasharray:6 6}.suspension-chassis{fill:#e4f064;stroke:#20251e;stroke-width:4;stroke-linejoin:round;filter:drop-shadow(0 5px 0 rgba(35,38,33,.22))}.suspension-chassis-top{fill:#cbd950;stroke:#20251e;stroke-width:3}.suspension-label{font:700 15px Consolas,monospace;letter-spacing:.1em;fill:#20251e}.suspension-part-label{font:700 13px Consolas,monospace;letter-spacing:.04em;fill:#30392e}
