/* home-cc.css — Homepage styles */

/* 1. Top Promo Bar */
.top-promo{background:var(--primary);color:#fff;font-size:0.149333rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:0.133333rem 0}

/* 2. Header */
.site-header{position:sticky;top:0;z-index:1000;backdrop-filter:blur(0.16rem);background:rgba(249,249,255,.86);border-bottom:0.013333rem solid var(--border-soft)}
.brand-wordmark{font-weight:900;letter-spacing:-.02em;font-size:0.273067rem;color:var(--text)}
.nav-link-k{font-size:0.174933rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text);padding-bottom:0.026667rem;transition:color .2s}
.nav-link-k:hover,.nav-link-k.active{color:var(--primary)}
.nav-link-k.active{border-bottom:0.026667rem solid var(--primary)}
.header-search{background:var(--bg-alt);border:0.013333rem solid var(--border-soft);border-radius:13.32rem;padding:0.106667rem 0.213333rem;display:flex;align-items:center;gap:0.106667rem}
.header-search-submit{border:0;background:transparent;padding:0;display:flex;align-items:center;justify-content:center;color:var(--text);cursor:pointer}
.header-search-submit svg{width:0.24rem;height:0.24rem}
.header-search input{border:0;background:transparent;outline:none;font-size:0.181333rem;width:2.4rem}
.icon-btn{border:0;background:transparent;font-size:0.298667rem;color:var(--text);cursor:pointer;padding:0.053333rem;transition:transform .2s}
.icon-btn:hover{transform:scale(.92)}

/* 3. Hero */
.hero{position:relative;min-height:9.6rem;display:flex;align-items:center;overflow:hidden;background:var(--bg-alt)}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.85;mix-blend-mode:overlay}
.hero-gradient{position:absolute;inset:0;background:linear-gradient(90deg,var(--bg) 0%,rgba(249,249,255,.4) 40%,transparent 70%)}
.hero-content{position:relative;z-index:1;width:19.2rem}
.hero-title{font-size:clamp(0.469333rem,6vw,0.96rem);font-weight:900;line-height:.9;letter-spacing:-.03em;text-transform:uppercase;font-style:italic;margin:0.266667rem 0 0.373333rem}
.hero-copy{color:var(--text-muted);margin-bottom:0.4rem;max-width:9.3333rem; font-size: .3733rem;}

/* 4. Featured Brands Bento */
.bento-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:auto auto;gap:0.266667rem}
.bento-main{grid-column:1/3;grid-row:1/3;position:relative;border-radius:var(--radius-lg);overflow:hidden;height:6.72rem}
.bento-main img,.bento-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.bento-main:hover img,.bento-card:hover img{transform:scale(1.06)}
.bento-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,27,43,.6) 0%,rgba(20,27,43,.15) 50%,transparent 100%);display:flex;align-items:flex-end;padding:0.373333rem;color:#fff}
.bento-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;height:3.2rem;display:flex;align-items:center;justify-content:center}
.bento-card-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.bento-card-overlay h3{font-size:0.426667rem;font-weight:900;font-style:italic;text-transform:uppercase}
.bento-wide{grid-column:3/5}

/* 5. Best Sellers */
.product-card{background:var(--surface);border-radius:var(--radius-lg);padding:0.266667rem;height:100%;transition:transform .25s,box-shadow .25s}
.product-card:hover{transform:translateY(-0.053333rem);box-shadow:var(--shadow-soft)}
.product-media{border-radius:var(--radius-md);overflow:hidden;background:var(--bg-alt);aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;position:relative}
.product-media img{height:80%;object-fit:contain;transition:transform .4s}
.product-card:hover .product-media img{transform:scale(1.08)}
.product-badge{position:absolute;top:0.16rem;left:0.16rem}
.product-brand{margin:0.16rem 0 0.053333rem;color:var(--text-muted);font-size:0.138667rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.product-name{margin:0;font-size:0.213333rem;font-weight:800;min-height:0.586667rem;line-height:1.3}
.product-name a{color:inherit}
.product-name a:hover{color:inherit}
.product-price{font-size:0.245333rem;font-weight:900;margin-top:0.106667rem}
.product-cart-btn{position:relative;border:0;background:var(--surface-dim);padding:0.106667rem;border-radius:var(--radius-sm);color:var(--primary);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;min-width:0.533333rem;min-height:0.533333rem}
.product-cart-btn:hover{background:var(--primary);color:#fff}
.product-cart-btn.is-loading,.product-cart-btn.is-success{color:#fff}
.product-cart-btn.is-loading{background:#111827}
.product-cart-btn.is-success{background:#15803d}
.product-cart-btn.is-loading svg,.product-cart-btn.is-success svg{opacity:0}
.product-cart-btn.is-loading::after,.product-cart-btn.is-success::after{font-size:0.112rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.product-cart-btn.is-loading::after{content:"..."}
.product-cart-btn.is-success::after{content:"OK"}
.product-cart-btn svg{ width: .32rem; height: .32rem;}
.home-cart-toast{position:fixed;top:1.2rem;right:0.32rem;z-index:1200;min-width:2.4rem;max-width:4.2rem;padding:0.173333rem 0.213333rem;border-radius:var(--radius-md);background:#111827;color:#fff;font-size:0.149333rem;font-weight:800;line-height:1.4;box-shadow:0 0.16rem 0.48rem rgba(17,24,39,.24);opacity:0;transform:translateY(-0.16rem);pointer-events:none;transition:opacity .24s ease,transform .24s ease}
.home-cart-toast.is-visible{opacity:1;transform:translateY(0)}
.home-cart-toast.is-error{background:#b91c1c}

/* 6. New Arrivals */
.new-card{display:flex;background:var(--surface-dim);padding:0.213333rem;border-radius:var(--radius-lg);gap:0.213333rem;align-items:center;transition:background .2s;cursor:pointer}
.new-card:hover{background:#dce2f7}
.new-card-img{width:1.173333rem;height:1.173333rem;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background:#fff;display:flex;align-items:center;justify-content:center;padding:0.08rem}
.new-card-img img{height:100%;object-fit:contain}
.new-card-body h4{margin:0 0 0.026667rem;font-weight:700;font-size:0.202667rem}
.new-card-body .desc{color:var(--text-muted);font-size:0.1664rem;margin:0}
.new-card-body .price{font-weight:900;font-size:0.192rem;margin-top:0.08rem; margin-bottom: 0;}

/* 7. Articles (dark bg) */
.articles-dark{background:var(--text);color:#fff;padding:1.066667rem 0}
.articles-dark .section-title{color:#fff}
.article-card{cursor:pointer}
.article-card .thumb{aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden;margin-bottom:0.213333rem}
.article-card .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.article-card:hover .thumb img{transform:scale(1.05)}
.article-card .tag{font-size:0.132267rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--primary-strong);margin-bottom:0.106667rem;display:block}
.article-card h3{font-size:0.234667rem;font-weight:700;line-height:1.35;margin:0 0 0.133333rem;transition:color .2s}
.article-card:hover h3{color:var(--primary-strong)}
.article-card .excerpt{color:rgba(255,255,255,.55);font-size:0.181333rem;margin:0}

/* 8. Brand Story */
.story-section{padding:1.066667rem 0}
.story-img-wrap{position:relative}
.story-img-wrap img{border-radius:var(--radius-lg);width:100%;object-fit:cover}
.story-badge{position:absolute;bottom:-0.266667rem;right:-0.133333rem;background:var(--surface);padding:0.266667rem 0.32rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);text-align:center}
.story-badge .num{font-size:0.512rem;font-weight:900;font-style:italic;color:var(--primary);line-height:1}
.story-badge .label{font-size:0.138667rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}
.story-feature{display:flex;gap:0.186667rem;align-items:flex-start}
.story-feature .icon-box{padding:0.133333rem;background:var(--surface-dim);border-radius:var(--radius-sm);color:var(--primary);flex-shrink:0}
.story-feature h4{font-weight:700;text-transform:uppercase;letter-spacing:.02em;margin:0 0 0.053333rem;font-size:0.192rem}
.story-feature p{color:var(--text-muted);font-size:0.181333rem;margin:0}
.story-feature svg{ width: 0.293333rem; height: 0.293333rem;}

/* 9. Reviews */
.review-section{background:var(--bg-alt);padding:1.066667rem 0}
.review-card{background:var(--surface);border-radius:var(--radius-lg);padding:0.373333rem;height:100%}
.review-stars{display:flex;gap:0.026667rem;margin-bottom:0.186667rem}
.review-stars svg{width:0.213333rem;height:0.213333rem;fill:var(--primary)}
.review-text{font-style:italic;margin-bottom:0.266667rem;line-height:1.6}
.review-author{display:flex;align-items:center;gap:0.16rem}
.review-avatar{width:0.533333rem;height:0.533333rem;border-radius:50%;overflow:hidden;background:#ddd}
.review-avatar img{width:100%;height:100%;object-fit:cover}
.review-name{font-weight:700;font-size:0.187733rem}
.review-role{font-size:0.132267rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}

/* 10. FAQ */
.faq-section{padding:1.066667rem 0}
.faq-item{background:var(--bg-alt);border-radius:var(--radius-lg);margin-bottom:0.16rem;overflow:hidden;transition:background .2s}
.faq-item.open{background:var(--surface-dim)}
.faq-btn{width:100%;border:0;background:transparent;text-align:left;padding:0.266667rem 0.32rem;font-size:0.202667rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;display:flex;justify-content:space-between;align-items:center;cursor:pointer}
.faq-btn .arrow{transition:transform .3s;font-size:0.256rem}
.faq-item.open .faq-btn .arrow{transform:rotate(180deg)}
.faq-body{padding:0 0.32rem 0.266667rem;color:var(--text-muted);font-size:0.192rem;line-height:1.6;display:none}
.faq-item.open .faq-body{display:block}

/* 11. Footer */
.site-footer{background:var(--bg-alt);padding:0.8rem 0 0.373333rem;font-size:0.187733rem}
.footer-brand{font-size:0.234667rem;font-weight:900;margin-bottom:0.186667rem}
.footer-desc{color:var(--text-muted);margin-bottom:0.213333rem;font-size:0.181333rem}
.footer-social{display:flex;gap:0.133333rem}
.footer-social a{width:0.453333rem;height:0.453333rem;border-radius:50%;background:var(--surface-dim);display:flex;align-items:center;justify-content:center;color:var(--primary);transition:all .2s}
.footer-social a:hover{background:var(--primary);color:#fff}
.footer-social svg,.footer-social img{ width: .2933rem; height: .2933rem;}
.footer-social img{object-fit:contain}
.footer-social span{font-size:0.1664rem;font-weight:900;line-height:1}
.footer-social-empty{font-size:0.1664rem;color:var(--text-muted);margin:0}
.footer-heading{font-weight:900;text-transform:uppercase;letter-spacing:.1em;font-size:0.1536rem;margin-bottom:0.186667rem}
.footer-links a{display:block;color:var(--text-muted);margin-bottom:0.106667rem;font-size:0.181333rem;transition:color .2s}
.footer-links a:hover{color:var(--primary)}
.footer-newsletter input{border:0.013333rem solid var(--border-soft);border-radius:var(--radius-sm);padding:0.133333rem 0.186667rem;font-size:0.181333rem;width:100%;margin-bottom:0.106667rem;outline:none; background-color: #fff;}
.footer-newsletter input:focus{border-color:var(--primary)}
.footer-bottom{border-top:0.013333rem solid var(--border-soft);margin-top:0.533333rem;padding-top:0.266667rem;font-size:0.1664rem;color:var(--text-muted)}

/* Section spacing */
.sec-pad{padding:1.066667rem 0}
.sec-alt{background:var(--bg-alt)}

/* Responsive */
@media(max-width:74.99875rem){
  .bento-grid{grid-template-columns:1fr 1fr}
  .bento-main{grid-column:1/3;grid-row:auto;min-height:4.8rem}
  .bento-wide{grid-column:1/3}
}
@media(max-width:61.99875rem){
  .hero{min-height:7.466667rem}
  .sec-pad{padding:0.8rem 0}
  .articles-dark{padding:0.8rem 0}
  .review-section,.faq-section,.story-section{padding:0.8rem 0}
  .top-promo{font-size:0.128rem}
}
@media(max-width:47.99875rem){
  .brand-wordmark{font-size:0.213333rem}
  .hero-title{font-size:clamp(0.384rem,8vw,0.554667rem)}
  .bento-grid{grid-template-columns:1fr}
  .bento-main{grid-column:auto;min-height:3.733333rem}
  .bento-wide{grid-column:auto}
  .sec-pad{padding:0.64rem 0}
  .product-cart-btn{min-width:0.64rem;min-height:0.64rem}
  .product-cart-btn.is-loading::after,.product-cart-btn.is-success::after{font-size:0.128rem}
  .home-cart-toast{top:1.6rem;right:0.213333rem;left:0.213333rem;min-width:0;max-width:none;padding:0.2rem 0.24rem;font-size:0.16rem}
  .faq-btn{font-size:0.187733rem}
  .story-badge{display:none}
  .header-search{display:none!important}
}
