/* October 2026 IDS racing education and vehicle dossiers */
.grv-page{background:#07090e;color:#eef2f7}
.grv-crumb,.grv-hero,.grv-section,.grv-stats,.grv-anchors,.grv-hub-hero{max-width:1230px;margin-left:auto;margin-right:auto}
.grv-crumb{padding:25px 20px;color:#a5b4bf;font-size:.79rem}.grv-crumb a{color:#d1e4f2}
.grv-hero{position:relative;min-height:470px;border:1px solid #65434b;overflow:hidden;background:#100e16}.grv-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.58}.grv-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#090b10f5 0%,#090b10d1 51%,transparent 95%),linear-gradient(0deg,#090b10bf,transparent)}
.grv-hero-copy{position:relative;z-index:1;max-width:780px;padding:73px 36px}
.grv-tag{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;font-weight:900;color:#f1a194}
.grv-hero h1,.grv-hub-hero h1{font:900 clamp(3.5rem,8vw,7.2rem)/.92 "Arial Narrow",Impact,sans-serif;text-transform:uppercase;letter-spacing:-.04em;margin:14px 0;color:#fff}
.grv-hero-copy>strong{color:#f5a18f;letter-spacing:.08em;font-size:.75rem}
.grv-hero-copy>p:not(.grv-tag){color:#d3e0e9;line-height:1.7;font-size:1.05rem}
.grv-buttons,.grv-source-links,.grv-related-links{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.grv-buttons a,.grv-related-links a,.grv-source-links a{display:inline-block;background:#121e29;border:1px solid #5a6574;padding:11px 14px;color:#e3eff8;text-decoration:none;font-size:.8rem;font-weight:800}
.grv-buttons a:first-child{background:#a8323b;border-color:#ef998e;color:#fff}
.grv-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:14px 0}.grv-stats>div{background:#121a25;border-top:3px solid #bd5555;padding:15px}
.grv-stats span{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:#98abb9;font-weight:800;display:block}.grv-stats strong{display:block;margin-top:9px;font-size:1rem;color:#fff}
.grv-anchors{display:flex;flex-wrap:wrap;gap:8px;padding:14px 20px 20px}.grv-anchors a{color:#d2e1ea;font-size:.75rem;text-decoration:none;padding:9px 12px;background:#171c27;border:1px solid #394c5b}
.grv-section{padding:38px 20px 43px;border-top:1px solid #344350;scroll-margin-top:80px}
.grv-section h2{font:900 clamp(2rem,4vw,3.55rem)/1.04 "Arial Narrow",Impact,sans-serif;text-transform:uppercase;color:#f7f9fb;margin:9px 0 17px}
.grv-section h3{font:900 1.35rem/1.13 "Arial Narrow",Impact,sans-serif;text-transform:uppercase;color:#f5f8fa}
.grv-section>p,.grv-section>div>p{max-width:990px;color:#c0cdd9;font-size:.94rem;line-height:1.8}
.grv-section a{color:#e0edf6}.grv-notice{background:#251b24;border-left:3px solid #dd766c;padding:17px 22px;margin-top:21px;max-width:960px}
.grv-notice strong{color:#f4aa98;font-size:.78rem;text-transform:uppercase}.grv-notice p{color:#d7e2e9;line-height:1.6;font-size:.88rem}
.grv-two{display:grid;grid-template-columns:1.1fr .9fr;gap:25px}.grv-figure{margin:0;background:#111c26;border:1px solid #445464;min-width:0}
.grv-figure button{display:block;width:100%;border:0;padding:0;aspect-ratio:16/9;background:#101825;cursor:zoom-in;overflow:hidden}
.grv-figure img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s}.grv-figure button:hover img{transform:scale(1.04)}.grv-figure figcaption{color:#b7cbd8;font-size:.78rem;padding:12px 14px;line-height:1.55}
.grv-build-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:23px 0}
.grv-build-grid article{background:#121c2a;border:1px solid #465568;padding:20px}.grv-build-grid article span{color:#ffa28c;font-size:.66rem;font-weight:900;letter-spacing:.08em}.grv-build-grid article p{color:#bfcbd7;font-size:.87rem;line-height:1.67}
.grv-details{max-width:990px}.grv-detail{background:#121c28;border:1px solid #3c4d5d;margin:8px 0}.grv-detail summary{cursor:pointer;padding:15px 19px;color:#e7f0f8;font-weight:850;font-size:.9rem}.grv-detail p{color:#c3d3dd;line-height:1.75;padding:0 19px 15px;margin:0;font-size:.88rem}
.grv-practice-section{background:#11171f}.grv-practice{border:1px solid #465b6b;padding:18px;max-width:820px;background:#0f202a}.grv-practice label{display:flex;gap:11px;align-items:center;padding:11px;color:#d7e7ee;font-size:.88rem;cursor:pointer}.grv-practice input{width:17px;height:17px;accent-color:#d56c5b}.grv-progress{font-size:.78rem;color:#ffb49e}.grv-practice button{background:#b14a4d;border:1px solid #f0a493;color:#fff;padding:9px 14px;cursor:pointer;font-weight:850}.grv-small{font-size:.75rem!important;color:#91aabb!important}
.grv-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.grv-last{padding-bottom:85px}.grv-return{display:inline-block;margin-top:15px}
.grv-hub-hero{padding:80px 30px 75px;background:radial-gradient(circle at 75% 35%,#ab414a61,transparent 43%),linear-gradient(135deg,#211720,#080d15);border:1px solid #65444b}.grv-hub-hero h1 span{color:#ffa08b}.grv-hub-hero>p:not(.grv-tag){font-size:1.1rem;line-height:1.7;max-width:790px;color:#d0dee8}
.grv-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grv-vehicle-card{display:block;text-decoration:none;background:#121c27;border:1px solid #505363;color:#ebf4f8;overflow:hidden}.grv-vehicle-card>img{width:100%;height:230px;object-fit:cover;display:block}.grv-vehicle-card>div{padding:23px}.grv-vehicle-card span{color:#ffa48f;font-size:.7rem;font-weight:900;letter-spacing:.08em}.grv-vehicle-card h2{font-size:2.25rem;margin:10px 0}.grv-vehicle-card p{font-size:.9rem;color:#c1ced9;line-height:1.7}.grv-vehicle-card strong{font-size:.75rem;color:#ffa58c}
.grv-scroll-table{overflow-x:auto}.grv-scroll-table table{width:100%;border-collapse:collapse;min-width:700px}.grv-scroll-table th,.grv-scroll-table td{padding:16px;text-align:left;border-bottom:1px solid #3f4d5a;color:#cfdae3;font-size:.87rem}.grv-scroll-table th{background:#172333;color:#f3f5f9}.grv-scroll-table td{background:#101923}
.grv-lightbox{max-width:96vw;max-height:95vh;border:1px solid #879baa;background:#07121b;color:#eff8fc;padding:14px}.grv-lightbox::backdrop{background:#000e}.grv-lightbox button{float:right;border:0;padding:11px;background:#eff1f5;color:#111c27;cursor:pointer}.grv-lightbox img{display:block;max-width:100%;max-height:77vh;object-fit:contain;margin-top:42px}.grv-lightbox p{font-size:.81rem;color:#d5e4ee}
.gr-page .gr-racing-primer{max-width:1240px}.gr-page .gr-racing-lede{font-size:1.04rem;max-width:1050px}.gr-page .gr-race-hero-photo{position:relative;overflow:hidden;min-height:390px;border:1px solid #754a4b;margin:20px 0}.gr-page .gr-race-hero-photo img{display:block;width:100%;height:390px;object-fit:cover}.gr-page .gr-race-hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0a101dea,transparent 65%)}.gr-page .gr-race-hero-photo>div{position:absolute;z-index:1;bottom:24px;left:27px;display:grid;gap:9px}.gr-page .gr-race-hero-photo span{font-size:.67rem;font-weight:900;color:#ffa58e}.gr-page .gr-race-hero-photo strong{font:900 clamp(1.9rem,3vw,3rem)/1 "Arial Narrow",Impact,sans-serif;color:#fff;text-transform:uppercase}.gr-page .gr-race-hero-photo small{color:#c9d7e1}
.gr-page .gr-race-guide-nav{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0}.gr-page .gr-race-guide-nav a{background:#1b1923;border:1px solid #75505a;color:#f0e1e2;padding:11px 14px;text-decoration:none;font-size:.76rem;font-weight:900}
.gr-page .gr-racing-chapter{padding:30px 0 34px;border-top:1px solid #49505a;scroll-margin-top:80px}.gr-page .gr-racing-chapter h3{font:900 clamp(1.8rem,3.6vw,2.75rem)/1.07 "Arial Narrow",Impact,sans-serif}.gr-page .gr-racing-chapter h4{font:900 1.2rem/1.1 "Arial Narrow",Impact,sans-serif;color:#eff2f7;text-transform:uppercase}
.gr-page .gr-racing-chapter>p,.gr-page .gr-racing-split p{font-size:.94rem;color:#c5d5df;line-height:1.75;max-width:1040px}
.gr-page .gr-racing-split{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;margin:24px 0}.gr-page .gr-racing-split ol{color:#d2dce5;font-size:.88rem;line-height:1.75;padding-left:22px}.gr-page .gr-racing-split li{margin:9px 0}.gr-page .gr-racing-cta{display:inline-block;background:#a5373f;border:1px solid #e5a195;color:#fff;padding:12px 17px;text-decoration:none;font-size:.83rem;font-weight:900}
.gr-page .gr-race-media{margin:0;min-width:0;background:#121e28;border:1px solid #425663}.gr-page .gr-race-media img{display:block;width:100%;height:235px;object-fit:cover}.gr-page .gr-race-media figcaption{padding:12px 14px;display:grid;gap:7px}.gr-page .gr-race-media strong{font-size:.7rem;font-weight:900;color:#f4a08d;letter-spacing:.08em}.gr-page .gr-race-media span{color:#b6cbd6;font-size:.77rem}
.gr-page .gr-racing-meter-lab{display:grid;grid-template-columns:minmax(180px,.6fr) minmax(0,1.4fr);border:1px solid #6b5261;background:#121b28;max-width:1040px;margin:22px 0}.gr-page .gr-racing-switch{display:grid;align-content:start;gap:9px;padding:19px;border-right:1px solid #405767}.gr-page .gr-racing-switch button{padding:12px;text-align:left;color:#d8e8f3;border:1px solid #3e5364;background:#1d2a36;cursor:pointer;font-weight:900}.gr-page .gr-racing-switch button.is-active{color:#fff;background:#993742;border-color:#e88d79}.gr-page .gr-racing-meter{padding:24px}.gr-page .gr-racing-meter>span{font-weight:900;color:#f9b39b;font-size:.73rem;letter-spacing:.08em}.gr-page .gr-racing-meter p{color:#c8d8e2;font-size:.85rem;line-height:1.6}.gr-page .gr-racing-meter small{color:#8799a6}.gr-page .gr-racing-bars{display:grid;gap:13px;margin-top:18px}.gr-page .gr-racing-bars>div{display:grid;grid-template-columns:110px 1fr;gap:11px;align-items:center;color:#c8d8e3;font-size:.8rem}.gr-page .gr-racing-bars i{display:block;height:10px;background:#2e3b49}.gr-page .gr-racing-bars b{height:100%;display:block;background:linear-gradient(90deg,#a32a3a,#ffab7b);transition:width .2s}.gr-page .gr-racing-bars strong{color:#fff;font-size:.8rem}
.gr-page .gr-race-vehicle-cards,.gr-page .gr-native-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:24px 0}.gr-page .gr-race-vehicle-cards>a,.gr-page .gr-native-cards>a{display:flex;flex-direction:column;text-decoration:none;background:#121c28;border:1px solid #5a4550;overflow:hidden}.gr-page .gr-race-vehicle-cards img,.gr-page .gr-native-cards img{width:100%;height:140px;object-fit:cover}.gr-page .gr-race-vehicle-cards span,.gr-page .gr-native-cards span{color:#ffa38f;font-size:.65rem;font-weight:900;letter-spacing:.09em;margin:15px 14px 0}.gr-page .gr-race-vehicle-cards strong,.gr-page .gr-native-cards h3{margin:8px 14px;color:#fff;font:900 1.35rem/1.1 "Arial Narrow",Impact,sans-serif;text-transform:uppercase}.gr-page .gr-race-vehicle-cards p,.gr-page .gr-native-cards p{color:#bdcbd6;font-size:.82rem;line-height:1.55;padding:0 14px}.gr-page .gr-race-vehicle-cards b,.gr-page .gr-native-cards strong{margin:auto 14px 18px;font-size:.72rem;color:#f5a994}.gr-page .gr-native-cards>a:hover,.gr-page .gr-race-vehicle-cards>a:hover{border-color:#f2a28c}
.gr-page .gr-racing-mode-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin:20px 0}.gr-page .gr-racing-mode-grid article{padding:20px;background:#101d2b;border:1px solid #3a5361}.gr-page .gr-racing-mode-grid strong{font-size:.66rem;color:#ffa48e;letter-spacing:.09em}.gr-page .gr-racing-mode-grid p{color:#b9cbd7;line-height:1.6;font-size:.88rem}
.gr-page .gr-race-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}.gr-page .gr-racing-end{padding:22px;background:#241922;border-left:3px solid #ec8d76;display:flex;gap:13px;flex-wrap:wrap;align-items:center}.gr-page .gr-racing-end strong{color:#fff}.gr-page .gr-racing-end a{color:#dbeaf4;font-size:.82rem}
.gr-page .gr-native-technology-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0}.gr-page .gr-native-technology-grid a{background:linear-gradient(155deg,#2a1822,#111d29);border:1px solid #6a4550;padding:19px;display:grid;gap:12px;text-decoration:none}.gr-page .gr-native-technology-grid a:hover{border-color:#f4a48d}.gr-page .gr-native-technology-grid span{font-size:.67rem;color:#e7a19a}.gr-page .gr-native-technology-grid strong{font-size:1.07rem;color:#fff}.gr-page .gr-native-technology-grid small{color:#b8cdd9;font-size:.77rem;line-height:1.4}
@media(max-width:990px){.gr-page .gr-native-technology-grid,.gr-page .gr-native-cards,.gr-page .gr-race-vehicle-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.grv-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.grv-hero-copy{padding:45px 18px}.grv-hero{min-height:410px}.grv-hero>img{opacity:.38}.grv-stats{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.grv-two,.grv-build-grid,.grv-hub-grid,.gr-page .gr-racing-split{grid-template-columns:1fr}.gr-page .gr-racing-meter-lab{grid-template-columns:1fr}.gr-page .gr-racing-switch{display:flex;border-right:0;border-bottom:1px solid #405767}.gr-page .gr-racing-switch button{flex:1}.grv-gallery{grid-template-columns:1fr}.gr-page .gr-race-hero-photo img{height:310px}.gr-page .gr-race-hero-photo{min-height:310px}}
@media(max-width:480px){.gr-page .gr-native-technology-grid,.gr-page .gr-native-cards,.gr-page .gr-race-vehicle-cards,.gr-page .gr-race-media-grid,.gr-page .gr-racing-mode-grid{grid-template-columns:1fr}.grv-hub-hero{padding:50px 18px}.grv-hero h1{font-size:3.1rem}.gr-page .gr-race-vehicle-cards img,.gr-page .gr-native-cards img{height:185px}.gr-page .gr-racing-bars>div{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.grv-figure img,.gr-page .gr-racing-bars b{transition:none}}

/* Ensure searchable cards and inactive steps are truly hidden. */
.grv-page [hidden]{display:none!important}
