/* ===== ZYSHAÉ — shared design system ===== */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,400&family=Jost:wght@300;400;500&display=swap');

:root{
  --onyx:#0a0908;
  --panel:#141210;
  --panel-light:#1c1a16;
  --ivory:#f4efe4;
  --ivory-dim:#c9c2b2;
  --taupe:#8a8272;
  --gold-1:#a97c3c;
  --gold-2:#e8c46a;
  --gold-3:#f6dfa0;
  --hair:rgba(232,196,106,0.18);
  --ok:#7fae86;
  --err:#c97b6a;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--onyx);color:var(--ivory);font-family:'Jost',sans-serif;font-weight:300;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
::selection{background:var(--gold-2);color:var(--onyx);}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:500;letter-spacing:0.02em;}
.gold-text{background:linear-gradient(115deg,var(--gold-1) 10%,var(--gold-3) 45%,var(--gold-1) 80%);-webkit-background-clip:text;background-clip:text;color:transparent;}
.eyebrow{font-family:'Jost',sans-serif;font-size:0.72rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--taupe);}
.container{max-width:1180px;margin:0 auto;padding:0 6vw;}
.rule{width:60px;height:1px;background:var(--gold-2);margin:0 auto;opacity:0.6;}

/* ---------- GLASSMORPHISM ---------- */
.glass{
  background:rgba(255,255,255,0.05);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  border:1px solid rgba(232,196,106,0.22);
  box-shadow:0 8px 32px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.06);
}
.glass-strong{
  background:rgba(20,18,16,0.55);
  backdrop-filter:blur(22px) saturate(150%);
  -webkit-backdrop-filter:blur(22px) saturate(150%);
  border:1px solid rgba(232,196,106,0.28);
  box-shadow:0 16px 48px rgba(0,0,0,0.45), inset 0 1px 0 rgba(255,255,255,0.07);
}

/* ---------- ROTATING HERO BACKDROP ---------- */
.hero-slider{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
}
.hero-slide{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  opacity:0;
  transform:scale(1.08);
  transition:opacity 2.2s ease, transform 8s ease;
}
.hero-slide.active{
  opacity:1;
  transform:scale(1);
}
.hero-slider::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(10,9,8,0.55) 0%, rgba(10,9,8,0.78) 55%, var(--onyx) 100%);
  z-index:1;
}
.hero-panel{
  position:relative;
  z-index:2;
  padding:52px 46px;
  border-radius:2px;
}

/* ---------- NAV ---------- */
header{position:fixed;top:0;left:0;right:0;z-index:100;padding:22px 6vw;display:flex;align-items:center;justify-content:space-between;background:rgba(10,9,8,0.86);backdrop-filter:blur(14px);border-bottom:1px solid var(--hair);}
.nav-mark{display:flex;align-items:center;gap:10px;font-family:'Cormorant Garamond',serif;font-size:1.3rem;letter-spacing:0.22em;}
.nav-mark img{height:28px;width:auto;}
nav ul{display:flex;gap:36px;list-style:none;}
nav ul li a{font-size:0.7rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--ivory-dim);position:relative;padding-bottom:4px;}
nav ul li a.active{color:var(--gold-3);}
nav ul li a::after{content:'';position:absolute;left:0;bottom:0;width:0%;height:1px;background:var(--gold-2);transition:width 0.35s ease;}
nav ul li a:hover{color:var(--gold-3);}
nav ul li a:hover::after{width:100%;}
.nav-cta{font-size:0.68rem;letter-spacing:0.16em;text-transform:uppercase;border:1px solid var(--hair);padding:10px 20px;color:var(--gold-3);white-space:nowrap;transition:border-color 0.3s ease,background 0.3s ease;}
.nav-cta:hover{border-color:var(--gold-2);background:rgba(232,196,106,0.06);}
.nav-toggle{display:none;background:none;border:none;color:var(--ivory);font-size:1.4rem;cursor:pointer;}
.nav-links{display:flex;align-items:center;gap:36px;}

/* ---------- BUTTONS ---------- */
.btn-primary{display:inline-block;background:linear-gradient(120deg,var(--gold-1),var(--gold-3),var(--gold-1));background-size:220% auto;color:var(--onyx);font-family:'Jost',sans-serif;font-size:0.74rem;letter-spacing:0.18em;text-transform:uppercase;padding:16px 34px;font-weight:500;border:none;cursor:pointer;transition:background-position 0.6s ease,transform 0.3s ease;}
.btn-primary:hover{background-position:right center;transform:translateY(-2px);}
.btn-primary:disabled{opacity:0.5;cursor:not-allowed;transform:none;}
.btn-ghost{display:inline-block;border:1px solid var(--hair);color:var(--ivory);font-size:0.74rem;letter-spacing:0.18em;text-transform:uppercase;padding:16px 30px;background:none;cursor:pointer;transition:border-color 0.3s ease,color 0.3s ease;}
.btn-ghost:hover{border-color:var(--gold-2);color:var(--gold-3);}

/* ---------- PAGE HERO (inner pages) ---------- */
.page-hero{padding:170px 6vw 90px;text-align:center;position:relative;}
.page-hero::before{content:'';position:absolute;top:30%;left:50%;width:700px;height:700px;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(169,124,60,0.12) 0%,rgba(169,124,60,0) 70%);pointer-events:none;}
.page-hero h1{position:relative;z-index:1;font-size:clamp(2.2rem,5vw,3.4rem);margin-top:16px;}
.page-hero p{position:relative;z-index:1;max-width:560px;margin:20px auto 0;color:var(--ivory-dim);line-height:1.8;font-size:0.98rem;}

/* ---------- TRUST BAR ---------- */
.trust-bar{border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);background:var(--panel);padding:26px 6vw;}
.trust-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.trust-item{display:flex;align-items:center;gap:12px;justify-content:center;text-align:left;padding:14px 16px;border-radius:2px;}
.trust-item svg{width:22px;height:22px;stroke:var(--gold-2);fill:none;stroke-width:1.2;flex-shrink:0;}
.trust-item span{font-size:0.76rem;letter-spacing:0.03em;color:var(--ivory-dim);line-height:1.4;}

/* ---------- SECTIONS ---------- */
section{padding:120px 6vw;}
.section-head{text-align:center;max-width:640px;margin:0 auto 70px;}
.section-head h2{font-size:clamp(2rem,3.6vw,2.7rem);margin-top:16px;}
.section-alt{background:var(--panel);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);}

/* ---------- CARDS / GRIDS ---------- */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--hair);border-left:1px solid var(--hair);}
.benefit-card{border-right:1px solid var(--hair);border-bottom:1px solid var(--hair);padding:40px 24px;text-align:center;transition:background 0.4s ease, transform 0.3s ease;}
.benefit-card:hover{background:rgba(232,196,106,0.06);transform:translateY(-3px);}
.benefit-icon{width:36px;height:36px;margin:0 auto 18px;}
.benefit-icon svg{width:100%;height:100%;stroke:var(--gold-2);fill:none;stroke-width:1.1;}
.benefit-card h3{font-family:'Jost',sans-serif;font-weight:400;font-size:0.85rem;letter-spacing:0.02em;color:var(--ivory);line-height:1.4;}

/* ---------- INGREDIENTS TABLE ---------- */
.ing-list{border-top:1px solid var(--hair);}
.ing-list-item{display:flex;align-items:baseline;gap:18px;padding:16px 4px;border-bottom:1px solid var(--hair);}
.ing-list-item .ing-index{font-family:'Cormorant Garamond',serif;font-size:0.85rem;color:var(--gold-2);width:26px;flex-shrink:0;}
.ing-list-item .ing-name{font-size:0.94rem;color:var(--ivory-dim);}
.ing-note{margin-top:26px;font-size:0.78rem;color:var(--taupe);line-height:1.7;}

/* ---------- FAQ ACCORDION ---------- */
.faq-item{border-bottom:1px solid var(--hair);}
.faq-q{width:100%;text-align:left;background:none;border:none;color:var(--ivory);font-family:'Jost',sans-serif;font-size:0.98rem;padding:26px 0;display:flex;justify-content:space-between;align-items:center;cursor:pointer;gap:20px;}
.faq-q .plus{font-family:'Cormorant Garamond',serif;font-size:1.4rem;color:var(--gold-2);transition:transform 0.3s ease;flex-shrink:0;}
.faq-item.open .faq-q .plus{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height 0.4s ease;}
.faq-a p{color:var(--ivory-dim);font-size:0.9rem;line-height:1.8;padding-bottom:24px;max-width:640px;}

/* ---------- REVIEW CARDS ---------- */
.review-card{padding:34px 28px;border-radius:2px;}
.review-stars{color:var(--gold-2);font-size:0.9rem;letter-spacing:2px;margin-bottom:16px;}
.review-card p{color:var(--ivory-dim);font-size:0.92rem;line-height:1.8;margin-bottom:20px;}
.review-name{font-size:0.78rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--gold-3);}
.review-badge{font-size:0.68rem;color:var(--taupe);margin-top:4px;}

/* ---------- FORMS ---------- */
.form-field{margin-bottom:22px;}
.form-field label{display:block;font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--taupe);margin-bottom:10px;}
.form-field input,.form-field textarea,.form-field select{width:100%;background:rgba(255,255,255,0.04);backdrop-filter:blur(10px);border:1px solid var(--hair);color:var(--ivory);padding:14px 16px;font-family:'Jost',sans-serif;font-size:0.92rem;font-weight:300;border-radius:2px;}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:1px solid var(--gold-2);border-color:var(--gold-2);}
.form-field textarea{resize:vertical;min-height:120px;}
.form-status{margin-top:16px;font-size:0.82rem;}
.form-status.ok{color:var(--ok);}
.form-status.err{color:var(--err);}

/* ---------- PRODUCT PAGE ---------- */
.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:flex-start;}
.product-media img{filter:drop-shadow(0 30px 60px rgba(0,0,0,0.55));}
.price-row{display:flex;align-items:baseline;gap:14px;margin:20px 0 8px;}
.price-now{font-family:'Cormorant Garamond',serif;font-size:2.2rem;color:var(--gold-3);}
.price-old{font-size:1rem;color:var(--taupe);text-decoration:line-through;}
.qty-row{display:flex;align-items:center;gap:16px;margin:26px 0;}
.qty-box{display:flex;align-items:center;border-radius:2px;}
.qty-box button{background:none;border:none;color:var(--gold-2);width:38px;height:38px;font-size:1.1rem;cursor:pointer;}
.qty-box span{width:36px;text-align:center;font-size:0.92rem;}
.spec-row{display:flex;gap:14px;flex-wrap:wrap;margin:24px 0;}
.spec-chip{padding:9px 18px;font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold-3);border-radius:2px;}

/* ---------- FEATURE / LIFESTYLE IMAGERY ---------- */
.feature-media{position:relative;border-radius:2px;overflow:hidden;}
.feature-media img{width:100%;display:block;}
.feature-media .glass-caption{position:absolute;left:20px;right:20px;bottom:20px;padding:18px 22px;}
.campaign-strip{display:grid;grid-template-columns:1fr 1fr;gap:0;}
.campaign-strip img{width:100%;height:100%;object-fit:cover;display:block;}
.testimonial-shot{max-width:420px;margin:0 auto;border-radius:2px;overflow:hidden;}
.testimonial-shot img{width:100%;display:block;}

/* ---------- FOOTER ---------- */
footer{padding:60px 6vw 40px;border-top:1px solid var(--hair);}
.footer-top{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:40px;margin-bottom:50px;}
.footer-mark{display:flex;align-items:center;gap:10px;font-family:'Cormorant Garamond',serif;font-size:1.5rem;letter-spacing:0.2em;margin-bottom:14px;}
.footer-mark img{height:26px;}
.footer-tag{font-size:0.78rem;letter-spacing:0.06em;color:var(--taupe);max-width:280px;line-height:1.7;}
.footer-col h4{font-size:0.66rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold-3);margin-bottom:18px;font-weight:400;}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:12px;}
.footer-col ul li a{font-size:0.86rem;color:var(--ivory-dim);transition:color 0.3s ease;}
.footer-col ul li a:hover{color:var(--gold-3);}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;padding-top:28px;border-top:1px solid var(--hair);font-size:0.7rem;letter-spacing:0.04em;color:var(--taupe);}

/* ---------- REVEAL ---------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity 0.9s ease,transform 0.9s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion:reduce){*{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}}

/* ---------- RESPONSIVE ---------- */
@media (max-width:920px){
  .nav-links{position:fixed;top:0;right:0;height:100vh;width:78%;max-width:340px;background:var(--panel);flex-direction:column;align-items:flex-start;padding:100px 34px;gap:30px;transform:translateX(100%);transition:transform 0.4s ease;border-left:1px solid var(--hair);}
  .nav-links.open{transform:translateX(0);}
  nav ul{flex-direction:column;gap:26px;}
  .nav-toggle{display:block;}
  .grid-2,.grid-3,.product-grid{grid-template-columns:1fr;gap:44px;}
  .benefits-grid{grid-template-columns:repeat(2,1fr);}
  .trust-grid{grid-template-columns:repeat(2,1fr);}
  .campaign-strip{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .benefits-grid{grid-template-columns:1fr;}
  .trust-grid{grid-template-columns:1fr;}
  .hero-panel{padding:34px 26px;}
}
a:focus-visible,button:focus-visible{outline:1px solid var(--gold-2);outline-offset:4px;}
