/* Luupa · tema v0.1
   Layout: faixas de largura total alternando branco, água e rosado; conteúdo em coluna de 1240px. */

@font-face { font-family: 'Butler'; src: url('../fonts/butler-light.woff2') format('woff2'); font-weight: 300; font-display: swap; }
@font-face { font-family: 'Butler'; src: url('../fonts/butler-regular.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Butler'; src: url('../fonts/butler-medium.woff2') format('woff2'); font-weight: 500; font-display: swap; }

@font-face { font-family: 'DM Sans'; src: url('../fonts/dm-sans-400.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'DM Sans'; src: url('../fonts/dm-sans-500.woff2') format('woff2'); font-weight: 500; font-display: swap; }
@font-face { font-family: 'DM Sans'; src: url('../fonts/dm-sans-600.woff2') format('woff2'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'DM Sans'; src: url('../fonts/dm-sans-700.woff2') format('woff2'); font-weight: 700; font-display: swap; }

:root {
	--cl-petroleo: #007A8C;
	--cl-petroleo-esc: #005E6C;
	--cl-turquesa: #009CB4;
	--cl-ciano: #0CDEF0;
	--cl-ameixa: #2E1238;
	--cl-magenta: #A3208F;
	--cl-rosa: #F888A8;
	--cl-tinta: #2A1A30;
	--cl-texto: #3D4A55;
	--cl-suave: #55606A;
	--cl-borda: #E3F0F2;
	--cl-agua: #EFF9FA;
	--cl-rosado: #FFF5F7;
	--cl-bolha: #E3F5F8;
	--cl-cinza: #F4F8F9;
	--cl-branco: #ffffff;
	--cl-bom: #33AE2E; --cl-bom-txt: #1E7A1A; --cl-bom-bg: #EAF6E9; --cl-bom-forte: #2E9E29;
	--cl-reg: #FEBE0E; --cl-reg-txt: #7A5A00; --cl-reg-bg: #FFF6DB;
	--cl-ins: #FE9737; --cl-ins-txt: #A2510B; --cl-ins-bg: #FFEEDF;
	--cl-con: #FF1701; --cl-con-txt: #B3200F; --cl-con-bg: #FFE7E4;
	--cl-display: 'Butler', 'Iowan Old Style', 'Palatino Linotype', Georgia, serif;
	--cl-corpo: 'DM Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--cl-larg: 1240px;
	--cl-raio: 22px;
	color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--cl-branco); color: var(--cl-tinta); font: 400 16px/1.6 var(--cl-corpo); }
img { max-width: 100%; height: auto; }
a { color: var(--cl-petroleo); text-decoration: none; }
a:hover { color: var(--cl-petroleo-esc); }
:focus-visible { outline: 2px solid var(--cl-turquesa); outline-offset: 3px; }
h1, h2, h3 { font-family: var(--cl-display); font-weight: 300; color: var(--cl-ameixa); line-height: 1.15; text-wrap: balance; margin: 0; }
p { margin: 0; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.cl-wrap { max-width: var(--cl-larg); margin: 0 auto; padding-inline: 24px; }
.cl-faixa { padding-block: 88px; }
.cl-faixa--agua { background: var(--cl-agua); }
.cl-faixa--rosado { background: var(--cl-rosado); }
.cl-faixa--ameixa { background: var(--cl-ameixa); color: #fff; }
.cl-sobre { font-size: 14px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--cl-petroleo); }
.cl-sobre--rosa { color: var(--cl-magenta); }
.cl-titulo { font-size: clamp(32px, 4vw, 50px); }
.cl-lead { font-size: 17px; line-height: 1.7; color: var(--cl-texto); max-width: 62ch; }
.cl-pilha { display: flex; flex-direction: column; gap: 18px; }
.cl-cabeca { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px; margin-bottom: 32px; }
.cl-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 28px; }
.cl-grade--cats { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }

/* Botões */
.cl-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; padding: 0 28px; border-radius: 26px; border: 0; font: 600 15px/1 var(--cl-corpo); cursor: pointer; transition: background .3s, color .3s, box-shadow .3s; text-decoration: none; }
.cl-btn--cheio { background: var(--cl-petroleo); color: #fff; }
.cl-btn--cheio:hover, .cl-btn--suave:hover, .cl-btn--branco:hover { background: var(--cl-ameixa); color: #fff; }
.cl-btn--suave { background: var(--cl-bolha); color: var(--cl-ameixa); }
.cl-btn--branco { background: #fff; color: var(--cl-ameixa); }
.cl-btn--caps { text-transform: uppercase; letter-spacing: .08em; font-size: 14px; }
.cl-link-onda { display: inline-flex; flex-direction: column; align-items: center; gap: 2px; font-weight: 600; color: var(--cl-ameixa); }
.cl-link-onda svg path { stroke-dasharray: 6 4; }
.cl-link-onda:hover svg path { animation: cl-onda 1s linear infinite; stroke: var(--cl-ameixa); }

/* Faixa superior e cabeçalho */
.cl-aviso { background: var(--cl-ameixa); color: #fff; font-size: 13px; font-weight: 500; text-align: center; padding: 10px 16px; }
.cl-topo { position: sticky; top: 0; z-index: 30; background: rgba(255,255,255,.93); backdrop-filter: saturate(1.4) blur(10px); border-bottom: 1px solid var(--cl-borda); }
.admin-bar .cl-topo { top: 32px; }
.cl-topo__in { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; padding-block: 12px; }
.cl-marca { display: flex; align-items: center; gap: 10px; font-family: var(--cl-display); font-weight: 500; font-size: 27px; color: var(--cl-ameixa); }
.cl-marca img { width: 46px; height: 46px; }
.cl-marca .cl-logo { width: auto; height: 58px; display: block; }
.cl-rodape .cl-marca .cl-logo { height: 64px; }
.cl-marca span { color: var(--cl-turquesa); }
.cl-menu { flex: 1 1 380px; }
.cl-menu ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 26px; }
.cl-menu a { color: var(--cl-tinta); font-weight: 500; font-size: 15px; }
.cl-menu .current-menu-item a, .cl-menu a:hover { color: var(--cl-petroleo); }
.cl-topo__acoes { display: flex; gap: 10px; align-items: center; }
.cl-icone-btn { width: 44px; height: 44px; border-radius: 22px; border: 1px solid var(--cl-borda); background: #fff; display: inline-flex; align-items: center; justify-content: center; color: var(--cl-tinta); }

/* Banner */
.cl-hero { position: relative; overflow: hidden; background: #E3F8FA; }
.cl-slide { position: relative; min-height: 600px; display: flex; align-items: center; }
.cl-slide[hidden] { display: none; }
.cl-slide__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 75% center; animation: cl-ken 9s ease-out both; }
.cl-slide__txt { position: relative; max-width: 580px; display: flex; flex-direction: column; gap: 22px; padding-block: 64px 128px; }
.cl-slide__txt h1, .cl-slide__txt h2 { font-size: clamp(40px, 5.4vw, 68px); line-height: 1.08; }
.cl-slide--escuro h1, .cl-slide--escuro h2 { color: #fff; }
.cl-slide--escuro .cl-lead { color: #EADCF0; }
.cl-slide__txt > * { animation: cl-sobe .9s cubic-bezier(.2,.7,.2,1) both; }
/* Primeiro slide: só desliza, sem começar invisível (o Google mede o texto mais cedo) */
.cl-slide:first-of-type .cl-slide__txt > * { animation-name: cl-sobe-leve; }
@keyframes cl-sobe-leve { from { transform: translate3d(0, 24px, 0); } to { transform: none; } }
.cl-slide__txt > *:nth-child(2) { animation-delay: .14s; } .cl-slide__txt > *:nth-child(3) { animation-delay: .28s; } .cl-slide__txt > *:nth-child(4) { animation-delay: .42s; }
.cl-hero__setas button { position: absolute; top: 50%; margin-top: -26px; width: 52px; height: 52px; border-radius: 26px; border: 0; background: rgba(255,255,255,.85); cursor: pointer; display: flex; align-items: center; justify-content: center; color: var(--cl-ameixa); transition: background .3s, color .3s; }
.cl-hero__setas button:hover { background: var(--cl-ameixa); color: #fff; }
.cl-hero__setas .ant { left: 24px; } .cl-hero__setas .prox { right: 24px; }
.cl-hero__pontos { position: absolute; left: 0; right: 0; bottom: 88px; display: flex; justify-content: center; gap: 4px; }
.cl-hero__pontos button { width: 44px; height: 24px; border: 0; background: transparent; padding: 0; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.cl-hero__pontos span { display: block; width: 8px; height: 8px; border-radius: 4px; background: rgba(46,18,56,.3); transition: all .3s; }
.cl-hero__pontos button[aria-current="true"] span { width: 30px; background: var(--cl-ameixa); }
.cl-bolha { position: absolute; bottom: -30px; border-radius: 50%; background: rgba(255,255,255,.75); pointer-events: none; animation: cl-bolha 10s ease-in infinite; }

/* Busca */
.cl-busca { position: relative; z-index: 3; margin-top: -52px; }
.cl-busca form { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; background: #fff; padding: 14px; border-radius: 28px; box-shadow: 0 16px 48px rgba(0,80,92,.16); }
.cl-busca input[type="search"] { flex: 1 1 280px; min-width: 0; border: 0; outline: none; font: 400 17px var(--cl-corpo); height: 54px; padding: 0 12px; background: transparent; color: var(--cl-tinta); }
.cl-pulsa { animation: cl-pulsa 2.4s ease-out infinite; }

/* Faixa corrida */
.cl-corrida { background: var(--cl-ameixa); color: #fff; overflow: hidden; padding: 22px 0; margin-top: 56px; }
.cl-corrida__trilho { display: flex; width: max-content; animation: cl-corre 32s linear infinite; font-family: var(--cl-display); font-weight: 300; font-size: 30px; white-space: nowrap; }
.cl-corrida:hover .cl-corrida__trilho { animation-play-state: paused; }
.cl-corrida__trilho span { padding: 0 28px; }
.cl-corrida__trilho i { font-style: normal; color: var(--cl-ciano); }
.cl-corrida__trilho i:nth-of-type(even) { color: var(--cl-rosa); }

/* Folhas */
.cl-folha { position: absolute; transform-origin: 50% 100%; animation: cl-balanca 4s ease-in-out infinite alternate; pointer-events: none; }

/* Cartões de categoria e produto */
.cl-cat { display: flex; flex-direction: column; gap: 14px; color: var(--cl-ameixa); text-align: center; }
.cl-cat__img, .cl-prod__img { position: relative; border-radius: 24px; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.cl-cat__img { aspect-ratio: 33 / 42; }
.cl-cat__img img, .cl-prod__img img { width: 88%; transition: transform .75s cubic-bezier(0,0,.2,1); }
.cl-cat:hover img, .cl-prod:hover .cl-prod__img img { transform: scale(1.08); }
.cl-cat__nome { font-family: var(--cl-display); font-size: 26px; }
.cl-cat__qtd { font-size: 14px; color: var(--cl-suave); }
.cl-prod { display: flex; flex-direction: column; gap: 10px; color: var(--cl-tinta); }
.cl-prod__img { aspect-ratio: 42 / 52; }
/* foto com fundo branco: o branco vira a cor do cartão (foto já sem fundo não leva a classe) */
.cl-prod__img, .cl-galeria__principal, .cl-galeria__miniaturas button { isolation: isolate; }
img.cl-foto { mix-blend-mode: multiply; }
/* foto sem fundo vem justa no produto (estreita e alta): cabe inteira, sem esticar */
.cl-prod__img img { width: auto; height: auto; max-width: 88%; max-height: 84%; object-fit: contain; }
.cl-galeria__principal img { max-width: 88%; }
.cl-galeria__miniaturas img { max-width: 90%; }
.cl-prod__acoes { position: absolute; left: 14px; right: 14px; bottom: 14px; opacity: 0; transform: translateY(8px); transition: all .35s ease; }
.cl-prod:hover .cl-prod__acoes, .cl-prod:focus-visible .cl-prod__acoes { opacity: 1; transform: none; }
.cl-prod__acoes span { display: flex; align-items: center; justify-content: center; height: 46px; border-radius: 23px; background: var(--cl-ameixa); color: #fff; font-weight: 600; font-size: 14px; }
.cl-prod__marca { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--cl-petroleo); }
.cl-prod__nome { font-size: 16px; font-weight: 500; line-height: 1.35; }
.cl-prod__cat { font-size: 13px; color: var(--cl-suave); }
.cl-fundo-1 { background: #DFF6F9; } .cl-fundo-2 { background: #FFF4D6; } .cl-fundo-3 { background: #F3E6F6; } .cl-fundo-4 { background: #FDE8EF; } .cl-fundo-5 { background: #E8E3FF; }

/* Selos de nota */
.cl-nota { position: absolute; top: 14px; left: 14px; font-weight: 700; font-size: 15px; padding: 6px 12px; border-radius: 14px; font-variant-numeric: tabular-nums; }
.cl-nota--otimo { background: #33AE2E; color: #fff; }
.cl-nota--bom { background: #FDBE13; color: #3D2B00; }
.cl-nota--regular, .cl-nota--ruim { background: #F26B1D; color: #fff; }
.cl-nota--sem { background: #fff; color: var(--cl-suave); border: 1px solid var(--cl-borda); }

/* Pílulas */
.cl-pilulas { display: flex; flex-wrap: wrap; gap: 10px; }
.cl-pilula { display: inline-flex; align-items: center; min-height: 48px; padding: 0 22px; border-radius: 24px; background: #fff; color: var(--cl-ameixa); font-weight: 600; font-size: 15px; transition: transform .35s, box-shadow .35s, background .3s, color .3s; }
.cl-pilula:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(0,80,92,.12); background: var(--cl-ameixa); color: #fff; }
.cl-chip { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; padding: 7px 12px; border-radius: 16px; }
.cl-chip--ok { background: var(--cl-bom-bg); color: var(--cl-bom-txt); }
.cl-chip--atencao { background: var(--cl-ins-bg); color: var(--cl-ins-txt); }
.cl-chip--evitar { background: var(--cl-con-bg); color: var(--cl-con-txt); }
.cl-chip--neutro { background: var(--cl-agua); color: var(--cl-petroleo-esc); }

/* Selos declarados pela marca (ficha e cartão) */
.cl-selos { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: -6px; }
.cl-selos small { color: var(--cl-suave); font-size: 12px; }
.cl-selo { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; padding: 6px 12px; border-radius: 16px; background: #EEF7EA; color: #2F6B2A; text-decoration: none; border: 1px solid #D5EBCD; }
.cl-selo:hover { background: #E2F1DB; }
.cl-card__selos { display: flex; gap: 4px; font-size: 13px; line-height: 1; }

/* Abas de produtos da home */
.cl-abas-grandes { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 40px; margin-bottom: 40px; }
.cl-abas-grandes button { border: 0; background: transparent; cursor: pointer; padding: 4px 0; font: 300 clamp(30px, 3.6vw, 46px)/1.2 var(--cl-display); color: #B9C4C9; border-bottom: 2px solid transparent; transition: color .3s; }
.cl-abas-grandes button:hover { color: var(--cl-ameixa); }
.cl-abas-grandes button[aria-selected="true"] { color: var(--cl-ameixa); border-bottom-color: var(--cl-turquesa); }
[role="tabpanel"][hidden] { display: none; }

/* Destaque com inclinação */
.cl-duas { display: flex; flex-wrap: wrap; gap: 64px; align-items: center; }
.cl-duas > * { flex: 1 1 420px; min-width: 0; }
.cl-inclina { perspective: 1000px; }
.cl-inclina > * { transition: transform .25s ease-out; }
.cl-inclina img { display: block; width: 100%; border-radius: 32px; }
.cl-balao { max-width: 82%; padding: 12px 16px; font-size: 15px; line-height: 1.45; border-radius: 18px; }
.cl-balao--eu { align-self: flex-end; background: var(--cl-petroleo); color: #fff; border-bottom-right-radius: 4px; }
.cl-balao--ia { align-self: flex-start; background: #fff; color: var(--cl-tinta); border-bottom-left-radius: 4px; box-shadow: 0 6px 20px rgba(46,18,56,.06); }

/* Banners em par */
.cl-banner { position: relative; display: block; border-radius: 28px; overflow: hidden; color: var(--cl-ameixa); }
.cl-banner img { display: block; width: 100%; transition: transform .75s cubic-bezier(0,0,.2,1); }
.cl-banner:hover img { transform: scale(1.06); }
.cl-banner__txt { position: absolute; left: 40px; top: 0; bottom: 0; max-width: 46%; display: flex; flex-direction: column; justify-content: center; gap: 12px; }
.cl-banner__txt strong { font: 300 clamp(26px, 2.8vw, 38px)/1.15 var(--cl-display); }

/* Blog */
.cl-post { display: flex; flex-direction: column; gap: 12px; color: var(--cl-ameixa); }
.cl-post__img { border-radius: 24px; overflow: hidden; aspect-ratio: 1 / 1; }
.cl-post__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .75s cubic-bezier(0,0,.2,1); }
.cl-post:hover img { transform: scale(1.08); }
.cl-post__cat { font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--cl-magenta); }
.cl-post__titulo { font: 400 24px/1.25 var(--cl-display); }

/* Benefícios */
.cl-benef { display: flex; gap: 18px; align-items: center; }
.cl-benef__ic { width: 64px; height: 64px; border-radius: 32px; background: #fff; display: flex; align-items: center; justify-content: center; flex: none; animation: cl-flutua 3s ease-in-out infinite alternate; }
.cl-benef strong { display: block; font: 400 23px var(--cl-display); color: var(--cl-ameixa); }

/* Rodapé */
.cl-rodape { background: var(--cl-ameixa); color: #E8DDEC; }
.cl-rodape a { color: #E8DDEC; }
.cl-rodape a:hover { color: #fff; }
.cl-rodape__in { display: flex; flex-wrap: wrap; gap: 40px; justify-content: space-between; padding-block: 72px 40px; }
.cl-rodape__col { display: flex; flex-direction: column; gap: 12px; font-size: 15px; }
.cl-rodape__col strong { color: #fff; font-weight: 600; }
.cl-rodape__base { border-top: 1px solid #4A2A55; padding-block: 20px; font-size: 13px; color: #C9B8CF; }
.cl-news { display: flex; flex-wrap: wrap; gap: 8px; }
.cl-news input { flex: 1 1 220px; height: 52px; border-radius: 26px; border: 0; padding: 0 22px; font: 15px var(--cl-corpo); }

/* Lista de produtos com filtros */
.cl-titulo-faixa { background: var(--cl-agua); position: relative; overflow: hidden; }
.cl-titulo-faixa .cl-wrap { padding-block: 52px 44px; display: flex; flex-direction: column; gap: 10px; }
.cl-trilha { font-size: 14px; color: var(--cl-suave); }
.cl-catalogo { padding-block: 36px 96px; }
.cl-resultados { flex: 999 1 640px; min-width: 0; display: flex; flex-direction: column; gap: 22px; }
.cl-resultados__barra { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; }
.cl-vazio { padding: 40px; border-radius: 22px; background: var(--cl-rosado); text-align: center; }
.cl-paginas { display: flex; justify-content: center; gap: 8px; }
.cl-paginas .page-numbers { min-width: 44px; height: 44px; padding: 0 12px; border-radius: 22px; background: var(--cl-bolha); color: var(--cl-ameixa); display: inline-flex; align-items: center; justify-content: center; font-weight: 600; }
.cl-paginas .current { background: var(--cl-ameixa); color: #fff; }
.cl-abrir-filtros { display: none; }

/* Ficha de produto */
.cl-ficha { display: flex; flex-wrap: wrap; gap: 48px; align-items: flex-start; padding-block: 24px 56px; }
.cl-galeria { flex: 1 1 460px; min-width: 0; display: flex; gap: 14px; }
.cl-galeria__miniaturas { display: flex; flex-direction: column; gap: 12px; }
.cl-galeria__miniaturas button { width: 78px; height: 96px; border-radius: 16px; border: 2px solid transparent; padding: 0; cursor: pointer; overflow: hidden; display: flex; align-items: center; justify-content: center; transition: border-color .3s, transform .3s; }
.cl-galeria__miniaturas button[aria-current="true"] { border-color: var(--cl-petroleo); }
.cl-galeria__miniaturas button:hover { transform: translateY(-2px); }
.cl-galeria__miniaturas img { height: 90%; width: auto; }
.cl-galeria__principal { flex: 1; min-width: 0; height: 520px; border-radius: 28px; display: flex; align-items: center; justify-content: center; overflow: hidden; transition: background .4s; }
.cl-galeria__principal img { max-height: 86%; width: auto; transition: transform .9s cubic-bezier(0,0,.2,1); }
.cl-galeria__principal:hover img { transform: scale(1.12); }
.cl-ficha__info { flex: 1 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.cl-ficha__info > * { animation: cl-sobe .8s cubic-bezier(.2,.7,.2,1) both; }
.cl-ficha__info > *:nth-child(2) { animation-delay: .08s; } .cl-ficha__info > *:nth-child(3) { animation-delay: .16s; } .cl-ficha__info > *:nth-child(4) { animation-delay: .24s; } .cl-ficha__info > *:nth-child(5) { animation-delay: .32s; } .cl-ficha__info > *:nth-child(n+6) { animation-delay: .4s; }
.cl-ficha h1 { font-size: clamp(32px, 3.6vw, 44px); }
.cl-marca-pilula { display: inline-flex; align-items: center; height: 34px; padding: 0 14px; border-radius: 17px; background: var(--cl-agua); color: var(--cl-petroleo-esc); font-weight: 700; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; }
.cl-estrelas { color: #F2A900; letter-spacing: 2px; }
.cl-fatos { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 8px; }
.cl-fatos div { padding: 12px 14px; border-radius: 14px; background: var(--cl-cinza); }
.cl-fatos small { display: block; font-size: 12px; color: var(--cl-suave); }
.cl-fatos b { font-weight: 600; font-size: 15px; }
.cl-cartao-nota { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; padding: 20px; border-radius: 22px; border: 1px solid #D7ECF0; box-shadow: 0 12px 36px rgba(0,80,92,.08); background: #fff; }
.cl-anel { position: relative; width: 112px; height: 112px; flex: none; }
.cl-anel svg { transform: rotate(-90deg); }
.cl-anel__fundo { stroke: var(--cl-bom-bg); }
.cl-anel__valor { animation: cl-anel 1.6s cubic-bezier(.2,.7,.2,1) .3s both; }
.cl-anel__num { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.cl-anel__num b { font-size: 36px; line-height: 1; animation: cl-pop .8s cubic-bezier(.2,.7,.2,1) .9s both; }
.cl-anel__num small { font-size: 12px; font-weight: 600; }
.cl-barra-niveis { display: flex; height: 10px; border-radius: 5px; overflow: hidden; gap: 2px; }
.cl-barra-niveis span { transform-origin: left center; animation: cl-cresce 1.2s cubic-bezier(.2,.7,.2,1) .2s both; }

.cl-abas { border-top: 1px solid var(--cl-borda); background: #FBFDFD; }
.cl-abas__lista { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 36px; padding-block: 48px 24px; }
.cl-abas__lista button { border: 0; background: transparent; cursor: pointer; padding: 4px 0 16px; font: 300 clamp(26px, 2.8vw, 36px)/1.2 var(--cl-display); color: #B9C4C9; position: relative; transition: color .3s; }
.cl-abas__lista button:hover { color: var(--cl-ameixa); }
.cl-abas__lista button[aria-selected="true"] { color: var(--cl-ameixa); }
.cl-abas__lista button[aria-selected="true"]::after { content: ''; position: absolute; left: 50%; bottom: 0; width: 56px; height: 8px; margin-left: -28px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 8'%3E%3Cpath d='M2 4 Q 6 0 10 4 T 18 4 T 26 4 T 34 4 T 42 4 T 50 4 T 54 4' fill='none' stroke='%23009CB4' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center / contain; }
.cl-painel { padding-bottom: 72px; animation: cl-sobe .6s cubic-bezier(.2,.7,.2,1) both; }

.cl-niveis { flex: 0 1 340px; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.cl-nivel { display: flex; justify-content: space-between; align-items: center; padding: 14px 16px; border-radius: 14px; font-weight: 600; animation: cl-desliza .7s cubic-bezier(.2,.7,.2,1) both; }
.cl-nivel:nth-child(2) { animation-delay: .12s; } .cl-nivel:nth-child(3) { animation-delay: .24s; } .cl-nivel:nth-child(4) { animation-delay: .36s; }
.cl-nivel b { min-width: 36px; height: 28px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center; }
.cl-nivel--controverso { background: var(--cl-con-bg); color: var(--cl-con-txt); } .cl-nivel--controverso b { background: var(--cl-con); color: #fff; }
.cl-nivel--insatisfatorio { background: var(--cl-ins-bg); color: var(--cl-ins-txt); } .cl-nivel--insatisfatorio b { background: var(--cl-ins); color: #3D1E00; }
.cl-nivel--regular { background: var(--cl-reg-bg); color: var(--cl-reg-txt); } .cl-nivel--regular b { background: var(--cl-reg); color: #3D2B00; }
.cl-nivel--bom { background: var(--cl-bom-bg); color: var(--cl-bom-txt); } .cl-nivel--bom b { background: var(--cl-bom-forte); color: #fff; }

.cl-ing { border: 1px solid #D7ECF0; border-radius: 16px; background: #fff; transition: box-shadow .3s, border-color .3s; }
.cl-ing:hover { box-shadow: 0 10px 28px rgba(0,80,92,.10); border-color: #B5DDE4; }
.cl-ing summary { list-style: none; display: flex; align-items: center; gap: 14px; padding: 16px 18px; cursor: pointer; min-height: 56px; }
.cl-ing summary::-webkit-details-marker { display: none; }
.cl-ing summary::after { content: ''; width: 10px; height: 10px; border-right: 2px solid var(--cl-petroleo); border-bottom: 2px solid var(--cl-petroleo); transform: rotate(45deg); transition: transform .3s; margin-left: 6px; flex: none; }
.cl-ing[open] summary::after { transform: rotate(-135deg); }
.cl-ing__nome { flex: 1; min-width: 0; font-weight: 600; font-size: 15px; letter-spacing: .02em; }
.cl-ing__func { flex: 0 1 45%; font-size: 13px; color: var(--cl-suave); text-align: right; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cl-ing__corpo { padding: 0 18px 18px 44px; display: flex; flex-direction: column; gap: 10px; animation: cl-sobe .5s cubic-bezier(.2,.7,.2,1) both; }
.cl-ponto { width: 12px; height: 12px; border-radius: 6px; flex: none; background: #C9D3D7; }
.cl-ponto--bom { background: var(--cl-bom); } .cl-ponto--regular { background: var(--cl-reg); } .cl-ponto--insatisfatorio { background: var(--cl-ins); } .cl-ponto--controverso { background: var(--cl-con); }

.cl-tabela { border: 1px solid var(--cl-borda); border-radius: 18px; overflow: hidden; background: #fff; font-size: 15px; }
.cl-tabela div { display: flex; gap: 12px; padding: 12px 18px; border-bottom: 1px solid #EEF4F5; }
.cl-tabela div:nth-child(even) { background: #FBFDFD; }
.cl-tabela div:last-child { border-bottom: 0; }
.cl-tabela span { width: 42%; color: var(--cl-suave); flex: none; }
.cl-cartao { padding: 26px; border-radius: 24px; background: #fff; border: 1px solid var(--cl-borda); }
.cl-cartao--agua { background: var(--cl-agua); border: 0; }

/* Avaliações */
.cl-aval { display: flex; flex-wrap: wrap; gap: 40px; align-items: flex-start; }
.cl-aval__resumo { flex: 1 1 320px; max-width: 400px; padding: 32px; border-radius: 28px; background: #fff; border: 1px solid var(--cl-borda); box-shadow: 0 16px 44px rgba(0,80,92,.08); display: flex; flex-direction: column; gap: 14px; align-items: center; text-align: center; }
.cl-aval__media { font: 300 76px/1 var(--cl-display); color: var(--cl-petroleo); }
.cl-dist { width: 100%; display: flex; flex-direction: column; gap: 10px; }
.cl-dist div { display: flex; align-items: center; gap: 12px; font-size: 14px; }
.cl-dist i { flex: 1; height: 8px; border-radius: 4px; background: #EEF4F5; overflow: hidden; }
.cl-dist i b { display: block; height: 8px; background: var(--cl-petroleo); transform-origin: left; animation: cl-cresce 1.2s cubic-bezier(.2,.7,.2,1) .2s both; }
.cl-aval__lista { flex: 2 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.cl-review { padding: 24px; border-radius: 24px; background: #fff; border: 1px solid var(--cl-borda); display: flex; flex-direction: column; gap: 10px; transition: transform .35s, box-shadow .35s; }
.cl-review:hover { transform: translateY(-3px); box-shadow: 0 18px 40px rgba(0,80,92,.10); }
.cl-review__topo { display: flex; align-items: center; gap: 14px; }
.cl-avatar { width: 52px; height: 52px; border-radius: 26px; background: linear-gradient(135deg, var(--cl-ciano), var(--cl-petroleo)); color: #fff; font-weight: 700; font-size: 18px; display: flex; align-items: center; justify-content: center; flex: none; }
.cl-review__nome { font-size: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--cl-ameixa); }
.cl-review__meta { font-size: 13px; color: var(--cl-suave); font-style: italic; }
.cl-review__titulo { font: 400 22px var(--cl-display); color: var(--cl-ameixa); }
.comment-respond { padding: 24px; border-radius: 24px; background: var(--cl-rosado); }
.comment-respond h3 { font-size: 26px; font-weight: 400; margin-bottom: 12px; }
.comment-form { display: flex; flex-direction: column; gap: 12px; }
.comment-form p { display: flex; flex-direction: column; gap: 6px; }
.comment-form label { font-weight: 600; font-size: 14px; }
.comment-form input[type="text"], .comment-form input[type="email"], .comment-form input[type="url"], .comment-form textarea, .comment-form select { border: 1px solid #F3D9E2; border-radius: 14px; padding: 12px 16px; font: 15px var(--cl-corpo); background: #fff; }
.comment-form .submit { align-self: flex-start; min-height: 48px; padding: 0 26px; border-radius: 24px; border: 0; background: var(--cl-petroleo); color: #fff; font: 600 15px var(--cl-corpo); cursor: pointer; }
.comment-form .comment-form-cookies-consent { flex-direction: row; align-items: center; font-size: 13px; }
.cl-form-estrelas { border: 0; padding: 0; margin: 0; display: inline-flex; flex-direction: row-reverse; justify-content: flex-end; gap: 4px; }
.cl-form-estrelas legend { width: 100%; font-weight: 600; font-size: 14px; margin-bottom: 4px; float: left; }
.cl-form-estrelas input { position: absolute; opacity: 0; }
.cl-form-estrelas label { font-size: 30px; color: #D7DEE1; cursor: pointer; transition: color .2s; }
.cl-form-estrelas input:checked ~ label, .cl-form-estrelas label:hover, .cl-form-estrelas label:hover ~ label { color: #F2A900; }
.cl-form-estrelas input:focus-visible + label { outline: 2px solid var(--cl-turquesa); border-radius: 4px; }

/* Ingrediente */
.cl-ing-topo { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; }

/* Comparador */
.cl-comp { overflow-x: auto; border-radius: 26px; border: 1px solid var(--cl-borda); box-shadow: 0 16px 44px rgba(0,80,92,.07); background: #fff; }
.cl-comp table { width: 100%; min-width: 760px; border-collapse: collapse; font-size: 14px; }
.cl-comp th, .cl-comp td { padding: 16px 18px; border-top: 1px solid #EEF4F5; border-left: 1px solid #EEF4F5; text-align: center; vertical-align: middle; }
.cl-comp th[scope="row"] { background: var(--cl-cinza); font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--cl-texto); text-align: left; width: 220px; }
.cl-comp thead th { border-top: 0; }
.cl-comp .cl-melhor { background: var(--cl-agua); }
.cl-comp .cl-melhor::after { content: 'Melhor'; display: block; margin-top: 4px; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--cl-petroleo); }
/* Comparar: busca com sugestões (tema 0.7.0) */
.cl-cbusca { display: flex; flex-direction: column; gap: 14px; }
.cl-cbusca__escolhidos { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.cl-cbusca__slot { min-height: 150px; border: 2px dashed #C9E4E8; border-radius: 22px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 14px 12px; text-align: center; color: var(--cl-suave); font-size: 13px; background: var(--cl-branco); }
.cl-cbusca__slot--cheio { position: relative; border: 1px solid var(--cl-borda); }
.cl-cbusca__slot--novo { animation: cl-cb-entra .35s cubic-bezier(.2,.8,.2,1); }
@keyframes cl-cb-entra { from { transform: scale(.92); opacity: .4; } to { transform: none; opacity: 1; } }
.cl-cbusca__img { width: 72px; height: 72px; border-radius: 16px; display: flex; align-items: center; justify-content: center; overflow: hidden; isolation: isolate; flex: none; }
.cl-cbusca__img img, .cl-cbusca__mini img { max-width: 86%; max-height: 86%; width: auto; height: auto; object-fit: contain; }
.cl-cbusca__marca { font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--cl-petroleo); }
.cl-cbusca__nome { font-size: 14px; font-weight: 500; color: var(--cl-tinta); line-height: 1.3; overflow-wrap: anywhere; }
.cl-cbusca__nota { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 28px; padding: 0 8px; border-radius: 14px; font-weight: 700; font-size: 14px; font-variant-numeric: tabular-nums; flex: none; }
.cl-cbusca__tirar { position: absolute; top: 8px; right: 8px; width: 30px; height: 30px; border-radius: 50%; border: 0; background: var(--cl-cinza); color: var(--cl-ameixa); font-size: 17px; line-height: 1; cursor: pointer; }
.cl-cbusca__tirar:hover, .cl-cbusca__tirar:focus-visible { background: var(--cl-ameixa); color: #fff; outline: none; }
.cl-cbusca__campo { position: relative; max-width: 700px; }
.cl-cbusca__caixa { display: flex; align-items: center; gap: 10px; background: var(--cl-branco); border: 2px solid var(--cl-petroleo); border-radius: 30px; padding: 0 8px 0 20px; height: 56px; box-shadow: 0 6px 24px rgba(0,122,140,.10); color: var(--cl-petroleo); }
.cl-cbusca__caixa:focus-within { box-shadow: 0 0 0 4px rgba(12,222,240,.35); }
.cl-cbusca__caixa input { flex: 1; min-width: 0; border: 0; outline: none; font: 16px var(--cl-corpo); color: var(--cl-tinta); background: transparent; height: 100%; }
.cl-cbusca__caixa input:disabled { cursor: not-allowed; }
.cl-cbusca__lista { position: absolute; left: 0; right: 0; top: 62px; background: var(--cl-branco); border: 1px solid var(--cl-borda); border-radius: 22px; box-shadow: 0 18px 40px rgba(46,18,56,.14); padding: 8px; z-index: 30; list-style: none; margin: 0; max-height: 380px; overflow: auto; }
.cl-cbusca__lista li { display: flex; align-items: center; gap: 12px; padding: 8px 10px; border-radius: 14px; cursor: pointer; }
.cl-cbusca__lista li[aria-selected="true"], .cl-cbusca__lista li:not(.usado):not(.vazio):hover { background: var(--cl-agua); }
.cl-cbusca__lista li.usado { opacity: .45; cursor: default; }
.cl-cbusca__lista li.vazio { color: var(--cl-suave); cursor: default; font-size: 14px; }
.cl-cbusca__lista mark { background: #FFE5EE; color: inherit; border-radius: 3px; }
.cl-cbusca__mini { width: 44px; height: 44px; border-radius: 12px; display: flex; align-items: center; justify-content: center; overflow: hidden; isolation: isolate; flex: none; }
.cl-cbusca__txt { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.cl-cbusca__snome { font-size: 15px; color: var(--cl-tinta); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cl-cbusca__cat { font-size: 12px; color: var(--cl-suave); }
.cl-cbusca__acoes { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.cl-cbusca__acoes .cl-btn:disabled { opacity: .45; cursor: not-allowed; }
.cl-cbusca__dica { font-size: 13px; color: var(--cl-suave); margin: 0; }
@media (max-width: 760px) { .cl-cbusca__escolhidos { grid-template-columns: repeat(2, minmax(0, 1fr)); } .cl-cbusca__slot { min-height: 104px; } .cl-cbusca__slot--cheio { min-height: 150px; } }
@media (prefers-reduced-motion: reduce) { .cl-cbusca__slot--novo { animation: none; } }

/* Artigo */
.cl-artigo { max-width: 760px; margin: 0 auto; }
.cl-artigo .entry-content { font-size: 18px; line-height: 1.8; color: #2F3A44; }
.cl-artigo .entry-content > * + * { margin-top: 20px; }
.cl-artigo .entry-content h2 { font-size: 34px; font-weight: 400; margin-top: 44px; }
.cl-capa { max-width: 1100px; margin: 0 auto; border-radius: 32px; overflow: hidden; }
.cl-capa img { display: block; width: 100%; max-height: 460px; object-fit: cover; }

/* Revelar ao rolar: o conteúdo é visível por padrão; o script esconde só o que está abaixo da tela e revela ao chegar */
.cl-rv.cl-espera { opacity: 0; transform: translate3d(0, 56px, 0); }
.cl-rv.cl-espera .cl-cat__img img, .cl-rv.cl-espera .cl-post__img img, .cl-rv.cl-espera.cl-banner img { transform: scale(1.18); }
.cl-rv.cl-entrou { animation: cl-sobe 1.1s cubic-bezier(.2,.7,.2,1) backwards; }
.cl-rv.cl-entrou .cl-cat__img img, .cl-rv.cl-entrou .cl-post__img img, .cl-rv.cl-entrou.cl-banner img { animation: cl-zoom 1.6s cubic-bezier(.2,.7,.2,1) backwards; }

@keyframes cl-sobe { from { opacity: 0; transform: translate3d(0, 40px, 0); } to { opacity: 1; transform: none; } }
@keyframes cl-desliza { from { opacity: 0; transform: translateX(-24px); } to { opacity: 1; transform: none; } }
@keyframes cl-zoom { from { transform: scale(1.18); } to { transform: scale(1); } }
@keyframes cl-ken { from { transform: scale(1); } to { transform: scale(1.07); } }
@keyframes cl-corre { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes cl-bolha { 0% { transform: translateY(0) scale(.8); opacity: 0; } 15% { opacity: .75; } 100% { transform: translateY(-460px) scale(1.25); opacity: 0; } }
@keyframes cl-pulsa { 0% { box-shadow: 0 0 0 0 rgba(0,122,140,.45); } 70% { box-shadow: 0 0 0 16px rgba(0,122,140,0); } 100% { box-shadow: 0 0 0 0 rgba(0,122,140,0); } }
@keyframes cl-balanca { from { transform: rotate(-4deg); } to { transform: rotate(4deg); } }
@keyframes cl-flutua { from { transform: translateY(-8px); } to { transform: translateY(8px); } }
@keyframes cl-onda { from { stroke-dashoffset: 0; } to { stroke-dashoffset: -40; } }
@keyframes cl-anel { from { stroke-dashoffset: 289; } }
@keyframes cl-pop { 0% { opacity: 0; transform: scale(.4); } 70% { opacity: 1; transform: scale(1.12); } 100% { transform: scale(1); } }
@keyframes cl-cresce { from { transform: scaleX(0); } to { transform: scaleX(1); } }

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
	.cl-rv.cl-espera { opacity: 1; transform: none; }
}

/* Celular */
@media (max-width: 760px) {
	.cl-faixa { padding-block: 56px; }
	.cl-wrap { padding-inline: 16px; }
	.cl-topo__in { gap: 12px; }
	.cl-menu { order: 3; flex-basis: 100%; overflow-x: auto; }
	.cl-menu ul { flex-wrap: nowrap; justify-content: flex-start; }
	.cl-menu li { flex: none; }
	.cl-marca { font-size: 22px; } .cl-marca img { width: 36px; height: 36px; } .cl-marca .cl-logo { width: auto; height: 46px; }
	.cl-topo__acoes { margin-left: auto; }
	.cl-slide { min-height: 520px; align-items: flex-end; }
	.cl-slide__img { height: 300px; bottom: auto; object-position: 80% center; }
	.cl-slide__txt { padding-block: 270px 96px; z-index: 1; }
	.cl-slide__txt::before { content: ''; position: absolute; inset: 160px -16px 0; background: linear-gradient(0deg, rgba(255,255,255,.95) 60%, rgba(255,255,255,0)); z-index: -1; }
	.cl-slide--escuro .cl-slide__txt::before { background: linear-gradient(0deg, rgba(46,18,56,.95) 60%, rgba(46,18,56,0)); }
	.cl-hero__setas { display: none; }
	.cl-hero__pontos { bottom: 64px; }
	.cl-corrida__trilho { font-size: 20px; }
	.cl-grade { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 12px; }
	.cl-cat__nome { font-size: 19px; }
	.cl-banner__txt { left: 18px; max-width: 50%; }
	.cl-galeria { flex-direction: column-reverse; }
	.cl-galeria__miniaturas { flex-direction: row; }
	.cl-galeria__principal { height: 320px; }
	.cl-abas__lista { justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; padding-block: 28px 16px; }
	.cl-abas__lista button { flex: none; font-size: 24px; }
}
@keyframes cl-folha { from { transform: translateY(100%); } to { transform: none; } }

/* Barra do scanner no celular */
.cl-barra-cel { display: none; }
@media (max-width: 760px) {
	body { padding-bottom: calc(84px + env(safe-area-inset-bottom, 0px)); }
	.cl-barra-cel { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; height: calc(76px + env(safe-area-inset-bottom, 0px)); padding: 8px 0 env(safe-area-inset-bottom, 0px); background: #fff; border-top: 1px solid var(--cl-borda); justify-content: space-around; align-items: flex-start; }
	.cl-barra-cel a { display: flex; flex-direction: column; align-items: center; gap: 4px; width: 64px; font-size: 11px; font-weight: 600; color: var(--cl-suave); }
	.cl-barra-cel .cl-scan { width: 64px; height: 64px; margin-top: -30px; border-radius: 32px; border: 4px solid #fff; background: linear-gradient(135deg, var(--cl-ciano), var(--cl-turquesa)); color: #fff; justify-content: center; animation: cl-pulsa 2.4s ease-out infinite; }
}

/* Gaveta de filtros: fundo escuro e botão de fechar no celular */
.cl-fundo-filtros { position: fixed; inset: 0; z-index: 55; background: rgba(46,18,56,.4); }
.cl-fundo-filtros[hidden] { display: none; }
.entry-content img { border-radius: 18px; }
.entry-content a { text-decoration: underline; text-underline-offset: 3px; }
.cl-chip.cl-nivel--bom, .cl-chip.cl-nivel--regular, .cl-chip.cl-nivel--insatisfatorio, .cl-chip.cl-nivel--controverso { animation: none; }

/* ---------- Filtros v2: barra limpa + gaveta ---------- */
.cl-barra-filtros { display: flex; flex-direction: column; gap: 14px; margin: 26px 0 28px; }
.cl-barra-filtros__topo { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.cl-barra-filtros__qtd { margin: 0; font-size: 15px; color: var(--cl-suave); }
.cl-barra-filtros__qtd strong { color: var(--cl-ameixa); font-size: 17px; }
.cl-btn-filtrar { position: relative; display: inline-flex; align-items: center; gap: 10px; min-height: 50px; padding: 0 24px; border: 0; border-radius: 26px; background: linear-gradient(135deg, var(--cl-petroleo), var(--cl-turquesa)); color: #fff; font: 600 16px var(--cl-corpo); cursor: pointer; box-shadow: 0 10px 26px rgba(0,122,140,.30); transition: transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s; animation: cl-filtro-chega .8s cubic-bezier(.2,.8,.2,1) .3s both; }
.cl-btn-filtrar::after { content: ''; position: absolute; inset: 0; border-radius: inherit; box-shadow: 0 0 0 0 rgba(12,222,240,.55); animation: cl-filtro-pulso 1.6s ease-out 1.1s 2; pointer-events: none; }
.cl-btn-filtrar:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(0,122,140,.38); }
.cl-btn-filtrar .cl-btn-filtrar__n { background: #fff; color: var(--cl-petroleo); }
.cl-ic-ajuste circle { transition: transform .45s cubic-bezier(.2,.8,.2,1); }
.cl-btn-filtrar .cl-ic-ajuste .a { animation: cl-filtro-a 1.2s ease-in-out 1.1s 2; }
.cl-btn-filtrar .cl-ic-ajuste .b { animation: cl-filtro-b 1.2s ease-in-out 1.1s 2; }
.cl-abrir-filtros:hover .cl-ic-ajuste .a { transform: translateX(6px); }
.cl-abrir-filtros:hover .cl-ic-ajuste .b { transform: translateX(-6px); }
@keyframes cl-filtro-chega { from { opacity: 0; transform: translateY(10px) scale(.92); } to { opacity: 1; transform: none; } }
@keyframes cl-filtro-pulso { 0% { box-shadow: 0 0 0 0 rgba(12,222,240,.55); } 100% { box-shadow: 0 0 0 16px rgba(12,222,240,0); } }
@keyframes cl-filtro-a { 0%, 100% { transform: none; } 50% { transform: translateX(6px); } }
@keyframes cl-filtro-b { 0%, 100% { transform: none; } 50% { transform: translateX(-6px); } }
.cl-filtrar-flutua { position: fixed; z-index: 45; left: 50%; bottom: 28px; display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 26px; border: 0; border-radius: 26px; background: var(--cl-ameixa); color: #fff; font: 600 15px var(--cl-corpo); cursor: pointer; box-shadow: 0 16px 40px rgba(46,18,56,.35); transform: translate(-50%, 140%); opacity: 0; transition: transform .5s cubic-bezier(.2,.8,.2,1), opacity .3s; }
.cl-filtrar-flutua.visivel { transform: translate(-50%, 0); opacity: 1; }
.cl-filtrar-flutua .cl-btn-filtrar__n { background: var(--cl-ciano); color: var(--cl-ameixa); }
@media (max-width: 760px) { .cl-filtrar-flutua { bottom: calc(96px + env(safe-area-inset-bottom, 0px)); } }
@media (prefers-reduced-motion: reduce) { .cl-btn-filtrar, .cl-btn-filtrar::after, .cl-ic-ajuste circle { animation: none !important; } }
.cl-btn-filtrar__n { display: inline-grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 11px; background: var(--cl-magenta); color: #fff; font-size: 12px; }
.cl-atalhos { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px; -webkit-mask-image: linear-gradient(90deg, #000 92%, transparent); mask-image: linear-gradient(90deg, #000 92%, transparent); }
.cl-atalhos::-webkit-scrollbar { display: none; }
.cl-atalho { flex: none; display: inline-flex; align-items: center; gap: 6px; min-height: 38px; padding: 0 16px; border-radius: 19px; border: 1px solid var(--cl-borda); background: #fff; color: var(--cl-texto); font-size: 14px; font-weight: 500; white-space: nowrap; transition: border-color .2s, background .2s, color .2s; }
.cl-atalho:hover { border-color: var(--cl-ameixa); color: var(--cl-ameixa); }
.cl-atalho.ativo { background: var(--cl-ameixa); border-color: var(--cl-ameixa); color: #fff; }
.cl-atalhos--subs .cl-atalho { background: var(--cl-agua); border-color: transparent; }
.cl-atalhos--subs .cl-atalho.ativo { background: var(--cl-petroleo); color: #fff; }
.cl-ativos { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.cl-ativo { display: inline-flex; align-items: center; gap: 8px; padding: 6px 8px 6px 14px; border-radius: 16px; background: var(--cl-bolha); color: var(--cl-ameixa); font-size: 13px; font-weight: 600; }
.cl-ativo span { display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 10px; background: rgba(46,18,56,.08); font-size: 15px; line-height: 1; }
.cl-ativo:hover span { background: var(--cl-ameixa); color: #fff; }
.cl-ativos__limpar { font-size: 13px; color: var(--cl-suave); text-decoration: underline; text-underline-offset: 3px; margin-left: 4px; }

.cl-gaveta { position: fixed; z-index: 60; top: 0; right: 0; bottom: 0; width: min(440px, 100vw); display: flex; flex-direction: column; background: #fff; box-shadow: -24px 0 60px rgba(46,18,56,.18); transform: translateX(100%); transition: transform .45s cubic-bezier(.2,.8,.2,1); }
.cl-gaveta[hidden] { display: none; }
.cl-gaveta.aberto { transform: none; }
.cl-gaveta__topo { display: flex; justify-content: space-between; align-items: center; padding: 22px 28px; border-bottom: 1px solid var(--cl-borda); }
.cl-gaveta__topo h2 { margin: 0; font-size: 28px; font-weight: 400; }
.cl-gaveta__fechar { display: inline-grid; place-items: center; width: 44px; height: 44px; border: 0; border-radius: 22px; background: var(--cl-cinza); color: var(--cl-ameixa); cursor: pointer; }
.cl-gaveta__fechar:hover { background: var(--cl-ameixa); color: #fff; }
.cl-gaveta__corpo { flex: 1; overflow-y: auto; padding: 4px 28px 24px; overscroll-behavior: contain; }
.cl-gaveta__nota { margin: 18px 0 0; font-size: 13px; color: var(--cl-suave); }
.cl-gaveta__rodape { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 28px calc(16px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--cl-borda); }
.cl-gaveta__rodape .cl-btn { flex: 1; max-width: 240px; justify-content: center; }
.cl-gaveta__limpar { font-weight: 600; color: var(--cl-ameixa); text-decoration: underline; text-underline-offset: 3px; }

.cl-secao { border-bottom: 1px solid var(--cl-borda); }
.cl-secao summary { list-style: none; display: flex; align-items: center; gap: 10px; padding: 20px 0; cursor: pointer; font: 600 16px var(--cl-corpo); color: var(--cl-ameixa); }
.cl-secao summary::-webkit-details-marker { display: none; }
.cl-secao summary::after { content: ''; margin-left: auto; width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-3px); transition: transform .3s; }
.cl-secao[open] summary::after { transform: rotate(-135deg) translateY(-2px); }
.cl-secao summary em { font-style: normal; display: inline-grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 11px; background: var(--cl-bolha); font-size: 12px; }
.cl-secao[open] > :not(summary) { animation: cl-surge .35s ease both; }
@keyframes cl-surge { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }

.cl-opcoes { padding-bottom: 20px; }
.cl-op input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.cl-opcoes--chips { display: flex; flex-wrap: wrap; gap: 8px; }
.cl-opcoes--chips .cl-op span { display: inline-flex; align-items: center; min-height: 38px; padding: 0 16px; border-radius: 19px; border: 1px solid var(--cl-borda); font-size: 14px; cursor: pointer; transition: all .2s; }
.cl-opcoes--chips .cl-op input:checked + span { background: var(--cl-ameixa); border-color: var(--cl-ameixa); color: #fff; }
.cl-opcoes--chips .cl-op input:disabled + span { opacity: .7; cursor: default; }
.cl-opcoes--lista { display: flex; flex-direction: column; max-height: 300px; overflow-y: auto; }
.cl-opcoes--lista .cl-op { position: relative; display: flex; align-items: center; gap: 12px; padding: 9px 4px; border-radius: 10px; cursor: pointer; font-size: 15px; }
.cl-opcoes--lista .cl-op:hover { background: var(--cl-cinza); }
.cl-opcoes--lista .cl-op span::before { content: ''; display: inline-block; vertical-align: -4px; width: 18px; height: 18px; margin-right: 12px; border: 1.5px solid #B9C7CB; border-radius: 5px; transition: all .2s; }
.cl-opcoes--lista .cl-op input[type="radio"] + span::before { border-radius: 50%; }
.cl-opcoes--lista .cl-op input:checked + span::before { background: var(--cl-ameixa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center/12px no-repeat; border-color: var(--cl-ameixa); }
.cl-opcoes--lista .cl-op input:focus-visible + span::before, .cl-opcoes--chips .cl-op input:focus-visible + span, .cl-seg input:focus-visible + span { outline: 2px solid var(--cl-turquesa); outline-offset: 2px; }
.cl-opcoes--lista small { margin-left: auto; color: var(--cl-suave); font-size: 13px; }
.cl-busca-marca { width: 100%; height: 44px; margin-bottom: 8px; padding: 0 16px; border: 1px solid var(--cl-borda); border-radius: 22px; font: 400 15px var(--cl-corpo); outline: none; }
.cl-busca-marca:focus { border-color: var(--cl-turquesa); }
.cl-segmentos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; padding: 4px; margin-bottom: 20px; border-radius: 24px; background: var(--cl-cinza); }
.cl-seg { position: relative; }
.cl-seg input { position: absolute; opacity: 0; }
.cl-seg span { display: grid; place-items: center; height: 40px; border-radius: 20px; font-size: 14px; font-weight: 600; color: var(--cl-suave); cursor: pointer; transition: all .2s; }
.cl-seg input:checked + span { background: #fff; color: var(--cl-ameixa); box-shadow: 0 4px 12px rgba(46,18,56,.10); }
.cl-seg--60 input:checked + span { color: #7A5A00; }
.cl-seg--80 input:checked + span { color: var(--cl-bom-txt); }
@media (max-width: 760px) {
	.cl-barra-filtros__qtd span { display: none; }
	.cl-gaveta { top: auto; left: 0; width: 100%; max-height: 88vh; border-radius: 28px 28px 0 0; transform: translateY(100%); box-shadow: 0 -20px 60px rgba(46,18,56,.25); }
	.cl-gaveta__topo, .cl-gaveta__corpo, .cl-gaveta__rodape { padding-left: 20px; padding-right: 20px; }
}
@media (prefers-reduced-motion: reduce) { .cl-gaveta { transition: none; } }
.cl-op[hidden] { display: none !important; }

/* Todas as categorias (como no app) */
.cl-cats-todas__titulo { margin: 56px 0 18px; font-size: 26px; font-weight: 400; color: var(--cl-ameixa); }
.cl-cats-todas { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 10px; }
.cl-cat-mini { display: flex; align-items: center; gap: 14px; padding: 10px 16px 10px 10px; border-radius: 18px; background: #fff; border: 1px solid var(--cl-borda); color: var(--cl-ameixa); transition: transform .3s, box-shadow .3s, border-color .3s; }
.cl-cat-mini:hover { transform: translateY(-2px); border-color: transparent; box-shadow: 0 12px 28px rgba(0,80,92,.12); }
.cl-cat-mini__ic { flex: none; display: grid; place-items: center; width: 52px; height: 52px; border-radius: 14px; background: var(--cl-agua); overflow: hidden; }
.cl-cat-mini__ic img { width: 34px; height: 42px; object-fit: contain; }
.cl-cat-mini__ic--app { background: linear-gradient(160deg, #E8F8FA, #F6EFFA); }
.cl-cat-mini__ic--app img { width: 82%; height: 82%; object-fit: contain; }
.cl-cat-mini__nome { font-weight: 600; font-size: 15px; line-height: 1.25; }
.cl-cat-mini__qtd { margin-left: auto; font-size: 13px; color: var(--cl-suave); }
@media (max-width: 760px) { .cl-cats-todas { grid-template-columns: 1fr 1fr; } .cl-cat-mini { padding: 8px 10px 8px 8px; gap: 10px; } .cl-cat-mini__ic { width: 44px; height: 44px; } .cl-cat-mini__nome { font-size: 13px; } .cl-cat-mini__qtd { display: none; } }

/* Página do ingrediente */
.cl-ingpag { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(300px, 1fr); gap: 48px; align-items: start; }
.cl-ing__texto h2 { font-size: 30px; margin: 36px 0 10px; }
.cl-ing__texto h2:first-child { margin-top: 0; }
.cl-ing__texto p { max-width: 64ch; }
.cl-ing__lado { display: flex; flex-direction: column; gap: 18px; }
.cl-funcao { padding: 26px; border-radius: var(--cl-raio); background: linear-gradient(160deg, #F7F0FB, #FFF5F7); border: 1px solid #EBDDF3; }
.cl-funcao__sobre { margin: 0 0 14px; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--cl-magenta); }
.cl-funcao__lista { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.cl-funcao__lista li { display: grid; gap: 2px; padding-bottom: 14px; border-bottom: 1px solid rgba(163,32,143,.12); }
.cl-funcao__lista li:last-child { border-bottom: 0; padding-bottom: 0; }
.cl-funcao__lista strong { font-family: var(--cl-display); font-weight: 400; font-size: 22px; color: var(--cl-ameixa); }
.cl-funcao__en { font-size: 11px; font-weight: 600; letter-spacing: .08em; color: var(--cl-suave); }
.cl-funcao__txt { font-size: 15px; color: var(--cl-texto); margin-top: 4px; }
.cl-funcao__rodape { margin: 18px 0 0; font-size: 13px; color: var(--cl-suave); }
.cl-funcao__rodape a { font-weight: 600; color: var(--cl-magenta); }
@media (max-width: 900px) { .cl-ingpag { grid-template-columns: 1fr; gap: 32px; } }

/* Lista de categorias: menu e página /categorias/ */
ul.cl-cats-todas { list-style: none; margin: 0; padding: 0; }
.cl-cats-todas li { display: flex; flex-direction: column; gap: 6px; }
.cl-cat-mini__subs { display: flex; flex-wrap: wrap; gap: 4px 12px; padding: 0 6px; font-size: 13px; }
.cl-cat-mini__subs a { color: var(--cl-petroleo); }
.cl-cat-mini__subs a:hover { text-decoration: underline; }
.cl-menu { display: flex; align-items: center; justify-content: center; gap: 26px; }
.cl-menu > ul { flex: 0 1 auto; }
.cl-menu__cats { display: inline-flex; align-items: center; gap: 6px; padding: 0; border: 0; background: none; color: var(--cl-tinta); font: 500 15px var(--cl-corpo); cursor: pointer; white-space: nowrap; }
.cl-menu__cats svg { transition: transform .3s; }
.cl-menu__cats:hover, .cl-menu__cats[aria-expanded="true"] { color: var(--cl-petroleo); }
.cl-menu__cats[aria-expanded="true"] svg { transform: rotate(180deg); }
.cl-topo { position: sticky; }
.cl-mega { position: absolute; left: 0; right: 0; top: 100%; max-height: calc(100vh - 140px); overflow-y: auto; background: #fff; border-bottom: 1px solid var(--cl-borda); box-shadow: 0 30px 60px rgba(46,18,56,.14); padding-block: 26px 32px; opacity: 0; transform: translateY(-8px); transition: opacity .25s, transform .35s cubic-bezier(.2,.8,.2,1); }
.cl-mega[hidden] { display: none; }
.cl-mega.aberto { opacity: 1; transform: none; }
.cl-mega__topo { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.cl-mega__topo .cl-sobre { margin: 0; }
.cl-mega__todas { font-weight: 600; font-size: 14px; color: var(--cl-petroleo); }
.cl-cats-todas--mega { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; }
.cl-cats-todas--mega .cl-cat-mini { padding: 6px 12px 6px 6px; border-color: transparent; }
.cl-cats-todas--mega .cl-cat-mini:hover { border-color: var(--cl-borda); box-shadow: none; transform: none; background: var(--cl-agua); }
.cl-cats-todas--mega .cl-cat-mini__ic { width: 40px; height: 40px; border-radius: 12px; }
.cl-cats-todas--mega .cl-cat-mini__ic img { width: 26px; height: 32px; }
.cl-cats-todas--mega .cl-cat-mini__ic--app img { width: 84%; height: 84%; }
.cl-cats-todas--mega .cl-cat-mini__nome { font-size: 14px; }
@media (max-width: 760px) {
	.cl-menu { justify-content: flex-start; gap: 22px; }
	.cl-mega { max-height: calc(100vh - 180px); padding-block: 18px 24px; }
	.cl-cats-todas--mega { grid-template-columns: 1fr 1fr; }
	.cl-cats-todas--mega .cl-cat-mini__qtd { display: none; }
}
.cl-cats-todas--mega .cl-cat-mini__subs { display: none; }
@media (max-width: 760px) { .cl-mega__topo .cl-sobre { display: none; } }

/* Linha do ingrediente: nome nunca invade a função; no celular a função desce */
.cl-ing summary { position: relative; padding-right: 48px; }
.cl-ing summary::after { position: absolute; right: 20px; top: 50%; margin: -7px 0 0; }
.cl-ing[open] summary::after { margin-top: -2px; }
.cl-ing__nome { overflow-wrap: anywhere; }
@media (max-width: 600px) {
	.cl-ing summary { flex-wrap: wrap; row-gap: 4px; }
	.cl-ing__nome { flex: 1 1 calc(100% - 30px); }
	.cl-ing__func { flex: 1 1 100%; padding-left: 26px; text-align: left; white-space: normal; }
}
@media (max-width: 1180px) and (min-width: 761px) {
	.cl-menu { gap: 18px; }
	.cl-menu ul { gap: 6px 18px; }
	.cl-menu a, .cl-menu__cats { font-size: 14px; }
}

/* ---------- Etapa 3 (tema 0.1.11): listas categoria × público, guias e páginas ---------- */
.cl-combo-faq { margin: 48px 0 24px; max-width: 860px; }
.cl-catalogo .cl-cartao--agua { margin-top: 20px; }
.entry-content .cl-grade.cl-grade--guia { margin: 20px 0 28px; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 20px 16px; }
.entry-content .cl-grade--guia a { text-decoration: none; }
.cl-revisao { font-size: 14px; color: #5b5560; border-left: 3px solid #009CB4; padding: 6px 12px; margin: 0 0 24px; }
.entry-content table { width: 100%; border-collapse: collapse; margin: 16px 0 24px; font-size: 15px; }
.entry-content th, .entry-content td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid rgba(46,18,56,.12); }
.entry-content thead th { font-weight: 600; background: #EFF9FA; }
@media (max-width: 640px) {
	.entry-content table { display: block; overflow-x: auto; }
	.entry-content .cl-grade.cl-grade--guia { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 12px; }
}

/* Botão Início ao lado do logo (tema 0.1.12) */
.cl-btn-inicio { margin-left: -12px; flex: none; }
.cl-btn-inicio[aria-current="page"] { background: var(--cl-agua); color: var(--cl-petroleo); border-color: transparent; }
@media (max-width: 900px) { .cl-btn-inicio { margin-left: -4px; width: 40px; height: 40px; } }

/* Nota mínima: barra deslizante (tema 0.1.12) */
.cl-faixa-nota { --v: 0; --cor: #F26B1D; padding: 4px 2px 20px; }
.cl-faixa-nota[data-faixa="bom"] { --cor: #E0A800; }
.cl-faixa-nota[data-faixa="otimo"] { --cor: #33AE2E; }
.cl-faixa-nota__topo { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 12px; font-size: 14px; color: var(--cl-suave); }
.cl-faixa-nota__valor { font-weight: 700; font-size: 18px; color: var(--cl-ameixa); }
.cl-faixa-nota input[type=range] { -webkit-appearance: none; appearance: none; width: 100%; height: 28px; background: transparent; cursor: pointer; margin: 0; }
.cl-faixa-nota input[type=range]::-webkit-slider-runnable-track { height: 8px; border-radius: 4px; background: linear-gradient(to right, var(--cl-cinza) 0, var(--cl-cinza) calc(var(--v) / 95 * 100%), var(--cor) calc(var(--v) / 95 * 100%), var(--cor) 100%); }
.cl-faixa-nota input[type=range]::-moz-range-track { height: 8px; border-radius: 4px; background: var(--cor); }
.cl-faixa-nota input[type=range]::-moz-range-progress { height: 8px; border-radius: 4px; background: var(--cl-cinza); }
.cl-faixa-nota input[type=range]::-webkit-slider-thumb { -webkit-appearance: none; width: 26px; height: 26px; margin-top: -9px; border-radius: 50%; background: #fff; border: 3px solid var(--cor); box-shadow: 0 3px 10px rgba(46,18,56,.18); }
.cl-faixa-nota input[type=range]::-moz-range-thumb { width: 20px; height: 20px; border-radius: 50%; background: #fff; border: 3px solid var(--cor); box-shadow: 0 3px 10px rgba(46,18,56,.18); }
.cl-faixa-nota input[type=range]:focus-visible { outline: 2px solid var(--cl-turquesa); outline-offset: 4px; border-radius: 8px; }
.cl-faixa-nota__marcas { position: relative; height: 16px; margin-top: 6px; font-size: 12px; color: var(--cl-suave); }
.cl-faixa-nota__marcas span { position: absolute; transform: translateX(-50%); }
.cl-faixa-nota__marcas span:nth-child(1) { left: 13px; } .cl-faixa-nota__marcas span:nth-child(2) { left: calc(13px + (100% - 26px) * 60 / 95); }
.cl-faixa-nota__marcas span:nth-child(3) { left: calc(13px + (100% - 26px) * 80 / 95); } .cl-faixa-nota__marcas span:nth-child(4) { left: calc(100% - 13px); }

/* Newsletter do rodapé (tema 0.1.14) */
.cl-news { position: relative; flex-wrap: wrap; }
.cl-news__ok { flex: 1 1 100%; display: flex; gap: 8px; align-items: flex-start; font-size: 13px; line-height: 1.4; opacity: .85; margin-top: 4px; }
.cl-news .cl-news__ok input { margin-top: 2px; flex: none; width: 16px; height: 16px; padding: 0; border-radius: 3px; }
.cl-news__ok a { color: inherit; text-decoration: underline; }
.cl-news__msg { font-size: 14px; margin-top: 8px; }

/* Proibido no Brasil (ANVISA) — tema 0.2.1 */
.cl-alerta-br { margin: 0 0 16px; padding: 12px 16px; border-radius: 14px; background: #FFF1EE; border: 1px solid #F5B5A6; color: #7A1E0E; font-size: 15px; line-height: 1.5; }

/* Duas frentes: porta de entrada, Luupa Food e cores por frente — tema 0.3.0 */
:root {
	--cl-cos: #EE2677;      /* cabo rosa do logo de cosméticos */
	--cl-food: #28C762;     /* cabo verde do logo food */
	--cl-food-esc: #137A3B; /* verde para texto e botão (contraste AA no branco) */
	--cl-food-bg: #EEFAF2;
}
.cl-selo-breve { display: inline-block; margin-left: 4px; padding: 2px 8px; border-radius: 10px; background: var(--cl-food-bg); color: var(--cl-food-esc); font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; vertical-align: 2px; }
.cl-rodape .cl-selo-breve { background: rgba(255,255,255,.12); color: #CFF5DC; }
.cl-menu a[aria-current="page"] { color: var(--cl-petroleo); }

.cl-porta-hero { position: relative; overflow: hidden; background: linear-gradient(180deg, #E3F8FA 0%, #F6FBFC 100%); padding-block: 72px 140px; }
.cl-porta-hero__tit { font-size: clamp(40px, 6vw, 72px); }
.cl-portas { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; margin-top: -96px; }
.cl-porta { display: flex; flex-direction: column; gap: 14px; padding: 36px 36px 32px; border-radius: 28px; background: #fff; box-shadow: 0 18px 52px rgba(0,80,92,.14); border-top: 6px solid var(--cl-cos); transition: transform .35s, box-shadow .35s; }
.cl-porta:hover { transform: translateY(-4px); box-shadow: 0 26px 64px rgba(0,80,92,.18); }
.cl-porta--food { border-top-color: var(--cl-food); }
.cl-porta__ic { width: 76px; height: 76px; animation: cl-flutua 3.2s ease-in-out infinite alternate; }
.cl-porta__tag { font-size: 14px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: #B0175A; }
.cl-porta--food .cl-porta__tag { color: var(--cl-food-esc); }
.cl-porta__tit { font-size: clamp(30px, 3.2vw, 42px); }
.cl-porta__txt { color: var(--cl-texto); font-size: 16px; line-height: 1.65; }
.cl-porta__busca { display: flex; gap: 8px; padding: 6px; border: 1px solid var(--cl-borda); border-radius: 30px; background: var(--cl-cinza); }
.cl-porta__busca input { flex: 1 1 auto; min-width: 0; height: 48px; border: 0; outline: none; background: transparent; padding: 0 16px; font: 400 16px var(--cl-corpo); color: var(--cl-tinta); }
.cl-porta__busca .cl-btn { min-height: 48px; padding: 0 18px; }
.cl-porta__atalhos { display: flex; flex-wrap: wrap; gap: 8px; font-size: 14px; }
.cl-porta__atalhos a { padding: 6px 14px; border-radius: 18px; background: #FFF0F5; color: #8E1048; }
.cl-porta__atalhos a:hover { background: var(--cl-cos); color: #fff; }
.cl-porta__lista { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; color: var(--cl-texto); font-size: 15px; }
.cl-porta__lista li { position: relative; padding-left: 26px; }
.cl-porta__lista li::before { content: ""; position: absolute; left: 0; top: .45em; width: 14px; height: 14px; border-radius: 50%; background: var(--cl-food-bg); box-shadow: inset 0 0 0 4px var(--cl-food); }
.cl-porta__btn { margin-top: auto; align-self: flex-start; }
.cl-porta--food .cl-porta__btn, .cl-btn--food { background: var(--cl-food-esc); color: #fff; }
.cl-porta--food .cl-porta__btn:hover, .cl-btn--food:hover { background: var(--cl-ameixa); color: #fff; }
@media (max-width: 860px) {
	.cl-porta-hero { padding-block: 48px 110px; }
	.cl-portas { grid-template-columns: 1fr; gap: 20px; margin-top: -80px; }
	.cl-porta { padding: 28px 22px 24px; }
}

.cl-sobre--food { color: var(--cl-food-esc); }
.cl-faixa--food { background: var(--cl-food-bg); }
.cl-food-hero { background: linear-gradient(160deg, var(--cl-food-bg) 0%, #fff 70%); padding-block: 56px 72px; }
.cl-food-hero .cl-trilha { margin: 0; }
.cl-food-hero__img { display: flex; justify-content: center; }
.cl-food-hero__img img { width: min(260px, 60vw); height: auto; animation: cl-flutua 3.4s ease-in-out infinite alternate; }
.cl-food-item { padding: 26px; border-radius: 22px; background: #fff; border: 1px solid #D7F0E0; }
.cl-food-item strong { display: block; font: 400 24px var(--cl-display); color: var(--cl-ameixa); margin-bottom: 8px; }
.cl-food-item p { color: var(--cl-texto); font-size: 15px; line-height: 1.6; }
.cl-food-form { width: 100%; text-align: left; }
.cl-food-form .cl-news input[type="email"] { border: 1px solid #BFE6CC; }
.cl-food-form .cl-news .cl-btn { background: var(--cl-food-esc); }
.cl-food-form .cl-news .cl-btn:hover { background: var(--cl-ameixa); }
.cl-food-form .cl-news__msg { text-align: center; font-size: 17px; color: var(--cl-food-esc); font-weight: 600; }

/* ===== Porta de entrada, Luupa Food e rodapé ilustrado (tema 0.5.0, prévia aprovada em 22/10/2026) ===== */
.lp {
	--petroleo: #007A8C; --petroleo-esc: #005E6C; --turquesa: #009CB4; --ciano: #0CDEF0;
	--ameixa: #2E1238; --tinta: #2A1A30; --texto: #3D4A55; --suave: #5F6A73;
	--agua: #EFF9FA; --agua2: #E3F8FA; --rosado: #FFF5F7; --rosa: #EE2677; --rosa-claro: #FFE3EC;
	--menta: #EEFAF2; --menta2: #DDF5E5; --food: #28C762; --food-esc: #137A3B;
	--borda: #E3F0F2; --branco: #FFFFFF;
	--bom: #33AE2E; --reg: #FEBE0E; --ins: #FE9737; --con: #FF1701;
	--display: 'Butler', 'Iowan Old Style', 'Palatino Linotype', Georgia, serif;
	--corpo: 'DM Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--curva: cubic-bezier(.2,.75,.2,1);
	color-scheme: light;
}
.lp h1, .lp h2, .lp h3 { font-family: var(--display); font-weight: 300; color: var(--ameixa); line-height: 1.12; margin: 0; text-wrap: balance; }
.lp .wrap { max-width: 1200px; margin: 0 auto; padding-left: max(16px, env(safe-area-inset-left, 0px)); padding-right: max(16px, env(safe-area-inset-right, 0px)); }
.lp .breve { display: inline-block; margin-left: 4px; padding: 2px 8px; border-radius: 10px; background: var(--menta); color: var(--food-esc); font-size: 11px; font-weight: 600; vertical-align: 2px; }
.lp .btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; padding: 0 28px; border-radius: 26px; border: 0; font: 600 15px/1 var(--corpo); cursor: pointer; transition: background .3s, transform .3s var(--curva); }
.lp .btn--cheio { background: var(--petroleo); color: #fff; }
.lp .btn--cheio:hover { background: var(--ameixa); color: #fff; transform: translateY(-2px); }
.lp .btn--food { background: var(--food-esc); color: #fff; }
.lp .btn--food:hover { background: var(--ameixa); color: #fff; transform: translateY(-2px); }
.lp .hero { position: relative; overflow: hidden; background: linear-gradient(180deg, var(--agua2) 0%, #F7FCFD 100%); }
.lp .hero--food { background: linear-gradient(180deg, var(--menta2) 0%, #F8FDF9 100%); }
.lp .hero .wrap { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 40px; align-items: center; padding-block: 64px 96px; }
.lp .hero h1 { font-size: clamp(44px, 5.6vw, 74px); }
.lp .hero .lead { font-size: 18px; color: var(--texto); max-width: 34em; margin-top: 18px; line-height: 1.65; }
.lp .sobre { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; color: var(--petroleo); margin-bottom: 16px; }
.lp .hero--food .sobre { color: var(--food-esc); }
.lp .busca { margin-top: 30px; display: flex; gap: 8px; padding: 8px; background: #fff; border-radius: 34px; box-shadow: 0 18px 48px rgba(0,80,92,.14); max-width: 540px; }
.lp .busca input { flex: 1; min-width: 0; border: 0; outline: none; background: transparent; padding: 0 16px; font: 400 16px var(--corpo); color: var(--tinta); }
.lp .busca .btn { animation: lp-pulsa 2.6s ease-in-out infinite; }
.lp .confianca { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-top: 22px; font-size: 14px; color: var(--suave); }
.lp .confianca span { display: inline-flex; align-items: center; gap: 6px; }
.lp .confianca svg { color: var(--bom); }
.lp .nuvem { position: absolute; z-index: 1; color: #fff; opacity: .9; animation: lp-deriva 38s linear infinite; }
.lp .n1 { top: 40px; left: -160px; width: 150px; }
.lp .n2 { top: 150px; left: -240px; width: 220px; animation-duration: 54s; animation-delay: -20s; opacity: .7; }
.lp .n3 { bottom: 70px; left: -120px; width: 120px; animation-duration: 46s; animation-delay: -34s; }
.lp .obj { position: absolute; z-index: 3; animation: lp-boia 4.6s ease-in-out infinite alternate; filter: drop-shadow(0 12px 16px rgba(0,60,70,.14)); }
.lp .obj svg { display: block; width: 100%; height: auto; }
.lp .cena { position: relative; justify-self: center; width: min(330px, 86vw); }
.lp .cel { position: relative; z-index: 2; aspect-ratio: 9 / 18.5; border-radius: 44px; background: var(--ameixa); padding: 12px; box-shadow: 0 40px 80px -24px rgba(46,18,56,.45), inset 0 0 0 2px rgba(255,255,255,.08); transform: rotate(-3deg); animation: lp-entra 1.1s var(--curva) both; }
.lp .cel__tela { position: relative; height: 100%; border-radius: 34px; background: #fff; overflow: hidden; }
.lp .cel__ilha { position: absolute; top: 10px; left: 50%; transform: translateX(-50%); width: 84px; height: 22px; border-radius: 12px; background: var(--ameixa); z-index: 5; }
.lp .tela { position: absolute; inset: 0; padding: 46px 18px 18px; display: flex; flex-direction: column; gap: 12px; opacity: 0; transform: translateY(14px); transition: opacity .6s ease, transform .6s var(--curva); }
.lp .tela.ativa { opacity: 1; transform: none; }
.lp .tela__topo { display: flex; gap: 12px; align-items: center; }
.lp .tela__prod { width: 64px; height: 64px; border-radius: 16px; background: var(--rosado); display: grid; place-items: center; flex: none; }
.lp .tela--food .tela__prod { background: var(--menta); }
.lp .tela__prod svg { width: 46px; height: 46px; }
.lp .tela__nome { font: 400 17px/1.2 var(--display); color: var(--ameixa); }
.lp .tela__marca { font-size: 12px; color: var(--suave); }
.lp .nota { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 16px; background: var(--agua); }
.lp .anel { position: relative; width: 58px; height: 58px; flex: none; }
.lp .anel svg { width: 58px; height: 58px; transform: rotate(-90deg); }
.lp .anel circle { fill: none; stroke-width: 6; }
.lp .anel .fundo { stroke: #E2EBEE; }
.lp .anel .arco { stroke-linecap: round; stroke-dasharray: 151; stroke-dashoffset: 151; transition: stroke-dashoffset 1.4s var(--curva) .25s; }
.lp .tela.ativa .anel .arco { stroke-dashoffset: var(--resto); }
.lp .anel b { position: absolute; inset: 0; display: grid; place-items: center; font: 600 17px var(--corpo); color: var(--tinta); }
.lp .nota strong { display: block; font-size: 15px; }
.lp .nota span { font-size: 12px; color: var(--suave); }
.lp .linhas { display: grid; gap: 7px; }
.lp .linha { display: flex; align-items: center; gap: 9px; font-size: 13px; color: var(--texto); padding: 7px 10px; border-radius: 12px; background: #F7FAFB; opacity: 0; transform: translateX(10px); transition: opacity .5s ease, transform .5s var(--curva); }
.lp .tela.ativa .linha { opacity: 1; transform: none; }
.lp .tela.ativa .linha:nth-child(1) { transition-delay: .5s; }
.lp .tela.ativa .linha:nth-child(2) { transition-delay: .62s; }
.lp .tela.ativa .linha:nth-child(3) { transition-delay: .74s; }
.lp .tela.ativa .linha:nth-child(4) { transition-delay: .86s; }
.lp .ponto { width: 10px; height: 10px; border-radius: 50%; flex: none; }
.lp .linha em { margin-left: auto; font-style: normal; font-size: 11px; color: var(--suave); }
.lp .troca { margin-top: auto; display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 16px; background: var(--rosado); font-size: 12px; color: var(--texto); }
.lp .tela--food .troca { background: var(--menta); }
.lp .troca b { color: var(--tinta); font-weight: 600; }
.lp .mini { width: 30px; height: 30px; border-radius: 50%; flex: none; display: grid; place-items: center; color: #fff; font: 600 11px var(--corpo); }
.lp .scan { position: absolute; left: 14px; right: 14px; top: 0; height: 2px; background: linear-gradient(90deg, transparent, var(--ciano), transparent); box-shadow: 0 0 14px var(--ciano); z-index: 4; animation: lp-scan 4.5s ease-in-out infinite; }
.lp .cel__rot { position: absolute; z-index: 4; bottom: -18px; left: 50%; transform: translateX(-50%); display: flex; gap: 6px; background: #fff; padding: 6px; border-radius: 20px; box-shadow: 0 10px 24px rgba(0,60,70,.14); }
.lp .cel__rot button { border: 0; border-radius: 14px; padding: 6px 12px; background: transparent; color: var(--suave); font-size: 13px; font-weight: 600; cursor: pointer; }
.lp .cel__rot button[aria-pressed="true"] { background: var(--ameixa); color: #fff; }
.lp .onda { display: block; width: 100%; height: 56px; margin-top: -55px; position: relative; z-index: 3; }
.lp .portas { padding-block: 40px 96px; }
.lp .portas .wrap { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.lp .porta { position: relative; overflow: hidden; display: grid; gap: 14px; align-content: start; padding: 36px 36px 32px; border-radius: 30px; color: inherit; transition: transform .45s var(--curva), box-shadow .45s; }
.lp .porta--cos { background: var(--rosado); }
.lp .porta--food { background: var(--menta); }
.lp .porta:hover { transform: translateY(-6px); box-shadow: 0 26px 56px -20px rgba(46,18,56,.28); color: inherit; }
.lp .porta__ilu { position: absolute; right: 22px; top: 22px; width: 140px; pointer-events: none; }
.lp .porta__ilu .obj { position: absolute; }
.lp .porta:hover .porta__ilu .obj { animation-duration: 1.4s; }
.lp .porta__tag { font-size: 14px; font-weight: 600; color: #B0175A; }
.lp .porta--food .porta__tag { color: var(--food-esc); }
.lp .porta h2 { font-size: clamp(32px, 3.4vw, 44px); max-width: 9em; }
.lp .porta p { color: var(--texto); max-width: 30em; }
.lp .chips { display: flex; flex-wrap: wrap; gap: 8px; }
.lp .chip { display: inline-flex; align-items: center; gap: 6px; padding: 7px 14px; border-radius: 18px; background: #fff; font-size: 13px; font-weight: 500; color: var(--tinta); }
.lp .chip i { width: 8px; height: 8px; border-radius: 50%; }
.lp .porta .btn { justify-self: start; margin-top: 6px; }
.lp .porta--cos .btn { background: var(--ameixa); color: #fff; }
.lp .faixa { padding-block: 96px; }
.lp .faixa--agua { background: var(--agua); }
.lp .faixa--menta { background: var(--menta); }
.lp .cabeca { display: grid; gap: 10px; margin-bottom: 48px; text-align: center; justify-items: center; }
.lp .cabeca h2 { font-size: clamp(34px, 4vw, 52px); max-width: 16em; }
.lp .cabeca p { color: var(--texto); max-width: 36em; }
.lp .passos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; position: relative; }
.lp .passos::before { content: ""; position: absolute; top: 58px; left: 16%; right: 16%; border-top: 2px dashed #BFE3E8; }
.lp .passo { position: relative; display: grid; gap: 12px; justify-items: center; text-align: center; }
.lp .passo__ic { width: 116px; height: 116px; border-radius: 50%; background: #fff; display: grid; place-items: center; box-shadow: 0 16px 36px -18px rgba(0,80,92,.35); animation: lp-boia 3.8s ease-in-out infinite alternate; }
.lp .passo:nth-child(2) .passo__ic { animation-delay: -1.2s; }
.lp .passo:nth-child(3) .passo__ic { animation-delay: -2.4s; }
.lp .passo__ic svg { width: 64px; height: 64px; }
.lp .passo__n { font: 600 13px var(--corpo); color: var(--petroleo); }
.lp .passo h3 { font-size: 26px; }
.lp .passo p { color: var(--texto); font-size: 15px; max-width: 22em; }
.lp .trocas { display: grid; gap: 18px; }
.lp .par { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); gap: 18px; align-items: center; padding: 18px; border-radius: 24px; background: #fff; }
.lp .prod { display: flex; align-items: center; gap: 14px; min-width: 0; }
.lp .prod__img { width: 70px; height: 70px; border-radius: 18px; display: grid; place-items: center; flex: none; }
.lp .prod__img svg { width: 50px; height: 50px; }
.lp .prod b { display: block; font: 400 19px/1.2 var(--display); color: var(--ameixa); }
.lp .prod span { font-size: 13px; color: var(--suave); }
.lp .prod__nota { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 16px; font-size: 13px; font-weight: 600; white-space: nowrap; }
.lp .seta { width: 46px; height: 46px; border-radius: 50%; background: var(--agua); display: grid; place-items: center; color: var(--petroleo); animation: lp-empurra 1.8s ease-in-out infinite; }
.lp .benef { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 36px; }
.lp .benef div { display: flex; gap: 18px; align-items: center; }
.lp .benef__ic { width: 64px; height: 64px; border-radius: 32px; background: var(--branco); color: var(--petroleo); display: grid; place-items: center; flex: none; animation: lp-boia 3s ease-in-out infinite alternate; }
.lp .benef strong { display: block; font: 400 23px var(--display); color: var(--ameixa); }
.lp .benef span { color: var(--texto); font-size: 15px; }
.lp .vem { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 20px; }
.lp .vem div { padding: 26px 22px; border-radius: 24px; background: #fff; display: grid; gap: 10px; align-content: start; transition: transform .4s var(--curva); }
.lp .vem div:hover { transform: translateY(-4px) rotate(-.6deg); }
.lp .vem svg { width: 54px; height: 54px; }
.lp .vem h3 { font-size: 22px; }
.lp .vem p { color: var(--texto); font-size: 14px; }
.lp .espera { display: grid; justify-items: center; text-align: center; gap: 14px; }
.lp .espera h2 { font-size: clamp(34px, 4vw, 52px); }
.lp .espera p { color: var(--texto); }
.lp .espera form { margin-top: 10px; display: flex; flex-wrap: wrap; gap: 10px; width: min(560px, 100%); }
.lp .espera input[type="email"] { flex: 1 1 240px; min-width: 0; height: 54px; border-radius: 27px; border: 1px solid #BFE6CC; padding: 0 22px; font: 400 16px var(--corpo); background: #fff; }
.lp .espera label { flex: 1 1 100%; display: flex; gap: 8px; text-align: left; font-size: 13px; color: var(--suave); }
.lp .espera__ok { font: 400 24px var(--display); color: var(--food-esc); }
.lp .rodape { background: var(--ameixa); color: #E8DDEC; padding-block: 56px 40px; }
.lp .rodape .wrap { display: flex; flex-wrap: wrap; gap: 32px; justify-content: space-between; align-items: flex-start; }
.lp .rodape img { height: 56px; width: auto; }
.lp .rodape p { max-width: 30em; font-size: 14px; margin-top: 12px; }
.lp .rodape nav { display: grid; gap: 8px; font-size: 14px; }
.lp .rodape nav a { color: #E8DDEC; }
.lp .rodape strong { color: #fff; }
@keyframes lp-boia { from { transform: translateY(-7px) rotate(-2deg); } to { transform: translateY(7px) rotate(2deg); } }
@keyframes lp-deriva { from { transform: translateX(0); } to { transform: translateX(calc(100vw + 400px)); } }
@keyframes lp-pulsa { 0%, 100% { box-shadow: 0 0 0 0 rgba(0,122,140,.35); } 50% { box-shadow: 0 0 0 10px rgba(0,122,140,0); } }
@keyframes lp-scan { 0% { top: 60px; opacity: 0; } 15% { opacity: 1; } 55% { top: 72%; opacity: 1; } 70%, 100% { top: 72%; opacity: 0; } }
@keyframes lp-entra { from { opacity: 0; transform: translateY(40px) rotate(4deg); } to { opacity: 1; transform: rotate(-3deg); } }
@keyframes lp-empurra { 0%, 100% { transform: translateX(-3px); } 50% { transform: translateX(4px); } }
.lp .sobe { animation: lp-sobeA .9s var(--curva) both; }
.lp .sobe:nth-child(2) { animation-delay: .1s; }
.lp .sobe:nth-child(3) { animation-delay: .2s; }
.lp .sobe:nth-child(4) { animation-delay: .3s; }
.lp .sobe:nth-child(5) { animation-delay: .4s; }
@keyframes lp-sobeA { from { opacity: .001; transform: translateY(22px); } to { opacity: 1; transform: none; } }
.lp .vitrine { padding-block: 88px; overflow: hidden; }
.lp .vitrine--rosado { background: var(--rosado); }
.lp .vitrine__in { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 48px; align-items: center; }
.lp .vitrine__in--inv .vitrine__cena { order: 2; }
.lp .vitrine__cena { position: relative; min-height: 420px; display: flex; align-items: center; padding-left: 6%; }
.lp .vitrine__prod { position: relative; display: inline-block; }
.lp .vitrine__prod img { position: relative; z-index: 1; display: block; height: clamp(250px, 26vw, 340px); width: auto; max-width: 260px; object-fit: contain; animation: lp-flutua 4.2s ease-in-out infinite alternate; filter: drop-shadow(0 18px 22px rgba(46,18,56,.16)); }
.lp .vitrine__sombra { position: absolute; left: 12%; right: 12%; bottom: -26px; height: 16px; border-radius: 50%; background: rgba(46,18,56,.14); filter: blur(4px); animation: lp-sombra 4.2s ease-in-out infinite alternate; }
.lp .selo-nota { position: absolute; z-index: 2; left: 72%; top: -4%; display: inline-flex; align-items: center; gap: 10px; padding: 10px 18px 10px 12px; border-radius: 30px; background: #fff; box-shadow: 0 10px 28px rgba(46,18,56,.18); font-weight: 600; font-size: 17px; color: var(--texto); white-space: nowrap; }
.lp .selo-nota i { width: 26px; height: 26px; border-radius: 50%; background: var(--c); }
.lp .crit { position: absolute; z-index: 2; left: calc(100% + 28px); top: 26%; list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.lp .crit li { display: inline-flex; align-items: center; gap: 10px; justify-self: start; padding: 10px 18px 10px 12px; border-radius: 24px; background: #EEECE7; color: #625C57; font-size: 15px; white-space: nowrap; }
.lp .vitrine--rosado .crit li { background: #fff; }
.lp .crit__ic { width: 22px; height: 22px; color: #7E7770; display: inline-grid; }
.lp .crit__ic svg { width: 22px; height: 22px; }
.lp .vitrine__txt { display: grid; gap: 14px; align-content: center; }
.lp .vitrine__txt .sobre { margin-bottom: 0; }
.lp .vitrine__txt h2 { font-size: clamp(36px, 4.2vw, 56px); }
.lp .vitrine__txt p { color: var(--texto); font-size: 17px; line-height: 1.7; max-width: 32em; }
.lp .vitrine__txt .vitrine__nota { font-size: 13px; color: var(--suave); }
.lp .sobre--food { color: var(--food-esc); }
.js .lp .vitrine__cena:not(.visto) .selo-nota { transform: scale(.4); opacity: 0; }
.js .lp .vitrine__cena:not(.visto) .crit li { transform: translateX(-24px); opacity: 0; }
.lp .selo-nota { transition: transform .7s cubic-bezier(.34,1.56,.64,1) .15s, opacity .4s ease .15s; }
.lp .crit li { transition: transform .6s var(--curva) var(--d), opacity .5s ease var(--d); }
.lp .trocas2 { position: relative; padding-block: 110px 120px; }
.lp .trocas2__mancha { position: absolute; inset: 30px 3% 20px; width: 94%; height: calc(100% - 50px); }
.lp .trocas2 .wrap { position: relative; }
.lp .trocas2 .cabeca { margin-bottom: 24px; }
.lp .trocas2__alterna { display: flex; justify-content: center; gap: 6px; margin: 0 auto 40px; width: max-content; max-width: 100%; padding: 6px; border-radius: 24px; background: #fff; box-shadow: 0 8px 22px rgba(0,60,70,.1); }
.lp .trocas2__alterna button { border: 0; border-radius: 18px; padding: 9px 18px; background: transparent; color: var(--suave); font-weight: 600; cursor: pointer; }
.lp .trocas2__alterna button[aria-pressed="true"] { background: var(--ameixa); color: #fff; }
.lp .par2 { display: flex; align-items: center; justify-content: center; gap: clamp(20px, 6vw, 90px); }
.lp .par2[hidden] { display: none; }
.lp .par2.ativa .cart { animation: lp-chega .8s var(--curva) both; }
.lp .par2.ativa .cart--boa { animation-delay: .15s; }
.lp .cart { position: relative; width: clamp(200px, 22vw, 250px); padding: 28px 22px 24px; border-radius: 22px; background: #fff; display: grid; justify-items: center; gap: 10px; box-shadow: 0 30px 40px -30px rgba(46,18,56,.35); }
.lp .cart--ruim { transform: rotate(-4deg); }
.lp .cart--boa { transform: rotate(4deg); }
.lp .cart img { height: 170px; width: auto; object-fit: contain; }
.lp .cart b { font: 400 20px/1.2 var(--display); color: var(--ameixa); text-align: center; }
.lp .cart__nota { display: inline-flex; align-items: center; gap: 7px; font-size: 14px; color: var(--suave); }
.lp .cart__nota i { width: 11px; height: 11px; border-radius: 50%; }
.lp .cart__selo { position: absolute; top: -18px; right: -14px; width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; color: #fff; font: 700 20px/1 var(--corpo); box-shadow: 0 6px 14px rgba(0,0,0,.15); }
.lp .cart--ruim .cart__selo { background: var(--con); }
.lp .cart--boa .cart__selo { background: var(--bom); animation: lp-pop 2.4s ease-in-out infinite; }
.lp .par2__seta { color: var(--suave); animation: lp-empurra 1.8s ease-in-out infinite; }
.lp .rodape2 { background: #fff; color: var(--texto); }
.lp .rodape2__topo { display: flex; flex-wrap: wrap; gap: 32px 56px; padding-block: 72px 24px; }
.lp .rodape2__marca { flex: 1 1 280px; display: grid; gap: 14px; align-content: start; max-width: 340px; }
.lp .rodape2__marca img { height: 58px; width: auto; }
.lp .rodape2__marca p { font-size: 15px; }
.lp .rodape2__app { justify-self: start; display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; min-height: 44px; border: 0; border-radius: 12px; background: var(--ameixa); color: #fff; font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
.lp .rodape2__app:hover { background: #45204F; }
.lp .rodape2__app:focus-visible { outline: 3px solid var(--cl-ciano); outline-offset: 2px; }
.lp .rodape2__instalar { display: grid; gap: 6px; justify-items: start; }
.lp .rodape2__instalar[hidden] { display: none; }
.lp .rodape2__app-nota { font-size: 13px; color: var(--cl-suave); }
.lp .rodape2__seta { animation: cl-inst-desce 2.2s ease-in-out infinite; }
@keyframes cl-inst-desce { 0%, 60%, 100% { transform: translateY(0); } 75% { transform: translateY(2px); } }
.lp .rodape2__col { display: grid; gap: 10px; align-content: start; font-size: 15px; }
.lp .rodape2__col strong { color: var(--petroleo); font-weight: 600; font-size: 17px; margin-bottom: 4px; }
.lp .rodape2__col a { color: var(--suave); }
.lp .rodape2__col a:hover { color: var(--ameixa); }
.lp .rodape2__col a.rodape2__apoie { color: #D41466; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; justify-self: start; }
.lp .rodape2__col a.rodape2__apoie:hover { color: var(--ameixa); }
.lp .rodape2__novo { font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase; background: #fff; color: #D41466; border: 1px solid #FFE3EC; border-radius: 999px; padding: 1px 7px; line-height: 1.5; }
.lp .rodape2__cookies { justify-self: start; font: inherit; color: var(--suave); background: none; border: 0; padding: 0; cursor: pointer; text-align: left; }
.lp .rodape2__cookies:hover { color: var(--ameixa); }
.lp .rodape2__cookies:focus-visible { outline: 3px solid var(--rosa); outline-offset: 2px; border-radius: 4px; }
.lp .paisagem { margin-top: -20px; height: clamp(170px, 22vw, 300px); overflow: hidden; }
.lp .paisagem svg { display: block; width: 100%; height: 100%; }
.lp .rodape2__base { background: #33AE2E; color: #fff; font-size: 13px; padding-block: 14px; }
.lp .arv { transform-box: view-box; transform-origin: var(--o); animation: lp-balanca 3.4s ease-in-out infinite alternate; }
.lp .nuv1 { animation: lp-nuvem 40s linear infinite; }
.lp .nuv2 { animation: lp-nuvem 55s linear infinite; animation-delay: -25s; }
.lp .sol { transform-box: fill-box; transform-origin: center; animation: lp-pulsaSol 4s ease-in-out infinite; }
.lp .passaro { animation: lp-voa 16s linear infinite; }
.lp .mascote__corpo { transform-box: fill-box; transform-origin: 50% 100%; animation: lp-pulinho 2.6s ease-in-out infinite; }
.lp .braco { transform-box: fill-box; transform-origin: 100% 100%; animation: lp-tchau 1.3s ease-in-out infinite alternate; }
.lp .olhos { transform-box: fill-box; transform-origin: center; animation: lp-pisca 4.5s infinite; }
@keyframes lp-flutua { from { transform: translateY(-10px) rotate(-1.5deg); } to { transform: translateY(8px) rotate(1.5deg); } }
@keyframes lp-sombra { from { transform: scaleX(.82); opacity: .6; } to { transform: scaleX(1); opacity: 1; } }
@keyframes lp-chega { from { opacity: 0; transform: translateY(30px) rotate(0); } }
@keyframes lp-pop { 0%, 80%, 100% { transform: scale(1); } 88% { transform: scale(1.18); } }
@keyframes lp-balanca { from { transform: rotate(-2.5deg); } to { transform: rotate(2.5deg); } }
@keyframes lp-nuvem { from { transform: translateX(-300px); } to { transform: translateX(1600px); } }
@keyframes lp-pulsaSol { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.06); } }
@keyframes lp-voa { 0% { transform: translate(-60px, 90px); } 50% { transform: translate(700px, 50px); } 100% { transform: translate(1500px, 80px); } }
@keyframes lp-pulinho { 0%, 60%, 100% { transform: translateY(0); } 70% { transform: translateY(-14px); } 80% { transform: translateY(0); } 88% { transform: translateY(-6px); } }
@keyframes lp-tchau { from { transform: rotate(-14deg); } to { transform: rotate(22deg); } }
@keyframes lp-pisca { 0%, 92%, 100% { transform: scaleY(1); } 95% { transform: scaleY(.1); } }
@media (max-width: 900px) {
.lp .vitrine__in { grid-template-columns: 1fr; }
.lp .vitrine__in--inv .vitrine__cena { order: 0; }
.lp .vitrine__cena { min-height: 360px; }
.lp .par2 { flex-direction: column; }
.lp .par2__seta { transform: rotate(90deg); animation: none; }
}
@media (max-width: 520px) {
.lp .vitrine__cena { min-height: 320px; padding-left: 0; }
.lp .vitrine__prod img { height: 220px; max-width: 150px; }
.lp .selo-nota { left: 60%; top: -8%; font-size: 14px; padding: 8px 14px 8px 10px; }
.lp .selo-nota i { width: 20px; height: 20px; }
.lp .crit { left: calc(100% + 12px); top: 24%; }
.lp .crit li { font-size: 13px; padding: 8px 14px 8px 10px; }
}
.lp .rodape2 { background: linear-gradient(180deg, #FFFFFF 0%, #F4FBFC 60%, #FFFFFF 100%); }
.lp .paisagem { margin-top: -10px; height: clamp(200px, 25vw, 360px); }
.lp .nuv3 { animation: lp-nuvem 47s linear infinite; animation-delay: -12s; }
.lp .raios { transform-box: fill-box; transform-origin: center; animation: lp-gira 24s linear infinite; }
.lp .brilho { animation: lp-brilha 3s ease-in-out infinite alternate; }
.lp .fumaca circle { transform-box: fill-box; transform-origin: center; animation: lp-fumaca 4.5s ease-out infinite; opacity: 0; }
.lp .fumaca circle:nth-child(2) { animation-delay: 1.5s; }
.lp .fumaca circle:nth-child(3) { animation-delay: 3s; }
.lp .haste { transform-box: view-box; transform-origin: var(--o); animation: lp-balanca 2.6s ease-in-out infinite alternate; }
.lp .borboleta.b1 { animation: lp-voo1 14s ease-in-out infinite; }
.lp .borboleta.b2 { animation: lp-voo2 18s ease-in-out infinite; }
.lp .asas { transform-box: fill-box; transform-origin: center; animation: lp-bate .28s ease-in-out infinite alternate; }
.lp .coracao { transform-box: fill-box; transform-origin: center bottom; animation: lp-coracao 5s ease-in-out infinite; opacity: 0; }
.lp .rodape2__base { background: #46A866; }
@keyframes lp-gira { to { transform: rotate(360deg); } }
@keyframes lp-brilha { from { opacity: .4; } to { opacity: 1; } }
@keyframes lp-fumaca { 0% { opacity: 0; transform: translateY(10px) scale(.5); } 20% { opacity: .9; } 100% { opacity: 0; transform: translateY(-34px) scale(1.4); } }
@keyframes lp-voo1 { 0% { transform: translate(380px, 230px); } 25% { transform: translate(470px, 180px); } 50% { transform: translate(560px, 240px); } 75% { transform: translate(470px, 270px); } 100% { transform: translate(380px, 230px); } }
@keyframes lp-voo2 { 0% { transform: translate(1100px, 260px); } 30% { transform: translate(1170px, 210px); } 60% { transform: translate(1040px, 200px); } 100% { transform: translate(1100px, 260px); } }
@keyframes lp-bate { from { transform: scaleX(1); } to { transform: scaleX(.3); } }
@keyframes lp-coracao { 0%, 55% { opacity: 0; transform: translateY(10px) scale(.4); } 65% { opacity: 1; transform: translateY(-6px) scale(1.1); } 85% { opacity: 1; transform: translateY(-18px) scale(1); } 100% { opacity: 0; transform: translateY(-28px) scale(.9); } }
@media (prefers-reduced-motion: reduce) {
.lp .tela .linha { opacity: 1; transform: none; }
.js .lp .vitrine__cena:not(.visto) .selo-nota, .js .lp .vitrine__cena:not(.visto) .crit li { transform: none; opacity: 1; }
}
@media (max-width: 900px) {
.lp .hero .wrap { grid-template-columns: 1fr; padding-block: 40px 88px; }
.lp .portas .wrap, .lp .passos, .lp .benef { grid-template-columns: 1fr; }
.lp .passos::before { display: none; }
.lp .vem { grid-template-columns: repeat(2, minmax(0,1fr)); }
.lp .par { grid-template-columns: 1fr; }
.lp .seta { transform: rotate(90deg); justify-self: center; animation: none; }
.lp .porta__ilu { width: 96px; right: 12px; top: 12px; }
}
@media (max-width: 520px) {
.lp .vem { grid-template-columns: 1fr; }
.lp .porta { padding: 28px 22px 26px; }
.lp .obj.longe { display: none; }
}
/* ajustes do tema (0.5.0) */
.lp { font-family: var(--corpo); color: var(--tinta); }
.lp .wrap { max-width: 1240px; padding-left: max(24px, env(safe-area-inset-left, 0px)); padding-right: max(24px, env(safe-area-inset-right, 0px)); }
.lp a { text-decoration: none; }
.lp p { margin: 0; }
.lp .espera .cl-news { margin-top: 10px; display: flex; flex-wrap: wrap; gap: 10px; width: min(560px, 100%); justify-content: center; }
.lp .espera .cl-news .cl-btn { background: var(--food-esc); color: #fff; min-height: 54px; border-radius: 27px; }
.lp .espera .cl-news .cl-btn:hover { background: var(--ameixa); }
.lp .espera .cl-news__ok { color: var(--suave); text-align: left; }
.lp .espera .cl-news__msg { font: 400 24px var(--display); color: var(--food-esc); }
.lp .rodape2 .cl-news { margin-top: 6px; }
.lp .rodape2 .cl-news input[type="email"] { border: 1px solid var(--borda); height: 48px; }
.lp .rodape2 .cl-news .cl-btn { min-height: 48px; }
.lp .rodape2__marca .rodape2__news { font-size: 14px; font-weight: 600; color: var(--ameixa); margin-top: 8px; }
.lp .vitrine__nota { font-size: 13px; }
@media (prefers-reduced-motion: reduce) { .lp *, .lp *::before, .lp *::after { animation: none !important; transition: none !important; } }



/* ===== Rodapé 0.6.0: a lupa dá corridinhas até os amiguinhos (prévia aprovada em 23/10/2026) ===== */
.lp .rd-pa, .lp .rd-pb { transform-box: fill-box; transform-origin: 50% 0%; animation: rd-passo .34s ease-in-out infinite alternate; }
.lp .rd-pb { animation-direction: alternate-reverse; }
.lp .rd-ba, .lp .rd-bb { transform-box: fill-box; transform-origin: 0% 50%; animation: rd-braco .34s ease-in-out infinite alternate; }
.lp .rd-bb { animation-direction: alternate-reverse; }
.lp .rd-folhas { transform-box: fill-box; transform-origin: 50% 100%; animation: rd-folha .34s ease-in-out infinite alternate; }
.lp .rd-raios { transform-box: fill-box; transform-origin: center; animation: rd-gira 22s linear infinite; }
.lp .rd-sol-rosto { transform-box: fill-box; transform-origin: center; animation: rd-olha 6s ease-in-out infinite; }
.lp .rd-haste { transform-box: view-box; transform-origin: var(--o); animation: rd-balanca 2.6s ease-in-out infinite alternate; }
.lp .rd-olhos { transform-box: fill-box; transform-origin: center; animation: rd-pisca 3.8s infinite; }
.lp .rd-borboleta.rd-b1 { animation: rd-voo1 14s ease-in-out infinite; }
.lp .rd-borboleta.rd-b2 { animation: rd-voo2 18s ease-in-out infinite; }
.lp .rd-borboleta.rd-b3 { animation: rd-voo3 16s ease-in-out infinite; }
.lp .rd-asas { transform-box: fill-box; transform-origin: center; animation: rd-bate .26s ease-in-out infinite alternate; }
@keyframes rd-pulo { from { transform: translateY(0); } to { transform: translateY(-7px); } }
@keyframes rd-passo { from { transform: rotate(-32deg); } to { transform: rotate(32deg); } }
@keyframes rd-braco { from { transform: rotate(-24deg); } to { transform: rotate(24deg); } }
@keyframes rd-folha { from { transform: rotate(-8deg); } to { transform: rotate(8deg); } }
@keyframes rd-fumaca { 0% { opacity: .9; transform: translate(0,0) scale(.35); } 100% { opacity: 0; transform: translate(-34px,-12px) scale(1.5); } }
@keyframes rd-desfila { from { transform: translateX(-640px); } to { transform: translateX(1520px); } }
@keyframes rd-esteira { from { transform: translateX(0); } to { transform: translateX(-480px); } }
@keyframes rd-gira { to { transform: rotate(360deg); } }
@keyframes rd-olha { 0%, 40%, 100% { transform: translateX(0); } 50%, 90% { transform: translateX(-4px); } }
@keyframes rd-nuvem { from { transform: translateX(-260px); } to { transform: translateX(1600px); } }
@keyframes rd-balanca { from { transform: rotate(-4deg); } to { transform: rotate(4deg); } }
@keyframes rd-pisca { 0%, 93%, 100% { transform: scaleY(1); } 96% { transform: scaleY(.1); } }
@keyframes rd-voo1 { 0%, 100% { transform: translate(517px, 150px); } 25% { transform: translate(640px, 110px); } 50% { transform: translate(762px, 160px); } 75% { transform: translate(640px, 180px); } }
@keyframes rd-voo2 { 0%, 100% { transform: translate(1416px, 170px); } 30% { transform: translate(1524px, 120px); } 60% { transform: translate(1334px, 110px); } }
@keyframes rd-voo3 { 0%, 100% { transform: translate(1034px, 90px); } 40% { transform: translate(1143px, 60px); } 70% { transform: translate(953px, 70px); } }
@keyframes rd-bate { from { transform: scaleX(1); } to { transform: scaleX(.3); } }
.lp /* A2: amiguinhos pulando no lugar; a lupa dá corridinhas de um amiguinho até o outro */
.rd-pula { transform-box: fill-box; transform-origin: 50% 100%; animation-duration: 18s; animation-iteration-count: infinite; animation-timing-function: ease-in-out; }
.lp .rd-sombrinha { transform-box: fill-box; transform-origin: center; animation-duration: 18s; animation-iteration-count: infinite; animation-timing-function: ease-in-out; }
.lp .rd-pula .rd-pa, .lp .rd-pula .rd-pb, .lp .rd-pula .rd-ba, .lp .rd-pula .rd-bb { animation: none; }
.lp .rd-pula .rd-folhas { animation-duration: .5s; }
@keyframes rd-pula {
	0%, 100% { transform: translateY(0) scale(1.08, .9); }
	12% { transform: translateY(0) scale(.94, 1.08); }
	45% { transform: translateY(-26px) scale(1, 1); }
	78% { transform: translateY(0) scale(1, 1); }
	88% { transform: translateY(0) scale(1.1, .88); }
}
@keyframes rd-sombrinha { 0%, 100%, 78% { transform: scale(1); opacity: .12; } 45% { transform: scale(.6); opacity: .05; } }
.lp /* trajeto: corre rápido até ficar atrás de cada amiguinho, .lp para, .lp e corre de novo (18 s) */
.rd-lupa-trajeto { animation: rd-trajeto 18s infinite; }
@keyframes rd-trajeto {
	0% { transform: translateX(-1500px); animation-timing-function: cubic-bezier(.5,0,.25,1); }
	7% { transform: translateX(110px); }
	13% { transform: translateX(110px); animation-timing-function: cubic-bezier(.5,0,.25,1); }
	19% { transform: translateX(414px); }
	25% { transform: translateX(414px); animation-timing-function: cubic-bezier(.5,0,.25,1); }
	31% { transform: translateX(718px); }
	37% { transform: translateX(718px); animation-timing-function: cubic-bezier(.5,0,.25,1); }
	43% { transform: translateX(1022px); }
	49% { transform: translateX(1022px); animation-timing-function: cubic-bezier(.5,0,.25,1); }
	55% { transform: translateX(1326px); }
	61% { transform: translateX(1326px); animation-timing-function: cubic-bezier(.5,0,.25,1); }
	67% { transform: translateX(1630px); }
	73% { transform: translateX(1630px); animation-timing-function: cubic-bezier(.6,0,.9,.6); }
	82%, 100% { transform: translateX(3400px); }
}
.lp /* inclina para a frente quando corre, .lp fica em pé quando para */
.rd-lupa-inclina { transform-box: fill-box; transform-origin: 50% 100%; animation: rd-inclina 18s infinite; }
@keyframes rd-inclina {
	0%, 6%, 12.5%, 18%, 24.5%, 30%, 36.5%, 42%, 48.5%, 54%, 60.5%, 66%, 72.5%, 100% { transform: rotate(9deg); }
	7.5%, 12%, 19.5%, 24%, 31.5%, 36%, 43.5%, 48%, 55.5%, 60%, 67.5%, 72% { transform: rotate(0deg); }
}
.lp /* fumacinha só enquanto corre */
.rd-poeira2 { animation: rd-poeira-on 18s infinite; }
@keyframes rd-poeira-on {
	0%, 6.5%, 13%, 18.5%, 25%, 30.5%, 37%, 42.5%, 49%, 54.5%, 61%, 66.5%, 73%, 82% { opacity: 1; }
	7%, 12.9%, 19%, 24.9%, 31%, 36.9%, 43%, 48.9%, 55%, 60.9%, 67%, 72.9%, 82.5%, 100% { opacity: 0; }
}
.lp .rd-pe1, .lp .rd-pe2 { transform-box: fill-box; transform-origin: 50% 0%; animation: rd-pe .16s ease-in-out infinite alternate; }
.lp .rd-pe2 { animation-direction: alternate-reverse; }
@keyframes rd-pe { from { transform: rotate(-30deg); } to { transform: rotate(30deg); } }
.lp .rd-lupa-corpo { animation: rd-pulinho2 .32s ease-in-out infinite alternate; }
@keyframes rd-pulinho2 { from { transform: translateY(0); } to { transform: translateY(-5px); } }
.lp .rd-braco2 { transform-box: fill-box; transform-origin: 100% 100%; animation: rd-tchau2 .9s ease-in-out infinite alternate; }
@keyframes rd-tchau2 { from { transform: rotate(-14deg); } to { transform: rotate(22deg); } }
.lp .rd-nv2c { animation-name: rd-nuvem2; animation-timing-function: linear; animation-iteration-count: infinite; }
@keyframes rd-nuvem2 { from { transform: translateX(-180px); } to { transform: translateX(1460px); } }
.lp .rd-pf2 { transform-box: fill-box; transform-origin: center; opacity: 0; animation: rd-fumaca2 .6s ease-out infinite; }
@keyframes rd-fumaca2 { 0% { opacity: 1; transform: translate(0,0) scale(.3); } 60% { opacity: .9; } 100% { opacity: 0; transform: translate(-46px,-16px) scale(1.5); } }
.lp .rd-cara-p, .lp .rd-cara-f { animation-duration: 18s; animation-iteration-count: infinite; animation-timing-function: steps(1, end); }
.lp .rd-gota { animation: rd-gota 1.4s ease-in infinite; }
@keyframes rd-gota { 0% { transform: translateY(0); opacity: 0; } 20% { opacity: 1; } 100% { transform: translateY(8px); opacity: 0; } }
.lp .rd-brilhos { transform-box: fill-box; transform-origin: center; animation: rd-brilho .6s ease-in-out infinite alternate; }
@keyframes rd-brilho { from { transform: scale(.7); opacity: .6; } to { transform: scale(1.15); opacity: 1; } }
@keyframes rd-pula0 { 0% { transform: none; } 6.50% { transform: none; } 6.90% { transform: translateY(0) scale(1.1,.88); } 7.33% { transform: translateY(0) scale(.94,1.08); } 8.32% { transform: translateY(-30px) rotate(6deg); } 9.47% { transform: translateY(0); } 10.20% { transform: translateY(0) scale(1.1,.88); } 10.62% { transform: translateY(0) scale(.94,1.08); } 11.62% { transform: translateY(-30px) rotate(-6deg); } 12.77% { transform: translateY(0); } 13.50% { transform: translateY(0) scale(1.1,.88); } 13.93% { transform: translateY(0) scale(.94,1.08); } 14.92% { transform: translateY(-30px) rotate(6deg); } 16.07% { transform: translateY(0); } 17.00% { transform: none; } 100% { transform: none; } }
@keyframes rd-sombra0 { 0% { transform: scale(1); opacity: .12; } 6.50% { transform: scale(1); opacity: .12; } 8.32% { transform: scale(.55); opacity: .05; } 9.47% { transform: scale(1); opacity: .12; } 11.62% { transform: scale(.55); opacity: .05; } 12.77% { transform: scale(1); opacity: .12; } 14.92% { transform: scale(.55); opacity: .05; } 16.07% { transform: scale(1); opacity: .12; } 17.00% { transform: scale(1); opacity: .12; } 100% { transform: scale(1); opacity: .12; } }
@keyframes rd-pula1 { 0% { transform: none; } 18.50% { transform: none; } 18.90% { transform: translateY(0) scale(1.1,.88); } 19.32% { transform: translateY(0) scale(.94,1.08); } 20.32% { transform: translateY(-30px) rotate(6deg); } 21.47% { transform: translateY(0); } 22.20% { transform: translateY(0) scale(1.1,.88); } 22.62% { transform: translateY(0) scale(.94,1.08); } 23.62% { transform: translateY(-30px) rotate(-6deg); } 24.77% { transform: translateY(0); } 25.50% { transform: translateY(0) scale(1.1,.88); } 25.93% { transform: translateY(0) scale(.94,1.08); } 26.92% { transform: translateY(-30px) rotate(6deg); } 28.07% { transform: translateY(0); } 29.00% { transform: none; } 100% { transform: none; } }
@keyframes rd-sombra1 { 0% { transform: scale(1); opacity: .12; } 18.50% { transform: scale(1); opacity: .12; } 20.32% { transform: scale(.55); opacity: .05; } 21.47% { transform: scale(1); opacity: .12; } 23.62% { transform: scale(.55); opacity: .05; } 24.77% { transform: scale(1); opacity: .12; } 26.92% { transform: scale(.55); opacity: .05; } 28.07% { transform: scale(1); opacity: .12; } 29.00% { transform: scale(1); opacity: .12; } 100% { transform: scale(1); opacity: .12; } }
@keyframes rd-pula2 { 0% { transform: none; } 30.50% { transform: none; } 30.90% { transform: translateY(0) scale(1.1,.88); } 31.32% { transform: translateY(0) scale(.94,1.08); } 32.31% { transform: translateY(-30px) rotate(6deg); } 33.47% { transform: translateY(0); } 34.20% { transform: translateY(0) scale(1.1,.88); } 34.62% { transform: translateY(0) scale(.94,1.08); } 35.61% { transform: translateY(-30px) rotate(-6deg); } 36.77% { transform: translateY(0); } 37.50% { transform: translateY(0) scale(1.1,.88); } 37.92% { transform: translateY(0) scale(.94,1.08); } 38.91% { transform: translateY(-30px) rotate(6deg); } 40.07% { transform: translateY(0); } 41.00% { transform: none; } 100% { transform: none; } }
@keyframes rd-sombra2 { 0% { transform: scale(1); opacity: .12; } 30.50% { transform: scale(1); opacity: .12; } 32.31% { transform: scale(.55); opacity: .05; } 33.47% { transform: scale(1); opacity: .12; } 35.61% { transform: scale(.55); opacity: .05; } 36.77% { transform: scale(1); opacity: .12; } 38.91% { transform: scale(.55); opacity: .05; } 40.07% { transform: scale(1); opacity: .12; } 41.00% { transform: scale(1); opacity: .12; } 100% { transform: scale(1); opacity: .12; } }
@keyframes rd-pula3 { 0% { transform: none; } 42.50% { transform: none; } 42.90% { transform: translateY(0) scale(1.1,.88); } 43.33% { transform: translateY(0) scale(.94,1.08); } 44.31% { transform: translateY(-30px) rotate(6deg); } 45.47% { transform: translateY(0); } 46.20% { transform: translateY(0) scale(1.1,.88); } 46.62% { transform: translateY(0) scale(.94,1.08); } 47.61% { transform: translateY(-30px) rotate(-6deg); } 48.77% { transform: translateY(0); } 49.50% { transform: translateY(0) scale(1.1,.88); } 49.92% { transform: translateY(0) scale(.94,1.08); } 50.91% { transform: translateY(-30px) rotate(6deg); } 52.07% { transform: translateY(0); } 53.00% { transform: none; } 100% { transform: none; } }
@keyframes rd-sombra3 { 0% { transform: scale(1); opacity: .12; } 42.50% { transform: scale(1); opacity: .12; } 44.31% { transform: scale(.55); opacity: .05; } 45.47% { transform: scale(1); opacity: .12; } 47.61% { transform: scale(.55); opacity: .05; } 48.77% { transform: scale(1); opacity: .12; } 50.91% { transform: scale(.55); opacity: .05; } 52.07% { transform: scale(1); opacity: .12; } 53.00% { transform: scale(1); opacity: .12; } 100% { transform: scale(1); opacity: .12; } }
@keyframes rd-pula4 { 0% { transform: none; } 54.50% { transform: none; } 54.90% { transform: translateY(0) scale(1.1,.88); } 55.33% { transform: translateY(0) scale(.94,1.08); } 56.31% { transform: translateY(-30px) rotate(6deg); } 57.47% { transform: translateY(0); } 58.20% { transform: translateY(0) scale(1.1,.88); } 58.62% { transform: translateY(0) scale(.94,1.08); } 59.61% { transform: translateY(-30px) rotate(-6deg); } 60.77% { transform: translateY(0); } 61.50% { transform: translateY(0) scale(1.1,.88); } 61.92% { transform: translateY(0) scale(.94,1.08); } 62.91% { transform: translateY(-30px) rotate(6deg); } 64.07% { transform: translateY(0); } 65.00% { transform: none; } 100% { transform: none; } }
@keyframes rd-sombra4 { 0% { transform: scale(1); opacity: .12; } 54.50% { transform: scale(1); opacity: .12; } 56.31% { transform: scale(.55); opacity: .05; } 57.47% { transform: scale(1); opacity: .12; } 59.61% { transform: scale(.55); opacity: .05; } 60.77% { transform: scale(1); opacity: .12; } 62.91% { transform: scale(.55); opacity: .05; } 64.07% { transform: scale(1); opacity: .12; } 65.00% { transform: scale(1); opacity: .12; } 100% { transform: scale(1); opacity: .12; } }
@keyframes rd-pula5 { 0% { transform: none; } 66.50% { transform: none; } 66.90% { transform: translateY(0) scale(1.1,.88); } 67.33% { transform: translateY(0) scale(.94,1.08); } 68.31% { transform: translateY(-30px) rotate(6deg); } 69.47% { transform: translateY(0); } 70.20% { transform: translateY(0) scale(1.1,.88); } 70.62% { transform: translateY(0) scale(.94,1.08); } 71.61% { transform: translateY(-30px) rotate(-6deg); } 72.77% { transform: translateY(0); } 73.50% { transform: translateY(0) scale(1.1,.88); } 73.92% { transform: translateY(0) scale(.94,1.08); } 74.91% { transform: translateY(-30px) rotate(6deg); } 76.07% { transform: translateY(0); } 77.00% { transform: none; } 100% { transform: none; } }
@keyframes rd-sombra5 { 0% { transform: scale(1); opacity: .12; } 66.50% { transform: scale(1); opacity: .12; } 68.31% { transform: scale(.55); opacity: .05; } 69.47% { transform: scale(1); opacity: .12; } 71.61% { transform: scale(.55); opacity: .05; } 72.77% { transform: scale(1); opacity: .12; } 74.91% { transform: scale(.55); opacity: .05; } 76.07% { transform: scale(1); opacity: .12; } 77.00% { transform: scale(1); opacity: .12; } 100% { transform: scale(1); opacity: .12; } }
.lp .rd-balanco { transform-box: fill-box; transform-origin: 50% 100%; animation-duration: 18s; animation-iteration-count: infinite; animation-timing-function: ease-in-out; }
@keyframes rd-balanco0 { 0% { transform: rotate(0deg); } 5.7% { transform: rotate(0deg); } 17% { transform: rotate(0deg); } 25.89% { transform: rotate(-3deg); } 34.78% { transform: rotate(3deg); } 43.67% { transform: rotate(-3deg); } 52.56% { transform: rotate(3deg); } 61.44% { transform: rotate(-3deg); } 70.33% { transform: rotate(3deg); } 79.22% { transform: rotate(-3deg); } 88.11% { transform: rotate(3deg); } 97.0% { transform: rotate(-3deg); } 100% { transform: rotate(0deg); } }
@keyframes rd-balanco1 { 0% { transform: rotate(0deg); } 8.89% { transform: rotate(-3deg); } 17.7% { transform: rotate(0deg); } 29% { transform: rotate(0deg); } 37.89% { transform: rotate(3deg); } 46.78% { transform: rotate(-3deg); } 55.67% { transform: rotate(3deg); } 64.56% { transform: rotate(-3deg); } 73.44% { transform: rotate(3deg); } 82.33% { transform: rotate(-3deg); } 91.22% { transform: rotate(3deg); } 100% { transform: rotate(0deg); } }
@keyframes rd-balanco2 { 0% { transform: rotate(0deg); } 8.89% { transform: rotate(3deg); } 17.78% { transform: rotate(-3deg); } 26.67% { transform: rotate(3deg); } 29.7% { transform: rotate(0deg); } 41% { transform: rotate(0deg); } 49.89% { transform: rotate(-3deg); } 58.78% { transform: rotate(3deg); } 67.67% { transform: rotate(-3deg); } 76.56% { transform: rotate(3deg); } 85.44% { transform: rotate(-3deg); } 94.33% { transform: rotate(3deg); } 100% { transform: rotate(0deg); } }
@keyframes rd-balanco3 { 0% { transform: rotate(0deg); } 8.89% { transform: rotate(-3deg); } 17.78% { transform: rotate(3deg); } 26.67% { transform: rotate(-3deg); } 35.56% { transform: rotate(3deg); } 41.7% { transform: rotate(0deg); } 53% { transform: rotate(0deg); } 61.89% { transform: rotate(3deg); } 70.78% { transform: rotate(-3deg); } 79.67% { transform: rotate(3deg); } 88.56% { transform: rotate(-3deg); } 97.44% { transform: rotate(3deg); } 100% { transform: rotate(0deg); } }
@keyframes rd-balanco4 { 0% { transform: rotate(0deg); } 8.89% { transform: rotate(3deg); } 17.78% { transform: rotate(-3deg); } 26.67% { transform: rotate(3deg); } 35.56% { transform: rotate(-3deg); } 44.44% { transform: rotate(3deg); } 53.33% { transform: rotate(-3deg); } 53.7% { transform: rotate(0deg); } 65% { transform: rotate(0deg); } 73.89% { transform: rotate(-3deg); } 82.78% { transform: rotate(3deg); } 91.67% { transform: rotate(-3deg); } 100% { transform: rotate(0deg); } }
@keyframes rd-balanco5 { 0% { transform: rotate(0deg); } 8.89% { transform: rotate(-3deg); } 17.78% { transform: rotate(3deg); } 26.67% { transform: rotate(-3deg); } 35.56% { transform: rotate(3deg); } 44.44% { transform: rotate(-3deg); } 53.33% { transform: rotate(3deg); } 62.22% { transform: rotate(-3deg); } 65.7% { transform: rotate(0deg); } 77% { transform: rotate(0deg); } 85.89% { transform: rotate(3deg); } 94.78% { transform: rotate(-3deg); } 100% { transform: rotate(0deg); } }
@keyframes rd-cara-p0 { 0% { opacity: 1; } 6.5% { opacity: 0; } 17% { opacity: 1; } }
@keyframes rd-cara-f0 { 0% { opacity: 0; } 6.5% { opacity: 1; } 17% { opacity: 0; } }
@keyframes rd-cara-p1 { 0% { opacity: 1; } 18.5% { opacity: 0; } 29% { opacity: 1; } }
@keyframes rd-cara-f1 { 0% { opacity: 0; } 18.5% { opacity: 1; } 29% { opacity: 0; } }
@keyframes rd-cara-p2 { 0% { opacity: 1; } 30.5% { opacity: 0; } 41% { opacity: 1; } }
@keyframes rd-cara-f2 { 0% { opacity: 0; } 30.5% { opacity: 1; } 41% { opacity: 0; } }
@keyframes rd-cara-p3 { 0% { opacity: 1; } 42.5% { opacity: 0; } 53% { opacity: 1; } }
@keyframes rd-cara-f3 { 0% { opacity: 0; } 42.5% { opacity: 1; } 53% { opacity: 0; } }
@keyframes rd-cara-p4 { 0% { opacity: 1; } 54.5% { opacity: 0; } 65% { opacity: 1; } }
@keyframes rd-cara-f4 { 0% { opacity: 0; } 54.5% { opacity: 1; } 65% { opacity: 0; } }
@keyframes rd-cara-p5 { 0% { opacity: 1; } 66.5% { opacity: 0; } 77% { opacity: 1; } }
@keyframes rd-cara-f5 { 0% { opacity: 0; } 66.5% { opacity: 1; } 77% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .rd-lupa-trajeto { transform: translateX(110px); } .rd-cara-f { opacity: 0; } }
.lp .rd-cara-f, .lp .rd-pf2 { opacity: 0; }
.lp .rodape2 { background: linear-gradient(180deg, #EFF9FA 0%, #F6FCFC 46%, #F3FBF6 100%); }
.lp .rodape2__topo { padding-block: 40px 8px; }
.lp .paisagem { height: clamp(190px, 22vw, 300px); margin-top: -12px; }
.lp .rodape2__base { background: #CBEBDA; color: #5F6A73; }
@media (prefers-reduced-motion: reduce) { .lp .rd-lupa-trajeto { transform: translateX(190px); } }

/* Rodapé 0.6.2: cena em tamanho fixo (não cresce com a tela), sem cortar o céu, na mesma largura do conteúdo (1240 px).
   Seletores com "svg.rd-…" para vencer a regra antiga ".lp .paisagem svg" (largura e altura 100%). */
.lp .paisagem.rd-paisagem { position: relative; height: 190px; margin-top: 0; overflow: hidden; }
.lp .paisagem svg.rd-fundo { position: absolute; left: 0; bottom: 0; width: 100%; height: 100%; display: block; }
.lp .paisagem svg.rd-frente { position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); width: min(100%, 1240px); height: 190px; overflow: visible; display: block; }
.lp .rd-nuvens { position: absolute; inset: 0; pointer-events: none; }
.lp .paisagem svg.rd-nuvem { position: absolute; left: 0; height: auto; display: block; animation-name: rd-nuvem3; animation-timing-function: linear; animation-iteration-count: infinite; }
@keyframes rd-nuvem3 { from { transform: translateX(-140px); } to { transform: translateX(calc(100vw + 40px)); } }
.lp .rodape2__base { margin-top: -1px; }
@media (max-width: 600px) { .lp .paisagem.rd-paisagem, .lp .paisagem svg.rd-frente { height: 160px; } }

/* Tutorial de instalação no iPhone (tema 0.8.2; prévia aprovada em 30/10/2026, tela 9 do canvas do scanner) */
.cl-inst { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: flex-end; justify-content: center; font-family: 'DM Sans', system-ui, sans-serif; color: var(--cl-tinta); }
.cl-inst[hidden], .cl-tut-dica[hidden] { display: none; }
.cl-inst__fundo { position: absolute; inset: 0; background: rgba(46, 18, 56, .45); border: 0; padding: 0; cursor: pointer; }
.cl-inst__folha { position: relative; width: 100%; max-width: 480px; box-sizing: border-box; background: #fff; border-radius: 28px 28px 0 0; padding: 10px 20px calc(24px + env(safe-area-inset-bottom, 0px)); display: flex; flex-direction: column; gap: 12px; box-shadow: 0 -12px 30px -12px rgba(46, 18, 56, .3); animation: cl-inst-sobe .45s cubic-bezier(.2, .9, .3, 1.15) both; max-height: 94vh; overflow-y: auto; }
.cl-inst__alca { align-self: center; width: 40px; height: 5px; border-radius: 3px; background: #D9E4E7; }
.cl-inst__titulo { margin: 0; font-family: 'Butler', Georgia, serif; font-weight: 500; font-size: 24px; line-height: 1.1; color: var(--cl-ameixa); }
.cl-inst__titulo:focus { outline: none; }
.cl-inst__ok { flex: 1.3; display: flex; align-items: center; justify-content: center; min-height: 48px; border: 0; border-radius: 24px; background: var(--cl-petroleo); color: #fff; font: inherit; font-weight: 600; font-size: 15px; cursor: pointer; }
.cl-inst__ok:hover { background: var(--cl-petroleo-esc); }
.cl-inst button:focus-visible, .cl-inst a:focus-visible, .cl-tut-dica button:focus-visible { outline: 3px solid var(--cl-ciano); outline-offset: 2px; }
html.cl-inst-aberta, html.cl-inst-aberta body { overflow: hidden; }
.cl-tut__topo { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.cl-tut__conta { font-size: 13px; font-weight: 600; color: var(--cl-petroleo-esc); white-space: nowrap; }
.cl-tut__corpo { display: flex; gap: 14px; align-items: center; }
.cl-tut__passos { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; flex: 1; min-width: 0; }
.cl-tut__passo { width: 100%; text-align: left; display: flex; gap: 8px; align-items: flex-start; padding: 8px 10px; border-radius: 14px; border: 2px solid transparent; background: #fff; font: inherit; font-size: 14px; line-height: 1.35; color: var(--cl-tinta); cursor: pointer; transition: background .25s, border-color .25s; }
.cl-tut__passo b { font-weight: 600; }
.cl-tut__passo .cl-tut__n { font-weight: 700; color: var(--cl-petroleo-esc); }
.cl-tut__passo.is-ativo { border-color: var(--cl-petroleo); background: var(--cl-agua); }
.cl-tut__acoes { display: flex; gap: 10px; }
.cl-tut__prox { flex: 1; min-height: 48px; border-radius: 24px; border: 1.5px solid var(--cl-borda); background: #fff; color: var(--cl-ameixa); font: inherit; font-weight: 600; font-size: 15px; cursor: pointer; }
.cl-tut__calma { text-align: center; font-size: 13.5px; font-weight: 600; color: var(--cl-petroleo-esc); }
/* o celular desenhado */
.cl-tut__cel { width: 140px; height: 236px; flex-shrink: 0; border-radius: 24px; border: 6px solid var(--cl-ameixa); background: var(--cl-cinza); position: relative; overflow: hidden; box-sizing: border-box; font-size: 9px; }
.cl-tut__site { padding: 14px 10px 0; display: flex; flex-direction: column; gap: 6px; }
.cl-tut__site span { height: 6px; border-radius: 3px; background: #E3EAEC; width: 80%; }
.cl-tut__site span:first-child { width: 50%; height: 10px; background: #D7EEF1; }
.cl-tut__site span:last-child { width: 100%; height: 40px; border-radius: 8px; background: #E3F8FA; margin-top: 4px; }
.cl-tut__q { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity .3s, visibility .3s; }
.cl-tut__q.is-ativo { opacity: 1; visibility: visible; }
.cl-tut__sombra { position: absolute; inset: 0; background: rgba(0, 0, 0, .18); }
.cl-tut__url { font-size: 8.5px; color: var(--cl-suave); background: #F1F3F4; border-radius: 8px; padding: 3px 8px; }
.cl-tut__barra26 { position: absolute; left: 6px; right: 6px; bottom: 8px; height: 28px; border-radius: 14px; background: #fff; box-shadow: 0 2px 8px rgba(0, 0, 0, .12); display: flex; align-items: center; justify-content: space-between; padding: 0 6px; color: var(--cl-suave); font-size: 13px; }
.cl-tut__barra26--vazia { box-shadow: none; }
.cl-tut__barraAntiga { position: absolute; left: 0; right: 0; bottom: 0; height: 30px; background: #F7F7F9; border-top: 1px solid #E1E4E6; display: flex; align-items: center; justify-content: space-around; color: #007AFF; font-size: 12px; }
.cl-tut__barraTopo { position: absolute; left: 0; right: 0; top: 0; height: 30px; background: #F7F7F9; border-bottom: 1px solid #E1E4E6; display: flex; align-items: center; gap: 6px; padding: 0 6px; }
.cl-tut__barraTopo .cl-tut__url { flex: 1; background: #fff; }
.cl-tut__alvo { position: relative; width: 20px; height: 20px; border-radius: 10px; background: var(--cl-agua); display: inline-flex; align-items: center; justify-content: center; color: var(--cl-tinta); font-weight: 700; font-size: 11px; letter-spacing: -.5px; }
.cl-tut__anel { position: absolute; inset: -5px; border-radius: 50%; border: 2.5px solid #EE2677; animation: cl-tut-anel 1.4s ease-out infinite; }
.cl-tut__dedo { position: absolute; animation: cl-tut-dedo 1.4s ease-in-out infinite; }
.cl-tut__dedo--br { right: -8px; bottom: -22px; }
.cl-tut__dedo--bc { left: 62px; bottom: -14px; }
.cl-tut__dedo--tr { right: 0; top: 14px; }
.cl-tut__dedo--add { right: 0; top: 20px; }
.cl-tut__menu { position: absolute; right: 6px; bottom: 42px; width: 108px; border-radius: 12px; background: #fff; box-shadow: 0 4px 14px rgba(0, 0, 0, .2); padding: 4px; display: flex; flex-direction: column; }
.cl-tut__item { padding: 6px 8px; border-radius: 8px; display: flex; align-items: center; justify-content: space-between; gap: 4px; background: #fff; }
.cl-tut__item--sim { background: #FFE3EE; font-weight: 700; box-shadow: 0 0 0 2px #EE2677; }
.cl-tut__compart { position: absolute; left: 0; right: 0; bottom: 0; height: 172px; border-radius: 14px 14px 0 0; background: #F2F2F7; padding: 8px 6px; display: flex; flex-direction: column; gap: 5px; box-sizing: border-box; animation: cl-tut-folha .5s cubic-bezier(.2, .9, .3, 1) both; }
.cl-tut__q:not(.is-ativo) .cl-tut__compart { animation: none; }
.cl-tut__apps { display: flex; gap: 6px; padding: 2px 2px 4px; }
.cl-tut__apps span { width: 22px; height: 22px; border-radius: 11px; background: #B8E3EA; }
.cl-tut__apps span:nth-child(2) { background: #FFD7E4; } .cl-tut__apps span:nth-child(3) { background: #D8F1E6; } .cl-tut__apps span:nth-child(4) { background: #FFF0C2; }
.cl-tut__nota { text-align: center; color: var(--cl-suave); font-size: 8.5px; }
.cl-tut__add { position: absolute; inset: 0; background: #F2F2F7; padding: 10px 8px; display: flex; flex-direction: column; gap: 8px; box-sizing: border-box; }
.cl-tut__addtopo { display: flex; justify-content: space-between; align-items: center; color: #007AFF; }
.cl-tut__btnadd { padding: 3px 6px; border-radius: 8px; color: #007AFF; }
.cl-tut__addcartao { background: #fff; border-radius: 10px; padding: 8px; display: flex; gap: 8px; align-items: center; }
.cl-tut__addcartao img { border-radius: 7px; }
.cl-tut__addcartao--chave { justify-content: space-between; }
.cl-tut__chave { width: 26px; height: 15px; border-radius: 8px; background: #33AE2E; position: relative; }
.cl-tut__chave span { position: absolute; right: 2px; top: 2px; width: 11px; height: 11px; border-radius: 6px; background: #fff; }
/* a dica que fica depois de "Entendi" */
.cl-tut-dica { position: fixed; inset: 0; z-index: 999; pointer-events: none; font-family: 'DM Sans', system-ui, sans-serif; }
.cl-tut-dica__balao { position: absolute; right: 14px; bottom: calc(70px + env(safe-area-inset-bottom, 0px)); width: 240px; max-width: calc(100vw - 28px); box-sizing: border-box; background: var(--cl-ameixa); color: #fff; border-radius: 18px; padding: 12px 14px; display: flex; flex-direction: column; gap: 6px; box-shadow: 0 10px 24px -8px rgba(46, 18, 56, .5); pointer-events: auto; animation: cl-inst-sobe .4s cubic-bezier(.2, .9, .3, 1.15) both; }
.cl-tut-dica__balao b { font-size: 15px; }
.cl-tut-dica__balao > span { font-size: 13.5px; line-height: 1.4; color: #F4E9F7; }
.cl-tut-dica__balao > span b { font-size: inherit; color: #fff; }
.cl-tut-dica__links { display: flex; gap: 14px; }
.cl-tut-dica__links button { padding: 6px 0; border: 0; background: none; color: #9FEAF3; font: inherit; font-size: 13px; font-weight: 600; text-decoration: underline; cursor: pointer; min-height: 32px; }
.cl-tut-dica__seta { position: absolute; right: 30px; bottom: calc(18px + env(safe-area-inset-bottom, 0px)); animation: cl-tut-seta 1.2s ease-in-out infinite; }
.cl-tut-dica--safari .cl-tut-dica__balao { right: 50%; transform: translateX(50%); }
.cl-tut-dica--safari .cl-tut-dica__seta { right: calc(50% - 17px); }
.cl-tut-dica--outro .cl-tut-dica__balao { bottom: auto; top: calc(70px + env(safe-area-inset-top, 0px)); }
.cl-tut-dica--outro .cl-tut-dica__seta { bottom: auto; top: calc(18px + env(safe-area-inset-top, 0px)); transform: rotate(180deg); animation-name: cl-tut-seta-cima; }
html.cl-tut-dica-aberta .cl-barra-cel { visibility: hidden; }
@keyframes cl-inst-sobe { from { transform: translateY(60px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
.cl-tut-dica--safari .cl-tut-dica__balao { animation-name: cl-tut-sobe-meio; }
@keyframes cl-tut-sobe-meio { from { transform: translate(50%, 40px); opacity: 0; } to { transform: translate(50%, 0); opacity: 1; } }
@keyframes cl-tut-anel { 0% { transform: scale(.7); opacity: .9; } 100% { transform: scale(1.6); opacity: 0; } }
@keyframes cl-tut-dedo { 0%, 100% { transform: translate(0, 0); } 50% { transform: translate(-3px, -4px); } }
@keyframes cl-tut-folha { from { transform: translateY(100%); } to { transform: translateY(0); } }
@keyframes cl-tut-seta { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(8px); } }
@keyframes cl-tut-seta-cima { 0%, 100% { transform: rotate(180deg) translateY(0); } 50% { transform: rotate(180deg) translateY(8px); } }
@media (max-width: 360px) { .cl-tut__cel { width: 118px; height: 210px; } .cl-tut__passo { font-size: 13px; } }
@media (prefers-reduced-motion: reduce) { .lp .rodape2__seta, .cl-inst__folha, .cl-tut__anel, .cl-tut__dedo, .cl-tut__compart, .cl-tut-dica__balao, .cl-tut-dica__seta { animation: none; } .cl-tut-dica--safari .cl-tut-dica__balao { transform: translateX(50%); } }

/* Página /instalar/ (tema 0.8.2; prévia aprovada em 30/10/2026, tela 10 do canvas do scanner) */
.cl-ins { font-family: 'DM Sans', system-ui, sans-serif; color: var(--cl-tinta); }
.cl-ins__hero { background: var(--cl-agua); padding: 28px 20px 30px; display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; position: relative; overflow: hidden; }
.cl-ins__nuvem { position: absolute; top: 18px; left: 0; color: #fff; animation: cl-ins-nuvem 16s linear infinite; }
.cl-ins__cena { display: flex; align-items: flex-end; gap: 6px; position: relative; }
.cl-ins__mascote { animation: cl-ins-pula 2.4s ease-in-out infinite; }
.cl-ins__olhos { transform-box: fill-box; transform-origin: 50% 50%; animation: cl-ins-pisca 4.5s infinite; }
.cl-ins__tela { width: 118px; height: 176px; border-radius: 22px; border: 6px solid var(--cl-ameixa); background: linear-gradient(#BFE9F2, #E3F8FA); box-sizing: border-box; padding: 16px 10px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; align-content: start; }
.cl-ins__tela > span { height: 24px; border-radius: 7px; background: rgba(255, 255, 255, .85); }
.cl-ins__tela > .r { background: #FFE3EE; } .cl-ins__tela > .v { background: #D8F1E6; } .cl-ins__tela > .a { background: #FFF0C2; }
.cl-ins__tela > .cl-ins__vaga { position: relative; background: none; }
.cl-ins__vaga-borda { position: absolute; inset: 0; border-radius: 7px; border: 2px dashed #7FB8C2; animation: cl-ins-vaga 4s ease-in-out infinite; }
.cl-ins__icone-entra { position: absolute; inset: 0; width: 24px; height: 24px; border-radius: 7px; box-shadow: 0 2px 6px rgba(46, 18, 56, .25); animation: cl-ins-entra 4s cubic-bezier(.3, 1.6, .5, 1) infinite; }
.cl-ins__brilho { position: absolute; left: -8px; top: -8px; animation: cl-ins-brilho 4s ease-out infinite; }
.cl-ins__titulo { margin: 0; font-family: 'Butler', Georgia, serif; font-weight: 500; font-size: clamp(30px, 6vw, 40px); line-height: 1.1; color: var(--cl-ameixa); }
.cl-ins__sub { margin: 0; font-size: 15px; line-height: 1.5; color: var(--cl-texto); max-width: 32ch; }
.cl-ins__conteudo, .cl-ins__faq { max-width: 560px; margin: 0 auto; padding: 24px 20px 0; box-sizing: border-box; display: flex; flex-direction: column; gap: 14px; }
.cl-ins__abas { display: flex; padding: 4px; border-radius: 16px; background: var(--cl-cinza); }
.cl-ins__abas button { flex: 1; min-height: 44px; border-radius: 12px; border: 0; background: transparent; font: inherit; font-weight: 600; font-size: 15px; color: var(--cl-ameixa); cursor: pointer; transition: background .25s, box-shadow .25s; }
.cl-ins__abas button[aria-selected="true"] { background: #fff; box-shadow: 0 1px 4px rgba(46, 18, 56, .12); }
.cl-ins__painel { display: flex; flex-direction: column; gap: 12px; }
.cl-ins__painel[hidden], .cl-ins__passos[hidden], .cl-ins [hidden] { display: none; }
.cl-ins__chips { display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; }
.cl-ins__chips button { min-height: 40px; padding: 0 14px; border-radius: 20px; border: 1.5px solid var(--cl-borda); background: #fff; font: inherit; font-size: 14px; font-weight: 600; color: var(--cl-ameixa); cursor: pointer; }
.cl-ins__chips button[aria-pressed="true"] { border-color: var(--cl-petroleo); background: var(--cl-agua); }
.cl-ins button:focus-visible, .cl-ins summary:focus-visible { outline: 3px solid var(--cl-ciano); outline-offset: 2px; }
.cl-ins__aviso { margin: 0; font-size: 13px; color: var(--cl-suave); text-align: center; }
.cl-ins__passos { display: flex; flex-direction: column; gap: 12px; }
.cl-ins__cartao { border: 1.5px solid var(--cl-borda); border-radius: 20px; padding: 14px; display: flex; flex-direction: column; gap: 10px; background: #fff; }
.cl-ins--js .cl-ins__cartao { opacity: 0; }
.cl-ins--js .cl-ins__cartao.is-visivel { animation: cl-ins-cartao .6s cubic-bezier(.2, .9, .3, 1.1) both; }
.cl-ins__cartao h2 { margin: 0; display: flex; gap: 10px; align-items: center; font-family: inherit; font-size: 16px; font-weight: 700; color: var(--cl-ameixa); line-height: 1.3; }
.cl-ins__cartao p { margin: 0; font-size: 13.5px; line-height: 1.45; color: var(--cl-suave); }
.cl-ins__n { width: 30px; height: 30px; border-radius: 15px; background: var(--cl-petroleo); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 15px; flex-shrink: 0; }
.cl-ins__ilu { font-size: 13px; }
.cl-ins__url { font-size: 12px; color: var(--cl-suave); background: #fff; border-radius: 10px; padding: 5px 16px; }
.cl-ins__barra26 { height: 44px; border-radius: 22px; background: #F2F2F7; display: flex; align-items: center; justify-content: space-between; padding: 0 10px; }
.cl-ins__seta-e { font-size: 18px; color: var(--cl-suave); }
.cl-ins__barraTopo { height: 44px; border-radius: 12px; background: #F2F2F7; display: flex; align-items: center; gap: 8px; padding: 0 8px; }
.cl-ins__barraTopo .cl-ins__url { flex: 1; }
.cl-ins__alvo { position: relative; width: 30px; height: 30px; border-radius: 15px; background: #fff; display: inline-flex; align-items: center; justify-content: center; font-weight: 700; font-size: 13px; color: var(--cl-tinta); }
.cl-ins__anel { position: absolute; inset: -5px; border-radius: 50%; border: 2.5px solid #EE2677; animation: cl-ins-anel 1.6s ease-out infinite; }
.cl-ins__dedo { position: absolute; left: 12px; top: 14px; animation: cl-ins-dedo 2.4s ease-in-out infinite; pointer-events: none; }
.cl-ins__dedo--tarde { left: auto; right: 40px; animation-delay: .6s; }
.cl-ins__lista { border-radius: 14px; background: #F2F2F7; padding: 6px; display: flex; flex-direction: column; gap: 4px; }
.cl-ins__lista > span { padding: 8px 10px; color: var(--cl-suave); }
.cl-ins__lista > .cl-ins__destaca { color: var(--cl-tinta); }
.cl-ins__destaca { position: relative; padding: 8px 10px; border-radius: 10px; font-weight: 700; display: flex; justify-content: space-between; align-items: center; outline: 2px solid transparent; animation: cl-ins-destaca 2.4s ease-in-out infinite; }
.cl-ins__destaca--lenta { animation-duration: 3.2s; padding: 7px 10px; }
.cl-ins__fundo-folha { height: 132px; border-radius: 14px; background: #DDE3E6; overflow: hidden; position: relative; }
.cl-ins__folha { position: absolute; left: 0; right: 0; bottom: 0; border-radius: 14px 14px 0 0; background: #F2F2F7; padding: 8px 6px; display: flex; flex-direction: column; gap: 4px; animation: cl-ins-folha 3.2s cubic-bezier(.2, .9, .3, 1) infinite; }
.cl-ins__apps { display: flex; gap: 8px; padding: 0 4px 4px; }
.cl-ins__apps span { width: 24px; height: 24px; border-radius: 12px; background: #B8E3EA; }
.cl-ins__apps span:nth-child(2) { background: #FFD7E4; } .cl-ins__apps span:nth-child(3) { background: #D8F1E6; } .cl-ins__apps span:nth-child(4) { background: #FFF0C2; }
.cl-ins__linha { padding: 7px 10px; color: var(--cl-suave); background: #fff; border-radius: 10px; }
.cl-ins__add { border-radius: 14px; background: #F2F2F7; padding: 8px; display: flex; flex-direction: column; gap: 6px; }
.cl-ins__addtopo { display: flex; justify-content: space-between; padding: 2px 4px; color: #007AFF; }
.cl-ins__btnadd { font-weight: 700; padding: 2px 8px; border-radius: 8px; outline: 2px solid transparent; animation: cl-ins-btnadd 3.2s ease-in-out infinite; }
.cl-ins__addlinha { background: #fff; border-radius: 10px; padding: 8px; display: flex; justify-content: space-between; align-items: center; }
.cl-ins__chave { width: 34px; height: 20px; border-radius: 10px; background: #33AE2E; position: relative; animation: cl-ins-chavefundo 3.2s ease-in-out infinite; }
.cl-ins__chave span { position: absolute; left: 2px; top: 2px; width: 16px; height: 16px; border-radius: 8px; background: #fff; box-shadow: 0 1px 2px rgba(0, 0, 0, .2); transform: translateX(14px); animation: cl-ins-chave 3.2s ease-in-out infinite; }
.cl-ins__instalar { min-height: 56px; border-radius: 28px; border: 0; background: var(--cl-petroleo); color: #fff; font: inherit; font-weight: 600; font-size: 16.5px; cursor: pointer; display: block; text-align: center; }
.cl-ins__pronto { margin-top: 6px; background: var(--cl-bom-bg); border-color: transparent; flex-direction: row; align-items: center; gap: 12px; padding: 14px 16px; }
.cl-ins__pronto p { font-size: 14.5px; color: #1E4A1C; }
.cl-ins__pronto-ic { position: relative; flex-shrink: 0; width: 48px; height: 48px; }
.cl-ins__pronto-ic img { width: 48px; height: 48px; border-radius: 12px; display: block; animation: cl-ins-pronto 2.6s cubic-bezier(.3, 1.6, .5, 1) infinite; }
.cl-ins__pronto-ic svg { position: absolute; left: -16px; top: -12px; pointer-events: none; }
.cl-ins__estrela { transform-box: fill-box; transform-origin: 50% 50%; animation: cl-ins-estrela 2.6s ease-in-out infinite; }
.cl-ins__faq { padding-bottom: 40px; gap: 8px; }
.cl-ins__faq h2 { margin: 12px 0 4px; font-family: 'Butler', Georgia, serif; font-weight: 500; font-size: 22px; color: var(--cl-ameixa); }
.cl-ins__faq details { border-bottom: 1px solid var(--cl-borda); padding: 10px 0; }
.cl-ins__faq summary { cursor: pointer; list-style: none; font-weight: 600; font-size: 15px; min-height: 28px; }
.cl-ins__faq summary::-webkit-details-marker { display: none; }
.cl-ins__faq p { margin: 8px 0 0; font-size: 14px; line-height: 1.5; color: var(--cl-texto); }
@keyframes cl-ins-nuvem { from { transform: translateX(-80px); } to { transform: translateX(calc(100vw + 20px)); } }
@keyframes cl-ins-pula { 0%, 100% { transform: translateY(0) rotate(-3deg); } 40% { transform: translateY(-8px) rotate(3deg); } 60% { transform: translateY(0) rotate(0); } }
@keyframes cl-ins-pisca { 0%, 92%, 100% { transform: scaleY(1); } 95% { transform: scaleY(.1); } }
@keyframes cl-ins-entra { 0%, 20% { transform: scale(0) rotate(-20deg); opacity: 0; } 35% { transform: scale(1.18) rotate(4deg); opacity: 1; } 45%, 100% { transform: scale(1) rotate(0); opacity: 1; } }
@keyframes cl-ins-brilho { 0%, 30% { transform: scale(.2); opacity: 0; } 40% { transform: scale(1); opacity: 1; } 60%, 100% { transform: scale(1.4); opacity: 0; } }
@keyframes cl-ins-vaga { 0%, 20% { opacity: 1; } 30%, 100% { opacity: 0; } }
@keyframes cl-ins-cartao { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
@keyframes cl-ins-anel { 0% { transform: scale(.8); opacity: .9; } 100% { transform: scale(1.6); opacity: 0; } }
@keyframes cl-ins-dedo { 0%, 100% { transform: translate(14px, 16px); opacity: 0; } 25% { transform: translate(0, 0); opacity: 1; } 35% { transform: scale(.9); } 45% { transform: scale(1); } 75% { opacity: 1; } 90% { transform: translate(14px, 16px); opacity: 0; } }
@keyframes cl-ins-destaca { 0%, 30% { background: #fff; outline-color: transparent; } 38%, 85% { background: #FFE3EE; outline-color: #EE2677; } 100% { background: #fff; outline-color: transparent; } }
@keyframes cl-ins-folha { 0% { transform: translateY(100%); } 25%, 100% { transform: translateY(0); } }
@keyframes cl-ins-chave { 0%, 25% { transform: translateX(0); } 40%, 100% { transform: translateX(14px); } }
@keyframes cl-ins-chavefundo { 0%, 25% { background: #C9D2D6; } 40%, 100% { background: #33AE2E; } }
@keyframes cl-ins-btnadd { 0%, 50% { background: transparent; outline-color: transparent; } 60%, 90% { background: #FFE3EE; outline-color: #EE2677; } 100% { background: transparent; outline-color: transparent; } }
@keyframes cl-ins-pronto { 0%, 100% { transform: scale(1) rotate(0); } 15% { transform: scale(1.15) rotate(-6deg); } 30% { transform: scale(.95) rotate(4deg); } 45% { transform: scale(1) rotate(0); } }
@keyframes cl-ins-estrela { 0%, 100% { transform: scale(.3); opacity: 0; } 40% { transform: scale(1) rotate(45deg); opacity: 1; } 70% { transform: scale(.6) rotate(90deg); opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
	.cl-ins *, .cl-ins *::before { animation: none !important; }
	.cl-ins--js .cl-ins__cartao { opacity: 1; }
	.cl-ins__icone-entra { opacity: 1; }
	.cl-ins__vaga-borda, .cl-ins__brilho, .cl-ins__dedo, .cl-ins__estrela { display: none; }
}

/* ==========================================================================
   Scanner /escanear/ (tema 0.9.0; telas 1 a 5 aprovadas em 30/10/2026)
   ========================================================================== */
body.cl-sc-pagina { margin: 0; background: #fff; font-family: 'DM Sans', system-ui, sans-serif; color: var(--cl-tinta); }
html.cl-sc-escuro, html.cl-sc-escuro body.cl-sc-pagina { background: #1E1424; }
.cl-sc { max-width: 480px; margin: 0 auto; min-height: 100vh; min-height: 100dvh; position: relative; }
.cl-sc [hidden] { display: none !important; }
.cl-sc__tela { min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; box-sizing: border-box; }
.cl-sc a { color: inherit; }
.cl-sc__h1 { margin: 0; font-family: 'Butler', Georgia, serif; font-weight: 500; font-size: 27px; line-height: 1.12; color: var(--cl-ameixa); }
.cl-sc__h2 { margin: 0; font-family: 'Butler', Georgia, serif; font-weight: 500; font-size: 21px; line-height: 1.15; color: var(--cl-ameixa); }
.cl-sc p { margin: 0; }
.cl-sc__vaga { width: 46px; flex-shrink: 0; }

/* botões */
.cl-sc__btn { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px; padding: 0 18px; border-radius: 999px; border: 0; font: inherit; font-weight: 600; font-size: 15px; text-decoration: none; cursor: pointer; box-sizing: border-box; }
.cl-sc__btn:focus-visible, .cl-sc__redondo:focus-visible, .cl-sc__item:focus-visible, .cl-sc__pesou:focus-visible, .cl-sc__alt:focus-visible, .cl-sc__foto:focus-within { outline: 3px solid var(--cl-ciano); outline-offset: 2px; }
.cl-sc__btn--grande { min-height: 62px; font-size: 17px; background: var(--cl-petroleo); color: #fff !important; }
.cl-sc__btn--cheio { min-height: 56px; font-size: 16.5px; background: var(--cl-petroleo); color: #fff !important; flex: 1; }
.cl-sc__btn--cheio:hover, .cl-sc__btn--grande:hover { background: var(--cl-petroleo-esc); }
.cl-sc__btn--branco { flex: 1; min-height: 46px; font-size: 14px; background: #fff; border: 1.5px solid var(--cl-borda); color: var(--cl-ameixa) !important; }
.cl-sc__btn--borda { min-height: 50px; background: #fff; border: 1.5px solid var(--cl-borda); color: var(--cl-ameixa) !important; }
.cl-sc__btn--texto { min-height: 48px; background: none; color: var(--cl-petroleo-esc) !important; }
.cl-sc__btn--rosa { width: 56px; min-height: 56px; padding: 0; flex-shrink: 0; background: #EE2677; color: #fff !important; }
.cl-sc__redondo { width: 46px; height: 46px; border-radius: 23px; border: 0; display: flex; align-items: center; justify-content: center; flex-shrink: 0; cursor: pointer; color: var(--cl-ameixa); }
.cl-sc__redondo--agua { background: var(--cl-agua); }
.cl-sc__redondo--branco { background: #fff; }
.cl-sc__redondo--vidro { background: rgba(255, 255, 255, .16); color: #fff !important; }
.cl-sc__redondo--vidro[aria-pressed="true"] { background: #FEBE0E; color: var(--cl-ameixa) !important; }
.cl-sc__dupla { display: flex; gap: 10px; }
.cl-sc__acoes { margin-top: auto; padding: 18px 20px calc(26px + env(safe-area-inset-bottom, 0px)); display: flex; flex-direction: column; gap: 10px; }

/* mascote */
.cl-sc__corpo { transform-box: fill-box; transform-origin: 50% 100%; animation: cl-sc-balanca 3.2s ease-in-out infinite; }
.cl-sc__olhos { transform-box: fill-box; transform-origin: 50% 50%; animation: cl-sc-pisca 4.5s infinite; }
.cl-sc__gota { animation: cl-sc-gota 2.6s ease-in infinite; }
.cl-sc__coracao { transform-box: fill-box; transform-origin: 50% 60%; animation: cl-sc-bate 1.6s ease-in-out infinite; }
@keyframes cl-sc-balanca { 0%, 100% { transform: rotate(-4deg); } 50% { transform: rotate(4deg); } }
@keyframes cl-sc-pisca { 0%, 92%, 100% { transform: scaleY(1); } 95% { transform: scaleY(.1); } }
@keyframes cl-sc-gota { 0%, 40% { opacity: 0; transform: translateY(-4px); } 55% { opacity: 1; } 100% { opacity: 0; transform: translateY(12px); } }
@keyframes cl-sc-bate { 0%, 40%, 100% { transform: scale(1); } 15% { transform: scale(1.14); } 28% { transform: scale(.97); } }

/* 1 · início */
.cl-sc__topo { display: flex; align-items: center; justify-content: space-between; padding: calc(14px + env(safe-area-inset-top, 0px)) 20px 10px; }
.cl-sc__topo .cl-logo { height: 40px; width: auto; display: block; }
.cl-sc__topo--meio { padding-inline: 16px; }
.cl-sc__hero { margin: 6px 16px 0; background: var(--cl-agua); border-radius: 28px; padding: 22px 20px 20px; position: relative; overflow: hidden; display: flex; flex-direction: column; gap: 14px; }
.cl-sc__nuvem { position: absolute; top: 14px; left: 0; color: #fff; animation: cl-sc-nuvem 14s linear infinite; }
@keyframes cl-sc-nuvem { from { transform: translateX(-60px); } to { transform: translateX(480px); } }
.cl-sc__hero-txt { display: flex; align-items: center; gap: 14px; position: relative; }
.cl-sc__hero-txt .cl-sc__mascote { flex-shrink: 0; }
.cl-sc__hero-txt p { font-size: 14.5px; line-height: 1.45; color: var(--cl-texto); margin-top: 4px; }
.cl-sc__pulso { animation: cl-sc-pulso 2.4s ease-out infinite; }
@keyframes cl-sc-pulso { 0% { box-shadow: 0 0 0 0 rgba(0, 122, 140, .45); } 70% { box-shadow: 0 0 0 16px rgba(0, 122, 140, 0); } 100% { box-shadow: 0 0 0 0 rgba(0, 122, 140, 0); } }
.cl-sc__ultimos { padding: 22px 20px calc(110px + env(safe-area-inset-bottom, 0px)); display: flex; flex-direction: column; gap: 10px; }
.cl-sc__ultimos-topo { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.cl-sc__ultimos-topo h2 { margin: 0; font-family: 'Butler', Georgia, serif; font-weight: 500; font-size: 21px; color: var(--cl-ameixa); }
.cl-sc__ultimos-topo span { font-size: 12.5px; color: var(--cl-suave); }
.cl-sc__lista { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.cl-sc__item { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 20px; background: var(--cl-cinza); text-decoration: none; }
.cl-sc__item-foto { width: 52px; height: 52px; border-radius: 14px; background: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; overflow: hidden; color: #EE2677; }
.cl-sc__item-foto img { max-width: 46px; max-height: 46px; object-fit: contain; }
.cl-sc__item-txt { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.cl-sc__item-txt span { font-size: 12px; color: var(--cl-suave); font-weight: 500; }
.cl-sc__item-txt b { font-size: 15px; font-weight: 600; line-height: 1.2; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.cl-sc__selo { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border-radius: 999px; font-weight: 700; font-size: 14px; flex-shrink: 0; }
.cl-sc__selo span { width: 9px; height: 9px; border-radius: 5px; }
.cl-sc__vazio { font-size: 14px; line-height: 1.5; color: var(--cl-suave); background: var(--cl-cinza); border-radius: 18px; padding: 14px 16px; }
.cl-sc__barra .cl-scan { background: #EE2677; }

/* 2 · câmera */
.cl-sc__camera { position: relative; background: #1E1424; color: #fff; overflow: hidden; }
.cl-sc__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; background: #2A1D31; }
.cl-sc__escuro { position: absolute; inset: 0; background: radial-gradient(ellipse 75% 32% at 50% 44%, transparent 60%, rgba(30, 20, 36, .55) 61%); }
.cl-sc__barra-escura { position: relative; display: flex; align-items: center; justify-content: space-between; padding: calc(18px + env(safe-area-inset-top, 0px)) 16px 0; font-weight: 600; font-size: 16px; }
.cl-sc__barra-escura [data-cl-luz]:not([hidden]) + .cl-sc__vaga { display: none; }
.cl-sc__pilula { position: relative; display: flex; justify-content: center; }
.cl-sc .cl-sc__pilula { margin: 0 auto; width: max-content; max-width: calc(100% - 40px); align-items: center; gap: 7px; background: rgba(30, 20, 36, .72); padding: 7px 14px; border-radius: 999px; font-size: 13px; font-weight: 500; text-align: center; }
.cl-sc .cl-sc__pilula--cima { margin-top: auto; margin-bottom: 14px; }
.cl-sc .cl-sc__pilula--baixo { margin-top: 14px; margin-bottom: auto; font-size: 14px; }
.cl-sc__quadro { position: relative; width: min(280px, 76vw); aspect-ratio: 280 / 180; margin: 0 auto; }
.cl-sc__cantos { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; animation: cl-sc-respira 2.2s ease-in-out infinite; }
.cl-sc__linha { position: absolute; left: 6%; right: 6%; top: 4%; height: 3px; border-radius: 2px; background: #0CDEF0; box-shadow: 0 0 14px 3px rgba(12, 222, 240, .55); animation: cl-sc-varre 2.2s ease-in-out infinite alternate; }
@keyframes cl-sc-varre { from { top: 4%; } to { top: 94%; } }
@keyframes cl-sc-respira { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.025); } }
.cl-sc__cartao { position: relative; background: #fff; color: var(--cl-tinta); border-radius: 28px 28px 0 0; padding: 22px 20px calc(30px + env(safe-area-inset-bottom, 0px)); display: flex; flex-direction: column; gap: 14px; }
.cl-sc__cartao-topo { display: flex; gap: 12px; align-items: center; }
.cl-sc__cartao-topo p { font-size: 14px; color: var(--cl-suave); margin-top: 2px; }
.cl-sc__dica-ic { width: 44px; height: 44px; border-radius: 22px; background: var(--cl-agua); color: var(--cl-petroleo); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.cl-sc__dica-ic svg { width: 22px; height: 22px; }

/* 3 · resultado */
.cl-sc__resultado { background: #1E1424; }
.cl-sc__res-topo { height: 96px; padding: env(safe-area-inset-top, 0px) 16px 0; display: flex; align-items: center; justify-content: space-between; box-sizing: content-box; }
.cl-sc__lido { display: inline-flex; align-items: center; gap: 8px; background: #EAF6E9; color: #1E7A1A; font-weight: 600; font-size: 14px; padding: 8px 14px; border-radius: 999px; animation: cl-sc-pula .45s .1s cubic-bezier(.3, 1.6, .5, 1) both; }
.cl-sc__folha { flex: 1; background: #fff; border-radius: 30px 30px 0 0; padding: 10px 18px calc(24px + env(safe-area-inset-bottom, 0px)); display: flex; flex-direction: column; gap: 14px; animation: cl-sc-sobe .6s cubic-bezier(.2, .8, .2, 1) both; outline: none; }
.cl-sc__alca { align-self: center; width: 44px; height: 5px; border-radius: 3px; background: var(--cl-borda); flex-shrink: 0; }
.cl-sc__prod { display: flex; gap: 14px; align-items: center; }
.cl-sc__prod-foto { width: 70px; height: 84px; border-radius: 18px; background: var(--cl-cinza); display: flex; align-items: center; justify-content: center; flex-shrink: 0; overflow: hidden; }
.cl-sc__prod-foto img { max-width: 62px; max-height: 76px; object-fit: contain; }
.cl-sc__prod .cl-sc__h1 { font-size: 23px; }
.cl-sc__marca { display: block; font-size: 13px; font-weight: 600; color: var(--cl-suave); letter-spacing: .04em; text-transform: uppercase; }
.cl-sc__sub { display: block; font-size: 13px; color: var(--cl-suave); margin-top: 2px; }
.cl-sc__nota { display: flex; gap: 16px; align-items: center; border-radius: 22px; padding: 14px 16px; }
.cl-sc__anel { position: relative; width: 96px; height: 96px; flex-shrink: 0; }
.cl-sc__anel svg { transform: rotate(-90deg); }
.cl-sc__arco { animation: cl-sc-enche 1.3s .35s cubic-bezier(.2, .75, .2, 1) both; }
.cl-sc__num { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; line-height: 1; animation: cl-sc-pula .5s 1.2s cubic-bezier(.3, 1.6, .5, 1) both; }
.cl-sc__num b { font-family: 'Butler', Georgia, serif; font-weight: 500; font-size: 34px; color: var(--cl-ameixa); }
.cl-sc__num span { font-size: 11px; color: var(--cl-suave); margin-top: 2px; }
.cl-sc__nota-txt { display: flex; flex-direction: column; gap: 6px; min-width: 0; flex: 1; }
.cl-sc__nota-txt strong { font-size: 20px; font-weight: 700; }
.cl-sc__nota-txt > span { font-size: 13.5px; line-height: 1.4; color: var(--cl-texto); }
.cl-sc__seg { display: flex; height: 8px; border-radius: 4px; overflow: hidden; gap: 2px; transform-origin: 0 50%; animation: cl-sc-cresce .8s .5s cubic-bezier(.2, .75, .2, 1) both; }
.cl-sc__alerta { background: #FFE7E4; color: #B3200F; border-radius: 14px; padding: 10px 12px; font-size: 13.5px; font-weight: 600; }
.cl-sc__bloco { display: flex; flex-direction: column; gap: 8px; }
.cl-sc__entra { animation: cl-sc-entra .5s cubic-bezier(.2, .75, .2, 1) both; }
.cl-sc__rotulo { margin: 0; display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--cl-petroleo-esc); }
.cl-sc__rotulo--rosa { color: #B0105A; font-weight: 700; }
.cl-sc__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.cl-sc__chip { display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; border-radius: 999px; font-size: 13.5px; font-weight: 600; }
.cl-sc__chip--ok { background: #EAF6E9; color: #1E7A1A; }
.cl-sc__chip--atencao { background: #FFF6DB; color: #7A5A00; }
.cl-sc__chip--evitar { background: #FFEEDF; color: #A2510B; }
.cl-sc__pesou { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 16px; background: var(--cl-cinza); text-decoration: none; }
.cl-sc__ponto { width: 10px; height: 10px; border-radius: 5px; flex-shrink: 0; }
.cl-sc__pesou-nome { flex: 1; font-size: 14.5px; min-width: 0; }
.cl-sc__pesou-nome b { font-weight: 600; }
.cl-sc__pesou-nivel { font-size: 12.5px; font-weight: 600; }
.cl-sc__nada { font-size: 14px; color: var(--cl-suave); }
.cl-sc__alt { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 16px; background: #FFF5F7; border: 1.5px solid #FFE3EC; text-decoration: none; }
.cl-sc__alt-foto { width: 48px; height: 56px; border-radius: 14px; background: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; overflow: hidden; }
.cl-sc__alt-foto img { max-width: 42px; max-height: 50px; object-fit: contain; }
.cl-sc__alt-txt { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.cl-sc__alt-txt b { font-size: 14.5px; font-weight: 600; line-height: 1.25; }
.cl-sc__alt-txt span { font-size: 12.5px; color: var(--cl-suave); }
.cl-sc__res-acoes { margin-top: auto; padding-top: 6px; display: flex; gap: 10px; }
.cl-sc__semrede { display: flex; flex-direction: column; gap: 10px; padding: 10px 2px; }
.cl-sc__semrede p { font-size: 15px; line-height: 1.5; color: var(--cl-texto); }
@keyframes cl-sc-sobe { from { transform: translateY(70%); } to { transform: none; } }
@keyframes cl-sc-enche { from { stroke-dashoffset: 251.3; } }
@keyframes cl-sc-pula { from { transform: scale(.4); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes cl-sc-entra { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes cl-sc-cresce { from { transform: scaleX(0); } to { transform: none; } }

/* 4 · produto que ainda não temos  /  5 · câmera bloqueada */
.cl-sc__centro { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 16px 24px 0; text-align: center; }
.cl-sc__centro p { font-size: 15px; line-height: 1.5; color: var(--cl-texto); max-width: 31ch; }
.cl-sc__codigo { font-size: 13px; color: var(--cl-suave); letter-spacing: .14em; }
.cl-sc__fotos { list-style: none; margin: 20px 20px 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.cl-sc__foto { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 20px; border: 2px dashed #C9E4E8; background: var(--cl-cinza); cursor: pointer; }
.cl-sc__foto input { position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden; }
.cl-sc__foto.is-pronta { border-style: solid; border-color: #33AE2E; background: #EAF6E9; }
.cl-sc__foto-ic { width: 48px; height: 48px; border-radius: 14px; background: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: var(--cl-petroleo); }
.cl-sc__foto-txt { flex: 1; display: flex; flex-direction: column; gap: 2px; }
.cl-sc__foto-txt b { font-size: 15.5px; font-weight: 600; }
.cl-sc__foto-txt span { font-size: 13px; color: var(--cl-suave); }
.cl-sc__foto-st { font-size: 13px; font-weight: 700; color: var(--cl-petroleo-esc); }
.cl-sc__foto.is-pronta .cl-sc__foto-st { color: #1E7A1A; }
.cl-sc__nota-baixo { margin: 12px 24px 0 !important; font-size: 13px; line-height: 1.45; color: var(--cl-suave); text-align: center; }
.cl-sc__erro { margin: 10px 20px 0 !important; background: #FFE7E4; color: #B3200F; border-radius: 14px; padding: 10px 12px; font-size: 14px; font-weight: 600; text-align: center; }
.cl-sc__isca { position: absolute; left: -9999px; width: 1px; height: 1px; }
.cl-sc__bloqueada { background: var(--cl-agua); }
.cl-sc__bloqueada .cl-sc__topo { padding-left: 16px; }
.cl-sc__passos-bl { margin: 20px 20px 0; display: flex; flex-direction: column; gap: 10px; }
.cl-sc__passos-bl > div { background: #fff; border-radius: 20px; padding: 14px 16px; display: flex; flex-direction: column; gap: 6px; }
.cl-sc__passos-bl h2 { margin: 0; font-size: 15px; font-weight: 700; color: var(--cl-ameixa); }
.cl-sc__passos-bl p { font-size: 14px; line-height: 1.5; color: var(--cl-texto); }
.cl-sc__passos-bl b { font-weight: 600; }
.cl-sc__passos-bl .cl-sc__nota-baixo { margin: 2px 4px 0 !important; }

/* procurando e digitar */
.cl-sc__procurando { position: fixed; left: 50%; bottom: calc(40px + env(safe-area-inset-bottom, 0px)); transform: translateX(-50%); z-index: 60; display: flex; align-items: center; gap: 10px; background: var(--cl-ameixa); color: #fff; padding: 12px 18px; border-radius: 999px; font-weight: 600; font-size: 15px; box-shadow: 0 10px 24px -8px rgba(46, 18, 56, .5); }
.cl-sc__giro { width: 18px; height: 18px; border-radius: 50%; border: 3px solid rgba(255, 255, 255, .35); border-top-color: #fff; animation: cl-sc-gira .8s linear infinite; }
@keyframes cl-sc-gira { to { transform: rotate(360deg); } }
.cl-sc__digitar { position: fixed; inset: 0; z-index: 70; display: flex; align-items: flex-end; justify-content: center; }
.cl-sc__fundo { position: absolute; inset: 0; border: 0; padding: 0; background: rgba(46, 18, 56, .45); cursor: pointer; }
.cl-sc__digitar-folha { position: relative; width: 100%; max-width: 480px; box-sizing: border-box; background: #fff; border-radius: 28px 28px 0 0; padding: 10px 20px calc(26px + env(safe-area-inset-bottom, 0px)); display: flex; flex-direction: column; gap: 12px; animation: cl-sc-sobe-folha .4s cubic-bezier(.2, .9, .3, 1.15) both; }
.cl-sc__digitar-folha label { font-size: 14px; color: var(--cl-suave); }
.cl-sc__digitar-folha input { min-height: 56px; border-radius: 16px; border: 2px solid var(--cl-borda); padding: 0 16px; font: inherit; font-size: 22px; letter-spacing: .12em; color: var(--cl-tinta); }
.cl-sc__digitar-folha input:focus { outline: none; border-color: var(--cl-petroleo); }
.cl-sc__digitar-folha .cl-sc__erro { margin: 0 !important; }
@keyframes cl-sc-sobe-folha { from { transform: translateY(60px); opacity: 0; } to { transform: none; opacity: 1; } }

@media (prefers-reduced-motion: reduce) {
	.cl-sc__corpo, .cl-sc__olhos, .cl-sc__gota, .cl-sc__coracao, .cl-sc__nuvem, .cl-sc__pulso, .cl-sc__linha, .cl-sc__cantos, .cl-sc__lido, .cl-sc__folha, .cl-sc__arco, .cl-sc__num, .cl-sc__seg, .cl-sc__entra, .cl-sc__digitar-folha { animation: none; }
	.cl-sc__giro { animation-duration: 2s; }
}
@media (min-width: 761px) {
	body.cl-sc-pagina { background: var(--cl-agua); }
	.cl-sc { box-shadow: 0 0 0 1px var(--cl-borda); background: #fff; }
	.cl-sc__ultimos { padding-bottom: 40px; }
}
.cl-sc__barra[hidden] { display: none !important; }
.cl-sc__rotulo { font-family: 'DM Sans', system-ui, sans-serif; }
.cl-sc__btn--branco { padding: 0 10px; white-space: nowrap; gap: 8px; }
.cl-sc__passos-bl h2, .cl-sc__ultimos-topo h2 { line-height: 1.2; }
.cl-sc__passos-bl h2 { font-family: 'DM Sans', system-ui, sans-serif; }
.cl-sc [tabindex="-1"]:focus { outline: none; }
