
:root{--blue:#17324d;--teal:#0d8b82;--teal2:#e9fffb;--ink:#1f2937;--muted:#64748b;--soft:#f6faf9;--white:#fff}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.65;background:#fff}
a{color:var(--teal);text-decoration:none} a:hover{text-decoration:underline}
.container{width:min(1160px,92%);margin:auto}
.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid #e7eef2}
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 0}
.logo img{height:82px;width:auto;display:block}
.menu{display:flex;gap:22px;flex-wrap:wrap;font-weight:800}.menu a{color:var(--blue)}
.hero{min-height:680px;display:flex;align-items:center;color:white;background:radial-gradient(circle at 70% 30%,rgba(13,139,130,.28),transparent 34%),linear-gradient(90deg,rgba(7,28,48,.94),rgba(7,28,48,.68),rgba(7,28,48,.20)),url("../assets/tavola-rotonda.jpg") center/cover no-repeat}
.hero-inner{padding:88px 0;max-width:760px}
.kicker{display:inline-block;letter-spacing:.12em;text-transform:uppercase;font-size:.82rem;font-weight:900;color:#bffff7;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.2);padding:7px 12px;border-radius:999px}
h1{font-size:clamp(2.7rem,6vw,5.4rem);line-height:1.02;margin:20px 0}
h2{font-size:clamp(2rem,3.4vw,3.1rem);line-height:1.15;margin:0 0 20px;color:var(--blue)}
h3{font-size:1.3rem;color:var(--blue);margin:0 0 8px}.lead{font-size:1.24rem;max-width:760px;color:inherit}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-block;background:var(--teal);color:white;padding:14px 22px;border-radius:999px;font-weight:900;box-shadow:0 10px 26px rgba(13,139,130,.25)}.btn.light{background:white;color:var(--blue)}
.section{padding:82px 0}.alt{background:linear-gradient(180deg,#f7fbfb,#eef8f7)}
.grid{display:grid;gap:28px}.two{grid-template-columns:1.1fr .9fr}.three{grid-template-columns:repeat(3,1fr)}
.card{background:white;border:1px solid #e5edf1;border-radius:26px;box-shadow:0 20px 55px rgba(10,38,55,.08);overflow:hidden}.card.pad{padding:30px}.card img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover}
.badge{display:inline-block;background:var(--teal2);color:var(--teal);padding:7px 12px;border-radius:999px;font-size:.82rem;font-weight:900;margin-bottom:14px}.feature{border-top:5px solid var(--teal)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}.stat{background:white;border-radius:22px;padding:24px;border:1px solid #e5edf1}.stat strong{display:block;color:var(--blue);font-size:2.15rem;line-height:1}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery img{width:100%;border-radius:22px;aspect-ratio:4/3;object-fit:cover;box-shadow:0 18px 45px rgba(10,38,55,.12)}
.news-list{display:grid;gap:20px}.news{padding:28px;border-left:6px solid var(--teal)}
.contact-panel{background:linear-gradient(135deg,var(--blue),#0b5564);color:white;border-radius:30px;padding:38px}.contact-panel h2{color:white}.contact-logo{text-align:center;margin-bottom:26px}.contact-logo img{height:150px;max-width:100%}.mail-big{font-size:1.45rem;font-weight:900;background:white;border-radius:18px;padding:18px 22px;display:inline-block}
.footer{background:#071f2f;color:#dbeafe;padding:38px 0}.footer .container{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@media(max-width:850px){.nav{align-items:flex-start;flex-direction:column}.logo img{height:72px}.two,.three,.stats,.gallery{grid-template-columns:1fr}.hero{min-height:580px}}
