/* JP-HÁZ mobil egységesítés V1 – 2026-10-10
   Csak mobil/tablet; a képek nem nyúlnak, termék- és rendelési logika érintetlen.
   Kifejezetten a webshop tényleges CSS osztályaira építve. */
@media (max-width:780px){
  /* Szélesség és tipográfia: meglévő görgethető sávokat nem tiltjuk le. */
  .container,.hero-home-grid,.product-detail,.product-gallery,.detail-copy,
  .hv-safe-page .container,.hv-safe-page .hv-grid,.hv-safe-page .hv-card,
  .full-cart-layout,.full-cart-products,.cart-summary-card,
  .checkout-layout,.checkout-section,.checkout-summary-card,
  .jphaz-footer-brands-v17 {min-width:0!important;box-sizing:border-box!important;max-width:100%!important}
  .product-detail-page h1,.hv-safe-page .hv-card h3,
  .catalog-page .product-card h3,.full-cart-item h3,
  .checkout-section h2,.jphaz-footer-partner-copy-v17 strong{
    overflow-wrap:break-word!important;word-break:normal!important
  }
  /* Általános termékkártyák: a képmező mérete rögzített, a kép mindig teljes egészében látszik. */
  .catalog-page article.product-card,
  .featured-section article.product-card,
  .jphaz-v161-climate-section article.product-card,
  #termekek article.product-card,
  .hv-safe-page .hv-card {min-width:0!important;max-width:100%!important;overflow:hidden!important}
  .catalog-page .product-card > .product-image,
  .catalog-page .product-card > a.product-image,
  .featured-section .product-card > a.product-image,
  .jphaz-v161-climate-section .product-card > a.product-image,
  #termekek .product-card > a.product-image{
    box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;
    position:relative!important;max-width:100%!important;width:100%!important;
    overflow:hidden!important;background:#fff!important;border-radius:inherit;
  }
  .catalog-page .product-card .product-image img,
  .featured-section .product-card > a.product-image > img,
  .jphaz-v161-climate-section .product-card > a.product-image > img,
  #termekek .product-card > a.product-image > img{
    display:block!important;position:static!important;inset:auto!important;
    margin:auto!important;padding:0!important;min-width:0!important;min-height:0!important;
    max-width:100%!important;max-height:100%!important;
    width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;
    transform:none!important
  }
  .hv-safe-page .hv-img{
    display:flex!important;align-items:center!important;justify-content:center!important;
    box-sizing:border-box!important;width:100%!important;max-width:100%!important;
    height:190px!important;min-height:190px!important;max-height:190px!important;
    padding:12px!important;background:#fff!important;overflow:hidden!important
  }
  .hv-safe-page .hv-img img{
    display:block!important;position:static!important;width:100%!important;height:100%!important;
    max-width:100%!important;max-height:100%!important;min-width:0!important;min-height:0!important;
    margin:auto!important;object-fit:contain!important;object-position:center!important;transform:none!important
  }
  .hv-safe-page .hv-card h3{line-height:1.32!important}
  .hv-safe-page .hv-actions{min-width:0!important;flex-wrap:wrap!important}
  .hv-safe-page .hv-actions>*{min-width:0!important;overflow-wrap:break-word!important}
  .hv-safe-page .hv-keyfacts,.hv-safe-page .hv-controls{min-width:0!important}
  /* Termékadatlap: nincs levágott vagy kifeszített kép, a galéria békén hagyja a vásárlósávot. */
  .product-detail-page .product-detail{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  .product-detail-page .product-gallery{width:100%!important;min-width:0!important;max-width:100%!important}
  .product-detail-page .detail-image{
    box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;
    width:100%!important;min-width:0!important;max-width:100%!important;
    height:clamp(220px,65vw,340px)!important;min-height:0!important;max-height:340px!important;
    padding:12px!important;overflow:hidden!important
  }
  .product-detail-page .detail-image > img{
    display:block!important;position:static!important;inset:auto!important;
    max-width:100%!important;max-height:100%!important;width:100%!important;height:100%!important;
    min-width:0!important;min-height:0!important;margin:auto!important;padding:0!important;
    object-fit:contain!important;object-position:center!important;transform:none!important
  }
  .product-detail-page .gallery-thumbs{
    display:flex!important;align-items:center!important;gap:8px!important;max-width:100%!important;
    overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-inline:contain
  }
  .product-detail-page .gallery-thumb{flex:0 0 64px!important;width:64px!important;min-width:64px!important;height:64px!important;min-height:64px!important;overflow:hidden!important}
  .product-detail-page .gallery-thumb img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}
  .product-detail-page .detail-copy{width:100%!important;min-width:0!important;max-width:100%!important;overflow-wrap:break-word!important}
  .product-detail-page .detail-buy-row{width:100%!important;max-width:100%!important;min-width:0!important}
  .product-detail-page .detail-buy-row > label,
  .product-detail-page .detail-buy-row #productAddCart{min-width:0!important;max-width:100%!important}
  /* A meglévő egyetlen mobil CTA marad; ne keletkezzen egy második sáv. */
  #jpMobileProductBuyBar{display:none!important}
  /* Kiskereskedelmi termékkatalógus. */
  .catalog-page .product-grid{min-width:0!important;max-width:100%!important}
  .catalog-page .product-card .product-image{max-height:225px!important;height:225px!important;min-height:225px!important;padding:12px!important}
  /* Kosárban a kép nem tolhatja szét a sort. */
  .cart-page .full-cart-layout,.cart-page #fullCartItems,.cart-page .full-cart-item{min-width:0!important;max-width:100%!important}
  .cart-page .full-cart-item img{max-width:100%!important;max-height:150px!important;width:auto!important;height:auto!important;object-fit:contain!important}
  .cart-page .full-cart-item > *{min-width:0!important;max-width:100%!important}
  /* Pénztár: az űrlapok és a fizetés/szállítás panel nem nyúlnak túl. */
  .checkout-page .checkout-layout,.checkout-page .checkout-grid,.checkout-page .address-grid{min-width:0!important;max-width:100%!important}
  .checkout-page :is(input,select,textarea){max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
  .checkout-page .checkout-option,.checkout-page .checkout-section{min-width:0!important;max-width:100%!important}
  /* Márkák: eredeti logók arányosan, a képdoboz közepén. */
  .jphaz-footer-partners-v17{min-width:0!important;max-width:100%!important}
  .jphaz-footer-partner-v17{min-width:0!important;max-width:100%!important}
  .jphaz-footer-logo-stage-v17,.jphaz-footer-brand-stage-v17{box-sizing:border-box!important;max-width:100%!important;min-width:0!important;overflow:hidden!important}
  .jphaz-footer-logo-stage-v17 img,.jphaz-footer-brand-stage-v17 img{max-width:100%!important;object-fit:contain!important;object-position:center!important}
  .jphaz-footer-brand-grid-v17{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
  .jphaz-footer-brand-v17{width:100%!important;min-width:0!important}
  /* A keskeny képernyőn se maradjon gomb a képernyőn kívül. */
  .hero-buttons > *,.detail-buy-row > *,
  .jphaz-k4-callback-actions > *,#checkoutSubmit{max-width:100%!important;min-width:0!important}
  /* Érintőképernyőn a hover-nagyítás ne takarja el a következő kártyát. */
}
@media (hover:none) and (max-width:780px){
  .hero-feature-card:hover,.product-card:hover,.hv-card:hover{transform:none!important}
  .hero-feature-card:hover img,.product-card:hover img,.hv-card:hover img{transform:none!important}
}
@media (max-width:480px){
  /* Három kiemelt kép: görgethető egységes sor, nem egymásra nyomott 2+1 rács. */
  body.jp-v160-premium .hero-home .hero-feature-grid,
  .hero-home .hero-feature-grid{
    display:flex!important;flex-wrap:nowrap!important;grid-template-columns:none!important;
    grid-auto-flow:row!important;grid-auto-columns:auto!important;
    min-height:0!important;max-width:100%!important;width:100%!important;
    overflow-x:auto!important;overflow-y:hidden!important;gap:10px!important;
    scroll-snap-type:x mandatory!important;-webkit-overflow-scrolling:touch;
    padding:4px 4px 12px!important;overscroll-behavior-inline:contain
  }
  body.jp-v160-premium .hero-home .hero-feature-grid .hero-feature-card,
  .hero-home .hero-feature-grid .hero-feature-card{
    box-sizing:border-box!important;position:relative!important;flex:0 0 min(72vw,280px)!important;min-width:0!important;width:min(72vw,280px)!important;max-width:min(72vw,280px)!important;
    min-height:230px!important;height:230px!important;max-height:230px!important;
    overflow:hidden!important;scroll-snap-align:start!important;transform:none!important
  }
  body.jp-v160-premium .hero-home .hero-feature-grid .hero-feature-media,
  .hero-home .hero-feature-grid .hero-feature-media{
    position:absolute!important;inset:24px 8px 76px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;min-height:0!important
  }
  .hero-home .hero-feature-grid .hero-feature-media > img{
    display:block!important;position:static!important;max-width:100%!important;max-height:100%!important;
    width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important
  }
  body.jp-v160-premium .hero-home .hero-feature-grid .hero-feature-copy,
  .hero-home .hero-feature-grid .hero-feature-copy{min-height:70px!important;max-height:76px!important;padding:9px 10px!important}
  .hero-home .hero-feature-grid .hero-feature-copy strong{font-size:15px!important;line-height:1.2!important}
  .hv-safe-page .hv-grid{grid-template-columns:minmax(0,1fr)!important}
  .product-detail-page .detail-buy-row{grid-template-columns:minmax(90px,106px) minmax(0,1fr)!important;gap:8px!important}
  .jphaz-footer-partners-v17{grid-template-columns:minmax(0,1fr)!important}
  .jphaz-footer-brand-grid-v17{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .jphaz-footer-brand-stage-v17{min-width:0!important}
}
@media (prefers-reduced-motion:reduce){
  .hero-home .hero-feature-grid{scroll-behavior:auto!important}
}

/* JPHAZ_MOBILE_STABILITY_V2_START — 2026-10-10.
   Refinement of current mobile layout file, no alteration of business logic. */
@media (max-width:1024px){
  /* Tablet and mobile catalogue: product list ahead of optional sales content. */
  .hv-safe-page .jp-hvac-browser-v1,
  .hv-safe-page .jp-hvac-browser-v1__main{min-width:0!important;max-width:100%!important}
  .hv-safe-page .jp-hvac-browser-v1{grid-template-columns:minmax(0,1fr)!important}
  .hv-safe-page .jp-hvac-browser-v1__main{display:flex!important;flex-direction:column!important;align-items:stretch!important}
  .hv-safe-page .hv-mobile-filterbar{order:1!important}
  .hv-safe-page #hvFilterForm{order:2!important;min-width:0!important}
  .hv-safe-page .hv-summary{order:3!important}
  .hv-safe-page .hv-grid{order:4!important}
  .hv-safe-page .hv-pages{order:5!important}
  .hv-safe-page .jp-hvac-picks{order:6!important}
  .hv-safe-page .jp-hvac-mobile-extra-toggle{order:7!important}
  .hv-safe-page .jp-hvac-pick-v12{order:8!important}
  .hv-safe-page :is(.hv-filter,.hv-card,.jp-hvac-picks,.jp-hvac-pick-v12,.hv-grid,.jp-hvac-featured-v12,.jp-hvac-wizard-v15){box-sizing:border-box!important;min-width:0!important;max-width:100%!important}
  .hv-safe-page .hv-img,.hv-safe-page .hv-img img{box-sizing:border-box!important;max-width:100%!important}
  .hv-safe-page .hv-img img{object-fit:contain!important;object-position:center!important}
  .hv-safe-page .hv-card h3{overflow-wrap:break-word!important;word-break:normal!important}
  .hv-safe-page .hv-compare-pick{max-width:calc(100% - 18px)!important}
  .hv-safe-page .hv-actions>*{box-sizing:border-box!important;min-width:0!important}
  .hv-safe-page .jp-hvac-types-v1__links{scrollbar-width:thin}
  .checkout-page .checkout-layout,.checkout-page .checkout-section,.checkout-page .checkout-summary-card,
  .cart-page .full-cart-layout,.cart-page .full-cart-item{box-sizing:border-box!important;min-width:0!important;max-width:100%!important}
}
@media (max-width:780px){
  /* Form controls should remain tappable, with no artificial fixed widths. */
  .product-detail-page .detail-buy-row{box-sizing:border-box!important;width:100%!important;max-width:100%!important;grid-template-columns:minmax(98px,120px) minmax(0,1fr)!important;gap:8px!important}
  .product-detail-page .detail-buy-row label{min-width:0!important;max-width:100%!important;font-size:12px!important;line-height:1.4!important}
  .product-detail-page #productQty{box-sizing:border-box!important;width:100%!important;min-width:0!important;min-height:46px!important;font-size:16px!important}
  .product-detail-page #productAddCart{box-sizing:border-box!important;min-width:0!important;min-height:48px!important;max-width:100%!important;font-size:14px!important;white-space:normal!important}
  .product-detail-page .product-gallery,.product-detail-page .gallery-thumbs{min-width:0!important;max-width:100%!important}
  .product-detail-page .gallery-thumb{min-width:58px!important;min-height:58px!important}
  body.jphaz-product-sticky-cta{padding-bottom:calc(94px + env(safe-area-inset-bottom))!important}
  #jphazMobileProductCta{box-sizing:border-box!important;max-width:100%!important;min-height:68px!important;gap:8px!important;padding-left:max(10px,env(safe-area-inset-left))!important;padding-right:max(10px,env(safe-area-inset-right))!important}
  #jphazMobileProductCta .jphaz-mobile-cta-price{min-width:0!important;flex:1 1 auto!important}
  #jphazMobileProductCta .jphaz-mobile-cta-price strong{font-size:clamp(14px,4.2vw,17px)!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important}
  #jphazMobileProductCta button{box-sizing:border-box!important;flex:0 0 auto!important;min-width:115px!important;min-height:48px!important;padding:9px 13px!important;max-width:48%!important;font-size:14px!important}
  /* Lift consent settings above the fixed buy CTA; avoid unreadable 8px. */
  .product-detail-page ~ #jpcConsentSettingsButton,body.product-detail-page #jpcConsentSettingsButton,body.jphaz-product-sticky-cta #jpcConsentSettingsButton{bottom:calc(84px + env(safe-area-inset-bottom))!important;font-size:12px!important;line-height:1.25!important;max-width:145px!important;min-height:36px!important;padding:7px 9px!important}
  /* Readable supporting copy without changing legally relevant text. */
  .product-detail-page :is(.jphaz-product-trust-v1__row small,.jphaz-k3-trust-grid span,.jphaz-hvac-v3-facts span){font-size:12px!important;line-height:1.45!important}
  .hv-safe-page .hv-hero{margin-bottom:9px!important;padding:13px!important}
  .hv-safe-page .hv-hero h1{font-size:clamp(24px,6vw,29px)!important;line-height:1.16!important}
  .hv-safe-page .hv-hero p:not(.eyebrow){font-size:13px!important;line-height:1.46!important}
  .hv-safe-page .hv-controls input,.hv-safe-page .hv-controls select{font-size:16px!important;min-height:44px!important}
  .hv-safe-page .hv-mobile-filter-toggle,.hv-safe-page .hv-actions a,.hv-safe-page .hv-actions button{min-height:44px!important}
  .hv-safe-page .hv-summary{margin:10px 2px!important}
  .hv-safe-page .hv-grid{margin-top:2px!important}
  .hv-safe-page .hv-card .hv-img{height:190px!important;min-height:190px!important;max-height:190px!important;padding:10px!important;display:flex!important;align-items:center!important;justify-content:center!important}
  .hv-safe-page .hv-card .hv-img img{width:100%!important;height:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important}
  .checkout-page :is(input,select,textarea),.cart-page :is(input,select,textarea){box-sizing:border-box!important;min-width:0!important;max-width:100%!important;font-size:16px!important}
  .checkout-page :is(button,[role="button"]),.cart-page :is(button,[role="button"]){max-width:100%!important;min-height:44px!important}
  .checkout-page .checkout-option,.checkout-page .checkout-section{min-width:0!important;overflow-wrap:break-word!important}
  .jphaz-footer-brand-grid-v17{min-width:0!important;max-width:100%!important}
  .jphaz-footer-brand-stage-v17 img{object-fit:contain!important;object-position:center!important;max-width:100%!important}
}
@media (max-width:420px){
  .product-detail-page .detail-buy-row{grid-template-columns:minmax(92px,105px) minmax(0,1fr)!important}
  .hv-safe-page .hv-card h3{font-size:15px!important;line-height:1.36!important}
  .hv-safe-page .hv-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important}
  .hv-safe-page .hv-actions a,.hv-safe-page .hv-actions button{min-width:0!important;width:100%!important;font-size:12px!important;white-space:normal!important}
}
@media (prefers-reduced-motion:reduce){
  .hv-safe-page :is(.hv-card,.hv-img img),.product-detail-page :is(.detail-image img,.gallery-thumb img){transition:none!important;animation:none!important;transform:none!important}
}
/* JPHAZ_MOBILE_STABILITY_V2_END */
