/* TocLudi 3D, site cinematografico. Paleta amostrada do cenario final e da logomarca. */
:root{
  --canvas:#faf0d7; --canvas-deep:#f4e3bd; --panel:#fffaf0;
  --accent:#6b3fb0; --accent-hover:#58329a; --accent-muted:#d9c8f0;
  --text-primary:#35264f; --text-secondary:#584c70;
  --sky:#03a8f8; --leaf:#74ce38; --sun:#ffcb05; --berry:#fe5a99; --grape:#8a4fd0;
  --w-blue:#a8d9f7; --w-lilac:#caa7dd; --w-sun:#fbe49e; --w-pink:#fdc0cf; --w-mint:#bfe8d2;
  --whats:#1c9a52;
  --ease-out:cubic-bezier(.22,1,.36,1); --ease-soft:cubic-bezier(.45,0,.2,1);
  --f-display:"Fredoka","Nunito",ui-rounded,system-ui,sans-serif;
  --f-text:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-mono:"DM Mono",ui-monospace,Consolas,monospace;
  --f-hand:"Caveat","Comic Sans MS",cursive;
  --tshadow:0 1px 1px rgba(255,250,236,.95),0 2px 14px rgba(255,247,228,.92),0 8px 40px rgba(255,244,222,.88);
}
*,*::before,*::after{box-sizing:border-box}
html{overflow-x:hidden;overflow-x:clip;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden;overflow-x:clip;background:var(--canvas);color:var(--text-primary);font:400 17px/1.6 var(--f-text);-webkit-font-smoothing:antialiased;animation:pagein .9s var(--ease-out) both}
@keyframes pagein{from{opacity:0}to{opacity:1}}
img{max-width:100%;display:block}
a{color:var(--accent)}
h1,h2,h3{font-family:var(--f-display);font-weight:700;line-height:1.1;color:var(--text-primary)}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:10px}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--accent);color:#fff;padding:10px 16px;border-radius:12px;font-weight:700;text-decoration:none;transition:top .3s var(--ease-out)}
.skip:focus{top:12px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ico{width:1.25em;height:1.25em;flex:none}

/* botoes */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;min-height:52px;padding:0 1.6em;border:0;border-radius:999px;background:var(--accent);color:#fff;font:600 1.05rem/1 var(--f-display);letter-spacing:.01em;text-decoration:none;cursor:pointer;box-shadow:0 10px 24px -12px rgba(91,50,160,.75);transition:transform .35s var(--ease-out),background-color .3s var(--ease-soft),box-shadow .35s var(--ease-out)}
.btn:hover{background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 16px 30px -14px rgba(91,50,160,.8)}
.btn:active{transform:translateY(0)}
.btn-sm{min-height:44px;padding:0 1.2em;font-size:.95rem}
.btn-ghost{background:var(--panel);color:var(--text-primary);box-shadow:inset 0 0 0 2px var(--accent-muted)}
.btn-ghost:hover{background:#fff;color:var(--accent)}
.btn-wide{width:100%}

/* ambiente: confete sussurrando ao fundo, sempre atras de tudo */
.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.ambient i{position:absolute;width:9px;height:9px;border-radius:50%;opacity:.35;animation:deriva 72s var(--ease-soft) infinite alternate}
.ambient i:nth-child(4n+1){background:var(--berry)}.ambient i:nth-child(4n+2){background:var(--sky)}.ambient i:nth-child(4n+3){background:var(--sun)}.ambient i:nth-child(4n){background:var(--grape)}
.ambient i:nth-child(1){left:6%;top:12%;animation-delay:-4s}.ambient i:nth-child(2){left:92%;top:18%;animation-delay:-19s;width:7px;height:7px}
.ambient i:nth-child(3){left:14%;top:44%;animation-delay:-33s}.ambient i:nth-child(4){left:86%;top:52%;animation-delay:-9s;width:12px;height:12px}
.ambient i:nth-child(5){left:4%;top:78%;animation-delay:-51s;width:6px;height:6px}.ambient i:nth-child(6){left:95%;top:86%;animation-delay:-27s}
.ambient i:nth-child(7){left:24%;top:6%;animation-delay:-61s;width:6px;height:6px}.ambient i:nth-child(8){left:74%;top:4%;animation-delay:-14s}
.ambient i:nth-child(9){left:9%;top:62%;animation-delay:-40s;width:11px;height:11px}.ambient i:nth-child(10){left:90%;top:36%;animation-delay:-2s;width:6px;height:6px}
.ambient i:nth-child(11){left:18%;top:92%;animation-delay:-22s}.ambient i:nth-child(12){left:80%;top:70%;animation-delay:-47s;width:8px;height:8px}
.ambient i:nth-child(13){left:2%;top:30%;animation-delay:-35s;width:7px;height:7px}.ambient i:nth-child(14){left:97%;top:64%;animation-delay:-56s}
@keyframes deriva{0%{transform:translate(0,0)}50%{transform:translate(26px,-40px)}100%{transform:translate(-18px,30px)}}

/* navegacao */
.nav{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;gap:1.5rem;padding:14px clamp(16px,4vw,48px);transition:background-color .45s var(--ease-soft),box-shadow .45s var(--ease-soft),padding .45s var(--ease-soft)}
.nav.solid{background:rgba(250,240,215,.93);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 26px -20px rgba(53,38,79,.7);padding-block:8px}
.nav-logo{display:block;opacity:0;transform:translateY(-6px);transition:opacity .45s var(--ease-soft),transform .45s var(--ease-out)}
.nav.solid .nav-logo{opacity:1;transform:none}
.nav-logo img{height:46px;width:auto}
.nav ul{display:flex;gap:1.6rem;list-style:none;margin:0 0 0 auto;padding:0}
.nav ul a{position:relative;display:inline-flex;align-items:center;color:var(--text-primary);text-decoration:none;font-weight:700;font-size:.95rem}
.nav ul a::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:3px;border-radius:3px;background:var(--berry);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease-out)}
.nav ul a:hover::after{transform:scaleX(1)}
.nav ul a[aria-current="page"]::after{transform:scaleX(1)}
.nav-menu{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:46px;height:46px;padding:0;border:0;border-radius:14px;background:rgba(255,255,255,.88);box-shadow:0 6px 18px -12px rgba(53,38,79,.7);cursor:pointer}
.nav-menu i{display:block;width:22px;height:3px;border-radius:3px;background:var(--text-primary);transition:transform .3s var(--ease-out),opacity .2s}
.nav-menu[aria-expanded="true"] i:nth-child(1){transform:translateY(8px) rotate(45deg)}
.nav-menu[aria-expanded="true"] i:nth-child(2){opacity:0}
.nav-menu[aria-expanded="true"] i:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
@media (max-width:1100px){
  .nav nav{order:3}
  .nav .btn-sm{margin-left:auto}
  .nav-menu{display:flex}
  .nav ul{display:none}
  .nav ul.aberto{display:flex;flex-direction:column;gap:0;position:absolute;top:calc(100% + 8px);right:clamp(16px,4vw,48px);width:min(290px,calc(100vw - 32px));margin:0;padding:10px;border-radius:20px;background:rgba(250,240,215,.98);box-shadow:0 18px 40px -18px rgba(53,38,79,.75)}
  .nav ul.aberto a{display:flex;width:100%;padding:12px 14px;border-radius:12px;font-size:1.05rem}
  .nav ul.aberto a::after{display:none}
  .nav ul.aberto a:hover,.nav ul.aberto a[aria-current="page"]{background:rgba(106,78,156,.1)}
}

/* hero de scrub */
.hero{position:relative;height:620vh}
.stage{position:sticky;top:0;height:100vh;overflow:hidden}
.media,.poster,.poster-end,.scrim{position:absolute;inset:0}
.poster,.poster-end{background:center/cover no-repeat}
.poster{background-color:var(--canvas)}
.poster-end{opacity:0}
#hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:translateZ(0);will-change:transform;transition:opacity .7s var(--ease-soft)}
.stage.video-ready #hero-video{opacity:1}
.stage.video-failed #hero-video{display:none}
.scrim{pointer-events:none;background:radial-gradient(ellipse 120% 90% at 50% 48%,rgba(250,240,215,0) 42%,rgba(250,240,215,.3) 100%)}
.band{position:absolute;left:50%;top:48%;width:min(92vw,900px);transform:translate(-50%,-50%);text-align:center;opacity:0;pointer-events:none}
.band.live{pointer-events:auto}
.band::before{content:"";position:absolute;inset:-20% -8%;z-index:-1;pointer-events:none;opacity:calc(.3 + .7*var(--k,1));background:radial-gradient(ellipse 62% 58% at 50% 50%,rgba(252,244,224,.84) 0%,rgba(252,244,224,.58) 48%,rgba(252,244,224,0) 76%)}
.band h1,.band .band-title{font:700 clamp(2.4rem,5.6vw,4.8rem)/1.06 var(--f-display);letter-spacing:-.01em;color:var(--text-primary);text-shadow:var(--tshadow);margin:0 0 .35em}
.band-sub{font:700 clamp(1.05rem,1.7vw,1.35rem)/1.5 var(--f-text);color:var(--text-primary);text-shadow:var(--tshadow);margin:0 auto;max-width:34ch;--ks:clamp(0,(var(--k,0) - .45)*3,1);opacity:var(--ks);transform:translateY(calc((1 - var(--ks))*10px))}
.band .btn{text-shadow:none}
.band-final{top:47%}
.final-logo{--kl:clamp(0,var(--k,0)*3,1);width:min(44vw,400px);height:auto;margin:0 auto .4rem;opacity:var(--kl);transform:translateY(calc((1 - var(--kl))*18px)) scale(calc(.92 + .08*var(--kl)));filter:drop-shadow(0 12px 26px rgba(107,63,176,.2))}
.band-final .band-title{font-size:clamp(2rem,4.4vw,3.8rem)}
.band-final .band-sub{--ks:clamp(0,(var(--k,0) - .62)*4,1)}
.band-cta{--kb:clamp(0,(var(--k,0) - .78)*5,1);opacity:var(--kb);transform:translateY(calc((1 - var(--kb))*12px));margin-top:1.4rem}

/* texto dividido e as entradas (so transform e opacity, guiadas por --k) */
.split .w{display:inline-block;white-space:nowrap}
.split .c{display:inline-block}
[data-fx=drift] .w{--kc:clamp(0,(var(--k,0) - var(--th,0))*2.8,1);opacity:var(--kc);transform:translateY(calc((1 - var(--kc))*-26px))}
[data-fx=scatter] .c,[data-fx=grid] .c{--kc:clamp(0,(var(--k,0) - var(--th,0))*2.6,1);opacity:var(--kc);transform:translate(calc((1 - var(--kc))*var(--jx,0px)),calc((1 - var(--kc))*var(--jy,0px))) rotate(calc((1 - var(--kc))*var(--jr,0deg)))}
[data-fx=rise] .w{--kc:clamp(0,(var(--k,0) - var(--th,0))*3,1);opacity:var(--kc);transform:translateY(calc((1 - var(--kc))*24px))}

.cue{position:absolute;left:50%;bottom:26px;margin:0;display:flex;flex-direction:column;align-items:center;gap:2px;transform:translateX(-50%);font:500 .8rem/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-primary);background:rgba(252,244,224,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:9px 14px 6px;border-radius:14px;transition:opacity .5s var(--ease-soft),transform .5s var(--ease-out)}
.cue svg{width:22px;height:22px;animation:quica 2.4s var(--ease-soft) infinite}
.cue.off{opacity:0;transform:translate(-50%,10px)}
@keyframes quica{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
.ring{position:absolute;right:24px;bottom:24px;width:44px;height:44px;color:var(--accent);transform:rotate(-90deg);transition:opacity .6s var(--ease-soft)}
.stage.video-ready .ring,.ring.off{opacity:0}
@media (max-height:560px){.cue{display:none}}

/* hero estatico: celulares, tablets em pe, celular deitado e movimento reduzido */
.hero-static{display:none;position:relative;min-height:100vh;min-height:100svh;place-items:center;padding:96px 20px 56px;text-align:center;background:url(hero-ending.jpg) center/cover no-repeat var(--canvas)}
.hero-static::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 72% 48% at 50% 50%,rgba(252,244,224,.9),rgba(252,244,224,.5) 62%,rgba(252,244,224,0) 88%)}
.hs{position:relative;max-width:560px;animation:subir 1s var(--ease-out) both}
.hs img{width:min(70vw,360px);height:auto;margin:0 auto}
.hs h1{font-size:clamp(2.1rem,8vw,3.4rem);margin:.45em 0 .3em;text-shadow:var(--tshadow)}
.hs p{font-weight:700;font-size:1.1rem;margin:0 auto 1.5rem;max-width:30ch;text-shadow:var(--tshadow)}
@keyframes subir{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media (orientation:portrait){.hero-static{background-image:url(hero-mobile.jpg)}}
@media (max-width: 720px),(orientation: portrait) and (max-width: 1024px),(orientation: portrait) and (pointer: coarse),(orientation: landscape) and (pointer: coarse) and (max-height: 560px),(prefers-reduced-motion: reduce){
  .hero{height:auto}
  .stage{display:none}
  .hero-static{display:grid}
}

/* estrutura das secoes */
main{position:relative;display:block}
main:focus{outline:none}
#nav-sentinel{position:absolute;top:0;left:0;width:1px;height:1px}
.fio{position:absolute;left:0;top:0;width:100%;z-index:0;pointer-events:none;overflow:visible}
#fio-heart{opacity:0;transform:scale(.4);transform-origin:14px 14px;transition:opacity .5s var(--ease-soft),transform .7s cubic-bezier(.34,1.56,.64,1)}
#fio-heart.lit{opacity:1;transform:scale(1)}
.sec{position:relative;padding:clamp(80px,11vw,150px) clamp(18px,5vw,64px)}
.wrap{position:relative;z-index:1;max-width:1120px;margin:0 auto}
.narrow{max-width:760px}
.kicker{font:500 .82rem/1.3 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 .9rem}
.t{font-size:clamp(2rem,4.4vw,3.4rem);margin:0 0 .5rem;max-width:18ch}
.lede{font-size:1.15rem;color:var(--text-secondary);margin:0 0 1.6rem;max-width:40ch}
.hand{font:600 1.7rem/1.2 var(--f-hand);color:var(--berry);margin:.2rem 0 0;transform:rotate(-2deg);display:inline-block}
.head-c{text-align:center;margin-bottom:clamp(36px,5vw,60px)}
.head-c .t{margin-inline:auto}
.head-l{margin-bottom:clamp(30px,4vw,48px)}

/* entradas coreografadas (IntersectionObserver adiciona .in e depois .done) */
.reveal .r{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease-out),transform .9s var(--ease-out)}
.reveal.in .r{opacity:1;transform:none}
.reveal.in .r:nth-child(2){transition-delay:.08s}.reveal.in .r:nth-child(3){transition-delay:.16s}.reveal.in .r:nth-child(4){transition-delay:.24s}
.reveal.in .r:nth-child(5){transition-delay:.32s}.reveal.in .r:nth-child(6){transition-delay:.4s}.reveal.in .r:nth-child(7){transition-delay:.48s}
.reveal.in .r:nth-child(8){transition-delay:.56s}.reveal.in .r:nth-child(n+9){transition-delay:.64s}
.reveal.in.done .r,.reveal.in.done .r:nth-child(n){transition-delay:0s}

/* S1 categorias */
.cats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,2vw,22px)}
.cat{height:100%;background:var(--panel);border-radius:26px;padding:26px 22px 24px;box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 18px 40px -30px rgba(53,38,79,.5);transition:transform .45s var(--ease-out),box-shadow .45s var(--ease-out)}
.cat:hover{transform:translateY(-6px) rotate(-.6deg);box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 26px 44px -28px rgba(53,38,79,.55)}
.cat h3{font-size:1.25rem;margin:.9rem 0 .35rem}
.cat p{margin:0;color:var(--text-secondary);font-size:.98rem;line-height:1.45}
.cat-ico,.step-ico,.tr-ico{display:grid;place-items:center;width:62px;height:62px;border-radius:22px;color:var(--text-primary)}
.cat-ico svg,.step-ico svg,.tr-ico svg{width:34px;height:34px}
.c1,.c5{background:var(--w-sun)}.c2,.c6{background:var(--w-blue)}.c3,.c7{background:var(--w-pink)}.c4,.c8{background:var(--w-lilac)}
.criacoes.inview .cats li:nth-child(odd) .cat-ico{animation:balanca 5s var(--ease-soft) infinite;animation-delay:-1.3s}
@keyframes balanca{0%,100%{transform:rotate(0)}50%{transform:rotate(-5deg) translateY(-2px)}}
@media (max-width:960px){.cats{grid-template-columns:repeat(2,1fr)}}

/* galeria: colunas, esqueleto diferente das categorias */
.galeria{background:linear-gradient(180deg,rgba(253,192,207,0) 0%,rgba(253,192,207,.22) 40%,rgba(168,217,247,.2) 100%)}
.filtros{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 clamp(22px,3vw,34px)}
.filtro{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;border:2px solid var(--accent-muted);background:var(--panel);color:var(--text-primary);font:600 .98rem/1 var(--f-display);cursor:pointer;transition:background-color .3s var(--ease-soft),color .3s var(--ease-soft),border-color .3s var(--ease-soft),transform .3s var(--ease-out)}
.filtro:hover{transform:translateY(-2px);border-color:var(--accent)}
.filtro[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}
.grid-fotos figure[hidden]{display:none}
.grid-fotos figure.aparece{animation:aparece .5s var(--ease-out) both}
@keyframes aparece{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.grid-fotos{columns:3 260px;column-gap:clamp(14px,2vw,22px)}
.grid-fotos figure{break-inside:avoid;margin:0 0 clamp(14px,2vw,22px);background:var(--panel);border-radius:24px;padding:10px 10px 12px;box-shadow:0 18px 40px -30px rgba(53,38,79,.55)}
.grid-fotos img{width:100%;height:auto;border-radius:16px;background:var(--canvas-deep)}
.grid-fotos figcaption{font:600 .95rem/1.3 var(--f-text);padding:10px 6px 0;color:var(--text-primary)}
.ver-mais{display:flex;margin:8px auto 0}
.ver-mais[hidden]{display:none}

/* Vitrine pronta entrega (preenchida pela planilha) */
.vitrine{background:linear-gradient(180deg,rgba(191,232,210,0) 0%,rgba(191,232,210,.3) 40%,rgba(191,232,210,0) 100%)}
.vit-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin-bottom:clamp(24px,3vw,36px)}
.vit-head .lede{margin-bottom:0}
.vit-quando{display:flex;align-items:center;gap:8px;margin:0;font:500 .82rem/1.3 var(--f-mono);color:var(--text-secondary)}
.vit-quando::before{content:"";width:10px;height:10px;border-radius:50%;background:#2fbf5b;animation:aoVivo 2.4s var(--ease-soft) infinite;animation-delay:-.8s}
@keyframes aoVivo{0%{box-shadow:0 0 0 0 rgba(47,191,91,.55)}70%,100%{box-shadow:0 0 0 10px rgba(47,191,91,0)}}
.vit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:clamp(14px,2vw,22px)}
.vit-card{display:flex;flex-direction:column;background:var(--panel);border-radius:24px;overflow:hidden;box-shadow:0 18px 40px -30px rgba(53,38,79,.55);transition:transform .4s var(--ease-out)}
.vit-card:hover{transform:translateY(-4px)}
.vit-foto{position:relative;aspect-ratio:4/5;background:var(--canvas-deep)}
.vit-foto img{width:100%;height:100%;object-fit:cover}
.vit-selo{position:absolute;left:12px;top:12px;padding:7px 12px;border-radius:999px;font:700 .8rem/1 var(--f-display);background:#177a3d;color:#fff}
.vit-esgotou .vit-selo{background:var(--text-primary)}
.vit-esgotou .vit-foto img{filter:grayscale(.85);opacity:.7}
.vit-corpo{display:grid;align-content:start;gap:6px;flex:1;padding:16px 16px 18px}
.vit-corpo h3{font-size:1.1rem;margin:0}
.vit-cat{margin:0;font:500 .75rem/1.2 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.vit-preco{margin:0;font:700 1.15rem/1 var(--f-display)}
.vit-corpo .btn{justify-self:start;margin-top:8px}

/* Monte seu kit */
.kit{background:linear-gradient(180deg,rgba(168,217,247,0) 0%,rgba(168,217,247,.22) 35%,rgba(202,167,221,.2) 100%)}
.head-c .lede{margin-inline:auto}
.kit-app{display:grid;grid-template-columns:1.35fr .9fr;gap:clamp(22px,4vw,48px);align-items:start}
.kit-app>.kit-passo{grid-column:1}
.kit-rot{font:700 1.2rem/1.2 var(--f-display);margin:0 0 16px}
.kit-passo+.kit-passo{margin-top:8px}
.kit-tamanhos{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:28px}
.kit-tam{position:relative;display:grid;justify-items:center;align-content:start;gap:2px;padding:26px 8px 16px;border-radius:24px;border:2px solid transparent;background:var(--panel);color:var(--text-primary);font-family:var(--f-text);cursor:pointer;box-shadow:0 14px 30px -24px rgba(53,38,79,.55);transition:transform .35s var(--ease-out),border-color .3s var(--ease-soft),box-shadow .35s var(--ease-out)}
.kit-tam:hover{transform:translateY(-3px)}
.kit-tam[aria-checked=true]{border-color:var(--accent);box-shadow:0 0 0 4px rgba(107,63,176,.15),0 18px 36px -24px rgba(53,38,79,.6)}
.kit-tam-top{background:linear-gradient(160deg,#fff7df,#fde8f0)}
.kit-selo{position:absolute;top:-11px;left:50%;transform:translateX(-50%);width:max-content;max-width:94%;padding:6px 10px;border-radius:999px;background:#c92f69;color:#fff;font:700 .78rem/1.1 var(--f-display);text-align:center}
.kit-selo-leve{background:var(--w-lilac);color:var(--text-primary)}
.kit-tam-qtd{font:700 2.4rem/1 var(--f-display)}
.kit-tam-un{font-size:.85rem;color:var(--text-secondary);margin-bottom:6px}
.kit-tam-preco{font:700 1.1rem/1.1 var(--f-display);color:var(--accent)}
.kit-tam-cada{font:500 .78rem/1.3 var(--f-mono);color:var(--text-secondary)}
.kit-extra{margin-top:6px;font-size:.78rem;font-weight:700;line-height:1.25;text-align:center;color:#177a3d}
.kit-itens{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.kit-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:20px;border:2px solid transparent;background:var(--panel);box-shadow:0 12px 26px -22px rgba(53,38,79,.5);transition:border-color .3s var(--ease-soft)}
.kit-item.tem{border-color:var(--accent-muted)}
.kit-emoji{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:16px;background:var(--c);font-size:1.6rem}
.kit-nome{flex:1;font-weight:700;font-size:.98rem;line-height:1.25}
.kit-step{display:flex;align-items:center;gap:4px}
.kit-bt{width:44px;height:44px;border:0;border-radius:50%;background:var(--canvas-deep);color:var(--text-primary);font:700 1.3rem/1 var(--f-display);cursor:pointer;transition:background-color .25s var(--ease-soft),transform .25s var(--ease-out)}
.kit-bt:hover:not(:disabled){background:var(--accent-muted);transform:scale(1.06)}
.kit-bt:disabled{opacity:.35;cursor:not-allowed}
.kit-n{min-width:26px;text-align:center;font:700 1.1rem/1 var(--f-display)}
.kit-n.bump{animation:bump .35s var(--ease-out)}
@keyframes bump{50%{transform:scale(1.35)}}
.kit-resumo{grid-column:2;grid-row:1 / span 2;position:sticky;top:96px;padding:26px;border-radius:30px;background:var(--panel);box-shadow:0 30px 60px -40px rgba(53,38,79,.65)}
.kit-prog-txt{margin:0 0 10px;font-size:1.05rem}
.kit-prog-txt strong{font:700 1.6rem/1 var(--f-display);color:var(--accent);margin-right:4px}
.kit-barra{height:14px;border-radius:999px;background:var(--canvas-deep);overflow:hidden}
.kit-barra span{display:block;height:100%;background:linear-gradient(90deg,var(--sky),var(--grape),var(--berry));transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease-out)}
.kit-barra.cheia span{background:linear-gradient(90deg,var(--leaf),#2f9e4f)}
.kit-barra.passou span{background:#c92f69}
.kit-dica{margin:8px 0 16px;font-size:.95rem;color:var(--text-secondary)}
.kit-acoes{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}
.kit-limpar{min-height:44px;border:0;background:none;color:var(--text-secondary);font:600 .95rem var(--f-text);text-decoration:underline;cursor:pointer}
.kit-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:4px;padding-top:14px;border-top:2px dashed var(--accent-muted)}
.kit-total strong{font:700 1.8rem/1 var(--f-display)}
.kit-extra-resumo{min-height:1.4em;margin:.5rem 0 1rem;font-weight:700;color:#177a3d}
.kit-pedir.off{opacity:.45;pointer-events:none;box-shadow:none}
.kit-sem-js{grid-column:1 / -1;text-align:center;font-weight:700}
.kit-aviso{margin:14px 0 0;font-size:.8rem;line-height:1.4;color:var(--text-secondary)}

/* Vitrine do kit na pagina inicial (leva para kit.html) */
.kit-teaser{display:grid;justify-items:center;gap:24px;text-align:center}
.kit-teaser-fotos{list-style:none;margin:0;padding:0;width:100%;display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.kit-teaser-fotos li{display:grid;place-items:center;aspect-ratio:1;border-radius:24px;background:var(--panel);box-shadow:0 14px 30px -24px rgba(53,38,79,.55);overflow:hidden;transform:rotate(-3deg)}
.kit-teaser-fotos li:nth-child(even){transform:rotate(3deg) translateY(10px)}
.kit-teaser-fotos img{width:100%;height:100%;object-fit:contain}
.kit-teaser-precos{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.kit-teaser-precos li{padding:10px 16px;border-radius:999px;background:var(--panel);font-weight:700;box-shadow:0 10px 24px -20px rgba(53,38,79,.6)}
.kit-teaser-precos b{font-family:var(--f-display);color:var(--accent)}
.kit-teaser-sub{margin:0;color:var(--text-secondary)}
@media (max-width:720px){.kit-teaser-fotos{grid-template-columns:repeat(3,1fr)}}

/* Onde encontrar (parceiros.html) */
.pc-busca{margin-top:22px;max-width:420px}
.pc-busca[hidden]{display:none}
.pc-busca input{width:100%}
.pc-lista{padding:20px clamp(18px,5vw,64px) 40px}
.pc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}
.pc-card{display:grid;align-content:start;gap:6px;padding:22px;border-radius:26px;background:var(--panel);box-shadow:0 18px 40px -30px rgba(53,38,79,.55)}
.pc-card[hidden]{display:none}
.pc-card h3{margin:2px 0 0;font-size:1.3rem}
.pc-card p{margin:0}
.pc-card .btn{justify-self:start;margin-top:10px}
.pc-tipo{justify-self:start;padding:5px 11px;border-radius:999px;background:var(--w-lilac);font:700 .8rem/1 var(--f-display)}
.pc-lugar{font-weight:700;color:var(--accent)}
.pc-end,.pc-oferta{color:var(--text-secondary)}
.pc-vazio{display:grid;justify-items:center;gap:14px;padding:34px 22px;border-radius:30px;background:var(--panel);text-align:center}
.pc-vazio[hidden],.pc-nada[hidden]{display:none}
.pc-vazio p{margin:0;max-width:44ch}
.pc-nada{text-align:center;font-weight:700;color:var(--text-secondary)}
.pc-seja{padding:clamp(60px,9vw,110px) clamp(18px,5vw,64px);background:linear-gradient(180deg,rgba(202,167,221,0) 0%,rgba(202,167,221,.22) 50%,rgba(253,192,207,.18) 100%)}
.pc-passos{list-style:none;margin:0 0 30px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pc-passos li{padding:24px;border-radius:26px;background:var(--panel);box-shadow:0 18px 40px -30px rgba(53,38,79,.55)}
.pc-passos h3{margin:10px 0 6px;font-size:1.2rem}
.pc-passos p{margin:0;color:var(--text-secondary)}
.pc-n{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--accent);color:#fff;font:700 1.2rem/1 var(--f-display)}
.pc-acoes{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
@media (max-width:800px){.pc-passos{grid-template-columns:1fr}}

/* Área dos parceiros (parceiro/) */
.pa-topo{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px clamp(16px,4vw,40px);background:rgba(250,240,215,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 26px -20px rgba(53,38,79,.7)}
.pa-logo img{height:44px;width:auto}
.pa-conta{display:flex;align-items:center;gap:10px}
.pa-quem{font-weight:700;font-size:.95rem}
.pa-main{padding:26px clamp(16px,4vw,40px) 80px}
.pa-main .t{max-width:none}
.pa-entrar{max-width:460px;margin:5vh auto 0}
.pa-card{margin:0 0 22px;padding:clamp(18px,3vw,28px);border-radius:26px;background:var(--panel);box-shadow:0 24px 50px -36px rgba(53,38,79,.6)}
.pa-card h2{margin:0 0 14px;font-size:1.35rem}
.pa-sec{margin-top:22px}
.pa-h2{font-size:1.35rem;margin:0 0 14px}
.pa-aviso{padding:14px 18px;border-radius:16px;background:#e5f5dc;color:#1f5e2c;font-weight:700}
.pa-erro{padding:14px 18px;border-radius:16px;background:#fde3ea;color:#8d1e45;font-weight:700}
.pa-mini{font-size:.9rem;color:var(--text-secondary)}
.pa-vazio{padding:22px;border-radius:22px;background:var(--panel);color:var(--text-secondary);font-weight:700}
.pa-numeros{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:18px 0 8px}
.pa-numero{padding:18px;border-radius:22px;background:var(--panel);box-shadow:0 18px 40px -32px rgba(53,38,79,.55)}
.pa-numero small{display:block;margin-bottom:4px;font:500 .74rem/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}
.pa-numero strong{font:700 1.6rem/1.2 var(--f-display)}
.pa-pontos{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.pa-ponto{display:grid;align-content:start;gap:6px;padding:18px;border:2px solid transparent;border-radius:22px;background:var(--panel);color:var(--text-primary);text-decoration:none;box-shadow:0 18px 40px -32px rgba(53,38,79,.55);transition:border-color .25s var(--ease-soft),transform .25s var(--ease-out)}
.pa-ponto:hover{border-color:var(--accent-muted);transform:translateY(-2px)}
.pa-ponto strong{font:700 1.2rem/1.2 var(--f-display)}
.pa-tag{display:inline-block;justify-self:start;padding:6px 11px;border-radius:999px;background:var(--canvas-deep);font:700 .8rem/1 var(--f-display)}
.pa-tag.atrasada{background:#fde3ea;color:#8d1e45}
.pa-tag.hoje,.pa-tag.logo{background:#fff1c9;color:#7a5600}
.pa-tag.ok{background:#e5f5dc;color:#1f5e2c}
.pa-deve{font-weight:700;color:#177a3d}
.pa-badge{justify-self:start;padding:4px 10px;border-radius:999px;background:var(--berry);color:#fff;font:700 .78rem/1.2 var(--f-display)}
.pa-grade2{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.pa-grade2.pa-sec{gap:18px}
.pa-ranking,.pa-sugestoes,.pa-logins,.pa-itens{margin:0;padding:0;list-style:none}
.pa-ranking li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #eadfc8}
.pa-sugestoes li,.pa-logins li{padding:10px 0;border-bottom:1px solid #eadfc8}
.pa-sugestoes li.nova{padding-left:12px;border-left:4px solid var(--berry)}
.pa-summary{cursor:pointer;font:700 1.15rem/1.3 var(--f-display);color:var(--text-primary)}
details[open]>.pa-summary{margin-bottom:16px}
.pa-mais{margin-top:18px}
.pa-tabela-wrap{overflow-x:auto;margin:0 0 14px}
.pa-tabela{width:100%;border-collapse:collapse;font-size:.95rem}
.pa-tabela th,.pa-tabela td{padding:10px 8px;border-bottom:1px solid #eadfc8;text-align:left;white-space:nowrap;vertical-align:middle}
.pa-tabela th{font:500 .75rem/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}
.pa-tabela .num{text-align:right}
.pa-tabela input{width:84px;min-height:44px;padding:6px 10px;border:2px solid #e3d3b3;border-radius:12px;background:#fffdf7;font:700 1rem var(--f-text);text-align:right}
.pa-linhas .pa-linha{display:grid;grid-template-columns:2fr 1fr .8fr;gap:8px;margin-bottom:8px}
.pa-linha input,.pa-inline input{min-height:48px;padding:10px 12px;border:2px solid #e3d3b3;border-radius:14px;background:#fffdf7;font:600 1rem var(--f-text);color:var(--text-primary);width:100%}
.pa-linha input:focus,.pa-inline input:focus,.pa-tabela input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(107,63,176,.18)}
.pa-data{max-width:240px}
.pa-acoes{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px}
.pa-resumo{max-width:420px;margin:0 0 16px;padding:14px 18px;border-radius:18px;background:var(--canvas)}
.pa-conta-linha{display:flex;justify-content:space-between;gap:12px;margin:0;padding:5px 0}
.pa-total{font:700 1.15rem/1.3 var(--f-display);color:var(--accent)}
.pa-check{display:flex;align-items:center;gap:10px;margin:0 0 16px;font-weight:700}
.pa-check input{width:22px;height:22px;accent-color:var(--accent)}
.pa-inline{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;margin:6px 8px 0 0}
.pa-inline input{width:auto;min-width:150px}
.pa-item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #eadfc8}
.pa-item strong{display:block;font:700 1.05rem/1.3 var(--f-display)}
.pa-contador{display:flex;align-items:center;gap:8px}
.pa-contador form{margin:0}
.pa-contador output{min-width:30px;text-align:center;font:700 1.3rem/1 var(--f-display)}
@media (max-width:700px){.pa-grade2{grid-template-columns:1fr}.pa-linhas .pa-linha{grid-template-columns:1fr 1fr}.pa-linha input[name="produto[]"]{grid-column:1 / -1}.pa-quem{display:none}}

/* Criador de chaveiro (chaveiro.html) */
.kc-mais{margin:-.6rem 0 1.3rem;font-weight:700;color:var(--text-secondary)}
.cc-topo{padding:clamp(110px,13vw,150px) clamp(18px,5vw,64px) 8px}
.cc-topo .t{max-width:none}
.cc-app{padding:18px clamp(18px,5vw,64px) 90px}
.cc-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(24px,4vw,56px);align-items:start}
.cc-previa{position:sticky;top:92px}
.cc-palco{position:relative;display:grid;place-items:center;aspect-ratio:10/7;border-radius:36px;overflow:hidden;background:radial-gradient(circle at 18% 18%,var(--w-sun) 0 14%,transparent 15%),radial-gradient(circle at 88% 82%,var(--w-lilac) 0 20%,transparent 21%),radial-gradient(circle at 8% 92%,var(--w-blue) 0 12%,transparent 13%),var(--panel);box-shadow:0 30px 60px -40px rgba(53,38,79,.6)}
#cc-svg{display:block;width:100%;height:100%}
#cc-canvas{display:block;width:auto;height:92%;aspect-ratio:1;max-width:100%}
#cc-svg[hidden],#cc-canvas[hidden]{display:none}
.cc-bico{position:absolute;left:10%;right:10%;height:6px;border-radius:3px;background:var(--text-primary);box-shadow:0 0 12px rgba(254,90,153,.6)}
.cc-medida,.cc-camada{position:absolute;bottom:14px;margin:0;padding:8px 10px;border-radius:10px;background:rgba(250,240,215,.88);font:500 .8rem/1 var(--f-mono);letter-spacing:.05em;color:var(--text-secondary)}
.cc-medida{left:14px}
.cc-camada{right:14px}
.cc-previa-acoes{display:flex;justify-content:center;margin-top:14px}
.cc-nota{margin:10px 0 0;text-align:center;font-size:.85rem;color:var(--text-secondary)}
.cc-abas{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 22px;padding:6px;border-radius:999px;background:var(--canvas-deep)}
.cc-abas button{min-height:48px;border:0;border-radius:999px;background:none;color:var(--text-secondary);font:700 1rem/1 var(--f-display);cursor:pointer;transition:background-color .3s var(--ease-soft),color .3s var(--ease-soft)}
.cc-abas button[aria-selected=true]{background:var(--panel);color:var(--accent);box-shadow:0 8px 20px -14px rgba(53,38,79,.6)}
.cc-grupo{margin:0 0 20px;padding:0;border:0;min-width:0}
.cc-grupo[hidden]{display:none}
.cc-grupo legend{margin-bottom:10px;padding:0;font-weight:700}
.cc-opcoes{display:flex;flex-wrap:wrap;gap:8px}
.cc-op{min-height:44px;padding:0 14px;border:2px solid var(--accent-muted);border-radius:14px;background:var(--panel);color:var(--text-primary);font:600 .95rem/1.1 var(--f-text);cursor:pointer;transition:border-color .25s var(--ease-soft),background-color .25s var(--ease-soft),transform .25s var(--ease-out)}
.cc-op:hover{transform:translateY(-2px);border-color:var(--accent)}
.cc-op[aria-pressed=true]{border-color:var(--accent);background:#f3ecfc;color:var(--accent)}
.cc-fonte{min-width:104px;min-height:54px;font-size:1.3rem}
.cc-forma{display:grid;justify-items:center;gap:4px;min-width:82px;padding:8px 10px;font-size:.82rem}
.cc-forma svg{width:34px;height:34px}
.cc-cores{display:flex;flex-wrap:wrap;gap:10px}
.cc-cores .sw input,.cc-cores .sw span{width:38px;height:38px}
.cc-upload{position:relative;display:grid;justify-items:center;gap:6px;margin:0 0 20px;padding:24px 18px;border:2px dashed var(--accent-muted);border-radius:22px;background:var(--panel);text-align:center;cursor:pointer}
.cc-upload:hover,.cc-upload:focus-within{border-color:var(--accent)}
.cc-upload:focus-within{outline:3px solid var(--accent);outline-offset:3px}
.cc-upload input{position:absolute;width:1px;height:1px;opacity:0}
.cc-upload span{font:700 1.05rem/1.2 var(--f-display);color:var(--accent);overflow-wrap:anywhere}
.cc-upload small{color:var(--text-secondary)}
.cc-cores-img{margin:-6px 0 18px;font-size:.92rem;color:var(--text-secondary)}
.cc-qtd{display:flex;align-items:center;gap:10px;margin:0 0 12px}
.cc-qtd-rot{margin-right:6px;font-weight:700}
.cc-qtd output{min-width:36px;text-align:center;font:700 1.3rem/1 var(--f-display)}
.cc-dica{margin:0 0 16px;font-size:.9rem;color:var(--text-secondary)}
.cc-pedir.off{opacity:.45;pointer-events:none;box-shadow:none}
.cc-aviso{min-height:1.4em;margin:10px 0 0;font-size:.9rem;font-weight:700;color:var(--text-secondary)}
@media (max-width:900px){.cc-grid{grid-template-columns:1fr}.cc-previa{position:static}}

/* Pagina Monte seu kit (kit.html) */
.kp-body{padding-bottom:170px}
.kp-topo{padding:clamp(110px,13vw,150px) clamp(18px,5vw,64px) 30px}
.kp-voltar{display:inline-flex;align-items:center;gap:.3em;min-height:44px;margin-bottom:10px;font-weight:700;text-decoration:none}
.kp-topo .t{max-width:none}
.kp-topo .kit-tamanhos{margin:34px 0 8px}
.kp-abas{position:sticky;top:62px;z-index:20;background:rgba(250,240,215,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 24px -22px rgba(53,38,79,.6)}
.kp-abas-in{display:flex;align-items:center;gap:10px;max-width:1248px;margin:0 auto;padding:12px clamp(18px,5vw,64px);overflow-x:auto;scrollbar-width:none}
.kp-abas-in::-webkit-scrollbar{display:none}
.kp-abas-lista{display:flex;gap:10px}
.kp-busca{flex:none;display:flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:999px;background:var(--panel);box-shadow:inset 0 0 0 2px var(--accent-muted);color:var(--text-secondary)}
.kp-busca input{width:9.5rem;border:0;background:none;outline:none;color:var(--text-primary);font:600 .95rem var(--f-text)}
.kp-aba{flex:none;display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;background:var(--c);color:var(--text-primary);font:700 .92rem/1 var(--f-display);text-decoration:none;box-shadow:inset 0 0 0 2px rgba(53,38,79,.12);transition:transform .25s var(--ease-out)}
.kp-aba:hover{transform:translateY(-2px)}
.kp-lista{padding:26px clamp(18px,5vw,64px) 10px}
.kp-col{scroll-margin-top:140px;margin-bottom:26px;padding:clamp(18px,3vw,34px);border-radius:34px;background:var(--panel);background:color-mix(in srgb,var(--c) 34%,var(--panel))}
.kp-col[hidden],.kp-card[hidden]{display:none}
.kp-col-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 12px;margin-bottom:18px}
.kp-col-head h2{margin:0;font-size:clamp(1.5rem,3vw,2.1rem)}
.kp-col-head span{font:500 .82rem/1.2 var(--f-mono);color:var(--text-secondary)}
.kp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.kp-card{display:grid;align-content:start;gap:8px;padding:10px 10px 12px;border:2px solid transparent;border-radius:24px;background:var(--panel);box-shadow:0 14px 30px -24px rgba(53,38,79,.55);transition:border-color .3s var(--ease-soft)}
.kp-card.tem{border-color:var(--accent)}
.kp-foto{display:grid;place-items:center;aspect-ratio:1;border-radius:18px;background:#f4f1f7;overflow:hidden}
.kp-foto img{width:100%;height:100%;object-fit:contain;transform-origin:50% 88%}
.kp-foto svg{width:78%;height:auto}
.kp-card:hover .kp-foto img{animation:mexe .9s var(--ease-soft)}
@keyframes mexe{0%,100%{transform:rotate(0)}25%{transform:rotate(-6deg)}50%{transform:rotate(5deg)}75%{transform:rotate(-3deg)}}
.kp-card h3{margin:2px 4px 0;font-size:1.02rem;line-height:1.2}
.kp-sub{margin:-4px 4px 0;font-size:.85rem;line-height:1.3;color:var(--text-secondary)}
.kp-surpresa .kp-foto{background:linear-gradient(150deg,#fde8f0,#efe4fb 60%,#dff1fc)}
.kp-add{min-height:44px;border:0;border-radius:999px;background:var(--canvas-deep);color:var(--text-primary);font:700 .95rem var(--f-display);cursor:pointer;transition:background-color .25s var(--ease-soft)}
.kp-add:hover{background:var(--accent-muted)}
.kp-step{display:flex;align-items:center;justify-content:space-between;padding:0 2px;border-radius:999px;background:var(--accent)}
.kp-step[hidden]{display:none}
.kp-step .kit-bt{background:rgba(255,255,255,.2);color:#fff}
.kp-step .kit-bt:hover{background:rgba(255,255,255,.34)}
.kp-step .kit-n{color:#fff}
.kp-todos{display:flex;margin:20px auto 0}
.kp-vazio{text-align:center;font-weight:700;color:var(--text-secondary)}
.kp-serie{padding:20px clamp(18px,5vw,64px) 70px}
.kp-serie-card{display:grid;justify-items:center;gap:6px;padding:clamp(24px,4vw,40px);border-radius:34px;background:linear-gradient(150deg,#fff7df,#fde8f0 55%,#efe4fb);box-shadow:0 30px 60px -40px rgba(53,38,79,.65);color:var(--text-primary);text-align:center;text-decoration:none;transition:transform .35s var(--ease-out)}
.kp-serie-card:hover{transform:translateY(-3px)}
.kp-serie-tag{font:500 .8rem/1.3 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.kp-serie-card strong{font:700 clamp(1.6rem,3.4vw,2.4rem)/1.1 var(--f-display)}
.kp-barra{position:fixed;left:0;right:0;bottom:0;z-index:40;border-radius:26px 26px 0 0;background:rgba(255,250,240,.97);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 -14px 40px -24px rgba(53,38,79,.6)}
.kp-barra-in{display:grid;grid-template-columns:1.2fr auto 1fr;align-items:center;gap:14px 24px;max-width:1248px;margin:0 auto;padding:14px clamp(16px,4vw,40px) calc(14px + env(safe-area-inset-bottom))}
.kp-prog-txt{margin:0 0 6px;font-size:1rem}
.kp-prog-txt strong{font:700 1.5rem/1 var(--f-display);color:var(--accent)}
.kp-dica{margin:6px 0 0;font-size:.88rem;color:var(--text-secondary)}
.kit-barra.treme{animation:treme .45s var(--ease-soft)}
@keyframes treme{20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}
.kp-acoes{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.kp-meu summary{list-style:none}
.kp-meu summary::-webkit-details-marker{display:none}
.kp-meu-in{position:absolute;bottom:calc(100% + 12px);right:clamp(16px,4vw,40px);width:min(calc(100% - 32px),380px);max-height:60vh;overflow:auto;padding:20px;border-radius:24px;background:var(--panel);box-shadow:0 30px 60px -24px rgba(53,38,79,.7)}
.kp-meu-tit{margin:0 0 8px;font:700 1.2rem/1.2 var(--f-display)}
.kp-meu-lista{margin:0 0 14px;padding-left:1.1em;line-height:1.7}
.kp-meu-vazio{list-style:none;margin-left:-1.1em;color:var(--text-secondary)}
.kp-fim{display:grid;gap:6px;justify-items:end}
.kp-total{display:flex;align-items:baseline;gap:12px;margin:0}
.kp-total strong{font:700 1.6rem/1 var(--f-display)}
.kp-extra{margin:0;min-height:1.2em;font-size:.85rem;font-weight:700;color:#177a3d}
@media (max-width:960px){.kp-grid{grid-template-columns:repeat(3,1fr)}.kp-barra-in{grid-template-columns:1fr auto}.kp-acoes{grid-column:1 / -1;order:3;justify-content:flex-start}}
@media (max-width:600px){
  .kp-body{padding-bottom:210px}
  .kp-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .kp-barra-in{gap:8px 14px;padding-top:12px}
  .kp-dica{font-size:.8rem}
  .kp-extra{display:none}
  .kp-fim .btn{min-height:46px;padding:0 1.1em;font-size:.95rem}
  .kp-prog-txt{white-space:nowrap}
}
@media (prefers-reduced-motion:reduce){.kp-card:hover .kp-foto img,.kit-barra.treme{animation:none}}

/* Série colecionável: Turminha das Nuvens */
.serie{background:linear-gradient(180deg,rgba(202,167,221,.2) 0%,rgba(253,192,207,.18) 55%,rgba(250,240,215,0) 100%)}
.serie-grid{list-style:none;margin:0 0 clamp(28px,4vw,44px);padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.serie-card{display:grid;justify-items:center;align-content:start;gap:6px;padding:18px 10px 16px;border-radius:24px;background:var(--panel);box-shadow:0 14px 30px -24px rgba(53,38,79,.55);text-align:center}
.serie-arte{display:grid;place-items:center;width:100%;max-width:120px;aspect-ratio:1}
.serie-arte svg{width:100%;height:auto;animation:flutua 5s var(--ease-soft) infinite}
.serie-card:nth-child(2) svg{animation-delay:-.8s}.serie-card:nth-child(3) svg{animation-delay:-1.6s}.serie-card:nth-child(4) svg{animation-delay:-2.4s}
.serie-card:nth-child(5) svg{animation-delay:-3.2s}.serie-card:nth-child(6) svg{animation-delay:-4s}
.serie-arte img{width:100%;height:100%;object-fit:cover;border-radius:18px}
.serie-num{font:500 .8rem/1 var(--f-mono);letter-spacing:.12em;color:var(--accent)}
.serie-nome{margin:0;font:700 1rem/1.2 var(--f-display)}
.serie-card:not(.saiu) .serie-nome{color:var(--text-secondary)}
.serie-restam{margin:0;font-size:.82rem;font-weight:700;color:#c92f69}
.serie-info{display:grid;grid-template-columns:1fr 1.2fr;gap:18px}
.serie-rara,.serie-lanca{padding:clamp(22px,3vw,30px);border-radius:30px;background:var(--panel);box-shadow:0 30px 60px -40px rgba(53,38,79,.65)}
.serie-rara{background:linear-gradient(150deg,#fff7df,#fde8f0 55%,#efe4fb)}
.serie-rara p{margin:0}
.serie-info .serie-tit{font:700 1.3rem/1.2 var(--f-display);margin:0 0 10px}
.serie-relogio{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.serie-relogio[hidden]{display:none}
.serie-relogio span{display:grid;justify-items:center;min-width:66px;padding:10px 6px 8px;border-radius:18px;background:var(--canvas-deep)}
.serie-relogio b{font:700 1.8rem/1 var(--f-display)}
.serie-relogio small{font:500 .7rem/1.5 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}
.serie-sem-data{margin:0 0 18px;color:var(--text-secondary)}
@keyframes flutua{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.paused .serie-arte svg{animation-play-state:paused}
@media (max-width:960px){.serie-grid{grid-template-columns:repeat(3,1fr)}.serie-info{grid-template-columns:1fr}}
@media (max-width:520px){.serie-grid{grid-template-columns:repeat(2,1fr)}}
@media (prefers-reduced-motion:reduce){.serie-arte svg{animation:none}}
@media (max-width:960px){.kit-app{grid-template-columns:1fr}.kit-resumo{grid-column:1;grid-row:auto;position:static}.kit-tamanhos{grid-template-columns:repeat(2,1fr);row-gap:22px}}
@media (max-width:520px){.kit-itens{grid-template-columns:1fr}}

/* Depoimentos (escondida ate chegarem prints reais) */
.depo-grid{columns:3 260px;column-gap:18px}
.depo-grid figure{break-inside:avoid;margin:0 0 18px;padding:10px;border-radius:22px;background:var(--panel);box-shadow:0 18px 40px -30px rgba(53,38,79,.55)}
.depo-grid img{border-radius:14px;width:100%;height:auto}

/* S2 chaveiro */
.kc-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);align-items:center}
.field{display:grid;gap:8px;font-weight:700;margin:0 0 1.1rem;color:var(--text-primary)}
.field input,.field select,.field textarea{font:600 1.02rem/1.4 var(--f-text);color:var(--text-primary);background:#fffdf7;border:2px solid #e3d3b3;border-radius:16px;padding:13px 16px;min-height:52px;width:100%;transition:border-color .3s var(--ease-soft),box-shadow .3s var(--ease-soft)}
.field textarea{resize:vertical;min-height:112px}
.field input::placeholder,.field textarea::placeholder{color:#8a7f9c}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(107,63,176,.18)}
.swatches{border:0;padding:0;margin:0 0 1.6rem;display:flex;flex-wrap:wrap;gap:10px}
.swatches legend{font-weight:700;margin-bottom:8px;padding:0}
.sw{position:relative;cursor:pointer}
.sw input{position:absolute;opacity:0;width:44px;height:44px;margin:0;cursor:pointer}
.sw span{display:block;width:44px;height:44px;border-radius:50%;background:var(--c);box-shadow:inset 0 -4px 0 rgba(0,0,0,.12),0 6px 14px -8px var(--c);transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-soft)}
.sw em{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.sw input:checked+span{transform:scale(1.12);box-shadow:inset 0 -4px 0 rgba(0,0,0,.12),0 0 0 3px var(--canvas),0 0 0 6px var(--text-primary)}
.sw input:focus-visible+span{outline:3px solid var(--accent);outline-offset:6px}
.hold{position:relative;overflow:hidden;min-width:260px;user-select:none;-webkit-user-select:none;touch-action:none}
.hold-fill{position:absolute;inset:0;background:linear-gradient(90deg,var(--berry),var(--sun));transform:scaleX(var(--p,0));transform-origin:left;opacity:.5}
.hold-txt{position:relative}
.hold.down{transform:scale(.98)}
.kc-done{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .6s var(--ease-out),opacity .5s var(--ease-soft)}
.kc-done>*{overflow:hidden}
.kc-finished .kc-done{grid-template-rows:1fr;opacity:1}
.kc-finished .hold{display:none}
.kc-yay{font:700 1.5rem/1.2 var(--f-display);margin:.2rem 0 1rem;color:var(--text-primary)}
.kc-actions{display:flex;flex-wrap:wrap;gap:12px;padding-bottom:4px}
.kc-stage{position:relative;aspect-ratio:1/1;border-radius:40px;background:radial-gradient(circle at 30% 20%,var(--w-sun) 0 22%,transparent 23%),radial-gradient(circle at 85% 80%,var(--w-lilac) 0 26%,transparent 27%),radial-gradient(circle at 12% 88%,var(--w-blue) 0 18%,transparent 19%),var(--panel);box-shadow:0 30px 60px -40px rgba(53,38,79,.6);display:grid;place-items:center}
.kc-svg{width:78%;height:auto;overflow:visible}
.kc-ring{opacity:0;transform:translateY(-10px);transition:opacity .6s var(--ease-soft),transform .8s var(--ease-out)}
.kc-finished .kc-ring{opacity:1;transform:none}
.kc-ghost{transition:opacity .6s var(--ease-soft)}
.kc-finished .kc-ghost{opacity:0}
.kc-nozzle{opacity:0;transition:opacity .3s var(--ease-soft)}
.printing .kc-nozzle{opacity:.55}
.kc-count{position:absolute;left:50%;bottom:18px;margin:0;transform:translateX(-50%);font:500 .85rem/1 var(--f-mono);letter-spacing:.08em;color:var(--text-secondary);background:rgba(250,240,215,.85);padding:8px 12px;border-radius:10px;white-space:nowrap}
.chaveiro.inview .kc-stage{animation:flutua 6s var(--ease-soft) infinite;animation-delay:-2s}
@keyframes flutua{0%,100%{translate:0 0}50%{translate:0 -8px}}
@media (max-width:880px){.kc-grid{grid-template-columns:1fr}.kc-stage{max-width:440px;width:100%;margin:0 auto;order:-1}}

/* S3 como funciona: painel com o mundo das ideias ao fundo */
.como-panel{position:relative;border-radius:40px;padding:clamp(48px,7vw,96px) clamp(18px,4vw,56px);background:url(como-funciona-bg.jpg) center/cover no-repeat var(--w-blue);box-shadow:0 40px 80px -60px rgba(53,38,79,.7);overflow:hidden}
.como-panel .head-c{background:rgba(252,244,224,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:table;margin-inline:auto;padding:18px 28px;border-radius:24px}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2.4vw,28px)}
.step{position:relative;height:100%;background:rgba(255,250,240,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:28px;padding:30px 24px 26px;box-shadow:0 20px 44px -32px rgba(53,38,79,.6)}
.step-n{position:absolute;right:18px;top:10px;font:700 3.6rem/1 var(--f-display);color:var(--accent-muted)}
.step h3{font-size:1.3rem;margin:1rem 0 .4rem}
.step p{margin:0;color:var(--text-secondary)}
.s1{background:var(--w-sun)}.s2{background:var(--w-blue)}.s3{background:var(--w-pink)}
.como.inview .step-ico{animation:balanca 5.5s var(--ease-soft) infinite}
.como.inview .steps li:nth-child(2) .step-ico{animation-delay:-1.8s}.como.inview .steps li:nth-child(3) .step-ico{animation-delay:-3.6s}
@media (max-width:860px){.steps{grid-template-columns:1fr}}

/* Nossa historia: fotos reais no alto, texto em coluna centralizada */
.historia{background:linear-gradient(180deg,rgba(253,192,207,0) 0%,rgba(253,192,207,.28) 30%,rgba(251,228,158,.24) 100%)}
.hist-fotos{position:relative;display:flex;justify-content:center;align-items:flex-end;gap:0;margin:0 auto clamp(40px,6vw,72px);max-width:760px}
.hist-fotos figure{margin:0;background:var(--panel);padding:12px 12px 16px;border-radius:26px;box-shadow:0 30px 60px -36px rgba(53,38,79,.6)}
.hist-fotos img{border-radius:18px;width:100%;height:auto}
.hist-main{width:min(62%,430px);transform:rotate(-2deg);z-index:1}
.hist-side{width:min(40%,270px);margin-left:-36px;margin-bottom:-18px;transform:rotate(4deg)}
.hist-fotos figcaption{font:600 1.35rem/1.2 var(--f-hand);color:var(--text-secondary);text-align:center;padding-top:8px}
.historia.inview .hist-side{animation:balanca 7s var(--ease-soft) infinite;animation-delay:-2.5s}
.hist-texto{max-width:62ch;margin:0 auto;font-size:1.12rem;line-height:1.75;color:var(--text-primary)}
.hist-texto p{margin:0 0 1.1rem}
.hist-texto .abre{font:700 clamp(1.6rem,3vw,2.2rem)/1.2 var(--f-display);color:var(--accent);margin-bottom:1.4rem}
.hist-destaque{font:700 clamp(1.4rem,2.6vw,1.9rem)/1.3 var(--f-display);color:var(--text-primary);text-align:center;margin:2rem auto!important;padding:26px 28px;border-radius:28px;background:var(--panel);box-shadow:0 20px 44px -32px rgba(53,38,79,.55);max-width:34ch}
.hist-assina{text-align:center;margin-top:2rem}
.hist-assina .hand{font-size:2rem}
.hist-assina small{display:block;font:500 .82rem/1.4 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-top:.6rem}
@media (max-width:600px){.hist-fotos{flex-direction:column;align-items:center}.hist-main{width:88%}.hist-side{width:58%;margin:-40px 0 0 34%}}

/* S4 confiar: cabecalho a esquerda, lista a direita */
.split-2{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,80px);align-items:start}
.split-2 .head-l{position:sticky;top:110px}
.trust{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.tr{display:flex;gap:18px;align-items:flex-start;background:var(--panel);border-radius:24px;padding:22px;box-shadow:0 16px 36px -30px rgba(53,38,79,.55);transition:transform .45s var(--ease-out)}
.tr:hover{transform:translateX(6px)}
.tr h3{font-size:1.2rem;margin:.2rem 0 .3rem}
.tr p{margin:0;color:var(--text-secondary)}
.tr-ico{width:54px;height:54px;border-radius:18px;flex:none}
.t1{background:var(--w-blue)}.t2{background:var(--w-sun)}.t3{background:var(--w-mint)}.t4{background:var(--w-pink)}
@media (max-width:860px){.split-2{grid-template-columns:1fr}.split-2 .head-l{position:static}}

/* S5 duvidas */
.faq{display:grid;gap:12px}
.faq details{background:var(--panel);border-radius:22px;box-shadow:0 14px 32px -28px rgba(53,38,79,.55)}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;min-height:44px;font:600 1.15rem/1.3 var(--f-display);color:var(--text-primary)}
.faq summary::-webkit-details-marker{display:none}
.faq summary svg{width:26px;height:26px;flex:none;color:var(--accent);transition:transform .4s var(--ease-out)}
.faq details[open] summary svg{transform:rotate(180deg)}
.faq details p{margin:0;padding:0 24px 22px;color:var(--text-secondary);animation:abre .5s var(--ease-out)}
@keyframes abre{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* S6 orcamento: o quadro final do video reaproveitado como cenario */
.orc-panel{position:relative;border-radius:44px;padding:clamp(36px,6vw,90px) clamp(14px,4vw,60px);background:url(hero-ending.jpg) center/cover no-repeat var(--canvas-deep);box-shadow:0 40px 80px -60px rgba(53,38,79,.7)}
.orc-card{position:relative;max-width:560px;margin:0 auto;background:rgba(255,250,240,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:32px;padding:clamp(26px,4vw,44px);box-shadow:0 30px 60px -40px rgba(53,38,79,.7)}
.orc-card .t{font-size:clamp(1.8rem,3.4vw,2.6rem)}
.micro{margin:.9rem 0 0;font-size:.92rem;color:var(--text-secondary);text-align:center}
.ok{margin:1rem 0 0;padding:14px 16px;border-radius:16px;background:var(--w-mint);font-weight:700;color:var(--text-primary);text-align:center}
.ok a{color:var(--text-primary)}

/* rodape */
.foot{background:var(--accent);color:#fff;padding:64px 20px 90px;margin-top:40px;border-radius:48px 48px 0 0}
.foot-in{max-width:1120px;margin:0 auto;display:grid;justify-items:center;gap:14px;text-align:center}
.foot img{width:200px;height:auto;background:var(--canvas);border-radius:22px;padding:10px 16px}
.foot .hand{color:var(--w-sun);font-size:2rem}
.foot-links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px}
.foot-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#fff;font-weight:700;text-decoration:none}
.foot-links a:hover{color:var(--w-sun)}
.foot small{opacity:.88}

/* botao flutuante do WhatsApp */
.wa-float{position:fixed;right:18px;bottom:18px;z-index:60;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--whats);color:#fff;box-shadow:0 14px 28px -10px rgba(28,154,82,.8);transition:transform .35s var(--ease-out)}
.wa-float svg{width:30px;height:30px}
.wa-float:hover{transform:scale(1.07)}
.wa-float::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 0 rgba(28,154,82,.45);animation:pulso 3.2s var(--ease-soft) infinite;animation-delay:-1s}
@keyframes pulso{0%{box-shadow:0 0 0 0 rgba(28,154,82,.45)}70%,100%{box-shadow:0 0 0 18px rgba(28,154,82,0)}}

/* toque confortavel */
@media (pointer:coarse){.btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center}.nav ul a{min-height:44px}}

/* aba escondida: pausa tudo */
body.paused *,body.paused *::before,body.paused *::after{animation-play-state:paused!important}

/* movimento reduzido honrado por completo */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important;transition-delay:0s!important}
  .reveal .r{opacity:1!important;transform:none!important}
  .nav-logo{opacity:1;transform:none}
}

/* ---- área de administração: editar o site (parceiro/site.php) ---- */
.as-atalhos{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}
.as-atalhos a{padding:8px 14px;border-radius:999px;background:rgba(106,78,156,.1);color:var(--plum);text-decoration:none;font-weight:700;font-size:.92rem}
.as-atalhos a:hover{background:rgba(106,78,156,.18)}
.as-precos{display:grid;gap:16px}
.as-linha{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:14px 16px 16px;border:2px solid rgba(53,38,79,.12);border-radius:18px}
.as-linha legend{padding:0 8px;font-family:var(--fonte-titulo,inherit);font-weight:700;color:var(--plum)}
.as-linha label,.as-nova label{display:flex;flex-direction:column;gap:6px;font-size:.88rem;font-weight:700;color:var(--text-soft,#5b5069)}
.as-linha input:not([type=checkbox]):not([type=radio]),.as-nova input:not([type=file]):not([type=checkbox]),.as-nova select{padding:10px 12px;border:2px solid rgba(53,38,79,.14);border-radius:12px;font:inherit;font-weight:600;background:#fff}
.as-larga{grid-column:1 / -1}
.as-check{flex-direction:row!important;align-items:center;gap:8px}
.as-apagar{color:var(--berry)}
.as-nova{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:end;margin:0 0 24px;padding:16px;border-radius:18px;background:rgba(250,240,215,.6)}
.as-nova .btn,.as-precos .btn{justify-self:start}
.as-nova input[type=file]{padding:10px;border:2px dashed rgba(106,78,156,.4);border-radius:12px;background:#fff;font-size:.9rem}
.as-cats{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px 18px;margin:0;padding:10px 14px;border:2px solid rgba(53,38,79,.12);border-radius:14px}
.as-cats legend{padding:0 6px;font-size:.85rem;font-weight:700;color:var(--plum)}
.as-espera{grid-column:1 / -1;margin:0;font-weight:700;color:var(--plum)}
.as-col{display:flex;align-items:baseline;gap:10px;margin:26px 0 12px}
.as-col span{font-size:.85rem;font-weight:600;color:var(--text-soft,#5b5069)}
.as-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px;list-style:none;margin:0 0 10px;padding:0}
.as-grade li{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:16px;background:#fff;box-shadow:0 10px 26px -22px rgba(53,38,79,.8);text-align:center}
.as-grade img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:12px;background:rgba(250,240,215,.7)}
.as-grade span{font-size:.85rem;font-weight:700;line-height:1.25}
.as-x{margin-top:auto;padding:7px 10px;border:0;border-radius:10px;background:rgba(232,86,110,.12);color:var(--berry);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}
.as-x:hover{background:rgba(232,86,110,.22)}
@media (max-width:640px){.as-linha{grid-template-columns:1fr 1fr}.as-nova{grid-template-columns:1fr}}
.as-nova label[hidden],.as-linha label[hidden]{display:none}
.cc-preco{margin:0 0 10px;font-family:var(--fonte-titulo,inherit);font-size:1.15rem;font-weight:700;color:var(--plum);text-align:center}
.cc-preco[hidden]{display:none}
