/* ===========================
   PINGO DO RIO — CSS v2 (Supabase)
   =========================== */
:root {
  --rosa:#F4718F;--rosa-claro:#FDDDE6;--rosa-escuro:#C94E6A;
  --amarelo:#FFD166;--verde:#06D6A0;--roxo:#7B5EA7;
  --creme:#FFF8F0;--cinza:#6B7280;--cinza-claro:#F3F4F6;
  --texto:#1F2937;--branco:#FFFFFF;
  --sombra:0 4px 24px rgba(244,113,143,.13);
  --sombra-forte:0 8px 40px rgba(244,113,143,.22);
  --radius:20px;--radius-sm:10px;--trans:all .3s ease;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'DM Sans',sans-serif;color:var(--texto);background:var(--creme);overflow-x:hidden}
a{text-decoration:none;color:inherit}ul{list-style:none}
.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}

/* BUTTONS */
.btn-primary{background:var(--rosa);color:var(--branco);border:none;padding:.85rem 2rem;border-radius:50px;font-family:'DM Sans',sans-serif;font-weight:600;font-size:1rem;cursor:pointer;transition:var(--trans);display:inline-block}
.btn-primary:hover{background:var(--rosa-escuro);transform:translateY(-2px);box-shadow:var(--sombra-forte)}
.btn-outline{background:transparent;color:var(--rosa);border:2px solid var(--rosa);padding:.75rem 2rem;border-radius:50px;font-family:'DM Sans',sans-serif;font-weight:600;font-size:1rem;cursor:pointer;transition:var(--trans);display:inline-block}
.btn-outline:hover{background:var(--rosa);color:var(--branco)}

/* HEADER */
.header{position:sticky;top:0;z-index:1000;background:var(--branco);box-shadow:0 2px 20px rgba(0,0,0,.08)}
.header-top{background:var(--rosa);color:var(--branco);text-align:center;padding:.4rem 1rem;font-size:.82rem;font-weight:500}
.navbar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;max-width:1200px;margin:0 auto;gap:1rem}
.logo a{display:flex;align-items:baseline;gap:.25rem}
.logo-pingo{font-family:'Playfair Display',serif;font-size:1.7rem;font-weight:900;color:var(--rosa)}
.logo-do{font-size:.8rem;color:var(--cinza);letter-spacing:2px}
.logo-rio{font-family:'Playfair Display',serif;font-size:1.7rem;font-weight:900;color:var(--roxo)}
.logo small{font-size:.62rem;color:var(--cinza);letter-spacing:3px;text-transform:uppercase;margin-left:.5rem}
.nav-links{display:flex;gap:2rem}
.nav-links a{font-weight:500;color:var(--cinza);transition:var(--trans);font-size:.95rem}
.nav-links a:hover{color:var(--rosa)}
.nav-actions{display:flex;align-items:center;gap:.75rem}
.btn-cart{background:var(--rosa-claro);border:none;padding:.5rem 1rem;border-radius:50px;cursor:pointer;font-size:.95rem;font-weight:600;color:var(--rosa-escuro);transition:var(--trans)}
.btn-cart:hover{background:var(--rosa);color:var(--branco)}
.cart-count{background:var(--rosa-escuro);color:var(--branco);border-radius:50%;padding:1px 6px;font-size:.75rem;font-weight:700}
.btn-search{background:none;border:none;font-size:1.2rem;cursor:pointer;transition:var(--trans)}
.btn-search:hover{transform:scale(1.2)}
.btn-whatsapp-nav{background:#25D366;color:var(--branco);border:none;padding:.5rem 1.2rem;border-radius:50px;font-family:'DM Sans',sans-serif;font-weight:600;font-size:.85rem;cursor:pointer;transition:var(--trans)}
.btn-whatsapp-nav:hover{background:#128C7E;transform:translateY(-2px)}
.menu-mobile{display:none;background:none;border:none;font-size:1.5rem;cursor:pointer}
.search-bar{display:none;padding:.75rem 1.5rem;background:var(--cinza-claro);border-top:1px solid #eee}
.search-bar.ativo{display:flex;gap:.75rem}
.search-bar input{flex:1;border:2px solid var(--rosa);border-radius:50px;padding:.5rem 1.2rem;font-family:'DM Sans',sans-serif;font-size:1rem;outline:none}
.search-bar button{background:none;border:none;font-size:1.2rem;cursor:pointer}

/* HERO */
.hero{min-height:90vh;background:linear-gradient(135deg,var(--rosa-claro) 0%,#FFF0F7 50%,#F0F7FF 100%);display:flex;align-items:center;padding:6rem 1.5rem 4rem;position:relative;overflow:hidden}
.hero-shapes{position:absolute;inset:0;pointer-events:none}
.shape{position:absolute;border-radius:50%;opacity:.15}
.shape-1{width:400px;height:400px;background:var(--rosa);top:-100px;right:-100px;animation:float 8s ease-in-out infinite}
.shape-2{width:250px;height:250px;background:var(--amarelo);bottom:50px;left:10%;animation:float 6s ease-in-out infinite reverse}
.shape-3{width:150px;height:150px;background:var(--roxo);top:40%;right:30%;animation:float 10s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-20px)}}
.hero-content{flex:1;max-width:560px;position:relative;z-index:2}
.hero-badge{display:inline-block;background:var(--amarelo);color:var(--texto);padding:.35rem 1rem;border-radius:50px;font-size:.85rem;font-weight:600;margin-bottom:1.5rem;animation:slideIn .6s ease}
.hero-content h1{font-family:'Playfair Display',serif;font-size:clamp(2.5rem,5vw,4rem);font-weight:900;line-height:1.1;margin-bottom:1.2rem;animation:slideIn .8s ease}
.hero-content h1 em{color:var(--rosa);font-style:italic}
.hero-content p{color:var(--cinza);font-size:1.1rem;line-height:1.7;margin-bottom:2rem;animation:slideIn 1s ease}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:3rem;animation:slideIn 1.2s ease}
.hero-stats{display:flex;gap:2rem;animation:slideIn 1.4s ease}
.hero-stats div{display:flex;flex-direction:column}
.hero-stats strong{font-family:'Playfair Display',serif;font-size:1.8rem;color:var(--rosa)}
.hero-stats span{font-size:.8rem;color:var(--cinza)}
.hero-visual{flex:1;display:flex;justify-content:center;align-items:center;position:relative;min-height:400px}
.hero-card{position:absolute;background:var(--branco);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--sombra-forte);text-align:center;transition:var(--trans);cursor:pointer}
.hero-card:hover{transform:translateY(-8px) scale(1.05)}
.hero-card span{font-size:.85rem;font-weight:600;color:var(--cinza);margin-top:.5rem;display:block}
.hero-emoji{font-size:4rem}
.hero-card-1{top:30px;right:80px;animation:float 7s ease-in-out infinite}
.hero-card-2{top:50%;left:40%;transform:translateX(-50%) translateY(-50%);width:140px}
.hero-card-3{bottom:30px;right:100px;animation:float 9s ease-in-out infinite reverse}
@keyframes slideIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}

/* CATEGORIAS */
.categorias{padding:5rem 0;background:var(--branco)}
.section-title{font-family:'Playfair Display',serif;font-size:2.2rem;font-weight:900;margin-bottom:2.5rem;position:relative;display:inline-block}
.section-title::after{content:'';position:absolute;bottom:-8px;left:0;width:60%;height:4px;background:var(--rosa);border-radius:2px}
.categorias-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:1rem}
.cat-card{background:var(--creme);border:2px solid transparent;border-radius:var(--radius);padding:1.5rem 1rem;text-align:center;cursor:pointer;transition:var(--trans)}
.cat-card:hover,.cat-card.ativo{border-color:var(--rosa);background:var(--rosa-claro);transform:translateY(-4px);box-shadow:var(--sombra)}
.cat-icon{font-size:2.2rem;margin-bottom:.5rem}
.cat-card span{font-size:.9rem;font-weight:600;color:var(--texto)}

/* PRODUTOS */
.produtos-section{padding:5rem 0}
.produtos-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}
.filtros{display:flex;align-items:center;gap:1rem}
.filtros select{border:2px solid var(--rosa-claro);border-radius:50px;padding:.5rem 1rem;font-family:'DM Sans',sans-serif;font-size:.9rem;outline:none;cursor:pointer;background:var(--branco);color:var(--texto)}
.filtro-destaque{font-size:.9rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:.4rem}
.produtos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}

/* SKELETON */
.skeleton-card{background:var(--branco);border-radius:var(--radius);height:380px;overflow:hidden;position:relative}
.skeleton-card::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.6) 50%,transparent 100%);animation:shimmer 1.5s infinite}
@keyframes shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
.skeleton-card::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#F3F4F6 220px,#fff 220px,#fff 240px,#F3F4F6 240px,#F3F4F6 260px,#fff 260px,#fff 280px,#F3F4F6 280px,#F3F4F6 300px,#fff 300px)}

/* PRODUTO CARD */
.produto-card{background:var(--branco);border-radius:var(--radius);overflow:hidden;box-shadow:0 2px 16px rgba(0,0,0,.07);transition:var(--trans);cursor:pointer;position:relative}
.produto-card:hover{transform:translateY(-6px);box-shadow:var(--sombra-forte)}
.produto-img{height:220px;background:var(--rosa-claro);display:flex;align-items:center;justify-content:center;font-size:5rem;position:relative;overflow:hidden}
.produto-img img{width:100%;height:100%;object-fit:cover}
.produto-badges{position:absolute;top:.75rem;left:.75rem;display:flex;flex-direction:column;gap:.4rem}
.badge{display:inline-block;padding:.2rem .7rem;border-radius:50px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.badge-novo{background:var(--verde);color:var(--branco)}
.badge-promo{background:var(--rosa);color:var(--branco)}
.produto-info{padding:1.25rem}
.produto-categoria{font-size:.78rem;color:var(--cinza);font-weight:500;text-transform:uppercase;letter-spacing:1px;margin-bottom:.3rem}
.produto-nome{font-family:'Playfair Display',serif;font-size:1.05rem;font-weight:700;margin-bottom:.6rem;line-height:1.3}
.produto-precos{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem}
.preco-atual{font-size:1.2rem;font-weight:700;color:var(--rosa-escuro)}
.preco-original{font-size:.85rem;color:var(--cinza);text-decoration:line-through}
.produto-nota{font-size:.82rem;color:#f59e0b;margin-bottom:.75rem}
.produto-tamanhos{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1rem}
.tamanho-tag{background:var(--creme);border:1px solid #e5e7eb;border-radius:6px;padding:.2rem .5rem;font-size:.72rem;font-weight:500}
.btn-adicionar{width:100%;background:var(--rosa);color:var(--branco);border:none;padding:.7rem;border-radius:50px;font-family:'DM Sans',sans-serif;font-weight:600;font-size:.9rem;cursor:pointer;transition:var(--trans)}
.btn-adicionar:hover{background:var(--rosa-escuro)}
.sem-resultado{text-align:center;padding:4rem 1rem;color:var(--cinza)}
.sem-resultado p{font-size:1.2rem;margin-bottom:1rem}
.sem-resultado button{padding:.7rem 2rem;background:var(--rosa);color:var(--branco);border:none;border-radius:50px;cursor:pointer;font-family:'DM Sans',sans-serif;font-weight:600}
.load-mais{text-align:center;margin-top:2.5rem}

/* BANNER WHATSAPP */
.banner-whats{background:linear-gradient(135deg,#25D366,#128C7E);padding:3.5rem 0}
.banner-whats-content{display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap}
.banner-whats-content h3{font-family:'Playfair Display',serif;font-size:1.8rem;color:var(--branco);margin-bottom:.5rem}
.banner-whats-content p{color:rgba(255,255,255,.85)}
.btn-whatsapp-big{background:var(--branco);color:#128C7E;border:none;padding:1rem 2.5rem;border-radius:50px;font-family:'DM Sans',sans-serif;font-weight:700;font-size:1.05rem;cursor:pointer;transition:var(--trans);white-space:nowrap}
.btn-whatsapp-big:hover{background:#E8FFF2;transform:scale(1.05)}

/* SOBRE */
.sobre{padding:5rem 0;background:var(--branco)}
.sobre-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.sobre-texto h2{font-family:'Playfair Display',serif;font-size:2.2rem;font-weight:900;margin-bottom:1.2rem}
.sobre-texto h2 span{color:var(--rosa)}
.sobre-texto p{color:var(--cinza);line-height:1.8;margin-bottom:1rem}
.sobre-diferenciais{display:flex;flex-direction:column;gap:.6rem;margin-top:1.5rem}
.sobre-diferenciais div{font-weight:500;font-size:.95rem}
.sobre-numeros{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.numero-card{background:var(--creme);border-radius:var(--radius);padding:1.5rem;text-align:center;border:2px solid var(--rosa-claro)}
.numero-card strong{display:block;font-family:'Playfair Display',serif;font-size:2rem;color:var(--rosa)}
.numero-card span{font-size:.85rem;color:var(--cinza)}

/* CONTATO */
.contato{padding:5rem 0}
.contato-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem}
.contato-item{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.5rem;font-size:1.5rem}
.contato-item div{display:flex;flex-direction:column;gap:.2rem}
.contato-item strong{font-size:.9rem;color:var(--cinza);text-transform:uppercase;letter-spacing:1px}
.contato-item a{color:var(--rosa);font-weight:600}
.contato-form{display:flex;flex-direction:column;gap:1rem}
.contato-form input,.contato-form textarea{border:2px solid var(--rosa-claro);border-radius:var(--radius-sm);padding:.75rem 1rem;font-family:'DM Sans',sans-serif;font-size:1rem;outline:none;transition:var(--trans);background:var(--branco)}
.contato-form input:focus,.contato-form textarea:focus{border-color:var(--rosa)}

/* FOOTER */
.footer{background:var(--texto);color:#9CA3AF;padding:4rem 0 2rem}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}
.footer-logo .logo-pingo{color:var(--rosa)}
.footer-logo .logo-rio{color:#a78bfa}
.footer p{font-size:.9rem;line-height:1.7;margin-top:.5rem}
.footer strong{color:var(--branco);font-size:.9rem;display:block;margin-bottom:.75rem}
.footer ul{display:flex;flex-direction:column;gap:.5rem}
.footer ul li a{font-size:.9rem;transition:var(--trans)}
.footer ul li a:hover{color:var(--rosa)}
.pagamentos{display:flex;flex-direction:column;gap:.4rem;font-size:.9rem}
.social-links{display:flex;flex-direction:column;gap:.4rem;margin-top:.5rem}
.social-links a{font-size:.9rem;transition:var(--trans)}
.social-links a:hover{color:var(--rosa)}
.footer-bottom{border-top:1px solid #374151;padding-top:2rem;text-align:center;font-size:.82rem}

/* MODAL PRODUTO */
.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:2000;backdrop-filter:blur(4px)}
.modal-overlay.ativo{display:block}
.modal-produto{display:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--branco);border-radius:var(--radius);padding:2.5rem;max-width:720px;width:90%;max-height:88vh;overflow-y:auto;z-index:2001;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.modal-produto.ativo{display:block}
.modal-fechar{position:absolute;top:1rem;right:1rem;background:var(--creme);border:none;width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:1rem;transition:var(--trans)}
.modal-fechar:hover{background:var(--rosa);color:var(--branco)}
.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.modal-img{background:var(--rosa-claro);border-radius:var(--radius);height:300px;display:flex;align-items:center;justify-content:center;font-size:6rem;overflow:hidden}
.modal-img img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}
.modal-info h2{font-family:'Playfair Display',serif;font-size:1.5rem;margin-bottom:.5rem}
.modal-info p{color:var(--cinza);line-height:1.7;margin:1rem 0;font-size:.95rem}
.modal-label{font-size:.82rem;font-weight:600;color:var(--cinza);text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem;margin-top:.75rem}
.opcoes-selector{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}
.opcao-btn{border:2px solid var(--rosa-claro);background:var(--branco);border-radius:var(--radius-sm);padding:.35rem .85rem;font-family:'DM Sans',sans-serif;font-size:.85rem;font-weight:500;cursor:pointer;transition:var(--trans)}
.opcao-btn:hover,.opcao-btn.selecionado{border-color:var(--rosa);background:var(--rosa-claro);color:var(--rosa-escuro)}
.modal-acoes{display:flex;gap:.75rem;margin-top:1.2rem}
.modal-acoes .btn-primary{flex:1;text-align:center}
.btn-whats-produto{background:#25D366;color:var(--branco);border:none;padding:.85rem 1.5rem;border-radius:50px;font-family:'DM Sans',sans-serif;font-weight:600;cursor:pointer;transition:var(--trans);font-size:1rem}
.btn-whats-produto:hover{background:#128C7E}

/* AVALIAÇÕES */
.avaliacoes-section{margin-top:2rem;padding-top:1.5rem;border-top:2px solid var(--rosa-claro)}
.avaliacoes-section h4{font-family:'Playfair Display',serif;font-size:1.1rem;margin-bottom:1rem}
.avaliacao-item{background:var(--creme);border-radius:var(--radius-sm);padding:1rem;margin-bottom:.75rem}
.avaliacao-item .av-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.3rem}
.avaliacao-item .av-nome{font-weight:600;font-size:.9rem}
.avaliacao-item .av-nota{color:#f59e0b;font-size:.9rem}
.avaliacao-item .av-texto{color:var(--cinza);font-size:.85rem;line-height:1.5}
.btn-avaliar{background:none;border:2px solid var(--rosa);color:var(--rosa);padding:.5rem 1.2rem;border-radius:50px;cursor:pointer;font-family:'DM Sans',sans-serif;font-weight:600;font-size:.85rem;transition:var(--trans);margin-top:.5rem}
.btn-avaliar:hover{background:var(--rosa);color:var(--branco)}

/* CARRINHO */
.carrinho-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1500}
.carrinho-overlay.ativo{display:block}
.carrinho-lateral{position:fixed;right:-480px;top:0;width:420px;max-width:95vw;height:100vh;background:var(--branco);z-index:1501;box-shadow:-4px 0 30px rgba(0,0,0,.15);display:flex;flex-direction:column;transition:right .35s ease}
.carrinho-lateral.ativo{right:0}
.carrinho-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--rosa-claro)}
.carrinho-header h3{font-family:'Playfair Display',serif;font-size:1.3rem}
.carrinho-header button{background:none;border:none;font-size:1.3rem;cursor:pointer}
.carrinho-itens{flex:1;overflow-y:auto;padding:1.5rem}
.carrinho-vazio{text-align:center;padding:3rem 1rem;color:var(--cinza)}
.carrinho-vazio div{font-size:4rem;margin-bottom:1rem}
.item-carrinho{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--rosa-claro);align-items:flex-start}
.item-img{width:65px;height:65px;background:var(--rosa-claro);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:1.8rem;flex-shrink:0;overflow:hidden}
.item-img img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-sm)}
.item-dados{flex:1}
.item-dados h4{font-size:.9rem;font-weight:600;margin-bottom:.2rem}
.item-dados small{color:var(--cinza);font-size:.8rem}
.item-controles{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}
.item-controles button{width:26px;height:26px;background:var(--creme);border:none;border-radius:50%;cursor:pointer;font-size:.9rem;font-weight:700;transition:var(--trans);display:flex;align-items:center;justify-content:center}
.item-controles button:hover{background:var(--rosa);color:var(--branco)}
.item-controles span{font-weight:600;font-size:.9rem}
.item-preco{font-weight:700;color:var(--rosa-escuro);font-size:.95rem}
.btn-remover-item{background:none;border:none;cursor:pointer;color:var(--cinza);font-size:.9rem;padding:.2rem;transition:var(--trans)}
.btn-remover-item:hover{color:var(--rosa-escuro)}
.carrinho-footer{padding:1.5rem;border-top:2px solid var(--rosa-claro)}
.carrinho-subtotal{display:flex;justify-content:space-between;font-size:1rem;margin-bottom:.5rem;color:var(--cinza)}
.carrinho-total{display:flex;justify-content:space-between;font-size:1.3rem;font-weight:700;margin-bottom:1.5rem;font-family:'Playfair Display',serif}
.carrinho-total span:last-child{color:var(--rosa-escuro)}
.btn-checkout{width:100%;background:var(--rosa);color:var(--branco);border:none;padding:1rem;border-radius:50px;font-family:'DM Sans',sans-serif;font-weight:700;font-size:1rem;cursor:pointer;transition:var(--trans);margin-bottom:.75rem}
.btn-checkout:hover{background:var(--rosa-escuro)}
.btn-checkout-whats{width:100%;background:#25D366;color:var(--branco);border:none;padding:1rem;border-radius:50px;font-family:'DM Sans',sans-serif;font-weight:700;font-size:1rem;cursor:pointer;transition:var(--trans)}
.btn-checkout-whats:hover{background:#128C7E}

/* CHECKOUT */
.checkout-modal{display:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--branco);border-radius:var(--radius);padding:2.5rem;max-width:580px;width:90%;max-height:90vh;overflow-y:auto;z-index:3000;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.checkout-modal.ativo{display:block}
.checkout-modal h2{font-family:'Playfair Display',serif;font-size:1.8rem;margin-bottom:1.5rem}
.checkout-etapas{display:flex;gap:.5rem;margin-bottom:2rem}
.etapa{flex:1;text-align:center;padding:.5rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;background:var(--cinza-claro);color:var(--cinza)}
.etapa.ativa{background:var(--rosa);color:var(--branco)}
.ck-campo{margin-bottom:1rem}
.ck-campo label{display:block;font-size:.82rem;font-weight:600;margin-bottom:.4rem;color:var(--cinza);text-transform:uppercase;letter-spacing:.5px}
.ck-campo input,.ck-campo select{width:100%;border:2px solid var(--rosa-claro);border-radius:var(--radius-sm);padding:.7rem 1rem;font-family:'DM Sans',sans-serif;font-size:.95rem;outline:none;transition:var(--trans)}
.ck-campo input:focus,.ck-campo select:focus{border-color:var(--rosa)}
.ck-linha{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pag-opcoes{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.5rem}
.pag-btn{border:2px solid var(--rosa-claro);background:var(--branco);border-radius:var(--radius-sm);padding:1rem .5rem;text-align:center;cursor:pointer;transition:var(--trans);font-family:'DM Sans',sans-serif}
.pag-btn:hover,.pag-btn.selecionado{border-color:var(--rosa);background:var(--rosa-claro)}
.pag-btn div{font-size:1.5rem;margin-bottom:.3rem}
.pag-btn span{font-size:.8rem;font-weight:600}
.pix-box{background:var(--creme);border:2px dashed var(--rosa);border-radius:var(--radius);padding:2rem;text-align:center;margin:1rem 0}
.pix-qr{width:160px;height:160px;background:var(--branco);margin:1rem auto;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:4rem;border:3px solid #000}
.pix-chave{background:var(--branco);border:1px solid var(--rosa-claro);border-radius:8px;padding:.75rem;font-family:monospace;font-size:.85rem;word-break:break-all;margin:.5rem 0;cursor:pointer}
.ck-nav{display:flex;gap:1rem;margin-top:1.5rem}
.btn-voltar{background:var(--cinza-claro);color:var(--texto);border:none;padding:.85rem 2rem;border-radius:50px;font-family:'DM Sans',sans-serif;font-weight:600;cursor:pointer;transition:var(--trans)}
.btn-voltar:hover{background:#e5e7eb}
.ck-resumo{background:var(--creme);border-radius:var(--radius-sm);padding:1rem;margin-bottom:1.5rem;font-size:.9rem}
.ck-resumo strong{display:block;margin-bottom:.5rem;font-family:'Playfair Display',serif}
.spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;vertical-align:middle;margin-right:.4rem}
@keyframes spin{to{transform:rotate(360deg)}}

/* TOAST */
.toast{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%) translateY(100px);background:var(--texto);color:var(--branco);padding:.85rem 2rem;border-radius:50px;font-weight:500;font-size:.95rem;z-index:9999;transition:transform .4s ease;pointer-events:none;white-space:nowrap}
.toast.visivel{transform:translateX(-50%) translateY(0)}

/* RESPONSIVO */
@media(max-width:768px){
  .nav-links,.btn-whatsapp-nav{display:none}
  .menu-mobile{display:block}
  .nav-links.aberto{display:flex;flex-direction:column;position:fixed;inset:0;background:var(--branco);z-index:999;justify-content:center;align-items:center;gap:2rem;font-size:1.3rem}
  .hero{flex-direction:column;padding:5rem 1.5rem 3rem;text-align:center;min-height:auto}
  .hero-visual{display:none}
  .hero-btns,.hero-stats{justify-content:center}
  .sobre-grid,.contato-grid{grid-template-columns:1fr}
  .modal-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .produtos-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
  .ck-linha,.pag-opcoes{grid-template-columns:1fr}
}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr}}
