:root{
  --bg:#f3efec;--ink:#111827;--muted:#6b7280;--primary:#2563eb;
  --glass-bg:rgba(255,255,255,.12);--glass-brd:rgba(255,255,255,.28);
  --radius:18px;--shadow:0 10px 30px rgba(0,0,0,.15);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:'Poppins',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink)}
html{background:transparent}
body{background:var(--bg) url('/bg/background.jpg') center/cover no-repeat fixed !important}
img{max-width:100%;display:block}

/* topo */

/* Seções genéricas */
.section{padding:60px 20px;max-width:1200px;margin:0 auto}
.section h2{font-size:28px;margin:0 0 16px}
.bullets{color:var(--muted)}

/* Glass box */
.glass-box{
  padding:22px 22px;
  border-radius:18px;
  background:var(--glass-bg);
  border:1px solid var(--glass-brd);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 8px 26px rgba(0,0,0,.08);
}

/* Distância entre texto e botões no Sobre */
.about-actions{
  display:flex;gap:10px;flex-wrap:wrap;
  margin-top:24px;
}

/* Cards / Galeria / FAQ */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.card{padding:20px;border-radius:16px;background:linear-gradient(120deg, rgba(0,0,0,.12), rgba(0,0,0,.08));border:1px solid rgba(255,255,255,.20);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 8px 26px rgba(0,0,0,.12);cursor:pointer;transition:transform .15s ease,background .2s ease,box-shadow .2s ease;min-height:72px;display:flex;align-items:center}
.card:hover{transform:translateY(-2px);background:linear-gradient(120deg, rgba(0,0,0,.16), rgba(0,0,0,.10));box-shadow:0 12px 36px rgba(0,0,0,.18)}
.card h3{margin:0;font-size:18px;color:#111}

/* galeria */
.gallery-carousel{overflow:hidden;border-radius:var(--radius);padding:10px;border:1px solid rgba(0,0,0,.06)}
.gallery-track{display:flex;gap:10px;transition:transform .6s ease}
.gallery-item{min-width:220px;height:140px;border-radius:12px;overflow:hidden;flex:0 0 auto;cursor:pointer}
.gallery-item img{width:100%;height:100%;object-fit:cover}

/* FAQ */
.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.faq-item{padding:18px;border-radius:var(--radius);background:linear-gradient(120deg, rgba(0,0,0,.12), rgba(0,0,0,.08));border:1px solid rgba(255,255,255,.20);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 8px 26px rgba(0,0,0,.12);cursor:pointer;transition:transform .15s ease,background .2s ease;color:#111}
.faq-item:hover{transform:translateY(-2px);background:linear-gradient(120deg, rgba(0,0,0,.16), rgba(0,0,0,.10))}
.faq-item h4{margin:0 0 6px}
.faq-item p{margin:0;color:rgba(17,24,39,.85);font-size:14px}

/* Botões */
.btn{padding:10px 16px;border-radius:12px;border:1px solid rgba(0,0,0,.08);background:#fff;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.btn.primary{background:var(--primary);color:#fff;border:none}
.btn.ghost{background:var(--glass-bg);border:1px solid var(--glass-brd);backdrop-filter:blur(8px);color:#111}
.center{text-align:center}

/* Formulário */

/* Rodapé */
.footer{padding:36px 20px;background:#0f172a;color:#e5e7eb;margin-top:40px;text-align:center}
.footer h4{margin:0 0 8px;color:#fff}
.footer-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:10px}
.copy{opacity:.7}

/* Flutuantes */
.floating-buttons{position:fixed;right:18px;bottom:18px;display:flex;flex-direction:column;gap:10px;z-index:60}
.float-btn{width:52px;height:52px;display:inline-grid;place-items:center;border-radius:999px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:var(--shadow)}
.float-btn img{width:28px;height:28px;object-fit:contain}

/* Modal */
.modal{position:fixed;inset:0;background:rgba(0,0,0,.25);display:none;align-items:center;justify-content:center;z-index:70}
.modal.show{display:flex}
.modal-content{position:relative;max-width:760px;width:min(92%,760px);padding:22px}
.modal-close{position:absolute;top:6px;right:10px;background:transparent;border:none;font-size:24px;cursor:pointer}
.glass{background:var(--glass-bg);border:1px solid var(--glass-brd);backdrop-filter:blur(8px)}

/* misc */
.gallery-track img{display:block}
#moreFaqs{margin-top:18px}
.faq-item{text-align:left}
footer{text-align:center}

@media (max-width:768px){
  .gallery-item{min-width:160px;height:110px}
}

/* === Security: util classes to replace inline styles === */
.img-fluid{max-width:100%;height:auto;display:block}
.scroll-area{max-height:70vh;overflow:auto;padding-right:4px}
.mt0{margin-top:0}
.m0{margin:0}

/* Form status visibility control (prevenir 'box' vazia abaixo do botão) */

/* === BLOCO 4 v2: Form status oculto e honeypot invisível === */
