:root{
  --blue:#0b2b55;--blue2:#123e72;--yellow:#e9ff38;--yellow-soft:#f4ff9a;
  --ink:#10151b;--paper:#f4f4ee;--white:#fff;--muted:#5d6570;--line:#d9ddd7;
  --max:1240px;--shadow:0 18px 55px rgba(5,25,52,.14)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}.wrap{width:min(var(--max),calc(100% - 42px));margin:auto}.topbar{height:78px;position:fixed;inset:0 0 auto;z-index:80;display:flex;align-items:center;justify-content:space-between;padding:0 max(21px,calc((100vw - var(--max))/2));background:rgba(244,244,238,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(11,43,85,.08)}.brand{display:flex;align-items:center;gap:13px}.brand-logo{width:64px;height:64px;object-fit:contain;flex:0 0 auto}.brand strong{display:block;letter-spacing:.08em;color:var(--blue);font-size:1.18rem;line-height:1.05}.brand small{display:block;font-size:.78rem;color:var(--muted);margin-top:4px}.menu-toggle{border:0;background:none;display:grid;grid-template-columns:26px auto;column-gap:11px;row-gap:5px;align-items:center;cursor:pointer;color:var(--blue);font-weight:800}.menu-toggle span{height:2px;background:var(--blue);display:block;grid-column:1}.menu-toggle b{grid-column:2;grid-row:1/4}.drawer{position:fixed;top:0;right:0;height:100dvh;width:min(480px,92vw);background:var(--blue);color:white;z-index:100;transform:translateX(105%);transition:.28s ease;overflow:auto}.drawer.open{transform:none}.drawer-inner{min-height:100%;padding:105px 42px 38px;display:flex;flex-direction:column}.drawer nav{display:grid}.drawer nav a{font-family:Georgia,serif;font-size:1.8rem;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.13)}.drawer nav a:hover,.drawer nav a.active{color:var(--yellow)}.drawer-actions{display:grid;gap:9px;margin-top:30px}.scrim{position:fixed;inset:0;background:rgba(3,12,23,.5);z-index:90;opacity:0;pointer-events:none;transition:.2s}.scrim.show{opacity:1;pointer-events:auto}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 18px;font-weight:800;border:1px solid transparent;transition:.18s}.button:hover{transform:translateY(-2px)}.button.yellow{background:var(--yellow);color:var(--blue)}.button.blue{background:var(--blue);color:white}.button.ghost,.button.glass{border-color:rgba(255,255,255,.5);color:white}.button.glass{background:rgba(11,43,85,.22);backdrop-filter:blur(8px)}.hero{height:min(790px,96vh);min-height:620px;position:relative;display:flex;align-items:end;background:var(--blue);overflow:hidden}.hero-media{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,26,52,.96) 0%,rgba(6,26,52,.76) 42%,rgba(6,26,52,.14) 80%),linear-gradient(0deg,rgba(6,26,52,.45),transparent 42%),url('../img/hero-community.webp') center 42%/cover no-repeat}.hero-content{position:relative;color:white;padding-bottom:92px}.kicker{font-size:.72rem;letter-spacing:.27em;font-weight:900;color:var(--yellow);margin:0 0 18px}.kicker.blue{color:var(--blue2)}.hero h1{font:500 clamp(3.3rem,7vw,7.2rem)/.9 Georgia,serif;max-width:950px;margin:0 0 25px;letter-spacing:-.04em}.hero h1 em{font-style:normal;color:var(--yellow)}.hero-lead{font-size:clamp(1.1rem,2vw,1.6rem);max-width:650px}.hero-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.hero-scroll{position:absolute;right:30px;bottom:28px;color:white;font-size:.82rem}.notice-strip{background:var(--yellow);color:var(--blue);padding:14px 0}.notice-grid{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;font-size:.9rem}.notice-grid p{margin:0}.pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--blue);margin-right:10px}.section{padding:100px 0}.split{display:grid;grid-template-columns:1fr .85fr;gap:90px}.section h2{font:500 clamp(2.5rem,4.5vw,5rem)/.98 Georgia,serif;letter-spacing:-.035em;margin:0}.body-large{font-size:1.16rem;color:#343c46}.body-large p:first-child{margin-top:0}.youth{background:white}.section-heading{display:grid;grid-template-columns:1.15fr .65fr;gap:80px;align-items:end;margin-bottom:45px}.section-heading>p,.section-heading>div:last-child{color:var(--muted);font-size:1.05rem}.feature-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:1fr 1fr;gap:14px}.feature{min-height:260px;background:#f1f3ee;padding:30px;display:flex;flex-direction:column;justify-content:flex-end}.feature>span,.feature div>span{font-size:.72rem;letter-spacing:.18em;font-weight:900;color:var(--blue)}.feature h3{font:500 2rem/1 Georgia,serif;margin:12px 0}.feature p{margin:0;color:var(--muted)}.feature a{display:inline-block;margin-top:18px;font-weight:800}.feature-photo{grid-row:1/3;min-height:540px;color:white;position:relative;overflow:hidden;background:linear-gradient(0deg,rgba(6,26,52,.86),rgba(6,26,52,.05)),url('../img/youth-team.webp') center/cover}.feature-photo div{position:relative}.feature-photo p{color:#eef1f6}.feature-photo div>span{color:var(--yellow)}.feature.dark{background:var(--blue);color:white}.feature.dark p{color:#dbe2eb}.center-action{text-align:center;margin-top:35px}.manifesto{background:var(--blue);color:white}.manifesto blockquote{font:500 clamp(2.5rem,5vw,5.7rem)/.98 Georgia,serif;letter-spacing:-.04em;margin:0;max-width:1100px}.manifesto-links{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid rgba(255,255,255,.18)}.manifesto-links a{padding:22px 0;border-bottom:1px solid rgba(255,255,255,.18);display:flex;flex-direction:column;gap:8px}.manifesto-links a+a{padding-left:24px;border-left:1px solid rgba(255,255,255,.18)}.manifesto-links b{color:var(--yellow)}.values-preview{background:var(--yellow-soft)}.values-grid{display:grid;grid-template-columns:.55fr 1fr;gap:80px;align-items:center}.values-art{aspect-ratio:1;background:linear-gradient(180deg,rgba(11,43,85,.05),rgba(11,43,85,.84)),url('../img/values-community.webp') center/cover;color:white;padding:25px;display:flex;justify-content:space-between;align-items:flex-end;overflow:hidden}.big-number{font:500 9rem/.8 Georgia,serif;color:var(--yellow)}.text-link{font-weight:900;color:var(--blue);display:inline-block;margin-top:18px}.opportunities{background:#f9faf6}.quick{padding-top:0;background:#f9faf6}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--blue);border-bottom:1px solid var(--blue)}.quick-grid a{padding:24px 18px;display:grid;grid-template-columns:1fr auto;gap:5px}.quick-grid a+a{border-left:1px solid var(--blue)}.quick-grid small{grid-column:1/3;color:var(--muted);letter-spacing:.18em}.quick-grid strong{font:500 1.7rem Georgia,serif;color:var(--blue)}footer{background:#081d39;color:white;padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:45px}.footer-grid p{color:#c8d1dc;font-size:.88rem}.footer-brand{font-size:1.5rem;color:var(--yellow)}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);padding-top:20px;margin-top:35px;color:#9eacbc;font-size:.8rem}
@media(max-width:900px){.split,.section-heading,.values-grid{grid-template-columns:1fr;gap:32px}.feature-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.feature-photo{grid-row:auto;grid-column:1/3;min-height:500px}.manifesto-links,.quick-grid,.footer-grid{grid-template-columns:1fr}.manifesto-links a+a,.quick-grid a+a{padding-left:0;border-left:0}.notice-grid{grid-template-columns:1fr auto}.notice-grid p{display:none}.footer-grid{gap:20px}.section{padding:75px 0}}@media(max-width:600px){.wrap{width:min(100% - 28px,var(--max))}.brand small{display:none}.hero{min-height:670px}.hero-content{padding-bottom:75px}.hero h1{font-size:3.65rem}.hero-scroll{display:none}.feature-grid{grid-template-columns:1fr}.feature-photo{grid-column:auto;min-height:440px}.values-art{max-width:340px}.big-number{font-size:7rem}.drawer-inner{padding-inline:26px}.section h2{font-size:2.8rem}}

/* Revision 2026-10-15 */
.kicker{font-size:.86rem;letter-spacing:.22em;line-height:1.25}
.youth .kicker,.intro .kicker,.opportunities .kicker{color:var(--blue);display:inline-flex;align-items:center;gap:10px}
.youth .kicker::before,.intro .kicker::before,.opportunities .kicker::before{content:"";width:28px;height:7px;border-radius:99px;background:var(--yellow)}
.manifesto .kicker,.master .kicker{color:var(--yellow)}
.feature-grid{align-items:stretch}
.feature{justify-content:flex-start}
.feature h3{margin-top:auto}
.feature-photo{justify-content:flex-end}
.facility-card h3{margin-top:12px}
.facility-card p{min-height:76px}
.mini-link{margin-top:auto!important;color:var(--blue);font-weight:900}
.trial-cta{display:flex!important;align-items:center;justify-content:space-between;gap:24px;width:min(100%,360px);padding:15px 18px;margin-top:24px!important;border-radius:16px;background:linear-gradient(135deg,var(--yellow),#cbe934);color:var(--blue)!important;box-shadow:0 12px 28px rgba(233,255,56,.25);border:1px solid rgba(255,255,255,.35)}
.trial-cta:hover{transform:translateY(-2px);box-shadow:0 17px 34px rgba(233,255,56,.32)}
.scroll-control{position:absolute;right:30px;bottom:28px;z-index:30;border:0;background:transparent;color:white;font:800 .82rem Arial;cursor:pointer;padding:10px 12px;border-radius:999px;transition:.25s}
.scroll-control:hover{background:rgba(255,255,255,.12)}
.scroll-control.is-back{position:fixed;bottom:24px;right:24px;background:var(--yellow);color:var(--blue);box-shadow:var(--shadow);z-index:75;border:1px solid rgba(11,43,85,.12)}
.master{background:linear-gradient(135deg,#0b2b55 0%,#153f71 65%,#1d4d83 100%);color:white}
.master-grid{display:grid;grid-template-columns:1.05fr .7fr;gap:70px;align-items:center}
.master .body-large{color:#e3ebf4}
.master-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.rounded{border-radius:999px}
.master-visual{min-height:480px;border-radius:32px;background:linear-gradient(180deg,rgba(233,255,56,.05),rgba(233,255,56,.18)),url('../img/master-performance.webp') center 34%/cover;display:flex;flex-direction:column;justify-content:flex-end;padding:34px;box-shadow:0 25px 70px rgba(0,0,0,.24)}
.master-visual span{letter-spacing:.25em;color:var(--yellow);font-size:.78rem;font-weight:900}
.master-visual strong{font:500 3rem/1 Georgia,serif;margin-top:8px}
.quick-grid{grid-template-columns:repeat(4,1fr)}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform}
.reveal.reveal-left{transform:translateX(-40px)}
.reveal.reveal-right{transform:translateX(40px)}
.reveal.is-visible{opacity:1;transform:none}
.reveal-image{clip-path:inset(0 0 100% 0);transition:clip-path 1s cubic-bezier(.2,.7,.2,1)}
.reveal-image.is-visible{clip-path:inset(0 0 0 0)}
@media(max-width:900px){.master-grid{grid-template-columns:1fr}.master-visual{min-height:390px}.quick-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.scroll-control{display:block}.scroll-control.is-back{right:14px;bottom:14px}.quick-grid{grid-template-columns:1fr}.master-visual{min-height:320px}.kicker{font-size:.78rem}}
@media(prefers-reduced-motion:reduce){.reveal,.reveal-image{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}}

.hero-media{filter:saturate(.96) contrast(1.02)}
.feature-photo{background-position:center 42%;text-shadow:0 2px 18px rgba(0,0,0,.28)}
.master-visual{background-position:center 28%}
.values-art{min-height:440px}
.values-art .big-number{text-shadow:0 5px 25px rgba(0,0,0,.25)}
@media(max-width:600px){
  .hero-media{background-position:58% 42%}
  .feature-photo{background-position:center 38%}
  .master-visual{background-position:center 30%}
  .values-art{min-height:340px}
}

/* Header refinement */
.topbar{height:86px}
.brand{gap:14px}
.brand-logo{width:68px;height:68px}
@media(max-width:600px){
  .topbar{height:78px}
  .brand-logo{width:56px;height:56px}
  .brand strong{font-size:1.02rem}
  .brand small{font-size:.72rem}
}

/* Mobile header + line-break cleanup */
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand-logo{display:block;width:66px;height:66px;object-fit:contain;flex:0 0 auto}
.brand-copy{display:flex;flex-direction:column;min-width:0}
.brand-copy strong{font-size:1.22rem;line-height:1;letter-spacing:.075em;white-space:nowrap}
.brand-copy small{font-size:.78rem;line-height:1.15;margin-top:5px}
@media(max-width:600px){
  .topbar{padding-left:18px;padding-right:18px}
  .brand{gap:10px}
  .brand-logo{width:58px;height:58px}
  .brand-copy strong{font-size:1rem;letter-spacing:.07em}
  .brand-copy small{display:none}
  .menu-toggle{column-gap:9px}
}

/* Logo refinement: full mark must remain readable */
@media(max-width:600px){
  .topbar{height:104px;padding-left:14px;padding-right:16px}
  .brand{height:100%;gap:0}
  .brand-logo{width:92px;height:92px;object-fit:contain}
  .brand-copy{display:none}
  .menu-toggle{margin-left:auto}
}

/* Brand lockup refinement */
.topbar{
  height:112px;
  padding-top:8px;
  padding-bottom:8px;
}
.brand{
  display:flex;
  align-items:center;
  gap:18px;
  height:100%;
}
.brand-logo{
  width:96px;
  height:96px;
  object-fit:contain;
  flex:0 0 auto;
}
.brand-copy strong{
  font-size:1.34rem;
  line-height:1;
  letter-spacing:.085em;
}
.brand-copy small{
  font-size:.82rem;
  margin-top:7px;
}
@media(max-width:900px){
  .topbar{height:104px}
  .brand-logo{width:88px;height:88px}
}
@media(max-width:600px){
  .topbar{
    height:100px;
    padding-left:14px;
    padding-right:16px;
  }
  .brand{
    gap:10px;
  }
  .brand-logo{
    width:84px;
    height:84px;
  }
  .brand-copy{
    display:flex;
  }
  .brand-copy strong{
    font-size:1.05rem;
    letter-spacing:.07em;
  }
  .brand-copy small{
    display:none;
  }
}

/* Full official logo */
.brand-logo{
  width:108px;
  height:92px;
  object-fit:contain;
  object-position:center;
  overflow:visible;
}
@media(max-width:900px){
  .brand-logo{width:100px;height:86px}
}
@media(max-width:600px){
  .brand-logo{width:96px;height:82px}
}

/* Primary drawer actions first */
.drawer-actions{
  order:-1;
  margin-top:0;
  margin-bottom:30px;
}
.drawer-actions .button{
  min-height:58px;
  font-size:1rem;
}
.drawer nav{
  order:1;
}
@media(max-width:600px){
  .drawer-actions{
    margin-bottom:24px;
  }
  .drawer-actions .button{
    min-height:56px;
    font-size:.98rem;
  }
}

/* Header palette refinement */
.topbar{
  background:var(--paper);
  backdrop-filter:none;
}
.brand-copy strong{
  color:#c7d92f;
}
.brand-logo{
  background:var(--paper);
}

/* Hero crop refinement: show full faces */
.hero-media{
  background-position:center 24% !important;
}
@media(max-width:900px){
  .hero-media{background-position:center 20% !important}
}
@media(max-width:600px){
  .hero-media{background-position:54% 18% !important}
}

/* Hero crop final: preserve faces, crop lower body instead */
.hero-media{
  background-position:center top !important;
}
@media(max-width:900px){
  .hero-media{background-position:center top !important}
}
@media(max-width:600px){
  .hero-media{background-position:58% top !important}
}

/* Final hero/header geometry fix: fixed header must not cover the image */
.hero{
  margin-top:112px;
}
@media(max-width:900px){
  .hero{margin-top:104px}
}
@media(max-width:600px){
  .hero{margin-top:100px}
}

/* Carta dei Valori: immagini dedicate e numerazione rimossa */
.values-art-home{
  background-image:
    linear-gradient(180deg,rgba(11,43,85,.04),rgba(11,43,85,.82)),
    url('../img/values-home.webp');
  background-position:center;
  background-size:cover;
}
.values-art-carta{
  background-image:
    linear-gradient(180deg,rgba(11,43,85,.04),rgba(11,43,85,.80)),
    url('../img/values-carta.webp');
  background-position:center;
  background-size:cover;
}
.values-label{
  margin-left:auto;
  color:white;
  font-size:1.05rem;
  font-weight:800;
  letter-spacing:.03em;
}

/* News ticker */
.news-strip{
  background:#0b2b55;
  color:white;
  border-top:1px solid rgba(255,255,255,.08);
}
.news-ticker{
  min-height:68px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
}
.news-ticker-label{
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--yellow);
  white-space:nowrap;
}
.news-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--yellow);
  flex:0 0 auto;
}
.news-ticker-current{
  min-width:0;
  display:flex;
  align-items:center;
  gap:18px;
  transition:opacity .28s ease,transform .28s ease;
}
.news-ticker-current.is-changing{
  opacity:0;
  transform:translateY(4px);
}
.news-ticker-current time{
  flex:0 0 auto;
  color:#aebbd0;
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.news-ticker-current span{
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  font-weight:700;
}
.news-ticker-all{
  color:var(--yellow);
  font-weight:800;
  white-space:nowrap;
}
@media(max-width:760px){
  .news-ticker{
    min-height:78px;
    grid-template-columns:auto 1fr;
    gap:8px 14px;
    padding:10px 0;
  }
  .news-ticker-label{
    grid-column:1;
  }
  .news-ticker-current{
    grid-column:1/3;
    grid-row:2;
    gap:10px;
  }
  .news-ticker-current time{
    font-size:.7rem;
  }
  .news-ticker-current span{
    white-space:normal;
    line-height:1.2;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
  }
  .news-ticker-all{
    grid-column:2;
    grid-row:1;
    justify-self:end;
    font-size:.82rem;
  }
}
@media(prefers-reduced-motion:reduce){
  .news-ticker-current{transition:none}
}

/* Avvisi e notizie: stessa altezza e griglia */
.notice-strip,.news-strip{padding:0;border:0}
.notice-grid,.news-ticker{height:50px;min-height:50px;padding:8px 0;grid-template-columns:220px minmax(0,1fr) 160px;gap:24px;font-size:.9rem}
.notice-grid p{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.notice-grid>a,.news-ticker-all{justify-self:end;font-weight:800}
.notice-grid>*{opacity:1!important;transform:none!important}
.archive-main{padding-top:112px}
.archive-intro{padding-bottom:35px}
.archive-main h1{font:500 clamp(2.7rem,5vw,5rem)/1 Georgia,serif;letter-spacing:-.035em;color:var(--blue);margin:0 0 24px}
.archive-tools{display:flex;gap:20px;flex-wrap:wrap;margin-top:35px}
.archive-tools label{display:grid;gap:8px;font-weight:700;color:var(--blue);flex:1;min-width:210px}
.archive-tools input,.archive-tools select{width:100%;font:inherit;padding:14px;border:1px solid var(--line);background:white;border-radius:6px;color:var(--ink)}
.archive-results{padding-top:0;background:var(--paper)}
.news-article{padding:38px 0;border-top:1px solid var(--line);max-width:900px;scroll-margin-top:140px}
.news-meta{display:flex;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:.9rem;margin-bottom:15px}
.news-article h2{font:500 clamp(1.8rem,3vw,2.8rem)/1.12 Georgia,serif;color:var(--blue);margin-bottom:22px}
.news-article p{font-size:1.08rem;line-height:1.7;white-space:pre-line;overflow-wrap:anywhere}
.news-article:target{border-top:4px solid var(--blue);background:var(--yellow-soft);padding:32px 22px}
.donate-photo{width:100%;height:100%;max-height:650px;object-fit:cover;border-radius:18px}
.fiscal-card{padding:24px;background:white;border-left:6px solid var(--yellow);margin-top:28px}
.fiscal-card>span{display:block;font-size:.8rem;letter-spacing:.08em}
.fiscal-card strong{display:block;font-size:clamp(1.8rem,4vw,3rem);color:var(--blue);letter-spacing:.06em;margin:10px 0 18px}
.fiscal-card button{cursor:pointer;font:inherit;font-weight:700}
.fiscal-card p{min-height:1.5em;margin-bottom:0}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #2675cc;outline-offset:4px}
@media(max-width:900px){.archive-main{padding-top:104px}.notice-grid,.news-ticker{grid-template-columns:180px minmax(0,1fr) 140px;gap:14px}}
@media(max-width:760px){
.notice-grid,.news-ticker{height:84px;min-height:84px;display:grid;grid-template-columns:1fr auto;grid-template-rows:24px 1fr;gap:7px 12px;padding:8px 0}
.notice-grid>div,.news-ticker-label{grid-column:1;grid-row:1}
.notice-grid>p,.news-ticker-current{grid-column:1/3;grid-row:2;font-size:.85rem;line-height:1.25;white-space:normal}
.notice-grid>p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.notice-grid>a,.news-ticker-all{grid-column:2;grid-row:1;font-size:.8rem}
.news-ticker-current span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;overflow:hidden}
}
@media(max-width:600px){.archive-main{padding-top:100px}.news-article{scroll-margin-top:120px}.donate-photo{height:330px}.archive-tools{gap:14px}}

/* Brand lockup editorial refinement */
.brand-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:0;
}
.brand-copy strong{
  color:#bdd72b;
  font-size:1.42rem;
  line-height:.96;
  font-weight:900;
  letter-spacing:.065em;
}
.brand-copy small{
  position:relative;
  display:block;
  margin-top:11px;
  padding-left:30px;
  color:#263f5d;
  font-size:.62rem;
  line-height:1;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  white-space:nowrap;
}
.brand-copy small::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:20px;
  height:2px;
  background:#bdd72b;
  transform:translateY(-50%);
}
@media(max-width:900px){
  .brand-copy strong{font-size:1.27rem}
  .brand-copy small{font-size:.57rem;letter-spacing:.13em;padding-left:24px;margin-top:9px}
  .brand-copy small::before{width:16px}
}
@media(max-width:600px){
  .brand-copy strong{font-size:1.05rem}
  .brand-copy small{
    display:block;
    font-size:.48rem;
    letter-spacing:.09em;
    padding-left:18px;
    margin-top:7px;
  }
  .brand-copy small::before{width:11px;height:1px}
}

/* Mobile quick links alignment */
@media(max-width:900px){
  .quick-grid a,
  .quick-grid a+a{
    padding-left:0;
    padding-right:0;
  }
}

/* Offset corretto per le ancore raggiunte dal menu con header fisso */
#chi-siamo,
#giovanile,
#master,
#contatti{
  scroll-margin-top:132px;
}
@media(max-width:900px){
  #chi-siamo,
  #giovanile,
  #master,
  #contatti{
    scroll-margin-top:118px;
  }
}
@media(max-width:600px){
  #chi-siamo,
  #giovanile,
  #master,
  #contatti{
    scroll-margin-top:108px;
  }
}

/* Numeri attività giovanile */
.youth-stats{
  background:var(--yellow-soft);
  color:var(--blue);
  justify-content:flex-start;
  gap:10px;
}
.youth-stats>span{
  color:var(--blue);
  letter-spacing:.16em;
}
.youth-stats-main{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:16px;
  align-items:end;
  margin-top:2px;
}
.youth-stats-main strong{
  font:500 clamp(3.9rem,5vw,5.8rem)/.82 Georgia,serif;
  letter-spacing:-.05em;
  color:var(--blue);
}
.youth-stats-main p{
  color:#394656;
  font-size:.95rem;
  line-height:1.35;
  padding-bottom:4px;
}
.youth-stats-total{
  color:var(--blue)!important;
  font-size:.92rem;
}
.youth-stats-breakdown{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-top:auto;
}
.youth-stats-breakdown div{
  border-top:1px solid rgba(11,43,85,.22);
  padding-top:8px;
}
.youth-stats-breakdown b{
  display:block;
  font-size:1.25rem;
}
.youth-stats-breakdown small{
  display:block;
  color:var(--muted);
  font-size:.72rem;
}
.youth-stats-note{
  color:var(--muted);
  font-size:.68rem;
  line-height:1.3;
}
@media(max-width:900px){
  .youth-stats{min-height:300px}
}
@media(max-width:600px){
  .youth-stats-main{grid-template-columns:1fr}
  .youth-stats-main p{padding-bottom:0}
}

/* Leggero aumento etichetta Menu solo desktop */
@media(min-width:901px){
  .menu-toggle b{font-size:1.08rem}
}

/* Formazione */
.training-hero{padding-top:170px}
.training-intro{background:#f9faf6}
.training-2026{background:white}
.training-paths{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.training-paths article{background:#f1f3ee;padding:28px;min-height:300px;display:flex;flex-direction:column}
.training-paths article>span{font-size:.72rem;letter-spacing:.15em;font-weight:900;color:var(--blue)}
.training-paths h3{font:500 1.9rem/1.05 Georgia,serif;color:var(--blue);margin:16px 0}
.training-paths p{margin:auto 0 0;color:var(--muted)}
.training-open{background:var(--yellow-soft)}
.training-cta{background:var(--blue);color:white}
.training-cta-grid{display:grid;grid-template-columns:1fr .75fr;gap:80px;align-items:end}
.training-cta h2{font:500 clamp(2.5rem,4.5vw,5rem)/.98 Georgia,serif;margin:0}
.training-cta p{color:#d7e0e9}
.training-cta .button{margin-top:18px}

/* Lavora con noi */
.work-hero{padding-top:170px;background:#f9faf6}
.work-form-section{background:white}
.work-layout{display:grid;grid-template-columns:.52fr 1fr;gap:70px;align-items:start}
.work-aside{position:sticky;top:120px}
.work-aside h3{font:500 2.4rem/1 Georgia,serif;color:var(--blue);margin:0 0 18px}
.work-aside p{color:var(--muted)}
.application-form{background:#f4f5f0;padding:30px}
.application-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.application-grid label{display:grid;gap:7px;font-weight:800;color:var(--blue)}
.application-grid input,.application-grid select,.application-grid textarea{width:100%;padding:12px 13px;border:1px solid #b8c1cb;background:white;font:inherit;color:#17283b}
.application-grid textarea{resize:vertical}
.application-wide{grid-column:1/3}
.application-consent{display:flex!important;grid-template-columns:auto 1fr!important;align-items:start!important;font-weight:600!important;color:#4b5662!important}
.application-consent input{width:auto;margin-top:4px}
.application-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:22px}
.form-msg{margin:0;min-height:1.5em}

.opportunity-links{display:flex;gap:18px;flex-wrap:wrap}
.opportunity-links .text-link{margin-right:12px}

@media(max-width:1000px){
  .training-paths{grid-template-columns:1fr 1fr}
  .training-cta-grid,.work-layout{grid-template-columns:1fr}
  .work-aside{position:static}
}
@media(max-width:600px){
  .training-hero,.work-hero{padding-top:135px}
  .training-paths{grid-template-columns:1fr}
  .application-grid{grid-template-columns:1fr}
  .application-wide{grid-column:auto}
  .application-form{padding:20px}
}

/* Condivisione notizie */
.news-share{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:28px;padding-top:18px;border-top:1px solid rgba(11,43,85,.12)}
.news-share-label{font-weight:900;color:var(--blue)}
.news-share-actions{display:flex;gap:8px;flex-wrap:wrap}
.news-share-btn{appearance:none;border:1px solid rgba(11,43,85,.22);background:white;color:var(--blue);padding:8px 10px;font:700 .8rem/1 Arial,Helvetica,sans-serif;cursor:pointer;text-decoration:none}
.news-share-btn:hover{background:var(--blue);color:white;border-color:var(--blue)}
.news-share-btn.native{background:var(--yellow);border-color:var(--yellow);color:var(--blue)}
@media(max-width:600px){.news-share{align-items:flex-start;flex-direction:column}.news-share-actions{width:100%}.news-share-btn{flex:1 1 auto;text-align:center}}

/* Pending batch 2026-10-17 */
.social-hero blockquote{line-height:1.055}
.contact-choice{padding-top:170px;background:#f9faf6}
.contact-choice-grid{display:grid;grid-template-columns:1fr .85fr;gap:80px;align-items:start}
.contact-choice h1,.proposals-hero h1{font:500 clamp(3rem,6vw,6.5rem)/.94 Georgia,serif;color:var(--blue);letter-spacing:-.04em;margin:0}
.contact-cards{display:grid;gap:14px}
.contact-card{background:white;border:1px solid rgba(11,43,85,.12);padding:28px}
.contact-card h2{font:500 2rem/1 Georgia,serif;color:var(--blue);margin:0 0 12px}
.contact-card p{color:var(--muted);margin:0 0 18px}
.contact-card .button{width:100%}
.proposals-hero{padding-top:170px;background:var(--yellow-soft)}
.proposals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.proposal-placeholder{min-height:260px;background:#f2f3ee;padding:28px;display:flex;flex-direction:column;justify-content:flex-end}
.proposal-placeholder h3{font:500 2rem/1 Georgia,serif;color:var(--blue);margin:10px 0}
.proposal-placeholder p{color:var(--muted);margin:0}
@media(max-width:900px){.contact-choice-grid,.proposals-grid{grid-template-columns:1fr}}
@media(max-width:600px){.social-hero blockquote{line-height:1.08}.contact-choice,.proposals-hero{padding-top:135px}}

/* Proposte, formazione, organigramma e contatti — 2026-10-17 */
.proposals-hero{padding-top:170px}
.venue-schedule{padding-top:78px;padding-bottom:90px}
.venue-caracalla{background:#fff}.venue-tor{background:#f4f5f0}
.venue-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px;border-bottom:1px solid var(--line);padding-bottom:24px}
.venue-heading h2{font:500 clamp(2.4rem,4vw,4.3rem)/1 Georgia,serif;color:var(--blue);margin:0 0 8px}
.venue-heading p{margin:0;color:var(--muted)}
.schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.schedule-card{background:#f1f3ee;padding:26px;min-height:230px;border-top:4px solid var(--blue);display:flex;flex-direction:column}
.venue-tor .schedule-card{background:white}
.schedule-card-head{display:flex;justify-content:space-between;gap:16px;align-items:start}
.schedule-card-head>div{display:grid;gap:3px}
.schedule-category{font:500 1.75rem/1 Georgia,serif;color:var(--blue)}
.schedule-card-head strong{font-size:1rem;color:#465568}
.schedule-card-head small{font-weight:900;color:var(--blue);text-align:right}
.schedule-times{margin-top:auto;padding-top:24px}
.schedule-times p{margin:6px 0;color:#3e4854;font-size:.98rem}
.schedule-specials{display:grid;grid-template-columns:.75fr 1.25fr;gap:14px;margin-top:14px}
.schedule-card.special{background:var(--blue);color:white;border-top-color:var(--yellow);min-height:200px}
.schedule-card.special .schedule-category,.schedule-card.special .schedule-card-head strong,.schedule-card.special .schedule-card-head small{color:white}
.schedule-card.special .schedule-times p{color:#dbe4ef}
.schedule-contact{background:var(--yellow-soft)}
.schedule-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}

.training-intro{padding-bottom:62px}
.training-2026{padding-top:62px}
.training-2026 .kicker{color:var(--blue)!important}
.training-2026 .kicker::before{content:"";display:inline-block;width:26px;height:6px;border-radius:99px;background:var(--yellow);margin-right:10px;vertical-align:middle}
.training-paths article{display:grid!important;grid-template-rows:auto 142px 1fr}
.training-paths h3{margin:16px 0 0!important;align-self:start}
.training-paths p{margin:18px 0 0!important;align-self:start}

.work-hero{padding-bottom:62px}
.work-form-section{padding-top:62px}

.org-hero,.contacts-hero{padding-top:170px;background:#f9faf6}
.org-hero h1,.contacts-hero h1{font:500 clamp(3.5rem,7vw,7rem)/.92 Georgia,serif;color:var(--blue);letter-spacing:-.04em;margin:0}
.org-section{background:white}
.org-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.org-card{background:#f1f3ee;min-height:230px;padding:28px;display:flex;flex-direction:column;justify-content:flex-end}
.org-card span{font-size:.75rem;letter-spacing:.15em;font-weight:900;color:var(--blue)}
.org-card h2{font:500 2rem/1.05 Georgia,serif;color:var(--blue);margin:13px 0 0}
.org-card.org-president{grid-column:span 2;background:var(--blue)}
.org-card.org-president span,.org-card.org-president h2{color:white}

.contacts-hero{background:var(--yellow-soft)}
.contact-main-mail{margin-top:18px}
.contacts-section{background:white}
.contact-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.contact-info-card{padding:30px;background:#f1f3ee;min-height:330px}
.contact-info-card.legal{background:var(--blue);color:white}
.contact-info-card h2{font:500 2rem/1.05 Georgia,serif;color:var(--blue);margin:10px 0 20px}
.contact-info-card.legal h2,.contact-info-card.legal .kicker{color:white}
.contact-info-card p{color:#46515e}
.contact-info-card.legal p,.contact-info-card.legal small{color:#d9e2eb}
.contacts-bottom{background:#f9faf6}

@media(max-width:900px){
  .schedule-grid,.schedule-specials,.org-grid,.contact-info-grid{grid-template-columns:1fr}
  .org-card.org-president{grid-column:auto}
  .training-paths article{grid-template-rows:auto auto 1fr}
  .training-paths h3{min-height:0}
}
@media(max-width:600px){
  .proposals-hero,.org-hero,.contacts-hero{padding-top:135px}
  .venue-heading{align-items:start;flex-direction:column}
  .schedule-card{min-height:0}
}


/* Carta dei Valori — dati studio 2024/25 */
.values-page-intro{padding-top:160px}
.values-data-intro{background:#fff}
.values-heading{align-items:end}
.values-kpi-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.values-kpi-card{background:#f1f3ee;min-height:235px;padding:26px;display:flex;flex-direction:column;border-top:4px solid var(--blue)}
.values-kpi-card.primary{background:var(--blue);color:#fff;border-top-color:var(--yellow)}
.values-kpi-card.conversion{background:var(--yellow-soft)}
.values-kpi-card>span,.values-summary-grid span,.dropout-top span,.medal-card span,.competition-list>span{font-size:.72rem;letter-spacing:.15em;font-weight:900;color:var(--blue)}
.values-kpi-card.primary>span{color:var(--yellow)}
.values-kpi-card>strong{font:500 clamp(3.8rem,6vw,6.2rem)/.85 Georgia,serif;color:var(--blue);margin:auto 0 14px;letter-spacing:-.05em}
.values-kpi-card.primary>strong{color:#fff}
.values-kpi-card p{margin:0;color:var(--muted)}
.values-kpi-card.primary p{color:#dbe4ef}
.mini-split{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(11,43,85,.16);margin-top:auto;padding-top:15px;color:var(--blue)}
.mini-split b:last-child{text-align:right}

.values-demography{background:#f4f5f0}
.values-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px}
.values-summary-grid article{background:#fff;padding:24px;min-height:180px;display:flex;flex-direction:column}
.values-summary-grid article.accent{background:var(--yellow-soft)}
.values-summary-grid strong{font:500 clamp(3rem,5vw,5rem)/.9 Georgia,serif;color:var(--blue);margin:auto 0 4px}
.values-summary-grid small{color:var(--muted)}

.values-chart-card{background:#fff;padding:30px;border:1px solid rgba(11,43,85,.08)}
.values-chart-title{display:flex;justify-content:space-between;gap:24px;align-items:end;padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:22px}
.values-chart-title span{font-size:.72rem;letter-spacing:.14em;font-weight:900;color:var(--blue)}
.values-chart-title h3{font:500 2rem/1.05 Georgia,serif;color:var(--blue);margin:8px 0 0}
.chart-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:.8rem}
.chart-legend span{display:flex;align-items:center;gap:7px;letter-spacing:0;font-weight:700}
.chart-legend i{width:14px;height:14px;display:inline-block}
.legend-f{background:#c7d92f}.legend-m{background:var(--blue)}

.age-gender-chart{display:grid;gap:10px}
.age-row{display:grid;grid-template-columns:70px 1fr 1fr;gap:14px;align-items:center;padding:7px 0;border-bottom:1px solid rgba(11,43,85,.08)}
.age-row>b{color:var(--blue);font-size:.88rem}
.data-bar{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:8px}
.data-bar em{font-style:normal;font-size:.78rem;font-weight:800;color:#465568}
.data-bar>span,.simple-rate-list div>span,.dropout-rate-list div>span{height:12px;background:#e6e9e5;display:block;position:relative;overflow:hidden}
.data-bar i,.simple-rate-list i,.dropout-rate-list i{display:block;height:100%;width:var(--w)}
.data-bar.female i{background:#c7d92f}.data-bar.male i{background:var(--blue)}
.youth-focus{display:flex;gap:18px;align-items:end;margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}
.youth-focus strong{font:500 3.8rem/.8 Georgia,serif;color:var(--blue)}
.youth-focus p{margin:0;color:var(--muted)}

.values-dropout{background:var(--blue);color:#fff}
.values-dropout .section-heading>p{color:#d8e2ec}
.values-dropout .kicker{color:var(--yellow)}
.dropout-top{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.dropout-top article{padding:28px;background:#123e72;min-height:170px;display:flex;flex-direction:column}
.dropout-top article.national{background:var(--yellow);color:var(--blue)}
.dropout-top span{color:#fff}
.dropout-top .national span{color:var(--blue)}
.dropout-top strong{font:500 clamp(3.5rem,6vw,6rem)/.85 Georgia,serif;margin-top:auto}
.dropout-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.dark-card{background:#0f3564;border-color:rgba(255,255,255,.09)}
.dark-card .values-chart-title{border-color:rgba(255,255,255,.14)}
.dark-card .values-chart-title span,.dark-card .values-chart-title h3,.dark-card .age-row>b{color:#fff}
.dark-card .age-row{border-color:rgba(255,255,255,.09)}
.dark-card .data-bar em{color:#dce6ef}
.dark-card .data-bar>span,.dark-card .simple-rate-list div>span{background:rgba(255,255,255,.12)}
.dark-card .data-bar.male i{background:#7ea4cc}
.dark-card .data-bar.female i{background:var(--yellow)}
.alert-row{background:rgba(233,255,56,.08);padding-left:8px;padding-right:8px}
.simple-rate-list,.dropout-rate-list{display:grid;gap:12px}
.simple-rate-list div,.dropout-rate-list div{display:grid;grid-template-columns:58px 1fr 68px;gap:10px;align-items:center}
.simple-rate-list b,.dropout-rate-list b{font-size:.82rem}
.simple-rate-list em,.dropout-rate-list em{font-style:normal;font-weight:900;text-align:right}
.simple-rate-list i{background:var(--yellow)}
.dropout-rate-card{margin-top:14px}
.dropout-rate-card .values-chart-title{align-items:center}
.national-key{font-size:.85rem;color:var(--muted)}
.dropout-rate-list div>span{overflow:visible;background:#e3e7e2}
.dropout-rate-list div>span::after{content:"";position:absolute;left:57.14%;top:-4px;bottom:-4px;width:2px;background:#be3c3c;z-index:2}
.dropout-rate-list i{background:var(--blue)}
.chart-note{font-size:.78rem;color:var(--muted);margin:18px 0 0}

.values-results{background:#fff}
.medal-grid{display:grid;grid-template-columns:.6fr .6fr .6fr 1.7fr;gap:14px;margin-bottom:14px}
.medal-card{background:#f1f3ee;min-height:190px;padding:25px;display:flex;flex-direction:column;border-top:4px solid var(--blue)}
.medal-card.total{background:var(--yellow-soft)}
.medal-card strong{font:500 clamp(3.5rem,5vw,5.2rem)/.85 Georgia,serif;color:var(--blue);margin:auto 0 0}
.medal-card.wide p{font-size:1.15rem;color:#3e4854;margin:auto 0 0}
.results-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.composition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.composition-grid>div{background:#f4f5f0;padding:20px;min-height:180px;display:flex;flex-direction:column}
.composition-grid strong{font:500 3.1rem/.9 Georgia,serif;color:var(--blue)}
.composition-grid b{color:var(--blue);margin-top:8px}
.composition-grid span{margin-top:auto;color:var(--muted);font-size:.82rem}
.composition-grid.technical>div{background:var(--yellow-soft)}
.competition-list{margin-top:14px;background:#f4f5f0;padding:28px}
.competition-list>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.competition-list>div b{background:#fff;border:1px solid rgba(11,43,85,.12);padding:9px 11px;color:var(--blue);font-size:.82rem}
.values-source{margin:24px 0 0;color:var(--muted);font-size:.78rem}

@media(max-width:1050px){
  .values-kpi-grid{grid-template-columns:repeat(2,1fr)}
  .values-kpi-card.conversion{grid-column:span 2}
  .medal-grid{grid-template-columns:repeat(3,1fr)}
  .medal-card.wide{grid-column:1/4}
}
@media(max-width:900px){
  .values-page-intro{padding-top:140px}
  .values-summary-grid,.dropout-grid,.results-two-col{grid-template-columns:1fr 1fr}
  .values-summary-grid{grid-template-columns:repeat(2,1fr)}
  .age-row{grid-template-columns:58px 1fr}
  .age-row .data-bar:last-child{grid-column:2}
}
@media(max-width:650px){
  .values-page-intro{padding-top:125px}
  .values-kpi-grid,.values-summary-grid,.dropout-top,.dropout-grid,.results-two-col,.medal-grid{grid-template-columns:1fr}
  .values-kpi-card.conversion,.medal-card.wide{grid-column:auto}
  .values-kpi-card{min-height:190px}
  .values-chart-card{padding:20px}
  .values-chart-title{align-items:start;flex-direction:column}
  .age-row{grid-template-columns:50px 1fr;gap:8px}
  .data-bar{grid-template-columns:38px 1fr}
  .youth-focus{align-items:start;flex-direction:column}
  .composition-grid{grid-template-columns:1fr}
  .composition-grid>div{min-height:130px}
  .medal-card{min-height:150px}
  .simple-rate-list div,.dropout-rate-list div{grid-template-columns:48px 1fr 62px}
}


/* Regolamento e Safeguarding — 2026-10-17 */
.home-safeguarding{background:#eef1eb;border-top:1px solid rgba(11,43,85,.08);border-bottom:1px solid rgba(11,43,85,.08)}
.home-safeguarding-grid{display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center;padding-top:24px;padding-bottom:24px}
.home-safeguarding strong{display:block;color:var(--blue);font-size:1rem}
.home-safeguarding p{margin:5px 0 0;color:var(--muted);font-size:.9rem}
.home-safeguarding a{color:var(--blue);font-weight:900;text-decoration:none;white-space:nowrap}

.rules-page{padding-top:0}
.rules-hero{padding:170px 0 76px;background:#f9faf6}
.rules-hero h1{font:500 clamp(3.8rem,7vw,7.2rem)/.92 Georgia,serif;color:var(--blue);letter-spacing:-.045em;margin:0}
.rules-hero .body-large{padding-top:16px}
.rules-block{padding-top:72px;padding-bottom:78px}
.rules-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:78px;align-items:start}
.rules-grid h2{font:500 clamp(2.8rem,4.6vw,5rem)/.96 Georgia,serif;color:var(--blue);margin:0}
.rules-panel{background:#f2f3ee;padding:34px}
.rules-panel>p:first-child{margin-top:0}
.rules-note{border-top:1px solid rgba(11,43,85,.14);margin-top:28px;padding-top:24px}
.rules-note h3,.safeguarding-docs h3{font:500 1.65rem/1.05 Georgia,serif;color:var(--blue);margin:0 0 12px}
.rules-note p{color:#46515e}
.document-placeholder{margin-top:28px;padding:24px;background:white;border:1px dashed rgba(11,43,85,.28)}
.document-placeholder span,.safeguarding-docs article>span{font-size:.7rem;letter-spacing:.15em;font-weight:900;color:var(--blue)}
.document-placeholder strong{display:block;color:var(--blue);font-size:1.1rem;margin:8px 0}
.document-placeholder p{margin:0;color:var(--muted)}

.safeguarding-block{background:var(--blue);color:white;scroll-margin-top:118px}
.safeguarding-block .kicker{color:var(--yellow)}
.safeguarding-block .rules-grid h2{color:white}
.dark-rules-panel{background:#123e72}
.dark-rules-panel>p{color:#dce5ee}
.dark-rules-panel a{color:var(--yellow)}
.safeguarding-docs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}
.safeguarding-docs article{background:white;padding:26px;min-height:245px;display:flex;flex-direction:column}
.safeguarding-docs h3{margin-top:18px}
.safeguarding-docs p{color:#46515e}
.safeguarding-docs small{margin-top:auto;color:var(--muted);font-size:.78rem}

@media(max-width:900px){
  .home-safeguarding-grid,.rules-grid{grid-template-columns:1fr}
  .home-safeguarding-grid{gap:14px}
  .rules-grid{gap:32px}
  .rules-hero{padding-top:140px}
}
@media(max-width:650px){
  .home-safeguarding a{white-space:normal}
  .rules-hero{padding-top:125px;padding-bottom:55px}
  .rules-block{padding-top:54px;padding-bottom:58px}
  .rules-panel{padding:22px}
  .safeguarding-docs{grid-template-columns:1fr}
}


/* Revisione ritmo verticale + Safeguarding — 2026-10-17 v2 */
/* Regola: le sezioni adiacenti non devono sommare due padding pieni. Manteniamo respiro,
   ma limiamo i vuoti che interrompono la lettura. */
.compact-page-hero{padding-bottom:64px}

/* Identità / Carta dei Valori */
.values-page-intro{padding-bottom:64px}
.values-data-intro{padding-top:64px;padding-bottom:78px}
.values-demography,.values-dropout,.values-results{padding-top:78px;padding-bottom:78px}
.values-results{padding-bottom:72px}

/* Sport e sociale */
.social-hero{padding-bottom:66px!important}
.social-hero + .section{padding-top:66px;padding-bottom:78px}
.social-hero + .section .split{gap:68px}

/* Proposte e orari */
.proposals-hero{padding-bottom:62px}
.proposals-hero + .venue-schedule{padding-top:54px}
.venue-schedule{padding-bottom:78px}

/* Organigramma */
.org-hero{padding-bottom:58px}
.org-section{padding-top:54px;padding-bottom:74px}
.org-grid{align-items:stretch}
.org-card{min-height:210px}

/* Formazione e lavora con noi */
.training-intro{padding-bottom:56px}
.training-2026{padding-top:56px;padding-bottom:76px}
.work-hero{padding-bottom:54px}
.work-form-section{padding-top:50px;padding-bottom:76px}

/* Contatti */
.contacts-hero{padding-bottom:62px}
.contacts-section{padding-top:54px;padding-bottom:70px}
.contacts-bottom{padding-top:68px;padding-bottom:72px}

/* 5x1000 */
.donate-hero{padding-bottom:66px}
.donate-hero + .section{padding-top:66px;padding-bottom:76px}

/* Archivio notizie */
.archive-intro{padding-bottom:42px}
.archive-tools{align-items:end;gap:18px;margin-top:30px}
.archive-tools label{display:grid;gap:8px}
.archive-tools input,.archive-tools select{min-height:54px}
.archive-results{padding-top:54px;padding-bottom:76px}

/* Regolamento */
.rules-hero{padding-top:170px}
.rules-block{padding-top:58px;padding-bottom:74px}
.rules-note{margin-top:0}
.regulation-pdf-slot{margin-top:26px}

/* Safeguarding, pagina autonoma */
.safeguarding-page{background:#fff}
.safeguarding-hero{padding:170px 0 66px;background:var(--blue);color:white}
.safeguarding-hero .kicker{color:var(--yellow)}
.safeguarding-hero h1{font:500 clamp(3.8rem,7vw,7.2rem)/.92 Georgia,serif;letter-spacing:-.045em;margin:0;color:white}
.safeguarding-hero .body-large p{color:#dbe4ef}
.safeguarding-hero a{color:var(--yellow)}
.safeguard-document{padding-top:64px;padding-bottom:74px}
.safeguard-document.alt{background:#f4f5f0}
.document-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end;margin-bottom:26px}
.document-heading h2{font:500 clamp(2.3rem,4vw,4rem)/.98 Georgia,serif;color:var(--blue);margin:0}
.document-subtitle{max-width:900px;color:var(--muted);margin:12px 0 0}
.pdf-viewer-shell{height:min(78vh,900px);min-height:620px;border:1px solid rgba(11,43,85,.16);background:#e9ece7;overflow:hidden}
.pdf-viewer-shell iframe{display:block;width:100%;height:100%;border:0;background:white}

/* Home: richiamo Safeguarding volutamente discreto */
.home-safeguarding-grid{padding-top:20px;padding-bottom:20px}
.home-safeguarding p{max-width:760px}

/* Gare: questa pagina ha un CSS dedicato, ma neutralizziamo il doppio vuoto ereditato da .section */
.race-hero{padding-bottom:58px!important}
.race-flow{padding-top:34px!important;padding-bottom:76px!important}

@media(max-width:900px){
  .values-page-intro,.values-data-intro,.values-demography,.values-dropout,.values-results,
  .social-hero + .section,.contacts-bottom,.safeguard-document{padding-top:58px;padding-bottom:62px}
  .org-hero,.contacts-hero,.work-hero,.donate-hero,.proposals-hero{padding-bottom:52px}
  .org-section,.contacts-section,.work-form-section,.training-2026{padding-top:48px;padding-bottom:60px}
  .document-heading{grid-template-columns:1fr;align-items:start;gap:14px}
  .pdf-viewer-shell{height:72vh;min-height:520px}
}
@media(max-width:600px){
  .safeguarding-hero,.rules-hero{padding-top:125px}
  .pdf-viewer-shell{height:68vh;min-height:440px}
}

.venue-update{display:inline-block;margin-top:10px;color:var(--blue);font-size:.82rem;font-weight:900;text-decoration:none;border-bottom:1px solid rgba(11,43,85,.25);padding-bottom:2px}.venue-update:hover{border-color:var(--blue)}


/* Ultime limature dopo verifica visiva — 2026-10-17 */
.rules-hero{padding-top:138px!important;padding-bottom:50px!important}
.rules-block{padding-top:44px!important}
.contacts-hero{padding-top:140px!important;padding-bottom:50px!important}
.contacts-section{padding-top:44px!important}
.venue-update{margin-top:14px;padding:10px 13px;background:var(--yellow-soft);border:0!important;line-height:1.25}
@media(max-width:600px){.rules-hero,.contacts-hero{padding-top:118px!important;padding-bottom:44px!important}.rules-block,.contacts-section{padding-top:40px!important}}

.venue-news-card{display:grid;grid-template-columns:180px minmax(0,1fr);gap:6px 24px;align-items:center;margin:-6px 0 24px;padding:18px 22px;background:var(--yellow-soft);border-left:5px solid var(--blue);text-decoration:none;color:var(--blue)}
.venue-news-card>span{grid-row:1/3;font-size:.7rem;letter-spacing:.14em;font-weight:900}.venue-news-card>strong{font:500 1.45rem/1.05 Georgia,serif}.venue-news-card>p{margin:0;color:#465568;font-size:.86rem}.venue-news-card:hover strong{text-decoration:underline}
@media(max-width:700px){.venue-news-card{grid-template-columns:1fr;margin-top:0}.venue-news-card>span{grid-row:auto}.venue-news-card>strong{font-size:1.25rem}}


/* Drawer CTA spacing final — 2026-10-17 */
.drawer-inner{padding-top:92px}
@media(max-width:600px){.drawer-inner{padding-top:88px}}


/* News pinned + PDF — 2026-10-17 */
.news-pin{display:inline-flex;align-items:center;padding:3px 8px;background:var(--yellow-soft);color:var(--blue);font-weight:900;border-radius:999px}
.news-pdf-link{display:inline-flex;align-items:center;margin:12px 0 8px;padding:12px 15px;background:var(--blue);color:white;font-weight:900;border-radius:6px}
.news-pdf-link:hover{background:var(--blue2)}

/* Formazione: convegni e materiali */
.training-resources{background:#f4f5f0}
.training-resources-list{display:grid;gap:14px}
.training-resource-card{background:#fff;padding:24px;border-left:4px solid var(--blue)}
.training-resource-date{display:block;font-size:.72rem;letter-spacing:.12em;font-weight:900;color:var(--blue);text-transform:uppercase}
.training-resource-card h3{font:500 1.7rem/1.08 Georgia,serif;color:var(--blue);margin:10px 0}
.training-resource-card p{color:var(--muted);margin:0 0 14px}
.training-resource-card .text-link{font-weight:900;color:var(--blue)}
.training-resources-status{color:var(--muted)}


/* Notizie: miniature foto + lightbox */
.news-gallery{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 18px}
.news-gallery button{appearance:none;border:0;background:none;padding:0;cursor:zoom-in;border-radius:6px;overflow:hidden}
.news-gallery img{display:block;width:180px;height:120px;object-fit:cover;border-radius:6px}
.news-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(8,18,30,.88);display:flex;align-items:center;justify-content:center;padding:28px}
.news-lightbox[hidden]{display:none}
.news-lightbox img{max-width:min(1100px,92vw);max-height:88vh;object-fit:contain;border-radius:8px;background:#fff}
.news-lightbox-close{position:absolute;top:18px;right:22px;border:0;background:#fff;color:var(--blue);font:900 1rem/1 Arial,sans-serif;padding:11px 13px;border-radius:999px;cursor:pointer}
@media(max-width:600px){
  .news-gallery img{width:132px;height:92px}
  .news-lightbox{padding:18px}
}
