/* ========== VENTO — responsive pro (all devices) ========== */
html{overflow-x:clip}
body{overflow-x:clip;max-width:100vw}

img,video,iframe,svg,canvas{max-width:100%;height:auto}
.container,.section,.cine-hero-wrap,.site-header,.site-footer{max-width:100%}

/* Header: never overflow — full-bleed on small screens (no inset gap) */
.site-header-inner{
  min-width:0;
  width:100%;
  max-width:min(var(--vento-max,var(--max,1240px)), calc(100% - 24px));
}
@media (max-width:980px){
  .site-header-inner,
  .site-header .container.site-header-inner{
    max-width:100% !important;
    width:100% !important;
    margin-inline:0 !important;
    border-radius:0 !important;
  }
}
.site-header .main-nav,
.site-header .header-actions,
.site-header .site-brand{min-width:0}
.header-actions{flex-wrap:nowrap;display:flex;align-items:center;gap:clamp(4px,1vw,10px)}
.header-actions .header-design{
  white-space:nowrap;
  max-width:min(180px,34vw);
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:clamp(11px,1.2vw,13px);
  padding-inline:clamp(10px,1.5vw,16px);
}

/* Cine hero responsive */
.cine-hero{min-height:var(--hero-min-h,min(72vh,640px))}
@media(max-width:980px){
  .cine-hero{min-height:var(--hero-min-hm, min(62vh,520px));border-radius:clamp(14px,3vw,22px)}
  .cine-inner{gap:16px;padding:clamp(14px,3vw,22px)}
  .cine-title{font-size:clamp(26px,7vw,42px)!important;line-height:1.15}
  .cine-lead{font-size:13px;max-width:100%}
  .cine-feats{gap:8px;font-size:12px}
  .cine-controls{padding:0 10px 12px;gap:8px}
  .cine-nav{width:40px;height:40px}
}
@media(max-width:640px){
  .cine-hero-wrap{padding:6px 0 0}
  .cine-hero{min-height:var(--hero-min-hm, 420px);border-radius:16px}
  .cine-slide.layout-product-left .cine-inner,
  .cine-slide.layout-product-right .cine-inner{
    display:flex;flex-direction:column;justify-content:flex-end
  }
  .cine-visual{order:-1;max-height:46%;margin:0 auto}
  .cine-float,.cine-float-wrap img{max-height:min(240px,42vh);width:auto;margin:0 auto}
  .cine-copy{width:100%;padding-bottom:8px}
  .cine-eyebrow{font-size:10px}
  .cine-cta{min-height:44px;font-size:13px}
  .cine-hero-note{font-size:11px;padding:8px 12px}
}

/* Grids */
@media(max-width:1100px){
  .product-grid:not(.has-promo){grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:780px){
  .section{padding-block:clamp(36px,8vw,56px)}
  .section-title{font-size:clamp(28px,8vw,40px)!important}
  .section-head{flex-direction:column;align-items:flex-start;gap:12px}
  .product-grid:not(.has-promo){grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .designer-split{grid-template-columns:1fr;gap:22px}
  .designer-visual{min-height:280px}
  .footer-grid{grid-template-columns:1fr!important;gap:24px}
}
@media(max-width:420px){
  .product-card-atc{font-size:11px;min-height:40px;padding:0 8px}
  .product-body{padding:10px}
  .product-body h3{font-size:12px}
  .product-price{font-size:13px}
  .icon-btn,.mobile-toggle{width:40px;height:40px}
  .header-design{display:none} /* keep icons; CTA in mobile menu */
}

/* Safe areas (notch phones) */
@supports(padding:max(0px)){
  .mobile-bar{padding-bottom:max(8px, env(safe-area-inset-bottom))}
  .mobile-menu{padding-bottom:max(20px, env(safe-area-inset-bottom))}
}

/* Tablet landscape */
@media(min-width:781px) and (max-width:1100px){
  .site-header-inner{gap:14px;padding-inline:14px}
  .main-nav a{font-size:12px;padding-inline:6px}
  .header-actions .header-design{max-width:140px}
}

/* Prevent horizontal scroll from absolute layers */
.cine-slide,.cine-inner,.cine-copy,.cine-visual{max-width:100%}
.cine-float-wrap{max-width:100%;display:flex;justify-content:center}

/* Woo loops — Ahura-style desktop/tablet/mobile column tiers */
@media(min-width:981px){
  .woocommerce ul.products{
    display:grid!important;
    grid-template-columns:repeat(var(--shop-cols, 3),minmax(0,1fr));
    gap:var(--card-gap,16px);
  }
  .woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important}
}
@media(min-width:577px) and (max-width:980px){
  .woocommerce ul.products{
    display:grid!important;
    grid-template-columns:repeat(var(--shop-cols-t, 2),minmax(0,1fr));
    gap:12px;
  }
  .woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important}
  .category-grid{grid-template-columns:repeat(var(--cats-cols-t, 3),minmax(0,1fr))}
  .product-grid:not(.has-promo){grid-template-columns:repeat(var(--shop-cols-t, 2),minmax(0,1fr))}
}
@media(max-width:780px){
  .woocommerce ul.products{display:grid!important;grid-template-columns:repeat(var(--shop-now-m, var(--shop-cols-m, 2)),minmax(0,1fr));gap:10px}
  .woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important}
}
@media(max-width:576px){
  .woocommerce ul.products{grid-template-columns:repeat(var(--shop-now-m, var(--shop-cols-m, 2)),minmax(0,1fr));gap:10px}
  .category-grid{grid-template-columns:repeat(var(--cats-cols-m, 2),minmax(0,1fr))!important;gap:10px}
  .feature-row{grid-template-columns:1fr!important}
  .business-grid{grid-template-columns:1fr!important}
  .designer-split{grid-template-columns:1fr!important}
  .btn,.product-card-atc,.header-design,.cine-cta{min-height:44px}
}
@media(max-width:380px){
  .woocommerce ul.products{grid-template-columns:repeat(var(--shop-now-m, var(--shop-cols-m, 2)),minmax(0,1fr));gap:8px}
}

/* Touch targets + overflow (Ahura-clean mobile) */
@media(max-width:980px){
  .site-main,.section,.container{max-width:100%;overflow-x:clip}
  .main-nav a,.icon-btn,.mobile-toggle,.mobile-bar a{min-height:44px;min-width:40px}
  img,video,iframe{max-width:100%;height:auto}
}

/* Elementor home / sections — prevent horizontal bleed */
.elementor-section.elementor-section-boxed > .elementor-container{
  max-width:min(1240px,100%)!important;
}
.elementor-widget-wrap,.elementor-element,.elementor-column-wrap{
  min-width:0;
  max-width:100%;
}
@media(max-width:767px){
  .elementor-section{padding-inline:0!important}
  .elementor .elementor-widget:not(:last-child){margin-bottom:clamp(12px,3vw,22px)}
  .elementor-heading-title{word-wrap:break-word;overflow-wrap:anywhere}
  .elementor-button{min-height:44px;width:auto;max-width:100%}
  .elementor-image img{width:100%;height:auto}
  /* Vento widgets inside Elementor */
  .elementor-widget-vento-hero .cine-hero,
  .elementor-widget-vento_hero .cine-hero{border-radius:0 0 18px 18px}
  .elementor-widget-vento-products .product-grid,
  .elementor-widget-vento_products .product-grid{gap:10px}
  .elementor-widget-vento_categories .category-grid,
  .elementor-widget-vento-categories .cats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}
  .elementor-widget-vento_designer_cta .designer-split{grid-template-columns:1fr!important}
}

/* Studio product: never show shop chrome on any breakpoint */
body.vento-studio-product .woocommerce-breadcrumb,
body.vento-studio-product nav.woocommerce-breadcrumb{display:none!important}
