.ct-map-icon img {
  vertical-align: middle;
}

/* Contact page mobile fix */
@media(max-width: 768px) {
  .contact-form-wrap,
  .contact-right,
  .ct-contact-form,
  [class*="contact"] form,
  [class*="contact"] .wp-block-column {
    display: block !important;
    width: 100% !important;
    visibility: visible !important;
    overflow: visible !important;
  }
}

/* Reduce WooCommerce placeholder image size on mobile */
.woocommerce ul.products li.product .woocommerce-placeholder {
  max-height: 160px;
  object-fit: contain;
  opacity: 0.3;
}

/* Fix WooCommerce product image display in shop grid */
.woocommerce ul.products li.product a img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 280px !important;
  object-fit: cover !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Remove excess blank space above product title */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  margin-top: 10px !important;
}

/* Constrain the image wrapper height */
.woocommerce ul.products li.product .wp-post-image {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* FUNBIRD Motion — CSS-only, performance-tuned (Appearance → Customize → Additional CSS)
   Revised 17 Sep 2026 so the animations stop delaying Speed Index and LCP.
   Changed from the previous version:
     - h1 is no longer animated (it is the Largest Contentful Paint element)
     - the .35s / .2s start delays on h2 / h3 are gone
     - fb-rise no longer animates opacity, so headings are never invisible while moving
     - the 7-second fb-kb image zoom and its overflow:hidden wrapper are removed
   Kept: the red underline draw on h2, all hover behaviour, the h2/h3 entrances. */
@media (prefers-reduced-motion: no-preference) {
  h2 { position: relative; padding-top: .45em; animation: fb-rise .9s cubic-bezier(.22,1,.36,1) both; }
  h2::before { content: ""; position: absolute; left: 0; top: 0; height: 2px; width: 100%; background: #ec3013;
               transform: scaleX(0); transform-origin: left; animation: fb-draw .7s cubic-bezier(.22,1,.36,1) forwards; }
  h3 { animation: fb-slide .9s cubic-bezier(.22,1,.36,1) both; }
  h1, h2, h3 { transition: color .25s; }
  h1:hover, h2:hover, h3:hover { color: #ec3013; }
  h2:hover::before { animation: fb-pulse .9s ease-in-out infinite alternate; }
  @keyframes fb-rise  { from { transform: translateY(28px); } to { transform: none; } }
  @keyframes fb-draw  { to { transform: scaleX(1); } }
  @keyframes fb-pulse { from { transform: scaleX(1); } to { transform: scaleX(.85); } }
  @keyframes fb-slide { from { clip-path: inset(0 100% 0 0); transform: translateX(-28px); } to { clip-path: inset(0 0 0 0); transform: none; } }
}