/* Paleta */
:root{
  --green:#0F8A79;
  --green-2:#8ED0C1;
  --text:#333333;
  --bg:#ffffff;
  --bg-alt:#f6faf9;
  --radius:18px;
  --shadow:0 8px 24px rgba(0,0,0,.08);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, Helvetica, sans-serif;
  color:var(--text); background:var(--bg); line-height:1.6;
}
.container{width:min(1100px, 92%); margin:0 auto}

.site-header{position:sticky; top:0; z-index:10; background:var(--bg); border-bottom:1px solid #e9f2f0}
.header-inner{display:flex; align-items:center; justify-content:space-between; padding:12px 0}
.brand{display:flex; align-items:center; gap:12px}
.logo{width:48px;height:48px;object-fit:cover;border-radius:50%}
.brand-text{display:flex; flex-direction:column; font-size:14px}
.brand-text strong{font-weight:800; letter-spacing:.5px}
.brand-text span{color:var(--green); font-weight:700; text-transform:uppercase; font-size:12px}
.nav a{margin-left:18px; text-decoration:none; color:#2b2b2b; font-weight:600; padding:8px 10px; border-radius:10px}
.nav a:hover{background:#eef7f5;color:var(--green)}

.hero{position:relative; overflow:hidden; background:linear-gradient(135deg, #e8f4f1, #ffffff)}
.hero-bg img{width:100%; height:380px; object-fit:cover; display:block; filter:saturate(105%)}
.hero-content{position:relative; margin-top:-120px; padding:20px; background:#fff; border-radius:var(--radius); box-shadow:var(--shadow); width:min(900px, 92%)}
.hero h1{margin:6px 0 8px; font-size:clamp(22px, 4vw, 34px)}
.hero p{margin:0 0 14px}

.btn{display:inline-flex; align-items:center; gap:10px; padding:12px 20px; border-radius:999px; border:0; text-decoration:none; cursor:pointer; font-weight:700}
.btn-primary{background:var(--green); color:#fff}
.btn-primary:hover{opacity:.95; transform:translateY(-1px)}

.section{padding:56px 0}
.section.alt{background:var(--bg-alt)}

.grid-2{display:grid; grid-template-columns:1.1fr .9fr; gap:28px}
@media(max-width:900px){ .grid-2{grid-template-columns:1fr} }

.gallery{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.gallery img{width:100%; height:180px; object-fit:cover; border-radius:14px; box-shadow:var(--shadow)}

.checks{padding-left:18px}
.checks li{margin:8px 0}

.form-card{background:#fff; border-radius:var(--radius); padding:24px; box-shadow:var(--shadow)}
.form-grid{display:grid; grid-template-columns:repeat(2, 1fr); gap:16px}
.field-100{grid-column:1 / -1}
label{font-weight:700; font-size:14px}
input, select, textarea{width:100%; padding:12px 14px; margin-top:6px; border:1px solid #dbe8e5; border-radius:12px; outline:none; transition:border-color .2s, box-shadow .2s; background:#fbfefe}
input:focus, select:focus, textarea:focus{border-color:var(--green); box-shadow:0 0 0 3px rgba(15,138,121,.12)}
.status{margin-top:10px; font-size:14px}

.testimonials{display:grid; grid-template-columns:repeat(3, 1fr); gap:18px}
@media(max-width:900px){ .testimonials{grid-template-columns:1fr} }
.testi{background:#fff; border-radius:16px; padding:16px; box-shadow:var(--shadow)}
.testi img{width:100%; height:160px; object-fit:cover; border-radius:12px; margin-bottom:10px}
.testi p{margin:0}

.contact-list{list-style:none; padding:0; margin:0}
.contact-list li{margin:10px 0}

.contact-image img{width:100%; border-radius:16px; box-shadow:var(--shadow)}

.site-footer{background:#0a4039; color:#cfe9e4; padding:22px 0; text-align:center}

/* Botão flutuante WhatsApp */
.whats-float{position:fixed; right:18px; bottom:18px; background:var(--green); color:#fff; display:flex; align-items:center; gap:10px; text-decoration:none; padding:12px 16px; border-radius:999px; box-shadow:var(--shadow); font-weight:800}
.whats-float span{display:block}
@media(max-width:480px){ .whats-float span{display:none} }
