/* =========================================================================
   LAVIANCE — Estética e Beleza · Design System
   BORDÔ é a cor da marca e domina o site inteiro. O ouro do cartão vira
   acento metálico: logo, fios finos e preços. Fundo creme rosado.
   ========================================================================= */

/* ---------- Tokens ---------- */
:root{
  /* bordô — a cor principal */
  --wine:#6B1E2E;
  --wine-2:#5A1626;
  --wine-dp:#3E0F1A;
  --wine-lt:#8E3145;
  --wine-soft:#F7E9EA;
  --grad-wine:linear-gradient(165deg,#7A2334 0%,#5A1626 48%,#3E0F1A 100%);
  --grad-wine-h:linear-gradient(100deg,#5A1626 0%,#7A2334 55%,#5A1626 100%);

  /* ouro — só acento */
  --gold:#C4933D;
  --gold-lt:#E8CE9A;
  --gold-dk:#9C6F22;
  --grad-gold:linear-gradient(115deg,#B8842C 0%,#EAD3A0 38%,#C4933D 62%,#EFDDB4 100%);

  /* fundos e texto */
  --creme:#FBF3F0;
  --creme-2:#F4E6E3;
  --creme-3:#EBD8D5;
  --branco:#FFFFFF;
  --texto:#2B1B1E;
  --muted:#7C6469;
  --linha:rgba(107,30,46,.14);
  --linha-forte:rgba(107,30,46,.3);

  /* apelidos mantidos para não quebrar as páginas já escritas */
  --ink:#3E0F1A; --ink-2:#5A1626; --ink-3:#6B1E2E;
  --sand:#FBF3F0; --sand-2:#F4E6E3; --sand-3:#EBD8D5;
  --text:#2B1B1E; --line:rgba(107,30,46,.3); --line-soft:rgba(107,30,46,.14);
  --grad-ink:linear-gradient(165deg,#7A2334 0%,#5A1626 48%,#3E0F1A 100%);
  --line-wine:rgba(107,30,46,.3); --wine-pale:#F7E9EA; --wine-dk:#3E0F1A;
  --rose:#E7D3C9;

  /* tipografia */
  --f-display:"Playfair Display",Georgia,"Times New Roman",serif;
  --f-serif:"Cinzel","Trajan Pro",Georgia,serif;
  --f-sans:"Jost","Helvetica Neue",Arial,sans-serif;

  /* espaço e forma */
  --wrap:1200px;
  --wrap-tight:920px;
  --pad:clamp(20px,5vw,64px);
  --sec:clamp(64px,8vw,116px);
  --r-sm:8px; --r:16px; --r-lg:24px;
  --shadow:0 22px 56px -28px rgba(62,15,26,.42);
  --shadow-lift:0 32px 74px -30px rgba(62,15,26,.55);
  --ease:cubic-bezier(.22,.68,.32,1);
  --hdr-h:74px;
}

/* ---------- Reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--hdr-h) + 16px)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;background:var(--creme);color:var(--texto);
  font-family:var(--f-sans);font-weight:300;font-size:clamp(16px,1.05vw,17.5px);
  line-height:1.68;-webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img,svg,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4{margin:0;font-weight:400;line-height:1.08;letter-spacing:-.01em;text-wrap:balance}
p{margin:0 0 1em}
::selection{background:var(--wine);color:#fff}
:focus-visible{outline:2px solid var(--wine);outline-offset:3px;border-radius:4px}

/* ---------- Utilidades ---------- */
.wrap{width:min(100% - var(--pad)*2,var(--wrap));margin-inline:auto}
.wrap--tight{width:min(100% - var(--pad)*2,var(--wrap-tight))}
.section{padding-block:var(--sec)}
.section--wine,.section--ink{background:var(--grad-wine);color:#F8EDEC}
.section--sand{background:var(--creme-2)}
.center{text-align:center}
.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.eyebrow{
  font-family:var(--f-serif);font-size:.66rem;font-weight:600;
  letter-spacing:.3em;text-transform:uppercase;color:var(--wine);
  display:block;margin:0 0 1.1rem;line-height:1.7;
}
/* a linha dourada anda junto com a primeira linha do texto, nunca solta */
.eyebrow::before{content:"";display:inline-block;vertical-align:middle;
  width:32px;height:1px;margin:-2px .9rem 0 0;background:var(--grad-gold)}
.center .eyebrow{text-align:center}
.section--wine .eyebrow,.section--ink .eyebrow{color:var(--gold-lt)}

.h-display{font-family:var(--f-display);font-size:clamp(2.4rem,5.6vw,4.5rem);line-height:1.02;letter-spacing:-.02em}
.h-section{font-family:var(--f-display);font-size:clamp(2rem,4.2vw,3.35rem);line-height:1.06;color:var(--wine-dp)}
.h-card{font-family:var(--f-display);font-size:clamp(1.35rem,2.1vw,1.75rem)}
.section--wine .h-section,.section--ink .h-section,
.section--wine .h-card,.section--ink .h-card{color:#FDF4F2}
.lead{font-size:clamp(1.02rem,1.5vw,1.18rem);color:var(--muted);max-width:60ch}
.center .lead{margin-inline:auto}
.section--wine .lead,.section--ink .lead{color:#DFC4C4}
em.gold{font-style:italic;background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent}
em.wine{font-style:italic;color:var(--wine)}

/* ---------- Botões ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.6rem;
  padding:1.05rem 2.1rem;border-radius:100px;background:var(--grad-wine-h);color:#FDF4F2;
  font-family:var(--f-sans);font-size:.8rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),filter .35s var(--ease);
  box-shadow:0 14px 34px -16px rgba(107,30,46,.85);white-space:nowrap;
  border:1px solid rgba(232,206,154,.28);
}
.btn:hover{transform:translateY(-3px);box-shadow:0 22px 46px -18px rgba(107,30,46,.95)}
.btn:active{transform:translateY(-1px)}
.btn--ouro{background:var(--grad-gold);color:#3E0F1A;border-color:transparent;
  box-shadow:0 14px 34px -16px rgba(156,111,34,.8)}
.btn--ghost{background:none;color:currentColor;border:1px solid var(--linha-forte);box-shadow:none}
.btn--ghost:hover{border-color:var(--wine);background:rgba(107,30,46,.07);box-shadow:none}
.section--wine .btn,.section--ink .btn{background:var(--grad-gold);color:#3E0F1A;border-color:transparent}
.section--wine .btn--ghost,.section--ink .btn--ghost{background:none;color:#FDF4F2;
  border-color:rgba(232,206,154,.45)}
.btn--wide{width:100%}
.btn svg{width:17px;height:17px;flex:none}
.btn--wine{background:var(--grad-wine-h);color:#FDF4F2}

/* ---------- Cabeçalho: bordô sólido, sempre ---------- */
.hdr{
  position:fixed;inset:0 0 auto;z-index:80;min-height:var(--hdr-h);display:flex;align-items:center;
  background:var(--grad-wine-h);border-bottom:1px solid rgba(232,206,154,.22);
  transition:min-height .35s var(--ease),box-shadow .35s var(--ease);
}
.hdr.is-stuck{min-height:62px;box-shadow:0 10px 30px -18px rgba(62,15,26,.7)}
.hdr__in{display:flex;align-items:center;justify-content:space-between;gap:2rem;width:100%}

.logo{display:flex;align-items:center;gap:.85rem}
.logo img{width:38px;height:38px}
.logo__txt{display:flex;flex-direction:column;line-height:1}
.logo__word{
  font-family:var(--f-serif);font-weight:700;font-size:1.24rem;letter-spacing:.17em;
  background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.logo__tag{font-size:.52rem;letter-spacing:.34em;color:#C9A6A9;margin-top:.32rem}

/* ---------- Navegação ---------- */
@media (min-width:981px){
  .hdr.is-stuck{background:rgba(62,15,26,.88);-webkit-backdrop-filter:blur(14px) saturate(140%);
    backdrop-filter:blur(14px) saturate(140%)}
}

/* Barra de progresso da leitura, colada na base do cabeçalho */
.hdr__prog{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;
  background:var(--grad-gold);transform-origin:0 50%;transform:scaleX(var(--prog,0));
  box-shadow:0 0 12px rgba(232,206,154,.55)}

.nav{display:flex;align-items:center;gap:.15rem;padding:.3rem;border-radius:100px;
  border:1px solid rgba(232,206,154,.16);background:rgba(255,255,255,.035)}
.nav > a{position:relative;display:inline-flex;align-items:center;padding:.58rem 1.05rem;
  border-radius:100px;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;
  color:#EAD2D3;white-space:nowrap;transition:background .3s var(--ease),color .3s var(--ease)}
.nav > a:hover{color:var(--gold-lt);background:rgba(232,206,154,.08)}
.nav > a.is-active{color:#FFF6EE;background:rgba(232,206,154,.15)}
.nav > a.is-active::after{content:"";position:absolute;left:50%;bottom:.28rem;width:4px;height:4px;
  margin-left:-2px;border-radius:50%;background:var(--gold)}
.nav > a:focus-visible{outline:2px solid var(--gold-lt);outline-offset:2px}
.nav__rodape{display:none}

.hdr__cta{display:flex;align-items:center;gap:1rem}
.hdr .btn{padding:.78rem 1.45rem;font-size:.7rem;background:var(--grad-gold);color:#3E0F1A;
  border-color:transparent}

.burger{display:none;width:46px;height:46px;place-items:center;border-radius:50%;color:#F4DEDD;
  border:1px solid rgba(232,206,154,.38);background:rgba(255,255,255,.04);
  transition:border-color .3s var(--ease),background .3s var(--ease)}
.burger:hover{border-color:var(--gold-lt)}
.burger span{display:block;width:18px;height:1.5px;background:currentColor;position:relative;
  transition:background .3s var(--ease)}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;height:1.5px;
  background:currentColor;transition:transform .35s var(--ease),top .35s var(--ease),width .35s var(--ease)}
.burger span::before{top:-6px;width:18px}
.burger span::after{top:6px;width:12px}
body.menu-open .burger{border-color:var(--gold);background:rgba(232,206,154,.1)}
body.menu-open .burger span{background:transparent}
body.menu-open .burger span::before{top:0;transform:rotate(45deg)}
body.menu-open .burger span::after{top:0;width:18px;transform:rotate(-45deg)}

@media (max-width:1120px) and (min-width:981px){
  .nav > a{padding:.55rem .75rem;letter-spacing:.1em}
}

@media (max-width:980px){
  body.menu-open{overflow:hidden}
  .logo{position:relative;z-index:90}
  .nav{
    position:fixed;inset:0;z-index:85;flex-direction:column;align-items:stretch;justify-content:flex-start;
    gap:0;padding:calc(var(--hdr-h) + 1.6rem) clamp(22px,6vw,48px) calc(1.6rem + env(safe-area-inset-bottom));
    border:0;border-radius:0;overflow-y:auto;counter-reset:item;
    background:radial-gradient(90% 55% at 100% 0%,rgba(196,147,61,.18) 0%,transparent 60%),var(--grad-wine);
    opacity:0;visibility:hidden;transition:opacity .4s var(--ease),visibility .4s var(--ease);
  }
  body.menu-open .nav{opacity:1;visibility:visible}
  .nav::before{content:"";position:fixed;inset:0 0 auto;height:calc(var(--hdr-h) + 14px);z-index:1;
    pointer-events:none;background:linear-gradient(180deg,#7A2334 72%,rgba(122,35,52,0) 100%)}
  .nav > a{counter-increment:item;display:flex;align-items:baseline;gap:1rem;padding:.95rem .2rem;
    border-radius:0;border-bottom:1px solid rgba(232,206,154,.14);background:none;
    font-family:var(--f-display);font-size:clamp(1.45rem,5.6vw,1.85rem);letter-spacing:0;
    text-transform:none;color:#FBEDEC;opacity:0;transform:translateY(14px);
    transition:opacity .45s var(--ease),transform .45s var(--ease),color .3s var(--ease)}
  .nav > a::before{content:counter(item,decimal-leading-zero);font-family:var(--f-sans);
    font-size:.7rem;letter-spacing:.18em;color:var(--gold);min-width:1.9rem}
  .nav > a::after,.nav > a.is-active::after{content:"→";position:static;width:auto;height:auto;
    margin:0 0 0 auto;border-radius:0;background:none;font-family:var(--f-sans);font-size:1rem;
    color:rgba(232,206,154,.55);transition:transform .3s var(--ease)}
  .nav > a:hover,.nav > a.is-active{background:none;color:var(--gold-lt)}
  .nav > a:hover::after{transform:translateX(4px)}
  body.menu-open .nav > a{opacity:1;transform:none}
  body.menu-open .nav > a:nth-child(1){transition-delay:.06s}
  body.menu-open .nav > a:nth-child(2){transition-delay:.11s}
  body.menu-open .nav > a:nth-child(3){transition-delay:.16s}
  body.menu-open .nav > a:nth-child(4){transition-delay:.21s}
  body.menu-open .nav > a:nth-child(5){transition-delay:.26s}

  .nav__rodape{display:grid;gap:.9rem;margin-top:auto;padding-top:2.2rem;opacity:0;
    transition:opacity .45s var(--ease) .3s}
  body.menu-open .nav__rodape{opacity:1}
  .nav__rodape .btn{justify-content:center;background:var(--grad-gold);color:#3E0F1A;border-color:transparent}
  .nav__wa{display:flex;align-items:center;justify-content:center;gap:.55rem;min-height:48px;
    border-radius:100px;border:1px solid rgba(232,206,154,.35);color:#FBEDEC;font-size:.8rem;
    letter-spacing:.08em;text-transform:uppercase}
  .nav__wa svg{width:17px;height:17px;fill:currentColor}
  .nav__info{font-size:.8rem;line-height:1.6;color:#C9A6A9;text-align:center;margin-top:.4rem}

  .burger{display:grid;position:relative;z-index:90}
  .hdr__cta .btn{display:none}
}

/* ---------- Barra de rolagem ---------- */
html{scrollbar-width:thin;scrollbar-color:#8E3145 #F4E6E3}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-track{background:#F4E6E3}
::-webkit-scrollbar-thumb{border-radius:20px;border:3px solid #F4E6E3;
  background:linear-gradient(180deg,#8E3145 0%,#5A1626 100%)}
::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#C4933D 0%,#8E3145 100%)}
::-webkit-scrollbar-corner{background:#F4E6E3}
.nav{scrollbar-color:rgba(232,206,154,.35) transparent}
.nav::-webkit-scrollbar-track{background:transparent}
.nav::-webkit-scrollbar-thumb{border-color:transparent;background:rgba(232,206,154,.35)}
::selection{background:#6B1E2E;color:#FFF6EE}

/* ---------- Hero ---------- */
.hero{position:relative;min-height:100svh;display:grid;align-items:center;color:#FDF4F2;
  isolation:isolate;overflow:hidden;background:var(--wine-dp)}
.hero__media{position:absolute;inset:0;z-index:-2}
.hero__media video,.hero__media img{width:100%;height:100%;object-fit:cover}
.hero::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(102deg,rgba(62,15,26,.94) 0%,rgba(90,22,38,.82) 46%,rgba(62,15,26,.42) 100%),
             radial-gradient(70% 60% at 84% 20%,rgba(196,147,61,.24) 0%,transparent 68%);
}
.hero__in{padding-block:clamp(120px,16vh,180px) clamp(64px,10vh,110px);max-width:760px}
.hero h1{font-family:var(--f-display);font-size:clamp(2.9rem,7vw,5.4rem);line-height:1;
  letter-spacing:-.025em;margin-bottom:1.4rem;color:#FDF4F2}
.hero p{color:#E2C9C9;font-size:clamp(1.02rem,1.6vw,1.22rem);max-width:52ch}
.hero__actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.4rem}
.hero__actions .btn{background:var(--grad-gold);color:#3E0F1A;border-color:transparent}
.hero__actions .btn--ghost{background:none;color:#FDF4F2;border:1px solid rgba(232,206,154,.45)}
.hero__trust{display:flex;flex-wrap:wrap;gap:2.4rem;margin-top:3.2rem;padding-top:2.1rem;
  border-top:1px solid rgba(232,206,154,.26)}
.hero__trust div{min-width:104px}
.hero__trust b{display:block;font-family:var(--f-display);font-size:2.1rem;line-height:1;
  background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero__trust span{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:#C9A6A9}
.hero__scroll{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);z-index:2;
  font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;color:#C9A6A9;display:grid;justify-items:center;gap:.7rem}
.hero__scroll i{display:block;width:1px;height:38px;background:linear-gradient(#E8CE9A,transparent);
  animation:scrollPulse 2.4s var(--ease) infinite}
@keyframes scrollPulse{0%,100%{opacity:.3;transform:scaleY(.5);transform-origin:top}50%{opacity:1;transform:scaleY(1)}}

/* ---------- Faixa ---------- */
.strip{background:var(--wine-dp);color:#E4C9CA;padding-block:1.05rem;overflow:hidden;
  border-block:1px solid rgba(232,206,154,.16)}
.strip__track{display:flex;gap:3.4rem;white-space:nowrap;animation:slide 34s linear infinite;width:max-content}
.strip__track span{font-family:var(--f-serif);font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;
  display:flex;align-items:center;gap:3.4rem}
.strip__track span::after{content:"✦";color:var(--gold);font-size:.58rem}
@keyframes slide{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.strip__track{animation:none}}

/* ---------- Grades ---------- */
.grid{display:grid;gap:clamp(16px,2.2vw,26px)}
.grid>*,.split>*,.publico>*,.preco>*,.cols>*{min-width:0}
.grid--2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.grid--3{grid-template-columns:repeat(auto-fit,minmax(286px,1fr))}
.grid--4{grid-template-columns:repeat(auto-fit,minmax(212px,1fr))}

/* =========================================================================
   ITEM — o cartão visual: foto grande, nome, uma linha, preço e botão.
   É a peça central do site: menos texto, mais imagem.
   ========================================================================= */
.item{position:relative;background:var(--branco);border-radius:var(--r-lg);overflow:hidden;
  display:flex;flex-direction:column;border:1px solid var(--linha);
  transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.item:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.item__foto{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--wine-dp)}
.item__foto img,.item__foto video{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.item:hover .item__foto img{transform:scale(1.06)}
.item__tag{position:absolute;top:12px;left:12px;z-index:2;padding:.34rem .8rem;border-radius:100px;
  background:var(--grad-wine);color:#FDF4F2;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase}
.item__tag--ouro{background:var(--grad-gold);color:#3E0F1A}
.item__corpo{padding:clamp(18px,2.2vw,24px);display:flex;flex-direction:column;gap:.55rem;flex:1}
.item__corpo h3{font-family:var(--f-display);font-size:1.5rem;color:var(--wine-dp)}
.item__corpo p{margin:0;font-size:.92rem;color:var(--muted)}
.item__pe{margin-top:auto;padding-top:1rem;display:flex;align-items:center;justify-content:space-between;
  gap:1rem;border-top:1px solid var(--linha)}
.item__preco{font-family:var(--f-display);font-size:1.45rem;line-height:1;color:var(--wine);
  font-variant-numeric:tabular-nums}
.item__preco small{display:block;font-family:var(--f-sans);font-size:.58rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted);margin-bottom:.2rem}
/* ---------- Aceite da LGPD nos formularios ---------- */
.aceite{display:flex;gap:.75rem;align-items:flex-start;margin:.1rem 0 1.5rem;
  font-size:.8rem;line-height:1.55;color:var(--muted);cursor:pointer}
.aceite input{appearance:none;-webkit-appearance:none;flex:0 0 18px;width:18px;height:18px;
  margin:.15rem 0 0;border:1px solid var(--linha);border-radius:5px;background:var(--branco);
  cursor:pointer;transition:.25s var(--ease)}
.aceite input:hover{border-color:var(--wine)}
.aceite input:checked{background:var(--grad-wine-h);border-color:transparent}
.aceite input:checked::after{content:"";display:block;width:5px;height:9px;margin:2px auto 0;
  border:solid #FDF4F2;border-width:0 2px 2px 0;transform:rotate(45deg)}
.aceite input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.aceite a{color:var(--wine);text-decoration:underline;text-underline-offset:2px}
.aceite a:hover{color:var(--gold)}
/* sobre o bordo o aceite precisa virar claro, senao some no fundo */
.section--wine .aceite,.section--ink .aceite{color:#E4C9CA}
.section--wine .aceite input,.section--ink .aceite input{
  border-color:rgba(232,206,154,.45);background:rgba(255,255,255,.07)}
.section--wine .aceite input:hover,.section--ink .aceite input:hover{border-color:var(--gold-lt)}
.section--wine .aceite input:checked,.section--ink .aceite input:checked{
  background:var(--grad-gold);border-color:transparent}
.section--wine .aceite input:checked::after,.section--ink .aceite input:checked::after{
  border-color:#3E0F1A}
.section--wine .aceite a,.section--ink .aceite a{color:var(--gold-lt)}
.section--wine .aceite a:hover,.section--ink .aceite a:hover{color:#FDF4F2}

/* ---------- Texto corrido das paginas legais ---------- */
.prosa{margin-top:2.6rem;max-width:68ch}
.prosa h2{font-family:var(--f-display);font-size:clamp(1.25rem,2.2vw,1.55rem);color:var(--wine);
  margin:2.6rem 0 .9rem;text-wrap:balance}
.prosa p{margin-bottom:1rem;line-height:1.75}
.prosa ul{margin:0 0 1.2rem;padding-left:1.1rem;list-style:none}
.prosa li{position:relative;margin-bottom:.6rem;line-height:1.7}
.prosa li::before{content:"";position:absolute;left:-1.1rem;top:.62em;width:5px;height:5px;
  border-radius:50%;background:var(--gold)}
.prosa b{color:var(--ink)}
.prosa a{color:var(--wine);text-decoration:underline;text-underline-offset:2px}

.item__nota{font-family:var(--f-sans);font-size:.66rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted)}
.item__cta{display:inline-flex;align-items:center;gap:.4rem;padding:.62rem 1.15rem;border-radius:100px;
  background:var(--grad-wine-h);color:#FDF4F2;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;
  transition:.3s var(--ease);white-space:nowrap}
.item__cta:hover{background:var(--grad-gold);color:#3E0F1A}

/* ---------- Cartão simples ---------- */
.card{position:relative;background:var(--branco);border:1px solid var(--linha);border-radius:var(--r-lg);
  padding:clamp(22px,2.6vw,32px);display:flex;flex-direction:column;gap:.75rem;overflow:hidden;
  transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--grad-gold);
  transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease)}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.card:hover::before{transform:scaleX(1)}
.card h3{color:var(--wine-dp)}
.card p{color:var(--muted);margin:0;font-size:.94rem}
.card__ico{width:50px;height:50px;display:grid;place-items:center;border-radius:50%;
  background:var(--grad-wine);color:var(--gold-lt);margin-bottom:.3rem}
.card__ico svg{width:23px;height:23px}
.card__meta{margin-top:auto;padding-top:1.2rem;display:flex;align-items:center;justify-content:space-between;
  gap:1rem;border-top:1px solid var(--linha)}
.card__price{font-family:var(--f-display);font-size:1.35rem;color:var(--wine)}
.card__price small{font-family:var(--f-sans);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--muted);display:block}
.card__link{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--wine);
  display:inline-flex;align-items:center;gap:.45rem}
.card__link svg{width:14px;height:14px;transition:transform .35s var(--ease)}
.card:hover .card__link svg{transform:translateX(4px)}
.section--wine .card,.section--ink .card{background:rgba(255,255,255,.07);border-color:rgba(232,206,154,.22);
  color:#F8EDEC}
.section--wine .card h3,.section--ink .card h3{color:#FDF4F2}
.section--wine .card p,.section--ink .card p{color:#DBBEC0}
.section--wine .card__price,.section--ink .card__price{color:var(--gold-lt)}
.section--wine .card__ico,.section--ink .card__ico{background:rgba(232,206,154,.14);color:var(--gold-lt)}

/* ---------- Bloco imagem + texto ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,80px);align-items:center}
.split--flip .split__media{order:2}
.split__media{position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}
.split__media img,.split__media video{width:100%;aspect-ratio:4/5;object-fit:cover}
.split__badge{position:absolute;left:20px;bottom:20px;background:var(--grad-wine);color:#FDF4F2;
  padding:.85rem 1.25rem;border-radius:var(--r);border:1px solid rgba(232,206,154,.3);box-shadow:var(--shadow)}
.split__badge b{display:block;font-family:var(--f-display);font-size:1.45rem;line-height:1}
.split__badge span{font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:#C9A6A9}
@media (max-width:860px){.split{grid-template-columns:1fr}.split--flip .split__media{order:0}}

.tick{list-style:none;margin:1.7rem 0 0;padding:0;display:grid;gap:.9rem}
.tick li{position:relative;padding-left:2rem;font-size:.97rem}
.tick li::before{content:"";position:absolute;left:0;top:5px;width:19px;height:19px;border-radius:50%;
  background:var(--grad-gold)}
.tick li::after{content:"";position:absolute;left:4.8px;top:9.8px;width:9px;height:9px;background:#3E0F1A;
  clip-path:polygon(14% 46%,0 60%,38% 100%,100% 22%,86% 8%,36% 66%)}
.tick small{display:block;color:var(--muted);font-size:.83rem}
.section--wine .tick small,.section--ink .tick small{color:#B99A9D}

/* ---------- Antes e depois ---------- */
.ba{position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow);
  aspect-ratio:4/3;user-select:none;touch-action:pan-y;cursor:ew-resize}
.ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ba__after{clip-path:inset(0 0 0 50%)}
.ba__handle{position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--grad-gold);
  cursor:ew-resize;z-index:3}
.ba__handle::after{content:"⟺";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:46px;height:46px;border-radius:50%;background:var(--grad-gold);color:#3E0F1A;
  display:grid;place-items:center;font-size:.9rem;box-shadow:0 8px 24px -8px rgba(0,0,0,.55)}
.ba__tag{position:absolute;top:15px;padding:.36rem .85rem;border-radius:100px;background:var(--grad-wine);
  color:#FDF4F2;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;z-index:2}
.ba__tag--l{left:15px}.ba__tag--r{right:15px}

/* ---------- Vídeo ---------- */
.vid{position:relative;border-radius:var(--r-lg);overflow:hidden;background:var(--wine-dp);
  box-shadow:var(--shadow);cursor:pointer}
.vid video,.vid img{width:100%;aspect-ratio:9/16;object-fit:cover}
.vid--wide video,.vid--wide img{aspect-ratio:16/9}
/* Em tela cheia o recorte do card nao vale mais: o video tem que caber inteiro,
   senao o Chrome corta as laterais e some com o rosto. */
.vid video:fullscreen{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;background:#000}
.vid video:-webkit-full-screen{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;background:#000}
.vid video:-moz-full-screen{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;background:#000}
video::backdrop{background:#000}
.vid__play{position:absolute;inset:0;display:grid;place-items:center;
  background:linear-gradient(180deg,rgba(62,15,26,.2),rgba(62,15,26,.68));transition:opacity .4s var(--ease)}
.vid.is-playing .vid__play{opacity:0;pointer-events:none}
.vid__play i{width:64px;height:64px;border-radius:50%;background:var(--grad-gold);display:grid;
  place-items:center;box-shadow:0 12px 34px -10px rgba(0,0,0,.6);transition:transform .4s var(--ease)}
.vid:hover .vid__play i{transform:scale(1.09)}
.vid__play svg{width:21px;height:21px;fill:#3E0F1A;margin-left:3px}
.vid__cap{position:absolute;left:0;right:0;bottom:0;padding:1.3rem;color:#FDF4F2;
  background:linear-gradient(transparent,rgba(62,15,26,.9));pointer-events:none}
.vid__cap b{display:block;font-family:var(--f-display);font-size:1.14rem}
.vid__cap span{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:#C9A6A9}

/* ---------- Depoimentos ---------- */
.quote{background:var(--branco);border:1px solid var(--linha);border-radius:var(--r-lg);
  padding:clamp(22px,2.8vw,34px);display:flex;flex-direction:column;gap:1rem;position:relative;overflow:hidden}
.quote::before{content:"”";position:absolute;top:6px;right:20px;font-family:var(--f-display);
  font-size:5rem;line-height:1;color:var(--wine);opacity:.13}
.quote__stars{color:var(--gold);letter-spacing:.2em;font-size:.88rem}
.quote p{font-family:var(--f-display);font-size:1.2rem;line-height:1.5;color:var(--texto);margin:0}
.quote__who{display:flex;align-items:center;gap:.8rem;margin-top:auto;padding-top:.5rem}
.quote__av{width:42px;height:42px;border-radius:50%;background:var(--grad-wine);display:grid;place-items:center;
  font-family:var(--f-serif);font-weight:600;color:var(--gold-lt);font-size:.88rem;flex:none}
.quote__who b{display:block;font-size:.94rem;font-weight:500}
.quote__who span{font-size:.76rem;color:var(--muted)}

/* ---------- FAQ ---------- */
.faq{border-top:1px solid var(--linha)}
.faq details{border-bottom:1px solid var(--linha)}
.faq summary{list-style:none;cursor:pointer;padding:1.4rem 2.8rem 1.4rem 0;position:relative;
  font-family:var(--f-display);font-size:clamp(1.14rem,1.8vw,1.38rem);color:var(--wine-dp);
  transition:color .3s var(--ease)}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover,.faq details[open] summary{color:var(--wine)}
.faq summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);
  font-size:1.6rem;color:var(--gold);transition:transform .35s var(--ease);line-height:1}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq__a{padding:0 2.8rem 1.6rem 0;color:var(--muted);max-width:72ch}

/* ---------- Formulários ---------- */
.form{display:grid;gap:1rem}
.form__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:640px){.form__row{grid-template-columns:1fr}}
.field{display:grid;gap:.42rem}
.field label{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.field input,.field select,.field textarea{
  background:var(--branco);border:1px solid var(--linha);border-radius:var(--r);padding:.92rem 1.1rem;
  transition:border-color .3s var(--ease),box-shadow .3s var(--ease);width:100%;
}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:var(--wine);box-shadow:0 0 0 4px rgba(107,30,46,.12)}
.field textarea{min-height:106px;resize:vertical}
.form__note{font-size:.78rem;color:var(--muted);text-align:center;margin:0}
.form__msg{padding:1rem 1.2rem;border-radius:var(--r);font-size:.92rem;display:none}
.form__msg.ok{display:block;background:var(--wine-soft);border:1px solid var(--linha-forte);color:var(--wine)}
.form__msg.err{display:block;background:#FDF0EE;border:1px solid #F0C7C0;color:#A33B2A}
.section--wine .field input,.section--wine .field select,.section--wine .field textarea,
.section--ink .field input,.section--ink .field select,.section--ink .field textarea{
  background:rgba(255,255,255,.09);border-color:rgba(232,206,154,.28);color:#FDF4F2}
.section--wine .field input::placeholder,.section--wine .field textarea::placeholder{color:#AD8A8E}
.section--wine .field label,.section--ink .field label{color:#DBBEC0}
.section--wine .form__note,.section--ink .form__note{color:#B99A9D}
.section--wine .form__msg.ok{background:rgba(232,206,154,.14);border-color:rgba(232,206,154,.4);color:var(--gold-lt)}

/* ---------- Agendamento ---------- */
.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(94px,1fr));gap:.6rem}
.slot{padding:.74rem .5rem;border:1px solid var(--linha);border-radius:var(--r);text-align:center;
  font-size:.9rem;transition:.28s var(--ease);background:var(--branco)}
.slot:hover:not(:disabled){border-color:var(--wine);color:var(--wine)}
.slot.is-on{background:var(--grad-wine-h);color:#FDF4F2;border-color:transparent;font-weight:500}
.slot:disabled{opacity:.32;cursor:not-allowed;text-decoration:line-through}
.steps{display:flex;gap:.6rem;margin-bottom:2.1rem;flex-wrap:wrap}
.steps div{flex:1;min-width:118px;padding-top:.85rem;border-top:2px solid var(--linha);
  font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);transition:.35s var(--ease)}
.steps div.is-on{border-color:var(--wine);color:var(--wine)}

/* ---------- Rodapé ---------- */
.ftr{background:var(--grad-wine);color:#D6B9BB;padding-block:clamp(58px,7vw,92px) 2.1rem}
.ftr__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:clamp(26px,4vw,52px)}
.ftr__grid>*{min-width:0}
@media (max-width:860px){.ftr__grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.ftr__grid{grid-template-columns:1fr}}
.ftr h4{font-family:var(--f-serif);font-size:.7rem;letter-spacing:.26em;text-transform:uppercase;
  color:var(--gold-lt);margin-bottom:1.2rem}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:.68rem;font-size:.92rem}
.ftr a:hover{color:var(--gold-lt)}
.ftr__bottom{margin-top:clamp(36px,5vw,60px);padding-top:1.7rem;border-top:1px solid rgba(232,206,154,.18);
  display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;font-size:.78rem}
.ftr__social{display:flex;gap:.7rem}
.ftr__social a{width:40px;height:40px;border:1px solid rgba(232,206,154,.28);border-radius:50%;
  display:grid;place-items:center;transition:.3s var(--ease)}
.ftr__social a:hover{background:var(--grad-gold);border-color:transparent;color:#3E0F1A}
.ftr__social svg{width:17px;height:17px}

/* ---------- WhatsApp flutuante ---------- */
.wa{position:fixed;right:20px;bottom:20px;z-index:70;width:58px;height:58px;border-radius:50%;
  background:#25D366;display:grid;place-items:center;box-shadow:0 14px 34px -10px rgba(37,211,102,.75);
  transition:transform .35s var(--ease)}
.wa:hover{transform:scale(1.08)}
.wa svg{width:29px;height:29px;fill:#fff}
.wa::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25D366;
  animation:ping 2.6s var(--ease) infinite}
@keyframes ping{0%{transform:scale(1);opacity:.65}100%{transform:scale(1.6);opacity:0}}
@media (prefers-reduced-motion:reduce){.wa::after{animation:none}}

/* ---------- Revelação ---------- */
[data-rv]{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
[data-rv].is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){[data-rv]{opacity:1;transform:none;transition:none}}

/* =========================================================================
   Páginas de captação
   ========================================================================= */
.lp{position:relative;color:#FDF4F2;isolation:isolate;overflow:hidden;background:var(--wine-dp)}
.lp::after{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(100deg,rgba(62,15,26,.95) 0%,rgba(90,22,38,.84) 52%,rgba(62,15,26,.5) 100%),
             radial-gradient(66% 58% at 86% 16%,rgba(196,147,61,.26) 0%,transparent 70%)}
.lp__media{position:absolute;inset:0;z-index:-2}
.lp__media img,.lp__media video{width:100%;height:100%;object-fit:cover}
.lp__in{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(30px,4.6vw,66px);align-items:center;
  padding-block:clamp(126px,15vh,178px) clamp(58px,8vh,92px)}
.lp__in>*{min-width:0}
@media (max-width:920px){.lp__in{grid-template-columns:1fr}}
.lp h1{font-family:var(--f-display);font-size:clamp(2.5rem,5.6vw,4.3rem);line-height:1.02;
  margin-bottom:1.15rem;color:#FDF4F2}
.lp p.lp__sub{color:#E2C9C9;font-size:clamp(1rem,1.5vw,1.16rem);max-width:50ch}
.lp .tick li{color:#EBD5D6}
.lp__form{background:var(--creme);color:var(--texto);border-radius:var(--r-lg);
  padding:clamp(24px,3vw,36px);box-shadow:var(--shadow-lift);border:1px solid rgba(232,206,154,.4)}
.lp__form h2{font-family:var(--f-display);font-size:1.72rem;margin-bottom:.35rem;color:var(--wine-dp)}
.lp__form .lp__formsub{font-size:.9rem;color:var(--muted);margin-bottom:1.35rem}

.bar{background:var(--grad-gold);color:#3E0F1A;text-align:center;padding:.85rem 1rem;
  font-size:.76rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500}
.bar b{color:#5A1626}

.pain{background:var(--branco);border:1px solid var(--linha);border-left:3px solid var(--wine);
  border-radius:0 var(--r) var(--r) 0;padding:1.2rem 1.4rem;font-size:.96rem}
.pain b{display:block;font-family:var(--f-display);font-size:1.2rem;margin-bottom:.3rem;color:var(--wine-dp)}

.price{background:var(--grad-wine);color:#F8EDEC;border-radius:var(--r-lg);
  padding:clamp(30px,4vw,52px);text-align:center;box-shadow:var(--shadow)}
.price__val{font-family:var(--f-display);font-size:clamp(3rem,7vw,4.6rem);line-height:1;
  background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.price__from{font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:#C9A6A9}
.price ul{list-style:none;margin:2rem auto 0;padding:0;max-width:440px;text-align:left;display:grid;gap:.8rem}
.price .btn{background:var(--grad-gold);color:#3E0F1A;border-color:transparent}

.timeline{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:t}
.timeline li{position:relative;padding:0 0 2.1rem 3.3rem;counter-increment:t}
.timeline li::before{content:counter(t,decimal-leading-zero);position:absolute;left:0;top:0;
  width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:var(--grad-wine);
  color:var(--gold-lt);font-family:var(--f-serif);font-size:.76rem;font-weight:600}
.timeline li::after{content:"";position:absolute;left:19px;top:43px;bottom:5px;width:1px;
  background:var(--linha-forte)}
.timeline li:last-child{padding-bottom:0}
.timeline li:last-child::after{display:none}
.timeline b{display:block;font-family:var(--f-display);font-size:1.28rem;margin-bottom:.28rem;color:var(--wine-dp)}
.timeline p{margin:0;color:var(--muted);font-size:.95rem}

/* ---------- Comparativo ---------- */
.comparativo{overflow-x:auto;border-radius:var(--r-lg);border:1px solid var(--linha);background:var(--branco)}
.comparativo table{width:100%;border-collapse:collapse;min-width:560px;font-size:.93rem}
.comparativo th{background:var(--grad-wine);color:#FDF4F2;font-family:var(--f-sans);font-weight:400;
  text-align:left;padding:1.05rem 1.25rem;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase}
.comparativo th:first-child{width:32%}
.comparativo td{padding:1rem 1.25rem;border-bottom:1px solid var(--linha);vertical-align:top}
.comparativo tr:last-child td{border-bottom:0}
.comparativo td:first-child{color:var(--wine-dp)}
.comparativo .sim{color:var(--wine);font-weight:500}
.comparativo .nao{color:var(--muted)}

/* ---------- Público ---------- */
.publico{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2.4vw,26px)}
@media (max-width:760px){.publico{grid-template-columns:1fr}}
.publico__col{border-radius:var(--r-lg);padding:clamp(24px,3vw,34px);border:1px solid var(--linha);
  background:var(--branco)}
.publico__col--sim{border-color:var(--linha-forte);background:linear-gradient(160deg,#F7E9EA,#fff 62%)}
.publico__col--nao{background:var(--creme-2)}
.publico__col h3{font-family:var(--f-display);font-size:1.5rem;margin-bottom:1.15rem;color:var(--wine-dp)}
.publico__col ul{list-style:none;margin:0;padding:0;display:grid;gap:.82rem;font-size:.96rem}
.publico__col--sim li{position:relative;padding-left:1.9rem}
.publico__col--sim li::before{content:"";position:absolute;left:0;top:5px;width:18px;height:18px;
  border-radius:50%;background:var(--grad-gold)}
.publico__col--sim li::after{content:"";position:absolute;left:4.5px;top:9.5px;width:9px;height:9px;
  background:#3E0F1A;clip-path:polygon(14% 46%,0 60%,38% 100%,100% 22%,86% 8%,36% 66%)}
.publico__col--nao li{position:relative;padding-left:1.9rem;color:var(--muted)}
.publico__col--nao li::before{content:"–";position:absolute;left:0;top:-1px;width:18px;height:18px;
  display:grid;place-items:center;border-radius:50%;border:1px solid var(--linha-forte);color:var(--wine)}

/* ---------- Citação em destaque ---------- */
.destaque-wine{background:var(--grad-wine);color:#FDF4F2;border-radius:var(--r-lg);
  padding:clamp(30px,4.5vw,60px);text-align:center;box-shadow:var(--shadow)}
.destaque-wine p{font-family:var(--f-display);font-size:clamp(1.5rem,3.2vw,2.4rem);line-height:1.28;
  margin:0;max-width:26ch;margin-inline:auto}
.destaque-wine span{display:block;margin-top:1.5rem;font-size:.66rem;letter-spacing:.24em;
  text-transform:uppercase;color:var(--gold-lt)}

/* ---------- Selos ---------- */
.selos{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:clamp(14px,2vw,22px);margin-top:2.2rem}
.selo{display:flex;gap:.9rem;align-items:flex-start;padding:1.15rem 1.3rem;border-radius:var(--r);
  background:rgba(255,255,255,.07);border:1px solid rgba(232,206,154,.22)}
.selo svg{width:22px;height:22px;flex:none;color:var(--gold-lt);margin-top:2px}
.selo b{display:block;font-size:.96rem;font-weight:400;color:#FDF4F2}
.selo span{font-size:.82rem;color:#C9A6A9}

/* ---------- Tecnologia (ficha) ---------- */
.tech{background:var(--branco);border:1px solid var(--linha);border-radius:var(--r-lg);overflow:hidden;
  display:flex;flex-direction:column;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.tech:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.tech__top{background:var(--grad-wine);color:#F8EDEC;padding:1.4rem clamp(20px,2.4vw,28px)}
.tech__top h3{font-family:var(--f-display);font-size:1.5rem;color:#FDF4F2}
.tech__top span{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-lt)}
.tech__body{padding:clamp(20px,2.4vw,28px);display:flex;flex-direction:column;gap:1rem;flex:1}
.tech__body>p{margin:0;color:var(--muted);font-size:.94rem}
.ficha{list-style:none;margin:0;padding:0;display:grid;gap:.1rem;font-size:.88rem}
.ficha li{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--linha)}
.ficha li:last-child{border-bottom:0}
.ficha b{font-weight:500;color:var(--wine-dp);text-align:right}
.ficha span{color:var(--muted)}

/* ---------- Combos ---------- */
.combo{border:1px solid var(--linha-forte);border-radius:var(--r-lg);padding:clamp(22px,2.8vw,32px);
  background:linear-gradient(160deg,#F7E9EA,#fff 62%);display:flex;flex-direction:column;gap:.85rem}
.combo__tag{align-self:flex-start;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;
  padding:.34rem .8rem;border-radius:100px;background:var(--grad-wine);color:#FDF4F2}
.combo h3{font-family:var(--f-display);font-size:1.5rem;color:var(--wine-dp)}
.combo p{margin:0;color:var(--muted);font-size:.94rem}
.combo__itens{list-style:none;margin:.3rem 0 0;padding:0;display:grid;gap:.5rem;font-size:.9rem}
.combo__itens li{position:relative;padding-left:1.3rem}
.combo__itens li::before{content:"";position:absolute;left:0;top:9px;width:5px;height:5px;border-radius:50%;
  background:var(--wine)}

/* ---------- Jornada ---------- */
.jornada{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;margin-top:2.4rem;
  border-top:2px solid rgba(232,206,154,.25)}
.jornada>div{min-width:0;padding:1.7rem 1.3rem 0 0;position:relative}
.jornada>div::before{content:"";position:absolute;top:-6px;left:0;width:10px;height:10px;border-radius:50%;
  background:var(--grad-gold)}
.jornada b{display:block;font-family:var(--f-serif);font-size:.64rem;letter-spacing:.22em;
  text-transform:uppercase;color:var(--gold-lt);margin-bottom:.5rem}
.jornada h4{font-family:var(--f-display);font-size:1.28rem;font-weight:400;margin-bottom:.32rem;color:#FDF4F2}
.jornada p{margin:0;font-size:.9rem;color:#DBBEC0}

/* ================================================================
   CAPTAÇÃO — componentes das landing pages de campanha
   ================================================================ */

/* Pular para o conteúdo: acessibilidade e leitor de tela */
.skip{position:absolute;left:-9999px;top:0;z-index:300;background:var(--wine);color:#fff;
  padding:.7rem 1.2rem;border-radius:0 0 8px 0}
.skip:focus{left:0}

/* Trilha de navegação — também vira BreadcrumbList no schema */
.crumb{font-size:.74rem;letter-spacing:.06em;color:var(--muted);padding:.9rem 0 0}
.crumb a{color:var(--muted)}
.crumb a:hover{color:var(--wine)}
.crumb span{opacity:.5;margin:0 .4rem}

/* Barra de confiança: o que o Google e a cliente querem ver */
.trust{background:var(--branco);border-bottom:1px solid var(--linha)}
.trust__in{display:flex;flex-wrap:wrap;gap:.6rem 2rem;align-items:center;justify-content:center;
  padding:.85rem 0;font-size:.78rem;color:var(--muted)}
.trust b{color:var(--wine-dp);font-weight:500}
.trust__i{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap}
.trust__i svg{width:15px;height:15px;fill:var(--gold-dk);flex:none}

/* Urgência sazonal — prazo real, não escassez inventada */
.urg{background:var(--grad-wine);color:#F7EAE9;border-radius:var(--r-lg);
  padding:clamp(22px,3vw,40px);display:grid;gap:1.4rem;align-items:center}
@media(min-width:860px){.urg{grid-template-columns:1fr auto}}
.urg h3{font-family:var(--f-display);font-size:clamp(1.5rem,2.6vw,2.1rem);color:#fff;
  line-height:1.18;margin-bottom:.6rem}
.urg p{color:#E2C8C9;font-size:.95rem;max-width:62ch}
.urg__conta{display:flex;gap:1.6rem;margin-top:1.3rem;flex-wrap:wrap}
.urg__conta div{border-left:2px solid var(--gold);padding-left:.9rem}
.urg__conta b{display:block;font-family:var(--f-display);font-size:1.6rem;color:var(--gold-lt);
  line-height:1.1}
.urg__conta span{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;color:#C9A6A9}

/* Aceite de privacidade no formulário */
.consent{display:flex;gap:.6rem;align-items:flex-start;margin:.2rem 0 1rem;
  font-size:.76rem;line-height:1.45;color:var(--muted)}
.consent input{width:16px;height:16px;margin-top:.15rem;flex:none;accent-color:var(--wine);cursor:pointer}
.consent a{color:var(--wine);text-decoration:underline;text-underline-offset:2px}
.lp__form .consent{color:#C9B4B6}
.lp__form .consent a{color:var(--gold-lt)}

/* Barra fixa de ação no celular — onde está a maior parte do tráfego pago */
.lpbar{position:fixed;left:0;right:0;bottom:0;z-index:120;display:none;
  gap:.5rem;padding:.6rem .7rem calc(.6rem + env(safe-area-inset-bottom));
  background:rgba(255,255,255,.97);backdrop-filter:blur(10px);
  border-top:1px solid var(--linha);box-shadow:0 -6px 24px rgba(62,15,26,.1)}
.lpbar a{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;
  min-height:48px;border-radius:100px;font-size:.82rem;letter-spacing:.04em;font-weight:500}
.lpbar__p{background:var(--grad-wine-h);color:#FDF4F2}
.lpbar__s{border:1px solid var(--linha);color:var(--wine-dp);background:var(--branco)}
.lpbar svg{width:17px;height:17px;fill:currentColor}
@media(max-width:820px){
  .lpbar{display:flex}
  body.tem-lpbar{padding-bottom:74px}
  .wa{bottom:82px}
}

/* Modo campanha (?lp=1): tira as saídas que vazam tráfego pago */
body.modo-lp .hdr .nav,
body.modo-lp .ftr__grid > div:nth-child(2),
body.modo-lp .ftr__grid > div:nth-child(3){display:none}
body.modo-lp .hdr__in{justify-content:space-between}

/* Telefone no cabeçalho — clique direto, conversão de chamada */
.hdr__tel{display:none;align-items:center;gap:.4rem;color:#F0DCDC;font-size:.82rem;
  margin-right:1rem;white-space:nowrap}
.hdr__tel:hover{color:var(--gold-lt)}
.hdr__tel svg{width:15px;height:15px;fill:currentColor}
@media(min-width:1040px){.hdr__tel{display:inline-flex}}

/* Bloco de garantia e reversão de risco */
.risco{border:1px solid var(--linha);border-left:3px solid var(--gold);
  background:var(--branco);border-radius:var(--r);padding:1.3rem 1.5rem;margin-top:1.8rem}
.risco b{color:var(--wine-dp)}
.risco p{font-size:.92rem;color:var(--muted);margin-top:.35rem}

/* ---------- Logo original da clínica ---------- */
/* a faixa do cabeçalho precisa da mesma margem lateral do resto do site */
.hdr .hdr__in{width:min(100% - var(--pad)*2,var(--wrap));margin-inline:auto}
.logo{display:flex;align-items:center}
.logo .logo__img{width:auto;height:42px;display:block}
.hdr.is-stuck .logo__img{height:36px;transition:height .35s var(--ease)}
.ftr .logo__img{height:46px}
@media (max-width:640px){.logo .logo__img{height:34px}.ftr .logo__img{height:40px}}

/* Em tela grande a linha de local cabe inteira, sem quebrar o nome da cidade */
@media (min-width:900px){
  .hero .eyebrow,.lp .eyebrow{white-space:nowrap;letter-spacing:.26em}
}

/* Títulos: o navegador equilibra as linhas e não deixa palavra sozinha no fim */
h1,.hero h1,.lp h1,.h-section,.h-card{text-wrap:balance;hyphens:none}
.lp h1{max-width:14ch}
@media (min-width:1100px){.lp h1{max-width:15ch}}

/* ---------- Menu do celular: rolagem confortável ---------- */
@media (max-width:980px){
  .nav{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;
    scrollbar-width:thin;scroll-behavior:auto}
  /* sombra no pé da tela avisando que tem mais coisa abaixo */
  body.menu-open .nav::after{content:"";position:fixed;left:0;right:0;bottom:0;height:64px;
    pointer-events:none;background:linear-gradient(180deg,rgba(90,22,38,0) 0%,rgba(62,15,26,.92) 100%)}
  body.menu-open .nav.no-fim::after{opacity:0;transition:opacity .25s var(--ease)}
}
/* Tela baixa: tudo encolhe um pouco para caber sem rolar */
@media (max-width:980px) and (max-height:720px){
  .nav{padding-top:calc(var(--hdr-h) + .35rem);padding-bottom:calc(.7rem + env(safe-area-inset-bottom))}
  .nav > a{padding:.62rem .2rem;font-size:clamp(1.15rem,4.6vw,1.45rem)}
  .nav > a::before{min-width:1.6rem;font-size:.64rem}
  .nav__rodape{padding-top:.85rem;gap:.5rem}
  .nav__wa{min-height:44px;font-size:.76rem}
  .nav__info{font-size:.74rem;margin-top:.1rem}
}
