.product-detail-section{position:relative}
.product-page-arrow{position:fixed;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #e2e5e9;border-radius:50%;background:rgba(255,255,255,.96);color:#333;z-index:30;text-decoration:none;box-shadow:0 2px 8px #00000008;transition:background .15s,border-color .15s}
.product-page-arrow--prev{left:18px}.product-page-arrow--next{right:18px}
.product-page-arrow:hover{background:#f2f5f9;border-color:#aab5c6;color:#102d6d}
.product-page-arrow:focus-visible{outline:2px solid #102d6d;outline-offset:3px}
@media(min-width:769px) and (max-width:1400px){.product-detail-section>.container{max-width:calc(100% - 128px)}}
@media(max-width:768px){.product-page-arrow{width:40px;height:40px}.product-page-arrow--prev{left:10px}.product-page-arrow--next{right:10px}}

/* Center the visible image and information columns at every breakpoint. */
.product-detail-section .product-detail-container{justify-content:center}
.product-detail-section .product-info-container{align-items:center}
@media(min-width:1601px){.product-detail-section .product-info-container{width:600px}}
@media(max-width:1200px){
 .product-detail-section .product-detail-container{align-items:center}
 .product-detail-section .product-info-container{max-width:600px}
}

/* Compact, consistent product details on smaller desktop screens. */
@media (min-width: 1024px) and (max-width: 1600px), (min-width: 1024px) and (max-height: 900px) {
  section.product-detail-section { padding-top: 112px; }
  .product-detail-section .product-detail-container { flex-direction: row; align-items: center; gap: 40px; padding: 0; }
  .product-detail-section .product-image-container,
  .product-detail-section .product-info-container { flex: 1; min-width: 0; max-width: 600px; width: auto; height: auto; }
  .product-detail-section .product-image-wrapper { width: 100%; max-width: 440px; height: auto; aspect-ratio: 1; padding: 20px; box-sizing: border-box; }
  .product-detail-section .product-info-content { padding-top: 0; }
  .product-detail-section .brand-name { font-size: 18px; margin-bottom: 10px; }
  .product-detail-section .product-title { font-size: clamp(28px, 2.4vw, 36px); line-height: 1.3; margin-bottom: 16px; }
  .product-detail-section .product-description { margin-bottom: 28px; }
  .product-detail-section .product-description::after { bottom: -14px; }
  .product-detail-section .product-description p { font-size: 16px; line-height: 1.5; }
  .product-detail-section .product-specs { margin-bottom: 20px; }
  .product-detail-section .spec-row { margin-bottom: 12px; gap: 16px; }
  .product-detail-section .spec-label,
  .product-detail-section .spec-value { font-size: 16px; line-height: 1.5; }
  .product-detail-section .product-cafe24-purchase { margin-top: 16px; }
}

/* Center the overview in the space below the desktop header; grow for short screens. */
@media (min-width: 1024px) {
  section.product-detail-section {
    display: flex;
    align-items: center;
    min-height: 100svh;
    padding: 104px 0 24px;
    box-sizing: border-box;
  }
  section.product-detail-section > .container { width: 100%; box-sizing: border-box; }
  .product-detail-section .product-detail-container { align-items: center; }
  .product-detail-section .product-info-container { height: auto; }
}
