
:root{--green:#2f855a;--muted:#6b7280;--bg:#f7fafc;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,'Segoe UI',Roboto,Arial;margin:0;color:#111827;background:var(--bg);}
.container{max-width:1100px;margin:0 auto;padding:0 20px;}
.site-header{background:#fff;border-bottom:1px solid #e6ffe9;position:sticky;top:0;z-index:60;backdrop-filter:saturate(120%);}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:12px 0;}
.brand .logo{height:48px;}
.nav a{margin:0 10px;color:var(--muted);text-decoration:none;font-weight:600;padding:8px;border-radius:6px;}
.nav a.active, .nav a:hover{background:#eefdf3;color:var(--green);}
.btn-whatsapp{background:var(--green);color:#fff;padding:8px 12px;border-radius:8px;text-decoration:none;margin-left:10px;font-weight:700;}
.loader{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;border:6px solid rgba(47,133,90,0.15);border-top-color:var(--green);animation:spin 1s linear infinite;z-index:2000;display:none;}
@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg);}}
.main-hidden{opacity:0}
.hero{padding:48px 0;background:linear-gradient(180deg,#fff 0%,#f7fff9 100%);}
.hero-inner{display:grid;grid-template-columns:1fr 420px;gap:30px;align-items:center;}
.hero-image img{width:100%;height:320px;object-fit:cover;border-radius:10px;}
.fade-up{opacity:0;transform:translateY(12px);animation:fadeUp .6s ease forwards;}
@keyframes fadeUp{to{opacity:1;transform:none;}}
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px;}
.team-card{background:#fff;border-radius:12px;overflow:hidden;text-align:center;box-shadow:0 6px 18px rgba(31,41,55,0.06);padding:12px;transition:transform .24s,box-shadow .24s;}
.team-card:hover{transform:translateY(-6px);box-shadow:0 18px 36px rgba(31,41,55,0.12);}
.team-card img{width:140px;height:140px;object-fit:cover;border-radius:50%;margin:8px auto;display:block;transition:transform .18s,box-shadow .18s;}
.team-card:hover img{transform:scale(1.08);box-shadow:0 18px 36px rgba(31,41,55,0.12);}
.partners-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;align-items:center;}
.partner{background:#fff;padding:18px;border-radius:8px;text-align:center;box-shadow:0 4px 12px rgba(31,41,55,0.04);transition:transform .18s,filter .18s;display:flex;align-items:center;justify-content:center;}
.partner img{max-width:100%;max-height:70px;object-fit:contain;filter:grayscale(100%);transition:filter .2s, transform .2s;}
.partner:hover img{filter:grayscale(0%);transform:scale(1.03);}
.contact-form{display:grid;gap:10px;margin-top:12px;}
.contact-form input,.contact-form textarea{padding:10px;border:1px solid #e6e6e6;border-radius:8px;width:100%;}
.btn-submit{background:var(--green);color:#fff;padding:10px;border:none;border-radius:8px;font-weight:700;cursor:pointer;}
.site-footer{padding:18px 0;text-align:center;color:var(--muted);background:transparent;}
.footer-grid{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
.social a{display:inline-block;margin-left:8px;background:#fff;padding:8px;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,0.06);color:var(--muted);text-decoration:none;}
.social a:hover{color:var(--green);transform:translateY(-4px)}
@media(max-width:900px){ .hero-inner{grid-template-columns:1fr;} .brand .logo{height:42px;} .program-card img{height:180px;} }
