:root{
  --blu-notte:#21496c;
  --blu:#1886bc;
  --azzurro:#3fc2e9;
  --arancio:#d38837;
  --verde:#80c06c;
  --ghiaccio:#f2fbff;
  --testo:#18384f;
  --muted:#5f7484;
  --white:#ffffff;
  --shadow:0 20px 45px rgba(33,73,108,.16);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--testo);background:#fff;line-height:1.6}
a{color:var(--blu);text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;height:auto}.container{width:min(1120px,92%);margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:0;background:var(--blu-notte);color:white;padding:.8rem;z-index:10}.skip-link:focus{left:0}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(33,73,108,.10)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:1rem;position:relative}.brand{display:flex;align-items:center;gap:.75rem;color:var(--blu-notte);position:relative;z-index:30;flex-shrink:0}.brand:hover{text-decoration:none}.brand img{width:72px;height:72px;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(33,73,108,.14))}.brand-title{display:block;line-height:.92;font-size:2.1rem;font-weight:900;text-transform:uppercase;letter-spacing:-.045em;color:white;-webkit-text-stroke:1.3px var(--blu-notte);text-shadow:2px 2px 0 var(--blu-notte),-1px -1px 0 var(--blu-notte),1px -1px 0 var(--blu-notte),-1px 1px 0 var(--blu-notte);max-width:none;white-space:nowrap}.main-nav{display:flex;align-items:center;gap:.25rem}.main-nav a{color:var(--blu-notte);font-weight:700;padding:.65rem .85rem;border-radius:999px}.main-nav a:hover,.main-nav a.active{background:var(--ghiaccio);text-decoration:none}.main-nav .nav-cta{background:var(--blu);color:white}.main-nav .nav-cta:hover,.main-nav .nav-cta.active{background:var(--blu-notte);color:white}.nav-toggle{display:none;border:0;background:var(--blu-notte);color:white;border-radius:999px;padding:.75rem 1rem;font-weight:700}
.home-slider{position:relative;overflow:hidden;background:var(--ghiaccio);border-bottom:1px solid rgba(33,73,108,.08)}.slider-window{position:relative;height:clamp(230px,32vw,380px);border-radius:0 0 var(--radius) var(--radius);overflow:hidden;box-shadow:var(--shadow);margin-top:22px;margin-bottom:18px}.slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}.slide.active{opacity:1}.slide img{width:100%;height:100%;object-fit:cover;display:block}.slide-caption{position:absolute;left:clamp(1.4rem,4vw,3rem);bottom:clamp(1.2rem,4vw,2.6rem);max-width:560px;background:rgba(255,255,255,.86);backdrop-filter:blur(10px);border-radius:24px;padding:1.1rem 1.35rem;border:1px solid rgba(33,73,108,.10)}.slide-caption h2{font-size:clamp(1.45rem,3vw,2.55rem);margin-bottom:.35rem}.slide-caption p{margin:0;color:var(--muted);font-weight:700}.slider-dots{position:absolute;right:clamp(1rem,3vw,2rem);bottom:1.2rem;display:flex;gap:.45rem}.slider-dots button{width:.75rem;height:.75rem;border-radius:50%;border:0;background:rgba(255,255,255,.7);box-shadow:0 0 0 1px rgba(33,73,108,.15);cursor:pointer}.slider-dots button.active{background:var(--arancio)}
.hero{position:relative;overflow:hidden;background:radial-gradient(circle at top left,rgba(63,194,233,.28),transparent 34%),linear-gradient(135deg,#f7fdff 0%,#eef9ff 55%,#fff7ed 100%);padding:78px 0 70px}.hero:after{content:"";position:absolute;right:-120px;bottom:-180px;width:480px;height:480px;background:rgba(128,192,108,.20);border-radius:50%}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center}.eyebrow,.section-kicker{color:var(--blu);font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;margin:0 0 .8rem}h1,h2,h3{line-height:1.12;color:var(--blu-notte);margin:0 0 1rem}h1{font-size:clamp(2.35rem,5vw,4.4rem);letter-spacing:-.04em}h2{font-size:clamp(1.85rem,3.4vw,3rem);letter-spacing:-.03em}h3{font-size:1.22rem}.lead{font-size:1.2rem;color:#34566f;max-width:700px}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.95rem 1.35rem;font-weight:800;text-decoration:none;border:2px solid transparent;box-shadow:0 10px 22px rgba(33,73,108,.10)}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn-primary{background:var(--arancio);color:white}.btn-secondary{background:white;color:var(--blu-notte);border-color:rgba(33,73,108,.15)}.hero-card{background:white;border-radius:var(--radius);padding:2rem;text-align:center;box-shadow:var(--shadow);border:1px solid rgba(33,73,108,.10)}.hero-card img{width:min(300px,80%)}.hero-card p{font-size:1.05rem;color:var(--muted);margin-bottom:0}
.section{padding:76px 0}.section-soft{background:var(--ghiaccio)}.split{display:grid;grid-template-columns:.8fr 1.2fr;gap:4rem;align-items:start}.text-block p,.article p{font-size:1.08rem;color:#385a70}.section-heading{margin-bottom:2.2rem}.center{text-align:center}.cards{display:grid;gap:1.25rem}.cards.four{grid-template-columns:repeat(4,1fr)}.card{background:white;border-radius:24px;padding:1.5rem;box-shadow:0 12px 30px rgba(33,73,108,.10);border:1px solid rgba(33,73,108,.08)}.card .icon{display:inline-grid;place-items:center;width:3rem;height:3rem;background:linear-gradient(135deg,rgba(63,194,233,.20),rgba(128,192,108,.18));border-radius:1rem;font-size:1.55rem;margin-bottom:1rem}.card p{color:var(--muted);margin-bottom:0}.values-band{background:var(--blu-notte);color:white;padding:42px 0}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.values-grid div{border-left:4px solid var(--azzurro);padding-left:1rem}.values-grid span{display:block;color:white;font-size:1.35rem;font-weight:800}.values-grid small{color:#cceaf7}.callout{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:linear-gradient(135deg,var(--blu-notte),var(--blu));color:white;border-radius:var(--radius);padding:2.2rem;box-shadow:var(--shadow)}.callout h2,.callout .section-kicker{color:white}.callout p{color:#e9f8ff}.callout .btn-primary{background:var(--arancio)}
.page-hero{background:linear-gradient(135deg,#effaff,#fff7ed);padding:76px 0 62px;border-bottom:1px solid rgba(33,73,108,.08)}.page-hero h1{max-width:940px}.content-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:3rem;align-items:start}.article{max-width:820px}.article h2:not(:first-child){margin-top:2rem}.side-card{position:sticky;top:110px;background:var(--ghiaccio);border-radius:var(--radius);padding:2rem;text-align:center;border:1px solid rgba(33,73,108,.08)}.side-card img{width:220px}.timeline{display:grid;gap:1.2rem}.timeline article{display:grid;grid-template-columns:90px 1fr;gap:1.4rem;background:white;border:1px solid rgba(33,73,108,.10);border-radius:24px;padding:1.6rem;box-shadow:0 12px 30px rgba(33,73,108,.08)}.timeline span{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:var(--blu);color:white;font-weight:900;font-size:1.2rem}.timeline .activity-icon{width:76px;height:76px;border-radius:50%;object-fit:cover;box-shadow:0 10px 22px rgba(33,73,108,.14)}.list-panel{background:white;border-radius:24px;padding:2rem;box-shadow:var(--shadow)}.list-panel li,.check-list li{margin:.65rem 0}.project-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:1.25rem}.project-card{background:white;border-radius:24px;padding:1.6rem;border:1px solid rgba(33,73,108,.10);box-shadow:0 12px 30px rgba(33,73,108,.08)}.project-card.featured{grid-row:span 2;background:linear-gradient(135deg,var(--blu-notte),var(--blu));color:white}.project-card.featured h2,.project-card.featured .section-kicker{color:white}.project-card.featured p{color:#e9f8ff}.donate-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}.donate-box,.contact-card,.form-note{background:white;border-radius:var(--radius);padding:2rem;border:1px solid rgba(33,73,108,.10);box-shadow:var(--shadow)}.iban{font-size:1.25rem;font-weight:900;color:var(--blu-notte);word-break:break-word}.contact-grid{grid-template-columns:repeat(3,1fr)}.big-link{font-size:1.35rem;font-weight:800}.mono{font-family:Consolas,Monaco,monospace;word-break:break-word}.static-form{display:grid;gap:1rem;margin-top:1.4rem}.static-form label{display:grid;gap:.35rem;font-weight:800}.static-form input,.static-form textarea{border:1px solid rgba(33,73,108,.22);border-radius:16px;padding:.95rem;font:inherit}.static-form input:focus,.static-form textarea:focus{outline:3px solid rgba(63,194,233,.28);border-color:var(--blu)}
.site-footer{background:#102d45;color:#d9ecf7;padding:46px 0}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:2rem}.footer-logo{width:82px;background:white;border-radius:50%;padding:.25rem}.footer-sponsor{margin-top:1rem;display:flex;align-items:center;gap:.65rem;color:#d9ecf7;font-size:.86rem}.footer-sponsor img{width:54px;max-height:24px;object-fit:contain;display:block}.site-footer h2{font-size:1rem;color:white;margin-bottom:.5rem}.site-footer a{color:#bdeeff}
.reveal{animation:fadeUp .7s ease both}@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (max-width:900px){.brand img{width:62px;height:62px}.brand-title{font-size:1.45rem;max-width:none;white-space:nowrap}.nav-toggle{display:inline-flex}.main-nav{position:absolute;left:4%;right:4%;top:82px;background:white;border-radius:24px;padding:1rem;box-shadow:var(--shadow);display:none;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{text-align:center}.hero-grid,.split,.content-grid,.donate-grid{grid-template-columns:1fr}.cards.four,.values-grid,.contact-grid,.project-grid{grid-template-columns:1fr 1fr}.side-card{position:static}.hero{padding-top:44px}.slider-window{margin-top:16px}.section{padding:56px 0}.callout{align-items:flex-start;flex-direction:column}}
@media (max-width:560px){.brand img{width:54px;height:54px}.brand-title{font-size:1.05rem;max-width:none;white-space:nowrap}.cards.four,.values-grid,.contact-grid,.project-grid{grid-template-columns:1fr}.timeline article{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.hero-actions .btn{width:100%}.nav-wrap{min-height:76px}.main-nav{top:76px}.slide-caption{left:1rem;right:1rem}.slider-dots{right:1rem}h1{font-size:2.2rem}.lead{font-size:1.05rem}}
