:root{
  --cream:#F7F2EA;
  --cream-deep:#EFE6D8;
  --card:#FBF8F3;
  --brown-deep:#3B2A1E;
  --brown:#6B4A33;
  --camel:#A9784F;
  --gold:#C6A467;
  --ink:#2B221B;
  --line:rgba(107,74,51,0.16);
  --serif:'Cormorant Garamond', Georgia, serif;
  --sans:'Montserrat', system-ui, sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;scroll-padding-top:72px;}
body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;line-height:1.6;}
img{max-width:100%;display:block;}
a{color:inherit;}

/* ===== Topo fixo ===== */
.topbar{position:sticky;top:0;z-index:50;background:rgba(247,242,234,0.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.topbar-in{max-width:1120px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.brand{font-family:var(--serif);font-size:21px;font-weight:500;color:var(--brown-deep);text-decoration:none;letter-spacing:0.01em;white-space:nowrap;}
.nav{display:none;gap:28px;}
.nav a{font-size:11px;letter-spacing:0.2em;text-transform:uppercase;font-weight:500;color:var(--brown);text-decoration:none;}
.nav a:hover{color:var(--camel);}
.topbar .btn-sm{font-size:11px;letter-spacing:0.14em;text-transform:uppercase;font-weight:600;color:var(--brown-deep);text-decoration:none;border:1px solid rgba(59,42,30,0.35);padding:9px 14px;border-radius:2px;white-space:nowrap;}
.topbar .btn-sm:hover{background:var(--brown-deep);color:var(--cream);}

/* ===== Botões ===== */
.cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--brown-deep);color:var(--cream-deep);text-decoration:none;font-weight:500;font-size:14px;letter-spacing:0.04em;padding:17px 26px;border-radius:2px;transition:transform .25s ease,box-shadow .25s ease,background .25s ease;box-shadow:0 8px 24px -10px rgba(59,42,30,0.55);}
.cta:hover{background:#2c2015;transform:translateY(-2px);box-shadow:0 14px 30px -12px rgba(59,42,30,0.6);}
.cta svg{width:17px;height:17px;flex-shrink:0;}
.cta.ghost{background:transparent;color:var(--brown-deep);border:1px solid rgba(59,42,30,0.35);box-shadow:none;}
.cta.ghost:hover{background:var(--brown-deep);color:var(--cream);}
.cta.light{background:var(--cream);color:var(--brown-deep);box-shadow:none;}
.cta.light:hover{background:#fff;}
.cta.full{width:100%;}

/* ===== Textos comuns ===== */
.eyebrow{font-size:11px;letter-spacing:0.28em;text-transform:uppercase;color:var(--camel);font-weight:600;margin-bottom:12px;}
.rule{width:52px;height:1px;background:var(--gold);margin:20px 0;}
.center{text-align:center;}
.center .rule{margin-left:auto;margin-right:auto;}
h1,h2,h3.serif{font-family:var(--serif);font-weight:500;color:var(--brown-deep);letter-spacing:0.01em;}
h2{font-size:32px;line-height:1.15;}
.lead{font-size:15px;line-height:1.8;opacity:0.86;}

/* ===== Hero ===== */
.hero{max-width:1120px;margin:0 auto;display:grid;}
.hero-photo{position:relative;aspect-ratio:4/5;overflow:hidden;}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 20%;filter:saturate(0.96) contrast(1.02);}
.hero-photo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:30%;background:linear-gradient(to bottom,rgba(247,242,234,0) 0%,rgba(247,242,234,0.55) 45%,var(--cream) 90%);}
.hero-text{padding:0 28px;margin-top:-60px;position:relative;z-index:2;text-align:center;animation:rise .9s cubic-bezier(.2,.7,.3,1) both;}
.hero-text h1{font-size:40px;line-height:1.05;}
.hero-text .crm{font-size:11px;letter-spacing:0.12em;color:var(--brown);opacity:0.65;margin-top:8px;}
.hero-text .rule{margin:22px auto;}
.hero-text .lead{max-width:380px;margin:0 auto;}
.hero-text strong{font-weight:600;color:var(--brown-deep);}
.hero-ctas{display:grid;gap:12px;margin:32px auto 0;max-width:360px;}
.hero-note{font-size:11px;color:var(--brown);opacity:0.6;margin-top:14px;letter-spacing:0.03em;}
@keyframes rise{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}

/* ===== Seções ===== */
.section{max-width:1120px;margin:0 auto;padding:80px 28px 0;}
.section-head{max-width:560px;margin:0 auto 36px;}
.section.alt{max-width:none;background:var(--cream-deep);padding-bottom:80px;margin-top:80px;}
.section.alt > .wrap{max-width:1120px;margin:0 auto;}

h2 em{font-style:italic;color:var(--camel);}
.closing h2 em{color:var(--gold);}

/* Sintomas */
.symptoms{display:grid;gap:14px;}
.sym{background:var(--card);border:1px solid rgba(169,120,79,0.22);padding:26px 24px;border-radius:2px;}
.sym h3{font-family:var(--serif);font-weight:600;font-size:23px;color:var(--brown-deep);margin-bottom:12px;}
.sym ul{list-style:none;}
.sym li{font-size:14px;line-height:1.55;padding:7px 0 7px 22px;position:relative;border-bottom:1px solid var(--line);opacity:0.88;}
.sym li:last-child{border-bottom:0;}
.sym li::before{content:"";position:absolute;left:2px;top:15px;width:8px;height:8px;border-radius:50%;border:1px solid var(--gold);}
.bridge{font-family:var(--serif);font-style:italic;font-size:24px;line-height:1.3;color:var(--brown-deep);text-align:center;max-width:560px;margin:40px auto 0;}

/* Como funciona */
.steps4{display:grid;gap:12px;}
.st{padding:24px;border-top:1px solid var(--gold);}
.st .num{font-family:var(--serif);font-style:italic;font-size:34px;color:var(--gold);display:block;line-height:1;margin-bottom:10px;}
.st h3{font-size:12.5px;letter-spacing:0.14em;text-transform:uppercase;font-weight:600;color:var(--brown-deep);margin-bottom:6px;}
.st p{font-size:14px;line-height:1.7;opacity:0.82;}

.legal{max-width:720px;margin:72px auto 0;padding:0 28px;font-size:11.5px;line-height:1.7;color:var(--brown);opacity:0.7;text-align:center;}

/* Sobre */
.about{max-width:620px;margin:0 auto;}
.about p{font-size:15.5px;line-height:1.9;opacity:0.88;text-align:justify;}
.about .hl{color:var(--camel);font-weight:500;}
.about p + p{margin-top:18px;}
.about-kicker{font-size:12.5px !important;letter-spacing:0.06em;color:var(--brown);margin-bottom:18px;}
.about-close{font-family:var(--serif);font-style:italic;font-size:22px !important;line-height:1.35 !important;color:var(--brown-deep);opacity:1 !important;margin-top:20px !important;}
.about .tags{justify-content:flex-start;}
.about strong{font-weight:600;color:var(--brown-deep);}
.tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:28px;}
.tags span{font-size:10.5px;letter-spacing:0.06em;text-transform:uppercase;color:var(--brown-deep);border:1px solid rgba(107,74,51,0.28);padding:6px 13px;border-radius:100px;font-weight:500;}

/* Pilares */
.pillars{list-style:none;display:grid;border-top:1px solid var(--line);max-width:720px;margin:0 auto;}
.pillars li{display:flex;gap:18px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--line);}
.pillars .num{font-family:var(--serif);font-style:italic;font-size:24px;color:var(--gold);min-width:28px;}
.pillars h3{font-size:12px;letter-spacing:0.14em;text-transform:uppercase;font-weight:600;color:var(--brown-deep);margin-bottom:4px;}
.pillars p{font-size:14px;line-height:1.7;opacity:0.8;}

/* Áreas */
.areas{display:grid;gap:12px;margin-top:48px;}
.area{background:var(--card);border:1px solid rgba(169,120,79,0.22);padding:24px;border-radius:2px;}
.area h3{font-family:var(--serif);font-weight:600;font-size:22px;color:var(--brown-deep);margin-bottom:6px;}
.area p{font-size:14px;line-height:1.7;opacity:0.8;}

/* Vídeos */
.videos{display:grid;gap:16px;}
.video{position:relative;aspect-ratio:9/16;max-width:340px;width:100%;margin:0 auto;background:#000;border-radius:2px;overflow:hidden;}
.video.wide{aspect-ratio:16/9;max-width:none;}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}

/* Materiais */
.products{display:grid;gap:20px;max-width:960px;margin:0 auto;}
.product{display:grid;background:var(--card);border:1px solid rgba(169,120,79,0.22);border-radius:2px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .25s ease,box-shadow .25s ease;}
.product:hover{transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(59,42,30,0.45);}
.product-body{padding:26px 24px 28px;}
.product-tag{display:inline-block;font-size:10px;letter-spacing:0.2em;text-transform:uppercase;font-weight:600;color:var(--camel);margin-bottom:10px;}
.product h3{font-family:var(--serif);font-weight:600;font-size:26px;line-height:1.15;color:var(--brown-deep);}
.product p{font-size:14px;line-height:1.7;opacity:0.82;margin-top:10px;}
.product .more{display:inline-block;margin-top:18px;font-size:12px;letter-spacing:0.16em;text-transform:uppercase;font-weight:600;color:var(--brown-deep);border-bottom:1px solid var(--gold);padding-bottom:3px;}
.product-img{background:linear-gradient(160deg,#F8E8E7 0%,#EFD3D2 100%);display:flex;align-items:center;justify-content:center;padding:32px 24px;}
.product-img img{width:100%;max-width:200px;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:2px 4px 4px 2px;box-shadow:14px 18px 34px -16px rgba(142,58,87,0.55);transform:rotate(-2deg);}
.product.soon{opacity:0.7;pointer-events:none;}

/* Capa do guia (feita em CSS) */
.cover{position:relative;background:linear-gradient(160deg,#4a3526 0%,var(--brown-deep) 60%,#2a1d14 100%);color:var(--cream);display:flex;flex-direction:column;justify-content:space-between;padding:28px 26px;min-height:260px;}
.cover::before{content:"";position:absolute;inset:12px;border:1px solid rgba(198,164,103,0.45);pointer-events:none;}
.cover-top{font-size:9.5px;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);position:relative;}
.cover-title{font-family:var(--serif);font-weight:500;font-size:34px;line-height:1.02;position:relative;margin:18px 0;}
.cover-title em{color:var(--gold);font-style:italic;}
.cover-sub{font-size:11px;line-height:1.55;opacity:0.8;max-width:220px;position:relative;}
.cover-author{font-family:var(--serif);font-style:italic;font-size:14px;color:var(--gold);position:relative;margin-top:18px;}

/* FAQ */
.faq{border-top:1px solid var(--line);max-width:720px;margin:0 auto;}
.faq details{border-bottom:1px solid var(--line);}
.faq summary{list-style:none;cursor:pointer;padding:22px 34px 22px 0;position:relative;font-size:15px;font-weight:500;color:var(--brown-deep);line-height:1.5;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:'+';position:absolute;right:2px;top:50%;transform:translateY(-50%);font-family:var(--serif);font-size:28px;color:var(--gold);transition:transform .25s ease;}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg);}
.faq details p{font-size:14px;line-height:1.75;opacity:0.82;padding:0 0 22px;}

/* Fechamento */
.closing{margin-top:40px;padding:72px 28px;background:var(--brown-deep);color:var(--cream);text-align:center;}
.closing h2{color:var(--cream);font-size:34px;}
.closing p{font-size:14px;line-height:1.75;opacity:0.75;margin:14px auto 30px;max-width:380px;}

/* Contato e rodapé */
.contact{max-width:1120px;margin:0 auto;padding:56px 28px 0;display:grid;gap:22px;text-align:center;}
.contact a{text-decoration:none;font-size:14px;line-height:1.6;color:var(--brown-deep);}
.contact a:hover{color:var(--camel);}
.contact .label{display:block;font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:var(--camel);font-weight:600;margin-bottom:4px;}
footer{padding:56px 28px 40px;text-align:center;}
.footer-mark{font-family:var(--serif);font-style:italic;font-size:14px;color:var(--brown);opacity:0.6;}
.footer-small{font-size:10.5px;color:var(--brown);opacity:0.5;margin-top:8px;letter-spacing:0.03em;line-height:1.6;}

/* ===== Página do guia ===== */
.guide-hero{max-width:1120px;margin:0 auto;padding:48px 28px 0;display:grid;gap:40px;align-items:center;}
.guide-hero h1{font-size:44px;line-height:1.02;}
.guide-hero h1 em{color:var(--camel);}
.guide-hero .sub{font-family:var(--serif);font-style:italic;font-size:22px;line-height:1.3;color:var(--brown);margin-top:14px;}
.guide-hero .lead{margin-top:20px;}
.guide-hero .cover{min-height:420px;max-width:340px;width:100%;margin:0 auto;box-shadow:0 30px 60px -30px rgba(59,42,30,0.7);}
.guide-hero .cover-title{font-size:44px;}
.buy{margin-top:30px;display:grid;gap:10px;max-width:380px;}
.buy-note{font-size:11.5px;color:var(--brown);opacity:0.65;line-height:1.6;}
.list{list-style:none;display:grid;gap:0;border-top:1px solid var(--line);max-width:720px;margin:0 auto;}
.list li{padding:18px 0 18px 30px;border-bottom:1px solid var(--line);position:relative;font-size:15px;line-height:1.65;}
.list li::before{content:"";position:absolute;left:4px;top:27px;width:10px;height:1px;background:var(--gold);}
.list li strong{color:var(--brown-deep);font-weight:600;}
.parts{display:grid;gap:14px;max-width:960px;margin:0 auto;}
.part{background:var(--card);border:1px solid rgba(169,120,79,0.22);padding:26px 24px;border-radius:2px;}
.part .when{font-size:10px;letter-spacing:0.22em;text-transform:uppercase;font-weight:600;color:var(--camel);}
.part h3{font-family:var(--serif);font-weight:600;font-size:24px;color:var(--brown-deep);margin:6px 0 10px;}
.part ul{list-style:none;}
.part li{font-size:14px;line-height:1.7;opacity:0.85;padding-left:16px;position:relative;}
.part li::before{content:"·";position:absolute;left:2px;color:var(--gold);font-weight:700;}
.author{display:grid;gap:28px;align-items:center;max-width:860px;margin:0 auto;}
.author img{width:180px;height:180px;object-fit:cover;object-position:center 18%;border-radius:50%;margin:0 auto;border:1px solid rgba(169,120,79,0.3);}
.author p{font-size:15px;line-height:1.85;opacity:0.86;}
.author p + p{margin-top:12px;}
.disclaimer{max-width:720px;margin:48px auto 0;padding:20px 22px;border:1px solid var(--line);font-size:12.5px;line-height:1.7;color:var(--brown);opacity:0.85;}
.back{display:inline-block;font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--brown);text-decoration:none;font-weight:500;}
.back:hover{color:var(--camel);}

/* ===== Telas maiores ===== */
@media (min-width:720px){
  .areas{grid-template-columns:1fr 1fr;}
  .contact{grid-template-columns:repeat(3,1fr);}
  .product{grid-template-columns:280px 1fr;}
  .product-img{height:100%;}
  .parts{grid-template-columns:1fr 1fr;}
  .author{grid-template-columns:200px 1fr;}
  .author img{width:200px;height:200px;}
  .videos{grid-template-columns:repeat(3,1fr);}
  .steps4{grid-template-columns:1fr 1fr;}
}
@media (min-width:960px){
  .nav{display:flex;}
  .hero{grid-template-columns:1fr 1fr;align-items:center;gap:56px;padding:48px 28px 0;}
  .hero-photo{border-radius:2px;}
  .hero-photo::after{display:none;}
  .hero-text{margin-top:0;text-align:left;padding:0;}
  .hero-text h1{font-size:58px;}
  .hero-text .rule{margin:26px 0;}
  .hero-text .lead{margin:0;max-width:440px;}
  .hero-ctas{margin:36px 0 0;grid-template-columns:auto auto;justify-content:start;max-width:none;}
  .areas{grid-template-columns:repeat(3,1fr);}
  .symptoms{grid-template-columns:repeat(3,1fr);}
  .steps4{grid-template-columns:repeat(4,1fr);}
  h2{font-size:38px;}
  .guide-hero{grid-template-columns:1.1fr 0.9fr;padding-top:72px;}
  .guide-hero h1{font-size:60px;}
}
@media (prefers-reduced-motion:reduce){
  .hero-text{animation:none;}
  .cta,.product{transition:none;}
  html{scroll-behavior:auto;}
}

/* ===== Efeito de aparecer ao rolar ===== */
.reveal-on .rv{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.7,.3,1),transform .8s cubic-bezier(.2,.7,.3,1);}
.reveal-on .rv.is-in{opacity:1;transform:none;}
.reveal-on .product.rv.is-in:hover{transform:translateY(-3px);}
