html.lenis,
html.lenis body {
  height: auto;
}

.lenis:not(.lenis-autoToggle).lenis-stopped {
  overflow: clip;
}

.lenis [data-lenis-prevent],
.lenis [data-lenis-prevent-wheel],
.lenis [data-lenis-prevent-touch],
.lenis [data-lenis-prevent-vertical],
.lenis [data-lenis-prevent-horizontal] {
  overscroll-behavior: contain;
}

.lenis.lenis-smooth iframe {
  pointer-events: none;
}

.lenis.lenis-autoToggle {
  transition-property: overflow;
  transition-duration: 1ms;
  transition-behavior: allow-discrete;
}

:root{
  --papel:#fff; --superficie:#f1f3f3; --superficie-2:#e6eaea; --filete:#d3d8d9; --tinta:#0e1315; --cinza:#5b6366;
  --limao:#d8f960; --limao-claro:#ecfcb0; --lilas:#967af0; --azul:#8bcbe9;
  --f-texto:"Archivo","Helvetica Neue",Arial,sans-serif;
  --f-micro:"Archivo SemiCondensed","Archivo","Helvetica Neue",Arial,sans-serif;
  --f-nome:"Archivo Condensed","Archivo","Helvetica Neue",Arial,sans-serif;
  --gut:clamp(1rem,2.6vw,2.6rem); --topo:4rem; --gap:clamp(.625rem,1.1vw,1rem);
  --raio:clamp(1.125rem,1.7vw,1.625rem); --raio-p:clamp(.875rem,1.2vw,1.125rem);
  --larg:1680px; --sec:clamp(4.5rem,11vw,9.5rem);
  --ease:cubic-bezier(.22,.7,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scrollbar-gutter:stable}
body{margin:0;background:var(--papel);color:var(--tinta);font:400 1rem/1.5 var(--f-texto);overflow-x:hidden}
a{color:inherit}
img{display:block;max-width:100%}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--tinta);outline-offset:3px}
.pular{position:absolute;left:-9999px}
.pular:focus{left:var(--gut);top:.5rem;z-index:50;background:var(--papel);padding:.5rem .75rem}
h1,h2,h3,p{margin:0}
section,footer{scroll-margin-top:var(--topo)}

.botao{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:3rem;padding:.8rem 1.4rem;border:0;border-radius:999px;font:600 1rem/1 var(--f-texto);text-decoration:none;cursor:pointer;white-space:nowrap;transition:transform .35s var(--ease),background-color .25s}
.botao:active{transform:scale(.97)}
.botao-aceso{background:var(--limao);color:var(--tinta)}
.botao-aceso:hover{background:#cbf13a}
.botao-tinta{background:var(--tinta);color:var(--papel)}
.botao-tinta:hover{background:#273034}

.topo{position:sticky;top:0;z-index:20;height:var(--topo);display:flex;align-items:center;gap:2rem;padding-inline:var(--gut);background:var(--papel)}
.marcas{display:flex;align-items:center;gap:clamp(1rem,1.4vw,1.5rem)}
.topo .marca{display:block;width:clamp(7.5rem,10vw,9.5rem);line-height:0;color:var(--tinta)}
.marcas-divisor{width:1px;height:2rem;background:var(--tinta)}
.marca-bravura{display:block;width:clamp(6rem,7.2vw,7.5rem);line-height:0}
.marca-bravura svg{width:100%;height:auto;fill:var(--tinta)}
.topo .marca svg{width:100%;height:auto}
.topo nav{display:flex;gap:clamp(1rem,2.2vw,2.4rem);margin-left:auto}
.topo nav a{font:500 .9375rem/1 var(--f-texto);text-decoration:none;text-transform:uppercase;padding:.65rem 0}
.topo nav a:hover,.topo nav a:focus-visible{text-decoration:underline;text-decoration-thickness:.1rem;text-underline-offset:.4em}
.topo .botao{min-height:2.5rem;padding:.6rem 1.15rem;font-size:.9375rem}

.abre{max-width:var(--larg);margin-inline:auto;padding:clamp(2.5rem,7vw,6rem) var(--gut) clamp(2rem,4vw,3.5rem)}
.sobretitulo{font:500 clamp(.8125rem,.95vw,.9375rem)/1.2 var(--f-micro);text-transform:uppercase;letter-spacing:.06em;color:var(--cinza);margin-bottom:clamp(1rem,2vw,1.75rem)}
.sobretitulo span{margin-inline:.4em}
h1{font:800 clamp(3.1rem,9.4vw,11.5rem)/.9 var(--f-texto);letter-spacing:-.045em;text-wrap:balance;max-width:11.5em}
.abre-pe{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-top:clamp(1.75rem,3.5vw,3rem)}
.lede{font:400 clamp(1.125rem,1.55vw,1.5rem)/1.4 var(--f-texto);max-width:36ch;text-wrap:pretty}

.preco-chamada{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-areas:"de seta" "valor seta" "un seta";align-items:end;column-gap:1.25rem;padding:1.1rem 1.25rem 1.1rem 1.5rem;border:0;border-radius:var(--raio);background:var(--limao);text-align:left;cursor:pointer;transition:transform .45s var(--ease)}
.preco-chamada:hover{transform:translateY(-3px)}
.pc-de{grid-area:de;font:500 .875rem/1 var(--f-micro);text-transform:uppercase;letter-spacing:.05em}
.pc-valor{grid-area:valor;font:800 clamp(3.5rem,5.6vw,5.5rem)/.95 var(--f-nome);letter-spacing:-.02em}
.pc-moeda{font-weight:500;font-size:.42em;margin-right:.12em;vertical-align:.95em;letter-spacing:0}
.pc-un{grid-area:un;font:500 1rem/1.2 var(--f-texto)}
.pc-seta{grid-area:seta;align-self:start;display:grid;place-items:center;width:2.75rem;aspect-ratio:1;border-radius:50%;background:var(--tinta);color:var(--limao)}
.pc-seta svg,.sim-fecha svg{width:1.1rem;height:1.1rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

.galeria{max-width:var(--larg);margin-inline:auto;padding-inline:var(--gut)}
.mosaico{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:clamp(11rem,17vw,19rem);gap:var(--gap)}
.mosaico figure{position:relative;margin:0;overflow:hidden;border-radius:var(--raio);background:var(--superficie)}
.mosaico img,.mosaico video{width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 1.2s var(--ease)}
.mosaico figure:hover img{transform:scale(1.08)}
.mosaico figure:nth-child(1){grid-column:span 7;grid-row:span 2}
.mosaico figure:nth-child(2){grid-column:span 5;grid-row:span 3}
.mosaico figure:nth-child(3){grid-column:span 7;grid-row:span 2}
.mosaico figure:nth-child(4){grid-column:span 5;grid-row:span 1}
.mosaico figure:nth-child(5){grid-column:span 4;grid-row:span 3}
.mosaico figure:nth-child(6){grid-column:span 8;grid-row:span 3}
.mosaico{grid-auto-flow:row dense}
.mosaico figure:nth-child(n+7){grid-column:span 4;grid-row:span 2}
.mosaico figure.video{grid-column:span 4;grid-row:span 4}

.planta,.ficha,.valores,.perguntas{max-width:var(--larg);margin-inline:auto;padding:var(--sec) var(--gut) 0}
.sec-cab{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;margin-bottom:clamp(1.5rem,3vw,2.75rem)}
h2{font:800 clamp(2.25rem,5vw,5.25rem)/.95 var(--f-texto);letter-spacing:-.04em}
.sec-cab p{font:400 clamp(1rem,1.2vw,1.1875rem)/1.4 var(--f-texto);max-width:42ch;color:var(--cinza)}

.planta-corpo{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(1.5rem,3vw,3rem);align-items:start}
.planta-desenho{position:relative;border-radius:var(--raio);background:var(--superficie);padding:clamp(1rem,2.5vw,2.25rem)}
.planta-desenho svg{display:block;width:100%;height:auto;overflow:visible}
.pl-parede{fill:none;stroke:var(--tinta);stroke-width:14;stroke-linejoin:miter}
.pl-divisa{fill:none;stroke:var(--tinta);stroke-width:8}
.pl-cortina{fill:none;stroke:var(--tinta);stroke-width:3;stroke-dasharray:2 7;stroke-linecap:round}
.pl-janela{stroke:var(--papel);stroke-width:6}
.pl-movel{fill:var(--papel);stroke:var(--cinza);stroke-width:1.5}
.pl-grade{stroke:var(--tinta);stroke-width:2.5;opacity:.28}
.pl-fundo-l{fill:none;stroke:var(--tinta);stroke-width:5;stroke-linecap:round;opacity:.0;transition:opacity .4s}
.pl-cota{stroke:var(--cinza);stroke-width:1.5}
.pl-cota-t{font:600 22px/1 var(--f-micro);fill:var(--cinza)}
.pl-area{fill:transparent;cursor:pointer;transition:fill .35s var(--ease);outline:none}
.pl-area:hover{fill:var(--limao-claro)}
.pl-area[aria-pressed="true"]{fill:var(--limao)}
.pl-area:focus-visible{stroke:var(--tinta);stroke-width:4}
.pl-area-t{font:700 19px/1 var(--f-micro);text-transform:uppercase;letter-spacing:.04em;fill:var(--tinta);pointer-events:none}
svg[data-sel="fundo"] .pl-fundo-l{opacity:1}

.balao{position:absolute;z-index:2;width:min(19rem,70%);padding:1rem 1.15rem 1.1rem;border-radius:var(--raio-p);background:var(--tinta);color:var(--papel);transform:translate(-50%,calc(-100% - 12px));pointer-events:none;opacity:0;transition:opacity .3s,left .45s var(--ease),top .45s var(--ease)}
.balao.on{opacity:1}
.balao::after{content:"";position:absolute;left:50%;bottom:-7px;width:14px;height:14px;background:inherit;transform:translateX(-50%) rotate(45deg);border-radius:2px}
.balao strong{display:block;font:700 1.0625rem/1.2 var(--f-texto);margin-bottom:.35rem}
.balao span{display:block;font:400 .9375rem/1.4 var(--f-texto);color:#d9dfe0}

.planta-lado{display:flex;flex-direction:column;gap:clamp(1.25rem,2vw,2rem)}
.cotas{display:grid;gap:var(--gap);margin:0}
.cotas div{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-radius:var(--raio-p);background:var(--superficie)}
.cotas dt{font:500 .875rem/1.2 var(--f-micro);text-transform:uppercase;letter-spacing:.05em;color:var(--cinza)}
.cotas dd{margin:0;font:800 clamp(1.75rem,2.6vw,2.6rem)/1 var(--f-nome);letter-spacing:-.01em}
.cotas small{font:500 .45em/1 var(--f-texto);letter-spacing:0}
.areas{display:flex;flex-wrap:wrap;gap:.5rem}
.areas button{min-height:2.75rem;padding:.65rem 1.1rem;border:0;border-radius:999px;background:var(--superficie);font:500 .9375rem/1 var(--f-texto);cursor:pointer;transition:background-color .25s}
.areas button:hover{background:var(--superficie-2)}
.areas button[aria-pressed="true"]{background:var(--limao)}
.area-info{display:none}

.bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(12.5rem,auto);gap:var(--gap)}
.bloco{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem;padding:clamp(1.25rem,2vw,1.875rem);border-radius:var(--raio);background:var(--superficie)}
.bloco.lilas{background:var(--lilas)}
.bloco.azul{background:var(--azul)}
.bloco:nth-child(1){grid-column:span 2;grid-row:span 2}
.bloco:nth-child(2){grid-column:span 2}
.bloco-num{font:800 clamp(4.5rem,8vw,8.5rem)/.85 var(--f-nome);letter-spacing:-.03em}
.bloco:nth-child(1) .bloco-num{font-size:clamp(7rem,15vw,16.5rem)}
.bloco-num small{font-size:.38em;font-weight:600;margin-left:.08em;letter-spacing:0}
.bloco-tit{font:700 clamp(1.5rem,2vw,2rem)/1.05 var(--f-texto);letter-spacing:-.02em}
.bloco-rot{font:500 clamp(1rem,1.15vw,1.125rem)/1.35 var(--f-texto);max-width:24ch}
.bloco:nth-child(1) .bloco-rot{font-size:clamp(1.25rem,1.6vw,1.625rem)}
.bloco-reserva{grid-column:1/-1;flex-direction:row;align-items:flex-end;flex-wrap:wrap;background:var(--limao);border:0;text-align:left;cursor:pointer;min-height:12.5rem;transition:transform .45s var(--ease)}
.bloco-reserva:hover{transform:translateY(-3px)}
.bloco-reserva .bloco-tit{font-size:clamp(1.75rem,3vw,3rem)}
.bloco-reserva .bloco-num{font-size:clamp(3rem,7vw,7.5rem);letter-spacing:-.01em}

.planos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.plano{display:flex;flex-direction:column;justify-content:space-between;gap:2.5rem;min-height:clamp(14rem,22vw,20rem);padding:clamp(1.25rem,2vw,1.875rem);border:0;border-radius:var(--raio);background:var(--superficie);text-align:left;cursor:pointer;transition:background-color .3s,transform .45s var(--ease)}
.plano:hover,.plano:focus-visible{background:var(--limao);transform:translateY(-3px)}
.plano-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.plano-nome{font:700 clamp(1.375rem,1.8vw,1.75rem)/1.1 var(--f-texto);letter-spacing:-.02em}
.plano-horas{font:500 .875rem/1 var(--f-micro);text-transform:uppercase;letter-spacing:.05em;padding:.45rem .7rem;border-radius:999px;background:var(--papel)}
.plano-valor{font:800 clamp(4rem,7.5vw,8rem)/.85 var(--f-nome);letter-spacing:-.025em}
.plano-valor small{font-weight:500;font-size:.32em;margin-right:.15em;vertical-align:1.6em;letter-spacing:0}
.plano-pe{font:500 .9375rem/1.3 var(--f-texto);display:flex;align-items:center;justify-content:space-between}
.plano-pe span:last-child{display:grid;place-items:center;width:2.5rem;aspect-ratio:1;border-radius:50%;background:var(--tinta);color:var(--papel)}
.plano-pe svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

.faq{border-top:1px solid var(--tinta)}
.faq details{border-bottom:1px solid var(--filete)}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:clamp(1.1rem,1.8vw,1.6rem) 0;font:600 clamp(1.125rem,1.6vw,1.5rem)/1.25 var(--f-texto);letter-spacing:-.01em;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:2.25rem;aspect-ratio:1;border-radius:50%;background:var(--superficie) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 6v12M6 12h12' stroke='%230e1315' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center/1rem no-repeat;transition:transform .4s var(--ease),background-color .25s}
.faq details[open] summary::after{transform:rotate(45deg);background-color:var(--limao)}
.faq details p{padding:0 0 1.5rem;max-width:62ch;font:400 clamp(1rem,1.15vw,1.125rem)/1.5 var(--f-texto);color:var(--cinza)}

.chegar{max-width:var(--larg);margin:var(--sec) auto 0;padding:0 var(--gut) clamp(1.5rem,3vw,2.5rem);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--gap)}
.chegar-texto{display:flex;flex-direction:column;justify-content:space-between;gap:2rem;padding:clamp(1.5rem,2.6vw,2.5rem);border-radius:var(--raio);background:var(--tinta);color:var(--papel)}
.chegar address{font:400 clamp(1.25rem,1.8vw,1.75rem)/1.3 var(--f-texto);font-style:normal;letter-spacing:-.01em}
.chegar address strong{display:block;font-weight:700}
.chegar-acoes{display:flex;flex-wrap:wrap;gap:.75rem}
.chegar .botao-tinta{background:#273034}
.chegar .botao-tinta:hover{background:#344045}
.mapa{position:relative;min-height:clamp(22rem,36vw,34rem);border-radius:var(--raio);overflow:hidden;background:var(--superficie)}
.mapa iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.mapa-espera{position:absolute;inset:0;display:grid;place-items:center;font:500 .9375rem/1 var(--f-micro);color:var(--cinza);text-transform:uppercase;letter-spacing:.05em}
.assina{grid-column:1/-1;display:flex;justify-content:space-between;gap:1rem;padding-top:1rem;font:500 .875rem/1.3 var(--f-micro);text-transform:uppercase;letter-spacing:.05em;color:var(--cinza)}
.assina a{text-decoration:none}
.assina a:hover{text-decoration:underline}

.sim{width:min(34rem,calc(100% - 2rem));max-height:calc(100dvh - 2rem);padding:0;border:0;border-radius:calc(var(--raio) + .25rem);background:var(--papel);color:var(--tinta)}
.sim::backdrop{background:rgb(14 19 21/.55);backdrop-filter:blur(3px)}
.sim[open]{animation:sim-entra .45s var(--ease)}
@keyframes sim-entra{from{opacity:0;transform:translateY(18px) scale(.98)}}
.sim-caixa{display:flex;flex-direction:column;gap:1.25rem;padding:clamp(1.25rem,3vw,2rem)}
.sim-cab{display:flex;align-items:center;justify-content:space-between}
.sim-cab h2{font-size:clamp(1.75rem,3vw,2.25rem)}
.sim-fecha{display:grid;place-items:center;width:2.75rem;aspect-ratio:1;border:0;border-radius:50%;background:var(--superficie);cursor:pointer}
.sim-modos{display:grid;grid-template-columns:repeat(3,1fr);gap:.375rem;padding:.375rem;border-radius:999px;background:var(--superficie)}
.sim-modos button{min-height:2.75rem;border:0;border-radius:999px;background:none;font:600 .9375rem/1 var(--f-texto);cursor:pointer;transition:background-color .25s}
.sim-modos button[aria-checked="true"]{background:var(--tinta);color:var(--papel)}
.sim-horas[hidden]{display:none}
.sh-topo{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;font:500 .875rem/1 var(--f-micro);text-transform:uppercase;letter-spacing:.05em;color:var(--cinza)}
.sh-passo{display:flex;gap:.375rem}
.sh-passo button{width:2.5rem;aspect-ratio:1;border:0;border-radius:50%;background:var(--superficie);font:600 1.25rem/1 var(--f-texto);cursor:pointer}
.sh-trilho{position:relative;display:grid;grid-template-columns:repeat(var(--n,12),minmax(0,1fr));gap:0;padding:.25rem;border-radius:999px;background:var(--superficie)}
.sh-capsula{position:absolute;top:.25rem;bottom:.25rem;left:.25rem;width:calc((100% - .5rem) * var(--h,1) / var(--n,12));border-radius:999px;background:var(--limao);transition:width .45s var(--ease)}
.sh-trilho button{position:relative;aspect-ratio:1;min-height:1.6rem;border:0;border-radius:50%;background:none;font:700 clamp(.8125rem,1.6vw,1rem)/1 var(--f-nome);cursor:pointer}
.sh-trilho button:hover{background:rgb(14 19 21/.06)}
.sh-trilho button[aria-checked="true"]{background:none}
.sim-total{display:flex;flex-direction:column;gap:.35rem;padding:1.25rem 1.4rem;border-radius:var(--raio);background:var(--superficie)}
.st-rotulo{font:500 .875rem/1 var(--f-micro);text-transform:uppercase;letter-spacing:.05em;color:var(--cinza)}
.st-valor{font:800 clamp(3.5rem,9vw,5rem)/.9 var(--f-nome);letter-spacing:-.02em}
.st-valor small{font-weight:500;font-size:.4em;margin-right:.15em;vertical-align:1em;letter-spacing:0}
.st-troca{font:500 .9375rem/1.35 var(--f-texto)}
.st-troca button{margin-left:.25rem;padding:0;border:0;background:none;font-weight:700;text-decoration:underline;text-underline-offset:.25em;cursor:pointer}
.sim-nota{font:400 .875rem/1.4 var(--f-texto);color:var(--cinza)}
.sim-reservar{min-height:3.5rem;font-size:1.0625rem}

.surge{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.surge.visto{opacity:1;transform:none}

@media (max-width:1100px){
  .topo nav{display:none}
  .topo .botao{margin-left:auto}
  .planta-corpo{grid-template-columns:1fr}
  .bento{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chegar{grid-template-columns:1fr}
}
@media (max-width:720px){
  :root{--topo:3.5rem}
  .marcas-divisor,.marca-bravura{display:none}
  .abre-pe{flex-direction:column;align-items:stretch}
  .preco-chamada{justify-self:start}
  .mosaico{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:7.5rem}
  .mosaico figure:nth-child(1){grid-column:span 2;grid-row:span 2}
  .mosaico figure:nth-child(2){grid-column:span 1;grid-row:span 3}
  .mosaico figure:nth-child(3){grid-column:span 1;grid-row:span 2}
  .mosaico figure:nth-child(4){grid-column:span 1;grid-row:span 1}
  .mosaico figure:nth-child(5){grid-column:span 1;grid-row:span 3}
  .mosaico figure:nth-child(6){grid-column:span 1;grid-row:span 3}
  .mosaico figure:nth-child(n+7){grid-column:span 1;grid-row:span 3}
  .mosaico figure.video{grid-column:span 1;grid-row:span 6}
  .mosaico figure:last-child{grid-column:span 2;grid-row:span 4}
  .balao{position:static;width:auto;margin-top:1rem;transform:none;opacity:1;pointer-events:auto}
  .balao::after{display:none}
  .bento{grid-template-columns:1fr 1fr;grid-auto-rows:auto}
  .bloco{gap:1rem}
  .bloco-reserva{min-height:0}
  .bloco:nth-child(1){grid-column:span 2;grid-row:span 1}
  .bloco:nth-child(2){grid-column:span 2}
  .bloco:nth-child(n+3):not(.bloco-reserva){grid-column:span 2}
  .bloco-num{font-size:clamp(4rem,20vw,6rem)}
  .bloco:nth-child(1) .bloco-num{font-size:clamp(6rem,32vw,9rem)}
  .planos{grid-template-columns:1fr}
  .plano{min-height:11rem}
  .assina{font-size:.75rem}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms!important;animation:none!important}
  .surge{opacity:1;transform:none}
}
