@font-face{font-family:'Fraunces';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/fraunces-400.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/fraunces-600.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/instrument-sans-400.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/instrument-sans-500.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/instrument-sans-600.woff2) format('woff2')}

:root{
  --creme:#f4f0e2;--marrom:#341c03;--azul:#93b2e8;--azul-fundo:#4e6da3;--linha:#d7d0c0;--areia:#ebe4cc;--azul-claro:#dde6f5;
  --serif:'Fraunces',Georgia,serif;--sans:'Instrument Sans',system-ui,sans-serif;
  --gut:max(20px,calc((100% - 1320px)/2));
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--creme);color:var(--marrom);font-family:var(--sans);font-size:18px;line-height:1.55}
img{display:block;max-width:100%;height:auto}
figure,ul,ol,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit;text-underline-offset:3px}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0 0 .5em;line-height:1.08;letter-spacing:-.02em}
h1,h2,h3{text-wrap:balance}
h1{font-size:clamp(40px,6vw,64px);letter-spacing:-.04em;line-height:1.02}
h2{font-size:clamp(32px,4.2vw,52px)}
h3{font-size:clamp(22px,2.2vw,28px)}
p{margin:0 0 1em}
section{position:relative;overflow-x:clip;padding:clamp(48px,7vw,96px) var(--gut)}
:focus-visible{outline:3px solid var(--azul-fundo);outline-offset:3px}
.azul{color:var(--azul-fundo)}
.eyebrow{font-size:14px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;margin:0 0 14px}
.folio{font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin:0 0 22px;padding-top:10px;border-top:1px solid currentColor;display:inline-block;min-width:160px}
.lide{font-size:20px}

/* bloco do pacote */
.pular{position:absolute;left:-9999px;top:0;background:var(--creme);color:var(--marrom);padding:12px 16px;z-index:100}
.pular:focus{left:8px;top:8px}
.rascunho{background:#1d0f01;color:var(--creme);font-size:14px;text-align:center;padding:8px 16px}
.pacote{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--marrom);color:var(--creme);padding:8px max(12px,calc((100% - 1320px)/2));flex-wrap:wrap}
.pacote-abas{display:flex;flex-wrap:wrap;gap:4px}
.pacote-abas a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:30px;color:var(--creme);text-decoration:none;font-weight:500;font-size:16px}
.pacote-abas a:hover{background:rgba(244,240,226,.14)}
.pacote-abas a[aria-current="page"]{background:var(--creme);color:var(--marrom);font-weight:600}
.pacote .curto{display:none}
.chat,.rodape-chat{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:30px;background:var(--azul);color:var(--marrom);font-weight:600;text-decoration:none}
.chat:focus-visible,.pacote-abas a:focus-visible,.rodape a:focus-visible{outline-color:var(--azul)}
.rodape{background:var(--marrom);color:var(--creme);padding:40px var(--gut);font-size:16px}
.rodape p{margin:0 0 12px}
.rodape-fontes{font-size:15px}

/* botões e links */
.botao{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;border-radius:30px;background:var(--azul-fundo);color:var(--creme);font-weight:600;text-decoration:none;border:2px solid var(--azul-fundo)}
.botao-linha{background:transparent;color:var(--marrom);border-color:var(--marrom)}
.botao-claro{background:var(--creme);color:var(--marrom);border-color:var(--creme)}
.acoes{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 0}
.link-seta{font-weight:600;display:inline-flex;align-items:center;min-height:44px}
.link-seta::after{content:"→";margin-left:8px}
.cabeca{max-width:760px}

/* revelação */
.rv{transition:opacity .6s ease,transform .6s ease}
.com-js .rv:not(.in){opacity:0;transform:translateY(18px)}
@media (prefers-reduced-motion:reduce){.rv{transition:none}.com-js .rv:not(.in){opacity:1;transform:none}}

/* 1 hero */
.hero{display:flex;align-items:center;min-height:780px;padding:0;overflow:hidden}
.hero-foto{position:absolute;inset:0;overflow:hidden}
.hero-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 30%}
.hero-cartao{position:relative;background:var(--creme);width:min(580px,calc(100% - 40px));margin:64px 0 64px var(--gut);padding:clamp(32px,4vw,52px) clamp(24px,4vw,48px);border-radius:24px}

/* 2 expect (faixa final do hero) */
.expect{text-align:center;padding:64px var(--gut);border-top:1px solid var(--linha)}
.expect h2{max-width:900px;margin:0 auto}

/* 3 passos */
.passos{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(24px,5vw,72px);background:var(--azul);align-items:stretch}
.rol{margin-top:28px}
.rol li{border-top:1px solid var(--marrom);padding:22px 0 6px}
.rol h3{font-size:24px;margin-bottom:.3em}
.passos-foto{position:relative;min-height:440px;border-radius:20px;overflow:hidden}
.passos-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* 4 histórias */
.historias{background:var(--marrom);color:var(--creme)}
.historias .link-seta{color:var(--creme)}
.trilho{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 0 20px;margin-top:20px}
.trilho li{flex:0 0 300px;scroll-snap-align:start}
@media (min-width:1001px){
  .historias{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);column-gap:clamp(24px,5vw,72px);align-items:start}
  .historias .folio{grid-column:1/-1}
  .historias .cabeca{grid-column:1;position:sticky;top:20px}
  .historias .cabeca h2{font-size:clamp(40px,4.6vw,60px)}
  .trilho{grid-column:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px;overflow:visible;margin:0;padding:0}
  .trilho li{flex:none}
  .trilho strong{font-size:21px}
}
.trilho img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:20px}
.trilho figcaption{padding-top:12px}
.trilho strong{display:block;font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.15}
.trilho span{font-size:16px}
.historias :focus-visible,.final :focus-visible,.aplicativo :focus-visible{outline-color:var(--creme)}

/* 5 contagem */
.contagem{background:var(--azul-claro)}
.contagem-topo{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-bottom:34px}
.avatares{display:flex}
.avatares li+li{margin-left:-16px}
.avatares img{width:68px;height:68px;border-radius:50%;object-fit:cover;object-position:50% 20%;border:3px solid var(--creme)}
.contagem h2{margin-bottom:.2em}
.contagem-topo p{margin:0}
.notas{display:flex;border-top:1px solid var(--marrom)}
.notas li{flex:1 1 0;min-width:0;padding:24px 24px 8px;border-left:1px solid var(--linha)}
.notas li:first-child{border-left:0;padding-left:0}
.nota{font-family:var(--serif);font-size:clamp(48px,6vw,72px);line-height:1;margin-right:12px}
.estrelas{color:var(--azul-fundo);font-size:26px;letter-spacing:2px}
.notas p{margin:10px 0 0;font-size:17px}

/* 6 bairro */
.bairro{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,5vw,72px);background-color:var(--areia);align-items:stretch}
.bairro-lado{display:flex;flex-direction:column}
.bairro-lado figure{position:relative;flex:1;min-height:320px;margin-top:24px;border-radius:20px;overflow:hidden}
.bairro-lado figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dir{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px;align-content:start}
.grupo{margin-bottom:28px}
.g-sul{grid-column:1;grid-row:1/3}.g-tx{grid-column:2;grid-row:1}.g-nor{grid-column:2;grid-row:2}
.grupo li{break-inside:avoid}
.grupo h3{font-size:24px;border-bottom:1px solid var(--marrom);padding-bottom:8px}
.grupo li{padding:10px 0;border-bottom:1px solid var(--linha);font-size:17px;line-height:1.4}

/* 7 serviços */
.fichas{margin-top:28px;border-bottom:1px solid var(--marrom)}
.fichas li{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(0,2fr);column-gap:28px;align-items:center;padding:22px 0;border-top:1px solid var(--marrom)}
.fichas img{width:72px;height:72px;border-radius:50%;object-fit:cover;object-position:50% 20%}
.fichas h3{margin:0;font-size:clamp(24px,2.6vw,32px)}
.fichas p{margin:0;font-size:17px}

/* 8 planos */
.planos{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,5vw,72px);background:var(--azul)}
.planos-lado{display:flex;flex-direction:column}
.planos-lado figure{position:relative;flex:1;min-height:280px;border-radius:20px;overflow:hidden;margin-top:12px}
.planos-lado figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.planos-lista{display:flex;flex-direction:column;gap:16px}
.planos-lista li{background:var(--creme);border-radius:22px;padding:26px 30px 14px}
.planos-lista h3{margin-bottom:.1em}
.preco{font-family:var(--serif);font-size:44px;line-height:1.1;margin:0 0 .3em}
.nota-texas{font-size:16px}

/* 9 sala */
.sala{display:flex;align-items:center;min-height:700px;padding:0}
.sala-fundo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sala-cartao{position:relative;background:var(--marrom);color:var(--creme);width:min(600px,calc(100% - 32px));margin:48px 0 48px max(16px,calc((100% - 1320px)/2));padding:36px 40px 20px;border-radius:24px}
.sala-cartao h2{font-size:clamp(28px,3.4vw,40px)}
.sala-cartao :focus-visible{outline-color:var(--creme)}

/* 10 mordida */
.mordida-cabeca{max-width:780px;margin-left:auto;text-align:right}
.tira{display:flex;gap:16px;margin:28px 0}
.tira figure{flex:1 1 0;min-width:0;border-radius:18px;overflow:hidden}
.tira img{width:100%;height:240px;object-fit:cover}
.regras{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.regras li{border-top:2px solid var(--marrom);padding-top:16px}
.regras h3{font-size:22px}
.regras p{font-size:17px}

/* 11 boca */
.boca{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,5vw,72px);background-color:var(--areia);align-items:start}
.boca-lado{position:sticky;top:20px;display:flex;flex-direction:column;gap:16px}
.boca-lado figure{border-radius:20px;overflow:hidden}
.boca-lado img{width:100%;aspect-ratio:3/2;object-fit:cover}
.boca-texto h3{margin-top:1.4em;font-size:26px}
.tres{margin-top:24px;border-top:1px solid var(--marrom)}
.tres li{padding:14px 0;border-bottom:1px solid var(--linha);font-size:17px}

/* 12 gato */
.gato{text-align:center;background:var(--azul-claro)}
.duvidas{background:var(--areia)}
.gato .cabeca{margin:0 auto 28px}
.gato-foto{max-width:1100px;margin:0 auto 36px;border-radius:22px;overflow:hidden}
.gato-foto img{width:100%}
.gato-linha{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,5vw,72px);text-align:left;max-width:1100px;margin:0 auto}
.lista li{padding:10px 0 10px 22px;border-top:1px solid var(--linha);position:relative;font-size:17px}
.lista li::before{content:"";position:absolute;left:0;top:20px;width:9px;height:9px;border-radius:50%;background:var(--azul-fundo)}
.gato-mini{max-width:280px;border-radius:18px;overflow:hidden;margin-top:18px}

/* 13 app */
.aplicativo{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(24px,5vw,72px);background:var(--azul-fundo);color:var(--creme);align-items:stretch}
.aplicativo a{color:var(--creme)}
.aplicativo .botao-claro{color:var(--marrom)}
.app-texto{display:flex;flex-direction:column}
.app-texto figure{position:relative;flex:1;min-height:200px;border-radius:20px;overflow:hidden}
.app-texto figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.app-cartao{background:var(--creme);color:var(--marrom);border-radius:28px;padding:28px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px}
.app-cartao>img{width:100%;max-width:380px}
.qr{display:flex;align-items:center;gap:16px}
.qr img{width:130px;height:auto;flex:none}
.qr p{margin:0;font-size:16px}

/* 14 dúvidas */
.faq{column-count:2;column-gap:56px;margin-top:28px}
.faq div{break-inside:avoid;border-top:1px solid var(--marrom);padding:18px 0 22px}
.faq dt{font-family:var(--serif);font-size:24px;line-height:1.15;margin-bottom:10px}
.faq dd{font-size:17px}

/* 15 final */
.final{background:var(--marrom);color:var(--creme)}
.final-topo{max-width:760px}
.faixa{display:flex;gap:12px;overflow-x:auto;margin:30px 0}
.faixa li{flex:1 0 140px}
.faixa li.faixa-larga{flex:2.4 0 300px}
.faixa img{width:100%;height:260px;object-fit:cover;border-radius:16px}
.oferta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 48px;width:100%;background:var(--creme);color:var(--marrom);border-radius:24px;padding:30px 36px}
.oferta p{margin:0}
.oferta .eyebrow{margin-bottom:0}
.codigo{font-family:var(--serif);font-size:clamp(36px,5vw,56px);letter-spacing:.04em;line-height:1.1}

/* tablet e celular */
@media (max-width:1000px){
  .hero{display:grid;grid-template-columns:minmax(0,1fr);min-height:0}
  .hero-foto{position:relative;inset:auto;grid-row:1;aspect-ratio:4/3}
  .hero-cartao{grid-row:2;width:auto;margin:0;border-radius:0;padding:32px 20px 40px}
  .expect{padding:48px 20px}
  .dir{grid-template-columns:minmax(0,1fr)}
  .g-tx,.g-nor,.g-sul{grid-column:auto;grid-row:auto}
  .passos,.bairro,.planos,.boca,.aplicativo{grid-template-columns:minmax(0,1fr)}
  .bairro-lado,.boca-lado{position:static}
  .passos-foto{min-height:0;aspect-ratio:1}
  .planos-lado figure{min-height:0;aspect-ratio:1;flex:none}
  .bairro-lado figure{min-height:0;aspect-ratio:4/3;flex:none}
  .app-texto figure{min-height:0;aspect-ratio:4/3;flex:none}
  .boca-lado{flex-direction:row}
  .boca-lado figure{flex:1 1 0;min-width:0}
  .regras{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fichas li{grid-template-columns:72px minmax(0,1fr);row-gap:8px}
  .fichas p{grid-column:1/-1}
}
@media (max-width:700px){
  body{font-size:17px}
  .pacote .longo{display:none}
  .pacote .curto{display:inline}
  .pacote-abas a{padding:0 9px;font-size:15px}
  .sala-cartao{padding:26px 22px 12px}
  .faq{column-count:1}
  .oferta{padding:24px 22px}
  .notas{flex-direction:column}
  .notas li{border-left:0;border-top:1px solid var(--linha);padding-left:0}
  .notas li:first-child{border-top:0}
  .tira{flex-direction:column}
  .tira img{height:200px}
  .regras,.gato-linha{grid-template-columns:minmax(0,1fr)}
  .mordida-cabeca{text-align:left;margin-left:0}
  .boca-lado{flex-direction:column}
  .trilho li{flex-basis:240px}
  .faixa li{flex-basis:150px}
  .faixa li.faixa-larga{flex-basis:280px}
  .qr{flex-direction:column;text-align:center}
  .oferta{padding:24px 22px 10px}
}

/* n3 06/10: trava de diversidade: 5 aberturas centralizadas (cabeçalho sozinho na faixa); gerado por noite-20261005/n3-centrar.mjs */
#services > :nth-child(2) > :is(h1,h2,.eyebrow,p.eyebrow){text-align:center}
#services > :nth-child(2) > :is(h2,h1) + p{text-align:center;margin-left:auto;margin-right:auto}
#operating-room > :nth-child(2) > :is(h1,h2,.eyebrow,p.eyebrow){text-align:center}
#operating-room > :nth-child(2) > :is(h2,h1) + p{text-align:center;margin-left:auto;margin-right:auto}
#bite-test > :nth-child(2) > :is(h1,h2,.eyebrow,p.eyebrow){text-align:center}
#bite-test > :nth-child(2) > :is(h2,h1) + p{text-align:center;margin-left:auto;margin-right:auto}
#faq > :nth-child(2) > :is(h1,h2,.eyebrow,p.eyebrow){text-align:center}
#faq > :nth-child(2) > :is(h2,h1) + p{text-align:center;margin-left:auto;margin-right:auto}
#cta-final > :nth-child(2) > :is(h1,h2,.eyebrow,p.eyebrow){text-align:center}
#cta-final > :nth-child(2) > :is(h2,h1) + p{text-align:center;margin-left:auto;margin-right:auto}
