.tr-product-detail-page .tr-product-detail-main {
  padding: var(--pd-padding) 28px;
  background: var(--pd-background);
  min-height: 0;
}
.tr-product-detail-page .tr-product-detail-wrap {
  width: 100%; max-width: var(--pd-maxWidth);
  grid-template-columns: minmax(0, var(--pd-imageShare)) minmax(0, 1fr);
  gap: 36px var(--pd-gap);
}
.tr-product-detail-gallery { order: 1; }
.tr-product-detail-page .tr-product-detail-content { order: 2; min-width: 0; gap: 20px; padding-top: 0; }
.tr-product-detail-extra { order: 3; }
.tr-product-detail-page[data-pd-imageside="right"] .tr-product-detail-wrap { grid-template-columns: minmax(0, 1fr) minmax(0, var(--pd-imageShare)); }
[data-pd-imageside="right"] .tr-product-detail-gallery { order: 2; }
[data-pd-imageside="right"] .tr-product-detail-content { order: 1; }
.tr-product-detail-page .tr-product-detail-media {
  position: relative; aspect-ratio: 1; min-height: 0; min-width: 0; border: 1px solid #e5e7eb;
  border-radius: var(--pd-imageRadius); box-shadow: 0 6px 22px rgb(16 24 40 / 14%);
}
.tr-product-detail-page[data-pd-imageshadow="none"] .tr-product-detail-media { box-shadow: none; }
.tr-product-detail-page[data-pd-imageshadow="strong"] .tr-product-detail-media { box-shadow: 0 8px 28px rgb(16 24 40 / 28%); }
.tr-product-detail-page .tr-product-detail-media a,
.tr-product-detail-page .tr-product-detail-media span { padding: var(--pd-imagePadding); min-height: 0; }
.tr-product-detail-page .tr-product-detail-media img { height: 100%; width: 100%; max-height: none; min-height: 0; object-fit: contain; }
.tr-product-detail-page .tr-product-kicker { margin: 0; font-size: 11px; font-weight: 700; color: var(--pd-categoryColor); letter-spacing: 0; }
.tr-product-detail-page nav.tr-product-kicker { display: flex; flex-wrap: wrap; gap: 8px 0; }
.tr-product-kicker a { color: inherit; text-decoration: none; padding: 2px 10px; border-left: 1px solid #d7dde5; overflow-wrap: anywhere; }
.tr-product-kicker a:first-child { padding-left: 0; border-left: 0; }
.tr-product-kicker a:hover { text-decoration: underline; text-underline-offset: 3px; }
.pd-primary-use dd { white-space: pre-line; }
.pd-documentation { border-top: 1px solid #e1e5eb; padding-top: 18px; min-width: 0; }
.pd-documentation h2 { color: var(--pd-titleColor); font-size: 14px; font-weight: 700; line-height: 1.4; text-transform: uppercase; margin: 0 0 12px; }
.pd-document { display: flex; align-items: center; gap: 14px; padding: 16px; border-radius: 6px; background: #f4f5f8; color: var(--pd-titleColor); text-decoration: none; }
.pd-document > .pd-icon { color: var(--pd-accent); width: 28px; height: 32px; flex-basis: 28px; }
.pd-document-copy { display: grid; gap: 4px; flex: 1; min-width: 0; overflow-wrap: anywhere; }
.pd-document-copy strong { font-size: 14px; line-height: 1.4; }
.pd-document-copy small { font-size: 11px; line-height: 1.5; color: var(--pd-bodyColor); }
.pd-document-download { display: inline-flex; align-items: center; gap: 8px; font-size: 11px; color: var(--pd-accent); text-decoration: underline; }
.pd-icon-download { --pd-icon: url('/builder/vendor/lucide/download.svg'); }
.pd-icon-expand { --pd-icon: url('/builder/vendor/lucide/maximize-2.svg'); }
.pd-icon-close { --pd-icon: url('/builder/vendor/lucide/x.svg'); }
.pd-catalog-dialog { width: min(1160px, calc(100% - 32px)); height: min(920px, calc(100dvh - 32px)); max-width: none; max-height: calc(100dvh - 32px); padding: 0; border: 1px solid #d7dde5; border-radius: 8px; color: #202733; background: #fff; box-shadow: 0 24px 80px rgb(0 0 0 / 25%); overflow: hidden; }
.pd-catalog-dialog[open] { display: flex; flex-direction: column; }
.pd-catalog-dialog::backdrop { background: rgb(0 0 0 / 65%); }
.pd-catalog-header { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-bottom: 1px solid #d7dde5; flex: 0 0 auto; }
.pd-catalog-header h2 { flex: 1; min-width: 0; margin: 0; font-size: 16px; line-height: 1.4; overflow-wrap: anywhere; max-height: 4.2em; overflow-y: auto; }
.pd-catalog-header > a { font-size: 13px; color: #2157ad; white-space: nowrap; }
.pd-catalog-tool { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border: 1px solid #d7dde5; border-radius: 6px; background: #fff; color: #202733; cursor: pointer; padding: 0; }
.pd-catalog-tool:hover { background: #edf2f8; }
.pd-catalog-dialog :is(a, button):focus-visible { outline: 3px solid #2157ad; outline-offset: 2px; }
.pd-catalog-viewer { flex: 1; min-height: 0; overflow: hidden; background: #2b2b2b; }
.pd-catalog-viewer > .pb-pdf-book { width: 100%; height: 100%; min-height: 0; border-radius: 0; }
@media (max-width: 600px) {
  .pd-catalog-dialog { width: 100%; height: 100dvh; max-height: 100dvh; border: 0; border-radius: 0; }
  .pd-catalog-header { padding: 10px; gap: 8px; }
  .pd-catalog-header h2 { font-size: 14px; }
}
.pd-document:hover { background: #eaf0f8; }
@media (max-width: 420px) {
  .pd-document { flex-wrap: wrap; gap: 12px; }
  .pd-document-copy { flex-basis: calc(100% - 44px); }
  .pd-document-download { margin-left: 40px; }
}
.tr-product-detail-page .tr-product-detail-content h1 {
  font-size: var(--pd-titleSize); font-weight: var(--pd-titleWeight); color: var(--pd-titleColor);
  line-height: 1.17; text-transform: var(--pd-titleCase); overflow-wrap: anywhere;
}
.tr-product-detail-content h1::after { content: ""; display: block; width: 42px; height: 3px; margin-top: 18px; background: var(--pd-accent); border-radius: 2px; }
.tr-product-detail-page .tr-product-detail-summary { max-width: none; font-size: var(--pd-bodySize); line-height: 1.65; color: var(--pd-bodyColor); font-weight: 400; overflow-wrap: anywhere; white-space: pre-line; }
.tr-product-detail-page .tr-product-detail-actions { margin: 0; gap: 12px; }
.tr-product-detail-page .tr-product-detail-actions a {
  min-height: 46px; padding: 12px 20px; gap: 10px; border-radius: var(--pd-buttonRadius);
  font-size: 11px; line-height: 1.4; font-weight: 700; max-width: 100%; text-align: center; overflow-wrap: anywhere;
}
.tr-product-detail-page .tr-product-detail-actions span { font: inherit; color: inherit; margin: 0; }
.tr-product-detail-page .tr-product-catalog-button { background: var(--pd-accent); border: 1px solid var(--pd-accent); color: #fff !important; }
.tr-product-detail-page .tr-product-whatsapp-button { background: transparent; border: 1px solid var(--pd-accent); color: var(--pd-accent) !important; }
.pd-icon { display: inline-block; width: 21px; height: 21px; flex: 0 0 21px; background: currentColor; mask: var(--pd-icon) center / contain no-repeat; -webkit-mask: var(--pd-icon) center / contain no-repeat; }
.pd-icon-file { --pd-icon: url('/builder/vendor/lucide/file-text.svg'); }
.pd-icon-chat { --pd-icon: url('/builder/vendor/lucide/message-circle.svg'); color: #249a4a; }
.pd-gallery-arrow { position: absolute; top: calc(50% - 20px); display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid #d5dce7; border-radius: 50%; background: rgb(255 255 255 / 94%); color: #25334a; cursor: pointer; padding: 0; box-shadow: 0 2px 8px rgb(0 0 0 / 8%); }
.pd-gallery-arrow:hover { background: #edf3fc; color: var(--pd-accent); }
.pd-gallery-prev { left: 8px; --pd-icon: url('/builder/vendor/lucide/chevron-left.svg'); }
.pd-gallery-next { right: 8px; --pd-icon: url('/builder/vendor/lucide/chevron-right.svg'); }
.pd-gallery-count { position: absolute; bottom: 10px; left: 50%; transform: translateX(-50%); padding: 4px 10px; background: rgb(255 255 255 / 94%); border: 1px solid #e1e5eb; border-radius: 4px; font: 12px Arial, sans-serif; color: #25334a; pointer-events: none; }
.tr-product-detail-page .tr-product-info-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); margin: 0; padding: 22px 0; border-block: 1px solid #e1e5eb; gap: 18px 0; }
.tr-product-detail-page .tr-product-info-grid div { padding: 0 16px; background: none; box-shadow: none; border: 0; border-left: 1px solid #e1e5eb; border-radius: 0; min-width: 0; }
.tr-product-detail-page .tr-product-info-grid div:first-child { border: 0; padding-left: 0; }
.tr-product-detail-page .tr-product-info-grid dt { font-size: 10px; font-weight: 700; color: var(--pd-titleColor); }
.tr-product-detail-page .tr-product-info-grid dd { margin: 6px 0 0; font-size: 12px; font-weight: 400; line-height: 1.5; color: var(--pd-bodyColor); overflow-wrap: anywhere; }
.tr-product-detail-page .tr-product-measures-table,
.tr-product-detail-page .tr-product-measures-text { border: 0; border-radius: 0; box-shadow: none; background: none; min-width: 0; padding: 0; }
.tr-product-detail-page .tr-product-measures-table h2,
.tr-product-detail-page .tr-product-measures-text h2 { margin: 0 0 12px; padding: 0; font-size: 14px; line-height: 1.4; color: var(--pd-titleColor); background: none; font-weight: 700; }
.pd-table-scroll { overflow-x: auto; width: 100%; overscroll-behavior-x: contain; }
.tr-product-detail-page .tr-product-measures-table table { width: 100%; min-width: 0; border-collapse: collapse; }
.tr-product-detail-page .tr-product-measures-table td,
.tr-product-detail-page .tr-product-measures-table th { font-size: 12px; line-height: 1.45; padding: 10px 12px; font-weight: 500; white-space: nowrap; width: auto; }
.tr-product-detail-page .tr-product-measures-table:not(.tr-product-measures-table-custom) td { border: 1px solid #e1e5eb; }
.tr-product-detail-page .tr-product-measures-table-simple th { background: #edf0f4; color: #25334a; }
.tr-product-detail-page .tr-product-measures-text p { font-size: var(--pd-bodySize); font-weight: 400; color: var(--pd-bodyColor); white-space: pre-line; overflow-wrap: anywhere; }
.tr-product-detail-page .tr-product-tech-table { min-width: 0; box-shadow: none; }
.tr-product-detail-page .tr-product-tech-table td { overflow-wrap: anywhere; }
.tr-product-detail-page .tr-product-gallery-strip { display: flex; gap: 10px; overflow-x: auto; padding: 4px; }
.tr-product-detail-page .tr-product-gallery-strip a { width: 76px; min-height: 76px; flex: 0 0 76px; border-radius: 6px; box-shadow: none; border-color: #e1e5eb; }
.tr-product-detail-page .tr-product-gallery-strip a.is-active { border-color: var(--pd-accent); }
.tr-product-detail-page .tr-product-gallery-strip img { height: 72px; padding: 4px; }
.tr-product-detail-page .tr-product-tabs { border-radius: 6px; box-shadow: none; }
[data-product-template-preview="1"] .tr-shop-header,
[data-product-template-preview="1"] .pb-floating-whatsapp { display: none; }
[data-pd-showbreadcrumbs="0"] .tr-product-breadcrumbs,
[data-pd-showsummary="0"] .tr-product-detail-summary,
[data-pd-showcatalog="0"] .tr-product-catalog-button,
[data-pd-showwhatsapp="0"] .tr-product-detail-actions .tr-product-whatsapp-button,
[data-pd-showmetadata="0"] .tr-product-info-grid,
[data-pd-showmeasures="0"] .tr-product-measures-table,
[data-pd-showmeasures="0"] .tr-product-measures-text,
[data-pd-showtechnical="0"] .tr-product-tech-table,
[data-pd-showtabs="0"] .tr-product-tabs,
[data-pd-showrelated="0"] .tr-related-products,
[data-pd-showthumbnails="0"] .tr-product-gallery-strip,
[data-pd-showcatalog="0"][data-pd-showwhatsapp="0"] .tr-product-detail-actions { display: none; }
.tr-product-detail-page :is(a, button, .pd-table-scroll):focus-visible { outline: 3px solid var(--pd-accent); outline-offset: 3px; }
@media (max-width: 760px) {
  .tr-product-detail-page .tr-product-detail-main { padding: 24px 18px 40px; }
  .tr-product-detail-page .tr-product-detail-wrap,
  .tr-product-detail-page[data-pd-imageside="right"] .tr-product-detail-wrap { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .tr-product-detail-page .tr-product-detail-gallery { order: 1; width: 100%; max-width: 520px; justify-self: center; }
  .tr-product-detail-page .tr-product-detail-content { order: 2; }
  .tr-product-detail-page .tr-product-detail-content h1 { font-size: var(--pd-mobileTitleSize); }
  .tr-product-detail-page .tr-product-detail-actions { display: flex; flex-direction: row; align-items: stretch; }
  .tr-product-detail-page .tr-product-detail-actions a { flex: 1 1 180px; }
  .tr-product-detail-page .tr-product-detail-actions span { width: auto; }
  .tr-product-detail-page .tr-product-info-grid { grid-template-columns: repeat(auto-fit, minmax(105px, 1fr)); }
  .tr-product-detail-page .tr-product-info-grid div { padding-inline: 10px; }
}
