/* MT. PEAK — shared styles (loaded on every page) */
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}

:root{
  --bg:#0a1410;
  --bg2:#0f1d17;
  --green:#16352a;
  --green-glow:#1f4a3a;
  --gold:#c9a961;
  --gold-bright:#e8cd8f;
  --gold-deep:#a8893f;
  --cream:#f4efe6;
  --cream-dim:rgba(244,239,230,.55);
  --ink:#070d0a;
}

html{scroll-behavior:smooth;}
body{
  font-family:'Jost',sans-serif;
  background:var(--bg);
  color:var(--cream);
  overflow-x:hidden;
  font-weight:300;
  line-height:1.6;
  letter-spacing:.5px;
}
a,button{cursor:pointer;}
img{display:block;}
[hidden]{display:none!important;}

::selection{background:var(--gold);color:var(--ink);}

/* film grain overlay — barely-there, static */
.grain{
  position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:.025;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* vignette — base (home page overrides in home.css) */
.vignette{position:fixed;inset:0;z-index:9997;pointer-events:none;
  background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.4) 100%);}

/* ============ NAV (base — page-type CSS overrides sizing/scroll state) ============ */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;
  display:flex;justify-content:space-between;align-items:center;}
.nav-brand{display:flex;align-items:center;gap:.9rem;text-decoration:none;}
.nav-logo{height:auto;}
.nav-name{font-family:'Cormorant Garamond',serif;font-weight:500;
  color:var(--gold);text-transform:uppercase;}
.nav-links{display:flex;align-items:center;}
.nav-links a{color:var(--cream-dim);text-decoration:none;font-size:.72rem;letter-spacing:2px;
  text-transform:uppercase;transition:color .4s;position:relative;}
.nav-links a::after{content:'';position:absolute;bottom:-6px;left:0;width:0;height:1px;
  background:var(--gold);transition:width .4s ease;}
.nav-links a:hover{color:var(--gold);}
.nav-links a:hover::after{width:100%;}
.nav-cart{font-family:'Cormorant Garamond',serif;font-size:.95rem;letter-spacing:2px;
  color:var(--gold);border:1px solid rgba(201,169,97,.4);padding:.7rem 1.5rem;min-height:44px;
  background:none;text-transform:uppercase;transition:all .4s;}
.nav-cart:hover{background:var(--gold);color:var(--ink);}

/* ============ FOOTER ============ */
footer{background:var(--ink);padding:5rem 3.5rem 2.5rem;border-top:1px solid rgba(201,169,97,.1);}
.foot-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;max-width:1400px;margin:0 auto 4rem;}
.foot-brand .nav-name{font-size:1.6rem;margin-bottom:1.2rem;display:block;}
.foot-brand p{color:var(--cream-dim);font-size:.85rem;line-height:1.8;max-width:280px;}
.foot-col h4{font-family:'Cormorant Garamond',serif;font-size:.95rem;letter-spacing:1px;
  margin-bottom:1.4rem;color:var(--gold);}
.foot-col a{display:block;color:var(--cream-dim);text-decoration:none;font-size:.8rem;
  margin-bottom:.9rem;letter-spacing:.5px;transition:color .4s;}
.foot-col a:hover{color:var(--gold);}
.foot-bottom{border-top:1px solid rgba(201,169,97,.1);padding-top:2.5rem;text-align:center;
  font-size:.72rem;letter-spacing:1.5px;color:var(--cream-dim);max-width:1400px;margin:0 auto;}
.foot-news{display:flex;margin-top:.4rem;}
.foot-news input{flex:1;background:rgba(244,239,230,.05);border:1px solid rgba(201,169,97,.25);
  border-right:none;color:var(--cream);padding:.7rem .9rem;font-family:'Jost',sans-serif;
  font-weight:300;font-size:.8rem;min-width:0;}
.foot-news input:focus{outline:none;border-color:var(--gold);}
.foot-news button{background:none;border:1px solid rgba(201,169,97,.4);color:var(--gold);
  padding:.7rem 1rem;font-size:.65rem;letter-spacing:1.5px;text-transform:uppercase;
  font-family:'Jost',sans-serif;transition:all .3s;}
.foot-news button:hover{background:var(--gold);color:var(--ink);}
.foot-news-msg{font-size:.7rem;margin-top:.5rem;color:var(--gold);min-height:1em;letter-spacing:.5px;}
@media(max-width:900px){.foot-top{grid-template-columns:1fr 1fr;gap:2.5rem;}footer{padding:4rem 1.5rem 2rem;}}

/* ============ CART ============ */
.cart-overlay{position:fixed;inset:0;background:rgba(7,13,10,.8);backdrop-filter:blur(8px);
  z-index:2000;opacity:0;visibility:hidden;transition:all .5s;}
.cart-overlay.open{opacity:1;visibility:visible;}
.cart-panel{position:fixed;top:0;right:0;height:100%;width:min(440px,100%);background:var(--bg2);
  z-index:2001;transform:translateX(100%);transition:transform .6s cubic-bezier(.16,1,.3,1);
  display:flex;flex-direction:column;border-left:1px solid rgba(201,169,97,.15);}
.cart-panel.open{transform:translateX(0);}
.cart-top{padding:2.5rem;display:flex;justify-content:space-between;align-items:center;
  border-bottom:1px solid rgba(201,169,97,.12);}
.cart-top h2{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:1.6rem;letter-spacing:2px;}
.cart-close{background:none;border:none;color:var(--cream);font-size:1.3rem;transition:color .3s;
  width:44px;height:44px;display:flex;align-items:center;justify-content:center;margin:-.5rem;}
.cart-close:hover{color:var(--gold);}
.cart-body{flex:1;overflow-y:auto;padding:1.5rem 2.5rem;}
.cart-line{display:flex;justify-content:space-between;align-items:flex-start;padding:1.8rem 0;
  border-bottom:1px solid rgba(201,169,97,.08);}
.cart-line h3{font-family:'Cormorant Garamond',serif;font-size:1.2rem;margin-bottom:.4rem;font-weight:400;}
.cart-line .q{font-size:.75rem;color:var(--cream-dim);letter-spacing:1px;}
.cart-line .right{text-align:right;display:flex;flex-direction:column;gap:.6rem;align-items:flex-end;}
.cart-line .price{font-family:'Cormorant Garamond',serif;font-size:1.3rem;color:var(--gold);}
.cart-line .cart-rm{background:none;border:none;color:var(--cream-dim);font-size:.68rem;
  letter-spacing:1px;text-transform:uppercase;text-decoration:underline;transition:color .3s;padding:.4rem 0;}
.cart-line .cart-rm:hover{color:var(--gold);}
.cart-qty{display:inline-flex;align-items:center;border:1px solid rgba(201,169,97,.3);}
.cart-qty button{width:34px;height:34px;background:none;border:none;color:var(--gold);
  font-size:1rem;line-height:1;transition:background .3s,color .3s;}
.cart-qty button:hover{background:var(--gold);color:var(--ink);}
.cart-qty span{min-width:34px;text-align:center;font-size:.85rem;color:var(--cream);}
.cart-empty{text-align:center;padding:4rem 1rem;color:var(--cream-dim);font-family:'Cormorant Garamond',serif;
  font-style:italic;font-size:1.1rem;}
.cart-note{font-size:.7rem;color:var(--cream-dim);letter-spacing:.5px;line-height:1.7;
  margin-top:1.4rem;text-align:center;}
.cart-foot{padding:2.5rem;border-top:1px solid rgba(201,169,97,.12);}
.cart-total{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1.8rem;}
.cart-total span:first-child{font-size:.75rem;letter-spacing:2px;text-transform:uppercase;color:var(--cream-dim);}
.cart-total span:last-child{font-family:'Cormorant Garamond',serif;font-size:2rem;color:var(--gold);}
.cart-checkout{width:100%;background:var(--gold);color:var(--ink);border:none;padding:1.2rem;
  font-size:.75rem;letter-spacing:3px;text-transform:uppercase;transition:all .4s;
  font-family:'Jost',sans-serif;font-weight:500;}
.cart-checkout:hover{background:var(--gold-bright);}

/* scroll-progress line */
.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;transform:scaleX(0);transform-origin:0 50%;
  background:linear-gradient(90deg,var(--gold-deep),var(--gold),var(--gold-bright));
  z-index:1500;pointer-events:none;will-change:transform;}

@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important;}}
