/* ============================================================
   VELSENE — shared site theme (nav + footer + tokens)
   Namespaced (.vnav / .vfoot) so it never collides with a
   page's own element selectors. Injected by shell.js.
   ============================================================ */
:root{
  --ink:#14100b;
  --ink2:#0c0a08;
  --paper:#ece5d7;
  --paper2:#e4dbc9;
  --paper3:#f2ede3;
  --taupe:#71634f;
  --taupe-dim:rgba(113,99,79,0.65);
  --gold:#b9924c;
  --gold-bright:#c9a55a;
  --cream:#f4ede2;
  --line-d:rgba(244,237,226,0.1);
  --line-l:rgba(20,16,11,0.12);
}
.v-serif{font-family:'Cormorant Garamond',serif;}

/* rotating-gradient pill button (shared) */
@property --vr{syntax:'<angle>';initial-value:0deg;inherits:false;}
.v-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:220px;height:58px;padding:0 40px;border-radius:50px;text-decoration:none;cursor:pointer;
  border:2px outset #000;
  background:linear-gradient(var(--vr),#7d5f28,var(--gold-bright),#f3ddad,#7d5f28);animation:vrot 3s linear infinite;}
.v-btn::after{content:"";position:absolute;inset:4px;border-radius:46px;background:var(--ink2);z-index:1;transition:opacity 0.3s ease;}
.v-btn .l{position:relative;z-index:2;font-family:'Jost',sans-serif;font-size:11px;letter-spacing:0.3em;text-indent:0.3em;text-transform:uppercase;color:var(--cream);transition:color 0.3s ease;}
.v-btn:hover::after{opacity:0;}
.v-btn:hover .l{color:var(--ink2);}
@keyframes vrot{to{--vr:360deg;}}

/* ============ NAV (3-zone, theme adaptive) ============ */
.vnav{position:fixed;top:0;left:0;right:0;z-index:200;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:20px 44px;transition:padding 0.5s ease,background 0.5s ease,color 0.5s ease,box-shadow 0.5s ease;color:var(--cream);font-family:'Jost',sans-serif;}
.vnav .zone-l{display:flex;gap:30px;}
.vnav .zone-r{display:flex;gap:30px;justify-content:flex-end;align-items:center;}
.vnav a{font-size:10.5px;letter-spacing:0.26em;text-transform:uppercase;text-decoration:none;color:inherit;opacity:0.75;transition:opacity 0.3s,color 0.3s;}
.vnav a:hover{opacity:1;color:var(--gold-bright);}
.vnav.on-light a:hover{color:var(--gold);}
.vnav .wordmark{font-family:'Cormorant Garamond',serif;font-size:24px;letter-spacing:0.34em;text-indent:0.34em;font-weight:400;opacity:1;text-transform:none;}
.vnav .wordmark i{font-style:normal;color:var(--gold-bright);}
.vnav.on-light{color:var(--ink);}
.vnav.on-light .wordmark i{color:var(--gold);}
.vnav.scrolled{padding:13px 44px;backdrop-filter:blur(16px);}
.vnav.scrolled:not(.on-light){background:rgba(12,10,8,0.6);box-shadow:0 1px 0 rgba(244,237,226,0.06);}
.vnav.scrolled.on-light{background:rgba(236,229,215,0.75);box-shadow:0 1px 0 var(--line-l);}
.vnav .v-burger{display:none;background:none;border:0;color:inherit;cursor:pointer;padding:6px;}
.vnav .v-burger span{display:block;width:22px;height:1.5px;background:currentColor;margin:5px 0;transition:transform 0.3s,opacity 0.3s;}
@media(max-width:820px){
  .vnav{padding:16px 20px;grid-template-columns:1fr auto 1fr;}
  .vnav.scrolled{padding:11px 20px;}
  .vnav .zone-l{display:none;}
  .vnav .zone-r a:not(.v-cartlink){display:none;}
  .vnav .v-burger{display:block;justify-self:start;}
}

/* solid-bar variant for content / commerce pages (always legible, sits in flow) */
body[data-nav-solid] .vnav{position:sticky;background:rgba(13,11,9,0.98);color:var(--cream);border-bottom:1px solid rgba(255,255,255,0.08);backdrop-filter:none;}
body[data-nav-solid] .vnav.on-light{color:var(--cream);background:rgba(13,11,9,0.98);}
body[data-nav-solid] .vnav.on-light .wordmark i,body[data-nav-solid] .vnav .wordmark i{color:var(--gold-bright);}
body[data-nav-solid] .vnav.scrolled{padding:20px 44px;}
@media(max-width:820px){body[data-nav-solid] .vnav.scrolled{padding:16px 20px;}}

/* mobile drawer */
.v-drawer{position:fixed;inset:0;z-index:250;background:rgba(10,8,6,0.97);backdrop-filter:blur(6px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;opacity:0;visibility:hidden;transition:opacity 0.4s ease,visibility 0.4s ease;}
.v-drawer.open{opacity:1;visibility:visible;}
.v-drawer a{font-family:'Cormorant Garamond',serif;font-size:26px;letter-spacing:0.14em;color:var(--cream);text-decoration:none;}
.v-drawer a:hover{color:var(--gold-bright);}
.v-drawer .v-close{position:absolute;top:22px;right:24px;background:none;border:0;color:var(--cream);font-size:30px;line-height:1;cursor:pointer;}

/* ============ FOOTER ============ */
.vfoot{position:relative;overflow:hidden;background:var(--ink2);color:var(--cream);padding:110px 0 50px;font-family:'Jost',sans-serif;font-weight:300;}
.vfoot .foot-bg{position:absolute;inset:0;z-index:0;overflow:hidden;}
.vfoot .foot-bg video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.vfoot .foot-scrim{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(rgba(12,10,8,0.52),rgba(12,10,8,0.66)),radial-gradient(120% 140% at 12% 0%,transparent 30%,rgba(12,10,8,0.5) 100%),linear-gradient(to top,#0c0a08 4%,rgba(12,10,8,0.2) 40%,transparent 70%);}
.vfoot .v-wrap{position:relative;z-index:2;max-width:1300px;margin:0 auto;padding:0 44px;}
.vfoot .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:60px;}
.vfoot .wordmark{font-family:'Cormorant Garamond',serif;font-size:30px;letter-spacing:0.3em;color:var(--cream);}
.vfoot .wordmark i{font-style:normal;color:var(--gold-bright);}
.vfoot .tag{margin-top:18px;font-size:11px;letter-spacing:0.26em;text-transform:uppercase;color:rgba(244,237,226,0.5);line-height:2.2;}
.vfoot h4{font-size:10.5px;letter-spacing:0.3em;text-transform:uppercase;color:rgba(244,237,226,0.4);margin-bottom:24px;font-weight:400;}
.vfoot .f-links a{display:block;font-size:12.5px;letter-spacing:0.08em;color:rgba(244,237,226,0.65);text-decoration:none;margin-bottom:13px;transition:color 0.3s;}
.vfoot .f-links a:hover{color:var(--gold-bright);}
.vfoot .nl{display:flex;gap:12px;margin-top:12px;max-width:430px;align-items:stretch;}
.vfoot .nl input{flex:1;min-width:0;background:#e9dfcd;border:1px solid rgba(28,21,16,0.08);border-radius:40px;color:#1c1510;font-family:'Jost',sans-serif;font-size:12px;letter-spacing:0.04em;padding:15px 22px;outline:none;transition:box-shadow 0.2s;}
.vfoot .nl input::placeholder{color:rgba(28,21,16,0.45);}
.vfoot .nl input:focus{box-shadow:0 0 0 2px rgba(201,165,90,0.4);}
@property --nlr{syntax:'<angle>';initial-value:0deg;inherits:false;}
@keyframes nlrot{to{--nlr:360deg;}}
.vfoot .nl button{position:relative;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:2px outset #000;border-radius:40px;padding:0 32px;min-height:48px;background:linear-gradient(var(--nlr),#7d5f28,#c9a55a,#f3ddad,#7d5f28);animation:nlrot 3s linear infinite;}
.vfoot .nl button::after{content:"";position:absolute;inset:4px;border-radius:36px;background:#0c0a08;z-index:1;transition:opacity 0.3s ease;}
.vfoot .nl button .lbl{position:relative;z-index:2;font-family:'Jost',sans-serif;font-size:11px;font-weight:600;letter-spacing:0.22em;text-transform:uppercase;color:#f4ede2;transition:color 0.3s ease;}
.vfoot .nl button:hover::after{opacity:0;}
.vfoot .nl button:hover .lbl{color:#0c0a08;}
.vfoot .foot-base{margin-top:80px;padding-top:28px;border-top:1px solid var(--line-d);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:10px;letter-spacing:0.22em;color:rgba(244,237,226,0.3);text-transform:uppercase;}
@media(max-width:900px){.vfoot .foot-grid{grid-template-columns:1fr;gap:44px;}.vfoot{padding:80px 0 44px;}}
@media(max-width:760px){.vfoot .v-wrap{padding:0 22px;}}

@media (prefers-reduced-motion: reduce){
  .v-btn{animation:none;}
}
