:root{
  --c-primary:#2E5D50;
  --c-primary-dark:#132420;
  --c-secondary:#3E7C59;
  --c-gold:#B89B5E;
  --c-gold-light:#E8C77E;
  --c-bg:#F8F7F2;
  --c-light-green:#EAF3EA;
  --c-white:#FFFFFF;
  --c-text:#141414;
  --c-text-soft:#2E5D50;
  --c-moss:#4C7A63;
  --c-fern:#6FA37B;
  --c-deep:#0B1613;
  --c-deep-2:#0E1E1A;

  --grad-hero: linear-gradient(180deg, rgba(11,22,19,.05) 0%, rgba(11,22,19,.45) 55%, rgba(11,22,19,.94) 100%);
  --grad-gold: linear-gradient(120deg, #B89B5E 0%, #E8C77E 50%, #B89B5E 100%);
  --grad-forest: linear-gradient(135deg, #23483E 0%, #0E1E1A 100%);
  --grad-glow: radial-gradient(circle, rgba(232,199,126,.5), transparent 70%);

  /* Only two font roles for the whole site â€” both Arial-based, per brief */
  --font-display: Arial, Helvetica, sans-serif;
  --font-body: Arial, Helvetica, sans-serif;

  --radius-sm:10px; --radius-md:22px; --radius-lg:38px;
  --shadow-soft: 0 24px 70px -24px rgba(11,22,19,.3);
  --shadow-deep: 0 40px 90px -30px rgba(11,22,19,.55);
  --shadow-glow: 0 0 46px rgba(184,155,94,.4);
  --ease-organic: cubic-bezier(.22,1,.36,1);
  --ease-spring: cubic-bezier(.34,1.56,.64,1);
}


/* ============================================================
   NAVBAR
   ============================================================ */
.navbar{ position:fixed; top:0; left:0; right:0; z-index:900; padding:1.0rem 0; transition:all .5s var(--ease-organic);   
    background: rgb(213 223 208);
    backdrop-filter: blur(18px) saturate(160%);
    box-shadow: 0 10px 30px -18px rgba(11, 22, 19, .3);}
.navbar .container{ display:flex; align-items:center; justify-content:space-between; }
.navbar.scrolled{ padding:.7rem 0; background:rgb(213 223 208); backdrop-filter:blur(18px) saturate(160%); box-shadow:0 10px 30px -18px rgba(11,22,19,.3); border-bottom-color:rgba(46,93,80,.1); }
.nav-logo{ display:flex; align-items:center; transition:transform .35s var(--ease-organic); }
.nav-logo:hover{ transform:translateY(-1px); }
.nav-logo img{width: 151px; filter:drop-shadow(0 6px 14px rgba(184,155,94,.18)); transition:filter .35s ease;}
.navbar.scrolled .nav-logo{ color:var(--c-primary-dark); }
.nav-logo .leaf-mark{ width:34px; height:34px; }
.nav-links{display:flex;align-items:center;gap: 1.35rem;}
.nav-links a{font-size: 0.83rem;
    font-weight: 600;
    letter-spacing: .02em;
    position: relative;
    color: #2e5d50;
    transition: color .3s ease;
    text-transform: uppercase;}
.navbar.scrolled .nav-links a{color: #2e5d50;}
.nav-links a::after{ content:''; position:absolute; left:0; bottom:-6px; height:1.5px; width:0; background:var(--c-gold); transition:width .35s var(--ease-organic); }
.nav-links a:hover::after{ width:100%; }
.nav-links a:hover{ color:var(--c-gold-dark,#8a7343); }

.nav-right{ display:flex; align-items:center; gap:1rem; }
.account-cluster{
  display:flex; align-items:center; gap:.2rem; background:rgba(255,255,255,.35); border:1px solid rgba(46,93,80,.14);
  border-radius:100px; padding:.3rem; transition:all .4s var(--ease-organic); box-shadow:0 8px 20px -14px rgba(11,22,19,.25);
}
.navbar.scrolled .account-cluster{ background:var(--c-light-green); border-color:rgba(46,93,80,.14); }
.account-cluster a{
  position:relative; display:flex; align-items:center; justify-content:center; width:36px; height:36px;
  border-radius:50%; color:var(--c-moss); font-size:.85rem; transition:all .3s var(--ease-organic);
}
.navbar.scrolled .account-cluster a{ color:var(--c-moss); }
.account-cluster a:hover{ background:var(--grad-gold); color:var(--c-deep); transform:scale(1.08); box-shadow:0 6px 16px -6px rgba(184,155,94,.55); }
.account-cluster .divider{ width:1px; height:16px; background:rgba(46,93,80,.18); }
.navbar.scrolled .account-cluster .divider{ background:rgba(46,93,80,.18); }
.cart-badge{
  position:absolute; top:-3px; right:-3px; width:16px; height:16px; border-radius:50%; background:var(--c-gold);
  color:var(--c-deep); font-size:.6rem; font-weight:800; display:flex; align-items:center; justify-content:center;
  border:2px solid var(--c-bg); transition:border-color .4s ease;
}
.navbar.scrolled .cart-badge{ border-color:var(--c-light-green); }

.nav-toggle{ display:none; flex-direction:column; gap:5px; z-index:901; cursor:pointer; padding:6px; }
.nav-toggle span{ width:26px; height:2px; border-radius:2px; background:var(--c-primary-dark); transition:transform .3s var(--ease-organic), opacity .2s ease; }
.navbar.scrolled .nav-toggle span{ background:var(--c-primary-dark); }
.nav-toggle.active span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.nav-toggle.active span:nth-child(2){ opacity:0; }
.nav-toggle.active span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
@media(max-width:960px){
  .nav-links{ position:fixed; inset:0 0 0 auto; width:min(320px,100%); height:100vh; background:var(--grad-forest); flex-direction:column; justify-content:center; align-items:flex-start; padding:2rem 2.4rem; gap:1.6rem; transform:translateX(100%); transition:transform .5s var(--ease-organic); }
  .nav-links.open{ transform:translateX(0); }
  .nav-links a{ color:var(--c-white) !important; font-size:1.1rem; }
  .nav-toggle{ display:flex; }
  .account-cluster a:nth-child(1),
  .account-cluster .divider:nth-child(2),
  .account-cluster a:nth-child(3),
  .account-cluster .divider:nth-child(4){ display:none; }
  .nav-right .btn-gold{ display:none; }
  
  .nav-logo img{width: 113px;}
  
  .navbar {  
    padding: 0.5rem 0; 
}
  
}

.nav-spacer{ height:0; }






/* ============================================================
   FOOTER
   ============================================================ */
.footer {
  background: #D5DFD0;  /* light green */
  color: #3b3a38;
  padding-top: 5rem;
  position: relative;
  overflow: hidden;
}

.footer::before{
  content:"";
  position:absolute; top:0; left:0; right:0; height:3px;
  background:var(--grad-gold);
}

.footer-top {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
  gap: 2.5rem;
  padding-bottom: 3.5rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}

.footer-logo {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  font-family: var(--font-display);
  font-size: 1.5rem;
  color: #2a2926;
  margin-bottom: 1rem;
}

.footer-logo img{
  width: 180px !important;
  filter:drop-shadow(0 8px 16px rgba(184,155,94,.18));
}

.footer-col h5 {
     color: #2a2926;
    font-family: var(--font-display);
    font-size: 1.09rem;
    margin-bottom: 1.2rem;
 
  font-weight:700;
  letter-spacing:.03em; 
  margin-bottom: 1.2rem;
  position:relative; 
}

 
.footer-col ul {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  padding-left:0px;
  list-style: none;
  
}


.footer-col p{
  color: #141414;
}

.footer-col a {
     font-size: 0.98rem;
    color: #0a0a08;
    transition: color 0.3s ease, padding-left 0.3s ease;
}

.footer-col a:hover {
  color: #b89b5e;
  padding-left: 4px;
}

/* Contact list — structure already present in the markup, styled to match the rest of the footer */
.contact-list{ display:flex; flex-direction:column;  }
.contact-item{ display:flex; align-items:flex-start; gap:.8rem; }
.contact-icon{
  min-width: 38px;
    height: 38px;
    border-radius: 14px;
    background: var(--c-light-green);
    color: var(--c-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
}
.contact-item h4{ font-size:1.02rem; font-weight:700; color:#2a2926; margin:0 0 .15rem;  letter-spacing:.03em; }
.contact-item p{ font-size: .9rem;
    color: var(--c-text-soft); }

.newsletter-form {
  display: flex;
  margin-top: 1rem;
  border-radius: 100px;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.15);
  transition:border-color .3s ease, box-shadow .3s ease;
}

.newsletter-form:focus-within{
  border-color:rgba(184,155,94,.55);
  box-shadow:0 0 0 3px rgba(184,155,94,.15);
}

.newsletter-form input {
  flex: 1;
  background: #ffffff;
  border: none;
  padding: 0.85rem 1.2rem;
  color: #3b3a38;
  font-size: 0.85rem;
}

.newsletter-form input:focus{ outline:none; }

.newsletter-form button {
  background: var(--grad-gold);
  color: #ffffff;
  padding: 0 1.3rem;
  font-weight: 700;
  transition:filter .25s ease;
}

.newsletter-form button:hover{ filter:brightness(1.06); }

.social-row {
  display: flex;
  gap: 0.8rem;
  margin-top: 1.6rem;
}

.social-row a {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #5b5954;
  transition: all 0.3s ease;
}

.social-row a:hover {
  background: #b89b5e;
  color: #ffffff;
  border-color: #b89b5e;
  transform: translateY(-4px);
  box-shadow:0 10px 20px -8px rgba(184,155,94,.55);
}

.footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.8rem 0;
    font-size: 0.95rem;
    color: #010101;
    flex-wrap: wrap;
    border-top: 1px solid #6b6964;
    gap: 1rem;
}

.footer-bottom a {
  color: #5b5954;
  margin-left: 1.2rem;
  transition: color 0.3s;
}

.footer-bottom a:hover {
  color: #b89b5e;
}


@media (max-width:768px){
 .footer-top {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2.5rem;
    padding-bottom: 3.5rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}   
}

