/**
 * Autolex Vehicle Detail 3.2
 * Source-aware, responsive vehicle detail design.
 */
body.autolex-vehicle-detail{
  background:radial-gradient(circle at 10% 0,rgba(197,72,45,.07),transparent 28rem),var(--alx3-bg)!important;
}
body.autolex-vehicle-detail .site-main,
body.autolex-vehicle-detail .content-area{background:transparent!important}
body.autolex-vehicle-detail .entry-content,
body.autolex-vehicle-detail .alxbc-page-shell,
body.autolex-vehicle-detail .alxbc-dynamic-vehicle{
  width:min(100% - 36px,1440px)!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:28px 0 110px!important;
  color:var(--alx3-text)!important;
  background:transparent!important;
}
body.autolex-vehicle-detail .alx3-vehicle-detail{position:relative}
body.autolex-vehicle-detail .alxbc-section,
body.autolex-vehicle-detail .alx3-detail-section{
  margin:20px 0!important;
  padding:clamp(26px,4vw,54px)!important;
  border:1px solid var(--alx3-line)!important;
  border-radius:24px!important;
  background:#fff!important;
  color:var(--alx3-text)!important;
  box-shadow:var(--alx3-shadow-sm)!important;
}
body.autolex-vehicle-detail .alxbc-section h2,
body.autolex-vehicle-detail .alxbc-section h3,
body.autolex-vehicle-detail .alxbc-section strong,
body.autolex-vehicle-detail .alxbc-section dt,
body.autolex-vehicle-detail .alxbc-section dd{color:var(--alx3-text)!important}
body.autolex-vehicle-detail .alxbc-section p,
body.autolex-vehicle-detail .alxbc-section small{color:var(--alx3-muted)!important}
body.autolex-vehicle-detail .alxbc-section table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--alx3-line);border-radius:14px;background:#fff;overflow:hidden}
body.autolex-vehicle-detail .alxbc-section th,
body.autolex-vehicle-detail .alxbc-section td{padding:13px 15px;border-bottom:1px solid #ece7df;color:var(--alx3-text);text-align:left}
body.autolex-vehicle-detail .alxbc-section th{background:#f2eee7;color:#535c56;font-size:11px;text-transform:uppercase;letter-spacing:.055em}
body.autolex-vehicle-detail .alxbc-section tr:last-child td{border-bottom:0}

/* Data-backed overview */
.alx3-detail-overview{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);
  gap:24px;
  margin:0 0 16px;
  padding:clamp(36px,5.5vw,76px);
  border:1px solid var(--alx3-line);
  border-radius:30px;
  background:linear-gradient(130deg,#fff 0%,#f5efe5 64%,#e8dfd1 100%);
  box-shadow:var(--alx3-shadow);
  overflow:hidden;
}
.alx3-detail-overview:before{content:"";position:absolute;right:-150px;top:-200px;width:480px;height:480px;border:1px solid rgba(197,72,45,.16);border-radius:50%;box-shadow:0 0 0 70px rgba(197,72,45,.025),0 0 0 140px rgba(31,111,104,.022)}
.alx3-detail-overview__copy,.alx3-detail-confidence{position:relative;z-index:1}
.alx3-detail-kicker{color:var(--alx3-accent);font:850 11px/1.2 ui-monospace,monospace;letter-spacing:.14em}
.alx3-detail-overview h1{max-width:13ch;margin:18px 0 16px;color:var(--alx3-text)!important;font-size:clamp(45px,6vw,82px);line-height:.92;letter-spacing:-.065em}
.alx3-detail-overview__copy>p{max-width:760px;margin:0;color:var(--alx3-muted);font-size:18px;line-height:1.68}
.alx3-detail-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}
.alx3-detail-tags span{display:inline-flex;gap:5px;padding:8px 11px;border:1px solid #d9d1c5;border-radius:999px;background:rgba(255,255,255,.8);color:#5a625d;font-size:11px;font-weight:750}
.alx3-detail-tags b{color:var(--alx3-text)}
.alx3-detail-confidence{align-self:center;border:1px solid #d4ccc0;border-radius:19px;background:rgba(255,255,255,.9);box-shadow:0 24px 64px rgba(43,39,33,.13);overflow:hidden}
.alx3-detail-confidence>header{display:flex;align-items:center;gap:9px;padding:15px 17px;border-bottom:1px solid var(--alx3-line);background:#f0ece4}
.alx3-detail-confidence>header span{width:9px;height:9px;border-radius:50%;background:var(--alx3-green);box-shadow:0 0 0 5px rgba(40,122,75,.11)}
.alx3-detail-confidence>header b{color:#6c746f;font:850 10px/1 ui-monospace,monospace;letter-spacing:.1em}
.alx3-detail-confidence dl{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:0;background:var(--alx3-line)}
.alx3-detail-confidence dl>div{padding:19px;background:#fff}
.alx3-detail-confidence dt{color:#848b86!important;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.alx3-detail-confidence dd{margin:6px 0 0!important;font-size:29px;font-weight:900;letter-spacing:-.05em}
.alx3-detail-confidence>p{margin:0;padding:15px 18px!important;color:#296443!important;border-top:1px solid var(--alx3-line);background:#f1f8f3;font-size:12px!important;font-weight:800}
.alx3-detail-confidence>p.is-warning{color:#815510!important;background:#fff8e9}

/* Sticky detail navigation */
.alx3-detail-nav{position:sticky;top:84px;z-index:30;display:flex;gap:7px;margin:16px 0 20px;padding:9px;border:1px solid var(--alx3-line);border-radius:15px;background:rgba(255,255,255,.93);box-shadow:var(--alx3-shadow-sm);backdrop-filter:blur(16px);overflow-x:auto;scrollbar-width:thin}
.alx3-detail-nav a{flex:0 0 auto;padding:10px 13px;border-radius:10px;color:#56605a;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.alx3-detail-nav a:hover,.alx3-detail-nav a:focus-visible{background:#f0ebe3;color:var(--alx3-accent)}

/* Headings and summary bars */
.alx3-detail-heading{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:24px!important;margin-bottom:28px!important}
.alx3-detail-heading>div>span{color:var(--alx3-accent);font:850 10px/1 ui-monospace,monospace;letter-spacing:.13em}
.alx3-detail-heading h2{margin:8px 0 0!important;color:var(--alx3-text)!important;font-size:clamp(30px,4vw,49px)!important;line-height:1!important;letter-spacing:-.045em!important}
.alx3-detail-heading>b{display:inline-flex;padding:8px 11px;border-radius:999px;background:#f0ebe3;color:#59615b!important;font:850 10px/1 ui-monospace,monospace;letter-spacing:.06em;white-space:nowrap}
.alx3-source-summary,.alx3-recall-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:17px;padding:16px 18px;border:1px solid var(--alx3-line);border-radius:14px;background:#f7f4ee}
.alx3-source-summary strong,.alx3-recall-summary strong{color:var(--alx3-text)!important;font-size:17px}
.alx3-source-summary span,.alx3-recall-summary span{color:var(--alx3-muted);font-size:12px;text-align:right}

/* Loading and empty states */
.alx3-detail-loading{overflow:hidden}
.alx3-detail-loading__copy{display:flex;align-items:center;gap:14px}
.alx3-detail-loading__copy>span{width:13px;height:13px;border:2px solid #d5cabb;border-top-color:var(--alx3-accent);border-radius:50%;animation:alx3-spin .8s linear infinite}
.alx3-detail-loading__copy b{display:block;color:var(--alx3-text)!important}
.alx3-detail-loading__copy small{display:block;margin-top:4px}
.alx3-detail-skeleton{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:22px}
.alx3-detail-skeleton i{height:92px;border-radius:14px;background:linear-gradient(90deg,#f0ece5,#faf8f4,#f0ece5);background-size:200% 100%;animation:alx3-shimmer 1.2s infinite}
.alx3-detail-unavailable,.alx3-detail-empty,.alx3-recall-clear{padding:28px!important;border:1px dashed #c8c0b4!important;border-radius:16px!important;background:#fbfaf7!important;text-align:center}
.alx3-detail-unavailable strong,.alx3-detail-empty strong,.alx3-recall-clear strong{display:block;color:var(--alx3-text)!important;font-size:20px}
.alx3-detail-unavailable p,.alx3-detail-empty p,.alx3-recall-clear p{margin:8px 0 0!important}
@keyframes alx3-spin{to{transform:rotate(360deg)}}
@keyframes alx3-shimmer{to{background-position:-200% 0}}

/* Maintenance evidence */
body.autolex-vehicle-detail .alxp-maintenance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
body.autolex-vehicle-detail .alx3-claim-card{display:flex;min-height:250px;padding:22px;flex-direction:column;border:1px solid var(--alx3-line);border-radius:18px;background:linear-gradient(145deg,#fff,#f9f6f0);box-shadow:var(--alx3-shadow-sm)}
body.autolex-vehicle-detail .alx3-claim-card>header{display:flex;align-items:center;justify-content:space-between;gap:14px}
body.autolex-vehicle-detail .alx3-claim-card>header>span{color:var(--alx3-accent);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
body.autolex-vehicle-detail .alx3-claim-card>header>b{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#eee9e1;color:var(--alx3-text)!important;font-size:12px}
body.autolex-vehicle-detail .alx3-claim-card>strong{margin-top:21px;color:var(--alx3-text)!important;font-size:20px;line-height:1.3}
body.autolex-vehicle-detail .alx3-claim-card>p{margin:12px 0 20px!important;line-height:1.62}
body.autolex-vehicle-detail .alx3-claim-card>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid #ebe6dd}
body.autolex-vehicle-detail .alx3-claim-card>footer small{display:inline-flex;padding:6px 8px;border-radius:999px;background:#eef4f8;color:#315f84!important;font-size:10px;font-weight:850}
body.autolex-vehicle-detail .alx3-claim-card>footer small.is-needs_vin,body.autolex-vehicle-detail .alx3-claim-card>footer small.is-vin_required{background:#fff5e5;color:#83550d!important}
body.autolex-vehicle-detail .alx3-claim-card>footer span{color:var(--alx3-muted);font-size:11px;font-weight:750}
body.autolex-vehicle-detail .alxp-fitment-warning{margin:20px 0 0!important;padding:15px 17px!important;border:1px solid #e0c28f!important;border-left:4px solid var(--alx3-amber)!important;border-radius:12px!important;background:#fff8ea!important;color:#75501a!important;line-height:1.55}

/* Sources */
body.autolex-vehicle-detail .alxp-source-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
body.autolex-vehicle-detail .alx3-source-card{display:flex;min-height:260px;padding:22px;flex-direction:column;border:1px solid var(--alx3-line);border-radius:18px;background:#fff;color:var(--alx3-text);box-shadow:var(--alx3-shadow-sm);transition:.18s ease}
body.autolex-vehicle-detail .alx3-source-card:hover{transform:translateY(-3px);border-color:#c6a69a;box-shadow:var(--alx3-shadow-hover)}
body.autolex-vehicle-detail .alx3-source-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px}
body.autolex-vehicle-detail .alx3-source-card>header span{color:var(--alx3-accent);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}
body.autolex-vehicle-detail .alx3-source-card>header b{color:#8b918d!important;font:850 9px/1 ui-monospace,monospace;letter-spacing:.08em}
body.autolex-vehicle-detail .alx3-source-card>strong{margin-top:22px;color:var(--alx3-text)!important;font-size:22px}
body.autolex-vehicle-detail .alx3-source-card>p{margin:8px 0 14px!important;line-height:1.55}
body.autolex-vehicle-detail .alx3-source-card>small{display:block;padding:11px;border-radius:10px;background:#f5f2ec;color:#68706a!important;line-height:1.45}
body.autolex-vehicle-detail .alx3-source-card>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid #ebe6dd}
body.autolex-vehicle-detail .alx3-source-card>footer span{color:var(--alx3-muted);font-size:10px}
body.autolex-vehicle-detail .alx3-source-card>footer em{color:var(--alx3-accent);font-size:11px;font-style:normal;font-weight:850}
body.autolex-vehicle-detail .alx3-source-card.is-primary{border-top:4px solid var(--alx3-green)}
body.autolex-vehicle-detail .alx3-source-card.is-secondary{border-top:4px solid var(--alx3-blue)}

/* FrissAuto fitment */
.alx3-fitment-legend{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.alx3-fitment-legend span{display:inline-flex;padding:8px 11px;border:1px solid var(--alx3-line);border-radius:999px;background:#f5f2ec;color:#59615b;font-size:10px;font-weight:850}
.alx3-fitment-legend .is-matched{border-color:#acd2bc;background:#edf8f1;color:#256440}
.alx3-fitment-legend .is-search{border-color:#b9cede;background:#edf4f8;color:#315f84}
.alx3-fitment-legend .is-universal{border-color:#e1c28e;background:#fff7e8;color:#83550d}
.alx3-offer-group+ .alx3-offer-group{margin-top:36px;padding-top:32px;border-top:1px solid var(--alx3-line)}
.alx3-offer-group>header{max-width:820px;margin-bottom:18px}
.alx3-offer-group>header>span{color:var(--alx3-accent);font:850 10px/1 ui-monospace,monospace;letter-spacing:.11em}
.alx3-offer-group>header h3{margin:8px 0 5px!important;color:var(--alx3-text)!important;font-size:26px!important;letter-spacing:-.03em}
.alx3-offer-group>header p{margin:0!important;line-height:1.55}
body.autolex-vehicle-detail .alxp-product-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
body.autolex-vehicle-detail .alx3-product-card{display:flex;min-width:0;min-height:430px;padding:0;flex-direction:column;border:1px solid var(--alx3-line);border-radius:19px;background:#fff;color:var(--alx3-text);box-shadow:var(--alx3-shadow-sm);overflow:hidden;transition:.18s ease}
body.autolex-vehicle-detail .alx3-product-card:hover{transform:translateY(-4px);border-color:#c6a69a;box-shadow:var(--alx3-shadow-hover)}
.alx3-product-media{display:grid;place-items:center;height:190px;border-bottom:1px solid var(--alx3-line);background:linear-gradient(145deg,#f7f3ec,#ebe5dc)}
.alx3-product-media img{width:100%!important;height:100%!important;margin:0!important;padding:12px;object-fit:contain!important;border:0!important;background:#fff!important;box-shadow:none!important}
.alx3-product-media>span{color:#a4aaa6;font:900 17px/1.15 ui-monospace,monospace;text-align:center;letter-spacing:.1em}
.alx3-product-copy{display:flex;padding:20px;flex:1;flex-direction:column}
.alx3-product-copy>span{color:var(--alx3-accent);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.alx3-fitment-badge{align-self:flex-start;margin-top:9px;padding:6px 8px;border-radius:999px;background:#edf4f8;color:#315f84!important;font-size:9px!important;font-weight:850!important}
.is-matched_product .alx3-fitment-badge{background:#edf8f1;color:#256440!important}
.is-universal .alx3-fitment-badge{background:#fff7e8;color:#83550d!important}
.alx3-product-copy>strong{margin-top:14px;color:var(--alx3-text)!important;font-size:18px!important;line-height:1.28}
.alx3-product-copy>p{margin:10px 0 14px!important;line-height:1.5}
.alx3-product-copy>mark{align-self:flex-start;padding:0;background:transparent;color:var(--alx3-text);font-size:20px;font-weight:900}
.alx3-product-copy>small{font-size:11px;line-height:1.45}
.alx3-product-copy>em{margin-top:auto;padding-top:17px;color:var(--alx3-accent);font-style:normal;font-size:12px;font-weight:850}

/* Safety Gate recalls */
.alx3-recall-status{padding:18px;border:1px solid var(--alx3-line);border-radius:13px;background:#f7f4ee;color:var(--alx3-muted);font-weight:750}
.alx3-recall-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.alx3-recall-card{display:flex;min-height:320px;padding:22px;flex-direction:column;border:1px solid var(--alx3-line);border-top:4px solid var(--alx3-red);border-radius:18px;background:#fff;box-shadow:var(--alx3-shadow-sm)}
.alx3-recall-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.alx3-recall-card>header span{color:var(--alx3-red);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}
.alx3-recall-card>header time{color:var(--alx3-muted);font-size:10px;font-weight:750}
.alx3-recall-card h3{margin:19px 0 13px!important;color:var(--alx3-text)!important;font-size:22px!important;letter-spacing:-.03em}
.alx3-recall-card dl{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:0;border:1px solid #e8e3da;border-radius:12px;background:#e8e3da;overflow:hidden}
.alx3-recall-card dl>div{padding:11px;background:#fbfaf7}
.alx3-recall-card dt{color:#858b87!important;font-size:9px;font-weight:850;text-transform:uppercase}
.alx3-recall-card dd{margin:4px 0 0!important;font-size:12px;font-weight:800}
.alx3-recall-card>p{margin:15px 0!important;line-height:1.58}
.alx3-recall-card>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:15px;border-top:1px solid #ebe6dd}
.alx3-recall-card>footer span{color:var(--alx3-muted);font-size:11px;font-weight:750}
.alx3-recall-card>footer a{color:var(--alx3-accent);font-size:11px;font-weight:850}
.alx3-recall-clear{border-color:#b9d3c3!important;background:#f1f8f3!important}

@media(max-width:1100px){
  .alx3-detail-overview{grid-template-columns:1fr}
  .alx3-detail-confidence{max-width:680px}
  body.autolex-vehicle-detail .alxp-product-rules{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  body.autolex-vehicle-detail .entry-content,
  body.autolex-vehicle-detail .alxbc-page-shell,
  body.autolex-vehicle-detail .alxbc-dynamic-vehicle{width:min(100% - 20px,1440px)!important;padding-top:12px!important}
  .alx3-detail-overview{padding:36px 21px;border-radius:22px}
  .alx3-detail-overview h1{font-size:clamp(42px,14vw,65px)}
  .alx3-detail-confidence dl{grid-template-columns:1fr 1fr}
  .alx3-detail-nav{top:72px;margin-inline:-2px}
  .alx3-detail-heading{align-items:flex-start!important;flex-direction:column!important}
  .alx3-source-summary,.alx3-recall-summary{align-items:flex-start;flex-direction:column}
  .alx3-source-summary span,.alx3-recall-summary span{text-align:left}
  .alx3-detail-skeleton{grid-template-columns:1fr 1fr}
  body.autolex-vehicle-detail .alxp-maintenance-grid,
  body.autolex-vehicle-detail .alxp-source-list,
  body.autolex-vehicle-detail .alxp-product-rules,
  .alx3-recall-grid{grid-template-columns:1fr}
  body.autolex-vehicle-detail .alx3-product-card{min-height:0}
  .alx3-product-media{height:210px}
}
@media(max-width:430px){
  .alx3-detail-confidence dl{grid-template-columns:1fr}
  .alx3-detail-tags{align-items:stretch;flex-direction:column}
  .alx3-detail-tags span{justify-content:space-between}
  .alx3-detail-skeleton{grid-template-columns:1fr}
  .alx3-recall-card dl{grid-template-columns:1fr}
  .alx3-recall-card>footer{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
  .alx3-detail-loading__copy>span,.alx3-detail-skeleton i{animation:none!important}
}
