@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/bricolage-grotesque-500.woff2) format('woff2')}
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/bricolage-grotesque-700.woff2) format('woff2')}
@font-face{font-family:'Figtree';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/figtree-400.woff2) format('woff2')}
@font-face{font-family:'Figtree';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/figtree-500.woff2) format('woff2')}
@font-face{font-family:'Figtree';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/figtree-700.woff2) format('woff2')}

/* Paleta medida no CSS do site: --brand-pink, --pink, --nude, --light-pink, --yellow, --teal e o roxo de texto das avaliações */
:root{
  --ink:#270623;
  --pink:#fe9ab5;
  --pale:#ffdce5;
  --nude:#ffefeb;
  --blush:#fff5f3;
  --sun:#ffecb8;
  --lagoon:#c5fffc;
  --hot:#f571b3;
  --mute:#3b343a;
  --tx:var(--ink);
  --sobre-escuro:var(--pale);
  --acao:var(--ink);
  --disp:'Bricolage Grotesque','Trebuchet MS',system-ui,sans-serif;
  --corpo:'Figtree','Segoe UI',system-ui,sans-serif;
  --max:1200px;
  --ease:cubic-bezier(.23,1,.32,1);
  --r:22px;
  --sombra:0 1px 0 rgba(39,6,35,.06),0 14px 28px -16px rgba(39,6,35,.38);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:84px}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background-color:var(--ink);color:var(--tx);font:400 17px/1.55 var(--corpo);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:manipulation}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit;text-decoration-thickness:from-font;text-underline-offset:.18em}
:focus-visible{outline:3px solid var(--hot);outline-offset:3px;border-radius:6px}
.tom-escuro :focus-visible{outline-color:var(--pink)}
::selection{background:var(--hot);color:var(--ink)}
s{color:var(--mute)}
.tom-escuro s{color:var(--pale)}

/* ---------- faixa, menu do pacote, rodapé ---------- */
.pular{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--ink);color:var(--pale);padding:10px 16px;border-radius:10px}
.pular:focus{left:12px}
.rascunho{background-color:var(--ink);color:var(--pale);text-align:center;font:500 13px/1.4 var(--corpo);padding:7px 14px}
.pacote{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:8px 12px;background-color:var(--blush);border-bottom:1px solid rgba(39,6,35,.16);z-index:40}
.pacote-abas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.pacote-abas a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:6px 8px;border-radius:999px;color:var(--ink);font:500 14px/1.2 var(--corpo);text-decoration:none;text-align:center;transition:background-color .18s ease,color .18s ease,transform .18s var(--ease)}
.pacote-abas a[aria-current=page]{background-color:var(--ink);color:var(--pale)}
.pacote-abas .curto{display:none}
.chat{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:999px;background-color:var(--pink);color:var(--ink);font:700 15px/1 var(--corpo);text-decoration:none;border:2px solid var(--ink);transition:transform .18s var(--ease),background-color .18s ease}
.chat:active,.botao:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){
  .pacote-abas a:not([aria-current=page]):hover{background-color:var(--pale)}
  .chat:hover{background-color:var(--pale)}
}
@media (min-width:861px){
  .pacote{position:sticky;top:0;flex-direction:row;align-items:center;justify-content:space-between;padding:8px clamp(16px,3vw,40px)}
  .pacote-abas{display:flex;gap:4px}
  .pacote-abas a{padding:6px 16px}
}
.rodape{background-color:var(--ink);color:var(--pale);text-align:center;padding:44px 20px 52px;font:400 15px/1.55 var(--corpo)}
.rodape p{max-width:720px;margin:0 auto 14px}
.rodape-chat{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;border-radius:999px;background-color:var(--pink);color:var(--ink);font:700 15px/1 var(--corpo);text-decoration:none}
.rodape-fontes{color:#e8c3d0;font-size:14px;margin-bottom:0}

/* ---------- seção, costura, cabeçalho ---------- */
main section{position:relative;background-color:var(--c);color:var(--tx);overflow-x:clip;padding:clamp(48px,6vw,80px) clamp(18px,4vw,40px) clamp(88px,8vw,112px)}
main section::after{content:'';position:absolute;inset:auto 0 0;height:104px;background:linear-gradient(to bottom in oklab,var(--c),var(--n));pointer-events:none}
.tom-escuro{--tx:var(--pale)}
.kk-wrap{max-width:var(--max);margin-inline:auto;position:relative;z-index:1}
.kk-cab{text-align:center;max-width:780px;margin:0 auto clamp(20px,2.6vw,34px)}
.kk-cab h2,.kk-h2{font:700 clamp(30px,3.6vw,46px)/1.04 var(--disp);letter-spacing:-.022em;text-wrap:balance}
.kk-cab p{margin-top:10px;font-size:17px;text-wrap:pretty}
.kk-cab h2 + p{max-width:62ch;margin-inline:auto}
.kk-cartao{background-color:var(--cartao,#fff);color:var(--ink);border-radius:var(--r);box-shadow:var(--sombra)}
.kk-moldura{position:relative;overflow:hidden;border-radius:16px;background-color:var(--blush)}
.kk-moldura img,.kk-retrato img,.kk-sarong-foto img,.kk-fabrica-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.kk-moldura.contido img{object-fit:contain}
.kk-adesivos .kk-moldura.contido img{padding:4px}
.botao{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;border-radius:999px;background-color:var(--ink);color:var(--pale);border:2px solid var(--ink);font:700 16px/1 var(--corpo);text-decoration:none;transition:transform .18s var(--ease),background-color .18s ease,color .18s ease}
.botao.claro{background-color:transparent;color:var(--ink)}
.tom-escuro .botao{background-color:var(--pink);border-color:var(--pink);color:var(--ink)}
.tom-escuro .botao.claro{background-color:transparent;border-color:var(--pale);color:var(--pale)}
@media (hover:hover) and (pointer:fine){
  .botao:hover{transform:translateY(-2px)}
  .botao.claro:hover{background-color:var(--ink);color:var(--pale)}
  .tom-escuro .botao.claro:hover{background-color:var(--pale);color:var(--ink)}
}
.kk-preco{font:700 22px/1 var(--disp);letter-spacing:-.01em;white-space:nowrap}
.kk-preco s{font:500 16px/1 var(--corpo);margin-left:8px}

/* ---------- 1. paradise-pass (hero) ---------- */
#paradise-pass{padding-top:clamp(24px,3vw,44px)}
.kk-pass-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:center}
.kk-pass-txt{display:grid;gap:18px;justify-items:start}
.kk-tag{display:inline-block;padding:6px 16px;border:2px solid var(--ink);border-radius:999px;font:700 15px/1.2 var(--corpo)}
#paradise-pass h1{font:700 clamp(40px,5.6vw,72px)/1 var(--disp);letter-spacing:-.03em;text-wrap:balance}
.kk-lead{font-size:clamp(17px,1.5vw,20px);max-width:44ch;text-wrap:pretty}
.kk-cta{display:flex;flex-wrap:wrap;gap:12px}
.kk-selos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:520px}
.kk-selos li{background-color:var(--blush);border:2px solid var(--ink);border-radius:16px;padding:12px 14px;font:700 14px/1.3 var(--corpo);display:flex;align-items:center}
.kk-pass-vis{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:end}
.kk-bilhete{position:relative;background-color:var(--blush);border-radius:28px;padding:14px 14px 0;box-shadow:var(--sombra);color:var(--ink)}
.kk-bilhete-topo{display:flex;justify-content:space-between;align-items:center;padding:2px 8px 12px;font:700 16px/1 var(--disp)}
.kk-bilhete-topo span{font:500 14px/1 var(--corpo)}
.kk-bilhete .kk-moldura{border-radius:18px;aspect-ratio:1200/891}
.kk-stub{position:relative;margin:14px -14px 0;padding:16px 28px 18px;border-top:2px dashed rgba(39,6,35,.5);display:flex;justify-content:space-between;align-items:center;gap:12px;font:700 15px/1.2 var(--disp)}
.kk-stub span{font:500 14px/1.2 var(--corpo)}
.kk-stub::before,.kk-stub::after{content:'';position:absolute;top:-13px;width:24px;height:24px;border-radius:50%;background-color:var(--c)}
.kk-stub::before{left:-12px}
.kk-stub::after{right:-12px}
.kk-retrato{position:relative;border-radius:22px;overflow:hidden;aspect-ratio:4/3;box-shadow:var(--sombra);border:4px solid var(--blush)}
.kk-retrato img{object-position:50% 20%}
.kk-painel{position:relative;margin-top:30px;display:flex;align-items:stretch;background-color:var(--ink);color:var(--pale);border-radius:20px;overflow:hidden}
.kk-painel-rotulo{flex:none;display:flex;align-items:center;padding:0 16px;font:700 15px/1 var(--disp);background-color:var(--hot);color:var(--ink)}
.kk-vitrine{flex:1;min-width:0;overflow:hidden;display:flex;align-items:center}
.kk-trilho{display:flex;width:max-content;animation:kk-corre 46s linear infinite}
.kk-lote{display:flex;flex:none;align-items:center}
.kk-lote li{display:flex;align-items:center;gap:22px;padding:15px 0 15px 22px;font:700 18px/1 var(--disp);white-space:nowrap}
.kk-lote li::after{content:'';width:9px;height:9px;border-radius:50%;background-color:var(--hot)}
.kk-parado .kk-trilho{animation-play-state:paused}
.kk-pausa{flex:none;min-width:72px;min-height:48px;margin:0;padding:0 16px;border:0;border-left:2px solid var(--pale);background-color:var(--ink);color:var(--pale);font:700 14px/1 var(--corpo);cursor:pointer}
.kk-pausa[aria-pressed=true]{background-color:var(--pale);color:var(--ink)}
@keyframes kk-corre{to{transform:translateX(-50%)}}
.com-js .kk-carga{animation:kk-entra 1s var(--ease) both;animation-delay:calc(var(--i,0)*90ms)}
@keyframes kk-entra{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.com-js .kk-carga-bilhete{animation:kk-cai 1.1s var(--ease) both;animation-delay:.25s}
@keyframes kk-cai{from{opacity:0;transform:translateY(-34px) rotate(-2.5deg)}to{opacity:1;transform:none}}
@media (min-width:1000px){
  .kk-pass-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:44px}
  .kk-pass-vis{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
  .kk-retrato{aspect-ratio:3/4}
}

/* ---------- 2. sun-signs ---------- */
.kk-campanhas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.kk-campanha{display:grid;gap:10px;align-content:start;text-align:center}
.kk-campanha .kk-moldura{aspect-ratio:3/4;border-radius:20px;box-shadow:var(--sombra)}
.kk-campanha h3{font:700 22px/1.1 var(--disp);letter-spacing:-.01em}
.kk-campanha p{font-size:15px}
.kk-vivo{display:inline-block;justify-self:center;padding:3px 12px;border-radius:999px;background-color:var(--pink);color:var(--ink);font:700 13px/1.5 var(--corpo)}
@media (min-width:900px){.kk-campanhas{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}}

/* ---------- 3. cut-lab ---------- */
.kk-abas-corte{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:22px}
.kk-parada{appearance:none;border:2px solid var(--ink);border-radius:16px;background-color:transparent;color:var(--ink);padding:10px 8px;min-height:64px;font:700 15px/1.2 var(--corpo);cursor:pointer;display:grid;gap:2px;justify-items:center;align-content:center;transition:background-color .2s ease,color .2s ease,transform .18s var(--ease)}
.kk-parada small{font:400 13px/1.25 var(--corpo)}
.kk-parada[aria-selected=true]{background-color:var(--ink);color:var(--pale)}
.kk-parada:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.kk-parada[aria-selected=false]:hover{background-color:var(--pale)}}
.kk-regua{display:none}
.kk-corte{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;padding:18px;--cartao:#fff}
.kk-dupla{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:start}
.kk-dupla.uma{grid-template-columns:minmax(0,1fr);max-width:320px;margin-inline:auto;width:100%}
.kk-dupla .kk-moldura{aspect-ratio:1}
.kk-ficha{display:grid;gap:10px;align-content:center;text-align:center;justify-items:center}
.kk-ficha h3{font:700 clamp(22px,2.2vw,28px)/1.1 var(--disp);letter-spacing:-.015em}
.kk-ficha p{max-width:56ch;text-wrap:pretty}
.kk-pontos{display:grid;gap:4px;font-size:15.5px}
.kk-pontos li::before{content:'';display:inline-block;width:8px;height:8px;margin-right:9px;border-radius:50%;background-color:var(--hot);vertical-align:.08em}
.kk-sinal{font-weight:700}
@media (min-width:760px){.kk-abas-corte{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:900px){
  .kk-abas-corte{gap:0;margin-bottom:26px}
  .kk-parada{border:0;background-color:transparent;position:relative;padding-top:30px;border-radius:0;min-height:84px}
  .kk-parada::before{content:'';position:absolute;top:9px;left:50%;width:18px;height:18px;margin-left:-9px;border-radius:50%;background-color:var(--blush);border:3px solid var(--ink);transition:background-color .2s ease,transform .3s var(--ease);z-index:1}
  .kk-parada[aria-selected=true]{background-color:transparent;color:var(--ink)}
  .kk-parada[aria-selected=true]::before{background-color:var(--hot);transform:scale(1.35)}
  .kk-regua{display:block;position:absolute;top:17px;left:12.5%;right:12.5%;height:3px;background-color:var(--ink);transform-origin:left}
  .kk-corte{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:30px;align-items:center;padding:24px}
}
.com-js .kk-corte:not(.ativo){display:none}
.com-js .kk-corte.ativo{animation:kk-troca .5s var(--ease) both}
@keyframes kk-troca{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.sem-js .kk-corte{margin-bottom:18px}
.sem-js .kk-abas-corte{display:none}

/* ---------- 4. support-bar ---------- */
.kk-apoios{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.kk-apoio{display:grid;grid-template-columns:104px minmax(0,1fr);gap:14px;padding:14px;align-items:center;--cartao:#fff}
.kk-apoio .kk-moldura{aspect-ratio:1}
.kk-apoio h3{font:700 18px/1.15 var(--disp);letter-spacing:-.01em}
.kk-apoio h3 a{text-decoration:none}
.kk-apoio .kk-preco{font-size:17px;margin:6px 0}
.kk-apoio p{font-size:14.5px;line-height:1.4;text-wrap:pretty}
.kk-apoio p + p{margin-top:5px}
@media (min-width:760px){.kk-apoios{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media (min-width:1100px){.kk-apoios{grid-template-columns:repeat(3,minmax(0,1fr))}.kk-apoio{grid-template-columns:116px minmax(0,1fr)}}

/* ---------- 5. jaded-juniper ---------- */
.kk-juniper{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}
.kk-juniper-fotos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.kk-juniper-fotos .kk-moldura{aspect-ratio:3/4;border-radius:20px;box-shadow:var(--sombra)}
.kk-destaque{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;padding:16px;align-items:center;--cartao:#fff}
.kk-destaque .kk-moldura{aspect-ratio:1}
.kk-destaque h3{font:700 20px/1.15 var(--disp)}
.kk-destaque p{font-size:15px;margin-top:6px;text-wrap:pretty}
.kk-degraus{display:grid;grid-template-columns:minmax(0,1fr);gap:8px 22px;margin-top:16px}
.kk-degrau{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:end;font-size:14.5px;line-height:1.3}
.kk-degrau .kk-preco{font-size:15px}
.kk-trilha{grid-column:1/-1;height:8px;border-radius:99px;background-color:rgba(39,6,35,.12);overflow:hidden}
.kk-trilha i{display:block;height:100%;width:var(--w);background-color:var(--ink);border-radius:99px;transform-origin:left;transition:transform 1.1s var(--ease);transition-delay:calc(var(--i,0)*70ms)}
.com-js .kk-grafico:not(.in) .kk-trilha i,.com-js .kk-grafico:not(.in) .kk-barra i{transform:scaleX(0)}
@media (min-width:640px){.kk-degraus{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.kk-juniper{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:34px}}

/* ---------- 6. swim-shape-atlas ---------- */
#swim-shape-atlas{--tx:var(--pale)}
.kk-atlas{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.kk-graf{background-color:var(--nude);color:var(--ink);border-radius:var(--r);padding:20px 20px 16px}
.kk-graf h3{font:700 22px/1.1 var(--disp);margin-bottom:12px}
.kk-barra{display:grid;grid-template-columns:minmax(0,1fr);gap:7px}
.kk-barra li{display:grid;gap:3px;font-size:14.5px;line-height:1.2}
.kk-barra span{display:block}
.kk-barra i{display:block;height:8px;width:max(var(--w),6px);background-color:var(--ink);border-radius:99px;transform-origin:left;transition:transform 1.1s var(--ease);transition-delay:calc(var(--i,0)*70ms)}
.kk-etiquetas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
.kk-etiqueta{position:relative;background-color:var(--hot);color:var(--ink);border-radius:18px 18px 18px 18px;padding:16px 10px;text-align:center;font:700 clamp(15px,2.6vw,26px)/1.1 var(--disp)}
.kk-etiqueta::before{content:'';position:absolute;top:9px;left:50%;width:12px;height:12px;margin-left:-6px;border-radius:50%;background-color:var(--ink)}
.kk-etiqueta b{display:block;margin-top:14px;font:700 clamp(34px,5.4vw,52px)/1 var(--disp);font-variant-numeric:tabular-nums}
.kk-etiqueta span{display:block;font-size:inherit}
@media (min-width:900px){.kk-atlas{grid-template-columns:repeat(3,minmax(0,1fr))}.kk-etiquetas{gap:22px}}

/* ---------- 7. re-kini ---------- */
.kk-fibra{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:center}
.kk-fibra-fotos{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:14px;align-items:end}
.kk-fibra-fotos .kk-moldura{aspect-ratio:3/4;border-radius:20px;box-shadow:var(--sombra)}
.kk-fibra-fotos .kk-cartao{padding:10px;--cartao:#fff}
.kk-fibra-fotos .kk-cartao .kk-moldura{aspect-ratio:1;box-shadow:none}
.kk-fibra-txt{display:grid;gap:14px;text-align:center;justify-items:center}
.kk-fibra-txt p{max-width:58ch;text-wrap:pretty}
.kk-fibra-txt .grande{font:500 clamp(20px,2vw,25px)/1.25 var(--disp);letter-spacing:-.01em}
.kk-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}
.kk-chips li{background-color:#fff;border:2px solid var(--ink);border-radius:999px;padding:8px 10px;font:700 14px/1.2 var(--corpo);text-align:center;white-space:nowrap}
.kk-subtitulo{font:700 17px/1.2 var(--disp)}
@media (min-width:760px){.kk-chips{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media (min-width:1000px){.kk-fibra{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px}}

/* ---------- 8. sarong-spotlight ---------- */
.kk-sarong{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:stretch}
.kk-sarong-card{display:grid;place-items:center;padding:22px;--cartao:#fff}
.kk-sarong-card .kk-moldura{width:100%;aspect-ratio:1;background-color:#fff}
.kk-sarong-foto{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:3/4;box-shadow:var(--sombra)}
.kk-sarong-txt{display:grid;gap:12px;align-content:center;text-align:center;justify-items:center}
.kk-sarong-txt h3{font:700 clamp(24px,2.4vw,32px)/1.08 var(--disp);letter-spacing:-.015em}
.kk-sarong-txt .kk-preco{font-size:30px}
.kk-sarong-txt p{text-wrap:pretty}
.kk-sinais{display:grid;gap:6px;width:100%}
.kk-sinais li{background-color:var(--ink);color:var(--pale);border-radius:12px;padding:8px 12px;font:700 15px/1.2 var(--corpo)}
.kk-voz1{font-size:15px}
@media (min-width:900px){.kk-sarong{grid-template-columns:minmax(0,4fr) minmax(0,3fr) minmax(0,4fr);gap:26px}.kk-sarong-foto{aspect-ratio:auto;min-height:100%}}

/* ---------- 9. espresso-island ---------- */
.kk-ilha{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:center}
.kk-ilha-lado{padding:12px;--cartao:var(--nude)}
.kk-ilha-lado .kk-moldura{aspect-ratio:3/4;background-color:var(--nude)}
.kk-ilha-lado + .kk-ilha-centro{order:-1}
.kk-ilha-centro{display:grid;gap:18px;text-align:center;justify-items:center}
.kk-versos{display:grid;gap:4px;font:500 clamp(22px,2.6vw,32px)/1.18 var(--disp);letter-spacing:-.015em}
.kk-versos p{text-wrap:balance}
.kk-ilha-centro .kk-chips{grid-template-columns:repeat(2,minmax(0,1fr))}
.kk-ilha-centro .kk-chips li{background-color:var(--nude);border-color:var(--nude);color:var(--ink)}
.kk-ilha-centro .kk-subtitulo{color:var(--pink)}
.kk-ilha-grupo{display:grid;gap:8px;width:100%}
@media (min-width:760px){.kk-ilha-centro .kk-chips{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:1000px){
  .kk-ilha{grid-template-columns:minmax(0,3fr) minmax(0,6fr) minmax(0,3fr);gap:28px}
  .kk-ilha-lado + .kk-ilha-centro{order:0}
}

/* ---------- 10. match-your-swim ---------- */
.kk-par{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:center}
.kk-par-txt{display:grid;gap:10px;text-align:center;justify-items:center}
.kk-par-txt h3{font:700 26px/1.1 var(--disp)}
.kk-par-itens{display:grid;gap:3px;font-size:15.5px}
.kk-par-txt .nota{font:500 18px/1.25 var(--disp);margin-top:6px}
.kk-mosaico{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.kk-mosaico .kk-moldura{aspect-ratio:4/5;border-radius:16px;box-shadow:var(--sombra)}
@media (min-width:640px){.kk-mosaico{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}}
@media (min-width:1000px){.kk-par{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:34px}}

/* ---------- 11. holiday-2014 ---------- */
.kk-ferias{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:center}
.kk-ferias-foto{padding:12px 12px 16px;transform:rotate(-2deg);--cartao:#fff}
.kk-ferias-foto .kk-moldura{aspect-ratio:1}
.kk-ferias-txt{display:grid;gap:14px;text-align:center;justify-items:center}
.kk-ferias-txt p{max-width:60ch;text-wrap:pretty}
.kk-ferias-txt h3{font:700 clamp(22px,2.2vw,28px)/1.1 var(--disp);letter-spacing:-.015em;margin-top:6px}
.kk-ano{font:700 clamp(54px,8vw,104px)/.9 var(--disp);letter-spacing:-.04em;color:var(--hot);-webkit-text-stroke:0}
@media (min-width:900px){.kk-ferias{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:50px}}

/* ---------- 12. milk-crates ---------- */
.kk-caixas{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:stretch}
.kk-caixa{display:grid;gap:10px;align-content:start;padding:24px 22px;text-align:center;justify-items:center;--cartao:#fff}
.kk-caixa h3{font:700 22px/1.1 var(--disp);letter-spacing:-.01em}
.kk-caixa p{font-size:16px;text-wrap:pretty}
.kk-caixa blockquote{margin:0;display:grid;gap:4px;font-size:16px}
.kk-caixa blockquote + blockquote{margin-top:6px;padding-top:12px;border-top:2px dashed rgba(39,6,35,.35)}
.kk-caixa cite{font:700 15px/1.2 var(--corpo);font-style:normal}
.kk-data{font:700 clamp(30px,3.4vw,42px)/1 var(--disp);color:var(--ink);background-color:var(--pink);padding:8px 18px;border-radius:14px;letter-spacing:-.02em}
@media (min-width:900px){.kk-caixas{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}}

/* ---------- 13. huntington-beach ---------- */
.kk-rota{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
.kk-parada-rota{display:grid;gap:8px;align-content:start;justify-items:center;text-align:center}
.kk-parada-rota .kk-moldura{width:100%;aspect-ratio:4/3;border-radius:18px;box-shadow:var(--sombra)}
.kk-parada-rota .kk-moldura img{object-position:50% 25%}
.kk-parada-rota h3{font:700 19px/1.12 var(--disp);letter-spacing:-.01em;padding:7px 16px;border-radius:999px;background-color:var(--ink);color:var(--pale);text-wrap:balance}
.kk-parada-rota p{font-size:15.5px;line-height:1.45;text-wrap:pretty}
.kk-fio-rota{display:none}
@media (min-width:1100px){
  .kk-rota{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;padding-top:22px}
  .kk-fio-rota{display:block;position:absolute;top:0;left:10%;right:10%;height:4px;border-radius:99px;background-color:var(--ink);transform-origin:left;transition:transform 1.4s var(--ease)}
  .com-js .kk-rota:not(.in) .kk-fio-rota{transform:scaleX(0)}
  .kk-parada-rota::before{content:'';position:absolute;top:-6px;width:16px;height:16px;border-radius:50%;background-color:var(--blush);border:4px solid var(--ink);z-index:1}
}

/* ---------- 14. dongguan ---------- */
.kk-fabrica{display:grid;grid-template-columns:minmax(0,1fr);gap:26px;align-items:center}
.kk-fabrica-txt{display:grid;gap:14px;text-align:center;justify-items:center}
.kk-fabrica-txt p{max-width:62ch;text-wrap:pretty}
.kk-fabrica-foto{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:1;box-shadow:var(--sombra);border:6px solid #fff}
.kk-h2{text-align:center}
@media (min-width:900px){.kk-fabrica{grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:48px}}

/* ---------- 15. fit-bestie ---------- */
.kk-modelos{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.kk-modelo{padding:18px 18px 14px;--cartao:#fff}
.kk-modelo h3{font:700 21px/1.15 var(--disp);letter-spacing:-.01em;text-align:center;text-wrap:balance;margin-bottom:10px}
.kk-modelo dl{display:grid;gap:6px}
.kk-modelo dl div{display:grid;grid-template-columns:70px minmax(0,1fr);gap:10px;align-items:baseline;font-size:14.5px;line-height:1.3;border-top:1px solid rgba(39,6,35,.16);padding-top:6px}
.kk-modelo dt{font-weight:700}
.kk-modelo dd{font-variant-numeric:tabular-nums}
.kk-assistente{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:20px}
.kk-assistente > div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;padding:12px 16px;--cartao:var(--blush)}
.kk-assistente .kk-moldura{width:68px;height:68px}
.kk-assistente p{font:700 16px/1.25 var(--corpo)}
@media (min-width:760px){.kk-modelos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.kk-modelos{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.kk-assistente{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ---------- 16. worth-every-cent ---------- */
.kk-placar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:760px;margin:0 auto 24px}
.kk-placar div{background-color:var(--hot);color:var(--ink);border-radius:18px;padding:14px 12px;text-align:center;font:500 16px/1.25 var(--corpo)}
.kk-placar b{display:block;font:700 clamp(34px,5vw,52px)/1 var(--disp);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.kk-vozes{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.kk-voz{padding:20px;display:grid;gap:8px;align-content:start;text-align:center;justify-items:center;--cartao:var(--nude)}
.kk-voz h3{font:700 20px/1.1 var(--disp)}
.kk-voz p{font-size:15.5px;line-height:1.4;text-wrap:pretty}
.kk-voz .kk-estrelas{font-size:13px;font-weight:700;color:var(--mute)}
@media (min-width:760px){.kk-vozes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.kk-vozes{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}

/* ---------- 17. paradise-perks ---------- */
.kk-regalias{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:stretch}
.kk-bilhete-regalia{position:relative;background-color:var(--ink);color:var(--pale);border-radius:28px;padding:26px 24px 22px;display:grid;gap:12px;text-align:center;justify-items:center;align-content:center}
.kk-bilhete-regalia::before,.kk-bilhete-regalia::after{content:'';position:absolute;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background-color:var(--c)}
.kk-bilhete-regalia::before{left:-13px}
.kk-bilhete-regalia::after{right:-13px}
.kk-bilhete-regalia h3{font:700 24px/1.1 var(--disp)}
.kk-bilhete-regalia .grande{font:700 clamp(30px,3.6vw,44px)/1.05 var(--disp);letter-spacing:-.02em;color:var(--pink);text-wrap:balance}
.kk-bilhete-regalia .botao{background-color:var(--pink);border-color:var(--pink);color:var(--ink)}
.kk-adesivos{display:flex;gap:12px;justify-content:center}
.kk-adesivos .kk-cartao{width:84px;padding:8px;--cartao:var(--nude);border-radius:50%}
.kk-adesivos .kk-moldura{aspect-ratio:1;border-radius:50%;background-color:var(--nude)}
.kk-politica{padding:26px 24px;display:grid;gap:12px;align-content:center;text-align:center;justify-items:center;--cartao:#fff}
.kk-politica h3{font:700 24px/1.1 var(--disp)}
.kk-politica p{max-width:56ch;text-wrap:pretty}
@media (min-width:900px){.kk-regalias{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}}

/* ---------- 18. faq ---------- */
.kk-perguntas{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.kk-pergunta{padding:20px 22px;display:grid;gap:8px;align-content:start;text-align:center;--cartao:#fff}
.kk-pergunta h3{font:700 19px/1.18 var(--disp);letter-spacing:-.01em;text-wrap:balance}
.kk-pergunta p{font-size:15.5px;line-height:1.45;text-wrap:pretty}
@media (min-width:900px){.kk-perguntas{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}

/* ---------- 19. cta-final ---------- */
.kk-final{display:grid;gap:24px;justify-items:center;text-align:center}
.kk-final h2{font:700 clamp(28px,3.8vw,48px)/1.06 var(--disp);letter-spacing:-.022em;max-width:20em;text-wrap:balance}
.kk-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}
.kk-feed .kk-moldura{aspect-ratio:1;border-radius:18px;box-shadow:var(--sombra)}
.kk-feed-msg{display:grid;gap:4px;justify-items:center}
.kk-feed-msg p:first-child{font:700 clamp(22px,2.4vw,30px)/1.1 var(--disp)}
@media (min-width:760px){.kk-feed{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}}

/* ---------- movimento: revelação ao rolar ---------- */
.com-js .rv{transition:opacity .32s ease,transform .32s ease,clip-path .32s ease}
.com-js .rv.in{transition-duration:.9s,.9s,1s;transition-timing-function:var(--ease);transition-delay:calc(var(--i,0)*80ms)}
.com-js .rv:not(.in){opacity:0;transform:translateY(26px)}
.com-js .rv-scale:not(.in){transform:scale(.93)}
.com-js .rv-tomba:not(.in){transform:translateY(-22px) rotate(-2deg)}
.com-js .rv-wipe:not(.in){opacity:1;transform:none;clip-path:inset(0 100% 0 0)}
.com-js .rv-wipe.in{clip-path:inset(0 0 0 0)}
.com-js .rv-wipe img{transition:transform 1.2s var(--ease)}
.com-js .rv-wipe:not(.in) img{transform:scale(1.18)}
.com-js .rv-sobe:not(.in){clip-path:inset(100% 0 0 0);opacity:1;transform:none}
.com-js .rv-sobe.in{clip-path:inset(0 0 0 0)}
@media (prefers-reduced-motion:reduce){
  .com-js .rv,.com-js .rv.in{transition:opacity .4s ease}
  .com-js .rv:not(.in),.com-js .rv-scale:not(.in),.com-js .rv-tomba:not(.in){transform:none}
  .com-js .rv-wipe:not(.in),.com-js .rv-sobe:not(.in){clip-path:none;opacity:0}
  .com-js .rv-wipe:not(.in) img{transform:none}
  .com-js .kk-carga,.com-js .kk-carga-bilhete,.com-js .kk-corte.ativo{animation:none}
  .kk-trilho{animation:none;width:100%;flex-wrap:wrap}
  .kk-lote + .kk-lote{display:none}
  .kk-lote{flex-wrap:wrap;justify-content:center}
  .kk-pausa{display:none}
  .kk-trilha i,.kk-barra i,.kk-fio-rota{transition:none}
  .com-js .kk-grafico:not(.in) .kk-trilha i,.com-js .kk-grafico:not(.in) .kk-barra i,.com-js .kk-rota:not(.in) .kk-fio-rota{transform:none}
  .kk-ferias-foto{transform:none}
}
