#vilea-root *, #vilea-root *::before, #vilea-root *::after { box-sizing: border-box; }
#vilea-root {
  --c-bg:#0a0a0a; --c-surface:#131313; --c-ink:#f2f0ea; --c-muted:#8d8a83;
  --c-line:rgba(255,255,255,.13); --c-stripe:rgba(255,255,255,.045); --c-cap:rgba(255,255,255,.42);
  --c-header:rgba(10,10,10,.74); --c-accent:#b69d74; --c-accent-fg:#0a0a0a;
  min-height:100vh; background:var(--c-bg); color:var(--c-ink); font-family:'Jost',sans-serif; font-weight:300;
}
html, body { margin:0; padding:0; }
body { background:#0a0a0a; }
#vilea-root button { font-family:inherit; }
#vilea-root input::placeholder { color:var(--c-muted); opacity:.8; }
#vilea-root ::selection { background:#b69d74; color:#0a0a0a; }
#vilea-root .burger { display:none; }
#vilea-root .ann-short { display:none; }
@keyframes vlUp { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:translateY(0); } }
@keyframes vlFade { from { opacity:0; } to { opacity:1; } }
@keyframes vlSpin { to { transform:rotate(360deg); } }
#vilea-root .mer-card { cursor:pointer; }
#vilea-root .mer-card:hover .mer-card-img { transform:scale(1.045); }
#vilea-root .mer-add:hover { background:var(--c-ink); color:var(--c-bg); border-color:var(--c-ink); }
#vilea-root .v-hero-cta:hover { background:#fff; color:#0a0a0a; border-color:#fff; letter-spacing:.32em; }
#vilea-root .v-cta-line:hover { opacity:.62; letter-spacing:.38em; }
#vilea-root .v-muted:hover { color:var(--c-ink); }
#vilea-root .v-solid:hover { opacity:.85; }
#vilea-root .v-outline:hover { border-color:var(--c-accent); color:var(--c-accent); }
#vilea-root .avatar:hover { border-color:var(--c-accent); color:var(--c-accent); }
@media (max-width:1024px){
  #vilea-root .grid-4 { grid-template-columns:repeat(3,1fr) !important; }
  #vilea-root .prod-2col { grid-template-columns:1fr !important; gap:48px !important; }
  #vilea-root .prod-detail { position:static !important; top:auto !important; }
  #vilea-root .two-col { grid-template-columns:1fr !important; gap:48px !important; }
}
@media (max-width:860px){
  #vilea-root .nav-links { display:none !important; }
  #vilea-root .burger { display:inline-flex !important; }
  #vilea-root .hide-mobile { display:none !important; }
  #vilea-root .footer-grid { grid-template-columns:1fr 1fr !important; gap:30px !important; }
  #vilea-root .foot-brand { grid-column:1 / -1 !important; }
  #vilea-root .grid-3 { grid-template-columns:repeat(2,1fr) !important; gap:14px !important; }
  #vilea-root .secT { padding-top:80px !important; }
  #vilea-root .secMb { margin-top:80px !important; }
}
@media (max-width:700px){
  #vilea-root .grid-4 { grid-template-columns:repeat(2,1fr) !important; gap:22px !important; }
  #vilea-root .grid-3r { grid-template-columns:repeat(2,1fr) !important; gap:20px !important; }
  #vilea-root .pad { padding-left:20px !important; padding-right:20px !important; }
  #vilea-root .hdr-pad { padding-left:20px !important; padding-right:20px !important; }
  #vilea-root .topspace { padding-top:128px !important; }
  #vilea-root .cat-head { flex-direction:column; align-items:flex-start; gap:18px; }
  #vilea-root .eyebrow { letter-spacing:.2em !important; }
  #vilea-root .ann-full { display:none !important; }
  #vilea-root .ann-short { display:inline !important; }
  #vilea-root .foot-bottom { flex-direction:column; gap:10px; align-items:flex-start; }
  #vilea-root .hero { height:86vh !important; }
  #vilea-root .prof-head { flex-wrap:wrap; gap:18px; }
}
@media (max-width:460px){
  #vilea-root .grid-4 { grid-template-columns:1fr 1fr !important; gap:15px !important; }
}
