/* ============================================================
   NOUVELLE LITERIE — design system
   ============================================================ */
:root{
  --cream:#F5EFE4;
  --sand:#EDE3D2;
  --bone:#FFFFFF;
  --pine:#1F3B33;
  --pine-2:#2E5247;
  --pine-3:#3D6657;
  --ink:#212A26;
  --ink-soft:#4A554F;
  --clay:#C2683C;
  --clay-dark:#A9522C;
  --line:#DED4C2;
  --radius:18px;
  --shadow:0 20px 50px -25px rgba(31,59,51,.35);
}
html{scroll-behavior:smooth;}
body{
  font-family:'Manrope',system-ui,sans-serif;
  color:var(--ink);
  background:var(--cream);
  -webkit-font-smoothing:antialiased;
}
.font-display{font-family:'Fraunces',serif;}
h1,h2,h3,.h-like{font-family:'Fraunces',serif;font-weight:600;letter-spacing:-.01em;}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  font-family:'Manrope';font-weight:700;font-size:.95rem;line-height:1;
  padding:1rem 1.6rem;border-radius:999px;cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
  border:1.5px solid transparent;text-decoration:none;white-space:nowrap;
}
.btn-clay{background:var(--clay);color:#fff;}
.btn-clay:hover{background:var(--clay-dark);transform:translateY(-2px);box-shadow:0 12px 24px -10px rgba(194,104,60,.6);}
.btn-pine{background:var(--pine);color:#fff;}
.btn-pine:hover{background:var(--pine-2);transform:translateY(-2px);}
.btn-ghost{border-color:rgba(255,255,255,.55);color:#fff;backdrop-filter:blur(4px);background:rgba(255,255,255,.08);}
.btn-ghost:hover{background:rgba(255,255,255,.18);transform:translateY(-2px);}
.btn-outline{border-color:var(--pine);color:var(--pine);background:transparent;}
.btn-outline:hover{background:var(--pine);color:#fff;}

/* Layout helpers */
.wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem;}
.section-pad{padding:5.5rem 0;}
@media(max-width:640px){.section-pad{padding:3.5rem 0;}}

/* Kicker / eyebrow */
.eyebrow{
  display:inline-flex;align-items:center;gap:.55rem;
  font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--clay);
}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--clay);display:inline-block;}

/* Product image card */
.pcard{position:relative;overflow:hidden;border-radius:var(--radius);background:var(--sand);}
.pcard img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1);}
.pcard:hover img{transform:scale(1.05);}

/* Reveal animation */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease, transform .8s cubic-bezier(.2,.7,.2,1);}
.reveal.in{opacity:1;transform:none;}

/* Nav */
.nav-scrolled{box-shadow:0 10px 30px -20px rgba(31,59,51,.4);background:rgba(245,239,228,.92);backdrop-filter:blur(10px);}
.nav-link{color:var(--pine);font-weight:600;position:relative;}
.nav-underline{position:relative;text-decoration:none;}
.nav-underline::after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:2px;background:var(--clay);transition:width .25s ease;}
.nav-underline:hover::after,.nav-underline[aria-current="page"]::after{width:100%;}
.nav-underline[aria-current="page"]{color:var(--clay);}

/* Hero */
.hero-cover{position:relative;min-height:88svh;display:flex;align-items:flex-end;}
.hero-cover::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,30,26,.05) 20%,rgba(20,30,26,.25) 55%,rgba(20,30,26,.72) 100%);}

/* marquee */
.marquee{overflow:hidden;white-space:nowrap;}
.marquee-track{display:inline-flex;gap:3rem;animation:marquee 26s linear infinite;padding-right:3rem;}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* FAQ accordion */
.faq-item{border:1px solid var(--line);border-radius:14px;background:var(--bone);}
.faq-q{width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 1.4rem;font-weight:700;cursor:pointer;font-family:'Manrope';background:none;border:none;color:var(--ink);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.faq-a > div{padding:0 1.4rem 1.3rem;color:var(--ink-soft);}
.faq-item.open .faq-a{max-height:400px;}
.faq-item.open .chev{transform:rotate(45deg);}
.chev{transition:transform .3s ease;color:var(--clay);flex:none;}

/* inputs */
.field{width:100%;padding:.95rem 1.1rem;border:1.5px solid var(--line);border-radius:12px;background:var(--bone);color:var(--ink);font-family:'Manrope';font-size:.95rem;}
.field:focus{outline:none;border-color:var(--pine-2);}

/* stat */
.stat b{font-family:'Fraunces';font-size:2.6rem;color:var(--pine);display:block;line-height:1;}
.stat span{color:var(--ink-soft);font-size:.9rem;}

/* dropdown caret rotate */
.drop-wrap{position:relative;}
#mobileNav.open{transform:translateX(0);}
#subMarques.open{display:flex;}
