/* ============================================================
   FONTES BRANDING
   Light = textos normais
   Medium = textos que já possuem peso 500 ou superior
   ============================================================ */

@font-face{
  font-family:'Branding';
  src:url('Branding-Light-_TheFontsMaster.com_.woff.css') format('woff');
  font-style:normal;
  font-weight:200;
  font-display:swap;
}

@font-face{
  font-family:'Branding';
  src:url('Branding-Light-_TheFontsMaster.com_.woff.css') format('woff');
  font-style:normal;
  font-weight:300;
  font-display:swap;
}

@font-face{
  font-family:'Branding';
  src:url('Branding-Light-_TheFontsMaster.com_.woff.css') format('woff');
  font-style:normal;
  font-weight:400;
  font-display:swap;
}

@font-face{
  font-family:'Branding';
  src:url('Branding-Medium-_TheFontsMaster.com_.woff.css') format('woff');
  font-style:normal;
  font-weight:500;
  font-display:swap;
}

@font-face{
  font-family:'Branding';
  src:url('Branding-Medium-_TheFontsMaster.com_.woff.css') format('woff');
  font-style:normal;
  font-weight:600;
  font-display:swap;
}

@font-face{
  font-family:'Branding';
  src:url('Branding-Medium-_TheFontsMaster.com_.woff.css') format('woff');
  font-style:normal;
  font-weight:700;
  font-display:swap;
}


/* ============================================================
   PHOTOAGE WATER GOLD — CSS isolado para VTEX CMS Legado
   ============================================================ */

.x-content.x-fw{
  --creme:#FBF6F2;
  --nude:#F0DACC;
  --rose:#E2B7A1;
  --areia:#B9764F;
  --cacau:#3B211A;
  --cacau-70:rgba(59,33,26,.68);
  --laranja:#ED7A18;
  --linha:rgba(59,33,26,.14);

  --cor:#B9764F;

  /*
     TODA A LP AGORA USA BRANDING.

     O navegador escolhe automaticamente:
     200 / 300 / 400 = Branding Light
     500 / 600 / 700 = Branding Medium
  */
  --display:'Branding',Arial,sans-serif;
  --texto:'Branding',Arial,sans-serif;

  --pad:clamp(20px,5vw,80px);
  --maxw:1280px;
}

.x-content.x-fw *{
  box-sizing:border-box;
}

/* ============================================================
   APLICAÇÃO GLOBAL DA FONTE
   ============================================================ */

.x-content.x-fw,
.x-content.x-fw p,
.x-content.x-fw span,
.x-content.x-fw a,
.x-content.x-fw li,
.x-content.x-fw div,
.x-content.x-fw button,
.x-content.x-fw input,
.x-content.x-fw textarea,
.x-content.x-fw select,
.x-content.x-fw label{
  font-family:var(--texto);
}

/*
   Títulos também usam Branding.
   Mantemos o peso original de cada elemento.
*/
.x-content.x-fw h1,
.x-content.x-fw h2,
.x-content.x-fw h3,
.x-content.x-fw h4,
.x-content.x-fw h5,
.x-content.x-fw h6{
  font-family:var(--display);
}

/*
   Tudo que já estiver em destaque continua usando
   a versão Medium da Branding.
*/
.x-content.x-fw b,
.x-content.x-fw strong{
  font-family:var(--display);
  font-weight:500;
}

html{
  scroll-behavior:smooth;
}

.x-content.x-fw{
  margin:0;
  background:var(--creme);
  color:var(--cacau);
  font-family:var(--texto);
  font-weight:300;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:clip;
  overflow-y:visible;
}

.x-content.x-fw img{
  max-width:100%;
  display:block;
}

.x-content.x-fw a{
  color:inherit;
}

.x-content.x-fw h1,
.x-content.x-fw h2,
.x-content.x-fw h3,
.x-content.x-fw h4{
  font-family:var(--display);
  font-weight:300;
  margin:0;
  line-height:1.05;
  letter-spacing:-.02em;
}

.x-content.x-fw p{
  margin:0;
}

.x-content.x-fw button{
  font:inherit;
  color:inherit;
  background:none;
  border:0;
  cursor:pointer;
}

.x-content.x-fw :focus-visible{
  outline:2px solid var(--laranja);
  outline-offset:3px;
  border-radius:2px;
}

.x-content.x-fw .wrap{
  max-width:var(--maxw);
  margin-inline:auto;
  padding-inline:var(--pad);
}

.x-content.x-fw .eyebrow{
  font-family:var(--display);
  font-size:12px;
  letter-spacing:.24em;
  text-transform:uppercase;
  font-weight:500;
  color:var(--areia);
}

.x-content.x-fw .lead{
  font-size:clamp(16px,1.5vw,18.5px);
  max-width:52ch;
  color:var(--cacau-70);
}


/* ---------- botões ---------- */

.x-content.x-fw .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-family:var(--display);
  font-weight:500;
  font-size:14.5px;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none;
  padding:17px 34px;
  border-radius:100px;
  position:relative;
  overflow:hidden;
  background:var(--cacau);
  color:#fff;
  transition:
    transform .35s cubic-bezier(.2,.8,.2,1),
    box-shadow .35s;
  box-shadow:0 10px 24px -14px rgba(59,33,26,.9);
}

.x-content.x-fw .btn span{
  position:relative;
  z-index:1;
}

.x-content.x-fw .btn::after{
  content:"";
  position:absolute;
  inset:0;
  background:var(--laranja);
  transform:translateY(101%);
  transition:transform .45s cubic-bezier(.2,.8,.2,1);
}

.x-content.x-fw .btn:hover{
  transform:translateY(-2px);
}

.x-content.x-fw .btn:hover::after{
  transform:translateY(0);
}

.x-content.x-fw .btn--claro{
  background:#fff;
  color:var(--cacau);
}

.x-content.x-fw .btn--claro::after{
  background:var(--nude);
}

.x-content.x-fw .btn--linha{
  background:transparent;
  color:inherit;
  box-shadow:inset 0 0 0 1px currentColor;
}

.x-content.x-fw .btn--linha::after{
  background:currentColor;
}

.x-content.x-fw .btn--linha:hover{
  color:var(--creme);
}

.x-content.x-fw .btn--linha:hover span{
  mix-blend-mode:difference;
}


/* ---------- barra de progresso ---------- */

.x-content.x-fw .progresso{
  position:fixed;
  top:0;
  left:0;
  height:2px;
  background:var(--laranja);
  width:0;
  z-index:60;
  transition:width .1s linear;
}


/* ---------- hero ---------- */

.x-content.x-fw .hero{
  position:relative;
  min-height:100svh;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  background:#c58b62;
}

.x-content.x-fw .hero__bg{
  position:absolute;
  inset:-8% 0 -8% 0;
  will-change:transform;
}

.x-content.x-fw .hero__bg img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:20% 45%;
}

.x-content.x-fw .hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      96deg,
      rgba(58,28,16,.9) 0%,
      rgba(66,33,19,.72) 34%,
      rgba(120,70,40,.06) 62%
    ),
    linear-gradient(
      0deg,
      rgba(52,25,14,.55),
      rgba(52,25,14,0) 40%
    );
}

.x-content.x-fw .hero__in{
  position:relative;
  z-index:2;
  width:100%;
  padding-bottom:clamp(250px,10vh,90px);
  padding-top:150px;
  color:#fff;
}

.x-content.x-fw .hero .eyebrow{
  color:#F3D3BF;
}

.x-content.x-fw .hero__col{
  max-width: min(640px,50vw);
}

.x-content.x-fw .hero h1{
  font-size:clamp(34px,3.7vw,52px);
  font-weight:200;
  text-shadow:0 2px 30px rgba(45,20,10,.35);
  letter-spacing:-.03em;
  margin:18px 0 22px;
  line-height:1.15;
}

.x-content.x-fw .hero h1 b{
  font-weight:500;
}

.x-content.x-fw .hero__sub{
  max-width:40ch;
  color:rgba(255,255,255,.86);
  font-size:clamp(15px,1.5vw,18px);
}

.x-content.x-fw .hero__acoes{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:34px;
}

.x-content.x-fw .hero__scroll{
  position:absolute;
  right:var(--pad);
  bottom:clamp(48px,9vh,110px);
  z-index:3;
  color:#fff;
  display:flex;
  align-items:center;
  gap:12px;
  font-family:var(--display);
  font-size:11px;
  letter-spacing:.2em;
  text-transform:uppercase;
}

.x-content.x-fw .hero__scroll i{
  display:block;
  width:52px;
  height:1px;
  background:currentColor;
  position:relative;
  overflow:hidden;
}

.x-content.x-fw .hero__scroll i::after{
  content:"";
  position:absolute;
  inset:0;
  background:var(--laranja);
  animation:corre 2.4s infinite;
}

@keyframes corre{
  0%{transform:translateX(-100%)}
  60%,100%{transform:translateX(100%)}
}

@media(max-width:900px){
  .x-content.x-fw .hero__scroll{display:none}
  .x-content.x-fw .hero__col{max-width:none}
}


/* entrada orquestrada do hero */

.x-content.x-fw .reveal-linha{
  display:block;
  overflow:hidden;
}

.x-content.x-fw .reveal-linha>span{
  display:block;
  transform:translateY(105%);
  transition:transform 1.05s cubic-bezier(.16,1,.3,1);
}

.x-content.x-fw .hero.pronto .reveal-linha>span{
  transform:none;
}

.x-content.x-fw .hero.pronto .reveal-linha:nth-of-type(2)>span{
  transition-delay:.12s;
}

.x-content.x-fw .fade-up{
  opacity:0;
  transform:translateY(22px);
  transition:
    opacity .9s ease,
    transform .9s cubic-bezier(.16,1,.3,1);
}

.x-content.x-fw .hero.pronto .fade-up{
  opacity:1;
  transform:none;
}

.x-content.x-fw .hero.pronto .d1{transition-delay:.35s}
.x-content.x-fw .hero.pronto .d2{transition-delay:.5s}
.x-content.x-fw .hero.pronto .d3{transition-delay:.65s}


/* ---------- faixa de números ---------- */

.x-content.x-fw .numeros{
  border-bottom:1px solid var(--linha);
  background:var(--creme);
}

.x-content.x-fw .numeros ul{
  list-style:none;
  margin:0;
  padding:clamp(34px,5vw,60px) 0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:28px;
}

.x-content.x-fw .numeros li{
  border-left:1px solid var(--linha);
  padding-left:22px;
}

.x-content.x-fw .numeros li:first-child{
  border-left:0;
  padding-left:0;
}

.x-content.x-fw .numeros .n{
  font-family:var(--display);
  font-size:clamp(36px,5.2vw,64px);
  font-weight:300;
  line-height:1;
  letter-spacing:-.04em;
}

.x-content.x-fw .numeros .n small{
  font-size:.42em;
  letter-spacing:0;
  margin-left:2px;
  vertical-align:super;
  opacity:.7;
}

.x-content.x-fw .numeros .t{
  font-size:13.5px;
  color:var(--cacau-70);
  margin-top:10px;
  max-width:22ch;
}

@media(max-width:700px){
  .x-content.x-fw .numeros ul{
    grid-template-columns:1fr 1fr;
    gap:22px 18px;
  }

  .x-content.x-fw .numeros li:nth-child(3){
    border-left:0;
    padding-left:0;
  }
}


/* ---------- SEÇÃO ASSINATURA ---------- */

.x-content.x-fw .switch::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(
      115% 85% at 50% 42%,
      transparent 42%,
      rgba(58,25,13,.42) 100%
    );
}

.x-content.x-fw .switch{
  position:relative;
  overflow:hidden;
  color:#fff;
  background:var(--cor);
  transition:background 1s cubic-bezier(.4,0,.2,1);
  user-select:none;
}

.x-content.x-fw .switch__luz{
  position:absolute;
  left:50%;
  top:44%;
  width:min(1150px,130vw);
  aspect-ratio:1;
  z-index:0;
  transform:translate(-50%,-50%);
  pointer-events:none;
  mix-blend-mode:screen;
  background:
    radial-gradient(
      circle,
      rgba(255,247,238,.32) 0%,
      rgba(255,235,214,.14) 26%,
      rgba(255,218,186,.05) 44%,
      transparent 62%
    );
  animation:respira 9s ease-in-out infinite;
}

@keyframes respira{
  0%,100%{
    transform:translate(-50%,-50%) scale(1);
    opacity:.8;
  }

  50%{
    transform:translate(-50%,-50%) scale(1.07);
    opacity:1;
  }
}

.x-content.x-fw .switch__raio{
  position:absolute;
  top:-15%;
  bottom:-15%;
  left:0;
  width:34%;
  z-index:1;
  opacity:0;
  background:
    linear-gradient(
      100deg,
      transparent 0%,
      rgba(255,248,238,.5) 45%,
      rgba(255,255,255,.2) 60%,
      transparent 100%
    );
  filter:blur(22px);
  transform:translateX(-160%) skewX(-14deg);
  pointer-events:none;
  mix-blend-mode:screen;
}

.x-content.x-fw .switch__palco{
  position:relative;
  z-index:2;
  height:min(108svh,900px);
  min-height:640px;
  display:grid;
  place-items:center;
  cursor:grab;
}

.x-content.x-fw .switch__palco.arrastando{
  cursor:grabbing;
}

.x-content.x-fw .switch__palavra{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  pointer-events:none;
  overflow:hidden;
}

.x-content.x-fw .switch__palavra span{
  font-family:var(--display);
  font-weight:500;
  letter-spacing:-.05em;
  font-size:clamp(80px,19vw,280px);
  color:rgba(255,255,255,.34);
  white-space:nowrap;
  transition:
    transform 1s cubic-bezier(.16,1,.3,1),
    opacity .7s;
}

.x-content.x-fw .switch__slide{
  position:absolute;
  inset:0;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:26px;
  padding:110px var(--pad) 130px;
  text-align:center;
  opacity:0;
  pointer-events:none;
  transition:opacity .3s ease;
}

.x-content.x-fw .switch__slide.on{
  opacity:1;
  pointer-events:auto;
  transition:opacity .5s ease;
}

.x-content.x-fw .switch__media{
  position:relative;
  width:min(360px,66vw);
  aspect-ratio:auto;
  border-radius:0;
  overflow:visible;
  box-shadow:none;
  background:transparent;
  display:grid;
  place-items:center;
  isolation:isolate;
  transform:translateY(40px) scale(.94);
  opacity:0;
  transition:
    transform 1.05s cubic-bezier(.16,1,.3,1),
    opacity .8s;
}

.x-content.x-fw .switch__media::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:175%;
  height:135%;
  z-index:0;
  transform:translate(-50%,-50%);
  pointer-events:none;
  border-radius:50%;
  background:
    radial-gradient(
      ellipse at center,
      rgba(255,248,239,.72) 0%,
      rgba(255,230,207,.42) 28%,
      rgba(255,207,171,.18) 48%,
      rgba(255,196,154,.06) 60%,
      transparent 74%
    );
  filter:blur(18px);
  animation:glowProduto 7s ease-in-out infinite;
}

@keyframes glowProduto{
  0%,100%{
    transform:translate(-50%,-50%) scale(.96);
    opacity:.78;
  }

  50%{
    transform:translate(-50%,-50%) scale(1.05);
    opacity:1;
  }
}

.x-content.x-fw .switch__media img{
  position:relative;
  z-index:1;
  width:auto;
  max-width:100%;
  height:auto;
  max-height:470px;
  object-fit:contain;
  filter:drop-shadow(0 34px 38px rgba(40,18,10,.34));
}

.x-content.x-fw .switch__media::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  opacity:0;
  background:
    linear-gradient(
      104deg,
      transparent 34%,
      rgba(255,255,255,.5) 50%,
      transparent 66%
    );
}

.x-content.x-fw .switch__media--solto{
  width:min(360px,66vw);
  aspect-ratio:auto;
  border-radius:0;
  overflow:visible;
  box-shadow:none;
  background:transparent;
}

.x-content.x-fw .switch__media--solto img{
  width:auto;
  max-width:100%;
  height:auto;
  max-height:470px;
  object-fit:contain;
  filter:drop-shadow(0 34px 38px rgba(40,18,10,.34));
}

.x-content.x-fw .switch__slide.on .switch__media{
  transform:none;
  opacity:1;
}

.x-content.x-fw .switch__texto{
  max-width:44ch;
  opacity:0;
  transform:translateY(18px);
  transition:all .9s cubic-bezier(.16,1,.3,1) .15s;
}

.x-content.x-fw .switch__slide.on .switch__texto{
  opacity:1;
  transform:none;
}

.x-content.x-fw .switch--aguardando .switch__slide:first-child .switch__media{
  opacity:0;
  transform:translateX(90px) scale(.94);
}

.x-content.x-fw .switch--aguardando .switch__slide:first-child .switch__texto{
  opacity:0;
  transform:translateX(40px);
}

.x-content.x-fw .switch--aguardando #switchWord{
  opacity:0;
  transform:translateX(22%);
}

.x-content.x-fw .switch__texto h3{
  font-size:clamp(23px,3vw,34px);
  font-weight:400;
  margin-bottom:10px;
}

.x-content.x-fw .switch__texto p{
  color:rgba(255,255,255,.82);
  font-size:15.5px;
}

.x-content.x-fw .switch__nav{
  position:absolute;
  left:0;
  right:0;
  bottom:34px;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
}

.x-content.x-fw .switch__dots{
  display:flex;
  gap:10px;
}

.x-content.x-fw .switch__dots button{
  width:34px;
  height:3px;
  border-radius:3px;
  background:rgba(255,255,255,.34);
  transition:
    background .4s,
    transform .4s;
}

.x-content.x-fw .switch__dots button[aria-current="true"]{
  background:#fff;
  transform:scaleY(1.8);
}

.x-content.x-fw .seta{
  width:48px;
  height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);
  transition:
    background .35s,
    transform .35s;
}

.x-content.x-fw .seta:hover{
  background:rgba(255,255,255,.16);
  transform:scale(1.06);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.85),
    0 0 34px rgba(255,226,196,.55);
}

.x-content.x-fw .seta svg{
  width:16px;
  height:16px;
  stroke:#fff;
  fill:none;
  stroke-width:1.6;
}


/* ============================================================
   TEXTURA — SCROLL FIXO
   ============================================================ */

.x-content.x-fw .textura{
  position:relative;
  --textura-cor:#B9764F;
  color:var(--creme);
  background:var(--textura-cor);
  overflow:visible;
}

.x-content.x-fw .textura__pista{
  position:relative;
  height:260vh;
  overflow:visible;
}

.x-content.x-fw .textura__fixo{
  position:-webkit-sticky;
  position:sticky;
  top:0;
  height:100vh;
  height:100svh;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:var(--textura-cor);
}

.x-content.x-fw .textura__fixo::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(
      ellipse 62% 58% at 50% 39%,
      rgba(255,238,222,.42) 0%,
      rgba(255,220,194,.20) 32%,
      rgba(255,205,171,.07) 50%,
      transparent 70%
    ),
    linear-gradient(
      180deg,
      rgba(255,255,255,.04) 0%,
      rgba(100,48,27,.03) 52%,
      rgba(74,31,18,.24) 100%
    );
}

.x-content.x-fw .textura__img{
  position:absolute;
  inset:-8% 0;
  z-index:0;
  will-change:transform;
  opacity:0;
  transition:opacity .8s ease;
}

.x-content.x-fw .textura.com-foto .textura__img{
  opacity:1;
}

.x-content.x-fw .textura__img img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.x-content.x-fw .textura__fixo::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(
      80% 68% at 50% 42%,
      rgba(255,233,214,.10) 0%,
      rgba(80,35,20,.06) 48%,
      rgba(45,18,10,.42) 100%
    ),
    linear-gradient(
      0deg,
      rgba(50,21,12,.30) 0%,
      rgba(50,21,12,.05) 42%,
      rgba(50,21,12,.08) 100%
    );
}

.x-content.x-fw .textura.com-foto .textura__fixo::after{
  background:
    radial-gradient(
      76% 64% at 50% 42%,
      rgba(255,233,214,.04) 0%,
      rgba(40,17,10,.18) 48%,
      rgba(27,11,7,.66) 100%
    ),
    linear-gradient(
      0deg,
      rgba(38,15,9,.52) 0%,
      rgba(38,15,9,.10) 46%,
      rgba(38,15,9,.18) 100%
    );
}

.x-content.x-fw .textura__cont{
  position:relative;
  z-index:2;
  text-align:center;
  padding-inline:var(--pad);
  max-width:1040px;
}

.x-content.x-fw .textura h2{
  font-size:clamp(30px,5.6vw,74px);
  font-weight:200;
  letter-spacing:-.03em;
  line-height:1.16;
  padding-block:.08em;
}

.x-content.x-fw .textura h2 em{
  font-style:normal;
  font-weight:500;
}

.x-content.x-fw .textura .nao-quebra{
  white-space:nowrap;
}

.x-content.x-fw .textura__itens{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px 10px;
  margin-top:36px;
  list-style:none;
  padding:0;
}

.x-content.x-fw .textura__itens li{
  font-family:var(--display);
  font-size:13px;
  letter-spacing:.12em;
  text-transform:uppercase;
  padding:11px 20px;
  border-radius:100px;
  box-shadow:inset 0 0 0 1px rgba(251,246,242,.32);
  opacity:0;
  transform:translateY(14px);
  transition:all .7s cubic-bezier(.16,1,.3,1);
}

.x-content.x-fw .textura__itens li.on{
  opacity:1;
  transform:none;
}


/* ---------- ativos ---------- */

.x-content.x-fw .ativos{
  padding:clamp(70px,11vw,140px) 0;
  background:var(--creme);
}

.x-content.x-fw .ativos__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(30px,6vw,90px);
  align-items:center;
}

.x-content.x-fw .ativos__foto{
  border-radius:24px;
  overflow:hidden;
  background:var(--nude);
  aspect-ratio:4/5;
}

.x-content.x-fw .ativos__foto img{
  height:100%;
  object-fit:cover;
  width:100%;
  transform:scale(1.06);
  transition:transform 1.4s cubic-bezier(.16,1,.3,1);
}

.x-content.x-fw .ativos__foto.vis img{
  transform:none;
}

.x-content.x-fw .ativos h2{
  font-size:clamp(29px,4.4vw,56px);
  margin:16px 0 24px;
  max-width:16ch;
}

.x-content.x-fw .ativo{
  padding:26px 0;
  border-top:1px solid var(--linha);
}

.x-content.x-fw .ativo h3{
  font-family:var(--display);
  font-size:20px;
  font-weight:500;
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-bottom:8px;
}

.x-content.x-fw .ativo p{
  color:var(--cacau-70);
  font-size:15.5px;
  max-width:40ch;
}

@media(max-width:850px){
  .x-content.x-fw .ativos__grid{
    grid-template-columns:1fr;
  }
}


/* ---------- antes e depois ---------- */

.x-content.x-fw .ad{
  padding:clamp(70px,9vw,120px) 0;
  background:var(--nude);
}

.x-content.x-fw .ad__topo{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) auto;
  align-items:end;
  gap:clamp(28px,5vw,80px);
  margin-bottom:clamp(28px,4vw,44px);
}

.x-content.x-fw .ad__titulo{
  min-width:0;
  max-width:860px;
}

.x-content.x-fw .ad h2{
  font-size:clamp(29px,4.1vw,56px);
  max-width:20ch;
  margin-top:14px;
  text-wrap:balance;
}

.x-content.x-fw .ad__abas{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}

.x-content.x-fw .ad__abas button{
  font-family:var(--display);
  font-size:13px;
  letter-spacing:.1em;
  text-transform:uppercase;
  padding:12px 20px;
  border-radius:100px;
  box-shadow:inset 0 0 0 1px var(--linha);
  transition:.35s;
  white-space:nowrap;
}

.x-content.x-fw .ad__abas button[aria-selected="true"]{
  background:var(--cacau);
  color:var(--creme);
  box-shadow:none;
}

.x-content.x-fw .ad__palco{
  --ad-pos:50%;
  --ad-largura:1000px;
  position:relative;
  width:min(100%,var(--ad-largura));
  aspect-ratio:1/1;
  height:auto;
  max-height:none;
  margin-inline:auto;
  border-radius:26px;
  overflow:hidden;
  background:#fff;
  cursor:ew-resize;
  touch-action:pan-y;
  user-select:none;
}

.x-content.x-fw .ad__par{
  position:absolute;
  inset:0;
  display:none;
}

.x-content.x-fw .ad__par.on{
  display:block;
}

.x-content.x-fw .ad__foto{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  transform:
    translate(var(--foto-x,0px),var(--foto-y,0px))
    scale(var(--foto-zoom,1));
  transform-origin:center;
  pointer-events:none;
}

.x-content.x-fw .ad__depois{
  clip-path:inset(0 calc(100% - var(--ad-pos)) 0 0);
  will-change:clip-path;
}

.x-content.x-fw .ad__depois-recorte{
  position:absolute;
  inset:0;
  overflow:hidden;
  clip-path:inset(0 calc(100% - var(--ad-pos)) 0 0);
  will-change:clip-path;
  background-image:var(--foto-fundo);
  background-size:100% 100%;
  background-position:center;
  background-repeat:no-repeat;
}

.x-content.x-fw .ad__depois-recorte .ad__foto{
  clip-path:none;
}

.x-content.x-fw .ad__linha{
  position:absolute;
  z-index:5;
  top:0;
  bottom:0;
  left:var(--ad-pos);
  width:2px;
  background:rgba(255,255,255,.95);
  transform:translateX(-50%);
  box-shadow:
    0 0 0 1px rgba(59,33,26,.08),
    0 0 20px rgba(59,33,26,.18);
  pointer-events:none;
}

.x-content.x-fw .ad__handle{
  position:absolute;
  z-index:6;
  left:var(--ad-pos);
  top:50%;
  width:54px;
  height:54px;
  border-radius:50%;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  background:rgba(251,246,242,.94);
  color:var(--cacau);
  box-shadow:
    0 10px 30px rgba(59,33,26,.24),
    inset 0 0 0 1px rgba(59,33,26,.12);
  cursor:ew-resize;
}

.x-content.x-fw .ad__handle::before{
  content:"‹  ›";
  font-family:var(--display);
  font-size:25px;
  letter-spacing:8px;
  transform:translateX(4px);
  line-height:1;
}

.x-content.x-fw .ad__tag{
  position:absolute;
  z-index:7;
  bottom:18px;
  padding:9px 16px;
  border-radius:100px;
  backdrop-filter:blur(8px);
  background:rgba(59,33,26,.48);
  color:#fff;
  font-family:var(--display);
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  pointer-events:none;
}

.x-content.x-fw .ad__tag--a{left:18px}
.x-content.x-fw .ad__tag--b{right:18px}

.x-content.x-fw .ad__nota{
  font-size:12.5px;
  color:var(--cacau-70);
  margin-top:18px;
  max-width:60ch;
}


/* ---------- resultado ---------- */

.x-content.x-fw .resultado{
  padding:clamp(70px,11vw,140px) 0;
  background:var(--creme);
  text-align:center;
}

.x-content.x-fw .resultado .big small{
  font-size:.3em;
  letter-spacing:0;
  vertical-align:super;
  opacity:.6;
}

.x-content.x-fw .resultado .big{
  font-family:var(--display);
  font-size:clamp(70px,17vw,220px);
  font-weight:200;
  line-height:.85;
  letter-spacing:-.05em;
}

.x-content.x-fw .resultado h2{
  font-size:clamp(24px,3.4vw,42px);
  margin:26px auto 0;
  max-width:20ch;
  font-weight:300;
}

.x-content.x-fw .resultado ul{
  list-style:none;
  padding:0;
  margin:46px auto 0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  max-width:1000px;
  text-align:left;
}

.x-content.x-fw .resultado li{
  padding:22px;
  border-radius:18px;
  background:#fff;
  font-size:15px;
  box-shadow:0 20px 40px -34px rgba(59,33,26,.6);
}

.x-content.x-fw .resultado li b{
  display:block;
  font-family:var(--display);
  font-weight:500;
  font-size:17px;
  margin-bottom:6px;
}

@media(max-width:820px){
  .x-content.x-fw .resultado ul{
    grid-template-columns:1fr 1fr;
  }
}


/* ---------- carrossel de vídeos ---------- */

.x-content.x-fw .videos{
  padding:clamp(70px,11vw,140px) 0 clamp(60px,9vw,110px);
  background:var(--cacau);
  color:var(--creme);
  overflow:hidden;
}

.x-content.x-fw .videos__topo{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:34px;
}

.x-content.x-fw .videos h2{
  font-size:clamp(29px,4.4vw,56px);
  max-width:26ch;
  margin-top:14px;
  text-wrap:balance;
}

.x-content.x-fw .videos__topo>div:first-child{
  max-width:820px;
}

.x-content.x-fw .videos .eyebrow{
  color:var(--rose);
}

.x-content.x-fw .videos__setas{
  display:flex;
  gap:10px;
}

.x-content.x-fw .trilho{
  display:flex;
  gap:18px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  padding-bottom:18px;
  scrollbar-width:none;
  cursor:grab;
}

.x-content.x-fw .trilho::-webkit-scrollbar{
  display:none;
}

.x-content.x-fw .trilho.arrastando{
  cursor:grabbing;
  scroll-snap-type:none;
}

.x-content.x-fw .vcard{
  position:relative;
  flex:0 0 auto;
  width:min(300px,72vw);
  aspect-ratio:9/16;
  border-radius:20px;
  overflow:hidden;
  scroll-snap-align:start;
  background:#2b1712;
}

.x-content.x-fw .vcard img,
.x-content.x-fw .vcard video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}

.x-content.x-fw .vcard video{
  z-index:1;
  background:#2b1712;
}

.x-content.x-fw .vcard__capa{
  z-index:2;
  transition:opacity .7s ease;
}

.x-content.x-fw .vcard.pronto .vcard__capa{
  opacity:0;
}

.x-content.x-fw .vcard__play,
.x-content.x-fw .vcard__leg{
  z-index:3;
}

.x-content.x-fw .vcard__aviso{
  position:absolute;
  top:14px;
  left:14px;
  z-index:4;
  font-family:var(--display);
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  padding:6px 11px;
  border-radius:100px;
  background:rgba(30,14,9,.62);
  backdrop-filter:blur(5px);
  color:rgba(251,246,242,.9);
}

.x-content.x-fw .vcard.pronto .vcard__aviso,
.x-content.x-fw .vcard.tocando .vcard__aviso{
  opacity:0;
  transition:opacity .5s;
}

.x-content.x-fw .vcard__play{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  background:linear-gradient(0deg,rgba(30,14,9,.72),rgba(30,14,9,0) 55%);
  transition:opacity .4s;
}

.x-content.x-fw .vcard__play i{
  width:62px;
  height:62px;
  border-radius:50%;
  background:rgba(255,255,255,.9);
  display:grid;
  place-items:center;
  transition:transform .4s cubic-bezier(.2,.8,.2,1);
}

.x-content.x-fw .vcard:hover .vcard__play i{
  transform:scale(1.1);
}

.x-content.x-fw .vcard__play svg{
  width:16px;
  height:16px;
  fill:var(--cacau);
  margin-left:3px;
}

.x-content.x-fw .vcard__leg{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  text-align:left;
  pointer-events:none;
}

.x-content.x-fw .vcard__leg small{
  font-family:var(--display);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--rose);
}

.x-content.x-fw .vcard__leg strong{
  display:block;
  font-family:var(--display);
  font-weight:400;
  font-size:18px;
  margin-top:3px;
}

.x-content.x-fw .vcard.tocando .vcard__play{
  opacity:0;
  pointer-events:none;
}


/* ---------- rotina ---------- */

.x-content.x-fw .rotina{
  padding:clamp(70px,11vw,140px) 0;
  background:var(--creme);
}

.x-content.x-fw .rotina h2{
  font-size:clamp(29px,4.4vw,56px);
  max-width:23ch;
  margin:14px 0 46px;
  text-wrap:balance;
}

.x-content.x-fw .passos{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:clamp(14px,2.5vw,28px);
}

.x-content.x-fw .passo{
  position:relative;
  padding:30px 24px 26px;
  border-radius:20px;
  background:#fff;
  text-align:center;
  box-shadow:0 24px 50px -40px rgba(59,33,26,.7);
  opacity:0;
  transform:translateY(26px);
  transition:
    opacity .8s ease,
    transform .8s cubic-bezier(.16,1,.3,1);
}

.x-content.x-fw .passo.vis{
  opacity:1;
  transform:none;
}

.x-content.x-fw .passo .num{
  font-family:var(--display);
  font-size:12px;
  letter-spacing:.16em;
  color:var(--areia);
  font-weight:500;
}

.x-content.x-fw .passo .fig{
  height:210px;
  display:grid;
  place-items:end center;
  margin:14px 0 18px;
}

.x-content.x-fw .passo .fig img{
  max-height:210px;
  width:auto;
  transition:transform .6s cubic-bezier(.2,.8,.2,1);
}

.x-content.x-fw .passo:hover .fig img{
  transform:translateY(-8px);
}

.x-content.x-fw .passo h3{
  font-family:var(--display);
  font-size:17px;
  font-weight:500;
  letter-spacing:.02em;
}

.x-content.x-fw .passo p{
  font-size:13.5px;
  color:var(--cacau-70);
  margin-top:8px;
}

.x-content.x-fw .passo .quando{
  margin-top:14px;
  font-family:var(--display);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--areia);
}

@media(max-width:820px){
  .x-content.x-fw .passos{
    grid-template-columns:1fr 1fr;
  }
}


/* ---------- CTA final ---------- */

.x-content.x-fw .final{
  position:relative;
  background:var(--rose);
  overflow:hidden;
  padding:clamp(70px,11vw,130px) 0;
}

.x-content.x-fw .final__grid{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  align-items:center;
  gap:clamp(30px,6vw,70px);
}

.x-content.x-fw .final h2{
  font-size:clamp(32px,5.6vw,76px);
  font-weight:200;
  letter-spacing:-.03em;
  max-width:13ch;
}

.x-content.x-fw .final p{
  margin:22px 0 34px;
  max-width:42ch;
  color:rgba(59,33,26,.78);
}

.x-content.x-fw .final__frasco{
  justify-self:center;
  width:min(500px,44vw);
  animation:none;
  transform:none;
}

.x-content.x-fw .final__frasco img{
  width:100%;
  height:auto;
  filter:drop-shadow(0 50px 46px rgba(90,45,25,.42));
}

@media(max-width:820px){
  .x-content.x-fw .final__grid{
    grid-template-columns:1fr;
    text-align:center;
  }

  .x-content.x-fw .final p{
    margin-inline:auto;
  }

  .x-content.x-fw .final .btn{
    margin-inline:auto;
  }

  .x-content.x-fw .final__frasco{
    width:min(520px,88vw);
  }
}


/* ---------- faixa animada ---------- */

.x-content.x-fw .marquee{
  background:var(--cacau);
  color:var(--creme);
  padding:16px 0;
  overflow:hidden;
  white-space:nowrap;
}

.x-content.x-fw .marquee__in{
  display:inline-flex;
  gap:40px;
  animation:desliza 26s linear infinite;
  font-family:var(--display);
  font-size:13px;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.x-content.x-fw .marquee__in span{
  opacity:.85;
}

@keyframes desliza{
  to{transform:translateX(-50%)}
}


/* ---------- rodapé ---------- */

.x-content.x-fw .pe{
  padding:44px 0;
  background:var(--creme);
  font-size:12.5px;
  color:var(--cacau-70);
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  justify-content:space-between;
  align-items:center;
}


/* ---------- revelações genéricas ---------- */

.x-content.x-fw [data-reveal]{
  opacity:0;
  transform:translateY(24px);
  transition:
    opacity .9s ease,
    transform .9s cubic-bezier(.16,1,.3,1);
}

.x-content.x-fw [data-reveal].vis{
  opacity:1;
  transform:none;
}


/* ---------- ajustes de celular ---------- */

@media(max-width:700px){

  .x-content.x-fw .hero{
    align-items:flex-end;
  }

  .x-content.x-fw .hero__bg img{
    object-position:50% 12%;
  }

  .x-content.x-fw .hero::after{
    background:
      linear-gradient(
        0deg,
        rgba(44,20,11,.96) 0%,
        rgba(44,20,11,.9) 34%,
        rgba(44,20,11,.5) 62%,
        rgba(44,20,11,.1) 100%
      );
  }

  .x-content.x-fw .hero__in{
    padding-top:46vh;
    padding-bottom:40px;
  }

  .x-content.x-fw .hero h1{
    margin:14px 0 18px;
    text-shadow:none;
  }

  .x-content.x-fw .hero__acoes{
    gap:10px;
  }

  .x-content.x-fw .hero__acoes .btn{
    width:100%;
  }

  .x-content.x-fw .switch__slide{
    padding:96px var(--pad) 120px;
  }

  .x-content.x-fw .switch__media{
    width:min(310px,72vw);
  }

  .x-content.x-fw .switch__media img,
  .x-content.x-fw .switch__media--solto img{
    max-height:390px;
  }

  .x-content.x-fw .switch__media::before{
    width:165%;
    height:125%;
    filter:blur(14px);
  }

  .x-content.x-fw .switch__palavra span{
    font-size:clamp(64px,22vw,140px);
  }

  .x-content.x-fw .switch__luz{
    width:120vw;
    top:34%;
  }

  .x-content.x-fw .textura__pista{
    height:220vh;
  }

  .x-content.x-fw .ad__topo{
    grid-template-columns:1fr;
    align-items:start;
    gap:22px;
  }

  .x-content.x-fw .ad h2{
    max-width:18ch;
  }

  .x-content.x-fw .ad__abas{
    width:100%;
    justify-content:flex-start;
  }

  .x-content.x-fw .ad__abas button{
    flex:1 1 0;
    min-width:0;
    padding-inline:10px;
    font-size:11px;
  }

  .x-content.x-fw .ad__palco{
    width:100%;
    height:auto;
    max-height:none;
    aspect-ratio:1/1;
    border-radius:20px;
  }

  .x-content.x-fw .ad__palco img{
    object-fit:contain;
  }

  .x-content.x-fw .videos__topo{
    flex-direction:column;
    align-items:flex-start;
  }

  .x-content.x-fw .ad__tag{
    font-size:10px;
    padding:7px 12px;
    bottom:12px;
  }

  .x-content.x-fw .ad__tag--a{left:12px}
  .x-content.x-fw .ad__tag--b{right:12px}

  .x-content.x-fw .rotina h2{
    max-width:18ch;
  }

  .x-content.x-fw .passo .fig{
    height:150px;
  }

  .x-content.x-fw .passo .fig img{
    max-height:150px;
  }
}


/* ---------- redução de movimento ---------- */

@media(prefers-reduced-motion:reduce){

  .x-content.x-fw *,
  .x-content.x-fw *::after,
  .x-content.x-fw *::before{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }

  .x-content.x-fw [data-reveal],
  .x-content.x-fw .fade-up,
  .x-content.x-fw .passo,
  .x-content.x-fw .switch__texto,
  .x-content.x-fw .switch__media{
    opacity:1 !important;
    transform:none !important;
  }

  .x-content.x-fw .switch--aguardando #switchWord{
    opacity:1 !important;
    transform:none !important;
  }

  .x-content.x-fw .reveal-linha>span{
    transform:none !important;
  }
}