/* ---- Homepage-only sections (front-page.php) ---- */
.hero{padding:64px 0 80px;background:radial-gradient(80% 60% at 85% 0%, rgba(167,179,131,.22), transparent 60%),var(--cream)}
.hero .container{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}
.hero-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:22px}
.hero h1{font-size:clamp(40px,5.4vw,68px);margin-bottom:22px}
.hero h1 em{font-style:italic;color:var(--moss)}
.hero p.lead{font-size:18px;color:var(--ink-soft);max-width:480px;margin-bottom:28px}
.price-chip{display:inline-flex;align-items:baseline;gap:12px;margin-bottom:28px}
.price-chip .now{font-family:'Fraunces';font-size:32px;color:var(--forest)}
.price-chip .was{font-size:18px;color:var(--ink-soft);text-decoration:line-through}
.price-chip .save{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:var(--sand);color:var(--moss);padding:4px 11px;border-radius:100px}
.price-chip .ml{font-size:13px;color:var(--ink-soft);letter-spacing:.08em}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:26px}
.hero-rate{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink-soft)}
.hero-visual{position:relative}
.hero-visual .ph{aspect-ratio:4/4.7}
.float-tag{position:absolute;z-index:4;background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:100px;padding:9px 16px 9px 12px;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:500}
.float-tag .ic{width:26px;height:26px;border-radius:50%;background:var(--cream-2);display:grid;place-items:center;color:var(--moss);font-size:12px}
.ft-1{top:14%;left:-26px}.ft-2{top:46%;right:-22px}.ft-3{bottom:12%;left:-14px}
.free-badge{position:absolute;top:-18px;right:-10px;width:104px;height:104px;border-radius:50%;background:var(--gold);color:#231d10;display:grid;place-items:center;text-align:center;font-family:'Fraunces';font-size:14px;line-height:1.15;font-weight:600;transform:rotate(8deg);box-shadow:var(--shadow-sm);z-index:3}
.free-badge b{display:block;font-size:22px}
.product{background:linear-gradient(180deg,var(--cream),var(--cream-2));padding:96px 0}
.buy-now{justify-content:center;width:100%;padding:16px;margin-bottom:20px}
.sample{background:radial-gradient(90% 120% at 100% 0%, rgba(184,146,75,.28), transparent 55%),var(--forest);color:#F1EDDF;overflow:hidden}
.sample .container{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;min-height:480px}
.sample-copy{padding:80px 0}
.sample .eyebrow{color:var(--gold-2);margin-bottom:18px;display:inline-block}
.sample h2{font-size:clamp(34px,4.4vw,56px);margin-bottom:18px;color:#F6F2E6}
.sample h2 em{font-style:italic;color:var(--gold-2)}
.sample p{font-size:17px;color:#D7D2C0;max-width:440px;margin-bottom:30px}
.sample .mini{font-size:13px;color:#A9A795;margin-top:18px}
.sample-visual{position:relative;align-self:stretch;min-height:480px}
.sample-visual .ph{position:absolute;inset:40px 0}
.ingredients{background:var(--cream)}
.ritual{background:var(--cream-2)}
.editorial .ph{aspect-ratio:21/8;border-radius:0;border-left:none;border-right:none;min-height:340px}
.editorial .overlay{position:absolute;inset:0;z-index:4;display:flex;align-items:center;background:linear-gradient(90deg,rgba(30,58,43,.72),rgba(30,58,43,.15) 65%,transparent)}
.editorial .overlay .box{max-width:480px;color:#F4F0E4}
.editorial .overlay .eyebrow{color:var(--gold-2);display:inline-block;margin-bottom:14px}
.editorial .overlay h2{font-size:clamp(30px,4vw,50px);margin-bottom:16px}
.editorial .overlay p{color:#DCD7C6;font-size:16px}
.reels{background:var(--cream)}
.reel-rail{display:flex;gap:20px;overflow-x:auto;padding:8px 28px 24px;scroll-snap-type:x mandatory;margin:0 -28px}
.reel-rail::-webkit-scrollbar{height:6px}
.reel-rail::-webkit-scrollbar-thumb{background:var(--sand);border-radius:10px}
.reel{flex:none;width:248px;scroll-snap-align:start}
.reel .ph{aspect-ratio:9/16;border-radius:var(--radius);position:relative}
.reel .play{position:absolute;inset:0;z-index:3;display:grid;place-items:center}
.reel .play span{width:54px;height:54px;border-radius:50%;background:rgba(251,247,239,.9);display:grid;place-items:center;color:var(--forest);box-shadow:var(--shadow-sm)}
.reel .cap{margin-top:12px;font-size:13.5px;color:var(--ink-soft)}
.reel .cap b{color:var(--ink);font-weight:500}
.reviews{background:var(--white)}
.results{background:var(--forest);color:#F1EDDF}
.results .container{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.results .eyebrow{color:var(--gold-2);display:inline-block;margin-bottom:16px}
.results h2{font-size:clamp(30px,3.8vw,46px);margin-bottom:18px;color:#F6F2E6}
.results p{color:#D5D0BE;font-size:16px;margin-bottom:30px;max-width:440px}
.stat-row{display:flex;gap:30px;flex-wrap:wrap}
.stat .n{font-family:'Fraunces';font-size:40px;color:var(--gold-2)}
.stat .l{font-size:13px;color:#C5C0AE;max-width:130px}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ba .ph{aspect-ratio:3/4}
.ba .tag{position:absolute;top:12px;left:12px;z-index:3;background:rgba(30,58,43,.8);color:#F1EDDF;font-size:11px;letter-spacing:.14em;padding:4px 10px;border-radius:100px}
.results .disclaimer{font-size:11px;color:#9E9A88;margin-top:22px}
.faq{background:var(--cream)}
.faq-wrap{max-width:780px;margin:0 auto}
.gram{background:var(--white)}
.gram-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.gram-grid .ph{aspect-ratio:1/1;border-radius:14px;cursor:pointer;transition:.3s}
.gram-grid .ph:hover{transform:scale(1.03)}
.gram-cta{margin-top:32px}
.news{background:var(--cream-2)}
.news .box{max-width:640px;margin:0 auto;text-align:center}
.news h2{font-size:clamp(28px,3.4vw,42px);margin-bottom:12px}
.news p{color:var(--ink-soft);margin-bottom:26px}
.news-form{display:flex;gap:10px;max-width:460px;margin:0 auto}
.news-form input{flex:1;padding:15px 20px;border:1.5px solid var(--line);border-radius:100px;font-family:'Jost';font-size:15px;background:var(--white)}
.news-form input:focus{outline:none;border-color:var(--gold)}
@media(max-width:980px){
  .hero .container,.sample .container,.results .container{grid-template-columns:1fr;gap:36px}
  .product{padding:60px 0}
  .sample-visual{min-height:300px}
  .hero-visual .float-tag{display:none}
  .free-badge{width:84px;height:84px;font-size:11px;top:12px;right:12px}
  .hero-visual{width:min(440px,100%);justify-self:center}
}
@media(max-width:600px){
  .hero{padding:34px 0 46px}
  .hero h1{font-size:34px;margin-bottom:16px}
  .hero p.lead{font-size:15.5px;margin-bottom:22px}
  .hero-eyebrow{font-size:10.5px;margin-bottom:14px}
  .price-chip{gap:10px;margin-bottom:22px}
  .price-chip .now{font-size:27px}
  .hero-cta{gap:10px}
  .hero-cta .btn{flex:1 1 100%;justify-content:center}
  .hero-visual .ph{aspect-ratio:4/4.2}
  .product{padding:44px 0}
  .sample-copy{padding:42px 0 6px}
  .sample h2{font-size:31px}
  .sample p{font-size:15px}
  .sample .container{min-height:0}
  .sample-visual{min-height:220px}
  .ba{grid-template-columns:1fr 1fr;gap:10px}
  .stat-row{gap:18px}
  .stat .n{font-size:32px}
  .gram-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:4px 16px 14px;-webkit-overflow-scrolling:touch}
  .gram-grid::-webkit-scrollbar{height:5px}
  .gram-grid::-webkit-scrollbar-thumb{background:var(--sand);border-radius:10px}
  .gram-grid .ph{flex:0 0 44%;scroll-snap-align:start}
  .reel-rail{margin:0 -16px;padding:4px 16px 18px}
  .reel{width:200px}
  .news-form{flex-direction:column}
  .news-form .btn{justify-content:center}
}

/* v2.3 — Risk-Free image: show FULL (no crop), kill the gap (home.css loads last, so
   this beats the base .sample-visual .ph{position:absolute;inset:40px 0}) */
@media(max-width:980px){
  .sample .container{gap:2px;min-height:0}
  .sample-copy{padding:40px 0 0}
  .sample-visual{min-height:0;padding:0 0 40px;align-self:auto}
  .sample-visual .ph{position:static !important;inset:auto !important;width:100%;height:auto;aspect-ratio:4/3;margin:0;border-radius:18px;overflow:hidden}
  .sample-visual .ph img{object-fit:cover;object-position:center}
}
