:root { --orange:#ff4709; --ink:#141719; --muted:#60676d; --line:#dedede; --soft:#f7f7f5; --paper:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Manrope,"Segoe UI",Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
button,input,select { font:inherit; }
button,a,select { -webkit-tap-highlight-color:transparent; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.site-header { height:102px; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(28px,5vw,76px); border-bottom:1px solid var(--line); position:relative; z-index:10; background:rgba(255,255,255,.96); }
.brand-name { display:inline-block; font-family:Arial,"Helvetica Neue",sans-serif; font-size:34px; line-height:1; font-weight:900; font-style:italic; letter-spacing:-.055em; text-transform:uppercase; }
.brand-name:hover { color:var(--orange); }
nav { display:flex; align-items:center; gap:clamp(30px,5vw,72px); font-size:17px; font-weight:650; }
nav a { padding:15px 0; position:relative; }
nav a:after { content:""; position:absolute; left:0; right:100%; bottom:8px; height:2px; background:var(--orange); transition:.2s; }
nav a:hover:after { right:0; }
.hero { min-height:760px; padding:82px clamp(28px,5vw,76px) 38px; position:relative; overflow:hidden; background:linear-gradient(180deg,#fff 0%,#fdfdfc 100%); }
.hero:before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(255,71,9,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,71,9,.035) 1px,transparent 1px); background-size:42px 42px; mask-image:linear-gradient(to left,#000,transparent 55%); }
.hero-art { position:absolute; z-index:0; right:-2%; top:12px; width:57%; height:430px; background:url("/assets/hero-parts.png") center/contain no-repeat; opacity:.95; }
.hero-copy { position:relative; z-index:1; max-width:700px; }
.eyebrow { margin:0 0 18px; color:var(--orange); font-size:12px; line-height:1; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
h1 { font-size:clamp(48px,5.15vw,78px); line-height:1.05; letter-spacing:-.055em; margin:0; max-width:800px; font-weight:850; }
h1 span { display:block; }
.lead { color:var(--muted); font-size:clamp(18px,1.6vw,24px); margin:30px 0 0; max-width:680px; }
.finder { position:relative; z-index:2; margin-top:48px; padding:0; max-width:1320px; }
.search-field { height:90px; display:flex; align-items:center; border:1px solid #d6d3d1; border-radius:14px; background:rgba(255,255,255,.96); box-shadow:0 8px 28px rgba(35,30,27,.04); }
.search-field:focus-within { border-color:var(--orange); box-shadow:0 0 0 3px rgba(255,71,9,.1); }
.search-field input { flex:1; border:0; outline:0; background:transparent; font-size:19px; padding:0 30px 0 16px; min-width:0; }
.search-field input::placeholder { color:#9b9da1; }
.search-mark,.mini-search { width:27px; height:27px; border:3px solid var(--orange); border-radius:50%; margin-left:30px; position:relative; display:block; flex:0 0 auto; }
.search-mark:after,.mini-search:after { content:""; position:absolute; width:12px; height:3px; background:var(--orange); right:-9px; bottom:-5px; transform:rotate(45deg); border-radius:2px; }
.select-row { display:grid; grid-template-columns:1fr 1fr 1fr .88fr; gap:18px; margin-top:18px; }
.select-row label { min-width:0; }
select,.select-row button { width:100%; height:72px; border-radius:12px; }
select { appearance:none; border:1px solid #d6d3d1; padding:0 48px 0 22px; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='10'%3E%3Cpath d='m1 1 8 8 8-8' fill='none' stroke='%2360676d' stroke-width='2'/%3E%3C/svg%3E") calc(100% - 20px) center/18px 10px no-repeat; font-weight:650; outline:0; }
select:focus { border-color:var(--orange); box-shadow:0 0 0 3px rgba(255,71,9,.1); }
select:disabled { color:#aaa; background-color:#f5f5f5; }
.select-row button { border:0; background:var(--orange); color:#fff; font-weight:850; font-size:17px; cursor:pointer; box-shadow:0 9px 22px rgba(255,71,9,.2); transition:transform .18s,box-shadow .18s; }
.select-row button:hover { transform:translateY(-2px); box-shadow:0 12px 28px rgba(255,71,9,.28); }
.select-row button span { margin-left:10px; }
.trust-strip { position:relative; z-index:1; display:grid; grid-template-columns:.85fr 1fr 1.15fr 1.55fr; max-width:1320px; min-height:132px; border:1px solid #d6d3d1; border-radius:14px; background:rgba(255,255,255,.82); margin-top:32px; padding:24px 0; }
.trust-strip>div { display:flex; align-items:center; gap:18px; padding:0 34px; border-right:1px solid #ddd; }
.trust-strip>div:last-child { border:0; }
.trust-strip b { font-size:39px; letter-spacing:-.05em; }
.trust-strip span { font-size:15px; line-height:1.5; font-weight:650; }
.trust-strip .mini-search { margin:0; width:25px; height:25px; }
.shield { width:43px; height:48px; border:2px solid var(--orange); color:var(--orange); display:grid; place-items:center; border-radius:9px 9px 16px 16px; font-style:normal; font-weight:900; font-size:20px; }
.warning i,.vin-note>i { width:34px; height:34px; border:2px solid var(--orange); border-radius:50%; display:grid; place-items:center; color:var(--orange); font-style:normal; font-weight:850; flex:0 0 auto; }
.section { padding:100px clamp(28px,5vw,76px); max-width:1540px; margin:0 auto; scroll-margin-top:24px; }
.section-head { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:42px; }
.section-head h2,.about h2 { font-size:clamp(34px,3.5vw,54px); line-height:1.08; letter-spacing:-.04em; margin:0; }
.section-head>p { color:var(--muted); max-width:400px; text-align:right; }
.clear { border:0; background:transparent; color:var(--orange); font-weight:800; cursor:pointer; padding:12px; }
.table-wrap { overflow:auto; border:1px solid var(--line); border-radius:16px; }
table { width:100%; min-width:940px; border-collapse:collapse; }
th { background:#f3f3f1; text-align:left; padding:18px 20px; font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:#62676b; }
td { border-top:1px solid var(--line); padding:20px; vertical-align:top; font-size:14px; }
td strong,td small { display:block; }
td small { color:var(--muted); margin-top:6px; }
.vehicle-cell { min-width:220px; background:#fdfdfc; border-right:1px solid var(--line); }
.part-link { color:var(--orange); font-weight:850; white-space:nowrap; }
.car-link:hover { color:var(--orange); }
.oem-link { text-decoration:underline; text-decoration-color:#ccc; text-underline-offset:4px; }
.oem-list { display:flex; flex-wrap:wrap; gap:6px 10px; min-width:180px; }
.table-note { color:var(--muted); font-size:13px; margin:16px 0 0; }
.empty { padding:48px; border:1px dashed #ccc; border-radius:16px; display:flex; flex-direction:column; gap:8px; text-align:center; color:var(--muted); }
.empty b { color:var(--ink); font-size:20px; }
.groups { background:var(--soft); max-width:none; }
.groups>.section-head,.group-grid { max-width:1390px; margin-left:auto; margin-right:auto; }
.group-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.group-grid button { min-height:104px; background:#fff; border:1px solid #ddd; border-radius:12px; padding:20px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:14px; text-align:left; cursor:pointer; transition:.18s; }
.group-grid button:hover { border-color:var(--orange); transform:translateY(-2px); box-shadow:0 8px 22px rgba(26,23,21,.07); }
.group-grid button span { color:var(--orange); font-size:11px; font-weight:850; }
.group-grid button b { line-height:1.3; }
.group-grid button i { color:var(--orange); font-style:normal; font-size:20px; }
.steps { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); border-radius:16px; overflow:hidden; }
.steps article { padding:36px; min-height:250px; border-right:1px solid var(--line); }
.steps article:last-child { border:0; }
.steps em { color:var(--orange); font-weight:850; font-style:normal; font-size:13px; }
.steps h3 { font-size:23px; margin:38px 0 15px; }
.steps p,.about p { color:var(--muted); line-height:1.75; margin:0; }
.vin-note { margin-top:18px; padding:24px 28px; background:#fff8f5; border:1px solid #ffd4c4; border-radius:14px; display:flex; gap:20px; align-items:center; }
.vin-note p { margin:0; display:flex; flex-direction:column; gap:5px; }
.vin-note span { color:var(--muted); font-size:14px; }
.about { max-width:none; background:#17191b; color:#fff; }
.about-card { max-width:1390px; margin:auto; display:grid; grid-template-columns:1.1fr .9fr; gap:9vw; align-items:center; }
.about-card>div:first-child { max-width:720px; }
.about p { color:#bdc0c2; margin-top:22px; }
.about-facts { display:grid; grid-template-columns:1fr 1fr; border:1px solid #414446; border-radius:14px; overflow:hidden; }
.about-facts div { padding:34px; min-height:140px; display:flex; flex-direction:column; justify-content:center; border-right:1px solid #414446; border-bottom:1px solid #414446; }
.about-facts div:nth-child(2) { border-right:0; }
.about-facts div:last-child { grid-column:1/-1; border:0; }
.about-facts b { font-size:32px; color:#fff; }
.about-facts span { color:#9fa3a5; margin-top:8px; font-size:13px; }
.disclaimer { max-width:none; background:#f7f7f5; padding-top:72px; padding-bottom:72px; }
.disclaimer-card { max-width:1050px; padding:36px 40px; margin:auto; background:#fff; border:1px solid var(--line); border-left:4px solid var(--orange); border-radius:14px; }
.disclaimer-card h2 { margin:0 0 18px; font-size:clamp(30px,3vw,44px); letter-spacing:-.04em; }
.disclaimer-card p:not(.eyebrow) { color:var(--muted); line-height:1.75; margin:10px 0 0; }
.inline-disclaimer { margin-top:28px; padding:20px 22px; color:var(--muted); line-height:1.65; background:var(--soft); border-left:3px solid var(--orange); border-radius:8px; font-size:14px; }
footer { padding:68px clamp(28px,5vw,76px); display:grid; grid-template-columns:1.1fr 1.8fr .7fr; gap:5vw; border-top:4px solid var(--orange); }
footer b { font-size:14px; text-transform:uppercase; letter-spacing:.08em; }
footer p { color:var(--muted); line-height:1.8; font-size:14px; }
footer a:hover { color:var(--orange); }
.footer-brand p { max-width:240px; }
.brand-name--footer { font-size:29px; }
.footer-disclaimer p { max-width:620px; }
.seo-hero { min-height:470px; padding:64px clamp(28px,5vw,76px) 82px; position:relative; overflow:hidden; border-bottom:1px solid var(--line); }
.seo-hero:after { content:""; position:absolute; right:-4%; top:0; width:52%; height:100%; background:url("/assets/hero-parts.png") center/contain no-repeat; opacity:.2; pointer-events:none; }
.seo-hero>* { position:relative; z-index:1; }
.seo-hero h1 { max-width:940px; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-bottom:70px; color:var(--muted); font-size:13px; }
.breadcrumbs a:hover { color:var(--orange); }
.seo-results { padding-bottom:40px; }
.seo-copy { padding-top:50px; max-width:1050px; margin:0; }
.seo-copy h2 { font-size:clamp(30px,3.2vw,46px); letter-spacing:-.04em; margin:0 0 20px; }
.seo-copy p { color:var(--muted); line-height:1.8; max-width:850px; }
.back-button { display:inline-flex; margin-top:25px; color:var(--orange); font-weight:850; }
@media (max-width:1000px) {
  .site-header { height:88px; }
  nav { display:none; }
  .brand-name { font-size:30px; }
  .hero { padding-top:54px; min-height:auto; }
  .hero-art { opacity:.28; width:70%; right:-20%; top:20px; }
  .select-row { grid-template-columns:1fr 1fr; }
  .trust-strip { grid-template-columns:1fr 1fr; }
  .trust-strip>div { min-height:84px; border-bottom:1px solid #ddd; }
  .trust-strip>div:nth-child(2) { border-right:0; }
  .trust-strip>div:nth-child(3),.trust-strip>div:nth-child(4) { border-bottom:0; }
  .group-grid { grid-template-columns:repeat(2,1fr); }
  .about-card { grid-template-columns:1fr; }
  footer { grid-template-columns:1fr 1fr; }
  .seo-hero:after { width:70%; right:-20%; }
}
@media (max-width:650px) {
  .site-header { padding:0 20px; height:76px; }
  .brand-name { font-size:27px; }
  .hero { padding:46px 20px 28px; }
  .hero-art { width:110%; right:-48%; top:10px; height:310px; opacity:.18; }
  h1 { font-size:45px; }
  .lead { font-size:17px; line-height:1.6; max-width:330px; }
  .finder { margin-top:34px; }
  .search-field { height:70px; }
  .search-mark { margin-left:20px; }
  .search-field input { font-size:15px; padding-left:14px; }
  .select-row { grid-template-columns:1fr; gap:10px; margin-top:10px; }
  select,.select-row button { height:62px; }
  .trust-strip { grid-template-columns:1fr; margin-top:20px; }
  .trust-strip>div { border-right:0; border-bottom:1px solid #ddd !important; padding:20px 26px; }
  .trust-strip>div:last-child { border-bottom:0 !important; }
  .section { padding:72px 20px; }
  .section-head { align-items:start; flex-direction:column; margin-bottom:30px; }
  .section-head>p { text-align:left; margin:0; }
  .group-grid { grid-template-columns:1fr; }
  .group-grid button { min-height:82px; }
  .steps { grid-template-columns:1fr; }
  .steps article { min-height:0; border-right:0; border-bottom:1px solid var(--line); padding:28px; }
  .steps h3 { margin-top:20px; }
  .vin-note { align-items:flex-start; }
  .disclaimer-card { padding:28px 24px; }
  .about-facts { grid-template-columns:1fr; }
  .about-facts div,.about-facts div:nth-child(2) { border-right:0; border-bottom:1px solid #414446; }
  .about-facts div:last-child { grid-column:auto; }
  footer { grid-template-columns:1fr; gap:26px; padding:54px 20px; }
  .seo-hero { min-height:420px; padding:36px 20px 58px; }
  .seo-hero:after { width:110%; right:-55%; opacity:.12; }
  .breadcrumbs { margin-bottom:54px; }
}
@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto!important; transition:none!important; } }
