/* Header contact and product gallery controls. */
.gtuning-header-phone {display: inline-flex; flex-shrink: 0; padding-block: 12px; color: var(--text); font-size: 16px; font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; text-decoration: none}
.gtuning-header-phone:hover {color: var(--silver)}
.footer-bottom>span:last-child {display: block}
.dialog-close {display: grid; place-items: center; width: 44px; height: 44px; padding: 0; line-height: 1; outline-offset: 2px}
.dialog-close svg {display: block}
.dialog-close:focus-visible {outline: 2px solid var(--red)}
.tuning-selection-dialog h2 {padding-right: 26px}
#request-title:focus {outline: none}
/* Keep one focus border, including Safari's native input styling. */
.tuning-product-search input,
.catalog-search input,
.catalog-price-filter input,
.tuning-selection-dialog input:not([type=hidden]),
textarea {-webkit-appearance: none; appearance: none; box-shadow: none}
input:focus, input:focus-visible,
.tuning-selection-dialog input:not([type=hidden]):focus,
select:focus, select:focus-visible,
textarea:focus, textarea:focus-visible {outline: none; box-shadow: none; border-color: var(--red)}
.tuning-product-search:focus-within, .catalog-search:focus-within {border-color: var(--red)}
.product-main-photo {touch-action: pan-y pinch-zoom}
.product-photo-open {position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; cursor: zoom-in}
.product-photo-open:focus-visible {outline-offset: -5px}
.product-photo-label, .product-photo-counter {z-index: 2; pointer-events: none}
.product-photo-zoom {z-index: 3}
.product-gallery-nav {display: inline-grid; place-items: center; width: 42px; height: 42px; padding: 0; border: 1px solid #707780; background: rgb(16 17 19 / 88%); color: #f0f2f5}
.product-gallery-nav:hover {background: #31363d; border-color: #a2abb8}
.product-gallery-previous, .product-gallery-next {position: absolute; z-index: 3; top: calc(50% - 21px)}
.product-gallery-previous {left: 12px}
.product-gallery-next {right: 12px}
.product-photo-dialog {width: min(1200px, calc(100% - 48px)); height: calc(100dvh - 48px); padding: 52px 20px 76px; touch-action: pan-y pinch-zoom}
.product-photo-stage {height: 100%; width: 100%}
.product-photo-stage>img {height: 100%; width: 100%; max-width: 100%; object-fit: contain; user-select: none; -webkit-user-drag: none}
.product-photo-navigation {position: absolute; bottom: 16px; left: 20px; right: 20px; display: flex; align-items: center; justify-content: center; gap: 24px}
.product-photo-status {min-width: 62px; text-align: center; color: var(--silver); font-size: 13px; font-variant-numeric: tabular-nums}
@media (max-width: 767px) {
  .header-inner {gap: 10px}
  .gtuning-header-phone {margin-left: auto; font-size: 13px; letter-spacing: -.2px}
  .footer-bottom {flex-wrap: wrap; align-items: flex-start}
  .footer-bottom>span:last-child {display: block; width: 100%; max-width: none; font-size: 10px; line-height: 1.7; letter-spacing: 0; text-align: center}
  .product-gallery-nav {width: 38px; height: 42px}
  .product-gallery-previous {left: 8px}
  .product-gallery-next {right: 8px}
  .product-photo-dialog {width: calc(100% - 20px); height: calc(100dvh - 20px); padding: 50px 10px 72px}
  .product-photo-navigation {bottom: 14px; left: 10px; right: 10px}
}
@media (max-width: 370px) {
  .header-inner {gap: 7px}
  .gtuning-header-phone {font-size: 11px; letter-spacing: -.35px}
}
/* A readable input size prevents focus zoom on iPhone, including landscape. */
@media (max-width: 767px), (hover: none) and (pointer: coarse) {
  .tuning-product-search input,
  .catalog-search input,
  .catalog-price-filter input,
  .catalog-model-filter select,
  .catalog-results-toolbar select,
  .tuning-selection-dialog input:not([type=hidden]),
  textarea {font-size: 16px}
}
