/* Ryan final modal product photo fix - 20260630
   Goal: modal image fills the top area, removes the visible white frame/orange label crop, and leaves only warranty text. */

body #productModal.open #modalMedia.modal-media,
body #productModal.open #modalMedia.modal-media.modal-media-white-clean,
body #productModal.open .modal-media.ryan-modal-media-cover {
  background: #050505 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  display: block !important;
  position: relative !important;
  border-right: 1px solid rgba(255, 91, 0, .24) !important;
  box-sizing: border-box !important;
}

body #productModal.open #modalMedia.modal-media > img,
body #productModal.open #modalMedia.modal-media img.rs-product-photo,
body #productModal.open #modalMedia.modal-media img.modal-product-image-clean,
body #productModal.open #modalMedia.modal-media img.ryan-modal-img-cover {
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center 36% !important;
  background: #050505 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: scale(1.22) !important;
  transform-origin: center center !important;
  clip-path: inset(7% 6% 15% 6%) !important;
}

/* Neutralize older "white modal" rules without touching zoom or gallery controls. */
body #productModal.open #modalMedia.modal-media > *:not(.produto-modal-gallery-ui):not(.modal-clean-zoom-lens):not(.modal-clean-zoom-box):not(.zoom-modal-clean-lens):not(.zoom-modal-clean-box):not(.pz-modal-lens):not(.pz-modal-box):not(.ml-modal-zoom-lens):not(.ml-modal-zoom-box) {
  box-sizing: border-box !important;
}

body #productModal.open #modalMedia.modal-media > .produto-modal-gallery-ui {
  position: absolute !important;
  inset: 0 !important;
  z-index: 5 !important;
  pointer-events: none !important;
}

body #productModal.open #modalMedia.modal-media > .produto-modal-gallery-ui button,
body #productModal.open #modalMedia.modal-media > .produto-modal-gallery-ui .produto-modal-gallery-dots {
  pointer-events: auto !important;
}

body #productModal .modal-benefits {
  margin-top: 8px !important;
}

body #productModal .modal-benefits li:not(:first-child) {
  display: none !important;
}

body #productModal .modal-benefits li:first-child {
  display: list-item !important;
}

@media (min-width: 981px) {
  body #productModal.open .product-modal-card {
    grid-template-columns: minmax(420px, .95fr) minmax(420px, 1.05fr) !important;
  }

  body #productModal.open #modalMedia.modal-media,
  body #productModal.open #modalMedia.modal-media.modal-media-white-clean,
  body #productModal.open .modal-media.ryan-modal-media-cover {
    min-height: 540px !important;
    height: 100% !important;
  }
}

@media (max-width: 980px) {
  body #productModal.product-modal {
    padding: 10px !important;
    align-items: flex-start !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  body #productModal.open .product-modal-card {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    grid-template-columns: 1fr !important;
    margin: 8px auto 90px !important;
    border-radius: 18px !important;
    overflow: hidden !important;
  }

  body #productModal.open #modalMedia.modal-media,
  body #productModal.open #modalMedia.modal-media.modal-media-white-clean,
  body #productModal.open .modal-media.ryan-modal-media-cover {
    width: 100% !important;
    min-height: 300px !important;
    height: 300px !important;
    max-height: 300px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255, 91, 0, .24) !important;
  }

  body #productModal.open #modalMedia.modal-media > img,
  body #productModal.open #modalMedia.modal-media img.rs-product-photo,
  body #productModal.open #modalMedia.modal-media img.modal-product-image-clean,
  body #productModal.open #modalMedia.modal-media img.ryan-modal-img-cover {
    object-position: center 34% !important;
    transform: scale(1.28) !important;
    clip-path: inset(8% 7% 18% 7%) !important;
  }

  body #productModal.open .modal-info {
    padding: 22px 18px 24px !important;
  }
}

@media (max-width: 420px) {
  body #productModal.open #modalMedia.modal-media,
  body #productModal.open #modalMedia.modal-media.modal-media-white-clean,
  body #productModal.open .modal-media.ryan-modal-media-cover {
    min-height: 280px !important;
    height: 280px !important;
    max-height: 280px !important;
  }

  body #productModal.open #modalMedia.modal-media > img,
  body #productModal.open #modalMedia.modal-media img.rs-product-photo,
  body #productModal.open #modalMedia.modal-media img.modal-product-image-clean,
  body #productModal.open #modalMedia.modal-media img.ryan-modal-img-cover {
    transform: scale(1.33) !important;
    clip-path: inset(9% 8% 20% 8%) !important;
  }
}
