/* Native product pages retain Journal/Related Options selectors and payment hooks. */
html.route-product-product:not(.popup) body.rw-modern .breadcrumbs,
html.route-product-product body.rw-modern h1#rw-product-title,
body.rw-modern #product-product.rw-product-page {
  width: min(1360px, calc(100% - 64px))!important; max-width: 1360px!important; margin-inline: auto;
}
body.rw-modern #product-product.rw-product-page {display: block;}
body.rw-modern #product-product.rw-product-page > .row {display: block; margin: 0!important; width: 100%;}
body.rw-modern #product-product.rw-product-page #content {float: none; margin: 0; padding: 0 0 32px; width: 100%!important;}
body.rw-modern #product-product.rw-product-page .product-info {grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: start; gap: 40px; padding-top: 12px!important;}
body.rw-modern .rw-product-page .product-left-wrapper,
body.rw-modern .rw-product-page .product-right-wrapper {position: static!important; top: auto!important; transform: none!important; width: 100%!important;}
body.rw-modern .rw-product-page .product-image {padding: 16px; border: 1px solid #dce3eb; border-radius: 8px;}
body.rw-modern .rw-product-page .main-image .swiper-slide img {width: 100%; height: 520px; object-fit: contain;}
body.rw-modern .rw-product-page .additional-images {max-height: 520px;}
body.rw-modern .rw-product-page .additional-image img {height: auto;}
body.rw-modern .rw-product-page .product-details {padding: 26px!important; border: 1px solid #dce3eb; border-radius: 8px; gap: 0;}
body.rw-modern #product-product.rw-product-page .product-price-group {margin: 18px 0 24px!important; padding: 18px 0!important;}
body.rw-modern #product-product.rw-product-page .product-price,
body.rw-modern #product-product.rw-product-page .product-price-new {font-size: 32px!important; line-height: 1.25;}
body.rw-modern .rw-product-page .product-options {display: grid; gap: 18px;}
body.rw-modern #product-product.rw-product-page .product-options .form-group {display: block; margin-bottom: 0!important; width: 100%;}
body.rw-modern #product-product.rw-product-page .product-options .control-label {display: block; float: none; width: auto; color: #263d54!important; font-size: 14px!important; margin: 0 0 8px!important;}
body.rw-modern #product-product.rw-product-page .product-options select.form-control {width: 100%!important; max-width: none; background: #fff!important; font-size: 16px!important;}
body.rw-modern .rw-product-page .button-group-page {position: static!important; inset: auto!important; width: 100%!important; margin-top: 24px; padding: 0!important; box-shadow: none!important; border: 0!important;}
html.route-product-product:not(.popup) {--fixed-product-buttons: 0px!important;}
body.rw-modern #product-product.rw-product-page .buttons-wrapper {display: flex!important; flex-direction: column; gap: 12px; width: 100%;}
body.rw-modern #product-product.rw-product-page .stepper-group.cart-group {display: grid; grid-template-columns: 124px minmax(0,1fr); gap: 12px; width: 100%; flex: none; align-items: start;}
body.rw-modern .rw-product-page .stepper-group > .control-label {display: none!important;}
body.rw-modern .rw-product-page .stepper {display: grid; grid-template-columns: 36px 1fr 36px; width: 124px; height: 48px; border: 1px solid #bbc8d4; border-radius: 4px; overflow: hidden;}
body.rw-modern .rw-product-page .stepper button {position: static!important; width: 36px!important; height: 46px!important; min-height: 46px; border: 0; background: #f0f4f8!important; color: #263d54!important;}
body.rw-modern .rw-product-page .stepper button::before {color: #263d54!important;}
body.rw-modern .rw-product-page .product-options .required > .control-label::after {display: inline; margin-left: 4px;}
body.rw-modern .rw-product-page .stepper input {position: static; width: 100%!important; height: 46px!important; border: 0!important; padding: 0!important; text-align: center;}
body.rw-modern #product-product.rw-product-page #button-cart {width: 100%; height: 48px; padding: 10px 14px!important; font-size: 15px!important; gap: 8px;}
body.rw-modern .rw-product-page #button-cart .btn-text {display: inline!important;}
body.rw-modern .rw-product-page #paypal_button {grid-column: 1 / -1; width: 100%!important; min-width: 0; margin: 4px 0 0!important; padding: 0!important;}
body.rw-modern .rw-product-page #paypal_button_container {width: 100%!important; max-width: 100%!important; margin-inline: auto;}
body.rw-modern .rw-product-page .buttons-wrapper > .extra-group {display: flex; width: 100%; margin: 0; padding: 0; gap: 12px;}
body.rw-modern .rw-product-page .extra-group .btn {flex: 1; min-height: 46px; justify-content: center; padding: 12px; background: #eef3f7!important; color: #263d54!important; border: 1px solid #cbd6e1!important; border-radius: 4px;}
body.rw-modern .rw-product-page .extra-group .btn .btn-text {display: inline!important;}
body.rw-modern .rw-product-page .wishlist-compare {display: flex; gap: 10px; width: 100%; margin: 0; padding: 0;}
body.rw-modern .rw-product-page .rw-product-tabs {margin: 32px 0; padding: 24px; border: 1px solid #dce3eb; border-radius: 8px;}
body.rw-modern .rw-product-page .rw-product-tabs .tab-container {margin: 0;}
body.rw-modern .rw-product-page .rw-product-tabs .block-body,
body.rw-modern .rw-product-page .rw-product-tabs .block-wrapper,
body.rw-modern .rw-product-page .rw-product-tabs .expand-content {max-height: none!important; height: auto!important; overflow: visible!important;}
body.rw-modern .rw-product-page .rw-product-tabs .block-expand-overlay {display: none!important;}
body.rw-modern .rw-product-page .rw-product-tabs .block-content {font-size: 15px; line-height: 1.8;}
body.rw-modern .rw-product-page .rw-product-tabs img {max-width: 100%!important; height: auto!important;}
body.rw-modern .rw-product-page .rw-product-tabs table {display: block; max-width: 100%; overflow-x: auto;}
body.rw-modern .rw-product-page .rc-legacy {width: 100%!important; max-width: none; margin: 32px 0; padding: 24px; border: 1px solid #dce3eb; border-radius: 8px; background: #f6f8fa;}
body.rw-modern .rw-product-page .rw-product-custom {margin: 24px 0; padding: 24px; border-top: 1px solid #dce3eb;}
body.rw-modern .rw-product-page .rw-product-custom .module-title {font-size: 18px; text-transform: none;}
body.rw-modern .rw-product-page .rw-product-recent {clear: both; margin: 24px 0 0;}
body.rw-modern .rw-product-page .rw-product-recent #column-right {width: 100%!important; max-width: none; margin: 0; padding: 0; float: none; border: 0!important; background: transparent!important; box-shadow: none!important;}
body.rw-modern .rw-product-page .rw-product-recent .module {width: 100%; margin: 0; padding: 0; background: #fff;}
body.rw-modern .rw-product-page .rw-product-recent .module-item {width: 100%!important;}
body.rw-modern .rw-product-page .rw-static-products > .swiper-wrapper {display: grid!important; grid-template-columns: repeat(auto-fill,minmax(170px,1fr)); gap: 18px; width: 100%;}
body.rw-modern .rw-product-page .rw-static-products .product-layout {width: 100%!important; padding: 0!important; max-width: 230px;}
body.rw-modern .rw-product-page .rw-static-products .swiper-buttons,
body.rw-modern .rw-product-page .rw-static-products .swiper-pagination {display: none;}
body.rw-modern .rw-product-page .rw-product-recent .product-thumb .image {max-width: 190px; margin: auto;}
html.route-product-product body.rw-modern .module-products .product-thumb .name a {white-space: normal; text-overflow: clip; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; min-height: 42px;}
html.route-product-product body.rw-modern .module-products .product-thumb .caption {padding: 12px;}
@media(max-width:900px) {
  body.rw-modern #product-product.rw-product-page .product-info {gap: 24px;}
  body.rw-modern .rw-product-page .product-details {padding: 20px!important;}
  body.rw-modern .rw-product-page .main-image .swiper-slide img {height: 420px;}
  body.rw-modern .rw-product-page .additional-images {max-height: 420px;}
}
@media(max-width:760px) {
  html.route-product-product body.rw-modern h1#rw-product-title {font-size: 27px!important; line-height: 1.3; overflow-wrap: anywhere;}
  html.route-product-product:not(.popup) body.rw-modern .breadcrumbs,
  html.route-product-product body.rw-modern h1#rw-product-title,
  body.rw-modern #product-product.rw-product-page {width: calc(100% - 32px)!important;}
  body.rw-modern #product-product.rw-product-page .product-info {grid-template-columns: minmax(0,1fr); gap: 20px;}
  body.rw-modern .rw-product-page .main-image .swiper-slide img {height: 360px;}
  body.rw-modern .rw-product-page .additional-images {max-height: 360px;}
  body.rw-modern .rw-product-page .product-image {padding: 10px;}
  body.rw-modern .rw-product-page .product-details {padding: 18px!important;}
  body.rw-modern .rw-product-page .rw-product-tabs,
  body.rw-modern .rw-product-page .rc-legacy,
  body.rw-modern .rw-product-page .rw-product-custom {padding: 18px; margin: 22px 0;}
  body.rw-modern .rw-product-page .rw-static-products > .swiper-wrapper {grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px;}
  body.rw-modern .rw-product-page .rw-static-products .product-layout {max-width: none;}
}

/* Recommendation carousels retain arrows and swipe without pagination dots. */
html.route-product-product body.rw-modern .module-products-271 .swiper-pagination,
html.route-product-product body.rw-modern .module-products-272 .swiper-pagination {display: none!important;}

/* Recently viewed is a static card grid, with natural title wrapping. */
body.rw-modern .rw-product-page .rw-product-recent .rw-static-products > .swiper-wrapper {grid-template-columns: repeat(auto-fill,minmax(210px,1fr));}
body.rw-modern .rw-product-page .rw-product-recent .swiper-buttons,
body.rw-modern .rw-product-page .rw-product-recent .swiper-pagination {display: none!important;}
body.rw-modern .rw-product-page .rw-product-recent .rw-recent-card {display: flex; flex-direction: column; min-width: 0; width: 100%;}
body.rw-modern .rw-product-page .rw-product-recent .rw-recent-card h3 a {overflow-wrap: break-word; word-break: normal;}
body.rw-modern .rw-product-page .rw-product-recent .rw-recent-price {margin-top: 0;}
@media(max-width:760px) {
  body.rw-modern .rw-product-page .rw-product-recent .rw-static-products > .swiper-wrapper {grid-template-columns: repeat(2,minmax(0,1fr));}
}

/* A long history title must not stretch every card and leave a large price gap. */
body.rw-modern .rw-product-page .rw-product-recent .rw-recent-card h3 {height: 42px; min-height: 42px; max-height: 42px; line-height: 21px; flex: 0 0 42px;}
body.rw-modern .rw-product-page .rw-product-recent .rw-recent-card h3 a {display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; max-height: 42px;}
