/*
Theme Name: Fluffy But Fit Pro v2
Theme URI: https://fluffybut.fit
Author: Fluffy But Fit
Description: Pro-dark ecommerce theme with full-bleed hero, polished cards, and WooCommerce templates.
Version: 2.2.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: fluffybutfit
*/

:root { --c-bg:#111111; --c-panel:#181818; --c-text:#F5F5F5;
  --c-accent:#B80000; --c-muted:#B3B3B3;
  --radius:14px; --r2:22px;
  --space-1:.5rem; --space-2:.75rem; --space-3:1rem; --space-4:1.5rem; --space-5:2rem; --space-6:3rem;
  --max:1200px;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--c-bg);color:var(--c-text)}
body{font-family:'Montserrat',system-ui,sans-serif;line-height:1.6}
img{max-width:100%;height:auto}
a{color:var(--c-text);text-decoration:none}
a:focus{outline:2px dashed var(--c-accent);outline-offset:3px}
.screen-reader-text{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

h1,h2,h3{font-family:'Anton','Montserrat',sans-serif;letter-spacing:.2px;margin:0 0 .6rem}
h1{font-size:clamp(2.2rem,4.5vw,3.5rem);line-height:1.05}
h2{font-size:clamp(1.6rem,3vw,2.2rem)}
h3{font-size:1.25rem;font-weight:900}
p{color:#d7d7d7}

.container{width:min(var(--max),92%);margin-inline:auto}
.panel{background:var(--c-panel);border-radius:var(--r2);box-shadow:0 10px 30px rgba(0,0,0,.35);border:1px solid #222}
.section-wrap{margin:var(--space-6) 0}

/* Header */
.site-header{position:sticky;top:0;z-index:80;background:rgba(17,17,17,.92);backdrop-filter:saturate(120%) blur(6px);border-bottom:1px solid #1e1e1e}
.header-inner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0}
.brand a{display:flex;align-items:center;gap:.6rem;font-weight:900}
.nav .menu{list-style:none;display:flex;gap:.6rem;margin:0;padding:0}
.nav .menu a{display:inline-block;padding:.55rem .9rem;border-radius:999px;transition:background .18s,color .18s,transform .04s;color:var(--c-text)}
.nav .menu a:hover,.nav .menu a:focus-visible{background:var(--c-accent);color:#fff}
.nav .menu a:active{transform:translateY(1px)}
.header-actions{margin-left:auto;display:flex;align-items:center;gap:.6rem}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;background:#1d1d1d;border:1px solid #2a2a2a}
.icon-btn:hover{background:#232323}
.cart-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;border-radius:999px;background:var(--c-accent);color:#fff;font-size:.7rem;display:grid;place-items:center;padding:0 .25rem}

/* Mobile */
.burger{display:none}
@media (max-width:900px){
  .nav{display:none}
  .burger{display:inline-flex}
  .mobile-drawer{position:fixed;inset:0 0 0 auto;width:min(86vw,360px);background:#101010;border-left:1px solid #2a2a2a;transform:translateX(100%);transition:transform .25s;z-index:120}
  .mobile-drawer.open{transform:none}
  .mobile-drawer .menu{flex-direction:column;padding:var(--space-4)}
  .mobile-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);opacity:0;pointer-events:none;transition:opacity .2s;z-index:110}
  .mobile-overlay.show{opacity:1;pointer-events:auto}
}

/* Hero */
.hero-fullbleed{position:relative;margin:0 calc(50% - 50vw);width:100vw;min-height:56vh;background-position:center;background-size:cover;background-repeat:no-repeat;display:block}
.hero-fullbleed .hero-inner{display:grid;align-items:center;min-height:56vh;padding:3.5rem 0}
@media(max-width:900px){.hero-fullbleed .hero-inner{min-height:48vh;padding:2.5rem 0}}
.hero-fullbleed .hero-copy{max-width:760px}
.hero-fullbleed .sub{color:#d0d0d0;max-width:60ch}
.hero-fullbleed .hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,17,17,.85)0%,rgba(17,17,17,.55)40%,rgba(17,17,17,.15)100%);pointer-events:none;border-bottom:1px solid #1e1e1e}

/* Trust strip */
.trust-strip{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}
.trust-strip .pill{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:999px;padding:.45rem .75rem;color:#e6e6e6}

/* Product cards */
.products.grid-cards{display:grid;gap:var(--space-3)}
@media (min-width:1200px){.products.grid-cards{grid-template-columns:repeat(4,1fr)}}
@media (min-width:900px) and (max-width:1199.98px){.products.grid-cards{grid-template-columns:repeat(3,1fr)}}
@media (min-width:600px) and (max-width:899.98px){.products.grid-cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:599.98px){.products.grid-cards{grid-template-columns:1fr}}

.product-card{overflow:hidden;display:flex;flex-direction:column;border-radius:var(--r2)}
.product-card .thumb-inner{position:relative;aspect-ratio:1/1;background:#0f0f0f}
.thumb-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .25s}
.thumb-img.hover{opacity:0}
.product-card:hover .thumb-img.hover{opacity:1}
.product-card:hover .thumb-img.primary{opacity:0}
.product-card .meta{padding:var(--space-3)}
.product-card .title{font-family:'Anton',sans-serif;letter-spacing:.3px}
.product-card .price{font-weight:800}
.product-card .card-actions .button{width:100%}

/* Shop filters */
.shop-filters{padding:var(--space-3);margin:var(--space-3) 0;display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:flex-end}
.shop-filters .filter label{display:block;margin-bottom:.35rem;font-weight:800}
.shop-filters select, .shop-filters input[type=number]{background:#141414;border:1px solid #2a2a2a;color:#fff;padding:.6rem .75rem;border-radius:10px}
.shop-filters .actions{margin-left:auto}

/* Crew grid */
.crew-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(5,minmax(160px,1fr))}
@media (max-width:1200px){.crew-grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:900px){.crew-grid{grid-template-columns:repeat(2,1fr)}}
.crew-card{padding:var(--space-2);text-align:center}
.crew-img-wrap{aspect-ratio:1/1;background:#0f0f0f;border-radius:var(--r2);display:grid;place-items:center;overflow:hidden}
.crew-img-wrap img{width:100%;height:100%;object-fit:contain}
.crew-caption{margin-top:.5rem;font-weight:900;letter-spacing:.4px;text-transform:uppercase;color:#ddd}

/* Email signup */
.email-strip{padding:var(--space-3);margin:var(--space-6) 0;display:flex;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}
.email-form{display:flex;gap:.6rem;flex-wrap:wrap}
.email-form input[type="email"]{min-width:260px;background:#141414;border:1px solid #2a2a2a;color:#fff;padding:.7rem .9rem;border-radius:999px}

/* Footer */
.site-footer{margin-top:var(--space-6);border-top:1px solid #1e1e1e;padding:var(--space-5) 0;color:#bdbdbd}
.site-footer .menu{list-style:none;display:flex;gap:.6rem;margin:0 0 var(--space-2);padding:0}
.site-footer .menu a{padding:.35rem .6rem;border-radius:999px}
.site-footer .menu a:hover{background:#202020}
/* Mobile drawer menu reset & styling */
@media (max-width:900px){
  .mobile-drawer .menu{
    list-style: none;           /* remove bullets */
    margin: 0;
    padding: 1rem;              /* space inside drawer */
    display: flex;
    flex-direction: column;
    gap: .25rem;
  }
  .mobile-drawer .menu li{ margin: 0; padding: 0; }
  .mobile-drawer .menu a{
    display: block;
    padding: .9rem 1rem;
    border-radius: 12px;
    color: var(--c-text);
  }
  .mobile-drawer .menu a:hover,
  .mobile-drawer .menu a:focus-visible{
    background: #1d1d1d;
  }
}
/* ===== Desktop bullet nuke around header band ===== */
.site-header ul,
.site-header + ul,
.site-header + * > ul:first-child,
body > ul,
body > div > ul,
#page > ul,
.entry-content > ul.wp-block-page-list,
nav.wp-block-navigation ul {
  list-style: none !important;
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

