.product-detail { padding-top: 18px; padding-bottom: 104px; }
.product-detail .breadcrumb { display: flex; margin: 0 0 42px; padding: 0; gap: 9px; border: 0; background: transparent; color: #8a8a8a; font-size: 11px; list-style: none; }
.product-detail .breadcrumb > li { display: flex; align-items: center; min-width: 0; }
.product-detail .breadcrumb > li + li::before { content: "/"; padding: 0 9px 0 0; color: #bbb; }
.product-detail .breadcrumb li:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.product-detail .breadcrumb a { color: #777; }
.product-detail .breadcrumb .fa-home::before { content: "Главная"; font-family: Inter, sans-serif; font-size: 11px; }

.product-detail__hero { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(380px, .85fr); align-items: start; gap: clamp(54px, 7vw, 112px); }
.product-detail__gallery, .product-detail__info { min-width: 0; }
.product-gallery { position: relative; }
.product-gallery > .row { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 20px; margin: 0; }
.product-gallery > .row::before, .product-gallery > .row::after { display: none; }
.product-gallery .col-lg-13, .product-gallery .col-lg-5 { float: none !important; width: auto; padding: 0; }
.product-gallery .col-lg-13 { grid-column: 2; grid-row: 1; display: flex !important; min-height: 620px; align-items: center; justify-content: center; background: #f4f4f2; }
.product-gallery .col-lg-13 > img { width: 100%; height: auto; max-height: 680px; padding: 8%; object-fit: contain; }
.product-gallery .col-lg-5 { grid-column: 1; grid-row: 1; display: block !important; }
.product-gallery--single > .row { grid-template-columns: minmax(0, 1fr); }
.product-gallery--single .col-lg-13 { grid-column: 1; }
.product-gallery .image-additional { margin: 0; padding: 0; list-style: none; }
.product-gallery #productGallery { display: grid; gap: 12px; }
.product-gallery #productGallery li { width: 92px; height: 108px; border: 1px solid transparent; background: #f4f4f2; }
.product-gallery #productGallery li:hover { border-color: #111; }
.product-gallery #productGallery a { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; }
.product-gallery #productGallery img { width: 100%; height: 100%; padding: 10px; object-fit: contain; }
.product-gallery-mobile { display: none; }

#product-product .product-detail__info { position: sticky; top: 24px; margin-top: 0; padding-top: 10px; }
#product-product .product-card-shell { padding: 0; border: 0; background: transparent; box-shadow: none; }
.product-brand { display: inline-block; margin-bottom: 15px; color: #555; font-size: 11px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.product-detail #product-product .product-title,
#product-product .product-title { margin: 0 0 26px; color: #111; font-size: clamp(32px, 3.1vw, 50px); line-height: 1.02; font-weight: 500; letter-spacing: -.045em; text-transform: none; }
#product-product .general_info .price-section { display: flex; margin: 0 0 12px; padding: 0; align-items: baseline; gap: 14px; border: 0; background: transparent; }
#product-product .general_info .price-section .price-new { color: #111; font-size: 26px; line-height: 1; font-weight: 600; }
#product-product .general_info .price-section .price-old { margin: 0; padding: 0; background: transparent; color: #888; font-size: 15px; text-decoration: line-through; }
.product-stock { display: flex; margin: 0 0 26px; align-items: center; gap: 8px; color: #39704b; font-size: 11px; }
.product-stock::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.product-stock.is-unavailable { color: #8a5656; }
#product-product .product-annotation { max-width: 620px; margin: 0 0 25px; color: #555; font-size: 14px; line-height: 1.65; }
.product-annotation > :last-child { margin-bottom: 0; }
#product-product .product-rating-status { margin: 0 0 14px; padding: 0; background: transparent; color: #777; font-size: 11px; }
.product-sku { margin: 0 0 24px; color: #888; font-size: 10px; text-transform: uppercase; letter-spacing: .06em; }

#product-product .product-purchase-card { margin-top: 28px; padding: 26px 0 0; border: 0; border-top: 1px solid #dedede; background: transparent; }
.product-options { margin-bottom: 20px; }
.product-options .option-select { margin: 0; }
#product-product .product-options .control-label { display: block; margin: 0 0 9px; color: #555; font-size: 10px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
#product-product .product-options select.form-control { width: 100%; height: 48px; padding: 0 40px 0 14px; border: 1px solid #bdbdbd; border-radius: 0; background-color: #fff; color: #111; box-shadow: none; }
.product-option--single { margin: 0; }
.product-purchase-actions { display: grid; grid-template-columns: 126px minmax(0, 1fr); gap: 10px; }
#product-product .product-purchase-actions .amount-box { display: grid; grid-template-columns: 40px 46px 40px; width: 126px; height: 52px; margin: 0; border: 1px solid #111; }
.product-purchase-actions .amount-box .tx-hint { display: none; }
#product-product .product-purchase-actions .amount-box span { display: flex; width: 40px; height: 50px; margin: 0; align-items: center; justify-content: center; background: transparent; color: #111; font-size: 18px; cursor: pointer; }
#product-product .product-purchase-actions .amount-box input { width: 46px !important; height: 50px; padding: 0; border: 0; border-radius: 0; background: #fff; text-align: center; box-shadow: none; }
#product-product .product-buy-btn { width: 100%; min-height: 52px; margin: 0; border: 1px solid #111; border-radius: 0; background: #111; color: #fff; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
#product-product .product-buy-btn:hover, #product-product .product-buy-btn:focus { background: #fff; color: #111; }
.product-buy-btn:disabled { border-color: #d5d5d5; background: #eee; color: #777; }
#product-product .product-share { margin: 22px 0 0; padding: 0; border: 0; opacity: .75; }

.product-details { margin-top: clamp(70px, 8vw, 118px); border-top: 1px solid #dedede; }
.product-details .nav-tabs { display: flex; margin: 0; padding: 0; gap: 34px; border: 0; border-bottom: 1px solid #dedede; }
.product-details .nav-tabs > li { float: none; margin: 0; }
.product-details .nav-tabs > li > a { margin: 0; padding: 22px 0 18px; border: 0 !important; border-radius: 0; background: transparent !important; color: #777; font-size: 11px; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; }
.product-details .nav-tabs > li.active > a { color: #111; box-shadow: inset 0 -2px 0 #111; }
.product-details .tab-content { max-width: 920px; padding: 38px 0 0; color: #444; font-size: 14px; line-height: 1.75; }
.product-details .tab-content img { max-width: 100%; height: auto; }
.product-details .table { width: 100%; border: 0; }
.product-details .table td { padding: 14px 0; border: 0; border-bottom: 1px solid #dedede; }
.product-details .table td:first-child { width: 42%; color: #777; }
.product-details .form-control { border: 1px solid #c9c9c9; border-radius: 0; box-shadow: none; }
.product-details textarea.form-control { min-height: 130px; resize: vertical; }

.related-block { margin-top: clamp(80px, 9vw, 130px); }
.related-block .box-heading h3 { margin: 0; font-size: clamp(30px, 3vw, 44px); line-height: 1; font-weight: 500; letter-spacing: -.035em; text-transform: none; }
.related-block .product-layout { height: auto; }

@media (max-width: 991px) {
  .product-detail__hero { grid-template-columns: 1fr; gap: 42px; }
  #product-product .product-detail__info { position: static; margin-top: 0; padding-top: 0; }
  .product-gallery > .row { display: block; }
  .product-gallery .col-lg-13, .product-gallery .col-lg-5 { display: none !important; }
  .product-gallery-mobile { display: block; }
  .product-gallery-mobile #productFullGallery { display: flex; margin: 0 -8px; padding: 0 8px 10px; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; list-style: none; }
  .product-gallery-mobile #productFullGallery li { flex: 0 0 min(78vw, 590px); background: #f4f4f2; scroll-snap-align: start; }
  .product-gallery-mobile #productFullGallery a { display: flex; aspect-ratio: 1 / 1.08; align-items: center; justify-content: center; }
  .product-gallery-mobile #productFullGallery img { width: 100%; height: 100%; padding: 8%; object-fit: contain; }
}

@media (max-width: 767px) {
  .product-detail { padding-top: 12px; padding-bottom: 72px; }
  .product-detail .breadcrumb { margin-bottom: 25px; overflow: hidden; white-space: nowrap; }
  .product-detail__hero { gap: 32px; }
  .product-gallery-mobile { margin-left: -16px; margin-right: -16px; }
  #product-product .product-title { font-size: clamp(30px, 9vw, 42px); }
  #product-product .general_info .price-section .price-new { font-size: 24px; }
  .product-purchase-actions { grid-template-columns: 116px minmax(0, 1fr); }
  #product-product .product-purchase-actions .amount-box { grid-template-columns: 36px 44px 36px; width: 116px; }
  #product-product .product-purchase-actions .amount-box span { width: 36px; }
  #product-product .product-purchase-actions .amount-box input { width: 44px !important; }
  .product-details { margin-top: 72px; }
  .product-details .nav-tabs { gap: 22px; overflow-x: auto; }
  .product-details .nav-tabs > li { flex: 0 0 auto; }
  .product-details .tab-content { padding-top: 26px; }
}
