/* Repairs for the saved theme. Keep the original sections and visual styling. */
body[data-template="product"] {
  display: block;
  padding-bottom: calc(80px + env(safe-area-inset-bottom));
}

[hidden] { display: none !important; }
.product .grid__item,
.mobile-view_product-title,
.product__info-container { min-width: 0; }
.product_tag_display { white-space: normal; overflow-wrap: anywhere; }
.product__info-container img { max-width: 100%; height: auto; }
.product__info-container { display: block; }
.machine { max-width: 100%; }
.ball { flex-shrink: 1; aspect-ratio: 1; }
.icon { flex-shrink: 0; }
.icon-caret { width: 10px; height: 6px; }

/* A saved Slick track contains fixed widths and transforms from another viewport. */
.hura-announcement-bar .slick-list,
.hura-announcement-bar .slick-track { width: 100% !important; transform: none !important; }
.hura-announcement-bar .slick-slide { display: none; }
.hura-announcement-bar .slick-current {
  display: block;
  width: 100% !important;
  white-space: normal;
  padding: 8px 16px;
  line-height: 1.5;
}
.hura-announcement-bar .slick-arrow { display: none !important; }
.hura-announcement-bar .announcement_link { color: #171006 !important; text-decoration: underline; }

.header .brand--logo { width: 160px !important; max-width: 160px; height: auto; }
.header .brand--logo .ratio { display: block; }
.header .brand--logo .ratio::before { display: none; }
.header .header__heading-logo.company_logo {
  position: static;
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
}
.header__menu-item p { margin: 0; }
.header__inline-menu .list-menu--inline { align-items: center; row-gap: 6px; }
.header__inline-menu summary { list-style: none; }
.header__inline-menu summary::-webkit-details-marker { display: none; }
.header__inline-menu .icon-caret { display: none; } /* All saved submenus are empty. */

#shopify-section-navigation_stripe { position: relative; }
.apl_lob_slider { scroll-behavior: smooth; }
.apl_lob_content { min-width: 0; }
.apl_label_attr { white-space: normal; overflow-wrap: anywhere; }

/* Render the existing gallery even without Shopify's lazy-loading scripts. */
.product media-gallery,
.product media-gallery > slider-component { display: block !important; margin: 0 !important; width: 100%; }
.product .product__media-list { margin: 0; padding: 0; }
.product .product__media-list > .product__media-item:first-child {
  width: 100%;
  max-width: 100%;
  margin: 0;
}
.product .product__media-list::after { display: none; }
.product .product__media-toggle,
.product .product__media-icon { display: none; }
.product .product__media img { cursor: default; }

@media (min-width: 750px) {
  .product .product__media-wrapper { align-self: stretch; }
  .product media-gallery { position: sticky; top: 20px; }
}

#shopify-section-template--17605519376564__productMarketingContent {
  max-width: 1300px;
  margin-inline: auto;
}
.faq-container { gap: 16px; }
.faq-question { margin: 0; }
.faq-question::after { flex-shrink: 0; margin-left: 12px; }
.faq-answer { color: #e0e0e0; line-height: 1.75; }
.faq-item:hover { transform: none; }
.faq-item.active .faq-question::after { background: #997a00; }
.faq-item.active .faq-answer { max-height: none; }
.faq-question:focus-visible,
#menu-drawer a:focus-visible { outline: 2px solid #b38f00; outline-offset: -4px; }

.MGO777-fixed-footer {
  padding-bottom: calc(8px + env(safe-area-inset-bottom));
  border-width: 1px;
}
.MGO777-fixed-footer a {
  flex: 1 1 0;
  max-width: none;
  min-width: 0;
  min-height: 44px;
  gap: 4px;
  line-height: 1.3;
  text-align: center;
}
.MGO777-fixed-footer img { flex-shrink: 0; width: 20px; height: 20px; }

@media (max-width: 1023px) {
  .header .brand--logo { width: 120px !important; max-width: 120px; }
  .header .header__heading { gap: 8px; margin: 0; }
  .header .apple_logo { margin-left: 0; }
  .header .apple_logo svg { width: 58px; height: auto; }
  .header .header__icons { padding-right: 0; }
  .header .header__icon { width: 32px; }
  .header #menu-drawer {
    top: 100%;
    height: auto;
    max-height: 65vh;
    overflow-y: auto;
  }
  .header details[open] > #menu-drawer {
    visibility: visible;
    transform: translateX(0);
  }
  #menu-drawer .list-menu { padding: 12px 20px; }
  #menu-drawer a { display: block; padding: 12px 0; color: #383131; text-decoration: none; }
}

@media (max-width: 749px) {
  .header.header--mobile-center { padding: 12px; grid-template-columns: 40px 1fr 64px; }
  .product .mobile-view_product-title { width: 100%; max-width: 100%; }
  .product .product__media-wrapper { width: 100%; padding-bottom: 20px; }
  .product .product__media-list { width: 100%; overflow: visible; }
  .product .product-media-container { width: 100%; max-width: 100%; }
  .product .product__info-wrapper { padding: 0; }
  .product__title h1 { font-size: 25px; line-height: 1.25; overflow-wrap: break-word; }
  .skuAndBarcode { display: flex; flex-wrap: wrap; gap: 4px 12px; }
  .product__info-container .machine { padding-inline: 12px; }
  .machine .ball { width: 52px; height: auto; }
  #shopify-section-template--17605519376564__productMarketingContent > div {
    width: calc(100% - 24px) !important;
    padding: 20px 16px !important;
  }
  .cok-faq-title { font-size: 24px; line-height: 1.35; }
  .faq-question { padding: 18px 16px; font-size: 16px; line-height: 1.5; }
  .faq-question::after { width: 30px; height: 30px; font-size: 24px; }
  .faq-answer { padding-inline: 16px; }
  .faq-item.active .faq-answer { padding: 18px 16px; }
  .MGO777-fixed-footer { border-radius: 20px 20px 0 0; }
  .MGO777-fixed-footer a { font-size: 10px; white-space: nowrap; }
  #footerAccordion .panel2 { display: block; max-height: none; }
}

@media (prefers-reduced-motion: reduce) {
  .snow-wrap { display: none; }
  .apl_lob_slider { scroll-behavior: auto; }
}
