:root{
  --gold:#C9A84C;--gold-l:#E8C96A;--gold-d:#A8873A;
  --black:#080808;--dark:#111;--dark2:#181818;--dark3:#222;--dark4:#2a2a2a;
  --gray:#888;--gray-l:#bbb;--light:#F5F5F0;--white:#fff;
  --red:#E74C3C;--green:#2ECC71;--blue:#3498DB;
  --radius:6px;--radius-lg:12px;
  --shadow:0 8px 32px rgba(0,0,0,.5);--shadow-sm:0 2px 8px rgba(0,0,0,.3);
  --transition:.2s ease;--gold-glow:0 0 20px rgba(201,168,76,.25);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{font-family:'DM Sans',sans-serif;background:var(--dark);color:var(--light);line-height:1.6}
a{text-decoration:none;color:inherit}
button{cursor:pointer;font-family:inherit}
input,select,textarea{font-family:inherit}

/* ── SCROLLBAR ── */
::-webkit-scrollbar{width:7px;height:7px}
::-webkit-scrollbar-track{background:rgba(255,255,255,.04)}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,.25);border-radius:4px}
::-webkit-scrollbar-thumb:hover{background:rgba(201,168,76,.7)}
* { scrollbar-width:thin; scrollbar-color:rgba(255,255,255,.25) transparent }

/* ── LOADING ── */
#loading{position:fixed;inset:0;background:var(--black);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;transition:opacity .5s ease}
body.loaded #loading{opacity:0!important;pointer-events:none!important;display:none!important}
#loading .logo-text{font-family:'Bebas Neue',sans-serif;font-size:5rem;letter-spacing:.2em;color:var(--gold);animation:glow 1.5s ease-in-out infinite}
#loading .load-bar{width:200px;height:2px;background:var(--dark3);border-radius:1px;margin-top:2rem;overflow:hidden}
#loading .load-fill{height:100%;background:var(--gold);animation:loadfill 1.2s ease forwards}
@keyframes glow{0%,100%{text-shadow:0 0 10px rgba(201,168,76,.3)}50%{text-shadow:0 0 40px rgba(201,168,76,.8)}}
@keyframes loadfill{from{width:0}to{width:100%}}

/* ── VIEWS ── */
.view{display:none}.view.active{display:block}

/* ── HEADER ── */
#hdr{position:sticky;top:0;z-index:9998;overflow:visible;background:rgba(8,8,8,.95);backdrop-filter:blur(20px);border-bottom:1px solid rgba(201,168,76,.15);transition:box-shadow var(--transition)}
#hdr.scrolled{box-shadow:0 4px 30px rgba(0,0,0,.6)}
.hdr-inner{display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:70px;max-width:1440px;margin:0 auto;gap:1rem}
.logo{font-family:'Bebas Neue',sans-serif;font-size:2.2rem;color:var(--gold);letter-spacing:.15em;cursor:pointer;flex-shrink:0;transition:text-shadow var(--transition)}
.logo:hover{text-shadow:var(--gold-glow)}
.logo span{color:var(--white)}
.main-nav{display:flex;gap:.25rem;align-items:center;position:relative}
.main-nav>a{color:var(--gray-l);font-size:.82rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;padding:.5rem .75rem;border-radius:var(--radius);transition:all var(--transition);cursor:pointer;white-space:nowrap}
.main-nav>a:hover,.main-nav>a.active{color:var(--gold);background:rgba(201,168,76,.08)}
.nav-cta{color:var(--gold)!important;border:1px solid rgba(201,168,76,.35)!important;padding:.4rem 1rem!important}
.nav-cta:hover{background:var(--gold)!important;color:var(--black)!important}
.hdr-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}
.icon-btn{background:none;border:none;color:var(--gray-l);font-size:1.2rem;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition);position:relative}
.icon-btn:hover{color:var(--gold);background:rgba(201,168,76,.1)}
.badge{position:absolute;top:2px;right:2px;background:var(--gold);color:var(--black);border-radius:10px;min-width:18px;height:18px;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;color:var(--light);padding:.5rem}
.hamburger span{display:block;width:22px;height:2px;background:currentColor;transition:var(--transition)}

/* ── MOBILE NAV ── */
.mobile-nav{display:none;position:fixed;inset:0;top:70px;background:var(--black);z-index:190;padding:2rem;flex-direction:column;gap:.5rem;overflow-y:auto}
.mobile-nav.open{display:flex}
.mobile-nav a{font-size:1.1rem;font-weight:600;color:var(--light);padding:1rem;border-radius:var(--radius);border-bottom:1px solid rgba(255,255,255,.05);cursor:pointer}
.mobile-nav a:hover{color:var(--gold);background:rgba(201,168,76,.08)}

/* ── BUTTONS ── */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.75rem;border-radius:var(--radius);font-weight:600;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;border:none;transition:all var(--transition);cursor:pointer;white-space:nowrap}
.btn-primary{background:var(--gold);color:var(--black)}.btn-primary:hover{background:var(--gold-l);transform:translateY(-1px);box-shadow:var(--gold-glow)}
.btn-outline{background:transparent;color:var(--gold);border:1.5px solid var(--gold)}.btn-outline:hover{background:var(--gold);color:var(--black)}
.btn-dark{background:var(--dark3);color:var(--light);border:1px solid rgba(255,255,255,.08)}.btn-dark:hover{background:var(--dark4);border-color:rgba(255,255,255,.15)}
.btn-ghost{background:none;border:none;color:var(--gray-l);font-size:.85rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;padding:.5rem 1rem;border-radius:var(--radius)}.btn-ghost:hover{color:var(--gold)}
.btn-danger{background:rgba(231,76,60,.15);color:var(--red);border:1px solid rgba(231,76,60,.3)}.btn-danger:hover{background:var(--red);color:var(--white)}
.btn-success{background:rgba(46,204,113,.15);color:var(--green);border:1px solid rgba(46,204,113,.3)}.btn-success:hover{background:var(--green);color:var(--white)}
.btn-sm{padding:.45rem 1rem;font-size:.78rem}
.btn-xs{padding:.3rem .7rem;font-size:.72rem}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
.w100{width:100%}.mt1{margin-top:.5rem}.mt2{margin-top:1rem}.mt3{margin-top:1.5rem}

/* ── HERO ── */
.hero{min-height:92vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--black)}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 15% 50%,rgba(201,168,76,.12) 0%,transparent 60%),radial-gradient(ellipse 60% 40% at 85% 20%,rgba(201,168,76,.07) 0%,transparent 50%)}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(201,168,76,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,.04) 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(ellipse at center,black 40%,transparent 80%)}
.hero-content{position:relative;z-index:2;text-align:center;padding:2rem;max-width:800px}
.hero-eyebrow{font-size:.75rem;letter-spacing:.4em;text-transform:uppercase;color:var(--gold);margin-bottom:1.5rem;display:flex;align-items:center;justify-content:center;gap:.75rem}
.hero-eyebrow::before,.hero-eyebrow::after{content:'';height:1px;width:40px;background:var(--gold);opacity:.5}
.hero h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(4.5rem,13vw,11rem);line-height:.88;letter-spacing:.04em;color:var(--white);margin-bottom:1.5rem}
.hero h1 .g{color:var(--gold)}
.hero-sub{font-size:1.1rem;color:var(--gray);max-width:540px;margin:0 auto 2.5rem;line-height:1.8}
.hero-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.hero-stats{display:flex;gap:3rem;justify-content:center;margin-top:4rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.06)}
.hero-stat .num{font-family:'Bebas Neue',sans-serif;font-size:2.5rem;color:var(--gold);letter-spacing:.05em}
.hero-stat .lbl{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gray)}

/* ── SECTIONS ── */
.section{padding:5rem 2rem;max-width:1440px;margin:0 auto}
.section-sm{padding:3rem 2rem;max-width:1440px;margin:0 auto}
.section-full{padding:5rem 2rem;background:var(--dark2)}
.section-full .inner{max-width:1440px;margin:0 auto}
.sec-head{margin-bottom:3rem}
.sec-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2rem,5vw,3.5rem);letter-spacing:.08em;line-height:1}
.sec-title span{color:var(--gold)}
.sec-sub{color:var(--gray);margin-top:.75rem;font-size:.95rem}
.gold-line{height:3px;width:50px;background:linear-gradient(90deg,var(--gold),transparent);border-radius:2px;margin:.75rem 0 1rem}

/* ── CARD GRID ── */
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
.grid-auto{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem;align-items:start}

/* ── SECTION CARDS ── */
.sec-card{background:var(--dark2);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:2rem;cursor:pointer;transition:all .3s;position:relative;overflow:hidden}
.sec-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(201,168,76,.05) 0%,transparent 60%);opacity:0;transition:opacity .3s}
.sec-card:hover{border-color:rgba(201,168,76,.35);transform:translateY(-4px);box-shadow:var(--shadow)}
.sec-card:hover::before{opacity:1}
.sec-card .icon{font-size:2.5rem;margin-bottom:1rem}
.sec-card h3{font-family:'Bebas Neue',sans-serif;font-size:1.6rem;letter-spacing:.06em;margin-bottom:.5rem}
.sec-card p{color:var(--gray);font-size:.88rem;line-height:1.6}
.sec-card .arrow{position:absolute;bottom:1.5rem;right:1.5rem;color:var(--gold);font-size:1.2rem;opacity:0;transform:translateX(-8px);transition:all .3s}
.sec-card:hover .arrow{opacity:1;transform:translateX(0)}

/* ── PRODUCT CARDS ── */
.prod-card{background:var(--dark2);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);overflow:hidden;transition:all .3s;cursor:pointer;display:flex;flex-direction:column}
.prod-card:hover{border-color:rgba(201,168,76,.3);transform:translateY(-3px);box-shadow:var(--shadow)}
.prod-img{aspect-ratio:1/1;overflow:hidden;background:var(--dark3);display:flex;align-items:center;justify-content:center;font-size:4rem;position:relative;flex-shrink:0}
.prod-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.prod-card:hover .prod-img img{transform:scale(1.05)}
.prod-cat{font-size:.7rem;color:var(--gold);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.3rem;opacity:.8}
.prod-footer{display:flex;align-items:center;justify-content:space-between;gap:.4rem;margin-top:auto;padding-top:.5rem}
.prod-badge{position:absolute;top:.75rem;left:.75rem;background:var(--gold);color:var(--black);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .6rem;border-radius:20px}
.prod-body{padding:1rem;flex:1;display:flex;flex-direction:column}
.prod-cat{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold);margin-bottom:.35rem}
.prod-name{font-weight:700;font-size:.9rem;margin-bottom:.35rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.prod-desc{font-size:.78rem;color:var(--gray);line-height:1.45;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.prod-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.prod-price{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;color:var(--gold);letter-spacing:.04em}
.prod-price.por{font-size:.85rem;font-family:'DM Sans',sans-serif;color:var(--gray);font-weight:500}
.prod-tags{display:flex;gap:.3rem;flex-wrap:wrap;margin-top:.5rem}
.prod-tag{font-size:.68rem;background:rgba(201,168,76,.12);color:var(--gold);padding:.2rem .5rem;border-radius:20px;letter-spacing:.05em}

/* ── PAGE HERO ── */
.pg-hero{background:var(--black);padding:6rem 2rem 4rem;text-align:center;position:relative;overflow:hidden;border-bottom:1px solid rgba(201,168,76,.12)}
.pg-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(201,168,76,.09) 0%,transparent 65%)}
.pg-hero h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(3rem,8vw,6rem);letter-spacing:.08em;position:relative;z-index:1}
.pg-hero h1 span{color:var(--gold)}
.pg-hero p{color:var(--gray);max-width:560px;margin:1rem auto 0;font-size:.95rem;position:relative;z-index:1}
.breadcrumb{display:flex;gap:.5rem;align-items:center;font-size:.8rem;color:var(--gray);padding:1rem 2rem;max-width:1440px;margin:0 auto;flex-wrap:wrap}
.breadcrumb span{color:var(--gold);cursor:pointer}.breadcrumb span:hover{text-decoration:underline}
.breadcrumb .sep{color:var(--dark4)}

/* ── FILTER BAR ── */
.filter-bar{display:none} /* nascosta — sostituita dalla sidebar */
.filter-btn{padding:.4rem 1.1rem;border-radius:20px;border:1px solid rgba(255,255,255,.1);background:none;color:var(--gray-l);font-size:.8rem;font-weight:500;transition:all var(--transition)}
.filter-btn.active,.filter-btn:hover{background:var(--gold);color:var(--black);border-color:var(--gold)}


/* ════════════════════════════════════════
   SIDEBAR FILTRI
════════════════════════════════════════ */
.section-with-sidebar{
  display:grid;
  grid-template-columns:260px 1fr;
  gap:0;
  max-width:1440px;
  margin:0 auto;
  padding:0 2rem 4rem;
  align-items:start;
}
.section-sidebar{
  position:sticky;
  top:80px;
  max-height:calc(100vh - 90px);
  overflow-y:auto;
  padding:1.5rem 1.25rem 1.5rem 0;
  border-right:1px solid rgba(201,168,76,.12);
}
.section-sidebar::-webkit-scrollbar{width:3px}
.section-sidebar::-webkit-scrollbar-thumb{background:rgba(201,168,76,.2);border-radius:2px}

.sidebar-filter-group{
  margin-bottom:1.75rem;
}
.sidebar-title{
  font-size:.65rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#C9A84C;
  opacity:.7;
  margin:0 0 .75rem;
  padding-bottom:.5rem;
  border-bottom:1px solid rgba(201,168,76,.15);
  display:flex;
  align-items:center;
  gap:.4rem;
}
/* Categorie */
.sidebar-cats{display:flex;flex-direction:column;gap:.2rem;}
.sidebar-cat-btn{
  background:none;
  border:none;
  color:#999;
  font-size:.82rem;
  padding:.5rem .75rem;
  border-radius:6px;
  cursor:pointer;
  text-align:left;
  transition:all .18s;
  width:100%;
  border-left:2px solid transparent;
}
.sidebar-cat-btn:hover{
  background:rgba(201,168,76,.06);
  color:#ddd;
  border-left-color:rgba(201,168,76,.3);
}
.sidebar-cat-btn.active{
  background:rgba(201,168,76,.1);
  color:#C9A84C;
  font-weight:700;
  border-left-color:#C9A84C;
}
/* Range prezzo */
.sidebar-range{display:flex;flex-direction:column;gap:.6rem}
.sidebar-range-row{display:flex;align-items:center;gap:.5rem}
.sidebar-range-lbl{font-size:.72rem;color:#666;width:28px;text-align:right}
.sidebar-range input[type=number]{
  background:#161616;
  border:1px solid rgba(255,255,255,.1);
  color:#eee;
  padding:.45rem .7rem;
  border-radius:6px;
  width:90px;
  font-size:.82rem;
  transition:border-color .15s;
}
.sidebar-range input[type=number]:focus{outline:none;border-color:#C9A84C;background:#1a1a1a}
.sidebar-range input[type=number]::placeholder{color:#444}
/* Tag taglia/colore */
.sidebar-tags{display:flex;flex-wrap:wrap;gap:.35rem}
.sidebar-tag{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.1);
  color:#888;
  padding:.28rem .7rem;
  border-radius:20px;
  font-size:.73rem;
  cursor:pointer;
  transition:all .15s;
  user-select:none;
}
.sidebar-tag:hover{border-color:rgba(201,168,76,.35);color:#C9A84C;background:rgba(201,168,76,.06)}
.sidebar-tag.active{
  background:rgba(201,168,76,.15);
  border-color:#C9A84C;
  color:#C9A84C;
  font-weight:700;
}
/* Bottone reset */
.sidebar-reset{
  width:100%;
  background:none;
  border:1px solid rgba(255,255,255,.08);
  color:#555;
  padding:.55rem;
  border-radius:7px;
  font-size:.76rem;
  cursor:pointer;
  transition:all .18s;
  margin-top:.25rem;
  letter-spacing:.03em;
}
.sidebar-reset:hover{border-color:rgba(231,76,60,.4);color:#e05050;background:rgba(231,76,60,.05)}
/* Colonna prodotti */
.section-main{padding:1.5rem 0 0 2rem;min-width:0}

/* ════════════════════════════════════════
   LENTE DI RICERCA NAV
════════════════════════════════════════ */
.nav-search-wrap{
  position:relative;
  display:flex;
  align-items:center;
}
.nav-search-btn{
  background:none !important;
  border:none !important;
  outline:none !important;
  box-shadow:none !important;
  -webkit-appearance:none;
  appearance:none;
  color:#888;
  cursor:pointer;
  width:36px;
  height:36px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:color .2s,background .2s;
  padding:0;
  flex-shrink:0;
}
.nav-search-btn:hover{color:#C9A84C;background:rgba(201,168,76,.08) !important}
.nav-search-btn:focus{outline:none !important;box-shadow:none !important;background:none !important}
.nav-search-btn:active{background:rgba(201,168,76,.12) !important}
.nav-search-btn svg{display:block;flex-shrink:0;pointer-events:none}
.nav-search-box{
  position:absolute;
  right:0;
  top:calc(100% + 10px);
  width:320px;
  background:#141414;
  border:1px solid rgba(201,168,76,.2);
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 12px 40px rgba(0,0,0,.7),0 0 0 1px rgba(201,168,76,.05);
  z-index:10000;
  display:none;
  animation:searchDrop .15s ease;
}
@keyframes searchDrop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.nav-search-box.open{display:block}
.nav-search-input-wrap{
  display:flex;
  align-items:center;
  gap:.5rem;
  padding:.65rem 1rem;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.nav-search-input-wrap svg{color:#C9A84C;flex-shrink:0;opacity:.7}
.nav-search-input{
  flex:1;
  background:none;
  border:none;
  color:#fff;
  font-size:.9rem;
  outline:none;
}
.nav-search-input::placeholder{color:#444}
.nav-search-results{max-height:360px;overflow-y:auto}
.nav-search-item{
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:.65rem 1rem;
  cursor:pointer;
  border-top:1px solid rgba(255,255,255,.04);
  transition:background .12s;
}
.nav-search-item:first-child{border-top:none}
.nav-search-item:hover{background:rgba(201,168,76,.06)}
.nav-search-item img,.nav-search-item .srch-icon{
  width:42px;height:42px;object-fit:cover;border-radius:6px;
  flex-shrink:0;background:#1a1a1a;
  display:flex;align-items:center;justify-content:center;font-size:1.4rem;
}
.nav-search-item-info{min-width:0;flex:1}
.nav-search-item-name{font-size:.81rem;color:#ddd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:.1rem}
.nav-search-item-cat{font-size:.67rem;color:#555}
.nav-search-item-price{font-size:.78rem;color:#C9A84C;font-weight:700;flex-shrink:0}
.nav-search-empty{padding:1.25rem 1rem;text-align:center;color:#444;font-size:.82rem}
.nav-search-footer{
  padding:.6rem 1rem;
  border-top:1px solid rgba(255,255,255,.05);
  font-size:.73rem;
  color:#555;
  text-align:center;
  cursor:pointer;
  transition:color .15s;
}
.nav-search-footer:hover{color:#C9A84C}

@media(max-width:1024px){
  .section-with-sidebar{grid-template-columns:220px 1fr;padding:0 1rem 2rem}
  .section-main{padding:1rem 0 0 1.25rem}
}
@media(max-width:768px){
  .section-with-sidebar{grid-template-columns:1fr;padding:0 .75rem 2rem}
  .section-sidebar{
    position:static;border-right:none;
    border-bottom:1px solid rgba(201,168,76,.1);
    padding:1rem;max-height:none;
    background:rgba(201,168,76,.03);border-radius:8px;margin-bottom:1rem;
  }
  .section-main{padding:.75rem 0 0}
  .nav-search-box{right:-60px;width:280px}
}
.filter-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gray);font-weight:600}
/* Reset button focus nel nav */
.main-nav button:focus,.nav-search-btn:focus,.nav-item button:focus{outline:none !important;box-shadow:none !important}

/* ── PRODUCT DETAIL ── */
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;max-width:1100px;margin:0 auto;padding:3rem 2rem}
.detail-gallery{position:sticky;top:90px}
.detail-cover{width:100%;max-height:480px;aspect-ratio:1/1;background:var(--dark2);border-radius:var(--radius-lg);overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:8rem;border:1px solid rgba(255,255,255,.06);margin-bottom:.75rem}
.detail-cover img{width:100%;height:100%;object-fit:contain;background:#0a0a0a}
@media(max-width:768px){.detail-grid{grid-template-columns:1fr;gap:2rem;padding:1.5rem 1rem}.detail-gallery{position:static}.detail-cover{max-height:320px}}
.detail-thumbs{display:flex;gap:.5rem;flex-wrap:wrap}
.detail-thumb{width:70px;height:70px;border-radius:var(--radius);overflow:hidden;cursor:pointer;border:2px solid transparent;background:var(--dark3);display:flex;align-items:center;justify-content:center;font-size:1.5rem;transition:border-color var(--transition)}
.detail-thumb.active,.detail-thumb:hover{border-color:var(--gold)}
.detail-thumb img{width:100%;height:100%;object-fit:cover}
.detail-info h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(2rem,4vw,3rem);letter-spacing:.04em;line-height:1.1;margin-bottom:.75rem}
.detail-price{font-family:'Bebas Neue',sans-serif;font-size:2.8rem;color:var(--gold);letter-spacing:.04em;margin-bottom:1.5rem}
.detail-desc{color:var(--gray);line-height:1.8;margin-bottom:2rem;font-size:.93rem}
.detail-section{margin-bottom:1.5rem}
.detail-section-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gray);font-weight:600;margin-bottom:.75rem}
.size-grid{display:flex;gap:.5rem;flex-wrap:wrap}
.size-btn{min-width:48px;height:42px;padding:0 .75rem;border-radius:var(--radius);border:1.5px solid rgba(255,255,255,.1);background:var(--dark3);color:var(--light);font-size:.85rem;font-weight:600;transition:all var(--transition)}
.size-btn.active,.size-btn:hover{border-color:var(--gold);color:var(--gold);background:rgba(201,168,76,.08)}
.color-grid{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.2rem}
/* Pallino colore + etichetta */
.color-dot-wrap{
  display:flex;align-items:center;gap:.4rem;
  cursor:pointer;padding:.3rem .55rem;border-radius:20px;
  border:1.5px solid rgba(255,255,255,.08);
  transition:all .15s;background:rgba(255,255,255,.03);
  user-select:none;
}
.color-dot-wrap:hover{border-color:rgba(201,168,76,.35);background:rgba(201,168,76,.06)}
.color-dot-wrap.active{border-color:#C9A84C;background:rgba(201,168,76,.1)}
.color-dot-wrap.active .color-dot-ball{box-shadow:0 0 0 2px #C9A84C,0 0 0 4px rgba(201,168,76,.25)}
.color-dot-ball{
  width:20px;height:20px;border-radius:50%;flex-shrink:0;
  border:1.5px solid rgba(255,255,255,.2);
  transition:box-shadow .15s;
}
.color-dot-lbl{font-size:.75rem;color:#bbb;white-space:nowrap}
.color-dot-wrap.active .color-dot-lbl{color:#C9A84C;font-weight:600}

/* Compatibilità legacy */
.color-dot{width:28px;height:28px;border-radius:50%;cursor:pointer;transition:transform var(--transition);position:relative;border:2px solid transparent;display:inline-block}
.color-dot:hover{transform:scale(1.12)}
.color-dot.active{border-color:var(--gold);transform:scale(1.08)}
.color-check{display:none;position:absolute;inset:0;align-items:center;justify-content:center;font-size:.8rem;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.8);font-weight:700}
.color-dot.active .color-check{display:flex}

/* ── Prezzo dettaglio prodotto ── */
.det-price-main{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-bottom:.25rem}
.det-net-price{font-size:2rem;font-weight:800;color:var(--gold);font-family:'Bebas Neue',sans-serif;letter-spacing:.03em;line-height:1}

/* ── Blocco IVA breakdown ── */
.price-iva-block{
  display:inline-block;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.07);
  border-radius:8px;
  padding:.6rem .85rem;
  margin-top:.5rem;
  min-width:200px;
}
.price-iva-line{
  display:flex;justify-content:space-between;align-items:center;
  font-size:.78rem;color:#888;
  padding:.15rem 0;
}
.price-iva-line.iva .pib-value{color:#5dca8e;font-weight:600}
.pib-label{color:#666}
.pib-value{font-weight:600;color:#bbb}
.price-iva-total{
  display:flex;justify-content:space-between;align-items:center;
  border-top:1px solid rgba(255,255,255,.08);
  margin-top:.4rem;padding-top:.4rem;
  font-size:.82rem;color:#aaa;
}
.price-iva-total strong{color:#C9A84C;font-size:1.15rem;font-family:'Bebas Neue',sans-serif;letter-spacing:.03em}
.color-name-label{font-size:.8rem;color:var(--gray);margin-top:.4rem;min-height:1.2em}

/* ── CUSTOM OPTIONS ── */
.custom-box{background:var(--dark3);border:1px solid rgba(201,168,76,.2);border-radius:var(--radius-lg);padding:1.25rem;margin:1.5rem 0}
.custom-box-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);font-weight:700;margin-bottom:1rem}
.custom-type-tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}
.custom-tab{padding:.45rem 1rem;border-radius:20px;border:1.5px solid rgba(255,255,255,.1);background:none;color:var(--gray-l);font-size:.82rem;font-weight:500;transition:all var(--transition)}
.custom-tab.active{border-color:var(--gold);background:rgba(201,168,76,.1);color:var(--gold)}
.custom-sizes{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.6rem;margin-top:.75rem}
.custom-size-card{border:1.5px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:.6rem;cursor:pointer;text-align:center;transition:all var(--transition);background:var(--dark2)}
.custom-size-card:hover,.custom-size-card.active{border-color:var(--gold);background:rgba(201,168,76,.08)}
.csz-label{font-weight:700;font-size:.85rem}
.csz-desc{font-size:.72rem;color:var(--gray);margin:.2rem 0}
.csz-price{font-size:.8rem;color:var(--gold);font-weight:600}

/* ── CART ── */
#cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:300;display:none;backdrop-filter:blur(6px)}
#cart-overlay.open{display:block}
#cart-panel{position:fixed;right:0;top:0;bottom:0;width:min(440px,100vw);background:var(--dark);border-left:1px solid rgba(201,168,76,.2);z-index:301;transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}
#cart-panel.open{transform:translateX(0)}
.cart-hdr{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between}
.cart-hdr h3{font-family:'Bebas Neue',sans-serif;font-size:1.8rem;letter-spacing:.1em}
.cart-body{flex:1;overflow-y:auto;padding:1rem}
.cart-item{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.05)}
.cart-item-img{width:64px;height:64px;border-radius:var(--radius);background:var(--dark3);display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0;overflow:hidden}
.cart-item-img img{width:100%;height:100%;object-fit:cover}
.cart-item-body{flex:1;min-width:0}
.cart-item-name{font-weight:600;font-size:.88rem;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cart-item-meta{font-size:.75rem;color:var(--gray);margin-bottom:.4rem}
.cart-item-row{display:flex;align-items:center;justify-content:space-between}
.cart-item-price{color:var(--gold);font-weight:700;font-size:.9rem}
.qty-row{display:flex;align-items:center;gap:.4rem}
.qty-btn{width:26px;height:26px;border-radius:50%;background:var(--dark3);border:1px solid rgba(255,255,255,.1);color:var(--light);font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all var(--transition)}
.qty-btn:hover{border-color:var(--gold);color:var(--gold)}
.qty-del{color:var(--red)!important}
.cart-ftr{padding:1.5rem;border-top:1px solid rgba(255,255,255,.08)}
.cart-total-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1.25rem}
.cart-total-row .label{color:var(--gray);font-size:.85rem}
.cart-total-row .amount{font-family:'Bebas Neue',sans-serif;font-size:2rem;color:var(--gold);letter-spacing:.05em}

/* ── MODAL ── */
#modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:500;display:none;align-items:center;justify-content:center;backdrop-filter:blur(8px);padding:1rem}
#modal-overlay.open{display:flex}
.modal{background:var(--dark2);border:1px solid rgba(201,168,76,.2);border-radius:var(--radius-lg);width:min(680px,100%);max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}
.modal-hdr{padding:1.5rem 2rem;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.modal-hdr h3{font-family:'Bebas Neue',sans-serif;font-size:1.6rem;color:var(--gold);letter-spacing:.08em}
.modal-body{padding:2rem;overflow-y:auto}
.modal-ftr{padding:1.25rem 2rem;border-top:1px solid rgba(255,255,255,.06);display:flex;gap:.75rem;justify-content:flex-end}
.close-btn{background:none;border:none;color:var(--gray);font-size:1.4rem;line-height:1;padding:.25rem;transition:color var(--transition)}.close-btn:hover{color:var(--white)}

/* ── FORMS ── */
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-group{margin-bottom:1.1rem}
.form-group label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--gray);margin-bottom:.4rem;font-weight:600}
.form-group label .req{color:var(--red)}
.form-ctrl{width:100%;padding:.7rem 1rem;background:var(--dark3);border:1.5px solid rgba(255,255,255,.08);border-radius:var(--radius);color:var(--light);font-size:.9rem;transition:border-color var(--transition)}
.form-ctrl:focus{outline:none;border-color:var(--gold);background:var(--dark4)}
.form-ctrl::placeholder{color:var(--gray)}
select.form-ctrl option{background:var(--dark3);color:var(--light)}
textarea.form-ctrl{min-height:80px;resize:vertical}
.form-check{display:flex;align-items:center;gap:.6rem;cursor:pointer;font-size:.88rem;color:var(--gray-l)}
.form-check input{accent-color:var(--gold);width:16px;height:16px}
.form-hint{font-size:.75rem;color:var(--gray);margin-top:.3rem}

/* ── CHECKOUT ── */
.checkout-layout{display:grid;grid-template-columns:1fr 380px;gap:2rem;max-width:1100px;margin:0 auto;padding:3rem 2rem;align-items:start}
.checkout-sticky{position:sticky;top:90px}
.box{background:var(--dark2);border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-lg);padding:2rem;margin-bottom:1.5rem}
.box h3{font-family:'Bebas Neue',sans-serif;font-size:1.4rem;letter-spacing:.06em;color:var(--gold);margin-bottom:1.5rem}
.payment-opt{padding:1rem 1.25rem;border:1.5px solid rgba(255,255,255,.1);border-radius:var(--radius);cursor:pointer;transition:all var(--transition);display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}
.payment-opt.active{border-color:var(--gold);background:rgba(201,168,76,.07)}
.payment-opt .opt-icon{font-size:1.5rem}
.payment-opt .opt-label{font-weight:600;font-size:.9rem}
.payment-opt .opt-desc{font-size:.78rem;color:var(--gray)}
.payment-detail{background:var(--dark3);border:1px solid rgba(201,168,76,.15);border-radius:var(--radius);padding:1.25rem;margin-top:1rem;font-size:.88rem;line-height:1.9}
.payment-detail strong{color:var(--gold-l)}
.order-line{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.6rem;font-size:.88rem}
.order-line.total{font-size:1.1rem;font-weight:700;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.08)}
.order-line.total .amt{color:var(--gold);font-family:'Bebas Neue',sans-serif;font-size:1.8rem;letter-spacing:.05em}

/* ── SUCCESS ── */
.success-wrap{text-align:center;padding:6rem 2rem;max-width:600px;margin:0 auto}
.success-icon{font-size:5rem;margin-bottom:2rem}
.success-wrap h2{font-family:'Bebas Neue',sans-serif;font-size:3rem;color:var(--gold);margin-bottom:1rem}
.success-wrap p{color:var(--gray);margin-bottom:2rem}

/* ── AUTH ── */
.auth-wrap{max-width:440px;margin:5rem auto;padding:0 1.5rem}
.auth-box{background:var(--dark2);border:1px solid rgba(201,168,76,.2);border-radius:var(--radius-lg);padding:2.5rem}
.auth-box h2{font-family:'Bebas Neue',sans-serif;font-size:2rem;color:var(--gold);margin-bottom:.4rem}
.auth-box .sub{color:var(--gray);font-size:.88rem;margin-bottom:2rem}
.auth-switch{text-align:center;margin-top:1.5rem;color:var(--gray);font-size:.88rem}
.auth-switch a{color:var(--gold);cursor:pointer}
.auth-switch a:hover{text-decoration:underline}

/* ── ACCOUNT ── */
.account-layout{display:grid;grid-template-columns:240px 1fr;gap:2rem;max-width:1100px;margin:0 auto;padding:3rem 2rem;align-items:start}
.account-nav{background:var(--dark2);border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-lg);overflow:hidden}
.account-nav-head{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.06)}
.account-nav-head .name{font-weight:700}
.account-nav-head .email{font-size:.8rem;color:var(--gray);margin-top:.2rem}
.account-nav-item{padding:.85rem 1.5rem;cursor:pointer;transition:all var(--transition);display:flex;align-items:center;gap:.75rem;font-size:.88rem;font-weight:500;color:var(--gray-l)}
.account-nav-item:hover,.account-nav-item.active{background:rgba(201,168,76,.08);color:var(--gold)}
.account-nav-item.danger{color:var(--red)}.account-nav-item.danger:hover{background:rgba(231,76,60,.08)}
.order-card{background:var(--dark2);border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1rem}
.order-card-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}
.order-num{font-family:'Bebas Neue',sans-serif;font-size:1.2rem;color:var(--gold)}

/* ── STATUS BADGES ── */
.badge-status{padding:.25rem .75rem;border-radius:20px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.s-pending{background:rgba(201,168,76,.15);color:var(--gold)}
.s-processing{background:rgba(52,152,219,.15);color:var(--blue)}
.s-shipped{background:rgba(155,89,182,.15);color:#9b59b6}
.s-delivered{background:rgba(46,204,113,.15);color:var(--green)}
.s-cancelled{background:rgba(231,76,60,.15);color:var(--red)}
.s-new{background:rgba(231,76,60,.2);color:var(--red)}
.s-read{background:rgba(52,152,219,.15);color:var(--blue)}
.s-replied{background:rgba(46,204,113,.15);color:var(--green)}
.s-closed{background:rgba(136,136,136,.15);color:var(--gray)}

/* ── TOAST ── */
#toast-wrap{position:fixed;bottom:2rem;right:2rem;z-index:999;display:flex;flex-direction:column;gap:.6rem;pointer-events:none}
.toast{padding:.9rem 1.4rem;border-radius:var(--radius);font-weight:600;font-size:.85rem;min-width:260px;pointer-events:auto;animation:toastIn .3s ease;box-shadow:var(--shadow)}
.toast-ok{background:#0d3d20;border:1px solid rgba(46,204,113,.4);color:var(--green)}
.toast-err{background:#3d0d0d;border:1px solid rgba(231,76,60,.4);color:var(--red)}
.toast-info{background:rgba(201,168,76,.15);border:1px solid rgba(201,168,76,.4);color:var(--gold)}
@keyframes toastIn{from{transform:translateX(100%);opacity:0}to{transform:none;opacity:1}}

/* ── UPLOAD DROPZONE ── */
.dropzone{border:2px dashed rgba(201,168,76,.3);border-radius:var(--radius-lg);padding:2rem;text-align:center;cursor:pointer;transition:all var(--transition)}
.dropzone:hover,.dropzone.drag{border-color:var(--gold);background:rgba(201,168,76,.04)}
.dropzone .dz-icon{font-size:2.5rem;margin-bottom:.75rem}
.dropzone .dz-text{font-size:.88rem;margin-bottom:.3rem}
.dropzone .dz-hint{font-size:.75rem;color:var(--gray)}

/* ── QUOTE PAGE ── */
.quote-wrap{max-width:720px;margin:0 auto;padding:3rem 2rem}
.file-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .9rem;background:var(--dark3);border-radius:var(--radius);margin-bottom:.4rem;font-size:.83rem}
.file-item .file-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.file-item .file-size{color:var(--gray);flex-shrink:0}

/* ── ADMIN ── */
.admin-layout{display:grid;grid-template-columns:250px 1fr;min-height:100vh}
.admin-sidebar{background:var(--black);border-right:1px solid rgba(201,168,76,.12);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}
.admin-logo{padding:1.75rem 1.5rem;border-bottom:1px solid rgba(201,168,76,.12)}
.admin-logo .name{font-family:'Bebas Neue',sans-serif;font-size:1.8rem;color:var(--gold);letter-spacing:.12em}
.admin-logo .tag{font-size:.65rem;text-transform:uppercase;letter-spacing:.2em;color:var(--gray);margin-top:.1rem}
.admin-nav{padding:1rem;flex:1}
.admin-nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius);cursor:pointer;transition:all var(--transition);font-size:.85rem;font-weight:500;color:var(--gray-l);margin-bottom:.15rem;position:relative}
.admin-nav-item:hover,.admin-nav-item.active{background:rgba(201,168,76,.1);color:var(--gold)}
.admin-nav-item .n-badge{margin-left:auto;background:var(--red);color:var(--white);border-radius:10px;padding:.1rem .4rem;font-size:.68rem;font-weight:700}
.admin-nav-sep{height:1px;background:rgba(255,255,255,.05);margin:.5rem 0}
.admin-nav-item.logout{color:var(--red)}.admin-nav-item.logout:hover{background:rgba(231,76,60,.1)}
.admin-content{background:var(--dark);padding:2.5rem;overflow-x:auto}
.admin-sec{display:none}.admin-sec.active{display:block}
.admin-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;gap:1rem;flex-wrap:wrap}
.admin-hdr h2{font-family:'Bebas Neue',sans-serif;font-size:2rem;letter-spacing:.06em;color:var(--gold)}

/* ── STATS ── */
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}
.stat-card{background:var(--dark2);border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-lg);padding:1.5rem}
.stat-val{font-family:'Bebas Neue',sans-serif;font-size:2.5rem;color:var(--gold);letter-spacing:.04em;line-height:1}
.stat-lbl{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gray);margin-top:.4rem}

/* ── DATA TABLE ── */
.data-table{width:100%;border-collapse:collapse;background:var(--dark2);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);overflow:hidden}
.data-table th{text-align:left;padding:.9rem 1rem;background:var(--dark3);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gray);border-bottom:1px solid rgba(255,255,255,.06);white-space:nowrap}
.data-table td{padding:.85rem 1rem;border-bottom:1px solid rgba(255,255,255,.04);font-size:.85rem;vertical-align:middle}
.data-table tr:last-child td{border-bottom:none}
.data-table tr:hover td{background:rgba(255,255,255,.02)}
.tbl-actions{display:flex;gap:.4rem;flex-wrap:wrap}

/* ── IMG GALLERY ADMIN ── */
.img-gallery{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.75rem}
.img-gallery-item{width:100px;height:100px;border-radius:var(--radius);overflow:hidden;border:2px solid rgba(255,255,255,.08);position:relative;cursor:pointer;transition:border-color var(--transition);background:var(--dark3);display:flex;align-items:center;justify-content:center;font-size:2rem}
.img-gallery-item img{width:100%;height:100%;object-fit:cover}
.img-gallery-item.cover{border-color:var(--gold)}
.img-gallery-item .cover-badge{position:absolute;top:3px;left:3px;background:var(--gold);color:var(--black);font-size:.6rem;font-weight:700;padding:1px 5px;border-radius:3px;letter-spacing:.05em}
.img-gallery-item .del-img{position:absolute;top:3px;right:3px;background:var(--red);color:var(--white);border:none;border-radius:50%;width:20px;height:20px;font-size:.75rem;display:none;align-items:center;justify-content:center}
.img-gallery-item:hover .del-img{display:flex}
.img-add{width:100px;height:100px;border:2px dashed rgba(255,255,255,.15);border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;color:var(--gray);font-size:.7rem;gap:.3rem;transition:all var(--transition)}
.img-add:hover{border-color:var(--gold);color:var(--gold)}
.img-add .plus{font-size:1.8rem;line-height:1}

/* ── SETTINGS GRID ── */
.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}

/* ── ABOUT / CONTACT ── */
.about-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;padding:5rem 2rem;max-width:1100px;margin:0 auto}
.about-img{aspect-ratio:4/3;background:var(--dark2);border:1px solid rgba(201,168,76,.15);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:7rem}
.about-text h2{font-family:'Bebas Neue',sans-serif;font-size:clamp(2rem,4vw,3rem);letter-spacing:.06em;margin-bottom:1rem}
.about-text h2 span{color:var(--gold)}
.about-text p{color:var(--gray);line-height:1.9;margin-bottom:1rem;font-size:.93rem}
.values-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
.val-card{background:var(--dark2);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:2rem;text-align:center}
.val-card .vi{font-size:2.5rem;margin-bottom:.75rem}
.val-card h4{font-weight:700;margin-bottom:.4rem}
.val-card p{font-size:.83rem;color:var(--gray)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:1000px;margin:0 auto;padding:5rem 2rem}
.contact-item{display:flex;gap:1rem;align-items:flex-start;margin-bottom:2rem}
.contact-icon{font-size:1.8rem;flex-shrink:0}
.contact-item h4{font-weight:700;margin-bottom:.2rem}
.contact-item p{color:var(--gray);font-size:.88rem}

/* ── PROMO BAND ── */
.promo-band{background:linear-gradient(135deg,rgba(201,168,76,.12) 0%,rgba(201,168,76,.04) 100%);border-top:1px solid rgba(201,168,76,.2);border-bottom:1px solid rgba(201,168,76,.2);padding:4rem 2rem;text-align:center}
.promo-band h2{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.5rem,5vw,4rem);letter-spacing:.08em;margin-bottom:1rem}
.promo-band h2 span{color:var(--gold)}
.promo-band p{color:var(--gray);max-width:560px;margin:0 auto 2rem;font-size:.95rem}

/* ── FOOTER ── */
footer{background:var(--black);border-top:1px solid rgba(201,168,76,.12);padding:5rem 2rem 2rem}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;max-width:1440px;margin:0 auto 4rem}
.footer-brand .f-logo{font-family:'Bebas Neue',sans-serif;font-size:2rem;color:var(--gold);letter-spacing:.15em;margin-bottom:1rem;cursor:pointer}
.footer-brand .f-logo span{color:var(--white)}
.footer-brand p{color:var(--gray);font-size:.85rem;line-height:1.8}
.footer-col h5{font-size:.72rem;text-transform:uppercase;letter-spacing:.15em;color:var(--gold);margin-bottom:1rem;font-weight:700}
.footer-col a,.footer-col p{display:block;color:var(--gray);font-size:.85rem;margin-bottom:.6rem;cursor:pointer;transition:color var(--transition)}
.footer-col a:hover{color:var(--white)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.05);padding-top:2rem;text-align:center;color:var(--gray);font-size:.8rem;max-width:1440px;margin:0 auto}

/* ── MISC ── */
.empty{text-align:center;padding:4rem 2rem;color:var(--gray)}
.empty .ei{font-size:4rem;margin-bottom:1rem}
.spinner{width:36px;height:36px;border:3px solid rgba(201,168,76,.2);border-top-color:var(--gold);border-radius:50%;animation:spin .7s linear infinite;margin:3rem auto}
@keyframes spin{to{transform:rotate(360deg)}}
.divider{height:1px;background:rgba(255,255,255,.06);margin:1.5rem 0}
.text-gold{color:var(--gold)}.text-gray{color:var(--gray)}.text-red{color:var(--red)}
.flex{display:flex}.flex-center{align-items:center}.flex-between{justify-content:space-between}.gap1{gap:.5rem}.gap2{gap:1rem}
.tag-input-row{display:flex;gap:.5rem;flex-wrap:wrap;padding:.5rem;background:var(--dark3);border:1.5px solid rgba(255,255,255,.08);border-radius:var(--radius);min-height:42px;align-items:center;cursor:text}
.tag-input-row input{background:none;border:none;color:var(--light);font-size:.88rem;min-width:100px;flex:1;outline:none}
.tag-chip{background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.3);color:var(--gold);padding:.2rem .6rem;border-radius:20px;font-size:.78rem;display:flex;align-items:center;gap:.3rem;white-space:nowrap}
.tag-chip button{background:none;border:none;color:inherit;font-size:.9rem;line-height:1;opacity:.7}.tag-chip button:hover{opacity:1}
.color-swatch-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-top:.5rem}
.color-entry{display:flex;align-items:center;gap:.4rem;background:var(--dark3);padding:.3rem .6rem .3rem .4rem;border-radius:20px;font-size:.78rem}
.color-entry .swatch{width:20px;height:20px;border-radius:50%;border:2px solid rgba(255,255,255,.2);flex-shrink:0}
.color-entry button{background:none;border:none;color:var(--red);font-size:.85rem;line-height:1}

/* ── RESPONSIVE ── */
@media(max-width:1200px){.main-nav{gap:0}.main-nav>a{font-size:.78rem;padding:.4rem .55rem}}
@media(max-width:960px){
  .main-nav{display:none}.hamburger{display:flex}
  .grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}
  .checkout-layout{grid-template-columns:1fr}.checkout-sticky{position:static}
  .footer-grid{grid-template-columns:1fr 1fr}
  .admin-layout{grid-template-columns:1fr}.admin-sidebar{height:auto;position:static}
  .about-hero-grid{grid-template-columns:1fr}.account-layout{grid-template-columns:1fr}
}
@media(max-width:640px){
  .detail-grid{grid-template-columns:1fr;padding:1.5rem}.form-row{grid-template-columns:1fr}
  .grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.values-row{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr;padding:3rem 1.5rem}.settings-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}.hero-stats{gap:1.5rem}.hero-stats .num{font-size:1.8rem}
}

/* ── PRODUCT DETAIL FIXES ── */
#view-product { background: var(--dark); }
.pg-breadcrumb { background: var(--dark2); border-bottom: 1px solid rgba(255,255,255,.05); }
.detail-grid { display:grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; max-width: 1160px; margin: 0 auto; padding: 3rem 2rem 5rem; }
.detail-gallery { position: sticky; top: 90px; }
.detail-cover { width:100%; aspect-ratio:1/1; max-height:480px; background:var(--dark2); border-radius:var(--radius-lg); overflow:hidden; display:flex; align-items:center; justify-content:center; font-size:8rem; border:1px solid rgba(255,255,255,.08); margin-bottom:.75rem; }
.detail-cover img { width:100%; height:100%; object-fit:contain; background:#050505; display:block; transition:opacity .2s; }
.detail-info { padding-top: .5rem; }
.detail-info .prod-cat { font-size:.72rem; text-transform:uppercase; letter-spacing:.14em; color:var(--gold); font-weight:600; margin-bottom:.6rem; }
.detail-info h1 { font-family:'Bebas Neue',sans-serif; font-size:clamp(2.2rem,4vw,3.2rem); letter-spacing:.04em; line-height:1.05; margin-bottom:.5rem; color:var(--light); }
.detail-price { font-family:'Bebas Neue',sans-serif; font-size:2.6rem; color:var(--gold); letter-spacing:.04em; margin-bottom:1.25rem; line-height:1; }
.detail-desc { color:var(--gray-l); line-height:1.85; margin-bottom:1.75rem; font-size:.93rem; border-left:3px solid rgba(201,168,76,.25); padding-left:1rem; }
.detail-actions { display:flex; gap:.75rem; flex-wrap:wrap; margin-top:1.75rem; margin-bottom:1.25rem; }
.btn-lg { padding:.85rem 2rem !important; font-size:.95rem !important; }
.detail-lab-badge { display:flex; align-items:center; gap:.6rem; background:rgba(201,168,76,.06); border:1px solid rgba(201,168,76,.15); border-radius:var(--radius); padding:.75rem 1rem; font-size:.8rem; color:var(--gray-l); margin-top:.75rem; }
@media(max-width:900px) {
  .detail-grid { grid-template-columns:1fr; gap:1.5rem; padding:1.5rem 1rem 3rem; }
  .detail-gallery { position:static; }
  .detail-cover { max-height:300px; aspect-ratio:4/3; }
}

/* ── EMOJI PICKER ── */
.emoji-picker { border:1px solid rgba(255,255,255,.08); border-radius:var(--radius); background:var(--dark3); margin-top:.5rem; }
.ep-preview { font-size:1.8rem; padding:.5rem .75rem; border-bottom:1px solid rgba(255,255,255,.06); min-height:2.8rem; }
.ep-cats { max-height:220px; overflow-y:auto; padding:.5rem; }
.ep-section { margin-bottom:.75rem; }
.ep-cat-lbl { font-size:.65rem; text-transform:uppercase; letter-spacing:.12em; color:var(--gray); font-weight:700; padding:.2rem .25rem .4rem; }
.ep-grid { display:flex; flex-wrap:wrap; gap:.2rem; }
.ep-item { width:32px; height:32px; display:flex; align-items:center; justify-content:center; font-size:1.1rem; cursor:pointer; border-radius:4px; transition:background .15s; }
.ep-item:hover { background:rgba(201,168,76,.2); }

/* ══════════════════════════════════════
   QUANTITY PICKER (pagina prodotto)
══════════════════════════════════════ */
.qty-picker { display:inline-flex; align-items:center; gap:0; border:1.5px solid rgba(255,255,255,.12); border-radius:var(--radius); overflow:hidden; background:var(--dark3); }
.qty-picker-btn { width:44px; height:44px; background:none; border:none; color:var(--light); font-size:1.3rem; font-weight:300; cursor:pointer; transition:background .15s; display:flex; align-items:center; justify-content:center; }
.qty-picker-btn:hover { background:rgba(201,168,76,.15); color:var(--gold); }
.qty-picker-val { min-width:52px; text-align:center; font-size:1.1rem; font-weight:600; color:var(--light); padding:0 .5rem; border-left:1px solid rgba(255,255,255,.08); border-right:1px solid rgba(255,255,255,.08); }

/* color-dot check */
.color-dot { position:relative; }
.color-check { display:none; position:absolute; inset:0; align-items:center; justify-content:center; font-size:.85rem; color:#fff; text-shadow:0 1px 3px rgba(0,0,0,.8); font-weight:700; }
.color-dot.active .color-check { display:flex; }

/* sel-hint inline */
.sel-hint { color:var(--gold); font-size:.8rem; font-weight:600; margin-left:.4rem; }
.por-label { font-size:1.1rem; color:var(--gray); font-family:'DM Sans',sans-serif; font-weight:500; }

/* ══════════════════════════════════════
   PERSONALIZZAZIONE (custom box)
══════════════════════════════════════ */
.custom-size-title { font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; color:var(--gray); font-weight:700; margin:.85rem 0 .5rem; }
.custom-fields { margin-top:1rem; display:flex; flex-direction:column; gap:.85rem; }
.custom-price-hint { font-size:.82rem; min-height:1.2em; font-weight:600; margin:0; }

/* File upload area */
.file-upload-area { border:2px dashed rgba(255,255,255,.12); border-radius:var(--radius); padding:1.25rem; display:flex; align-items:center; gap:.85rem; cursor:pointer; transition:all .2s; background:var(--dark2); }
.file-upload-area:hover, .file-upload-area.drag { border-color:var(--gold); background:rgba(201,168,76,.05); }
.fu-icon { font-size:1.6rem; flex-shrink:0; }
.fu-text { font-size:.85rem; color:var(--gray-l); }

/* ══════════════════════════════════════
   CHECKOUT — riepilogo prodotti
══════════════════════════════════════ */
.co-item-line { display:flex; gap:.85rem; align-items:flex-start; padding:.85rem 0; border-bottom:1px solid rgba(255,255,255,.05); }
.co-item-line:last-child { border-bottom:none; }
.co-item-img { width:56px; height:56px; border-radius:var(--radius); overflow:hidden; background:var(--dark3); display:flex; align-items:center; justify-content:center; font-size:1.5rem; flex-shrink:0; }
.co-item-img img { width:100%; height:100%; object-fit:cover; }
.co-item-body { flex:1; min-width:0; }
.co-item-name { font-weight:600; font-size:.88rem; margin-bottom:.2rem; }
.co-item-meta { font-size:.74rem; color:var(--gray); line-height:1.5; }
.co-item-price { font-weight:700; color:var(--gold); font-size:.92rem; flex-shrink:0; }

/* ══════════════════════════════════════
   CHECKOUT — immagine riepilogo piccola
══════════════════════════════════════ */
.co-item-img { width:48px !important; height:48px !important; min-width:48px; flex-shrink:0; border-radius:5px; overflow:hidden; background:var(--dark3); display:flex; align-items:center; justify-content:center; font-size:1.3rem; }
.co-item-img img { width:48px !important; height:48px !important; object-fit:cover; display:block; border-radius:5px; }
.co-item-qty { font-size:.74rem; color:var(--gray); margin-top:.2rem; }

/* ══════════════════════════════════════
   PAGAMENTO — stili PayPal e bonifico
══════════════════════════════════════ */
.paypal-logo { background:none; display:flex; align-items:center; justify-content:center; }
.paypal-badge { display:inline-block; background:rgba(0,112,186,.2); color:#4fc3f7; font-size:.62rem; font-weight:700; letter-spacing:.06em; padding:.15rem .45rem; border-radius:20px; margin-left:.4rem; vertical-align:middle; text-transform:uppercase; }
.paypal-info { border:1px solid rgba(0,112,186,.3) !important; background:rgba(0,112,186,.05) !important; }

/* Dati bonifico e PayPal */
.payment-detail { background:var(--dark3); border:1px solid rgba(255,255,255,.07); border-radius:var(--radius); padding:1rem; margin-top:.75rem; }
.pd-row { display:flex; justify-content:space-between; align-items:center; padding:.45rem 0; border-bottom:1px solid rgba(255,255,255,.05); gap:1rem; font-size:.84rem; }
.pd-row:last-child { border-bottom:none; }
.pd-row span { color:var(--gray); flex-shrink:0; }
.pd-row strong { text-align:right; color:var(--light); }
.pd-row.highlight strong { color:var(--gold); font-size:.95rem; }
.iban-val { font-family:monospace; font-size:.82rem; letter-spacing:.04em; word-break:break-all; }

/* Pagina conferma ordine bonifico */
.ok-bank { background:var(--dark3); border:1px solid rgba(201,168,76,.2); border-radius:var(--radius-lg); padding:1.25rem; }
.ok-bank h4 { color:var(--gold); font-size:1rem; margin-bottom:1rem; }


/* ── Extra v3 ── */
.prod-card-wrap { position:relative; }
.empty-state { text-align:center; padding:5rem 2rem; color:var(--gray); }
.empty-state .ei { font-size:4rem; margin-bottom:1rem; }
.empty-state p { font-size:.95rem; margin-bottom:1.5rem; }
.tag-input-wrap { border:1.5px solid rgba(255,255,255,.08); border-radius:var(--radius); padding:.4rem .75rem; display:flex; flex-wrap:wrap; gap:.4rem; align-items:center; cursor:text; background:var(--dark3); min-height:42px; transition:border-color .2s; }
.tag-input-wrap:focus-within { border-color:var(--gold); }
.tag-input-wrap input { background:none; border:none; outline:none; color:var(--light); font-size:.88rem; min-width:120px; flex:1; font-family:inherit; }
.tag-chip { background:rgba(201,168,76,.15); border:1px solid rgba(201,168,76,.35); color:var(--gold); padding:.2rem .55rem; border-radius:20px; font-size:.78rem; display:inline-flex; align-items:center; gap:.3rem; white-space:nowrap; }
.tag-chip button { background:none; border:none; color:inherit; font-size:.85rem; line-height:1; opacity:.6; cursor:pointer; padding:0; }
.tag-chip button:hover { opacity:1; }
.color-swatch-list { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.5rem; }
.csw-item { display:inline-flex; align-items:center; gap:.4rem; background:var(--dark3); padding:.3rem .65rem .3rem .4rem; border-radius:20px; font-size:.8rem; border:1px solid rgba(255,255,255,.08); }
.csw-item .dot { width:18px; height:18px; border-radius:50%; border:2px solid rgba(255,255,255,.15); flex-shrink:0; }
.csw-item button { background:none; border:none; color:var(--red); font-size:.9rem; cursor:pointer; line-height:1; padding:0; margin-left:.2rem; }
.adm-img-grid { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:.75rem; }
.adm-img-item { position:relative; width:90px; height:90px; border-radius:var(--radius); overflow:hidden; border:2px solid rgba(255,255,255,.1); background:var(--dark3); cursor:pointer; transition:border-color .2s; }
.adm-img-item img { width:100%; height:100%; object-fit:cover; }
.adm-img-item.is-cover { border-color:var(--gold); }
.adm-img-item .cover-lbl { position:absolute; bottom:0; left:0; right:0; background:var(--gold); color:#000; font-size:.58rem; font-weight:800; text-align:center; padding:2px 0; letter-spacing:.05em; }
.adm-img-item .img-del { position:absolute; top:3px; right:3px; width:20px; height:20px; background:rgba(231,76,60,.9); border:none; border-radius:50%; color:#fff; font-size:.7rem; cursor:pointer; display:none; align-items:center; justify-content:center; }
.adm-img-item:hover .img-del { display:flex; }
.adm-img-item .make-cover { position:absolute; top:3px; left:3px; background:rgba(0,0,0,.75); border:none; border-radius:3px; color:var(--gold); font-size:.55rem; font-weight:700; padding:2px 4px; cursor:pointer; display:none; white-space:nowrap; }
.adm-img-item:hover .make-cover { display:block; }
.adm-img-add { width:90px; height:90px; border:2px dashed rgba(255,255,255,.15); border-radius:var(--radius); display:flex; flex-direction:column; align-items:center; justify-content:center; cursor:pointer; color:var(--gray); gap:.25rem; transition:all .2s; }
.adm-img-add:hover { border-color:var(--gold); color:var(--gold); }
.adm-img-add .p { font-size:1.8rem; line-height:1; }
.adm-img-add .t { font-size:.65rem; }
.pill-tabs { display:flex; gap:.4rem; flex-wrap:wrap; margin-bottom:1rem; }
.pill-tab { padding:.4rem 1rem; border-radius:20px; border:1.5px solid rgba(255,255,255,.1); background:none; color:var(--gray-l); font-size:.8rem; font-weight:500; cursor:pointer; transition:all .2s; }
.pill-tab.on { background:rgba(201,168,76,.12); border-color:var(--gold); color:var(--gold); }
.loader-row { display:flex; justify-content:center; padding:3rem; }
.form-2col { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
@media(max-width:600px) { .form-2col { grid-template-columns:1fr; } }
.section-divider { font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; color:var(--gray); font-weight:700; margin:1.25rem 0 .75rem; padding-bottom:.4rem; border-bottom:1px solid rgba(255,255,255,.06); }
/* ImgPanel */
.imgs-panel-hidden { display:none !important; }
.imgs-panel-visible { display:flex !important; }
/* Prodotto cover nella lista prodotti */
.prod-img img { width:100%; height:100%; object-fit:cover; }
/* Dettaglio prodotto immagine */
.detail-cover { width:100%; aspect-ratio:1/1; max-height:520px; background:var(--dark3); border-radius:var(--radius); overflow:hidden; display:flex; align-items:center; justify-content:center; }
.detail-cover img { width:100%; height:100%; object-fit:contain; background:#0a0a0a; }


/* loading nascosto via JS hideLoading() */

/* Mappa contatti */
.map-wrap{margin-top:1.25rem;border-radius:var(--radius);overflow:hidden;border:1px solid rgba(255,255,255,.07)}

/* ══ SCONTI E BADGE VENDITA ══ */
.prod-badge.sale-badge{background:#e05050;color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.06em;top:.6rem;right:.6rem;left:auto;padding:.25rem .55rem;border-radius:20px;position:absolute}
.prod-badge.feat-badge{top:.6rem;left:.6rem;right:auto}
.prod-price-wrap{display:flex;flex-direction:column;gap:.1rem}
.prod-price-old{font-size:.8rem;color:var(--gray);text-decoration:line-through;line-height:1}
.prod-price.sale{color:#e05050;font-size:1.1rem;font-weight:700;line-height:1}
.detail-price-old{display:inline-block;font-size:1rem;color:var(--gray);text-decoration:line-through;margin-right:.5rem}
.detail-price-sale{font-family:'Bebas Neue',sans-serif;font-size:2rem;color:#e05050;letter-spacing:.04em;margin-right:.5rem}
.detail-disc-badge{display:inline-block;background:#e05050;color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.06em;padding:.25rem .65rem;border-radius:20px;vertical-align:middle}

/* ── Stock badges ── */
.prod-badge.stock-badge{background:#C9A84C;color:#000;top:auto;bottom:.6rem;left:.6rem;right:auto;font-size:.66rem;font-weight:800;padding:.2rem .5rem;border-radius:20px;position:absolute}
.esaurito-overlay{position:absolute;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;font-family:'Bebas Neue',sans-serif;font-size:1.4rem;letter-spacing:.12em;color:#fff}
.stock-warn-badge{background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.3);color:#C9A84C;font-size:.82rem;font-weight:600;padding:.45rem .9rem;border-radius:8px;margin-bottom:.75rem;display:inline-block}
.stock-esaurito-badge{background:rgba(220,50,50,.1);border:1px solid rgba(220,50,50,.3);color:#e05050;font-size:.85rem;font-weight:600;padding:.45rem .9rem;border-radius:8px;margin-bottom:.75rem;display:inline-block}

/* ── Disc grid modal ── */
.disc-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media(max-width:600px){.disc-grid{grid-template-columns:1fr}}

/* ══════════════════════════════════════
   MENU DROPDOWN DESKTOP
══════════════════════════════════════ */

/* Wrapper posizionamento */
/* ═══ DROPDOWN NAV ═══ */
/* ════════════════════════════
   NAV DROPDOWN
════════════════════════════ */
.nav-item {
  position: relative;
  display: inline-block;
}
.nav-btn-drop {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: none;
  border: none;
  color: #bbb;
  font-size: .82rem;
  font-weight: 500;
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: .5rem .75rem;
  border-radius: 4px;
  cursor: pointer;
  white-space: nowrap;
  font-family: inherit;
  transition: color .15s, background .15s;
}
.nav-item:hover .nav-btn-drop,
.nav-item.open .nav-btn-drop {
  color: #C9A84C;
  background: rgba(201,168,76,.1);
}
.nav-caret {
  font-size: .55rem;
  opacity: .5;
  transition: transform .2s;
  display: inline-block;
}
.nav-item.open .nav-caret {
  transform: rotate(180deg);
}
.nav-drop {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 180px;
  background: #111;
  border: 1px solid rgba(201,168,76,.25);
  border-radius: 8px;
  padding: 4px 0;
  box-shadow: 0 8px 32px rgba(0,0,0,.85);
  z-index: 9999;
}
.nav-item.open .nav-drop {
  display: block;
}
.drop-cat {
  display: block;
  padding: 9px 16px 6px;
  color: #ddd;
  font-size: .82rem;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
}
.drop-cat:hover { color: #C9A84C; background: rgba(255,255,255,.04); }
.drop-grp { position: relative; }
.drop-grp + .drop-cat,
.drop-cat + .drop-grp,
.drop-grp + .drop-grp { border-top: 1px solid rgba(255,255,255,.06); }
.drop-cat.has-fly { display: flex; justify-content: space-between; align-items: center; }
.fly-arr { font-size: .7rem; opacity: .4; margin-left: .5rem; }
/* Flyout laterale */
.drop-fly {
  display: none;
  position: absolute;
  left: 100%;
  top: 0;
  min-width: 160px;
  background: #1a1a1a;
  border: 1px solid rgba(201,168,76,.2);
  border-radius: 8px;
  padding: 4px 0;
  box-shadow: 4px 8px 24px rgba(0,0,0,.8);
  z-index: 10000;
}
.drop-grp:hover .drop-fly { display: block; }
.fly-item {
  display: block;
  padding: 7px 14px;
  color: #aaa;
  font-size: .8rem;
  cursor: pointer;
  white-space: nowrap;
}
.fly-item:hover { color: #fff; background: rgba(255,255,255,.05); }
.drop-sub {
  display: block;
  padding: 5px 16px 5px 28px;
  color: #888;
  font-size: .79rem;
  cursor: pointer;
  white-space: nowrap;
}
.drop-sub:hover { color: #fff; background: rgba(255,255,255,.04); }
.nav-btn-simple {
  background: none; border: none;
  color: #bbb; font-size: .82rem; font-weight: 500;
  letter-spacing: .06em; text-transform: uppercase;
  padding: .5rem .75rem; border-radius: 4px;
  cursor: pointer; white-space: nowrap; font-family: inherit;
  transition: color .15s, background .15s;
}
.nav-btn-simple:hover { color: #C9A84C; background: rgba(201,168,76,.08); }
.nav-btn-cta {
  background: none; border: 1px solid rgba(201,168,76,.35);
  color: #C9A84C; font-size: .82rem; font-weight: 600;
  letter-spacing: .06em; text-transform: uppercase;
  padding: .4rem 1rem; border-radius: 4px;
  cursor: pointer; white-space: nowrap; font-family: inherit;
  transition: all .15s;
}
.nav-btn-cta:hover { background: #C9A84C; color: #000; }
@media (max-width: 1100px) {
  .nav-item { display: none !important; }
  .nav-btn-simple { display: none !important; }
  .nav-btn-cta { display: none !important; }
}

/* ════════════════════════════
   MOBILE ACCORDION
════════════════════════════ */
.mob-acc { border-bottom: 1px solid rgba(255,255,255,.06); }
.mob-acc-hdr { display: flex; justify-content: space-between; align-items: center; padding: .85rem 1rem; font-size: 1rem; font-weight: 600; color: #eee; cursor: pointer; user-select: none; }
.mob-acc-hdr:hover { color: #C9A84C; }
.mob-arr { font-size: .55rem; opacity: .4; transition: transform .2s; }
.mob-acc.open .mob-arr { transform: rotate(180deg); }
.mob-acc-body { display: none; background: rgba(0,0,0,.2); }
.mob-acc.open .mob-acc-body { display: block; }
.mob-cat { display: block; padding: .6rem 1rem .4rem 1.4rem; color: #ccc; font-size: .9rem; font-weight: 600; cursor: pointer; }
.mob-cat:hover { color: #C9A84C; }
.mob-sub { display: block; padding: .4rem 1rem .4rem 2.2rem; color: #888; font-size: .85rem; cursor: pointer; }
.mob-sub:hover { color: #fff; }
.mob-link { display: block; padding: .85rem 1rem; font-size: 1rem; color: #ddd; cursor: pointer; border-bottom: 1px solid rgba(255,255,255,.05); }
.mob-link:hover { color: #C9A84C; }

/* ══ SUBCATEGORY MODAL ══ */
.sc-sec-group{margin-bottom:1rem}
.sc-sec-title{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem;padding-bottom:.25rem;border-bottom:1px solid rgba(201,168,76,.15)}
.sc-cats-grid{display:flex;flex-wrap:wrap;gap:.4rem}
.sc-cat-check{display:flex;align-items:center;gap:.4rem;padding:.35rem .75rem;border:1px solid rgba(255,255,255,.1);border-radius:20px;cursor:pointer;font-size:.8rem;color:#aaa;transition:all .15s;user-select:none}
.sc-cat-check input{display:none}
.sc-cat-check:hover{border-color:rgba(201,168,76,.3);color:#ddd}
.sc-cat-check.selected{background:rgba(201,168,76,.12);border-color:rgba(201,168,76,.4);color:var(--gold);font-weight:600}
