/* ================================================================
   BELLIONÉ — RESPONSIVE (B&W Luxury Edition)
   Mobile-first. Shopify-grade breakpoints.
   ================================================================ */

/* Touch: hide cursor */
@media(hover:none) and (pointer:coarse){
  #bel-cursor,#bel-cursor-ring{display:none!important;}
  body{cursor:auto!important;}
  a,button{cursor:pointer!important;}
}

/* iOS font-size fix */
input[type="text"],input[type="email"],input[type="tel"],
input[type="number"],input[type="password"],select,textarea{font-size:16px!important;}

/* Touch momentum */
.bel-lookbook-scroll,.bel-mobile-menu{-webkit-overflow-scrolling:touch;}

/* ── TOPBAR ── */
@media(max-width:479px){
  .bel-topbar{font-size:.52rem;letter-spacing:.12em;overflow-x:auto;scrollbar-width:none;white-space:nowrap;}
  .bel-topbar::-webkit-scrollbar{display:none;}
}

/* ── NAV ── */
@media(max-width:1023px){
  .bel-nav-left{display:none!important;}
  .bel-hamburger{display:flex!important;}
  .bel-nav-wrap{grid-template-columns:auto 1fr auto;padding:.8rem 1.2rem;}
  .bel-nav-right{gap:1rem;}
  .bel-nav-right>a:not(.bel-cart-link){display:none;}
}
@media(max-width:479px){
  .bel-logo-main{font-size:1rem;letter-spacing:.25em;}
  .bel-cart-link{padding:.38rem .8rem;font-size:.55rem;}
}

/* ── NAV icon vs text ── */
.bel-nav-icon{display:none;}
.bel-nav-text{display:inline;}
@media(max-width:1023px){
  .bel-nav-icon{display:inline;font-size:1rem;}
  .bel-nav-text{display:none;}
}

/* ── MOBILE MENU ── */
.bel-mob-backdrop{display:none;position:fixed;inset:0;z-index:9400;background:rgba(12,12,12,.4);}

/* ── HERO ── */
@media(max-width:1023px){
  .bel-hero-body{padding:7rem 1.4rem 3rem;}
  .bel-hero-left{max-width:100%;}
  .bel-hero-bg-word{opacity:.03;font-size:clamp(8rem,20vw,16rem);}
}
@media(max-width:767px){
  .bel-hero{min-height:100svh;}
  .bel-hero-body{padding:5.5rem 1.2rem 2.5rem;align-items:flex-end;}
  .bel-hero-h1{font-size:clamp(2.8rem,13vw,5rem)!important;}
  .bel-hero-desc{font-size:.98rem;}
  .bel-hero-btns .bel-btn-primary,
  .bel-hero-btns .bel-btn-outline{width:100%;justify-content:center;padding:.9rem;}
  .bel-hero-stats{gap:1.2rem;justify-content:space-between;}
  .bel-stat-num{font-size:1.5rem;}
  .bel-hero-bg-word{display:none;}
  .bel-hero-line{display:none;}
}
@media(max-width:479px){
  .bel-hero-h1{font-size:clamp(2.4rem,11vw,3.5rem)!important;}
  .bel-hero-stats{gap:.8rem;flex-wrap:wrap;}
}

/* ── SECTIONS ── */
@media(max-width:1023px){.bel-section{padding:4rem 0;}.bel-container{padding:0 1.4rem;}}
@media(max-width:767px){.bel-section{padding:3rem 0;}.bel-container{padding:0 1.1rem;}.bel-section-title{font-size:clamp(1.5rem,6vw,2.2rem);}.bel-section-header{margin-bottom:1.8rem;}}
@media(max-width:479px){.bel-container{padding:0 .9rem;}}

/* ── CATEGORIES ── */
@media(max-width:1023px){
  .bel-cats-grid{grid-template-columns:repeat(2,1fr);}
  .bel-cat-item:first-child{grid-column:span 2;grid-row:auto;aspect-ratio:16/7;}
}
@media(max-width:767px){
  .bel-cats-grid{gap:0;}
  .bel-cat-item:first-child{aspect-ratio:16/9;}
  .bel-cat-cta{opacity:1!important;transform:none!important;}
}
@media(max-width:479px){
  .bel-cats-grid{grid-template-columns:1fr 1fr;}
  .bel-cat-item:first-child{grid-column:span 2;aspect-ratio:16/8;}
}

/* ── EDITORIAL ── */
@media(max-width:1023px){
  .bel-editorial-wrap{grid-template-columns:1fr;}
  .bel-ed-visual{min-height:320px;}
  .bel-ed-text{padding:2.5rem;}
}
@media(max-width:767px){
  .bel-ed-visual{min-height:260px;}
  .bel-ed-text{padding:1.8rem;}
  .bel-ed-title{font-size:clamp(1.6rem,6vw,2.2rem);}
  .bel-ed-features{grid-template-columns:1fr;}
  .bel-btn-primary,.bel-btn-outline{width:100%;justify-content:center;}
}

/* ── PRODUCTS ── */
@media(hover:none) and (pointer:coarse){
  .bel-quick-add{transform:none!important;}
  .bel-wishlist-btn{opacity:1!important;}
}
@media(max-width:1279px){.bel-products-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:767px){
  .bel-products-grid{grid-template-columns:repeat(2,1fr);gap:1px;background:var(--border);}
  .bel-product-card{background:var(--white);padding:.1rem;}
  .bel-product-meta{padding:.1rem .2rem .8rem;}
}
@media(max-width:479px){.bel-products-grid{grid-template-columns:repeat(2,1fr);}}

/* WooCommerce shop grid */
@media(max-width:1279px){.woocommerce ul.products{grid-template-columns:repeat(3,1fr)!important;}}
@media(max-width:767px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important;gap:0!important;}}

/* ── SHOP PAGE ── */
@media(max-width:1023px){
  .bel-shop-layout{grid-template-columns:1fr;}
  .bel-shop-filters{position:fixed!important;top:0!important;left:-100%!important;bottom:0!important;z-index:9500!important;width:min(85vw,300px)!important;transition:left .35s cubic-bezier(.4,0,.2,1)!important;overflow-y:auto!important;border-right:1px solid var(--border)!important;}
  .bel-shop-filters.open{left:0!important;}
  .bel-filters-close{display:block!important;}
  .bel-filter-toggle{display:flex!important;}
}
@media(min-width:1024px){.bel-filter-toggle{display:none!important;}.bel-filters-close{display:none!important;}}

/* ── HERITAGE ── */
@media(max-width:1023px){.bel-heritage-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:767px){.bel-heritage{padding:3rem 0;}.bel-heritage-grid{padding:0 1.1rem;}}
@media(max-width:479px){.bel-heritage-grid{grid-template-columns:1fr;text-align:left;}.bel-h-item{display:flex;gap:1rem;align-items:flex-start;}.bel-heritage-icon{margin-bottom:0;flex-shrink:0;margin-top:.1rem;}}

/* ── LOOKBOOK ── */
@media(max-width:767px){
  .bel-look-card{flex:0 0 62vw;max-width:220px;}
}
@media(max-width:479px){.bel-look-card{flex:0 0 68vw;}}

/* ── TESTIMONIALS ── */
@media(max-width:1023px){.bel-testimonials-grid{grid-template-columns:1fr 1fr;}.bel-t-card:last-child{display:none;}}
@media(max-width:767px){
  .bel-testimonials-grid{display:flex;overflow-x:auto;gap:0;scrollbar-width:none;grid-template-columns:unset;border:none;}
  .bel-testimonials-grid::-webkit-scrollbar{display:none;}
  .bel-t-card{flex:0 0 88vw;max-width:340px;border:1px solid var(--border);border-right:none;}
  .bel-t-card:last-child{display:flex;border-right:1px solid var(--border);}
}

/* ── NEWSLETTER ── */
@media(max-width:1023px){.bel-newsletter-inner{grid-template-columns:1fr;gap:2.5rem;padding:4rem 1.4rem;}}
@media(max-width:767px){.bel-newsletter-inner{padding:3rem 1.1rem;}.bel-nl-title{font-size:clamp(1.5rem,6vw,2rem);}}

/* ── FOOTER ── */
@media(max-width:1023px){.bel-footer-top{grid-template-columns:1fr 1fr;gap:2rem;}}
@media(max-width:767px){
  .bel-footer-top{grid-template-columns:1fr;padding:3rem 1.1rem 2.5rem;gap:0;}
  .bel-footer-col-title{cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:.8rem 0;border-bottom:1px solid var(--border);margin-bottom:0;}
  .bel-footer-col-title::after{content:'+';font-size:.9rem;font-family:'Jost',sans-serif;}
  .bel-footer-col-title.open::after{content:'−';}
  .bel-footer-links{display:none;padding:.8rem 0 1rem;}
  .bel-footer-links.open{display:block;}
  /* Brand always shown */
  .bel-footer-brand-col .bel-footer-col-title::after{display:none;}
  .bel-footer-brand-col .bel-footer-links{display:block;}
  .bel-footer-bottom{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.2rem 1.1rem 2rem;}
}

/* ── SINGLE PRODUCT ── */
@media(max-width:1023px){.bel-product-layout{grid-template-columns:1fr;gap:2rem;}}
@media(max-width:767px){.woocommerce div.product .images,.woocommerce div.product .summary{float:none!important;width:100%!important;}}

/* ── CART / CHECKOUT ── */
@media(max-width:767px){
  .woocommerce-cart .cart-collaterals,.woocommerce-cart .woocommerce{width:100%!important;float:none!important;}
  .woocommerce-checkout .col-1,.woocommerce-checkout .col-2{float:none!important;width:100%!important;}
}

/* ── MOBILE STICKY BOTTOM BAR ── */
.bel-mobile-bar{display:none;}
@media(max-width:767px){
  .bel-mobile-bar{
    display:flex!important;position:fixed;bottom:0;left:0;right:0;z-index:800;
    background:rgba(255,255,255,.98);
    backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
    border-top:1px solid var(--border);
    padding:.55rem 1rem;
    padding-bottom:calc(.55rem + env(safe-area-inset-bottom));
    gap:.4rem;
  }
  .bel-mob-bar-btn{
    flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:.18rem;font-family:'Jost',sans-serif;font-size:.44rem;letter-spacing:.1em;
    text-transform:uppercase;color:var(--muted2);padding:.35rem .2rem;
    background:none;border:none;text-decoration:none;cursor:pointer;transition:color .2s;
    min-height:44px;
  }
  .bel-mob-bar-btn.active,.bel-mob-bar-btn:hover{color:var(--black);}
  .bel-mob-bar-icon{font-size:1rem;line-height:1;display:block;}
  .bel-mob-bar-cart{
    flex:1.5;background:var(--black);color:var(--white)!important;
    font-family:'Jost',sans-serif;font-size:.54rem;letter-spacing:.14em;
    text-transform:uppercase;display:flex;align-items:center;justify-content:center;
    gap:.4rem;padding:.6rem;border:1px solid var(--black);text-decoration:none;
    min-height:44px;transition:background .2s;
  }
  .bel-mob-bar-cart:hover{background:var(--ink2);color:var(--white)!important;}
  .bel-mob-bar-count{
    background:var(--white);color:var(--black);width:16px;height:16px;
    border-radius:50%;font-size:.46rem;font-weight:600;
    display:flex;align-items:center;justify-content:center;
  }
  body{padding-bottom:calc(60px + env(safe-area-inset-bottom));}
}

/* ── SCROLL HINT ── */
@media(max-width:767px){.bel-scroll-hint{display:block;}}

/* ── LARGE SCREENS ── */
@media(min-width:1400px){.bel-products-grid{grid-template-columns:repeat(4,1fr);}.woocommerce ul.products{grid-template-columns:repeat(4,1fr)!important;}}
@media(min-width:1600px){.bel-products-grid{grid-template-columns:repeat(5,1fr);}.woocommerce ul.products{grid-template-columns:repeat(5,1fr)!important;}}

/* ── PRINT ── */
@media print{
  #masthead,.bel-topbar,.bel-mobile-bar,.bel-marquee-bar,.bel-newsletter,footer{display:none!important;}
  body{background:white!important;color:black!important;}
}

/* ── Footer accordion — mobile ── */
@media (max-width: 767px) {
    .bel-footer-col-title {
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: .85rem 0 !important;
        border-bottom: 1px solid rgba(107,16,16,.15) !important;
        margin-bottom: 0 !important;
        user-select: none !important;
        -webkit-user-select: none !important;
    }
    .bel-footer-col-title::after {
        content: '+' !important;
        font-size: 1rem !important;
        color: #6b1010 !important;
        font-weight: 400 !important;
        flex-shrink: 0 !important;
    }
    .bel-footer-col-title.open::after,
    .bel-footer-col-title.bel-open::after {
        content: '−' !important;
    }
    /* Hidden by default */
    .bel-footer-links,
    .bel-footer-top > div > ul,
    .bel-footer-top > div > nav > ul {
        display: none !important;
    }
    /* Show when open */
    .bel-footer-links.open,
    .bel-footer-links.bel-open,
    .bel-footer-top > div > ul.open,
    .bel-footer-top > div > ul.bel-open,
    .bel-footer-top > div > nav > ul.open,
    .bel-footer-top > div > nav > ul.bel-open {
        display: block !important;
        padding: .6rem 0 1rem !important;
    }
    /* Brand column always visible */
    .bel-footer-top > div:first-child > ul,
    .bel-footer-top > div:first-child > nav { display: flex !important; }
}
