/* V7.22 — small customer usability polish; navy / rose gold branding preserved. */
/* Product popup — reduce vertical overhead while retaining all factual details and accessible controls. */
.product-dialog .dialog-content { padding-bottom:20px; }
.product-dialog .dialog-content h2 { margin-block:6px 9px; }
.product-dialog .dialog-content > p { margin-block:6px 9px; line-height:1.48; }
.product-dialog #modalFormat { font-size:13px; }
.product-dialog .v714-at-glance { margin:9px 0 9px; }
.product-dialog .v714-at-glance > div { padding:9px 11px; }
.product-dialog .v713-features-title { margin:10px 0 6px; }
.product-dialog .modal-features { margin:6px 0 10px; gap:6px; }
.product-dialog .v75-format-details { padding:10px 12px; margin:9px 0; }
.product-dialog .v75-format-details p { margin:5px 0 0; line-height:1.45; }
.product-dialog .modal-actions { gap:8px; }
.product-dialog .v714-shop-pending { padding:9px 11px; }
.product-dialog .v714-shop-pending small { display:block; }
.product-dialog .v715-custom-design { margin-top:2px; }
.product-dialog .v716-modal-link { display:inline-flex; align-items:center; min-height:44px; }
@media(min-width:841px) {
  .product-dialog .dialog-content { padding:30px 29px 19px; justify-content:flex-start; }
  .product-dialog .dialog-preview { min-height:330px; max-height:none; }
  .product-dialog .dialog-content h2 { font-size:clamp(39px,3.5vw,52px); }
}
/* Mobile: more of the actual product details on screen, no lost close control. */
@media(max-width:680px) {
  .product-dialog { width:min(calc(100vw - 12px),430px); max-height:calc(100dvh - 12px); }
  .product-dialog .dialog-preview { height:145px; min-height:145px; max-height:145px; }
  .product-dialog .dialog-content { padding:11px 16px 20px; }
  .product-dialog .dialog-content h2 { font-size:clamp(30px,8.7vw,41px); line-height:1.04; }
  .product-dialog .v714-at-glance { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .product-dialog .gallery-toolbar { padding:5px 11px; }
  .product-dialog .gallery-footer { padding:5px 11px; }
  .product-dialog .dialog-close { min-height:44px; min-width:44px; }
  .v716-contact-hero { padding:36px 0 24px; }
  .v716-contact-content { padding-top:22px; }
  .v716-contact-options { gap:12px; margin-bottom:24px; }
  .v716-contact-options article { padding:18px 18px 20px; }
  .v718-contact-banner { margin-bottom:18px; }
  .v716-message-grid { padding-top:24px; gap:16px; }
  .v716-message-form { gap:12px; padding:16px; }
  .v716-message-form :is(button,select) { min-height:44px; }
  .v716-form-actions button { flex:1 1 142px; }
}
/* Navigation, contact controls, and product actions are reliably usable by touch and keyboard. */
.mobile-nav a { display:block; min-height:44px; padding-block:12px; }
.menu-toggle { min-width:44px; min-height:44px; }
.v716-contact-options a { min-height:44px; display:inline-flex; align-items:center; }
.v716-message-form :is(button,select),.product-dialog .gallery-toolbar-actions button { min-height:44px; }
:is(.product-dialog,.v716-message-form,.v716-contact-options,.mobile-nav) :is(button,a,select,textarea):focus-visible { outline:3px solid #965772; outline-offset:3px; }
@media(prefers-reduced-motion:reduce) { .product-dialog *, .v716-contact-options * { transition:none!important; } }
