/* ═══════════════════════════════════════════════════════
   Elisabete Olegário · Personal Chef
   base clara e quente; um único bloco escuro (o evento)
   ═══════════════════════════════════════════════════════ */

:root{
  --linho:    #F6EEDF;   /* base da página */
  --papel:    #FBF6EC;   /* seções mais claras */
  --areia:    #EBDFC6;   /* faixas quentes */
  --areia-2:  #E0D1B1;
  --salvia-w: #E4E8DA;   /* lavagem verde-sálvia */
  --carvao:   #25231C;   /* texto principal */
  --terra:    #4A4234;   /* texto corrido */
  --terra-2:  #756A57;   /* texto apagado */
  --gema:     #E9A72C;
  --gema-2:   #F2C05F;
  --gema-ink: #9A6A08;   /* gema em cima de claro, legível */
  --salvia:   #5E7455;
  --tomate:   #B8402F;
  --noite:    #1B1F17;   /* o bloco escuro do evento */
  --wa:       #1FA457;

  --sans: "Schibsted Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --serif: "Fraunces", ui-serif, Georgia, "Times New Roman", serif;

  --pad: clamp(20px, 5.6vw, 84px);
  --r: clamp(10px, 2.6vw, 16px);   /* raio das fotos e cartões */
  --r-sm: 6px;
  --maxw: 1360px;
  --e-out: cubic-bezier(.19,1,.22,1);
}

*,*::before,*::after{ box-sizing:border-box; }

html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
  background:var(--linho);
  overflow-x:clip;
}
@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto} }

body{
  margin:0;
  background:var(--linho);
  color:var(--terra);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.58;
  letter-spacing:-0.005em;
  overflow-x:clip;
  touch-action:pan-y;   /* sem pinch: o zoom da página fica desligado */
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img,video{ display:block; max-width:100%; height:auto; }
a{ color:inherit; }
::selection{ background:var(--gema); color:var(--carvao); }

.skip{
  position:fixed; left:-999px; top:0; z-index:200;
  background:var(--carvao); color:var(--gema-2); padding:12px 18px; font-weight:600;
}
.skip:focus{ left:12px; top:12px; }
:focus-visible{ outline:2px solid var(--tomate); outline-offset:3px; }

/* ── tipografia ─────────────────────────────────────── */
.h2{
  font-family:var(--serif);
  font-variation-settings:"SOFT" 45,"WONK" 1,"opsz" 90;
  font-weight:430;
  font-size:clamp(2rem, 7.4vw, 3.9rem);
  line-height:1.02;
  letter-spacing:-0.028em;
  color:var(--carvao);
  margin:0 0 .7em;
  text-wrap:balance;
}
.h2 em{ font-style:italic; color:var(--tomate); font-variation-settings:"SOFT" 60,"WONK" 1,"opsz" 120; }
.h2--big{ font-size:clamp(2.35rem, 9.6vw, 5.2rem); }
.h2--md{ font-size:clamp(1.75rem, 6.4vw, 3.1rem); }
.h2--claro{ color:var(--linho); }
.h2--claro em{ color:var(--gema); }
.h2--dark{ color:var(--carvao); }

.mark{
  font-family:var(--serif);
  font-style:italic; font-weight:400;
  font-variation-settings:"SOFT" 70,"WONK" 1,"opsz" 20;
  font-size:.95rem; letter-spacing:.01em;
  color:var(--salvia);
  display:flex; align-items:center; gap:.6em;
  margin:0 0 1.15em;
}
.mark span{ display:block; width:clamp(24px,7vw,52px); height:1px; background:currentColor; opacity:.6; flex:none; }
.mark--gema{ color:var(--gema); }

/* ── botões ─────────────────────────────────────────── */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.62em;
  min-height:56px; padding:0 26px;
  background:var(--wa); color:#fff;
  font:600 1.02rem/1 var(--sans); letter-spacing:-0.01em;
  text-decoration:none;
  border:0; border-radius:2px;
  box-shadow:0 1px 0 rgba(255,255,255,.25) inset, 0 12px 26px -14px rgba(31,164,87,.85);
  transition:transform .28s var(--e-out), background .2s;
  will-change:transform;
}
.btn:hover{ background:#23B561; }
.btn:active{ transform:scale(.975); }
.btn--big{ min-height:66px; font-size:1.1rem; padding:0 34px; width:100%; max-width:420px; }
.btn--sec{
  background:transparent; color:var(--carvao);
  border:1.5px solid var(--carvao); box-shadow:none;
}
.btn--sec:hover{ background:var(--carvao); color:var(--linho); }
.btn svg{ flex:none; }

.link-wa{
  display:inline-block; margin-top:.85em;
  font:600 .96rem/1 var(--sans);
  color:var(--carvao); text-decoration:none;
  border-bottom:2px solid var(--tomate);
  padding:0 0 5px; min-height:24px;
  transition:color .2s, border-color .2s;
}
.link-wa:hover{ color:var(--tomate); }

/* ═══════════ BARRA ═══════════ */
.bar{
  position:fixed; top:0; left:0; right:0; z-index:90;
  display:flex; align-items:center; justify-content:space-between;
  gap:16px;
  padding:10px var(--pad);
  padding-top:calc(10px + env(safe-area-inset-top));
  background:rgba(251,246,236,.82);
  backdrop-filter:blur(14px) saturate(1.3);
  -webkit-backdrop-filter:blur(14px) saturate(1.3);
  border-bottom:1px solid rgba(37,35,28,.09);
  transform:translateY(-102%);
  transition:transform .55s var(--e-out);
}
.bar.on{ transform:none; }
.bar__mark{ text-decoration:none; display:block; line-height:1.12; }
.bar__name{
  display:block; font-family:var(--serif); font-weight:500;
  font-variation-settings:"SOFT" 40,"WONK" 1,"opsz" 24;
  font-size:1rem; letter-spacing:-.02em; color:var(--carvao);
}
.bar__sub{ display:block; font-size:.64rem; letter-spacing:.12em; color:var(--terra-2); font-weight:500; text-transform:lowercase; }

/* ═══════════ HERO ═══════════ */
.hero{
  position:relative; background:var(--linho);
  display:grid; grid-template-columns:100%;
}
.hero__media{ position:relative; grid-column:1; grid-row:1; }
.hero__shot{ margin:0; overflow:hidden; background:#7a6a55; }
.hero__shot img{
  width:100%;
  height:clamp(600px, 92svh, 820px);
  object-fit:cover; object-position:50% 16%;
}
.hero__clip{
  display:none;
  position:absolute; z-index:3;
  right:var(--pad); bottom:calc(-1 * clamp(58px, 17vw, 88px));
  width:clamp(112px, 31vw, 150px);
  margin:0;
  transform:rotate(-3deg);
  transform-origin:center;
}
.hero__clip video{
  width:100%; aspect-ratio:9/16; object-fit:cover; background:#6f6558;
  border:4px solid var(--papel); border-radius:var(--r-sm);
  box-shadow:0 22px 40px -18px rgba(37,35,28,.55), 0 2px 6px rgba(37,35,28,.12);
}
.hero__clip figcaption{
  margin-top:.5em; text-align:center;
  font-family:var(--serif); font-style:italic; font-size:.82rem; color:var(--terra-2);
}

/* nome + manchete sobre a base da foto (celular) */
.hero__head{
  grid-column:1; grid-row:1; align-self:end; z-index:2;
  padding:clamp(140px, 40vw, 200px) var(--pad) clamp(22px, 5vw, 30px);
  background:linear-gradient(180deg,
    rgba(28,25,18,0) 0%,
    rgba(28,25,18,.28) 32%,
    rgba(28,25,18,.66) 68%,
    rgba(28,25,18,.80) 100%);
  color:#FBF6EC;
}
.hero__tag{ margin:0 0 .75em; }
.hero__tag b{
  display:block; font-family:var(--serif); font-weight:560;
  font-variation-settings:"SOFT" 40,"WONK" 1,"opsz" 96;
  font-size:clamp(1.9rem, 8vw, 2.5rem); line-height:1; letter-spacing:-.03em;
  color:#FFFBF2;
  text-shadow:0 2px 6px rgba(0,0,0,.28);
}
.hero__tag span{
  display:inline-block; margin-top:.55em;
  padding:.38em .8em;
  font-size:.74rem; letter-spacing:.13em; text-transform:uppercase; font-weight:700;
  color:var(--carvao); background:var(--gema);
  border-radius:999px;
}
.hero__who{
  display:none;
  margin:0 0 .9em;
  font-size:.82rem; letter-spacing:.06em; text-transform:uppercase; font-weight:600;
  color:var(--terra-2);
}
.hero__who span{ color:var(--gema-ink); }

.hero__h1{
  font-family:var(--serif);
  font-weight:380;
  font-variation-settings:"SOFT" 48,"WONK" 1,"opsz" 144;
  font-size:clamp(2.5rem, 10.8vw, 5.7rem);
  line-height:.98;
  letter-spacing:-0.034em;
  color:inherit;
  margin:0;
  text-shadow:0 2px 6px rgba(0,0,0,.22);
}
.hero__h1 .ln{ display:block; overflow:hidden; padding-bottom:.08em; margin-bottom:-.08em; }
.hero__h1 .ln i{ display:block; font-style:normal; }
.hero__h1 .ln--em i{
  font-style:italic; color:var(--gema-2);
  font-variation-settings:"SOFT" 70,"WONK" 1,"opsz" 144;
}

/* CTA em pílula, o mesmo desenho do botão flutuante */
.btn--pill{
  border-radius:999px; min-height:54px; width:100%;
  box-shadow:0 14px 34px -12px rgba(37,35,28,.6), 0 1px 0 rgba(255,255,255,.25) inset;
  font-size:1rem;
}
.hero__pill{ margin-top:clamp(20px, 5vw, 28px); }

.hero__lead{
  grid-column:1; grid-row:2;
  padding:clamp(24px, 6vw, 40px) var(--pad) clamp(34px, 7vw, 56px);
}
.hero__p{
  max-width:40ch;
  font-size:1.05rem; line-height:1.6; color:var(--terra);
  margin:0 0 1.5em;
}
/* no celular o CTA do hero é a pílula sobre a foto; o botão do texto só volta em telas maiores */
.hero__act .btn{ display:none; width:100%; max-width:400px; }
.hero__note{
  margin:0; font-size:.86rem; color:var(--terra-2); letter-spacing:.005em;
  display:flex; align-items:center; gap:.55em;
}
.hero__note b{
  flex:none; width:8px; height:8px; border-radius:50%; background:var(--gema);
  box-shadow:0 0 0 3px rgba(233,167,44,.25);
}

.hero__data{
  grid-column:1; grid-row:3;
  padding:26px var(--pad) 30px;
  background:var(--gema);
  color:#2B2308;
}
.hero__data dl{ margin:0; display:grid; gap:0; }
.hero__data div{
  display:flex; align-items:baseline; justify-content:space-between; gap:14px;
  padding:11px 0;
  border-bottom:1px solid rgba(43,35,8,.2);
}
.hero__data div:last-child{ border-bottom:0; padding-bottom:0; }
.hero__data div:first-child{ padding-top:0; }
.hero__data dt{ font-size:.9rem; font-weight:500; opacity:.85; order:2; text-align:right; }
.hero__data dd{
  margin:0; order:1; flex:none;
  font-family:var(--serif); font-weight:600;
  font-variation-settings:"SOFT" 20,"WONK" 0,"opsz" 100;
  font-size:clamp(1.7rem, 7.4vw, 2.6rem); line-height:1; letter-spacing:-.035em;
  font-variant-numeric:lining-nums;
}

/* ═══════════ SOBRE ═══════════ */
.sobre{
  background:var(--papel);
  padding:clamp(56px,11vw,120px) var(--pad) clamp(40px,8vw,90px);
  display:grid; gap:clamp(28px,6vw,54px);
}
.sobre__portrait{ margin:0 calc(var(--pad) * -1); overflow:hidden; background:#645749; }
.sobre__portrait img{ width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; }
.sobre__text p{ font-size:1.04rem; line-height:1.66; margin:0 0 1.1em; color:var(--terra); max-width:56ch; }

.pull{
  margin:2.1em 0 0; padding:0 0 0 clamp(16px,4vw,26px);
  border-left:2px solid var(--tomate);
}
.pull p{
  font-family:var(--serif); font-style:italic; font-weight:400;
  font-variation-settings:"SOFT" 70,"WONK" 1,"opsz" 72;
  font-size:clamp(1.35rem,5.2vw,2rem); line-height:1.18; letter-spacing:-.02em;
  color:var(--carvao) !important; margin:0 0 .55em !important; max-width:22ch;
}
.pull em{ font-style:italic; color:var(--tomate); }
.pull cite{ font-style:normal; font-size:.82rem; letter-spacing:.09em; color:var(--terra-2); font-weight:600; }

.sobre__strip{
  margin:0 calc(var(--pad) * -1);
  padding:0 var(--pad);
  display:grid; grid-auto-flow:column; grid-auto-columns:72%;
  gap:10px; overflow-x:auto; overflow-y:hidden; overscroll-behavior-x:contain;
  scroll-padding-inline:var(--pad);
  scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.sobre__nav{ padding-top:14px; }
.sobre__strip::-webkit-scrollbar{ display:none; }
.sobre__strip, .reels__rail, .vozes__rail{ touch-action:pan-x pan-y; }
.sobre__strip figure{ margin:0; scroll-snap-align:start; overflow:hidden; background:#b9ad98; border-radius:var(--r); }
.sobre__strip img, .sobre__strip video{ width:100%; aspect-ratio:4/5; object-fit:cover; }

/* ═══════════ ROTINA ═══════════ */
.rotina{
  position:relative;
  padding:clamp(56px,12vw,130px) var(--pad) clamp(50px,10vw,110px);
  background:var(--areia);
  overflow:hidden;
}
.rotina__vid{ margin:0 calc(var(--pad) * -1) clamp(26px,6vw,0); position:relative; }
.rotina__vid video{ width:100%; aspect-ratio:9/16; max-height:88vh; object-fit:cover; background:#a89b84; }
.rotina__vid::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, transparent 60%, var(--areia) 98%);
}
.rotina__say{ position:relative; margin-top:-9vh; }
.rotina__say p{ max-width:44ch; color:var(--terra); font-size:1.02rem; margin:0; }
.rotina__tiles{
  margin-top:clamp(34px,8vw,72px);
  display:grid; grid-template-columns:repeat(2,1fr); gap:clamp(8px,2.4vw,18px);
}
.rotina__tiles figure{ margin:0; }
.rotina__tiles img{ width:100%; aspect-ratio:4/5; object-fit:cover; background:#b7a98e; border-radius:var(--r); }
.rotina__tiles figcaption{ margin-top:.6em; font-size:.8rem; color:var(--terra-2); }
.rotina__tiles figure:nth-child(2),
.rotina__tiles figure:nth-child(4){ margin-top:clamp(18px,6vw,54px); }

.porque{
  margin-top:clamp(48px,10vw,96px);
  padding-top:clamp(28px,6vw,48px);
  border-top:1px solid rgba(37,35,28,.18);
}
.porque__frase{
  font-family:var(--serif); font-weight:420;
  font-variation-settings:"SOFT" 50,"WONK" 1,"opsz" 100;
  font-size:clamp(1.7rem,6.6vw,3rem); line-height:1.05; letter-spacing:-.028em;
  color:var(--carvao); margin:0 0 .9em; max-width:20ch;
}
.porque__frase em{ font-style:italic; color:var(--tomate); }
.porque__list{ list-style:none; margin:0; padding:0; counter-reset:p; display:grid; gap:0; }
.porque__list li{
  counter-increment:p;
  position:relative; padding:16px 0 16px 2.4em;
  border-top:1px solid rgba(37,35,28,.14);
  font-size:.98rem; line-height:1.5; color:var(--terra); max-width:52ch;
}
.porque__list li::before{
  content:counter(p, lower-roman);
  position:absolute; left:0; top:17px;
  font-family:var(--serif); font-style:italic; color:var(--tomate); font-size:1.05rem;
}
.porque__list b{ color:var(--carvao); font-weight:600; }

/* ═══════════ GALERIA ═══════════ */
.galeria{ padding:clamp(56px,12vw,130px) 0 clamp(40px,8vw,90px); background:var(--linho); }
.galeria__head{ padding:0 var(--pad) clamp(30px,7vw,60px); max-width:900px; }
.galeria__sub{ color:var(--terra-2); max-width:46ch; margin:0; font-size:1rem; }

.galeria__grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  grid-auto-rows:clamp(52px, 15.2vw, 118px);
  grid-auto-flow:row dense;
  gap:clamp(6px,1.8vw,14px);
  padding:0 clamp(6px,1.8vw,14px);
}
.tile{
  position:relative; margin:0; overflow:hidden; background:#cfc2a8; border-radius:var(--r);
  grid-column:span var(--cs); grid-row:span var(--rs);
}
.tile img, .tile video{ width:100%; height:100%; object-fit:cover; display:block; }
[data-lb]{ cursor:zoom-in; -webkit-tap-highlight-color:transparent; }
.tile figcaption{
  position:absolute; left:0; right:0; bottom:0;
  padding:34px 12px 11px;
  font-size:.78rem; font-weight:500; color:#F7F1E4;
  background:linear-gradient(180deg, transparent, rgba(20,18,12,.78));
}

/* ═══════════ REELS ═══════════ */
.reels{
  padding:clamp(50px,10vw,110px) 0 clamp(56px,11vw,120px);
  background:var(--papel);
}
.reels__head{ padding:0 var(--pad) clamp(26px,6vw,50px); }
.reels__head p:last-child{ color:var(--terra-2); font-size:.95rem; margin:0; }
.reels__rail{
  display:grid; grid-auto-flow:column;
  grid-auto-columns:min(68vw, 300px);
  gap:clamp(9px,2.4vw,16px);
  padding:0 var(--pad);
  overflow-x:auto; overscroll-behavior-x:contain;
  scroll-padding-inline:var(--pad);
  scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.reels__rail::-webkit-scrollbar{ display:none; }

.reel{
  position:relative; margin:0; scroll-snap-align:center;
  background:#3b372e; cursor:pointer; overflow:hidden; border-radius:var(--r);
  -webkit-tap-highlight-color:transparent;
  box-shadow:0 18px 34px -22px rgba(37,35,28,.5);
}
.reel video{ width:100%; aspect-ratio:9/16; object-fit:cover; display:block; background:#3b372e; }
.reel__veil{
  position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(9,12,7,.28) 0%, transparent 22%, transparent 52%, rgba(9,12,7,.86) 100%);
}
.reel__meta{ position:absolute; left:13px; right:13px; bottom:13px; pointer-events:none; }
.reel__t{
  display:block; font-family:var(--serif); font-weight:500;
  font-variation-settings:"SOFT" 45,"WONK" 1,"opsz" 40;
  font-size:1.06rem; line-height:1.12; letter-spacing:-.02em; color:#F7F1E4;
}
.reel__v{ display:block; margin-top:.3em; font-size:.78rem; color:var(--gema-2); font-weight:600; }
.reel__snd{
  position:absolute; top:11px; right:11px; z-index:2;
  width:38px; height:38px; display:grid; place-items:center;
  background:rgba(12,16,9,.6); backdrop-filter:blur(6px);
  border:1px solid rgba(247,241,228,.25); border-radius:50%;
  color:#F7F1E4;
}
.reel__snd svg{ width:17px; height:17px; }

/* ═══════════ PLANOS ═══════════ */
.planos{
  background:var(--linho);
  padding:clamp(56px,12vw,130px) var(--pad) clamp(56px,11vw,120px);
}
.planos__head{ max-width:760px; }
.planos__intro{ font-size:1.04rem; line-height:1.62; color:var(--terra); max-width:52ch; margin:0; }

.planos__list{
  list-style:none; margin:clamp(36px,8vw,72px) 0 0; padding:0;
  border-top:1px solid rgba(37,35,28,.2);
}
.plano{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:0 clamp(14px,4vw,34px);
  padding:clamp(26px,6vw,44px) 0;
  border-bottom:1px solid rgba(37,35,28,.2);
}
.plano__num{
  font-family:var(--serif); font-style:italic; font-weight:400;
  font-variation-settings:"SOFT" 60,"WONK" 1,"opsz" 40;
  font-size:clamp(1.1rem,4vw,1.5rem); color:var(--tomate);
  line-height:1.5; letter-spacing:.02em; min-width:2.1ch;
}
.plano h3{
  font-family:var(--serif); font-weight:450;
  font-variation-settings:"SOFT" 45,"WONK" 1,"opsz" 90;
  font-size:clamp(1.85rem,7vw,2.9rem); line-height:1; letter-spacing:-.03em;
  color:var(--carvao); margin:0 0 .32em;
}
.plano__lead{ font-size:1.02rem; line-height:1.55; color:var(--terra); margin:0 0 .9em; max-width:46ch; }
.plano__pts{ list-style:none; margin:0; padding:0; }
.plano__pts li{ position:relative; padding-left:1.15em; margin-bottom:.34em; font-size:.95rem; color:var(--terra-2); }
.plano__pts li::before{ content:""; position:absolute; left:0; top:.66em; width:5px; height:5px; background:var(--salvia); }

.planos__extra{ margin-top:clamp(46px,10vw,96px); }
.planos__extra h3{
  font-family:var(--serif); font-weight:420;
  font-variation-settings:"SOFT" 45,"WONK" 1,"opsz" 60;
  font-size:clamp(1.5rem,5.6vw,2.2rem); letter-spacing:-.026em; color:var(--carvao);
  margin:0 0 clamp(20px,5vw,36px);
}
.extra__grid{ display:grid; gap:clamp(18px,4vw,26px); }
.extra{
  display:grid; grid-template-columns:88px 1fr; gap:clamp(14px,4vw,22px);
  align-items:start;
  padding-top:clamp(16px,4vw,22px);
  border-top:1px solid rgba(37,35,28,.14);
}
.extra img{ width:100%; aspect-ratio:1/1.2; object-fit:cover; background:#b9b1a0; border-radius:var(--r-sm); }
.extra h4{
  font-family:var(--serif); font-weight:500;
  font-variation-settings:"SOFT" 40,"WONK" 0,"opsz" 30;
  font-size:1.14rem; letter-spacing:-.018em; color:var(--carvao); margin:0 0 .3em; line-height:1.16;
}
.extra p{ margin:0; font-size:.94rem; line-height:1.52; color:var(--terra-2); }

/* ═══════════ VOZES ═══════════ */
.vozes{ padding:clamp(56px,12vw,130px) 0 clamp(56px,11vw,120px); background:var(--salvia-w); }
.vozes__head{ padding:0 var(--pad) clamp(26px,6vw,50px); }
.vozes__head p:last-child{ color:var(--terra-2); font-size:.95rem; margin:0; max-width:44ch; }
.vozes__rail{
  display:grid; grid-auto-flow:column;
  grid-auto-columns:min(80vw, 380px);
  gap:clamp(10px,2.6vw,18px);
  padding:0 var(--pad);
  overflow-x:auto; overflow-y:hidden; overscroll-behavior-x:contain;
  scroll-padding-inline:var(--pad);
  scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  touch-action:pan-x pan-y;
}
.vozes__rail::-webkit-scrollbar{ display:none; }
.voz{
  margin:0;
  scroll-snap-align:start;
  background:var(--papel);
  color:var(--terra);
  padding:clamp(20px,5vw,30px);
  display:flex; flex-direction:column; justify-content:space-between;
  min-height:230px;
  border:1px solid rgba(37,35,28,.08); border-radius:var(--r);
  box-shadow:0 14px 30px -24px rgba(37,35,28,.5);
}
.voz:nth-child(3n+2){ background:var(--linho); }
.voz:nth-child(4n+3){ background:#F3E7CF; }
.voz p{
  margin:0 0 1.3em;
  font-family:var(--serif); font-weight:400;
  font-variation-settings:"SOFT" 42,"WONK" 1,"opsz" 30;
  font-size:clamp(1.06rem,4vw,1.24rem); line-height:1.34; letter-spacing:-.017em;
  color:var(--carvao);
}
.voz p em{ font-style:italic; color:var(--tomate); }
.voz footer{ display:flex; align-items:baseline; gap:.6em; flex-wrap:wrap; }
.voz b{ font-size:.88rem; font-weight:600; color:var(--terra); }
.voz span{ font-size:.76rem; color:var(--terra-2); }

.cnav{
  display:flex; align-items:center; gap:10px;
  padding:clamp(18px,4vw,26px) var(--pad) 0;
}
.cnav__btn{
  width:48px; height:48px; border-radius:50%;
  display:grid; place-items:center;
  background:var(--papel); color:var(--carvao);
  border:1px solid rgba(37,35,28,.22); cursor:pointer;
  transition:background .2s, transform .2s, opacity .2s;
  -webkit-tap-highlight-color:transparent;
}
.cnav__btn:active{ transform:scale(.94); }
.cnav__btn[disabled]{ opacity:.3; cursor:default; }
.cnav__pos{ margin-left:.4em; font-size:.85rem; color:var(--terra-2); font-variant-numeric:tabular-nums; }
.sobre .cnav{ padding-left:0; padding-right:0; }

.vozes__ponte{
  margin:clamp(34px,8vw,64px) var(--pad) 0;
  max-width:30ch;
  font-family:var(--serif); font-weight:400;
  font-variation-settings:"SOFT" 50,"WONK" 1,"opsz" 60;
  font-size:clamp(1.3rem,5vw,1.9rem); line-height:1.2; letter-spacing:-.02em;
  color:var(--carvao);
}
.vozes__ponte em{ font-style:italic; color:var(--tomate); }

/* ═══════════ EVENTO — o único bloco escuro ═══════════ */
.evento{ position:relative; background:var(--noite); color:#D9D3C4; }
.evento__capa{ margin:0; position:relative; overflow:hidden; background:#2b2e24; }
.evento__capa img{
  width:100%; height:clamp(360px, 70svh, 620px); object-fit:cover;
  filter:saturate(.9);
}
.evento__capa::before{
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg, var(--salvia-w) 0%, rgba(228,232,218,0) 18%, rgba(27,31,23,0) 45%, var(--noite) 100%);
}
.evento__in{
  position:relative; z-index:2;
  margin-top:clamp(-140px, -26vw, -90px);
  padding:0 var(--pad) clamp(56px,11vw,130px);
}
.evento__p{ max-width:46ch; font-size:1.02rem; line-height:1.6; color:#C9C2B1; margin:0; }
.evento__nums{
  margin:clamp(26px,6vw,44px) 0 0; padding:0;
  display:grid; gap:0;
  border-top:1px solid rgba(233,167,44,.3);
}
.evento__nums div{
  display:flex; align-items:baseline; gap:.7em;
  padding:13px 0; border-bottom:1px solid rgba(233,167,44,.3);
}
.evento__nums dd{
  margin:0; flex:none; min-width:4.7em;
  font-family:var(--serif); font-weight:600;
  font-variation-settings:"SOFT" 20,"WONK" 0,"opsz" 100;
  font-size:clamp(1.6rem,6.4vw,2.4rem); line-height:1; letter-spacing:-.035em;
  color:var(--gema);
}
.evento__nums dt{ font-size:.92rem; color:#D9D3C4; }

.evento__shots{
  margin:clamp(30px,7vw,58px) 0;
  display:grid; grid-template-columns:repeat(2,1fr); gap:clamp(7px,2vw,14px);
}
.evento__shots figure{ margin:0; }
.evento__shots img{ width:100%; aspect-ratio:4/5; object-fit:cover; background:#2b2e24; border-radius:var(--r); }

.evento__quote{ margin:0; }
.evento__quote p{
  font-family:var(--serif); font-weight:380;
  font-variation-settings:"SOFT" 50,"WONK" 1,"opsz" 100;
  font-size:clamp(1.32rem,5.4vw,2.1rem); line-height:1.22; letter-spacing:-.026em;
  color:var(--linho); margin:0 0 1em; text-wrap:pretty;
}
.evento__quote em{ font-style:italic; color:var(--gema); }
.evento__quote cite{
  font-style:normal; display:flex; gap:.7em; align-items:baseline; flex-wrap:wrap;
  font-size:.9rem; font-weight:600; color:var(--linho);
}
.evento__quote cite span{ font-weight:400; font-size:.8rem; color:#A9A392; }

/* ═══════════ MENTORIA ═══════════ */
.mentoria{
  background:var(--linho);
  padding:clamp(56px,12vw,130px) var(--pad) clamp(56px,11vw,120px);
  display:grid; gap:clamp(30px,7vw,60px);
  overflow:hidden;
}
.mentoria__fotos{
  display:grid; grid-template-columns:repeat(2, 1fr);
  gap:14px 10px;
  padding:10px 6%;
}
.mentoria__fotos figure{
  margin:0;
  background:var(--papel); border-radius:4px;
  padding:6px 6px 10px;
  box-shadow:0 18px 34px -20px rgba(37,35,28,.55), 0 1px 3px rgba(37,35,28,.1);
  transform:rotate(calc(var(--ang, 0) * 1deg));
  transform-origin:50% 60%;
}
.mentoria__fotos figure:nth-child(2){ margin-top:26px; }
.mentoria__fotos figure:nth-child(3){ margin-top:-10px; }
.mentoria__fotos figure:nth-child(4){ margin-top:16px; }
.mentoria__fotos img{ width:100%; aspect-ratio:3/4; object-fit:cover; background:#b7a98e; border-radius:2px; }
.mentoria__text p{ font-size:1.02rem; line-height:1.62; color:var(--terra); max-width:52ch; margin:0 0 1.1em; }
.mentoria__cite{
  font-family:var(--serif); font-style:italic; font-weight:400;
  font-variation-settings:"SOFT" 70,"WONK" 1,"opsz" 60;
  font-size:clamp(1.12rem,4.4vw,1.5rem) !important; line-height:1.28 !important; letter-spacing:-.015em;
  color:var(--carvao) !important; max-width:34ch !important;
  padding-left:clamp(14px,3.6vw,22px); border-left:2px solid var(--salvia);
  margin:1.4em 0 1.6em !important;
}
.mentoria__cite em{ color:var(--salvia); }
.mentoria .btn--sec{ width:100%; max-width:420px; }

/* ═══════════ FAQ ═══════════ */
.faq{
  background:var(--papel);
  padding:clamp(56px,11vw,110px) var(--pad) clamp(50px,10vw,100px);
}
.faq__list{ margin:clamp(20px,5vw,40px) 0 0; padding:0; border-top:1px solid rgba(37,35,28,.16); }
.faq__item{ padding:clamp(18px,4vw,26px) 0; border-bottom:1px solid rgba(37,35,28,.16); }
.faq__item dt{
  font-family:var(--serif); font-weight:500;
  font-variation-settings:"SOFT" 40,"WONK" 1,"opsz" 40;
  font-size:clamp(1.12rem,4.4vw,1.4rem); line-height:1.2; letter-spacing:-.02em;
  color:var(--carvao); margin:0 0 .45em;
}
.faq__item dd{ margin:0; font-size:.98rem; line-height:1.55; color:var(--terra); max-width:58ch; }

/* ═══════════ FIM ═══════════ */
.fim{ background:var(--gema); color:#2B2308; display:grid; }
.fim__in{ padding:clamp(56px,12vw,120px) var(--pad) clamp(44px,9vw,90px); }
.fim__in p{ font-size:1.04rem; line-height:1.6; color:#3E3410; max-width:48ch; margin:0 0 1.8em; }
.fim .h2--dark em{ color:#7A2418; }
.fim__note{ margin:1.1em 0 0 !important; font-size:.88rem !important; color:#5A4A12 !important; font-weight:500; max-width:38ch !important; }
.fim .btn{ background:var(--carvao); color:var(--gema-2); box-shadow:none; }
.fim .btn:hover{ background:#3A3628; }
.fim__art{ overflow:hidden; }
.fim__art img{ width:100%; aspect-ratio:16/11; object-fit:cover; background:#7e6a55; }

/* ═══════════ PÉ ═══════════ */
.pe{
  background:var(--areia);
  color:var(--terra);
  padding:clamp(40px,8vw,72px) var(--pad) calc(clamp(96px,18vw,120px) + env(safe-area-inset-bottom));
  display:grid; gap:.35em;
}
.pe__name{
  margin:0; font-family:var(--serif); font-weight:450;
  font-variation-settings:"SOFT" 45,"WONK" 1,"opsz" 40;
  font-size:1.5rem; letter-spacing:-.028em; color:var(--carvao);
}
.pe__meta{ margin:0; font-size:.9rem; color:var(--terra-2); }
.pe__links{ display:flex; gap:1.4em; flex-wrap:wrap; margin-top:.9em; }
.pe__links a{
  font-size:.92rem; color:var(--carvao); text-decoration:none;
  border-bottom:1px solid rgba(184,64,47,.55); padding-bottom:3px; min-height:24px;
}
.pe__links a:hover{ color:var(--tomate); }

/* ═══════════ LIGHTBOX ═══════════ */
.lb{
  position:fixed; inset:0; z-index:300;
  display:grid; grid-template-rows:1fr auto;
  background:rgba(22,20,14,.96);
  padding:calc(16px + env(safe-area-inset-top)) 0 calc(16px + env(safe-area-inset-bottom));
  opacity:0; transition:opacity .25s;
  touch-action:pan-y;
}
.lb[hidden]{ display:none; }
.lb.on{ opacity:1; }
.lb__fig{ margin:0; min-height:0; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:0 var(--pad); }
.lb__img{
  max-width:100%; max-height:calc(100svh - 150px); width:auto; height:auto;
  object-fit:contain; border-radius:var(--r);
  box-shadow:0 30px 60px -30px rgba(0,0,0,.8);
  transition:opacity .22s, transform .3s var(--e-out);
}
.lb__img.troca{ opacity:0; transform:scale(.985); }
.lb__cap{ margin-top:12px; font-size:.9rem; color:#D9D3C4; text-align:center; max-width:52ch; }
.lb__nav{ display:flex; align-items:center; justify-content:center; gap:18px; padding-top:14px; }
.lb__btn, .lb__close{
  width:50px; height:50px; border-radius:50%; display:grid; place-items:center;
  background:rgba(251,246,236,.1); color:#FBF6EC; border:1px solid rgba(251,246,236,.28);
  cursor:pointer; -webkit-tap-highlight-color:transparent; transition:background .2s, transform .2s;
}
.lb__btn:active, .lb__close:active{ transform:scale(.94); }
.lb__pos{ min-width:4ch; text-align:center; font-size:.9rem; color:#D9D3C4; font-variant-numeric:tabular-nums; }
.lb__close{ position:absolute; top:calc(14px + env(safe-area-inset-top)); right:var(--pad); z-index:2; }
body.lb-open{ overflow:hidden; }
@media (min-width:900px){
  .lb__nav{ position:absolute; inset:0; padding:0; justify-content:space-between; pointer-events:none; padding:0 var(--pad); }
  .lb__nav .lb__btn{ pointer-events:auto; width:56px; height:56px; }
  .lb__pos{ position:absolute; bottom:calc(18px + env(safe-area-inset-bottom)); left:50%; transform:translateX(-50%); }
  .lb__img{ max-height:calc(100svh - 110px); }
  .lb__btn:hover, .lb__close:hover{ background:rgba(251,246,236,.22); }
}

/* ═══════════ FLUTUANTE ═══════════ */
.float{
  position:fixed; z-index:80;
  left:var(--pad); right:var(--pad);
  bottom:calc(14px + env(safe-area-inset-bottom));
  display:flex; align-items:center; justify-content:center; gap:.55em;
  min-height:54px;
  background:var(--wa); color:#fff;
  font:600 1rem/1 var(--sans); text-decoration:none;
  border-radius:999px;
  box-shadow:0 14px 34px -12px rgba(37,35,28,.6), 0 1px 0 rgba(255,255,255,.25) inset;
  /* escondido de três jeitos: deslocado, transparente e invisível — no iPhone a
     barra do navegador muda a altura da tela e só o deslocamento não bastava */
  transform:translateY(calc(100% + 160px));
  opacity:0; visibility:hidden; pointer-events:none;
  transition:transform .55s var(--e-out), opacity .3s, visibility 0s .55s;
}
.float.on{
  transform:none; opacity:1; visibility:visible; pointer-events:auto;
  transition:transform .55s var(--e-out), opacity .3s, visibility 0s;
}
.float.on:active{ filter:brightness(.95); transform:scale(.97); }

/* ═══════════════════════════════════════════════════════
   ≥ 700px
   ═══════════════════════════════════════════════════════ */
@media (min-width:700px){
  body{ font-size:17.5px; }

  .hero__shot img{ height:clamp(520px, 72svh, 760px); object-position:50% 30%; }
  .hero__clip{ display:block; width:clamp(150px, 20vw, 200px); bottom:-64px; }
  .hero__shot{ border-radius:var(--r); }
  /* a partir daqui a manchete volta para o papel, abaixo da foto */
  .hero__head{
    grid-row:2; align-self:start; background:none; color:var(--carvao);
    padding:96px var(--pad) 0;
  }
  .hero__tag{ display:none; }
  .hero__who{ display:block; }
  .hero__h1{ text-shadow:none; margin-bottom:.55em; }
  .hero__h1 .ln--em i{ color:var(--tomate); }
  .hero__pill{ display:none; }
  .hero__lead{ grid-row:3; padding-top:0; }
  .hero__data{ grid-row:4; }
  .hero__p{ font-size:1.1rem; }
  .hero__act{ display:flex; align-items:center; gap:1.5em; flex-wrap:wrap; }
  .hero__act .btn{ display:inline-flex; width:auto; }
  .hero__note{ margin:0; }

  .hero__data dl{ grid-template-columns:repeat(3,1fr); gap:0 clamp(20px,4vw,56px); }
  .hero__data div{ display:block; border-bottom:0; border-left:1px solid rgba(43,35,8,.24); padding:2px 0 2px 18px; }
  .hero__data div:first-child{ border-left:0; padding-left:0; }
  .hero__data dt{ text-align:left; display:block; margin-top:.3em; }

  .sobre__strip{ grid-auto-columns:32%; }

  .rotina{ display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:clamp(28px,5vw,64px); align-items:start; }
  .rotina__vid{ margin:0; grid-row:span 2; overflow:hidden; border-radius:var(--r); }
  .rotina__vid::after{ display:none; }
  .rotina__vid video{ aspect-ratio:9/14; max-height:none; }
  .rotina__say{ margin-top:clamp(10px,3vw,40px); }
  .rotina__tiles{ margin-top:clamp(24px,4vw,44px); }
  .porque{ grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:clamp(24px,5vw,64px); align-items:start; }
  .porque__frase{ margin:0; }

  .galeria__grid{ grid-template-columns:repeat(4,1fr); grid-auto-rows:clamp(62px, 7.4vw, 96px); }
  .tile{ grid-column:span var(--cst); grid-row:span var(--rst); }

  .reels__rail{ grid-auto-columns:min(34vw, 320px); }

  .plano{ grid-template-columns:auto minmax(0,1.05fr) minmax(0,.95fr); align-items:start; }
  .plano__body{ display:contents; }
  .plano h3{ grid-column:2; }
  .plano__lead{ grid-column:2; grid-row:2; margin-bottom:0; }
  .plano__pts{ grid-column:3; grid-row:1 / span 2; padding-top:.5em; }
  .plano .link-wa{ grid-column:2; grid-row:3; margin-top:1.2em; justify-self:start; }

  .extra__grid{ grid-template-columns:repeat(2,1fr); gap:clamp(22px,3.4vw,40px); }
  .extra{ grid-template-columns:104px 1fr; }

  .vozes__rail{ grid-auto-columns:min(42vw, 400px); }

  .evento__capa img{ height:clamp(420px, 60vh, 640px); }
  .evento__in{ max-width:var(--maxw); margin-left:auto; margin-right:auto; }
  .evento__nums{ display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid rgba(233,167,44,.3); }
  .evento__nums div{ display:block; border-bottom:0; border-left:1px solid rgba(233,167,44,.3); padding:14px 0 14px 20px; }
  .evento__nums div:first-child{ border-left:0; padding-left:0; }
  .evento__nums dt{ display:block; margin-top:.35em; }
  .evento__shots{ grid-template-columns:repeat(4,1fr); }
  .evento__quote{ max-width:33rem; margin-left:auto; }

  .mentoria{ grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); align-items:center; gap:clamp(30px,5vw,72px); }
  .mentoria__fotos{ gap:18px 12px; padding:14px 6%; }
  .mentoria__fotos figure:nth-child(2){ margin-top:34px; }
  .mentoria__fotos figure:nth-child(3){ margin-top:-14px; }
  .mentoria__fotos figure:nth-child(4){ margin-top:20px; }
  .mentoria .btn--sec{ width:auto; }

  .faq__item{ display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(18px,4vw,48px); }
  .faq__item dt{ margin:0; }

  .fim{ grid-template-columns:1.05fr .95fr; align-items:stretch; }
  .fim__in{ display:flex; flex-direction:column; justify-content:center; }
  .fim__art{ position:relative; }
  .fim__art img{ position:absolute; inset:0; width:100%; height:100%; aspect-ratio:auto; }

  .float{ left:auto; right:26px; bottom:26px; padding:0 24px; }
}

/* ═══════════════════════════════════════════════════════
   ≥ 1040px
   ═══════════════════════════════════════════════════════ */
@media (min-width:1040px){
  .hero{
    grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);
    grid-template-rows:1fr auto 1fr auto;
    column-gap:clamp(36px,5vw,80px);
    align-items:center;
    padding:calc(28px + env(safe-area-inset-top)) var(--pad) 0;
    max-width:calc(var(--maxw) + var(--pad)*2); margin:0 auto;
  }
  .hero__head{ grid-column:1; grid-row:2; padding:0; }
  .hero__lead{ grid-column:1; grid-row:3; align-self:start; padding:0; }
  .hero__media{ grid-column:2; grid-row:1 / 4; padding:0 0 70px; }
  .hero__shot img{ height:auto; aspect-ratio:4/5; max-height:none; }
  .hero__clip{ right:auto; left:-8%; bottom:8px; width:clamp(160px, 15vw, 210px); transform:rotate(-4deg); }
  .hero__data{
    grid-column:1 / -1; grid-row:4;
    margin:clamp(10px,3vw,40px) calc(var(--pad) * -1) 0;
    padding:30px var(--pad) 32px;
  }

  .sobre{
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
    column-gap:clamp(40px,5.5vw,90px);
    align-items:center;
    max-width:calc(var(--maxw) + var(--pad)*2); margin:0 auto;
  }
  .sobre__portrait{ margin:0; grid-column:1; grid-row:1; border-radius:var(--r); }
  .sobre__portrait img{ aspect-ratio:3/4; }
  .sobre__text{ grid-column:2; grid-row:1; }
  .sobre__strip{ grid-column:1 / -1; grid-row:2; margin:0; padding:0; grid-auto-flow:column; grid-auto-columns:1fr; overflow:visible; }
  .sobre__nav{ display:none; }

  .rotina{
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    max-width:calc(var(--maxw) + var(--pad)*2); margin:0 auto;
  }
  .rotina__vid video{ aspect-ratio:9/15; }
  .rotina__tiles{ grid-template-columns:repeat(4,1fr); }
  .rotina__tiles figure:nth-child(2),
  .rotina__tiles figure:nth-child(4){ margin-top:44px; }

  .galeria__head, .reels__head, .vozes__head{ max-width:calc(var(--maxw) + var(--pad)*2); margin-left:auto; margin-right:auto; }
  .vozes__ponte{ margin-left:max(var(--pad), calc((100vw - var(--maxw)) / 2)); }
  .vozes .cnav{ max-width:calc(var(--maxw) + var(--pad)*2); margin:0 auto; }
  .galeria__grid{ grid-template-columns:repeat(6,1fr); grid-auto-rows:clamp(74px, 6.1vw, 104px); max-width:var(--maxw); margin:0 auto; }
  .tile{ grid-column:span var(--csd); grid-row:span var(--rsd); }
  .reels__rail, .vozes__rail{ max-width:calc(var(--maxw) + var(--pad)*2); margin:0 auto; }
  .reels__rail{ grid-auto-columns:min(21vw, 268px); }
  .vozes__rail{ grid-auto-columns:min(27vw, 372px); }

  .planos, .mentoria, .faq{ max-width:calc(var(--maxw) + var(--pad)*2); margin:0 auto; }
  .extra__grid{ grid-template-columns:repeat(4,1fr); }
  .extra{ grid-template-columns:1fr; }
  .extra img{ aspect-ratio:4/3; }

  .fim__in{ padding-left:max(var(--pad), calc((100vw - var(--maxw)) / 2 + 20px)); }
}

/* ── hover só onde há mouse ─────────────────────────── */
@media (hover:hover) and (pointer:fine){
  .tile img{ transition:transform .9s var(--e-out); }
  .tile:hover img{ transform:scale(1.045); }
  .reel{ transition:transform .5s var(--e-out); }
  .reel:hover{ transform:translateY(-6px); }
  .voz{ transition:box-shadow .4s; }
  .voz:hover{ box-shadow:0 18px 34px -20px rgba(37,35,28,.6); }
  .cnav__btn:hover:not([disabled]){ background:var(--carvao); color:var(--linho); }
  .btn:hover{ transform:translateY(-2px); }
  .mentoria__fotos figure{ transition:transform .6s var(--e-out); }
  .mentoria__fotos figure:hover{ transform:rotate(0deg) scale(1.04); z-index:2; }
}

/* ── reduced motion ─────────────────────────────────── */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{ animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  .bar, .float{ transition:none; }
}
