/* Scoped to detail pages: catalog cards, headers and WooCommerce rules stay intact. */
.site-header__toggle > span:not(.ci-icon) {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.product-detail-card.product-detail-card--visitor {
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  grid-template-areas: "media heading" "media content";
  grid-template-rows: auto 1fr;
  align-items: start;
  gap: 1.1rem 1.6rem;
  padding: 1.4rem;
}
.product-detail-card--visitor .product-detail-card__heading { grid-area: heading; min-width: 0; }
.product-detail-card--visitor .product-detail-card__media { grid-area: media; }
.product-detail-card--visitor .product-detail-card__content {
  grid-area: content;
  gap: 1rem;
  container-type: inline-size;
  container-name: product-info;
}
.product-detail-card--visitor .product-detail-card__title {
  max-width: none;
  margin: .7rem 0 .6rem;
  font-size: clamp(1.55rem, 2.1vw, 2.3rem);
  line-height: 1.17;
  text-wrap: pretty;
}
.product-detail-card--visitor .product-detail-card__lead {
  margin: 0;
  color: var(--ci-graphite, #627085);
  font-size: .94rem;
  line-height: 1.65;
}
.product-detail-card--visitor .product-detail-gallery {
  padding: .8rem;
  border: 1px solid #e5ebf3;
  border-radius: 18px;
  background: linear-gradient(150deg, #f3f6fa, #fcfdff);
  gap: .75rem;
}
.product-detail-stock { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem; }
.product-detail-stock__label { color: #627085; font-size: .65rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.product-detail-stock .catalog-card__chip--stock { margin: 0; min-height: 34px; box-shadow: none; font-size: .77rem; }
.product-detail-card--visitor .product-detail-gallery__main { border-radius: 12px; background: #fff; }
.product-detail-card--visitor .product-detail-gallery__main img { padding: .65rem; }
.product-detail-card--visitor .product-detail-gallery__thumbs { display: flex; flex-wrap: wrap; gap: .5rem; }
.product-detail-card--visitor .product-detail-gallery__thumb { width: 64px; flex: 0 0 64px; border-radius: 10px; }
.product-detail-card--visitor .product-detail-gallery__thumb:focus-visible { outline: 3px solid var(--ci-orange, #f28a1a); outline-offset: 2px; }

.product-detail-card--visitor .product-commercial-panel { display: block; margin: 0; order: 0; }
.product-detail-card--visitor .creativa-price--detail {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  padding: 1.05rem 1.15rem;
  border: 1px solid #dce5f0;
  border-top: 3px solid var(--ci-orange, #f28a1a);
  border-radius: 15px;
  background: linear-gradient(125deg, #fffaf3, #fff 70%);
  min-height: 0;
}
.creativa-price--detail .creativa-price__base { min-width: 0; container-type: inline-size; }
.creativa-price--detail .creativa-price__heading { display: flex; flex-wrap: wrap; gap: .45rem .7rem; align-items: center; }
.creativa-price--detail .creativa-price__fixed {
  color: #344d71;
  background: #eaf0f7;
  font-size: .64rem;
  letter-spacing: 0;
  text-transform: none;
  font-weight: 600;
  padding: .22rem .5rem;
  border-radius: 5px;
}
.product-detail-card--visitor .creativa-price--detail .creativa-price__main {
  margin: .55rem 0 0;
  font-size: clamp(1.45rem, 16cqi, 2.35rem);
  line-height: 1.2;
}
.creativa-price--detail .creativa-price__main .woocommerce-Price-amount,
.creativa-price--detail .creativa-price__main .woocommerce-Price-currencySymbol {
  font: inherit;
  color: inherit;
  letter-spacing: inherit;
  text-transform: none;
}
.creativa-price--detail .creativa-price__conversion { min-width: 0; }
.creativa-price--detail .creativa-price__equivalent { display: grid; gap: .4rem; }
.creativa-price--detail .creativa-price__equivalent > span { font-size: .76rem; }
.creativa-price--detail .creativa-price__equivalent b { font-size: clamp(1.15rem, 2vw, 1.5rem); line-height: 1.25; }
.creativa-price--detail .creativa-price__rate { margin-top: .5rem; font-size: .72rem; }
.creativa-price--detail .creativa-price__pending { margin: 0; }
.creativa-price--detail .creativa-price__explanation {
  grid-column: 1 / -1;
  color: #52617a;
  border-top: 1px solid #e5eaf1;
  margin: 0;
  padding-top: .7rem;
  font-size: .77rem;
  line-height: 1.6;
}
.product-detail-card--visitor .product-detail-card__actions { order: 1; display: flex; flex-wrap: wrap; gap: .7rem; margin: 0; }
.product-detail-card--visitor .product-detail-card__actions .button { flex: 1 1 180px; min-width: 0; min-height: 48px; padding: .8rem 1rem; justify-content: center; }
.product-detail-card--visitor .product-detail-card__quickfacts,
.product-detail-card--visitor .product-detail-card__meta {
  order: 2;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
  gap: .6rem;
  margin: 0;
}
.product-detail-card--visitor .product-detail-card__quickfact,
.product-detail-card--visitor .product-detail-card__meta-box {
  border: 0;
  border-left: 2px solid #e4ebf4;
  border-radius: 0;
  background: none;
  padding: .2rem .7rem;
  min-width: 0;
}
.product-detail-card--visitor .product-detail-card__quickfact strong,
.product-detail-card--visitor .product-detail-card__meta-box strong { font-size: .66rem; color: #627085; letter-spacing: .06em; }
.product-detail-card--visitor .product-detail-card__quickfact span,
.product-detail-card--visitor .product-detail-card__meta-box span { font-size: .88rem; line-height: 1.5; color: #153961; overflow-wrap: anywhere; }
.product-detail-card--visitor .product-detail-card__points { order: 2; }
.product-detail-jumps { order: 3; display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; padding-top: .4rem; }
.product-detail-jumps a { color: #344d71; font-size: .8rem; line-height: 1.5; text-decoration: underline; text-underline-offset: 4px; padding: .45rem 0; }
.product-detail-jumps a:focus-visible { outline: 2px solid var(--ci-orange, #f28a1a); outline-offset: 4px; border-radius: 2px; }
.product-detail-section--visitor { scroll-margin-top: 110px; }
.product-detail-section--visitor .product-detail-section__intro { max-width: 80ch; line-height: 1.85; }
.product-detail-section--visitor .product-detail-specsheet h3 { margin: .5rem 0 1rem; font-size: 1rem; }

@media (max-width: 980px) {
  .product-detail-card.product-detail-card--visitor {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "heading" "media" "content";
    grid-template-rows: auto;
    padding: 1rem;
    gap: 1.1rem;
  }
  .product-detail-card--visitor .product-detail-gallery__main { max-height: 420px; }
}
@media (max-width: 640px) {
  .product-detail-card.product-detail-card--visitor { padding: .9rem; }
  .product-detail-card--visitor .product-detail-card__title { font-size: 1.55rem; }
  .product-detail-card--visitor .product-detail-card__lead {
    font-size: .87rem;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
  }
  .product-detail-card--visitor .product-detail-gallery { padding: .6rem; }
  .product-detail-card--visitor .product-detail-gallery__main { aspect-ratio: 1 / .8; }
  .product-detail-card--visitor .product-detail-gallery__thumbs { flex-wrap: nowrap; overflow-x: auto; padding: 2px; scrollbar-width: thin; }
  .product-detail-card--visitor .product-detail-card__actions { display: grid; grid-template-columns: 1fr; }
  .product-detail-card--visitor .product-detail-card__actions .button { width: 100%; }
  .product-detail-card--visitor .creativa-price--detail { padding: 1rem; }
}
