
  :root{
    --ink:#0b1f3a;
    --ink-soft:#637083;
    --line:#dce3ec;
    --bg:#f7f9fc;
    --card:#FFFFFF;
    --primary:#2f6feb;
    --primary-hover:#4c8dff;
    --primary-soft:#eef4ff;
    --primary-soft-border:#d8e5ff;
    --dark:#08182d;
  }
  *{box-sizing:border-box;}
  body{
    margin:0;
    font-family:'Inter',system-ui,-apple-system,sans-serif;
    color:var(--ink);
    background:var(--bg);
    -webkit-font-smoothing:antialiased;
  }
  a{color:inherit;text-decoration:none;}
  img{max-width:100%;display:block;}

  .wrap{max-width:1440px;margin:0 auto;padding:0 20px;}
  @media (min-width:1024px){.wrap{padding:0 48px;}}

  /* Header */
  header{
    background:#fff;
    border-bottom:1px solid var(--line);
    position:sticky; top:0; z-index:50;
  }
  .header-inner{
    display:flex; align-items:center; justify-content:space-between;
    height:76px;
  }
  .logo{display:flex; align-items:center; gap:10px;}
  .logo-full{display:block; height:36px; width:auto;}
  .logo-compact{display:none; height:30px; width:auto;}

  nav.main-nav{display:flex; align-items:center; gap:30px;}
  .nav-item{position:relative; display:inline-flex;}
  .nav-trigger{background:none; border:none; font:inherit; font-weight:700; color:var(--ink); cursor:pointer; display:inline-flex; align-items:center; gap:5px; padding:0;}
  .dropdown-panel{position:absolute; top:100%; left:0; margin-top:16px; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:0 12px 28px rgba(13,27,50,.12); padding:8px; min-width:210px; display:none; z-index:50;}
  .nav-item.open .dropdown-panel{display:block;}
  .dropdown-panel a{display:block; padding:10px 12px; border-radius:8px; color:var(--ink); font-size:14px; font-weight:600; white-space:nowrap; min-height:20px;}
  .dropdown-panel a:hover{background:var(--primary-soft); color:var(--primary);}
  .dropdown-panel.wide{min-width:520px; padding:16px;}
  .dropdown-cols{display:grid; grid-template-columns:1fr 1fr; gap:8px 24px;}
  .dropdown-heading{font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-soft); padding:6px 12px 4px;}
  .dropdown-featured{display:block; grid-column:1/-1; background:var(--primary-soft); border:1px solid var(--primary-soft-border); border-radius:10px; padding:14px; margin-bottom:8px;}
  .dropdown-featured:hover{background:var(--primary-soft);}
  .dropdown-featured-title{font-weight:800; color:var(--ink); font-size:14.5px; display:block; margin-bottom:3px;}
  .dropdown-featured-desc{font-size:12.5px; color:var(--ink-soft); font-weight:500; display:block;}
  .dropdown-bottom{border-top:1px solid var(--line); margin-top:8px; padding-top:10px;}
  .mobile-nav-cta{display:flex; align-items:center; justify-content:center; min-height:48px; margin:16px 12px 8px; background:var(--primary); color:#fff; font-weight:800; border-radius:10px; font-size:14.5px;}
  .mobile-nav-cta:hover{background:var(--primary-hover);}
  .dropdown-viewall{color:var(--primary) !important; border-top:1px solid var(--line); margin-top:4px; padding-top:12px !important;}

  .mobile-nav-overlay{position:fixed; inset:0; background:rgba(11,31,58,.5); z-index:200; opacity:0; pointer-events:none; transition:opacity .2s;}
  .mobile-nav-overlay.open{opacity:1; pointer-events:auto;}
  .mobile-nav{position:fixed; top:0; right:0; height:100%; width:86vw; max-width:360px; background:#fff; z-index:201; box-shadow:-12px 0 32px rgba(0,0,0,.2); display:flex; flex-direction:column; transform:translateX(100%); transition:transform .25s ease;}
  .mobile-nav.open{transform:translateX(0);}
  .mobile-nav-head{display:flex; align-items:center; justify-content:space-between; padding:18px 20px; border-bottom:1px solid var(--line);}
  .mobile-nav-title{font-weight:800; font-size:16px;}
  .mobile-nav-close{background:none; border:none; cursor:pointer; padding:6px; min-width:44px; min-height:44px; display:flex; align-items:center; justify-content:center; color:var(--ink);}
  .mobile-nav-body{padding:12px 8px; overflow-y:auto; flex:1;}
  .mobile-nav-link{display:flex; align-items:center; min-height:48px; padding:0 12px; font-weight:700; color:var(--ink); border-radius:10px;}
  .mobile-nav-link:hover, .mobile-nav-link:active{background:var(--primary-soft);}
  .mobile-nav-group summary{display:flex; align-items:center; justify-content:space-between; min-height:48px; padding:0 12px; font-weight:700; color:var(--ink); cursor:pointer; list-style:none; border-radius:10px;}
  .mobile-nav-group summary::-webkit-details-marker{display:none;}
  .mobile-nav-group summary::after{content:''; width:9px; height:9px; border-right:2px solid var(--ink-soft); border-bottom:2px solid var(--ink-soft); transform:rotate(45deg); transition:transform .2s; flex:none;}
  .mobile-nav-group[open] summary::after{transform:rotate(-135deg);}
  .mobile-nav-sub{display:flex; flex-direction:column; padding:4px 12px 10px 24px;}
  .mobile-nav-sub a{min-height:44px; display:flex; align-items:center; color:var(--ink-soft); font-weight:600; font-size:14.5px;}
  .mobile-nav-sub a:hover{color:var(--primary);}
  body.nav-locked{overflow:hidden;}
  nav.main-nav a{
    font-size:14.5px; font-weight:600; color:#2B2F38;
    display:flex; align-items:center; gap:4px;
  }
  nav.main-nav a:hover{color:var(--primary);}
  .caret{width:9px;height:9px;opacity:.55;}

  .header-actions{display:flex; align-items:center; gap:22px;}
  .icon-link{display:flex; flex-direction:column; align-items:center; gap:2px; font-size:11.5px; font-weight:600; color:#2B2F38;}
  .icon-link svg{width:19px;height:19px;}

  .menu-btn{display:none; background:none; border:none; cursor:pointer;}

  /* Hero */
  .hero{
    background:var(--bg);
    overflow:hidden;
  }
  .hero-grid{
    display:grid;
    grid-template-columns:0.78fr 0.95fr 0.72fr;
    gap:28px;
    align-items:center;
    padding-top:56px;
  }
  .eyebrow-tag{
    display:block;
    font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
    color:var(--primary); margin:0 0 12px;
  }
  h1.hero-h{
    font-size:42px; line-height:1.1; font-weight:800; letter-spacing:-0.03em;
    margin:0 0 20px;
  }
  h1.hero-h .accent{color:var(--primary);}
  .hero-sub{
    font-size:17px; line-height:28px; color:var(--ink-soft);
    max-width:420px; margin:0 0 28px;
  }
  .trust-row{display:grid; grid-template-columns:1fr; gap:14px; max-width:340px;}
  .trust-item{
    display:flex; gap:12px; align-items:flex-start;
    border-right:none; border-bottom:1px solid #ece9e5; padding-bottom:12px;
  }
  .trust-item:last-child{border-bottom:none; padding-bottom:0;}
  .trust-item .ic{flex:none; color:var(--primary); margin-top:2px;}
  .trust-item .ic svg{width:22px; height:22px;}
  .trust-item strong{display:block; font-size:14px; font-weight:700; margin-bottom:2px;}
  .trust-item span{font-size:13.5px; color:var(--ink-soft); line-height:19px;}

  .hero-visual{
    position:relative; background:var(--primary-soft); border:1px solid var(--primary-soft-border);
    border-radius:20px; padding:28px; display:flex; align-items:center; justify-content:center; min-height:340px;
  }
  .hero-visual-img{width:100%; max-width:420px; height:auto; object-fit:contain; display:block;}
  .callout{position:absolute; display:flex; align-items:center; gap:8px; max-width:150px;}
  .callout-dot{
    width:12px; height:12px; border-radius:50%; background:var(--primary);
    border:3px solid #fff; box-shadow:0 0 0 1.5px var(--primary); flex:none;
  }
  .callout-label{font-size:11px; line-height:1.35; background:#fff; padding:5px 9px; border-radius:8px; box-shadow:0 2px 8px rgba(13,27,50,.1);}
  .callout-label strong{display:block; color:var(--ink); font-size:12px; font-weight:800;}
  .callout-label span{color:var(--ink-soft);}
  .co-tires, .co-brakes, .co-fluids{flex-direction:row-reverse; text-align:right;}

  .hero-video-card{
    background:#fff; border:1px solid var(--line); border-radius:16px; padding:20px;
    box-shadow:0 12px 28px rgba(13,27,50,.08);
  }
  .hero-video-card h3{font-size:16px; font-weight:800; margin:0 0 8px; line-height:1.3;}
  .hero-video-card p{font-size:12.5px; color:var(--ink-soft); line-height:1.5; margin:0 0 16px;}
  .video-trigger{
    position:relative; display:block; width:100%; border:none; padding:0; cursor:pointer;
    border-radius:12px; overflow:hidden; background:none;
  }
  .video-poster{
    display:flex; align-items:center; justify-content:center; width:100%; height:140px;
    background:linear-gradient(135deg, var(--dark), #16324f); color:#7fb2ff;
  }
  .play-btn{
    position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
    width:52px; height:52px; border-radius:50%; background:#fff; color:var(--primary);
    display:flex; align-items:center; justify-content:center; box-shadow:0 8px 20px rgba(0,0,0,.25);
  }
  .video-trigger:focus-visible{outline:3px solid var(--primary); outline-offset:3px;}

  .video-modal-overlay{position:fixed; inset:0; background:rgba(11,31,58,.6); z-index:300; opacity:0; pointer-events:none; transition:opacity .2s;}
  .video-modal-overlay.open{opacity:1; pointer-events:auto;}
  .video-modal{
    position:fixed; top:50%; left:50%; transform:translate(-50%,-50%) scale(.96); width:min(720px,90vw);
    background:#0b1220; border-radius:16px; z-index:301; opacity:0; pointer-events:none; transition:opacity .2s, transform .2s;
    box-shadow:0 24px 60px rgba(0,0,0,.4);
  }
  .video-modal.open{opacity:1; pointer-events:auto; transform:translate(-50%,-50%) scale(1);}
  .video-modal-close{
    position:absolute; top:12px; right:12px; width:40px; height:40px; min-width:44px; min-height:44px;
    border-radius:50%; background:rgba(255,255,255,.12); border:none; color:#fff; cursor:pointer;
    display:flex; align-items:center; justify-content:center; z-index:2;
  }
  .video-modal-close:focus-visible{outline:3px solid var(--primary-hover); outline-offset:2px;}
  .video-modal-body{padding:56px 24px 24px;}
  .video-placeholder{
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px;
    aspect-ratio:16/9; border-radius:10px; background:linear-gradient(135deg,#16324f,#0b1f3a); color:#c8d6ea; text-align:center; padding:20px;
  }
  .video-placeholder strong{color:#fff; font-size:15px;}
  .video-placeholder span{font-size:12.5px; color:#9fb3cc;}
  body.nav-locked{overflow:hidden;}

  .hero-art{position:relative;}
  .hero-art img{width:100%; max-width:760px; height:auto; object-fit:contain; margin:0 auto; display:block;}

  @media (max-width:1300px){
    .hero-visual{padding:16px; min-height:300px;}
    .hero-visual-img{max-width:260px;}
    .callout{max-width:98px;}
    .callout-label{font-size:9.5px;}
    .callout-label strong{font-size:10.5px;}
  }

  /* Finder card */
  .finder-card{
    background:var(--card); border:1px solid rgba(0,0,0,.05); border-radius:16px;
    padding:28px; margin:40px 0;
    box-shadow:0 14px 40px rgba(13,27,50,.08);
  }
  .finder-title{font-size:22px; font-weight:800; letter-spacing:-0.02em; margin:0 0 16px;}
  .finder-fields{
    display:grid; grid-template-columns:1fr 1fr 0.9fr 1fr 0.9fr auto; gap:12px; align-items:stretch;
  }
  .field{
    border:1px solid var(--line); border-radius:12px; padding:0 16px;
    min-height:58px;
    display:flex; align-items:center; gap:12px; background:#fff;
  }
  .field svg{flex:none; width:20px; height:20px; color:var(--ink);}
  .field .ftext{display:flex; flex-direction:column; gap:2px; min-width:0;}
  .field .flabel{font-size:12px; color:var(--ink); font-weight:600; line-height:1.2;}
  .field .fval{font-size:14px; font-weight:400; color:#7b8491; line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
  .field .chev{margin-left:auto; flex:none; width:14px; height:14px; color:var(--ink);}
  .cta-btn{
    background:var(--primary); color:#fff; border:none; border-radius:12px;
    font-weight:700; font-size:16px; padding:0 28px; min-height:58px;
    display:flex; align-items:center; justify-content:center; gap:8px;
    cursor:pointer; white-space:nowrap;
    transition:background .15s ease;
  }
  .cta-btn:hover{background:var(--primary-hover);}
  .finder-meta{
    display:flex; gap:8px; align-items:center; justify-content:center;
    margin-top:20px; padding-top:16px; border-top:1px solid #ece9e5;
    font-size:14px; color:var(--ink-soft); font-weight:500;
  }
  .finder-meta .dot{color:var(--primary); font-size:14px;}
  .finder-meta svg{width:14px;height:14px; margin-right:2px; vertical-align:-2px;}

  /* Feature strip */
  .feature-strip{
    background:var(--card); border:1px solid var(--line); border-radius:18px;
    margin:28px 0 28px; padding:26px 10px;
    display:grid; grid-template-columns:repeat(5,1fr); gap:10px;
  }
  .feature-item{display:flex; gap:12px; padding:0 14px;}
  .feature-item .ic{
    width:38px;height:38px; border-radius:10px; flex:none;
    background:#EEF4FF; color:var(--primary);
    display:flex;align-items:center;justify-content:center;
  }
  .feature-item strong{display:block; font-size:14.5px; font-weight:700; margin-bottom:2px;}
  .feature-item span{font-size:13px; color:var(--ink-soft); line-height:1.4;}

  /* Trust bar */
  .trustbar{
    background:var(--card); border:1px solid var(--line); border-radius:18px;
    margin-bottom:64px; padding:26px 30px;
    display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
  }
  .trustbar-left{display:flex; gap:16px; align-items:center; max-width:420px;}
  .trustbar-left .ic{
    width:44px;height:44px; border-radius:50%; flex:none;
    background:#EEF4FF; color:var(--primary);
    display:flex;align-items:center;justify-content:center;
  }
  .trustbar-left strong{display:block; font-size:15.5px; font-weight:700; margin-bottom:2px;}
  .trustbar-left span{font-size:13.5px; color:var(--ink-soft); line-height:1.4;}
  .brand-row{display:flex; align-items:center; gap:30px; flex-wrap:wrap; opacity:.75;}
  .brand-row span{font-weight:700; font-size:14px; color:#3A3F49; letter-spacing:.02em;}
  .brand-row .more{font-weight:500; color:#9A968E;}

  /* Discovery section */
  .discovery{padding:72px 0 78px; border-top:1px solid var(--line);}
  .discovery-row{
    display:flex; align-items:flex-end; justify-content:space-between; gap:24px;
    margin-bottom:24px;
  }
  .discovery-head h2{font-size:34px; font-weight:800; letter-spacing:-0.02em; margin:0 0 8px; color:var(--ink);}
  .discovery-head p{font-size:16px; color:var(--ink-soft); margin:0; max-width:520px;}
  .rail-controls{display:flex; gap:10px; flex:none;}
  .rail-btn{
    width:40px; height:40px; border-radius:50%; border:1px solid var(--line); background:#fff;
    display:flex; align-items:center; justify-content:center; cursor:pointer; color:var(--ink);
    transition:border-color .15s, background .15s;
  }
  .rail-btn:hover{border-color:var(--primary); color:var(--primary);}
  .rail-btn svg{width:18px; height:18px;}

  .section-block{margin-bottom:56px;}
  .section-block:last-child{margin-bottom:0;}

  .make-rail{
    display:flex; gap:16px; overflow-x:auto; scroll-snap-type:x mandatory;
    padding:2px 2px 10px; margin:0 -2px; scrollbar-width:none;
  }
  .make-rail::-webkit-scrollbar{display:none;}
  .make-card{
    flex:0 0 auto; width:196px; scroll-snap-align:start;
    border:1px solid var(--line); border-radius:14px; background:#fff;
    padding:22px; display:flex; flex-direction:column; gap:18px;
    cursor:pointer; transition:border-color .15s, box-shadow .15s, transform .15s;
  }
  .make-card:hover{
    border-color:var(--primary); box-shadow:0 10px 24px rgba(13,27,50,.08); transform:translateY(-2px);
  }
  .make-logo-slot{
    width:52px; height:52px; border-radius:11px; border:1px dashed var(--line); background:var(--bg);
  }
  .make-name{font-size:20px; font-weight:700; color:var(--ink); letter-spacing:-0.01em;}
  .make-card.view-all{
    align-items:center; justify-content:center; text-align:center;
    border-style:dashed; gap:8px; color:var(--primary); font-weight:700; font-size:16px;
  }
  .make-card.view-all svg{width:18px; height:18px;}

  .model-rail{
    display:flex; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory;
    padding:2px 2px 10px; margin:0 -2px; scrollbar-width:none;
  }
  .model-rail::-webkit-scrollbar{display:none;}
  .model-card{
    flex:0 0 auto; width:300px; scroll-snap-align:start;
    border:1px solid var(--line); border-radius:16px; background:#fff; overflow:hidden;
    cursor:pointer; transition:border-color .15s, box-shadow .15s, transform .15s;
  }
  .model-card:hover{border-color:var(--primary); box-shadow:0 12px 28px rgba(13,27,50,.08); transform:translateY(-2px);}
  .model-image{
    position:relative; aspect-ratio:4/3;
    background:#ffffff;
    display:flex; align-items:center; justify-content:center; overflow:hidden;
  }
  .model-image svg{width:64%; height:auto;}
  .model-image img{width:100%; height:100%; object-fit:contain; padding:14px;}
  .model-info{padding:18px 20px 20px;}
  .model-make{font-size:13px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--ink-soft); margin:0 0 4px;}
  .model-name{font-size:22px; font-weight:800; color:var(--ink); letter-spacing:-0.01em; margin:0 0 8px;}
  .model-meta-row{display:flex; align-items:center; justify-content:space-between; gap:12px;}
  .model-meta{font-size:13.5px; color:var(--ink-soft);}
  .model-arrow{
    width:34px; height:34px; border-radius:50%; border:1px solid var(--line); flex:none;
    display:flex; align-items:center; justify-content:center; color:var(--ink);
    transition:background .15s, border-color .15s, color .15s;
  }
  .model-card:hover .model-arrow{background:var(--primary); border-color:var(--primary); color:#fff;}
  .model-arrow svg{width:15px; height:15px;}

  @media (max-width: 980px){
    .discovery{padding:52px 0 58px;}
    .discovery-row{align-items:flex-start;}
    .discovery-head h2{font-size:28px;}
    .rail-controls{display:none;}
    .make-rail{gap:12px;}
    .model-rail{gap:14px;}
    .cm-strip{grid-template-columns:1fr 1fr;}
    .make-card{width:54vw; max-width:210px; padding:18px; min-height:44px;}
    .model-card{width:68vw; max-width:300px;}
    .make-rail, .model-rail{
      margin:0 -20px; padding-left:20px; padding-right:20px;
    }
  }

  /* Common maintenance visual strip */
  .common-maintenance{padding:8px 0 56px;}
  .cm-head{display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; gap:16px;}
  .cm-head h2{font-size:20px; font-weight:800; margin:0; color:var(--ink);}
  .cm-viewall{font-size:13px; font-weight:700; color:var(--primary); white-space:nowrap;}
  .cm-strip{display:grid; grid-template-columns:repeat(5,1fr); gap:14px;}
  .cm-item{
    display:flex; align-items:center; gap:12px; background:#fff; border:1px solid var(--line);
    border-radius:14px; padding:14px; min-height:44px;
  }
  .cm-item:hover{border-color:var(--primary); box-shadow:0 8px 20px rgba(13,27,50,.06);}
  .cm-icon{
    flex:none; width:38px; height:38px; border-radius:50%; background:var(--primary-soft);
    color:var(--primary); display:flex; align-items:center; justify-content:center;
  }
  .cm-copy{display:flex; flex-direction:column; gap:2px; min-width:0;}
  .cm-copy strong{font-size:13px; color:var(--ink); font-weight:800;}
  .cm-copy span{font-size:11.5px; color:var(--ink-soft); line-height:1.35;}

  /* Section 3 - Vehicle plan preview */
  .plan-preview{
    padding:72px 0 78px;
    border-top:1px solid var(--line);
    background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);
  }
  .plan-preview-head{
    display:flex; align-items:flex-end; justify-content:space-between; gap:24px;
    margin-bottom:28px;
  }
  .plan-preview-head h2{
    margin:0 0 8px;
    font-size:34px; line-height:1.15; letter-spacing:-0.025em; font-weight:800;
  }
  .plan-preview-head p{
    margin:0; max-width:600px; color:var(--ink-soft); font-size:16px; line-height:1.6;
  }
  .sample-chip{
    flex:none; border:1px solid var(--line); background:#fff; border-radius:999px;
    padding:8px 12px; font-size:12px; font-weight:700; color:var(--ink-soft);
  }

  .plan-grid{
    display:grid;
    grid-template-columns:280px minmax(0,1fr) 260px;
    gap:18px;
    align-items:start;
  }
  .vehicle-summary,.plan-card,.source-card,.schedule-cta,.timeline-card,.plan-foot{
    background:#fff; border:1px solid var(--line); border-radius:16px;
    box-shadow:0 8px 24px rgba(13,27,50,.04);
  }

  .vehicle-summary{padding:20px;}
  .vehicle-kicker{
    font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
    color:var(--primary); margin-bottom:8px;
  }
  .vehicle-summary h3{font-size:20px; margin:0 0 4px; letter-spacing:-.01em;}
  .vehicle-sub{font-size:13.5px;color:var(--ink-soft);margin-bottom:14px;}
  .vehicle-photo{
    height:145px; display:flex; align-items:center; justify-content:center;
    margin:0 -4px 12px;
  }
  .vehicle-photo img{width:100%;height:100%;object-fit:contain;}
  .vehicle-meta{display:grid;gap:0;border-top:1px solid #edf0f3;margin-top:10px;}
  .vehicle-meta-row{
    display:flex;align-items:center;justify-content:space-between;gap:14px;
    padding:11px 0;border-bottom:1px solid #edf0f3;font-size:13.5px;
  }
  .vehicle-meta-row span:first-child{color:var(--ink-soft);}
  .vehicle-meta-row strong{font-size:13.5px;}
  .outline-btn{
    width:100%;min-height:44px;margin-top:16px;border:1px solid var(--primary);
    background:#fff;color:var(--primary);border-radius:10px;font-weight:700;cursor:pointer;
  }

  .plan-main{display:grid;gap:18px;}
  .status-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
  .plan-card{overflow:hidden;}
  .plan-card-head{
    min-height:54px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;
    border-bottom:1px solid var(--line);
  }
  .plan-card.due .plan-card-head{background:#fff5f2;}
  .plan-card.next .plan-card-head{background:#fff9ec;}
  .plan-card-title{display:flex;align-items:center;gap:9px;font-size:17px;font-weight:800;}
  .status-count{
    min-width:23px;height:23px;padding:0 7px;border-radius:999px;display:inline-flex;
    align-items:center;justify-content:center;color:#fff;background:#e43b25;font-size:12px;
  }
  .next .status-count{background:#e69a00;}
  .service-row{
    display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;
    align-items:center;padding:14px 16px;border-bottom:1px solid #edf0f3;
  }
  .service-row:last-of-type{border-bottom:none;}
  .service-icon{
    width:32px;height:32px;border-radius:50%;background:#f6f7f9;
    display:flex;align-items:center;justify-content:center;color:var(--ink);
    font-size:14px;font-weight:800;
  }
  .service-copy strong{display:block;font-size:13.5px;margin-bottom:3px;}
  .service-copy span{display:block;font-size:12.5px;color:var(--ink-soft);}
  .service-state{font-size:12px;font-weight:700;white-space:nowrap;}
  .service-state.danger{color:#d52b1e;}
  .service-state.soon{color:#b57600;}
  .card-link{
    display:flex;align-items:center;justify-content:center;min-height:44px;
    font-size:13px;font-weight:700;color:var(--primary);border-top:1px solid #edf0f3;
  }

  .timeline-card{padding:20px 20px 18px;}
  .timeline-card h3{font-size:17px;margin:0 0 22px;}
  .timeline{
    display:grid;grid-template-columns:repeat(5,1fr);gap:0;position:relative;
  }
  .timeline:before{
    content:"";position:absolute;left:8%;right:8%;top:27px;height:2px;background:#e6e9ee;
  }
  .timeline-item{text-align:center;position:relative;z-index:1;padding:0 8px;}
  .timeline-badge{
    display:inline-flex;align-items:center;justify-content:center;height:26px;padding:0 9px;
    border-radius:999px;font-size:10.5px;font-weight:700;background:#fff1ef;color:#cf3523;
    margin-bottom:10px;
  }
  .timeline-badge.future{background:#fff5d9;color:#a76a00;}
  .timeline-dot{
    width:12px;height:12px;border-radius:50%;background:#e43b25;margin:0 auto 13px;
    box-shadow:0 0 0 5px #fff;
  }
  .timeline-dot.future{background:#eaa000;}
  .timeline-item strong{display:block;font-size:12px;line-height:1.35;margin-bottom:4px;}
  .timeline-item span{font-size:11.5px;color:var(--ink-soft);line-height:1.35;}

  @media (prefers-reduced-motion: no-preference){
    .timeline.reveal-ready .timeline-item{opacity:0; transform:translateY(8px); transition:opacity .5s ease, transform .5s ease;}
    .timeline.reveal-ready .timeline-item:nth-child(1){transition-delay:.05s;}
    .timeline.reveal-ready .timeline-item:nth-child(2){transition-delay:.12s;}
    .timeline.reveal-ready .timeline-item:nth-child(3){transition-delay:.19s;}
    .timeline.reveal-ready .timeline-item:nth-child(4){transition-delay:.26s;}
    .timeline.reveal-ready .timeline-item:nth-child(5){transition-delay:.33s;}
    .timeline.reveal-ready:before{transform:scaleX(0); transform-origin:left; transition:transform .6s ease;}
    .timeline.reveal-ready.in-view .timeline-item{opacity:1; transform:translateY(0);}
    .timeline.reveal-ready.in-view:before{transform:scaleX(1);}
  }

  .plan-side{display:grid;gap:18px;}
  .source-card{padding:20px;}
  .source-card h3,.schedule-cta h3{font-size:17px;margin:0 0 10px;}
  .source-card p,.schedule-cta p{font-size:13.5px;color:var(--ink-soft);line-height:1.55;margin:0 0 16px;}
  .source-mark{
    display:flex;gap:10px;align-items:flex-start;padding:13px;border-radius:12px;background:#f7f9fc;
    margin-bottom:14px;
  }
  .source-shield{
    width:34px;height:34px;border:2px solid #2864d7;color:#2864d7;border-radius:10px;
    display:flex;align-items:center;justify-content:center;flex:none;font-weight:800;
  }
  .source-mark strong{display:block;font-size:13px;margin-bottom:3px;}
  .source-mark span{font-size:12px;color:var(--ink-soft);line-height:1.35;}
  .source-link{font-size:13px;font-weight:700;color:var(--primary);}
  .source-note{font-size:11.5px!important;margin-top:14px!important;margin-bottom:0!important;}

  .schedule-cta{padding:20px;background:#f6f9ff;}
  .schedule-cta .cta-btn{width:100%;min-height:48px;padding:0 18px;}
  .utility-row{
    display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;
    font-size:12px;color:var(--ink-soft);
  }

  .plan-foot{
    margin-top:18px;padding:15px 18px;display:flex;align-items:center;justify-content:center;
    gap:10px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-soft);
  }
  .plan-foot .sep{color:var(--primary);}

  @media(max-width:1240px){
    .plan-grid{grid-template-columns:1fr;}
    .vehicle-summary{display:grid;grid-template-columns:150px 1fr;column-gap:18px;}
    .vehicle-kicker,.vehicle-summary h3,.vehicle-sub{grid-column:1/-1;}
    .vehicle-photo{height:125px;margin:0;}
    .vehicle-meta{margin-top:0;}
    .outline-btn{grid-column:1/-1;}
    .plan-side{grid-template-columns:1fr 1fr;}
  }

  @media(max-width:980px){
    .plan-preview{padding:52px 0 58px;}
    .plan-preview-head{align-items:flex-start;flex-direction:column;}
    .plan-preview-head h2{font-size:28px;}
  }

  @media(max-width:650px){
    .status-grid{grid-template-columns:1fr;}
    .source-flow{flex-direction:column; align-items:flex-start;}
    .cm-strip{grid-template-columns:1fr;}
    .cm-head{flex-direction:column; align-items:flex-start; gap:6px;}
    .vehicle-summary{display:block;}
    .vehicle-photo{height:150px;}
    .plan-side{grid-template-columns:1fr;}
    .timeline-card{overflow:hidden;}
    .timeline{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -20px;padding:0 20px 8px;}
    .timeline:before{display:none;}
    .timeline-item{flex:0 0 48%;scroll-snap-align:start;border-right:1px solid #edf0f3;}
    .timeline-item:last-child{border-right:none;}
    .timeline-dot{margin-top:4px;}
    .sample-chip{display:none;}
  }

  /* Section 4 - Why exact configuration matters */
  .config-matters{
    padding:72px 0 78px;
    border-top:1px solid var(--line);
    background:#fff;
  }
  .config-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:28px;
  }
  .config-head h2{
    margin:0 0 8px;
    font-size:34px;
    line-height:1.15;
    letter-spacing:-0.025em;
    font-weight:800;
  }
  .config-head p{
    margin:0;
    max-width:650px;
    color:var(--ink-soft);
    font-size:16px;
    line-height:1.6;
  }
  .config-note{
    flex:none;
    border:1px solid var(--line);
    background:var(--bg);
    border-radius:999px;
    padding:8px 12px;
    font-size:12px;
    font-weight:700;
    color:var(--ink-soft);
  }

  .config-layout{
    display:grid;
    grid-template-columns:360px minmax(0,1fr);
    gap:20px;
    align-items:stretch;
  }

  .config-panel,
  .compare-panel{
    background:#fff;
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:0 8px 24px rgba(13,27,50,.04);
  }

  .config-panel{padding:22px;}
  .config-panel h3,
  .compare-panel h3{
    margin:0 0 8px;
    font-size:18px;
    font-weight:800;
  }
  .config-panel > p,
  .compare-panel > p{
    margin:0 0 20px;
    font-size:13.5px;
    color:var(--ink-soft);
    line-height:1.55;
  }

  .config-list{
    display:grid;
    gap:10px;
  }
  .config-choice{
    min-height:58px;
    border:1px solid var(--line);
    border-radius:12px;
    padding:11px 14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    background:#fff;
  }
  .config-choice .label{
    display:flex;
    align-items:center;
    gap:10px;
    min-width:0;
  }
  .config-choice .ic{
    width:30px;
    height:30px;
    border-radius:9px;
    background:#f7f8fa;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--ink);
    font-size:12px;
    font-weight:800;
    flex:none;
  }
  .config-choice strong{
    display:block;
    font-size:12px;
    margin-bottom:2px;
  }
  .config-choice span{
    display:block;
    font-size:13px;
    color:var(--ink-soft);
  }
  .config-choice .value{
    font-size:13.5px;
    font-weight:700;
    color:var(--ink);
    white-space:nowrap;
  }

  .config-callout{
    margin-top:16px;
    padding:14px 15px;
    border-radius:12px;
    background:#EEF4FF;
    border:1px solid #D8E5FF;
    color:#1E3A8A;
    font-size:13px;
    line-height:1.5;
  }

  .compare-panel{
    padding:22px;
    overflow:hidden;
  }
  .compare-top{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-bottom:16px;
  }
  .compare-config{
    border:1px solid var(--line);
    border-radius:14px;
    padding:16px;
    background:var(--bg);
  }
  .compare-config.active{
    border-color:#7FA8F5;
    background:#EEF4FF;
  }
  .compare-config .eyebrow{
    display:block;
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--primary);
    margin-bottom:7px;
  }
  .compare-config strong{
    display:block;
    font-size:17px;
    margin-bottom:5px;
  }
  .compare-config span{
    font-size:12.5px;
    color:var(--ink-soft);
  }

  .compare-table{
    border:1px solid var(--line);
    border-radius:14px;
    overflow:hidden;
  }
  .compare-row{
    display:grid;
    grid-template-columns:minmax(180px,1.2fr) 1fr 1fr 100px;
    align-items:center;
    border-bottom:1px solid #edf0f3;
    min-height:58px;
  }
  .compare-row:last-child{border-bottom:none;}
  .compare-row.head{
    min-height:44px;
    background:#f7f8fa;
    font-size:11.5px;
    font-weight:800;
    color:var(--ink-soft);
  }
  .compare-cell{
    padding:12px 14px;
    font-size:13px;
    line-height:1.35;
  }
  .compare-cell strong{
    font-size:13px;
  }
  .compare-status{
    justify-self:start;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:26px;
    padding:0 9px;
    border-radius:999px;
    font-size:11px;
    font-weight:800;
  }
  .compare-status.same{
    background:#eef5ff;
    color:#2d5f9e;
  }
  .compare-status.changed{
    background:#fff1e7;
    color:#b94f0a;
  }
  .compare-status.added{
    background:#eef8f1;
    color:#2d7a46;
  }

  .compare-foot{
    margin-top:16px;
    padding:14px 16px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#f9fafb;
    display:flex;
    align-items:flex-start;
    gap:10px;
    font-size:12.5px;
    line-height:1.5;
    color:var(--ink-soft);
  }
  .compare-foot .shield{
    width:24px;
    height:24px;
    border:1.5px solid var(--primary);
    color:var(--primary);
    border-radius:7px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:none;
    font-size:12px;
    font-weight:800;
  }

  @media(max-width:1240px){
    .config-layout{grid-template-columns:1fr;}
    .config-panel{padding:20px;}
    .compare-panel{padding:20px;}
  }

  @media(max-width:980px){
    .config-matters{padding:52px 0 58px;}
    .config-head{
      flex-direction:column;
      align-items:flex-start;
    }
    .config-head h2{font-size:28px;}
  }

  @media(max-width:650px){
    .compare-top{grid-template-columns:1fr;}
    .compare-table{
      overflow-x:auto;
      -webkit-overflow-scrolling:touch;
    }
    .compare-row{
      min-width:690px;
    }
    .config-note{display:none;}
  }


  @media (max-width: 980px){
    .hero-grid{grid-template-columns:1fr; padding-top:32px; gap:28px;}
    h1.hero-h{font-size:40px; line-height:1.05; letter-spacing:-0.03em;}
    .hero-sub{font-size:16px; line-height:26px;}
    .hero-visual{order:-1; min-height:260px; padding:18px;}
    .hero-visual-img{max-width:300px;}
    .callout{max-width:110px;}
    .callout-label{font-size:10px;}
    .callout-label strong{font-size:11px;}
    .hero-video-card{order:1;}
    .trust-row{grid-template-columns:1fr; max-width:none; gap:14px;}
    .trust-item{border-right:none; border-bottom:1px solid #ece9e5; padding-right:0; padding-bottom:14px;}
    .trust-item:last-child{border-bottom:none; padding-bottom:0;}
    .finder-card{margin:28px 0; padding:20px;}
    .finder-fields{grid-template-columns:1fr; grid-auto-rows:auto;}
    .cta-btn{min-height:52px;}
    .field{min-height:52px;}
    .feature-strip{grid-template-columns:repeat(2,1fr);}
    .trustbar{flex-direction:column; align-items:flex-start;}
    nav.main-nav{display:none;}
    .menu-btn{display:block;}
    .header-actions .icon-link span{display:none;}
  }
  @media (max-width:560px){
    .wrap{padding:0 16px;}
    h1.hero-h{font-size:34px;}
    .finder-fields{grid-template-columns:1fr;}
    .feature-strip{grid-template-columns:1fr;}
    .make-rail, .model-rail{margin:0 -16px; padding-left:16px; padding-right:16px;}
    .make-card{width:52vw; max-width:200px; padding:16px;}
    .make-logo-slot{width:44px; height:44px;}
    .make-name{font-size:18px;}
    .model-card{width:64vw; max-width:270px;}
    .model-info{padding:14px 16px 16px;}
    .model-name{font-size:19px; margin:0 0 6px;}
    .hero-visual{flex-direction:column; align-items:stretch; padding:16px; min-height:auto;}
    .hero-visual-img{max-width:100%; order:-1; margin-bottom:10px;}
    .callout{position:static; max-width:none; width:100%; background:#fff; border:1px solid var(--line); border-radius:10px; padding:8px 12px; margin-bottom:8px; flex-direction:row !important; text-align:left !important; transform:none !important; left:auto !important; right:auto !important; top:auto !important; bottom:auto !important;}
    .callout-label{background:none; padding:0; box-shadow:none;}
    .callout:last-child{margin-bottom:0;}
  }
  @media (max-width:560px){
    .logo-full{height:28px;}
  }
  @media (max-width:360px){
    .logo-full{display:none;}
    .logo-compact{display:block;}
    .header-actions{gap:10px;}
  }

  /* Section 5 - Verification methodology */
  .source-flow{
    display:flex; align-items:center; gap:20px; background:#fff; border:1px solid var(--line);
    border-radius:14px; padding:16px 20px; margin-bottom:22px; flex-wrap:wrap;
  }
  .source-flow-doc{
    position:relative; flex:none; width:52px; height:64px; background:#f7f8fa; border:1px solid var(--line);
    border-radius:6px; padding:10px 8px;
  }
  .sfd-line{display:block; height:2px; background:#d7dce4; border-radius:1px; margin-bottom:6px;}
  .sfd-line-a{width:80%;} .sfd-line-b{width:100%;} .sfd-line-c{width:60%;}
  .sfd-highlight{display:block; height:2px; width:70%; background:var(--primary); border-radius:1px; margin-top:8px;}
  .source-flow-steps{display:flex; align-items:center; gap:10px; flex-wrap:wrap; flex:1;}
  .sf-step{
    font-size:12px; font-weight:700; color:var(--ink-soft); background:var(--primary-soft);
    border:1px solid var(--primary-soft-border); border-radius:999px; padding:6px 12px; white-space:nowrap;
  }
  .sf-step-final{color:#fff; background:var(--primary); border-color:var(--primary);}
  .sf-arrow{color:var(--primary); flex:none;}
  .verification{
    padding:72px 0 78px;
    border-top:1px solid var(--line);
    background:var(--bg);
  }
  .verification-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) 360px;
    gap:32px;
    align-items:end;
    margin-bottom:28px;
  }
  .verification-head h2{
    margin:0 0 8px;
    font-size:34px;
    line-height:1.15;
    letter-spacing:-0.025em;
    font-weight:800;
  }
  .verification-head p{
    margin:0;
    max-width:680px;
    color:var(--ink-soft);
    font-size:16px;
    line-height:1.6;
  }
  .verification-summary{
    border-left:3px solid var(--primary);
    padding:2px 0 2px 16px;
    font-size:13px;
    line-height:1.5;
    color:var(--ink-soft);
  }
  .verification-summary strong{
    display:block;
    color:var(--ink);
    font-size:13.5px;
    margin-bottom:3px;
  }

  .verify-flow{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
    margin-bottom:20px;
  }
  .verify-step{
    position:relative;
    background:#fff;
    border:1px solid var(--line);
    border-radius:16px;
    padding:20px;
    min-height:188px;
    box-shadow:0 8px 24px rgba(13,27,50,.035);
  }
  .verify-step-num{
    width:30px;
    height:30px;
    border-radius:9px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#EEF4FF;
    color:var(--primary);
    font-size:12px;
    font-weight:800;
    margin-bottom:16px;
  }
  .verify-step h3{
    margin:0 0 8px;
    font-size:16px;
    line-height:1.3;
  }
  .verify-step p{
    margin:0;
    color:var(--ink-soft);
    font-size:13px;
    line-height:1.55;
  }
  .verify-step:not(:last-child):after{
    content:"→";
    position:absolute;
    right:-12px;
    top:50%;
    transform:translateY(-50%);
    width:22px;
    height:22px;
    border-radius:50%;
    background:var(--bg);
    color:var(--primary);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    font-weight:800;
    z-index:2;
  }

  .verify-detail-grid{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
    gap:18px;
  }
  .source-record,
  .publish-rules{
    background:#fff;
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:0 8px 24px rgba(13,27,50,.035);
  }

  .source-record{
    padding:22px;
  }
  .source-record-top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    padding-bottom:16px;
    border-bottom:1px solid #edf0f3;
  }
  .source-record h3,
  .publish-rules h3{
    margin:0 0 6px;
    font-size:18px;
  }
  .source-record-top p{
    margin:0;
    color:var(--ink-soft);
    font-size:13px;
    line-height:1.5;
  }
  .verified-chip{
    flex:none;
    min-height:30px;
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:0 10px;
    border-radius:999px;
    background:#eef8f1;
    color:#2d7a46;
    font-size:11.5px;
    font-weight:800;
  }

  .record-table{
    display:grid;
    margin-top:4px;
  }
  .record-row{
    display:grid;
    grid-template-columns:160px 1fr;
    gap:14px;
    align-items:start;
    padding:13px 0;
    border-bottom:1px solid #edf0f3;
    font-size:13px;
  }
  .record-row:last-child{border-bottom:none;}
  .record-label{
    color:var(--ink-soft);
    font-weight:600;
  }
  .record-value{
    color:var(--ink);
    line-height:1.45;
  }
  .record-value.muted{color:var(--ink-soft);}

  .publish-rules{
    padding:22px;
  }
  .publish-rules > p{
    margin:0 0 16px;
    color:var(--ink-soft);
    font-size:13px;
    line-height:1.5;
  }
  .gate-list{
    display:grid;
    gap:0;
    border-top:1px solid #edf0f3;
  }
  .gate-item{
    display:grid;
    grid-template-columns:26px 1fr;
    gap:10px;
    align-items:start;
    padding:12px 0;
    border-bottom:1px solid #edf0f3;
  }
  .gate-icon{
    width:22px;
    height:22px;
    border-radius:7px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#eef8f1;
    color:#2d7a46;
    font-size:11px;
    font-weight:800;
    margin-top:1px;
  }
  .gate-item strong{
    display:block;
    font-size:13px;
    margin-bottom:3px;
  }
  .gate-item span{
    display:block;
    font-size:12px;
    line-height:1.45;
    color:var(--ink-soft);
  }

  .method-link-row{
    margin-top:18px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:17px 18px;
    border:1px solid var(--line);
    border-radius:14px;
    background:#fff;
  }
  .method-link-row strong{
    display:block;
    font-size:14px;
    margin-bottom:3px;
  }
  .method-link-row span{
    display:block;
    color:var(--ink-soft);
    font-size:12.5px;
  }
  .method-link{
    flex:none;
    color:var(--primary);
    font-size:13px;
    font-weight:800;
  }

  @media(max-width:980px){
    .verification{padding:52px 0 58px;}
    .verification-head{
      grid-template-columns:1fr;
      gap:16px;
    }
    .verification-head h2{font-size:28px;}
    .verify-flow{grid-template-columns:1fr 1fr;}
    .verify-step:not(:last-child):after{display:none;}
    .verify-detail-grid{grid-template-columns:1fr;}
  }

  @media(max-width:650px){
    .verify-flow{grid-template-columns:1fr;}
    .verify-step{min-height:auto;}
    .source-record-top{
      flex-direction:column;
      align-items:flex-start;
    }
    .record-row{
      grid-template-columns:1fr;
      gap:4px;
    }
    .method-link-row{
      flex-direction:column;
      align-items:flex-start;
    }
  }


  /* Section 6 - Maintenance system types */
  .system-types{
    padding:72px 0 78px;
    border-top:1px solid var(--line);
    background:#fff;
  }

  .system-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:28px;
    margin-bottom:28px;
  }

  .system-head h2{
    margin:0 0 8px;
    font-size:34px;
    line-height:1.15;
    letter-spacing:-0.025em;
    font-weight:800;
  }

  .system-head p{
    margin:0;
    max-width:700px;
    color:var(--ink-soft);
    font-size:16px;
    line-height:1.6;
  }

  .system-head-note{
    flex:none;
    max-width:320px;
    padding:2px 0 2px 16px;
    border-left:3px solid var(--primary);
    color:var(--ink-soft);
    font-size:12.5px;
    line-height:1.5;
  }

  .system-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
    margin-bottom:20px;
  }

  .system-card{
    position:relative;
    background:#fff;
    border:1px solid var(--line);
    border-radius:16px;
    padding:20px;
    min-height:248px;
    box-shadow:0 8px 24px rgba(13,27,50,.035);
    overflow:hidden;
  }

  .system-card.active{
    border-color:#B9CFFB;
    background:#F5F9FF;
  }

  .system-type-badge{
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 9px;
    border-radius:999px;
    background:#f6f7f9;
    color:var(--ink-soft);
    font-size:11px;
    font-weight:800;
    margin-bottom:16px;
  }

  .system-card.active .system-type-badge{
    background:#EEF4FF;
    color:var(--primary);
  }

  .system-card h3{
    margin:0 0 8px;
    font-size:17px;
    line-height:1.3;
  }

  .system-card > p{
    margin:0 0 18px;
    color:var(--ink-soft);
    font-size:13px;
    line-height:1.55;
  }

  .system-mini{
    display:grid;
    gap:8px;
  }

  .system-mini-row{
    min-height:42px;
    border:1px solid #edf0f3;
    border-radius:10px;
    background:#fff;
    padding:9px 10px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    font-size:12px;
  }

  .system-mini-row span:first-child{
    color:var(--ink-soft);
  }

  .system-mini-row strong{
    color:var(--ink);
    font-size:12px;
    text-align:right;
  }

  .system-mini-code{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:34px;
    height:28px;
    padding:0 8px;
    border-radius:8px;
    background:#eef5ff;
    color:#2d5f9e;
    font-weight:800;
    font-size:11px;
  }

  .system-mini-condition{
    display:inline-flex;
    align-items:center;
    min-height:26px;
    padding:0 8px;
    border-radius:999px;
    background:#eef5ff;
    color:#2d5f9e;
    font-size:10.5px;
    font-weight:800;
  }

  .system-explainer{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
    gap:18px;
  }

  .system-renderer,
  .system-rule{
    background:#fff;
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:0 8px 24px rgba(13,27,50,.035);
  }

  .system-renderer{
    padding:22px;
  }

  .system-renderer h3,
  .system-rule h3{
    margin:0 0 8px;
    font-size:18px;
  }

  .system-renderer > p,
  .system-rule > p{
    margin:0 0 18px;
    color:var(--ink-soft);
    font-size:13px;
    line-height:1.55;
  }

  .renderer-flow{
    display:grid;
    grid-template-columns:1fr auto 1fr auto 1fr;
    gap:12px;
    align-items:center;
  }

  .renderer-box{
    border:1px solid var(--line);
    border-radius:12px;
    padding:14px;
    min-height:96px;
    background:var(--bg);
  }

  .renderer-box strong{
    display:block;
    font-size:13px;
    margin-bottom:5px;
  }

  .renderer-box span{
    display:block;
    color:var(--ink-soft);
    font-size:12.5px;
    line-height:1.45;
  }

  .renderer-arrow{
    color:var(--primary);
    font-weight:800;
    font-size:16px;
  }

  .system-rule{
    padding:22px;
  }

  .rule-list{
    display:grid;
    gap:0;
    border-top:1px solid #edf0f3;
  }

  .rule-item{
    padding:12px 0;
    border-bottom:1px solid #edf0f3;
  }

  .rule-item strong{
    display:block;
    font-size:13px;
    margin-bottom:3px;
  }

  .rule-item span{
    display:block;
    color:var(--ink-soft);
    font-size:12px;
    line-height:1.45;
  }

  .system-bottom-note{
    margin-top:18px;
    padding:15px 18px;
    border:1px solid var(--line);
    border-radius:14px;
    background:#f9fafb;
    display:flex;
    align-items:flex-start;
    gap:10px;
    color:var(--ink-soft);
    font-size:12.5px;
    line-height:1.5;
  }

  .system-bottom-note .mark{
    width:24px;
    height:24px;
    border-radius:7px;
    border:1.5px solid var(--primary);
    color:var(--primary);
    display:flex;
    align-items:center;
    justify-content:center;
    flex:none;
    font-size:11px;
    font-weight:800;
  }

  @media(max-width:1240px){
    .system-explainer{grid-template-columns:1fr;}
    .renderer-flow{
      grid-template-columns:1fr;
    }
    .renderer-arrow{
      transform:rotate(90deg);
      justify-self:center;
    }
  }

  @media(max-width:980px){
    .system-types{padding:52px 0 58px;}
    .system-head{
      flex-direction:column;
      align-items:flex-start;
    }
    .system-head h2{font-size:28px;}
    .system-grid{grid-template-columns:1fr 1fr;}
  }

  @media(max-width:650px){
    .system-grid{grid-template-columns:1fr;}
    .system-card{min-height:auto;}
    .system-head-note{max-width:none;}
  }


  /* Section 7 - Maintenance resources */
  .maintenance-resources{
    padding:72px 0 78px;
    border-top:1px solid var(--line);
    background:var(--bg);
  }

  .resources-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:28px;
    margin-bottom:28px;
  }

  .resources-head h2{
    margin:0 0 8px;
    font-size:34px;
    line-height:1.15;
    letter-spacing:-0.025em;
    font-weight:800;
  }

  .resources-head p{
    margin:0;
    max-width:720px;
    color:var(--ink-soft);
    font-size:16px;
    line-height:1.6;
  }

  .resources-all{
    flex:none;
    min-height:44px;
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--primary);
    font-size:13px;
    font-weight:800;
  }

  .resources-layout{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
    gap:18px;
  }

  .resource-index,
  .resource-side{
    background:#fff;
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:0 8px 24px rgba(13,27,50,.035);
  }

  .resource-index{
    overflow:hidden;
  }

  .resource-index-head{
    padding:20px 22px 16px;
    border-bottom:1px solid #edf0f3;
  }

  .resource-index-head h3,
  .resource-side h3{
    margin:0 0 6px;
    font-size:18px;
  }

  .resource-index-head p,
  .resource-side > p{
    margin:0;
    color:var(--ink-soft);
    font-size:13px;
    line-height:1.5;
  }

  .resource-row{
    display:grid;
    grid-template-columns:48px minmax(0,1fr) 150px 30px;
    gap:14px;
    align-items:center;
    min-height:82px;
    padding:14px 22px;
    border-bottom:1px solid #edf0f3;
    transition:background .15s ease;
  }

  .resource-row:last-child{
    border-bottom:none;
  }

  .resource-row:hover{
    background:#fcfcfb;
  }

  .resource-icon{
    width:42px;
    height:42px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#EEF4FF;
    color:var(--primary);
    font-size:13px;
    font-weight:800;
  }

  .resource-copy strong{
    display:block;
    font-size:14px;
    margin-bottom:4px;
  }

  .resource-copy span{
    display:block;
    color:var(--ink-soft);
    font-size:12.5px;
    line-height:1.45;
  }

  .resource-type{
    justify-self:start;
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 9px;
    border-radius:999px;
    background:#f6f7f9;
    color:var(--ink-soft);
    font-size:10.5px;
    font-weight:800;
  }

  .resource-arrow{
    color:var(--primary);
    font-size:18px;
    font-weight:800;
    text-align:right;
  }

  .resource-side{
    padding:22px;
    display:flex;
    flex-direction:column;
  }

  .resource-lookup{
    margin-top:18px;
    border:1px solid var(--line);
    border-radius:14px;
    overflow:hidden;
  }

  .lookup-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:14px;
    border-bottom:1px solid #edf0f3;
    background:#fff;
  }

  .lookup-row:last-child{
    border-bottom:none;
  }

  .lookup-row span{
    color:var(--ink-soft);
    font-size:12px;
  }

  .lookup-row strong{
    font-size:12.5px;
    text-align:right;
  }

  .resource-side-note{
    margin-top:16px;
    padding:14px 15px;
    border-radius:12px;
    background:#f9fafb;
    border:1px solid #edf0f3;
    color:var(--ink-soft);
    font-size:12.5px;
    line-height:1.5;
  }

  .resource-side-link{
    margin-top:auto;
    padding-top:18px;
    min-height:44px;
    display:flex;
    align-items:center;
    color:var(--primary);
    font-size:13px;
    font-weight:800;
  }

  .resources-footer-note{
    margin-top:18px;
    padding:15px 18px;
    border:1px solid var(--line);
    border-radius:14px;
    background:#fff;
    color:var(--ink-soft);
    font-size:12.5px;
    line-height:1.5;
  }

  @media(max-width:980px){
    .maintenance-resources{padding:52px 0 58px;}
    .resources-head{
      flex-direction:column;
      align-items:flex-start;
    }
    .resources-head h2{font-size:28px;}
    .resources-layout{grid-template-columns:1fr;}
  }

  @media(max-width:650px){
    .resource-row{
      grid-template-columns:42px minmax(0,1fr) 26px;
      gap:12px;
      padding:14px 16px;
    }
    .resource-type{display:none;}
    .resource-index-head{padding:18px 16px 14px;}
    .resource-side{padding:18px;}
  }


  /* Section 8 - Final vehicle finder CTA */
  .final-finder{
    padding:72px 0 78px;
    border-top:1px solid var(--line);
    background:#fff;
  }

  .final-finder-shell{
    position:relative;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:20px;
    background:#08182D;
    color:#fff;
    padding:34px;
    box-shadow:0 16px 36px rgba(13,27,50,.12);
  }

  .final-finder-grid{
    display:grid;
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
    gap:28px;
    align-items:center;
  }

  .final-finder-copy .eyebrow-tag{
    color:#7FB2FF;
    margin-bottom:10px;
  }

  .final-finder-copy h2{
    margin:0 0 12px;
    font-size:34px;
    line-height:1.12;
    letter-spacing:-0.025em;
    font-weight:800;
    color:#fff;
  }

  .final-finder-copy p{
    margin:0 0 18px;
    max-width:560px;
    color:#b8c1d1;
    font-size:15px;
    line-height:1.6;
  }

  .final-finder-points{
    display:grid;
    gap:9px;
  }

  .final-point{
    display:flex;
    align-items:flex-start;
    gap:9px;
    color:#d7ddea;
    font-size:12.5px;
    line-height:1.45;
  }

  .final-point .check{
    width:18px;
    height:18px;
    border-radius:6px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:none;
    margin-top:1px;
    background:rgba(76,141,255,.18);
    color:#7FB2FF;
    font-size:10px;
    font-weight:800;
  }

  .final-finder-card{
    background:#fff;
    color:var(--ink);
    border-radius:16px;
    padding:22px;
    box-shadow:0 10px 28px rgba(0,0,0,.12);
  }

  .final-finder-card h3{
    margin:0 0 6px;
    font-size:18px;
  }

  .final-finder-card > p{
    margin:0 0 16px;
    color:var(--ink-soft);
    font-size:12.5px;
    line-height:1.5;
  }

  .final-fields{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }

  .final-field{
    min-height:52px;
    border:1px solid var(--line);
    border-radius:11px;
    background:#fff;
    padding:9px 12px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:2px;
  }

  .final-field .label{
    font-size:10.5px;
    font-weight:700;
    color:var(--ink);
  }

  .final-field .value{
    font-size:12.5px;
    color:#7b8491;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .final-cta{
    grid-column:1/-1;
    min-height:52px;
    border:none;
    border-radius:11px;
    background:var(--primary);
    color:#fff;
    font-size:14px;
    font-weight:800;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
  }

  .final-cta:hover{
    background:var(--primary-hover);
  }

  .final-meta{
    margin-top:14px;
    padding-top:12px;
    border-top:1px solid #edf0f3;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    flex-wrap:wrap;
    color:var(--ink-soft);
    font-size:11.5px;
    text-align:center;
  }

  .final-meta .dot{
    color:var(--primary);
  }

  .final-finder-note{
    margin-top:16px;
    color:#8f99aa;
    font-size:11.5px;
    line-height:1.5;
  }

  @media(max-width:980px){
    .final-finder{padding:52px 0 58px;}
    .final-finder-shell{padding:26px;}
    .final-finder-grid{grid-template-columns:1fr;}
    .final-finder-copy h2{font-size:28px;}
  }

  @media(max-width:650px){
    .final-finder-shell{
      padding:20px;
      border-radius:16px;
    }
    .final-fields{grid-template-columns:1fr;}
    .final-cta{grid-column:auto;}
    .final-finder-card{padding:18px;}
  }


  /* Section 9 - Final footer */
  .site-footer{
    background:#08182D;
    color:#fff;
    padding:56px 0 0;
  }

  .site-footer-top{
    display:grid;
    grid-template-columns:minmax(260px,1.25fr) repeat(3,minmax(150px,.7fr));
    gap:40px;
    padding-bottom:42px;
  }

  .site-footer-brand .logo{
    color:#fff;
    margin-bottom:16px;
  }

  .footer-logo-icon{
    display:block;
    filter:brightness(0) invert(1);
  }

  .site-footer-brand .accent{color:var(--primary-hover);}

  .site-footer-brand p{
    margin:0;
    max-width:360px;
    color:#9aa3b5;
    font-size:13.5px;
    line-height:1.65;
  }

  .site-footer-status{
    margin-top:20px;
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:32px;
    padding:0 10px;
    border:1px solid #24324a;
    border-radius:999px;
    color:#c6cedb;
    font-size:11.5px;
    font-weight:700;
  }

  .site-footer-status .dot{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#5fc77b;
  }

  .site-footer-col h4{
    margin:2px 0 16px;
    color:#7f8aa0;
    font-size:11px;
    letter-spacing:.08em;
    text-transform:uppercase;
    font-weight:800;
  }

  .site-footer-col a{
    display:block;
    min-height:34px;
    color:#c8d0dc;
    font-size:13.5px;
    font-weight:500;
  }

  .site-footer-col a:hover{
    color:#fff;
  }

  .site-footer-bottom{
    border-top:1px solid #1d2940;
    padding:22px 0 28px;
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);
    gap:28px;
    align-items:start;
  }

  .site-footer-copy{
    color:#788399;
    font-size:12px;
    line-height:1.55;
  }

  .site-footer-legal{
    display:flex;
    justify-content:flex-end;
    gap:20px;
    flex-wrap:wrap;
  }

  .site-footer-legal a{
    color:#aeb7c6;
    font-size:12.5px;
    font-weight:600;
  }

  .site-footer-disclaimer{
    grid-column:1/-1;
    color:#6f7a8f;
    font-size:11.5px;
    line-height:1.55;
    max-width:980px;
  }

  @media(max-width:980px){
    .site-footer{padding-top:44px;}
    .site-footer-top{
      grid-template-columns:1fr 1fr;
      gap:30px 24px;
    }
    .site-footer-brand{
      grid-column:1/-1;
    }
  }

  @media(max-width:650px){
    .site-footer-top{
      grid-template-columns:1fr;
      gap:26px;
      padding-bottom:32px;
    }
    .site-footer-brand{
      grid-column:auto;
    }
    .site-footer-col a{
      min-height:44px;
      display:flex;
      align-items:center;
    }
    .site-footer-bottom{
      grid-template-columns:1fr;
      gap:14px;
    }
    .site-footer-legal{
      justify-content:flex-start;
      gap:16px;
    }
    .site-footer-disclaimer{
      grid-column:auto;
    }
  }


/* ===== Model page template - new components ===== */
.breadcrumbs{padding:14px 0; font-size:12.5px; color:var(--ink-soft); border-bottom:1px solid var(--line);}
.breadcrumbs ol{display:flex; flex-wrap:wrap; align-items:center; gap:6px; list-style:none; margin:0; padding:0;}
.breadcrumbs a{color:var(--ink-soft); font-weight:600;}
.breadcrumbs a:hover{color:var(--primary);}
.breadcrumbs li:not(:last-child):after{content:"/"; margin-left:6px; color:#c7cede;}
.breadcrumbs li[aria-current]{color:var(--ink); font-weight:700;}

.model-hero{padding:36px 0 44px; background:var(--bg); border-bottom:1px solid var(--line);}
.model-hero-grid{display:grid; grid-template-columns:1.05fr 0.95fr; gap:36px; align-items:center;}
.model-hero h1{font-size:34px; font-weight:800; letter-spacing:-0.02em; margin:0 0 12px; line-height:1.15;}
.model-hero-sub{font-size:16px; color:var(--ink-soft); line-height:1.55; max-width:520px; margin:0 0 20px;}
.model-meta-chips{display:flex; flex-wrap:wrap; gap:10px;}
.model-meta-chip{display:flex; flex-direction:column; gap:1px; background:#fff; border:1px solid var(--line); border-radius:10px; padding:8px 14px; min-height:44px; justify-content:center;}
.model-meta-chip span{font-size:10.5px; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-soft); font-weight:700;}
.model-meta-chip strong{font-size:13.5px; color:var(--ink);}
.model-hero-media{background:var(--primary-soft); border:1px solid var(--primary-soft-border); border-radius:20px; padding:24px; display:flex; align-items:center; justify-content:center; min-height:280px;}
.model-hero-media img{width:100%; max-width:440px; height:auto; object-fit:contain; display:block;}

.vehicle-selector{padding:40px 0; border-bottom:1px solid var(--line);}
.vehicle-selector h2{font-size:22px; font-weight:800; margin:0 0 4px;}
.vehicle-selector p{font-size:13.5px; color:var(--ink-soft); margin:0 0 20px;}
.selector-fields{display:grid; grid-template-columns:repeat(4,1fr); gap:14px;}
.selector-field{border:1px solid var(--line); border-radius:12px; padding:12px 14px; min-height:52px; background:#fff;}
.selector-field label{display:block; font-size:10.5px; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-soft); font-weight:700; margin-bottom:2px;}
.selector-field select, .selector-field input{border:none; background:none; font:inherit; font-size:14px; font-weight:700; color:var(--ink); width:100%; padding:0; appearance:none;}
.selector-field select:focus-visible, .selector-field input:focus-visible{outline:2px solid var(--primary); outline-offset:2px; border-radius:4px;}
.selector-note{margin-top:14px; font-size:12px; color:var(--ink-soft);}

.schedule-status{padding:40px 0; background:var(--bg); border-bottom:1px solid var(--line);}
.schedule-status h2{font-size:22px; font-weight:800; margin:0 0 4px;}
.schedule-status > .wrap > p{font-size:13.5px; color:var(--ink-soft); margin:0 0 20px;}
.status-groups{display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
.status-group{background:#fff; border:1px solid var(--line); border-radius:14px; padding:16px; box-shadow:0 8px 20px rgba(13,27,50,.035);}
.status-group h3{display:flex; align-items:center; gap:8px; font-size:14px; margin:0 0 12px;}
.status-group h3 .count{display:inline-flex; align-items:center; justify-content:center; min-width:20px; height:20px; padding:0 6px; border-radius:999px; font-size:11px; font-weight:800; color:#fff;}
.status-group.due h3 .count{background:#d52b1e;}
.status-group.upcoming h3 .count{background:#b57600;}
.status-group.monitor h3 .count{background:var(--primary);}
.status-row{display:flex; justify-content:space-between; gap:10px; padding:8px 0; border-top:1px solid #edf0f3; font-size:13px;}
.status-row:first-of-type{border-top:none;}
.status-row strong{color:var(--ink); font-weight:700;}
.status-row span{color:var(--ink-soft); font-size:12px;}
.status-empty{font-size:12.5px; color:var(--ink-soft); line-height:1.5; margin:0; padding:4px 0;}

.schedule-table-section{padding:44px 0;}
.schedule-table-section h2{font-size:22px; font-weight:800; margin:0 0 4px;}
.schedule-table-section > .wrap > p{font-size:13.5px; color:var(--ink-soft); margin:0 0 18px;}
.schedule-filters{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px;}
.schedule-filter-btn{
  min-height:36px; padding:0 14px; border-radius:999px; border:1px solid var(--line); background:#fff;
  font-size:12.5px; font-weight:700; color:var(--ink-soft); cursor:pointer;
}
.schedule-filter-btn.active{background:var(--primary); border-color:var(--primary); color:#fff;}
.schedule-table-wrap{border:1px solid var(--line); border-radius:14px; overflow:hidden; background:#fff;}
.schedule-table{width:100%; border-collapse:collapse; min-width:680px;}
.schedule-table thead th{text-align:left; font-size:11px; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-soft); background:#f7f8fa; padding:12px 16px; border-bottom:1px solid var(--line);}
.schedule-table tbody td{padding:14px 16px; font-size:13.5px; border-bottom:1px solid #edf0f3; vertical-align:top;}
.schedule-table tbody tr:last-child td{border-bottom:none;}
.schedule-table tbody tr.is-hidden{display:none;}
.schedule-empty-row td{text-align:center; color:var(--ink-soft); font-size:13px; padding:28px 16px;}
.sched-status-pill{display:inline-flex; align-items:center; min-height:24px; padding:0 10px; border-radius:999px; font-size:11px; font-weight:700;}
.sched-status-pill.due{background:#fff1ef; color:#cf3523;}
.sched-status-pill.upcoming{background:#fff5d9; color:#a76a00;}
.sched-status-pill.inspection{background:var(--primary-soft); color:var(--primary);}
.sched-status-pill.replacement{background:#eef8f1; color:#2d7a46;}
.schedule-table-scroll{overflow-x:auto;}
.schedule-table-note{font-size:12px; color:var(--ink-soft); margin-top:12px;}

.vehicle-visual-section{padding:44px 0; background:var(--bg); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
.vehicle-visual-section h2{font-size:22px; font-weight:800; margin:0 0 16px;}
.vehicle-visual{position:relative; background:var(--primary-soft); border:1px solid var(--primary-soft-border); border-radius:20px; padding:28px; display:flex; align-items:center; justify-content:center; min-height:320px; max-width:640px; margin:0 auto;}
.vehicle-visual img{width:100%; max-width:420px; height:auto; object-fit:contain; display:block;}
.vh-callout{position:absolute; display:flex; align-items:center; gap:8px; max-width:150px;}
.vh-dot{width:12px; height:12px; border-radius:50%; background:var(--primary); border:3px solid #fff; box-shadow:0 0 0 1.5px var(--primary); flex:none;}
.vh-label{font-size:11px; line-height:1.35; background:#fff; padding:5px 9px; border-radius:8px; box-shadow:0 2px 8px rgba(13,27,50,.1);}
.vh-label strong{display:block; color:var(--ink); font-size:12px; font-weight:800;}
.vh-label span{color:var(--ink-soft);}

.condition-comparison{padding:44px 0;}
.condition-comparison h2{font-size:22px; font-weight:800; margin:0 0 4px;}
.condition-comparison > .wrap > p{font-size:13.5px; color:var(--ink-soft); margin:0 0 20px; max-width:640px;}
.condition-cols{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.condition-panel{border:1px solid var(--line); border-radius:14px; padding:20px; background:#fff;}
.condition-panel h3{font-size:15px; margin:0 0 10px;}
.condition-panel ul{margin:0; padding:0; list-style:none;}
.condition-panel li{padding:8px 0; border-top:1px solid #edf0f3; font-size:13px; color:var(--ink-soft);}
.condition-panel li:first-child{border-top:none;}
.condition-note{margin-top:16px; font-size:12px; color:var(--ink-soft); background:var(--primary-soft); border:1px solid var(--primary-soft-border); border-radius:10px; padding:12px 14px;}

.system-explainer-section{padding:44px 0; background:var(--bg); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
.system-explainer-section h2{font-size:22px; font-weight:800; margin:0 0 16px;}
.system-terms{display:grid; grid-template-columns:repeat(4,1fr); gap:14px;}
.system-term{background:#fff; border:1px solid var(--line); border-radius:12px; padding:14px;}
.system-term strong{display:block; font-size:13.5px; margin-bottom:4px;}
.system-term span{font-size:12px; color:var(--ink-soft); line-height:1.4;}

.source-records{padding:44px 0;}
.source-records h2{font-size:22px; font-weight:800; margin:0 0 4px;}
.source-records > .wrap > p{font-size:13.5px; color:var(--ink-soft); margin:0 0 20px;}
.source-record-cols{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:20px;}
.source-record-card{border:1px solid var(--line); border-radius:14px; padding:18px; background:#fff;}
.source-record-card .src-tag{display:inline-block; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--primary); background:var(--primary-soft); border-radius:999px; padding:4px 10px; margin-bottom:10px;}
.source-record-card h3{font-size:15px; margin:0 0 8px;}
.source-record-card a{word-break:break-all; font-size:12px; color:var(--primary); display:block; margin-bottom:6px;}
.source-record-card .src-pages{font-size:12px; color:var(--ink-soft);}

.year-notes{padding:44px 0; background:var(--bg); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
.year-notes h2{font-size:22px; font-weight:800; margin:0 0 16px;}
.year-notes-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:14px;}
.year-note-card{background:#fff; border:1px solid var(--line); border-radius:12px; padding:16px;}
.year-note-card strong{display:block; font-size:13.5px; margin-bottom:4px;}
.year-note-card span{font-size:12.5px; color:var(--ink-soft); line-height:1.45;}

.related-guides{padding:44px 0;}
.related-guides h2{font-size:22px; font-weight:800; margin:0 0 16px;}
.related-guides-list{border:1px solid var(--line); border-radius:14px; overflow:hidden; background:#fff;}
.related-guide-row{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 18px; min-height:44px; border-bottom:1px solid #edf0f3;}
.related-guide-row:last-child{border-bottom:none;}
.related-guide-row:hover{background:var(--primary-soft);}
.related-guide-row span:first-child{font-size:13.5px; font-weight:700; color:var(--ink);}
.related-guide-row svg{color:var(--primary); flex:none;}

.related-models{padding:44px 0; background:var(--bg); border-top:1px solid var(--line);}
.related-models h2{font-size:22px; font-weight:800; margin:0 0 16px;}
.related-models-rail{display:grid; grid-template-columns:repeat(3,1fr); gap:14px;}
.related-model-card{background:#fff; border:1px solid var(--line); border-radius:12px; padding:16px; min-height:44px; display:flex; align-items:center; justify-content:space-between;}
.related-model-card:hover{border-color:var(--primary);}
.related-model-card strong{font-size:13.5px; color:var(--ink);}
.related-model-card svg{color:var(--primary);}

@media (max-width:980px){
  .model-hero-grid{grid-template-columns:1fr; gap:20px;}
  .model-hero-media{order:-1; min-height:220px; padding:16px;}
  .selector-fields{grid-template-columns:1fr 1fr;}
  .status-groups{grid-template-columns:1fr;}
  .condition-cols{grid-template-columns:1fr;}
  .system-terms{grid-template-columns:1fr 1fr;}
  .source-record-cols{grid-template-columns:1fr;}
  .year-notes-grid{grid-template-columns:1fr;}
  .related-models-rail{grid-template-columns:1fr;}
}
@media (max-width:650px){
  .selector-fields{grid-template-columns:1fr;}
  .system-terms{grid-template-columns:1fr;}
  .model-hero h1{font-size:28px;}
}
@media (max-width:560px){
  .vehicle-visual{flex-direction:column; align-items:stretch; padding:16px; min-height:auto;}
  .vehicle-visual img{max-width:100%; order:-1; margin-bottom:10px;}
  .vh-callout{position:static; max-width:none; width:100%; background:#fff; border:1px solid var(--line); border-radius:10px; padding:8px 12px; margin-bottom:8px; flex-direction:row !important; text-align:left !important; transform:none !important; left:auto !important; right:auto !important; top:auto !important; bottom:auto !important;}
  .vh-callout:last-child{margin-bottom:0;}
  .vh-label{background:none; padding:0; box-shadow:none;}
}

