/* QA101.2 — shared repair-kit and repair-part layouts without inheriting caliper gallery sizing.
 * Screen-only and profile-scoped; print, other products and image protection remain independent.
 */
@media screen {
/* QA101.15 — match the existing OEM bottom spacing on repair profiles. */
body.product-detail-repair .product-reference-section {
  padding-top:20px;
}
@media(max-width:700px) {
  body.product-detail-repair .product-reference-section {padding-top:14px}
}
/* Optional OEM references use the available width without an applications column. */
body.product-detail-repair .reference-panel-grid {
  grid-template-columns:minmax(0,1fr);
}
body.product-detail-repair [data-kit-detail].product-detail-hero {
  padding:44px 0 40px;background:#f5f5f2;border-bottom:1px solid #e3e4e3;overflow:visible;
}
body.product-detail-repair [data-kit-detail]::before {content:none}
body.product-detail-repair [data-kit-detail] .product-detail-grid {display:none}
body.product-detail-repair [data-kit-detail] .product-detail-layout {
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(28px,3.5vw,52px);
  align-items:start;width:min(calc(100% - 64px),var(--precision-max,1480px));max-width:var(--precision-max,1480px);min-height:0;margin-inline:auto;padding:0;
}
body.product-detail-repair [data-kit-detail] .product-detail-visual {
  display:block;min-width:0;min-height:0;height:auto;align-self:start;
  border:1px solid #e4e5e3;background:#fff;border-radius:0;box-shadow:none;animation:none;overflow:visible;
}
body.product-detail-repair [data-kit-detail] .product-image-gallery {
  display:flex;flex-direction:column;flex:none;grid-template-rows:none;width:100%;min-width:0;height:auto;background:#fff;
}
body.product-detail-repair [data-kit-detail] .gallery-main-frame {
  position:relative;display:block;flex:none;width:100%;height:auto;min-height:0;max-height:520px;
  aspect-ratio:5 / 4;background:#fff;padding:0;box-shadow:none;border:0;border-radius:0;perspective:none;transform-style:flat;
}
/* Absolute positioning keeps an image's intrinsic dimensions out of flex/grid sizing. */
body.product-detail-repair [data-kit-detail] .gallery-main-frame img,
body.product-detail-repair [data-kit-detail] .gallery-main-frame:hover img {
  position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;max-width:100%;max-height:100%;
  object-fit:contain;object-position:center;padding:clamp(16px,2vw,28px);margin:0;filter:none;transform:none;
  transform-style:flat;will-change:auto;transition:opacity .2s ease;
}
body.product-detail-repair [data-kit-detail] .gallery-main-frame::before {content:none}
body.product-detail-repair [data-kit-detail] .gallery-grid {display:none}
/* Only suppress the decorative inset border when the watermark is not enabled. */
body.product-detail-repair:not([data-image-watermark="1"]) [data-kit-detail] .gallery-main-frame::after,
body.product-detail-repair:not([data-image-protection-product="1"]) [data-kit-detail] .gallery-main-frame::after {content:none}
body.product-detail-repair[data-image-watermark="1"][data-image-protection-product="1"] [data-kit-detail] .gallery-main-frame::after {
  inset:auto 12px 12px auto;max-width:calc(100% - 24px);overflow-wrap:anywhere;
}
body.product-detail-repair [data-kit-detail] .gallery-thumbs {
  display:flex;flex-wrap:wrap;flex:none;align-items:center;justify-content:flex-start;gap:8px;grid-template-columns:none;
  width:100%;min-width:0;padding:12px;background:#fff;border-top:1px solid #eeefed;
}
body.product-detail-repair [data-kit-detail] .gallery-thumb {
  flex:0 0 72px;width:72px;height:72px;min-width:0;max-width:100%;padding:5px;
  border:1px solid #e4e5e3;border-radius:0;background:#fff;box-shadow:none;
}
body.product-detail-repair [data-kit-detail] .gallery-thumb.active {border-color:#c52b27;box-shadow:inset 0 -2px 0 #c52b27}
body.product-detail-repair [data-kit-detail] .gallery-thumb:focus-visible {outline:2px solid #c52b27;outline-offset:2px}
body.product-detail-repair [data-kit-detail] .gallery-thumb img,
body.product-detail-repair [data-kit-detail] .gallery-thumb:hover img {
  width:100%;height:100%;object-fit:contain;object-position:center;transform:none;filter:none;
}
body.product-detail-repair [data-kit-detail] .product-detail-copy {
  min-width:0;width:100%;max-width:100%;height:auto;padding:0;align-self:start;justify-content:flex-start;
  background:transparent;border:0;border-radius:0;box-shadow:none;animation:none;text-align:start;
}
body.product-detail-repair [data-kit-detail] .product-detail-copy::before {content:none}
body.product-detail-repair [data-kit-detail] .breadcrumb {
  display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 9px;min-width:0;max-width:100%;margin:0 0 24px;
  font-size:10px;line-height:1.7;letter-spacing:.06em;white-space:normal;overflow-wrap:anywhere;
}
body.product-detail-repair [data-kit-detail] .breadcrumb>* {min-width:0;max-width:100%}
body.product-detail-repair [data-kit-detail] .kit-detail-eyebrow {
  display:flex;align-items:center;gap:12px;margin:0 0 16px;color:#a92723;font-size:10px;
  line-height:1.5;letter-spacing:.15em;font-weight:750;text-transform:uppercase;overflow-wrap:anywhere;
}
body.product-detail-repair [data-kit-detail] .kit-detail-eyebrow span {display:block;flex:0 0 32px;height:2px;background:#c52b27}
body.product-detail-repair [data-kit-detail] .product-detail-copy h1 {
  min-width:0;max-width:100%;font-size:clamp(42px,4.2vw,68px);font-weight:750;letter-spacing:-.045em;
  line-height:1.08;white-space:normal;overflow-wrap:anywhere;margin:0 0 14px;color:#15191a;
}
body.product-detail-repair [data-kit-detail] .product-detail-copy h2 {
  min-width:0;max-width:100%;font-size:clamp(20px,1.7vw,26px);font-weight:450;line-height:1.4;
  letter-spacing:-.02em;white-space:normal;overflow-wrap:anywhere;margin:0;color:#4c5356;
}
body.product-detail-repair [data-kit-detail] .product-editorial-rule {
  display:grid;grid-template-columns:minmax(24px,1fr) minmax(0,auto);align-items:center;gap:12px;
  width:100%;min-width:0;padding:0;margin:24px 0 8px;border:0;
}
body.product-detail-repair [data-kit-detail] .product-editorial-rule b {
  min-width:0;font-size:8px;line-height:1.6;letter-spacing:.08em;white-space:normal;overflow-wrap:anywhere;text-align:end;
}
body.product-detail-repair [data-kit-detail] .product-dossier-meta {display:none}
body.product-detail-repair [data-kit-detail] .product-repair-specs {display:block;background:transparent;border:0;margin:0;padding:0;min-width:0}
body.product-detail-repair [data-kit-detail] .product-repair-specs>div {
  display:grid;grid-template-columns:148px minmax(0,1fr);align-items:center;gap:8px 18px;
  margin:0;padding:16px 0;min-width:0;min-height:0;background:none;border:0;border-bottom:1px solid #dfe1de;
  animation:none;transform:none;transition:none;
}
body.product-detail-repair [data-kit-detail] .product-repair-specs>div:hover {background:none;transform:none}
body.product-detail-repair [data-kit-detail] .product-repair-specs small {
  display:flex;align-items:center;gap:10px;min-width:0;margin:0;padding:0;font-size:11px;line-height:1.6;letter-spacing:.025em;
  color:#778084;text-transform:none;overflow-wrap:anywhere;
}
body.product-detail-repair [data-kit-detail] .product-repair-specs .repair-spec-label {
  min-width:0;max-width:100%;overflow-wrap:anywhere;
}
body.product-detail-repair [data-kit-detail] .product-repair-specs strong {
  min-width:0;max-width:100%;margin:0;padding:0;font-size:13px;line-height:1.6;white-space:normal;overflow-wrap:anywhere;color:#22282a;
}
body.product-detail-repair [data-kit-detail] .product-repair-specs>.product-repair-series strong {display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}
body.product-detail-repair [data-kit-detail] .kit-series-chip {
  display:inline-flex;min-width:0;max-width:100%;padding:4px 10px;border:1px solid #d7dbd7;background:#fff;
  font-size:11px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;
}
body.product-detail-repair [data-kit-detail] .kit-series-chip a {min-width:0;color:inherit;text-decoration:none;overflow-wrap:anywhere}
body.product-detail-repair [data-kit-detail] .kit-series-chip:has(a:hover) {border-color:#c52b27;color:#b52622}
body.product-detail-repair [data-kit-detail] .kit-contents-jump {
  display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0;min-height:52px;
  padding:14px 18px;margin:22px 0 0;background:#c52b27;color:#fff;text-decoration:none;
  font-size:12px;line-height:1.5;font-weight:700;overflow-wrap:anywhere;
}
body.product-detail-repair [data-kit-detail] .kit-contents-jump:hover {background:#a61f1c}
body.product-detail-repair [data-kit-detail] .kit-contents-jump:focus-visible {outline:3px solid #161b1d;outline-offset:3px}
body.product-detail-repair [data-kit-detail] .kit-contents-jump span {flex-shrink:0;font-size:22px;line-height:1;font-weight:400}
body.product-detail-repair [data-kit-detail] .product-action-band-shell {
  min-width:0;max-width:100%;margin:12px 0 0;padding:0;border:0;background:transparent;box-shadow:none;
}
body.product-detail-repair [data-kit-detail] .product-action-band-shell::before {content:none}
body.product-detail-repair [data-kit-detail] .product-action-bar {
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:8px;width:100%;min-width:0;margin:0;
}
body.product-detail-repair [data-kit-detail] .product-action-button {
  min-width:0;min-height:76px;flex-direction:column;justify-content:flex-start;align-items:center;gap:7px;
  padding:12px 8px;border:1px solid #e0e3df;box-shadow:none;text-align:center;transform:none;
}
body.product-detail-repair [data-kit-detail] .product-action-button>span:not(.product-action-icon) {
  min-width:0;width:100%;flex:1;align-items:center;justify-content:center;
}
body.product-detail-repair [data-kit-detail] .product-action-icon {width:28px;height:28px;flex:0 0 28px}
body.product-detail-repair [data-kit-detail] .product-action-button b {
  min-width:0;max-width:100%;font-size:10px;line-height:1.4;letter-spacing:.025em;white-space:normal;overflow-wrap:anywhere;text-align:center;
}
body.product-detail-profile-repair_part #containing-kits-heading{scroll-margin-top:130px}
.product-kit-detail-contents:not([data-kit-print]){padding:54px 0 64px;background:#fff;border:0}
.product-kit-detail-contents>.wrap{max-width:var(--precision-max,1480px);margin-inline:auto}
.product-kit-detail-contents .product-kit-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px;padding-bottom:24px;border-bottom:2px solid #242a2b}
.product-kit-detail-contents h2{scroll-margin-top:130px;margin:0;color:#161b1c;font-size:clamp(28px,3vw,42px);font-weight:600;letter-spacing:-.04em}
.product-kit-detail-contents .kit-contents-intro{margin:10px 0 0;color:#7b8285;font-size:12px;line-height:1.7}
.product-kit-detail-contents .product-kit-summary{margin:0;gap:28px}
.product-kit-detail-contents .product-kit-summary>div{padding:0;background:none;border:0;min-width:72px}
.product-kit-detail-contents .product-kit-summary dt{font-size:9px;font-weight:500;line-height:1.6;color:#82888a}
.product-kit-detail-contents .product-kit-summary dd{font-size:28px;font-weight:650;letter-spacing:-.04em;color:#222829;margin:2px 0 0}
.product-kit-detail-contents .product-kit-table{width:100%;table-layout:fixed;border-collapse:collapse;background:#fff}
.product-kit-detail-contents .product-kit-table th{background:#f1f3f2;color:#6e787c;padding:14px 18px;font-size:10px;font-weight:650;text-transform:none;border:0}
.product-kit-detail-contents .product-kit-table td{padding:18px;border:0;border-bottom:1px solid #e5e8e6;vertical-align:middle;background:#fff}
.product-kit-detail-contents .product-kit-table tr:hover td{background:#fafbf9}
.product-kit-detail-contents .product-kit-order{width:64px;color:#9ba2a4;font-size:11px}
.product-kit-detail-contents .product-kit-image-column{width:132px}
.product-kit-detail-contents .product-kit-quantity{width:85px}
.product-kit-detail-contents .product-kit-thumbnail{width:94px;height:88px;border:1px solid #e8ebe7;border-radius:0;background:#fff}
.product-kit-detail-contents .product-kit-thumbnail img{width:100%;height:100%;object-fit:contain;padding:8px}
.product-kit-detail-contents .product-kit-product b{font-size:16px;font-weight:750;color:#202728}
.product-kit-detail-contents .product-kit-product span{font-size:13px;line-height:1.6;color:#747d80;margin-top:6px}
.product-kit-detail-contents .product-kit-empty{padding:34px;border:1px dashed #d8ddda;background:#fafbf9;color:#7a8587;font-size:14px;line-height:1.8}

/* Contents share the hero's edges. Prevent intrinsic table content from widening the page. */
.product-kit-detail-contents>.wrap {width:min(calc(100% - 64px),var(--precision-max,1480px));min-width:0}
.product-kit-detail-contents .product-kit-heading>div {min-width:0;max-width:100%}
.product-kit-detail-contents .product-kit-summary {max-width:100%;min-width:0;flex-shrink:1}
.product-kit-detail-contents .product-kit-summary dt,
.product-kit-detail-contents .product-kit-summary dd {overflow-wrap:anywhere}
.product-kit-detail-contents .kit-contents-intro,
.product-kit-detail-contents .product-kit-empty {overflow-wrap:anywhere}
/* Equal desktop column edges while keeping the image itself bounded.
 * Auto margins absorb extra height; no fixed content height or image scaling is required. */
@media(min-width:961px) {
  body.product-detail-repair [data-kit-detail] .product-detail-layout {align-items:stretch}
  body.product-detail-repair [data-kit-detail] .product-detail-visual {display:flex;align-self:stretch}
  body.product-detail-repair [data-kit-detail] .product-detail-copy {align-self:stretch}
  body.product-detail-repair [data-kit-detail] .gallery-thumbs {margin-top:auto}
  body.product-detail-repair [data-kit-detail] .product-repair-specs {margin-bottom:22px}
  body.product-detail-repair [data-kit-detail] .kit-contents-jump {margin-top:auto}
  body.product-detail-profile-repair_part [data-kit-detail] .product-action-band-shell {margin-top:auto}
  body.product-detail-profile-repair_part [data-kit-detail] .kit-contents-jump + .product-action-band-shell {margin-top:12px}
}
@media(max-width:1200px) {
  body.product-detail-repair [data-kit-detail] .product-action-bar {grid-template-columns:repeat(2,minmax(0,1fr))}
  body.product-detail-repair [data-kit-detail] .product-action-button {flex-direction:row;align-items:center;min-height:58px}
  body.product-detail-repair [data-kit-detail] .product-repair-specs>div {grid-template-columns:132px minmax(0,1fr);column-gap:12px}
}
@media(max-width:960px) {
  body.product-detail-repair [data-kit-detail] .product-detail-layout {grid-template-columns:minmax(0,1fr);gap:28px;width:min(calc(100% - 40px),720px)}
  body.product-detail-repair [data-kit-detail] .gallery-main-frame {max-height:480px}
  .product-kit-detail-contents>.wrap {width:min(calc(100% - 40px),720px)}
}
@media(max-width:760px) {
  body.product-detail-repair [data-kit-detail].product-detail-hero {padding:24px 0 32px}
  body.product-detail-repair [data-kit-detail] .product-detail-layout {width:calc(100% - 32px);gap:24px}
  body.product-detail-repair [data-kit-detail] .gallery-main-frame {max-height:400px;aspect-ratio:1 / 1}
  body.product-detail-repair [data-kit-detail] .gallery-thumbs {padding:10px;gap:8px}
  body.product-detail-repair [data-kit-detail] .gallery-thumb {flex-basis:60px;width:60px;height:60px}
  body.product-detail-repair [data-kit-detail] .breadcrumb {margin-bottom:18px}
  body.product-detail-repair [data-kit-detail] .product-detail-copy h1 {font-size:clamp(36px,10vw,52px)}
  body.product-detail-repair [data-kit-detail] .product-detail-copy h2 {font-size:22px}
  body.product-detail-repair [data-kit-detail] .product-editorial-rule {margin-top:20px}
  .product-kit-detail-contents:not([data-kit-print]) {padding:32px 0 40px}
  .product-kit-detail-contents>.wrap {width:calc(100% - 32px)}
  .product-kit-detail-contents .product-kit-heading {align-items:start;flex-direction:column;gap:18px}
  .product-kit-detail-contents .product-kit-summary {display:flex;flex-wrap:wrap;gap:18px 30px}
  .product-kit-detail-contents .product-kit-table {table-layout:auto}
  .product-kit-detail-contents .product-kit-table tr {grid-template-columns:88px minmax(0,1fr);padding:12px}
  .product-kit-detail-contents .product-kit-table td {padding:12px 0;gap:12px}
  .product-kit-detail-contents .product-kit-table td.product-kit-image-cell {padding:12px 8px 12px 0}
  .product-kit-detail-contents .product-kit-table td.product-kit-product {padding:12px 0}
  .product-kit-detail-contents .product-kit-thumbnail {width:80px;height:80px;flex:0 0 80px}
  .product-kit-detail-contents .product-kit-order,.product-kit-detail-contents .product-kit-quantity {width:auto}
  .product-kit-detail-contents .product-kit-product b {font-size:15px}
  .product-kit-detail-contents .product-kit-table td::before {font-size:10px;overflow-wrap:anywhere}
  .product-kit-detail-contents .product-kit-empty {padding:20px}
  [dir="rtl"] .product-kit-detail-contents .product-kit-table td.product-kit-image-cell {padding-inline:0 8px}
}
@media(max-width:380px) {
  body.product-detail-repair [data-kit-detail] .product-repair-specs>div {grid-template-columns:minmax(0,1fr);gap:6px}
  body.product-detail-repair [data-kit-detail] .product-action-button {flex-direction:column;min-height:76px}
}
[dir="rtl"] body.product-detail-repair [data-kit-detail] .kit-contents-jump span {transform:scaleX(-1)}
[dir="rtl"] body.product-detail-repair [data-kit-detail] .breadcrumb,
[dir="rtl"] body.product-detail-repair [data-kit-detail] .kit-detail-eyebrow,
[dir="rtl"] body.product-detail-repair [data-kit-detail] .product-detail-copy h1,
[dir="rtl"] body.product-detail-repair [data-kit-detail] .product-detail-copy h2,
[dir="rtl"] body.product-detail-repair [data-kit-detail] .product-editorial-rule b,
[dir="rtl"] body.product-detail-repair [data-kit-detail] .product-action-button b {letter-spacing:normal}
}
