/* Purchase layout; scoped to the product overview. */
/* Keep imported description HTML and gallery copy in the site's description font. */
body #extraDetails { font-family:'Roboto', sans-serif; }
body #extraDetails #extraDescriptionContent { font-family:inherit; font-size:16px; font-weight:400; line-height:1.5; }
body #extraDetails #extraDescriptionContent * { font-family:inherit !important; font-size:inherit !important; line-height:inherit !important; }
body #extraDetails .product-detail-gallery-grid h5,
body #extraDetails .product-detail-gallery-grid p { font-family:inherit; }
body #productOverview #description_for_product { font-family:'Roboto', sans-serif !important; }
body #productOverview { color:#172b43; }
body #productOverview #productDetails { text-align:left; }
/* Keep stock and the section divider close without overlapping either column. */
body #productOverview,
body #productOverview #productDetails,
body #productOverview .product-overview-row > .col-md-6 {
  padding-bottom:0 !important;
  margin-bottom:0 !important;
}
body #productOverview #quantityDisplay { margin-bottom:0 !important; }
body #productOverview #quantityDisplay + hr { margin:10px 0 0 !important; }
body #productOverviewDivider { position:static !important; margin:12px auto 16px !important; }
body #productOverview #productPrice { position:static !important; margin:16px 0 10px !important; }
body #productOverview #productDetailsSection { position:static !important; width:100%; gap:0; margin-top:16px !important; }
body #productOverview #productDetailsSection > div:has(> #noVariation) { display:none; }
body #productOverview #quantitySelectLabel { font-size:13px !important; font-weight:650 !important; margin:0 0 6px !important; }
body #productOverview #quantitySelect { height:46px !important; padding:10px 12px !important; font-size:16px !important; border-radius:10px; margin:0 0 16px !important; }
body #productOverview #addToCartContainer { height:auto !important; min-height:0 !important; margin:0 0 12px !important; }
body #productOverview #addToCartBtn, body #productOverview #buyNowBtn { position:static !important; width:100% !important; min-height:50px; height:auto !important; border-radius:10px !important; padding:12px 18px !important; font-size:16px !important; font-weight:650; box-shadow:none; margin:0 0 12px !important; }
body #productOverview #addToCartBtn { background:#1265e8 !important; color:#fff !important; border:1px solid #1265e8 !important; }
body #productOverview #buyNowBtn { background:#ffca28 !important; color:#172b43 !important; border:1px solid #edb51b !important; margin-bottom:14px !important; }
body #productOverview #addToCartBtn:hover { background:#0b53c5 !important; }
body #productOverview #buyNowBtn:hover { background:#f5ba14 !important; }
body #productOverview #addToCartBtn:disabled, body #productOverview #buyNowBtn:disabled { opacity:.55; }
body #productOverview .rocking-icon { animation:none !important; }
body #productOverview .trust-group { background:transparent !important; box-shadow:none !important; border:0 !important; border-radius:0 !important; padding:12px 0 !important; margin:0 !important; width:100% !important; min-width:0; }
body #productOverview .shipping-returns { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px !important; margin:0 !important; }
body #productOverview .info-box { background:#f4f7fb !important; box-shadow:none !important; padding:12px !important; border-radius:10px !important; min-width:0; min-height:0 !important; height:auto !important; flex:none !important; font-size:13px; overflow-wrap:anywhere; }
body #productOverview .trust-section { width:100%; margin:0 !important; padding:0 !important; }
body #productOverview #addToCartContainer:empty { display:none !important; }
body #productOverview .secure-checkout { background:transparent !important; border:0 !important; padding:8px 0 !important; font-size:13px; color:#52677f; }
body #productOverview .trust-compact { font-size:13px; line-height:1.6; flex-wrap:wrap; }
body #productOverview .payment-box { padding:12px 0 !important; margin:0 !important; border-top:1px solid #e1e8f0; }
body #productOverview .payment-title { font-size:13px !important; color:#52677f; margin:0 0 10px !important; }
body #productOverview .payment-icons { display:flex; flex-wrap:wrap !important; gap:10px 16px !important; }
body #productOverview .pay-item { font-size:12px; }
body #productOverview .variation-option-card { border-radius:10px; }
@media(min-width:992px) {
  body #productOverview .product-thumbnail-nav { margin-bottom:8px !important; }
  body #productOverview #shareDropdownWrapper { margin-top:0 !important; }
  body #productOverview #productDetails { padding-left:28px; }
  body #productOverview #productDetails { padding-left:28px; }
  body #productOverview .trust-group { max-width:100%; }
}
@media(max-width:991px) {
  body #productOverview #productDetails { padding:16px !important; }
  body #productOverview #productDetailsSection { margin-bottom:0 !important; }
  body #productOverview .shipping-returns { grid-template-columns:1fr; gap:8px !important; }
  body #productOverview .info-box { flex:none !important; padding:10px 12px !important; }
  body #productOverview .trust-group { padding:8px 0 !important; }
  body #productOverview #addToCartBtn, body #productOverview #buyNowBtn { min-height:50px; }
}

/* Wider product thumbnails and description gallery. */
body #productOverview .variation-card-group { min-width:0; width:100%; }
body #productOverview .variation-slider { display:flex; align-items:center; gap:8px; width:100%; min-width:0; margin:10px 0 18px; }
body #productOverview .variation-slider .variation-card-options { display:flex !important; flex:1 1 0; flex-wrap:nowrap !important; min-width:0; gap:10px; overflow-x:auto; overflow-y:hidden; padding:3px; margin:0; scroll-snap-type:x proximity; scroll-padding:3px; scrollbar-width:none; }
body #productOverview .variation-slider .variation-card-options::-webkit-scrollbar { display:none; }
body #productOverview .variation-slider .variation-option-card { flex:0 0 112px !important; width:112px !important; min-width:112px; max-width:112px; align-self:stretch; scroll-snap-align:start; }
body #productOverview .variation-slide-arrow { display:flex; align-items:center; justify-content:center; flex:0 0 28px; width:28px; height:44px; margin:0; padding:0; border:1px solid #d9e2ed; border-radius:8px; background:#f4f7fb; color:#172b43; font-size:26px; line-height:1; cursor:pointer; }
body #productOverview .variation-slide-arrow:hover { background:#e7eef8; }
body #productOverview .variation-slide-arrow:focus-visible, body #productOverview .variation-card-options:focus-visible { outline:2px solid #1265e8; outline-offset:2px; }
body #productOverview .product-thumbnail-nav { display:flex !important; align-items:center !important; gap:8px !important; width:100%; min-width:0; margin:14px 0 24px !important; }
body #productOverview .product-thumbnail-nav > button { display:flex; align-items:center; justify-content:center; flex:0 0 32px !important; width:32px !important; height:72px !important; min-height:0 !important; margin:0 !important; padding:0 !important; border:1px solid #d9e2ed; border-radius:8px; background:#f4f7fb; color:#172b43; font-size:28px; line-height:1; cursor:pointer; }
body #productOverview .product-thumbnail-nav > button:hover { background:#e7eef8; }
body #productOverview .product-thumbnail-nav > button:focus-visible { outline:2px solid #1265e8; outline-offset:2px; }
body #productOverview #thumbnailContainer { display:flex !important; flex:1 1 0; min-width:0; gap:8px !important; width:100% !important; padding:2px 0 !important; margin:0 !important; top:0 !important; height:76px !important; min-height:76px; align-items:center !important; }
body #productOverview #thumbnailContainer > * { flex:0 0 72px !important; width:72px !important; min-width:72px !important; max-width:72px !important; height:72px !important; min-height:72px !important; max-height:72px !important; box-sizing:border-box !important; margin:0 !important; padding:1px !important; border-radius:8px !important; overflow:hidden; background:#fff; }
body #productOverview #thumbnailContainer > * { position:relative !important; top:auto !important; bottom:auto !important; left:auto !important; right:auto !important; transform:none !important; align-self:center !important; vertical-align:top; }
body #productOverview #thumbnailContainer > img { object-fit:contain !important; }
body #productOverview #thumbnailContainer { overflow-x:auto !important; overflow-y:hidden !important; scrollbar-width:none; -ms-overflow-style:none; }
body #productOverview #thumbnailContainer::-webkit-scrollbar { display:none; width:0; height:0; }
body #productOverview #videoThumbnailContainer video { width:100% !important; height:100% !important; object-fit:cover !important; }
body #productOverview #thumbnailContainer > video { object-fit:cover !important; }
body #productOverview #productImage { position:relative; }
body #productOverview #thumbLeftBtn, body #productOverview #thumbRightBtn { position:absolute !important; top:50% !important; bottom:auto !important; transform:translateY(-50%) !important; display:flex !important; align-items:center; justify-content:center; width:36px !important; height:44px !important; min-height:0 !important; margin:0 !important; padding:0 !important; z-index:10 !important; border:1px solid #d9e2ed; border-radius:8px; background:rgba(255,255,255,.94); color:#172b43; }
body #productOverview #thumbLeftBtn { left:10px !important; right:auto !important; }
body #productOverview #thumbRightBtn { right:10px !important; left:auto !important; }
body #productOverview #thumbLeftBtn i, body #productOverview #thumbRightBtn i { font-size:20px !important; line-height:1; }
body #productOverview #thumbnailContainer #zoomImageBtn { font-size:13px !important; line-height:1.2; white-space:normal; background:#f4f7fb; }
body #productOverview #videoThumbnailContainer .bi { font-size:26px !important; }
body #extraDetails #productDetailGallery { width:100%; padding:24px; margin:24px 0; box-sizing:border-box; border:1px solid #e0e7ef; border-radius:14px; background:#fff; }
body #extraDetails #productDetailGallery > h4 { font-size:22px; margin:0 0 22px; color:#172b43; }
body #extraDetails .product-detail-gallery-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:28px; }
body #extraDetails .product-detail-gallery-grid figure { display:grid; grid-template-columns:minmax(0, .75fr) minmax(0, 1.25fr); align-items:start; gap:16px; margin:0; min-width:0; padding:24px 0; border-bottom:1px solid #e0e7ef; }
body #extraDetails .product-detail-gallery-grid figure:last-child { border-bottom:0; }
body #extraDetails .product-detail-gallery-grid figcaption { min-width:0; text-align:left; }
body #extraDetails .product-detail-gallery-grid h5 { font-size:24px; font-weight:650; line-height:1.35; margin:0 0 14px; color:#263e60; overflow-wrap:anywhere; }
body #extraDetails .product-detail-gallery-grid p { font-size:16px; line-height:1.75; margin:0; color:#52677f; overflow-wrap:anywhere; }
body #extraDetails .product-detail-gallery-grid a { display:block; min-width:0; align-self:start; margin:0; padding:0; line-height:0; }
body #extraDetails .product-detail-gallery-grid img { display:block; width:100% !important; height:auto !important; max-width:100%; max-height:none !important; margin:0 !important; padding:0 !important; object-fit:contain; object-position:left top; border-radius:12px; background:transparent; }
@media(min-width:768px) {
 body #extraDetails .product-detail-gallery-grid figure { grid-template-columns:minmax(0, .6fr) minmax(0, 1.4fr); }
 body #extraDetails .product-detail-gallery-grid img { width:100% !important; height:auto !important; max-height:680px !important; object-fit:contain; object-position:left top; }
}
@media(max-width:767px) {
 /* One small outer gutter; avoid stacking container and details padding. */
 body #productOverview { width:100% !important; max-width:none !important; padding-left:8px !important; padding-right:8px !important; box-sizing:border-box; }
 body #productOverview #productDetails { padding-left:0 !important; padding-right:0 !important; min-width:0; }
 body #productOverview .product-overview-row { min-width:0; }
 body #productOverview .product-overview-row > .col-md-6 { min-width:0; max-width:100%; box-sizing:border-box; }
 body #productOverviewDivider { width:calc(100% - 16px) !important; }
 body #extraDetails { width:100% !important; max-width:100%; box-sizing:border-box; }
 body #extraDetails #extraDescriptionSection,
 body #extraDetails #productContainer { width:calc(100% - 16px) !important; max-width:none !important; margin-left:auto !important; margin-right:auto !important; box-sizing:border-box; }
 body #extraDetails #extraDescriptionSection #productContainer { width:100% !important; max-width:100% !important; margin-left:0 !important; margin-right:0 !important; }
 /* Remove the second frame's inset so description and details use the same edges. */
 body #extraDetails #extraDescriptionSection > .p-4 {
   width:100%; max-width:100%; padding:0 !important; margin:0 !important;
   background:transparent !important; box-shadow:none !important; box-sizing:border-box;
 }
 body #extraDetails #extraDescriptionSection .description-wrapper {
   width:100% !important; max-width:100% !important; margin:0 !important;
   padding:12px !important; gap:20px; box-sizing:border-box; align-items:stretch;
 }
 body #extraDetails #extraDescriptionSection .description-left,
 body #extraDetails #extraDescriptionSection .description-right {
   width:100%; max-width:100%; min-width:0; box-sizing:border-box; overflow-wrap:anywhere;
 }
 body #extraDetails #extraDescriptionSection .description-right { padding:12px !important; }
 body #desktopRelatedProductsSection,
 body #desktopBrowsingHistorySection { left:0 !important; width:calc(100% - 16px) !important; max-width:none !important; margin-left:auto !important; margin-right:auto !important; padding:12px !important; box-sizing:border-box; }
 body #extraDetails #productDetailGallery { padding:16px; margin:20px 0; }
 body #extraDetails .product-detail-gallery-grid { grid-template-columns:1fr; gap:24px; }
 body #extraDetails .product-detail-gallery-grid figure { grid-template-columns:1fr; gap:18px; padding:16px 0; }
 body #extraDetails .product-detail-gallery-grid h5 { font-size:20px; }
 body #productOverview #thumbnailContainer > * { width:64px !important; min-width:64px !important; max-width:64px !important; flex-basis:64px !important; height:64px !important; min-height:64px !important; max-height:64px !important; }
 body #productOverview #thumbnailContainer { height:68px !important; min-height:68px; }
 body #productOverview .product-thumbnail-nav > button { height:64px !important; flex-basis:28px !important; width:28px !important; }
}
