*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --gold:#C9A84C;
  --gold-bright:#E4C064;
  --gold-deep:#9A7430;
  --gold-pale:#F5EDD6;
  --gold-muted:#D4B870;
  --ink:#0C0B08;
  --ink-soft:#1E1C16;
  --ink-muted:#3D3A30;
  --parchment:#FAF6EE;
  --parchment-dark:#F0E9D8;
  --warm-stone:#E8E0CC;
  --stone:#C8BFA8;
  --mid:#8A8270;
  --text-muted:#6A6458;
  --border:#D4C8A8;
  --border-light:#EAE2CC;
  --font-display:'Cinzel',serif;
  --font-serif:'Libre Baskerville',Georgia,serif;
  --font-body:'Raleway',sans-serif;
  
  /* Background mappings */
  --bg-color: #FFFFFF;
  --bg-off: #FAF6EE;
  --text-color: #0C0B08;
}

html{scroll-behavior:smooth;overflow-x:hidden}
body{
  font-family:var(--font-body);
  background:var(--bg-color);
  color:var(--text-color);
  font-size:14px;
  line-height:1.7;
  overflow-x:hidden;
  width: 100%;
}

a{color:inherit;text-decoration:none}
button{cursor:pointer;border:none;background:none;font-family:var(--font-body)}
img{max-width:100%;display:block}

/* ── UTILITIES ── */
.hidden{display:none!important}

/* Animations */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.fade-up{animation:fadeUp .6s ease forwards}

/* ── RESPONSIVE ── */

/* Tablet (992px and down) */
@media (max-width: 992px) {
  .hero-inner {
    grid-template-columns: 1fr;
    text-align: center;
    gap: 3rem;
  }
  .hero-text {
    padding-right: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .hero-subtext {
    margin-left: 0;
    border-left: none;
    border-top: 1px solid var(--gold);
    padding-left: 0;
    padding-top: 1.25rem;
  }
  .hero-visual {
    align-items: center;
  }
  .products-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .footer-top {
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
  }
}

/* Mobile (768px and down) */
@media (max-width: 768px) {
  .nav-inner {
    grid-template-columns: 1fr auto;
    padding: 0 1.5rem;
  }
  .nav-left {
    display: none; /* Hide desktop links */
  }
  .nav-logo {
    font-size: 18px;
    text-align: left;
  }
  .nav-right {
    gap: 1rem;
  }
  .nav-btn span {
    display: none; /* Hide text, show only icons */
  }
  
  .hero-text h1 {
    font-size: 3rem;
  }
  
  .features-inner {
    grid-template-columns: 1fr 1fr;
  }
  
  .testimonials-grid {
    grid-template-columns: 1fr;
  }
  
  .footer-top {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .footer-brand p {
    margin: 0 auto 2rem;
  }
  .social-links {
    justify-content: center;
  }
  .footer-bottom {
    flex-direction: column;
    gap: 1.5rem;
    text-align: center;
  }
}

/* Small Mobile (480px and down) */
@media (max-width: 480px) {
  .products-grid {
    grid-template-columns: 1fr;
  }
  .hero-text h1 {
    font-size: 2.4rem;
  }
  .hero-actions {
    flex-direction: column;
    width: 100%;
  }
  .btn-gold, .btn-ghost {
    width: 100%;
    text-align: center;
  }
  .features-inner {
    grid-template-columns: 1fr;
  }
}
