:root{
  --vinho:#891c33;
  --vinho-esc:#670a12;
  --bege:#d3bb9f;
  --creme:#f6f2ef;
  --taupe:#c3aca1;
  --texto:#313131;
  --branco:#ffffff;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Open Sans',Helvetica,Arial,sans-serif;font-size:15px;line-height:1.65;color:var(--texto);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}

/* ---------- MENU (hambúrguer, como no site) ---------- */
.burger{position:fixed;top:28px;right:60px;z-index:60;width:34px;height:26px;background:none;border:0;cursor:pointer;display:flex;flex-direction:column;justify-content:center;gap:5px}
.burger span{display:block;height:2px;width:22px;margin-left:auto;background:var(--vinho);transition:.3s}
.burger.on span{background:#fff}
.burger.on span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.on span:nth-child(2){opacity:0}
.burger.on span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.menu{position:fixed;inset:0;z-index:55;background:rgba(137,28,51,.97);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:.35s}
.menu.on{opacity:1;visibility:visible}
.menu ul{list-style:none;text-align:center}
.menu li{margin:10px 0}
.menu a{color:#fff;text-decoration:none;font-size:22px;font-weight:600;letter-spacing:.3px;transition:color .2s}
.menu a:hover{color:var(--bege)}
.menu .back{display:inline-block;margin-top:24px;font-size:14px;font-weight:400;border:1px solid rgba(255,255,255,.5);border-radius:30px;padding:8px 22px}

/* ---------- WhatsApp flutuante ---------- */
.wa-float{position:fixed;right:2px;top:46%;z-index:50;width:70px;height:70px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.18);transition:transform .2s}
.wa-float:hover{transform:scale(1.07)}
.wa-float svg{width:36px;height:36px;fill:#fff}

/* ---------- Estrutura em meias-telas ---------- */
.split{display:flex;min-height:900px}
.split.reverse{flex-direction:row-reverse}
.split > .photo{flex:0 0 50%;background-size:cover;background-repeat:no-repeat;position:relative}
.split > .panel{flex:0 0 50%;display:flex;align-items:center;justify-content:center;padding:110px 100px}
.panel .inner{width:100%;max-width:480px;text-align:center}
.panel.vinho{background:var(--vinho);color:#fff}
.panel.bege{background:var(--bege);color:var(--texto)}
.panel.branco{background:#fff}

h1,h2{font-family:'Pacifico',cursive;font-weight:400;line-height:1.25;color:var(--vinho)}
h1{font-size:50px}
h2{font-size:45px}
.vinho h2{color:#fff}
.sep{width:50px;height:2px;margin:34px auto 38px;background:var(--vinho)}
.vinho .sep{background:#fff}
.branco .sep{background:var(--taupe)}
.panel p{margin-bottom:14px}
.panel p:last-child{margin-bottom:0}
strong{font-weight:700}

.btn{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:14px;border-radius:40px;padding:13px 28px;transition:background .25s,color .25s,transform .2s}
.btn:hover{transform:translateY(-1px)}
.btn svg{width:15px;height:15px;fill:currentColor}
.btn-bege{background:var(--bege);color:#fff}
.btn-bege:hover{background:#c4a985}
.btn-vinho{background:var(--vinho);color:#fff}
.btn-vinho:hover{background:var(--vinho-esc)}
.btn-branco{background:#fff;color:var(--vinho)}
.btn-branco:hover{background:var(--creme)}

/* ---------- HERO ---------- */
.hero .photo{background-position:center 25%}
.hero .panel{background:#fff url(../img/fundo-marca.png) right 40% no-repeat;justify-content:flex-start;padding-left:100px}
.hero .inner{text-align:left;max-width:440px}
.hero .sep{margin:34px 0 30px;background:#0a0a0a}
.hero .kicker{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--vinho);margin-bottom:6px}
.hero .lead{font-size:23px;line-height:1.6;color:#111;margin-bottom:22px}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.tags span{font-size:13px;font-weight:600;color:var(--vinho);border:1px solid var(--bege);border-radius:30px;padding:5px 14px;background:rgba(246,242,239,.7)}
.online{display:flex;align-items:center;gap:10px;font-size:14px;color:#555;margin-bottom:30px}
.online svg{width:20px;height:20px;stroke:var(--vinho);fill:none;stroke-width:1.6;flex:0 0 auto}

/* ---------- Ícones de itens ---------- */
.items{text-align:left;margin-top:8px}
.item{display:flex;gap:16px;align-items:flex-start;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.18)}
.branco .item{border-bottom-color:#eee3dc}
.item:last-child{border-bottom:0}
.ico{flex:0 0 42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12)}
.branco .ico{background:var(--creme)}
.ico svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.branco .ico svg{stroke:var(--vinho)}
.item h3{font-size:15px;font-weight:700;margin-bottom:3px}
.branco .item h3{color:var(--vinho)}
.item p{margin:0;font-size:14.5px}
.vinho .item p{color:rgba(255,255,255,.9)}

.note{margin-top:28px;text-align:left;background:var(--creme);border-left:3px solid var(--vinho);padding:18px 20px;font-size:14px;color:#3a3a3a}
.note strong{color:var(--vinho)}

/* ---------- Sessões (estilo +12 anos / +7 mil) ---------- */
.stats{display:flex;gap:20px;justify-content:center;margin:6px 0 30px}
.stat{flex:1;min-width:0}
.stat .n{font-size:64px;font-weight:600;line-height:1;color:var(--vinho)}
.stat .u{font-size:22px;font-weight:600;color:var(--vinho);line-height:1.2;margin-top:6px}
.stat .l{font-size:14px;margin-top:10px;color:#3a2a2a;font-weight:600}
.stats .divider{width:2px;background:rgba(137,28,51,.25);flex:0 0 2px}
.small{font-size:13.5px;font-style:italic;color:#4a3b35}

/* ---------- Acordeão (igual ao FAQ do site) ---------- */
.acc{text-align:left;border:1px solid rgba(255,255,255,.55);margin-top:26px}
.acc details{background:var(--bege);border-bottom:1px solid rgba(255,255,255,.55)}
.acc details:last-child{border-bottom:0}
.acc summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:11px 14px;color:var(--vinho);font-size:14.5px;font-weight:600}
.acc summary::-webkit-details-marker{display:none}
.acc summary .pm{flex:0 0 15px;height:15px;border:1px solid var(--vinho);position:relative;background:transparent}
.acc summary .pm::before,.acc summary .pm::after{content:"";position:absolute;background:var(--vinho);left:50%;top:50%;transform:translate(-50%,-50%)}
.acc summary .pm::before{width:9px;height:2px}
.acc summary .pm::after{width:2px;height:9px;transition:opacity .2s}
.acc details[open] .pm::after{opacity:0}
.acc .content{padding:4px 16px 16px 41px;font-size:14px;color:#3a2a2a;line-height:1.6}
.all-cases{text-align:left;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);padding:18px 20px;font-size:14.5px}
.all-cases h3{font-size:15px;font-weight:700;margin-bottom:4px;display:flex;align-items:center;gap:8px}
.vinho .heart{color:var(--bege);font-style:italic;font-size:14px;margin-top:24px}

/* ---------- Destaques ---------- */
.quote{font-family:'Pacifico',cursive;font-size:30px;line-height:1.35;color:var(--vinho);margin:30px 0 14px}
.vinho .quote{color:var(--bege)}
.box-alert{margin:26px 0 22px;font-weight:600;color:var(--vinho);background:var(--creme);padding:16px 18px;border-radius:2px;font-size:14.5px}
.factors{list-style:none;text-align:left;margin:18px 0 6px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.factors li{font-size:13.5px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);padding:8px 12px;border-radius:2px}

/* ---------- Contato ---------- */
.contact .lead{font-weight:700;font-size:16px;color:var(--vinho);margin-bottom:10px}
.signature{margin:30px 0 22px;font-size:14px;line-height:1.7}
.signature strong{color:var(--vinho)}
.socials{display:flex;justify-content:center;gap:26px;margin-top:6px}
.socials img{width:68px;height:68px;transition:transform .2s}
.socials a:hover img{transform:scale(1.06)}
.cvv{margin-top:24px;font-size:12px;line-height:1.55;color:#4d3d36}

/* ---------- Rodapé ---------- */
footer{border-top:1px solid #f0f0f0;padding:38px 50px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-size:12px;color:#999}
footer a{color:#999;text-decoration:none}
footer a:hover{color:var(--vinho)}

/* ---------- Fotos por seção ---------- */
.ph-leitura{background-position:80% center}
.ph-acolhimento{background-position:45% center}
.ph-laudo{background-position:42% center}
.ph-bariatrica{background-position:48% center}
.ph-cuidados{background-position:68% center}
.ph-online-sec{background-position:90% center}
.ph-laptop{background-position:70% center}
.ph-online{background-position:72% center}
.ph-borboleta{background-position:88% center}
.ph-retrato{background-position:center 30%}

/* ---------- Animação suave na rolagem ---------- */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* ---------- Responsivo ---------- */
@media (max-width:1100px){
  .split > .panel{padding:90px 50px}
  .hero .panel{padding-left:60px}
}
@media (max-width:989px){
  .split,.split.reverse{flex-direction:column;min-height:0}
  .split > .photo,.split > .panel{flex:0 0 auto;width:100%}
  .split > .photo{height:52vh;min-height:340px;order:-1}
  .split > .panel{padding:70px 24px}
  .hero .photo{height:78vh}
  .hero .panel{padding:60px 24px 70px;background-size:60% auto}
  .hero .inner{text-align:center;margin:0 auto}
  .hero .sep{margin:28px auto}
  .tags,.online{justify-content:center}
      h1{font-size:40px}
  h2{font-size:36px}
  .hero .lead{font-size:19px}
  .burger{right:20px;top:18px;background:rgba(255,255,255,.85);border-radius:4px;padding:4px 6px;width:38px;height:34px}
  .burger.on{background:transparent}
  .wa-float{width:58px;height:58px;right:12px;top:auto;bottom:18px}
  .wa-float svg{width:30px;height:30px}
  footer{flex-direction:column;text-align:center;padding:30px 24px 90px}
}
@media (max-width:480px){
  h1{font-size:34px}
  h2{font-size:31px}
  .stat .n{font-size:52px}
  .stat .u{font-size:18px}
  .factors{grid-template-columns:1fr}
  .quote{font-size:25px}
}
