
:root{
  --gold:#C9943A;--gl:#F0C96A;--terra:#C94A2B;
  --navy:#1A3352;--nd:#0D1F33;
  --cream:#FDF6EC;--warm:#FFFAF4;
  --td:#2A1F14;--tm:#5C4A35;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Montserrat',sans-serif;background:var(--warm);color:var(--td);overflow-x:hidden}

/* ══ NAV ══ */
nav{
  position:fixed;top:0;width:100%;z-index:300;
  background:rgba(13,31,51,.97);backdrop-filter:blur(12px);
  padding:0 2rem;display:flex;align-items:center;justify-content:space-between;
  height:64px;border-bottom:1px solid rgba(201,148,58,.3)
}
.nl{font-family:'Playfair Display',serif;color:var(--gl);font-size:1.05rem}
.nl span{color:#fff;font-style:italic}
.nm{display:flex;gap:1.6rem;list-style:none}
.nm a{color:rgba(255,255,255,.72);text-decoration:none;font-size:.73rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase;transition:color .2s}
.nm a:hover{color:var(--gl)}
.nc{background:var(--terra);color:#fff!important;padding:.42rem 1rem;border-radius:2px;font-weight:600!important}

/* ══ HERO — cielo stellato originale, contenuto centrato ══ */
.hero{
  min-height:100vh;position:relative;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;background:var(--nd);
}
/* Sfumature di fondo */
.hbg{
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 110%,rgba(201,148,58,.18) 0%,transparent 60%),
    radial-gradient(ellipse 60% 40% at 80% 20%,rgba(201,74,43,.12) 0%,transparent 50%),
    radial-gradient(ellipse 50% 50% at 20% 80%,rgba(26,51,82,.8) 0%,transparent 60%),
    linear-gradient(160deg,#0D1F33 0%,#1A3352 40%,#0F2A45 70%,#0D1F33 100%);
}
/* Stelle */
.stars{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}
.star{
  position:absolute;border-radius:50%;
  animation:twinkle var(--d,3s) ease-in-out infinite;
  animation-delay:var(--delay,0s);
}
@keyframes twinkle{0%,100%{opacity:.15;transform:scale(1)}50%{opacity:1;transform:scale(1.6)}}
/* Alone rotante */
.halo{
  position:absolute;width:540px;height:540px;
  border:1px solid rgba(201,148,58,.14);border-radius:50%;
  top:50%;left:50%;transform:translate(-50%,-50%);
  animation:halor 42s linear infinite;z-index:1;
}
.halo::before{content:'';position:absolute;inset:22px;border:1px dashed rgba(201,148,58,.08);border-radius:50%}
.halo::after{content:'';position:absolute;inset:55px;border:1px solid rgba(201,148,58,.05);border-radius:50%}
@keyframes halor{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
/* Onda inferiore */
.hwave{position:absolute;bottom:0;left:0;width:100%;height:110px;background:var(--warm);clip-path:ellipse(55% 100% at 50% 100%);z-index:3}
/* Contenuto — centrato */
.hcont{
  position:relative;z-index:2;
  text-align:center;padding:8rem 2rem 6rem;
  max-width:820px;
  animation:fadeUp 1.2s ease both;
}
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
.hpre{
  font-size:.72rem;font-weight:600;letter-spacing:.25em;text-transform:uppercase;
  color:var(--gold);margin-bottom:1.2rem;
  display:flex;align-items:center;justify-content:center;gap:1rem;
}
.hpre::before,.hpre::after{content:'';width:40px;height:1px;background:var(--gold);opacity:.5}
.htit{
  font-family:'Playfair Display',serif;
  font-size:clamp(3rem,8vw,5.5rem);font-weight:900;
  color:#fff;line-height:1.05;margin-bottom:.3rem;
}
.htit em{font-style:italic;color:var(--gl);display:block}
.hyr{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1.2rem,3vw,1.8rem);
  color:rgba(255,255,255,.45);letter-spacing:.3em;margin-bottom:2.5rem;
}
.hdiv{width:60px;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:0 auto 2rem}
.hsub{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1rem,2.5vw,1.25rem);font-weight:300;
  color:rgba(255,255,255,.68);line-height:1.75;margin-bottom:2.5rem;
}
/* Countdown */
.cdbox{display:flex;gap:.65rem;justify-content:center;margin-bottom:2.8rem;flex-wrap:wrap}
.cdu{text-align:center;min-width:68px}
.cdn{
  font-family:'Playfair Display',serif;font-size:2.5rem;font-weight:700;
  color:var(--gl);line-height:1;display:block;
  background:rgba(255,255,255,.05);
  padding:.3rem .55rem;border:1px solid rgba(201,148,58,.22);
}
.cdl{font-size:.58rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.38);margin-top:.3rem;display:block}
.cdsep{font-family:'Playfair Display',serif;font-size:2.2rem;color:rgba(201,148,58,.4);align-self:center;padding-bottom:.5rem}
.hbtns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.btnp{
  background:var(--terra);color:#fff;padding:1rem 2.2rem;border:none;
  font-family:'Montserrat',sans-serif;font-size:.82rem;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;cursor:pointer;text-decoration:none;
  display:inline-flex;align-items:center;gap:.5rem;transition:all .25s;
  clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));
}
.btnp:hover{background:#a83820;transform:translateY(-2px)}
.btns{
  background:transparent;color:#fff;padding:1rem 2.2rem;
  border:1px solid rgba(255,255,255,.3);
  font-family:'Montserrat',sans-serif;font-size:.82rem;font-weight:500;
  letter-spacing:.12em;text-transform:uppercase;cursor:pointer;text-decoration:none;
  display:inline-flex;align-items:center;gap:.5rem;transition:all .25s;
}
.btns:hover{border-color:var(--gold);color:var(--gl)}

/* ══ COUNTER STRIP ══ */
.cstrip{background:var(--navy);display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr))}
.ci{padding:1.5rem;text-align:center;border-right:1px solid rgba(255,255,255,.06)}.ci:last-child{border-right:none}
.cnum{font-family:'Playfair Display',serif;font-size:2.6rem;font-weight:700;color:var(--gl);line-height:1;display:block}
.clbl{font-size:.67rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.42);margin-top:.32rem;display:block}

/* ══ TICKER ══ */
.tks{background:#070f1c;border-top:1px solid rgba(201,148,58,.2);border-bottom:1px solid rgba(201,148,58,.2);overflow:hidden;display:none}
.tkw{display:flex;align-items:center;height:44px}
.tklbl{display:inline-flex;align-items:center;gap:.4rem;background:var(--terra);padding:0 1.2rem;font-size:.6rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#fff;height:44px;flex-shrink:0;white-space:nowrap}
.tkin{flex:1;overflow:hidden}
.tktr{display:flex;align-items:center;flex-wrap:nowrap;width:max-content;will-change:transform;animation:ticker 16s linear infinite;white-space:nowrap}
.tktr:hover{animation-play-state:paused}
@keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.ti{display:inline-flex;align-items:center;flex:0 0 auto;gap:.48rem;padding:0 1.5rem;font-size:.76rem;font-weight:500;color:rgba(255,255,255,.68);border-right:1px solid rgba(255,255,255,.07);height:44px;white-space:nowrap}
.ti.g50{color:#e8d5a3;font-weight:600}.ti.g100{color:var(--gl);font-weight:700}
.ta{font-weight:700;font-size:.67rem;color:var(--gold)}
.tdot{color:var(--terra);font-size:.42rem;opacity:.55}

/* FIX MOBILE DONATORI: su telefono niente scorrimento. Si vede un donatore alla volta, centrato */
@media (max-width:768px){
  .tks{
    overflow:visible;
    background:#070f1c;
  }
  .tkw{
    height:auto;
    min-height:112px;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
  }
  .tklbl{
    width:100%;
    height:28px;
    justify-content:center;
    padding:0 .7rem;
    font-size:.54rem;
    letter-spacing:.11em;
    line-height:1;
    text-align:center;
  }
  .tkin{
    width:100%;
    min-width:0;
    min-height:84px;
    overflow:visible;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:.35rem .7rem .55rem;
  }
  .tktr.sc-mobile-donor-rotator{
    animation:none!important;
    transform:none!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:74px;
    display:flex!important;
    align-items:center;
    justify-content:center;
    text-align:center;
    transition:opacity .12s ease;
    white-space:normal!important;
  }
  .tktr.sc-mobile-donor-rotator .ti{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:74px;
    height:auto!important;
    display:flex!important;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    border-right:0;
    padding:.35rem .75rem;
    font-size:.78rem;
    line-height:1.22;
    overflow:visible!important;
    gap:.12rem;
    white-space:normal!important;
    text-align:center;
  }
  .tktr.sc-mobile-donor-rotator .ti span:first-of-type{
    width:100%;
    max-width:100%;
    min-width:0;
    display:block;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:normal!important;
    overflow-wrap:break-word;
    word-break:normal;
    line-height:1.22;
    text-align:center;
  }
  .tktr.sc-mobile-donor-rotator .ta{
    display:block;
    margin-top:.12rem;
    font-size:.66rem;
    flex:0 0 auto;
    white-space:nowrap;
    text-align:center;
  }
  .tktr.sc-mobile-donor-rotator .tdot{display:none!important}
}




/* ══ SEZIONI ══ */
section{padding:5.5rem 2rem}
.container{max-width:1080px;margin:0 auto}
.slbl{font-size:.68rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--terra);margin-bottom:.75rem}
.stit{font-family:'Playfair Display',serif;font-size:clamp(1.85rem,3.8vw,2.8rem);font-weight:700;color:var(--nd);line-height:1.2;margin-bottom:1.3rem}
.stit em{font-style:italic;color:var(--terra)}
.sbod{font-family:'Cormorant Garamond',serif;font-size:1.12rem;line-height:1.82;color:var(--tm);max-width:640px}

/* ══ CHI SIAMO ══ */
.ab-s{background:var(--cream);position:relative;overflow:hidden}
.ab-s::before{
  content:'SANTA\ACRISTINA';font-family:'Playfair Display',serif;
  font-size:13rem;font-weight:900;color:rgba(139,26,26,.04);
  position:absolute;top:-2rem;right:-2rem;line-height:.82;white-space:pre;pointer-events:none;
}
.abgr{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
/* Pannello immagine */
.ab-img{position:relative}
.ab-img-wrap{
  position:relative;overflow:hidden;
  border-radius:2px;
  box-shadow:0 8px 40px rgba(139,26,26,.12);
}
.ab-img-wrap img{
  width:100%;display:block;
  transition:transform .4s ease;
}
.ab-img-wrap:hover img{transform:scale(1.02)}
/* Cornice decorativa dorata (dal primo design) */
.ab-frame{
  position:absolute;top:-12px;left:-12px;right:12px;bottom:12px;
  border:1px solid rgba(201,148,58,.35);
  pointer-events:none;z-index:-1;
}
/* Sfumatura inferiore per armonizzare con sfondo cream */
.ab-img-wrap::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:30%;
  background:linear-gradient(to top,var(--cream) 0%,transparent 100%);
  pointer-events:none;
}
/* Etichetta sotto immagine */
.ab-cap{
  margin-top:1rem;
  font-family:'Cormorant Garamond',serif;font-style:italic;
  font-size:.88rem;color:rgba(139,26,26,.65);text-align:center;
  letter-spacing:.04em;
}

/* ══ DONAZIONE ══ */
.dn-s{background:var(--nd);position:relative;overflow:hidden}
.dn-s::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 55% 55% at 100% 0%,rgba(139,26,26,.1) 0%,transparent 60%);pointer-events:none}
.dn-in{position:relative;z-index:1}
.dn-s .stit{color:#fff}.dn-s .sbod{color:rgba(255,255,255,.58)}
.pb{margin:2.5rem 0;padding:1.8rem;background:rgba(255,255,255,.04);border:1px solid rgba(201,148,58,.18)}
.pbhd{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.8rem;flex-wrap:wrap;gap:.5rem}
.pbam{font-family:'Playfair Display',serif;font-size:2rem;font-weight:700;color:var(--gl)}
.pbgl{font-size:.78rem;color:rgba(255,255,255,.42)}
.pbwr{height:5px;background:rgba(255,255,255,.07);border-radius:3px;overflow:hidden;margin-bottom:.65rem}
.pbfl{height:100%;background:linear-gradient(90deg,var(--terra),var(--gold));border-radius:3px;width:0%;transition:width 1.8s ease}
.pbst{display:flex;gap:1.8rem;font-size:.7rem;color:rgba(255,255,255,.38);flex-wrap:wrap}
.pbst span{color:rgba(255,255,255,.72);font-weight:600}
.tgr{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem;margin-top:2.3rem}
.tc{padding:1.5rem 1.3rem;border:1px solid rgba(201,148,58,.16);background:rgba(255,255,255,.03);transition:all .24s;cursor:pointer;position:relative;overflow:hidden}
.tc:hover{border-color:rgba(201,148,58,.55);background:rgba(201,148,58,.05);transform:translateY(-4px)}
.tc.ft{border-color:rgba(201,74,43,.45);background:rgba(201,74,43,.06)}
.tc.ft::before{content:'Popolare';position:absolute;top:0;right:0;background:var(--terra);color:#fff;font-size:.56rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.2rem .65rem}
.tam{font-family:'Playfair Display',serif;font-size:1.95rem;font-weight:700;color:var(--gl);display:block;margin-bottom:.25rem}
.tnm{font-size:.65rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:.85rem;display:block}
.tpk{list-style:none;font-size:.73rem;color:rgba(255,255,255,.48);line-height:1.85}
.tpk li::before{content:'✦ ';color:var(--gold);font-size:.52rem}
.tbdg{display:inline-block;margin-top:.55rem;padding:.16rem .5rem;font-size:.56rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border:1px solid}
.bsc{border-color:rgba(255,255,255,.15);color:rgba(255,255,255,.28)}
.brb{border-color:rgba(201,148,58,.32);color:rgba(201,148,58,.75)}
.bhb{border-color:rgba(201,148,58,.65);color:var(--gl);background:rgba(201,148,58,.09)}
.bvb{border-color:var(--gl);color:var(--gl);background:rgba(240,201,106,.1)}
.dfrm{margin-top:2.3rem;padding:2rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}
.dft{font-family:'Playfair Display',serif;font-size:1.25rem;color:#fff;margin-bottom:1.3rem}
.frw{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-bottom:.9rem}
.fg{display:flex;flex-direction:column;gap:.32rem}
.fg label{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.42)}
.fg input,.fg select{padding:.7rem .95rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#fff;font-family:'Montserrat',sans-serif;font-size:.82rem;outline:none;transition:border-color .2s}
.fg input:focus,.fg select:focus{border-color:var(--gold)}.fg input::placeholder{color:rgba(255,255,255,.26)}
.fg select option{background:#0a1929}
.anr{display:flex;align-items:center;gap:.65rem;margin:.9rem 0;cursor:pointer}
.anr input{width:15px;height:15px;accent-color:var(--gold);cursor:pointer}
.anr span{font-size:.77rem;color:rgba(255,255,255,.52)}
.dbb{display:inline-flex;align-items:center;gap:.65rem;background:var(--terra);color:#fff;padding:.95rem 2.3rem;border:none;cursor:pointer;font-family:'Montserrat',sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;transition:all .24s;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px))}
.dbb:hover{background:#a83820;transform:translateY(-2px);box-shadow:0 8px 22px rgba(201,74,43,.38)}
.gfb{display:inline-flex;align-items:center;gap:.65rem;background:rgba(201,148,58,.1);color:var(--gl);padding:.95rem 2rem;border:1px solid rgba(201,148,58,.38);cursor:pointer;font-family:'Montserrat',sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;transition:all .24s;text-decoration:none}
.gfb:hover{background:rgba(201,148,58,.2);border-color:var(--gold)}
.dbr{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:1.3rem;align-items:center}
.dnt{margin-top:.75rem;font-size:.66rem;color:rgba(255,255,255,.26);line-height:1.6}
.bki{margin-top:2.3rem;padding:1.6rem;border:1px dashed rgba(201,148,58,.2);background:rgba(255,255,255,.02)}
.bki h4{font-size:.65rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:1.1rem}
.bkr{display:flex;justify-content:space-between;gap:1rem;padding:.52rem 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.78rem;color:rgba(255,255,255,.62);flex-wrap:wrap}
.bkr:last-child{border-bottom:none}.bkr span:first-child{color:rgba(255,255,255,.32);font-size:.68rem;flex-shrink:0}

/* ══ REGISTRO ══ */
.rgs{background:var(--cream)}
.rggr{margin-top:2.3rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(295px,1fr));gap:.95rem}
.dc{padding:1.15rem 1.4rem;background:#fff;border:1px solid rgba(26,51,82,.09);display:flex;align-items:flex-start;gap:.9rem;transition:box-shadow .2s;position:relative}
.dc:hover{box-shadow:0 3px 16px rgba(26,51,82,.08)}
.dav{width:36px;height:36px;border-radius:50%;background:rgba(26,51,82,.07);display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}
.dnm{font-size:.85rem;font-weight:600;color:var(--navy)}
.dat{font-size:.65rem;color:var(--tm);margin-top:.12rem}
.dc.hl50{background:linear-gradient(135deg,#fffdf5,#fff9e6);border:1.5px solid rgba(201,148,58,.42);box-shadow:0 2px 12px rgba(201,148,58,.09)}
.dc.hl50 .dav{background:linear-gradient(135deg,rgba(201,148,58,.25),rgba(201,148,58,.08));color:var(--gold)}
.dc.hl50 .dnm{color:#7a5c1e;font-weight:700}
.b50{display:inline-block;margin-top:.3rem;padding:.14rem .52rem;font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border:1px solid rgba(201,148,58,.45);color:var(--gold);background:rgba(201,148,58,.07)}
.dc.vip{background:linear-gradient(135deg,#fff8f8,#fef5e5);border:2px solid var(--terra);box-shadow:0 4px 18px rgba(201,74,43,.13)}
.dc.vip::before{content:'';position:absolute;top:0;left:0;width:5px;height:100%;background:linear-gradient(to bottom,var(--terra),var(--gold))}
.dc.vip .dav{background:linear-gradient(135deg,var(--terra),var(--gold));color:#fff}
.dc.vip .dnm{color:#8B1A1A;font-weight:800;font-size:.9rem}
.vbdg{display:inline-flex;align-items:center;gap:.28rem;margin-top:.22rem;font-size:.6rem;font-weight:700;color:var(--terra)}
.vty{margin-top:.52rem;padding-top:.52rem;border-top:1px solid rgba(201,74,43,.14);font-family:'Cormorant Garamond',serif;font-style:italic;font-size:.86rem;color:var(--tm);line-height:1.5}
.vcth{margin-top:.75rem;cursor:pointer;border-radius:2px;overflow:hidden;border:1px solid rgba(201,148,58,.28)}
.vcth img{width:100%;height:110px;object-fit:cover;display:block;transition:transform .3s}.vcth:hover img{transform:scale(1.04)}
.vctl{font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--terra);padding:.22rem .45rem;background:rgba(201,74,43,.05)}
.emp{grid-column:1/-1;text-align:center;padding:2.5rem;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1rem;color:rgba(26,51,82,.32);border:1px dashed rgba(26,51,82,.13)}

/* ══ IMMAGINI RINGRAZIAMENTI ══ */
.ths{background:var(--nd);position:relative}
.ths .stit{color:#fff}.ths .sbod{color:rgba(255,255,255,.55)}
.cgg2{margin-top:2.3rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.1rem}
.cc{background:rgba(255,255,255,.04);border:1px solid rgba(201,148,58,.18);overflow:hidden;transition:all .24s;cursor:pointer}
.cc:hover{border-color:var(--gold);transform:translateY(-3px);box-shadow:0 8px 22px rgba(0,0,0,.28)}
.cci{width:100%;aspect-ratio:4/3;overflow:hidden;display:flex;align-items:center;justify-content:center}
.cci img{width:100%;height:100%;object-fit:cover}
.ccin{padding:.75rem .95rem}
.ccn{font-size:.8rem;font-weight:700;color:var(--gl)}
.ccd{font-size:.63rem;color:rgba(255,255,255,.32);margin-top:.13rem}
.noc{grid-column:1/-1;text-align:center;padding:2.5rem;font-family:'Cormorant Garamond',serif;font-style:italic;color:rgba(255,255,255,.28);border:1px dashed rgba(255,255,255,.09)}

/* ══ PROGRAMMA ══ */
.prs{background:var(--warm)}
.tl{margin-top:2.3rem;position:relative;padding-left:2rem}
.tl::before{content:'';position:absolute;left:0;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,var(--gold),var(--terra),transparent)}
.tli{position:relative;padding:0 0 2.3rem 2.3rem}
.tli::before{content:'';position:absolute;left:-5px;top:6px;width:10px;height:10px;background:var(--gold);border-radius:50%;box-shadow:0 0 0 3px rgba(201,148,58,.2)}
.tld{font-size:.64rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--terra);margin-bottom:.32rem}
.tlt{font-family:'Playfair Display',serif;font-size:1.3rem;font-weight:700;color:var(--nd);margin-bottom:.42rem}
.tldsc{font-family:'Cormorant Garamond',serif;font-size:.98rem;color:var(--tm);line-height:1.7}
.ttg{display:inline-block;margin-top:.42rem;padding:.17rem .62rem;background:rgba(26,51,82,.07);color:var(--navy);font-size:.6rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}

/* ══ GALLERY ══ */
.gas{background:var(--navy);padding:4.5rem 0}
.gahd{text-align:center;padding:0 2rem 2.2rem}.gahd .stit{color:#fff}
.gst{display:grid;grid-template-columns:2fr 1fr 1fr 2fr;gap:3px}
.gc{aspect-ratio:1;background:var(--nd);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:.78rem;font-style:italic;color:rgba(255,255,255,.18);transition:all .3s;position:relative;overflow:hidden}
.gc:hover{background:rgba(201,148,58,.09)}
.gcbg{position:absolute;inset:0;background:linear-gradient(135deg,var(--navy),var(--nd))}
.gc:nth-child(1) .gcbg{background:linear-gradient(135deg,#1A3352,rgba(139,26,26,.4))}
.gc:nth-child(3) .gcbg{background:linear-gradient(135deg,rgba(139,26,26,.28),#1A3352)}
.gct{position:relative;z-index:1;padding:.9rem;text-align:center}

/* ══ SOCIAL ══ */
.scs{background:var(--cream);text-align:center}
.si{display:flex;justify-content:center;gap:1.3rem;margin-top:1.9rem;flex-wrap:wrap}
.sp{display:flex;align-items:center;gap:.65rem;padding:.82rem 1.7rem;border:1px solid rgba(26,51,82,.13);color:var(--navy);text-decoration:none;font-size:.76rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;transition:all .24s;background:#fff}
.sp:hover{background:var(--navy);color:#fff;border-color:var(--navy);transform:translateY(-2px)}
.sp svg{width:16px;height:16px}

/* ══ CONTATTI ══ */
.cts{background:var(--warm)}
.ctg{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start}
.ctf{display:flex;flex-direction:column;gap:.85rem}
.ctfg{display:flex;flex-direction:column;gap:.32rem}
.ctfg label{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--tm)}
.ctfg input,.ctfg textarea{padding:.75rem .95rem;border:1px solid rgba(26,51,82,.13);background:#fff;font-family:'Montserrat',sans-serif;font-size:.82rem;color:var(--td);outline:none;transition:border-color .2s;resize:vertical}
.ctfg input:focus,.ctfg textarea:focus{border-color:var(--gold)}
.cfbt{background:var(--navy);color:#fff;padding:.85rem 1.9rem;border:none;font-family:'Montserrat',sans-serif;font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .2s;align-self:flex-start}
.cfbt:hover{background:var(--terra)}
.cii{display:flex;gap:.9rem;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(26,51,82,.07)}.cii:last-child{border-bottom:none}
.cic{width:36px;height:36px;background:var(--navy);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.88rem}
.cil{font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--terra);margin-bottom:.22rem}
.civ{font-family:'Cormorant Garamond',serif;font-size:.97rem;color:var(--td);line-height:1.5}

/* ══ FOOTER ══ */
footer{background:var(--nd);color:rgba(255,255,255,.38);padding:2.5rem 2rem;text-align:center}
.flo{font-family:'Playfair Display',serif;font-size:1.3rem;color:var(--gl);margin-bottom:.55rem}
.ftg{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:.9rem;color:rgba(255,255,255,.26);margin-bottom:1.6rem}
.flk{display:flex;justify-content:center;gap:1.8rem;flex-wrap:wrap;list-style:none;margin-bottom:1.5rem}
.flk a{color:rgba(255,255,255,.28);text-decoration:none;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;transition:color .2s}.flk a:hover{color:var(--gold)}
.fcp{font-size:.66rem;color:rgba(255,255,255,.17)}
.adm{font-size:.58rem;color:rgba(255,255,255,.07)!important;margin-top:.5rem;display:inline-block;cursor:pointer;user-select:none}
.adm:hover{color:rgba(255,255,255,.28)!important}

/* ══ REVEAL ══ */
.rv{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}
.rv.vis{opacity:1;transform:none}

/* ══ ADMIN PANEL ══ */
.apov{position:fixed;inset:0;background:rgba(0,0,0,.93);z-index:500;display:none;align-items:flex-start;justify-content:center;padding:2rem 1rem;overflow-y:auto}
.apov.act{display:flex}
.apbx{background:#0a1929;border:1px solid rgba(201,148,58,.3);width:100%;max-width:840px;margin:auto;animation:fadeUp .3s ease}
.aphd{background:linear-gradient(135deg,var(--terra),#6a1212);padding:1.4rem 1.8rem;display:flex;align-items:center;justify-content:space-between}
.apti{font-family:'Playfair Display',serif;font-size:1.25rem;color:#fff}
.apcl{background:none;border:none;color:rgba(255,255,255,.65);font-size:1.5rem;cursor:pointer;line-height:1}.apcl:hover{color:#fff}
.aptb{display:flex;border-bottom:1px solid rgba(255,255,255,.07);flex-wrap:wrap}
.at{padding:.82rem 1.35rem;font-size:.68rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:rgba(255,255,255,.42);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}
.at.act{color:var(--gl);border-bottom-color:var(--gold)}.at:hover{color:rgba(255,255,255,.72)}
.apct{padding:1.8rem}
.appn{display:none}.appn.act{display:block}
.adr{display:flex;align-items:center;gap:.9rem;padding:.85rem .95rem;border:1px solid rgba(255,255,255,.06);margin-bottom:.45rem;background:rgba(255,255,255,.03);flex-wrap:wrap}
.adrn{font-size:.82rem;font-weight:600;color:#fff;flex:0 0 170px}
.adra{font-size:.72rem;color:var(--gold);flex-shrink:0}
.adri{font-size:.62rem;color:rgba(255,255,255,.32);flex-shrink:0}
.adrac{display:flex;gap:.45rem;margin-left:auto;flex-wrap:wrap}
.ab2{padding:.32rem .85rem;font-size:.62rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;border:1px solid;cursor:pointer;background:transparent;transition:all .2s;font-family:'Montserrat',sans-serif}
.ab2.ed{border-color:rgba(201,148,58,.38);color:rgba(201,148,58,.85)}.ab2.ed:hover{background:rgba(201,148,58,.09)}
.ab2.up{border-color:rgba(100,200,100,.38);color:#7ec87e}.ab2.up:hover{background:rgba(100,200,100,.07)}
.ab2.dl{border-color:rgba(200,80,80,.35);color:#e07070}.ab2.dl:hover{background:rgba(200,80,80,.07)}
.af{width:100%;padding:.65rem .92rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#fff;font-family:'Montserrat',sans-serif;font-size:.8rem;margin-bottom:.75rem;outline:none}
.af:focus{border-color:var(--gold)}.af::placeholder{color:rgba(255,255,255,.28)}
.all{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.42);margin-bottom:.32rem;display:block}
.abtn{padding:.65rem 1.4rem;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;font-family:'Montserrat',sans-serif;border:none;transition:all .2s}
.abtn.pr{background:var(--terra);color:#fff}.abtn.pr:hover{background:#a83820}
.abtn.sc{background:rgba(255,255,255,.07);color:rgba(255,255,255,.65);border:1px solid rgba(255,255,255,.11)}.abtn.sc:hover{background:rgba(255,255,255,.13)}
.ag2{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.amsg{padding:.65rem .92rem;background:rgba(100,200,100,.07);border:1px solid rgba(100,200,100,.2);color:#7ec87e;font-size:.75rem;border-radius:2px;margin-bottom:.9rem;display:none}
.amsg.act{display:block}
.apsec{margin-bottom:1.8rem}
.apsec h4{font-family:'Playfair Display',serif;font-size:.95rem;color:var(--gl);margin-bottom:.9rem;padding-bottom:.45rem;border-bottom:1px solid rgba(255,255,255,.07)}

/* ══ MODALI ══ */
.mo{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:400;display:none;align-items:center;justify-content:center;padding:1rem}
.mo.act{display:flex}
.mb{background:var(--nd);border:1px solid rgba(201,148,58,.28);padding:2rem;max-width:480px;width:100%;position:relative;animation:fadeUp .3s ease}
.mcl{position:absolute;top:.9rem;right:.9rem;background:none;border:none;color:rgba(255,255,255,.48);font-size:1.45rem;cursor:pointer;line-height:1}.mcl:hover{color:#fff}
.mb h3{font-family:'Playfair Display',serif;font-size:1.38rem;color:#fff;margin-bottom:.45rem}
.mb p{font-family:'Cormorant Garamond',serif;font-size:.97rem;color:rgba(255,255,255,.58);margin-bottom:1.4rem;line-height:1.68}
.mi{font-size:2.8rem;text-align:center;margin-bottom:.9rem}
.lbx{position:fixed;inset:0;background:rgba(0,0,0,.96);z-index:600;display:none;align-items:center;justify-content:center;cursor:pointer;padding:1rem}
.lbx.act{display:flex}
.lbx img{max-width:92vw;max-height:88vh;display:block}
.pwmo{position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:350;display:none;align-items:center;justify-content:center;padding:1rem}
.pwmo.act{display:flex}
.pwbx{background:var(--nd);border:1px solid rgba(201,148,58,.28);padding:2.3rem;max-width:330px;width:100%;text-align:center}
.pwbx h3{font-family:'Playfair Display',serif;color:var(--gl);margin-bottom:.45rem;font-size:1.25rem}
.pwbx p{font-size:.77rem;color:rgba(255,255,255,.42);margin-bottom:1.3rem}
.pwer{color:#e07070;font-size:.72rem;margin-top:.45rem;display:none}
.edmo{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:410;display:none;align-items:center;justify-content:center;padding:1rem}
.edmo.act{display:flex}


/* ── Programma TBA banner ── */
.prog-tba{
  display:flex;align-items:center;gap:1.5rem;
  margin:2rem 0 2.5rem;padding:1.5rem 2rem;
  background:linear-gradient(135deg,rgba(201,74,43,.08) 0%,rgba(201,148,58,.06) 100%);
  border:1px solid rgba(201,148,58,.3);
  border-left:4px solid var(--terra);
}
.prog-tba-icon{font-size:2.2rem;flex-shrink:0}
.prog-tba-title{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:700;color:var(--nd);margin-bottom:.35rem}
.prog-tba-sub{font-family:'Cormorant Garamond',serif;font-size:.98rem;color:var(--tm);line-height:1.6}

/* ── Altre Festività (marginale) ── */
.altf-s{background:var(--warm);border-top:1px solid rgba(26,51,82,.07)}
.altf-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}
.altf-card{
  padding:1.4rem 1.6rem;
  border:1px solid rgba(26,51,82,.1);
  background:#fff;
  position:relative;overflow:hidden;
}
.altf-card::before{
  content:'';position:absolute;top:0;left:0;width:3px;height:100%;
}
.altf-card.sant-antonio::before{background:linear-gradient(to bottom,#c9943a,#e8d5a3)}
.altf-card.sant-anna::before{background:linear-gradient(to bottom,#1A3352,#4a7ab0)}
.altf-icon{font-size:1.8rem;margin-bottom:.6rem}
.altf-title{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:var(--nd);margin-bottom:.4rem}
.altf-body{font-family:'Cormorant Garamond',serif;font-size:.95rem;color:var(--tm);line-height:1.7}
.altf-date{display:inline-block;margin-top:.5rem;padding:.18rem .6rem;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:rgba(26,51,82,.07);color:var(--navy)}
.altf-note{margin-top:.6rem;font-size:.72rem;color:rgba(26,51,82,.45);font-style:italic}
@media(max-width:600px){.altf-grid{grid-template-columns:1fr}}


/* ══ PUBBLICAZIONI dinamiche ══ */
.pub-s{background:var(--nd);padding:2rem 2rem 0}
.pub-strip{max-width:1080px;margin:0 auto;display:flex;flex-direction:column;gap:.8rem}
.pub-card{
  display:flex;align-items:flex-start;gap:1.2rem;
  padding:1.1rem 1.4rem;
  border:1px solid rgba(201,148,58,.25);
  background:rgba(255,255,255,.04);
  position:relative;overflow:hidden;
  animation:fadeUp .5s ease both;
}
.pub-card.pinned{border-color:var(--terra);background:rgba(201,74,43,.07)}
.pub-card-icon{font-size:1.5rem;flex-shrink:0;margin-top:.1rem}
.pub-card-body{flex:1}
.pub-card-cat{font-size:.58rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:.25rem}
.pub-card-title{font-family:'Playfair Display',serif;font-size:1rem;color:#fff;margin-bottom:.3rem}
.pub-card-text{font-family:'Cormorant Garamond',serif;font-size:.92rem;color:rgba(255,255,255,.62);line-height:1.6}
.pub-card-img{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center top!important;
  margin-top:.6rem;
  border-radius:2px;
}
.pub-card-body{min-width:0!important;overflow:visible!important}
.pub-card{overflow:visible!important}
@media(max-width:768px){
  #pubblicazioni.pub-s{padding-left:.65rem!important;padding-right:.65rem!important}
  #pubblicazioni .pub-card{gap:.55rem!important;padding:.8rem!important}
  #pubblicazioni .pub-card-icon{font-size:1.1rem!important}
  #pubblicazioni .pub-card-img{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important}
}
.pub-card-date{font-size:.62rem;color:rgba(255,255,255,.28);margin-top:.4rem}
.pub-card-close{position:absolute;top:.5rem;right:.7rem;background:none;border:none;color:rgba(255,255,255,.25);cursor:pointer;font-size:1rem;line-height:1}

/* ══ SONDAGGIO ══ */
.poll-s{background:var(--cream)}
.poll-box{background:#fff;border:1px solid rgba(26,51,82,.1);padding:2rem;margin-top:2rem;max-width:700px}
.poll-q{margin-bottom:1.8rem}
.poll-q-txt{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:var(--nd);margin-bottom:.9rem}
.poll-opt{margin-bottom:.55rem}
.poll-opt label{display:flex;align-items:center;gap:.7rem;cursor:pointer;font-size:.82rem;color:var(--td);padding:.4rem .5rem;border-radius:2px;transition:background .15s}
.poll-opt label:hover{background:rgba(26,51,82,.05)}
.poll-opt input[type=radio]{accent-color:var(--terra);width:15px;height:15px;cursor:pointer}
/* Result bars */
.poll-res-item{margin-bottom:.7rem}
.poll-res-label{display:flex;justify-content:space-between;font-size:.78rem;color:var(--td);margin-bottom:.28rem}
.poll-res-bar{height:8px;background:rgba(26,51,82,.08);border-radius:4px;overflow:hidden}
.poll-res-fill{height:100%;background:linear-gradient(90deg,var(--terra),var(--gold));border-radius:4px;transition:width .8s ease}
.poll-res-winner .poll-res-fill{background:linear-gradient(90deg,#1A3352,var(--gold))}
.poll-vote-btn{background:var(--terra);color:#fff;padding:.75rem 1.8rem;border:none;font-family:'Montserrat',sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .2s;margin-top:.5rem}
.poll-vote-btn:hover{background:#a83820}
.poll-voted-msg{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:.92rem;color:var(--terra);margin-top:.7rem}

/* ══ VOLONTARI ══ */
.vol-s{background:var(--navy)}
.vol-s .stit{color:#fff}.vol-s .sbod{color:rgba(255,255,255,.55)}
.vol-grid{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.8rem}
.vol-chip{
  padding:.5rem 1rem;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(201,148,58,.25);
  font-size:.78rem;font-weight:600;color:rgba(255,255,255,.85);
  display:flex;align-items:center;gap:.4rem;
  animation:fadeUp .4s ease both;
}
.vol-chip span.badge{font-size:.55rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--gold);color:var(--nd);padding:.15rem .4rem}
.vol-empty{font-family:'Cormorant Garamond',serif;font-style:italic;color:rgba(255,255,255,.28);font-size:.95rem}

/* ══ COLLABORA CON NOI ══ */
.collab-s{background:var(--warm)}
.collab-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;margin-top:2rem}
.collab-perks{list-style:none;margin-top:1rem}
.collab-perks li{display:flex;align-items:flex-start;gap:.7rem;padding:.6rem 0;border-bottom:1px solid rgba(26,51,82,.07);font-family:'Cormorant Garamond',serif;font-size:1rem;color:var(--tm)}
.collab-perks li:last-child{border-bottom:none}
.collab-perks li::before{content:'✦';color:var(--gold);font-size:.7rem;margin-top:.3rem;flex-shrink:0}
.collab-form{background:#fff;padding:2rem;border:1px solid rgba(26,51,82,.1)}
.collab-form-title{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--nd);margin-bottom:1.3rem;padding-bottom:.6rem;border-bottom:1px solid rgba(26,51,82,.07)}
.clfg{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.8rem}
.clfg label{font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--tm)}
.clfg input,.clfg select{padding:.7rem .9rem;border:1px solid rgba(26,51,82,.13);background:var(--warm);font-family:'Montserrat',sans-serif;font-size:.82rem;color:var(--td);outline:none;transition:border-color .2s}
.clfg input:focus,.clfg select:focus{border-color:var(--gold)}
.collab-btn{background:var(--navy);color:#fff;padding:.9rem 2rem;border:none;font-family:'Montserrat',sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .2s;width:100%;margin-top:.5rem}
.collab-btn:hover{background:var(--terra)}
.collab-success{background:rgba(100,180,100,.08);border:1px solid rgba(100,180,100,.2);padding:.9rem 1rem;color:#3a7a3a;font-size:.82rem;font-family:'Cormorant Garamond',serif;font-style:italic;margin-top:.8rem;display:none}
.collab-success.show{display:block}

/* ══ ADMIN extra ══ */
.ap-badge{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:18px;height:18px;border-radius:9px;
  background:var(--terra);color:#fff;
  font-size:.6rem;font-weight:700;padding:0 5px;
  margin-left:.4rem;vertical-align:middle;
}
.ap-badge.gold{background:var(--gold);color:var(--nd)}
.ver-card{
  padding:.8rem 1rem;border:1px solid rgba(255,165,0,.3);
  background:rgba(255,165,0,.05);margin-bottom:.5rem;
  display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;
}
.ver-card .vcn{font-size:.82rem;font-weight:600;color:#fff;flex:1}
.ver-card .vca{font-size:.72rem;color:var(--gold);flex-shrink:0}
.ver-card .vcs{font-size:.65rem;color:rgba(255,255,255,.35);flex-shrink:0}
.pub-admin-card{
  padding:.8rem 1rem;border:1px solid rgba(255,255,255,.07);
  background:rgba(255,255,255,.03);margin-bottom:.5rem;
  display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;
}
.pub-toggle{
  position:relative;display:inline-block;width:36px;height:20px;flex-shrink:0;
}
.pub-toggle input{opacity:0;width:0;height:0}
.pub-toggle-sl{
  position:absolute;inset:0;background:rgba(255,255,255,.15);
  border-radius:20px;cursor:pointer;transition:.3s;
}
.pub-toggle-sl::before{
  content:'';position:absolute;width:14px;height:14px;
  background:#fff;border-radius:50%;bottom:3px;left:3px;transition:.3s;
}
.pub-toggle input:checked + .pub-toggle-sl{background:var(--terra)}
.pub-toggle input:checked + .pub-toggle-sl::before{transform:translateX(16px)}
.vol-admin-row{
  display:flex;align-items:center;gap:.8rem;padding:.7rem .9rem;
  border:1px solid rgba(255,255,255,.06);margin-bottom:.4rem;
  background:rgba(255,255,255,.03);flex-wrap:wrap;
}
.vol-status{font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.15rem .5rem;border-radius:2px}
.vol-status.pending{background:rgba(255,165,0,.12);color:#ffa500;border:1px solid rgba(255,165,0,.3)}
.vol-status.approved{background:rgba(100,180,100,.1);color:#6db46d;border:1px solid rgba(100,180,100,.2)}
.poll-admin-q{margin-bottom:1rem;padding:1rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}
.poll-admin-q label{font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.42);margin-bottom:.3rem;display:block}
.poll-opt-row{display:flex;gap:.5rem;margin-bottom:.4rem;align-items:center}
.poll-opt-row input{flex:1}
.poll-opt-row .rm-opt{background:none;border:none;color:rgba(200,80,80,.6);cursor:pointer;font-size:1rem;padding:.2rem .4rem}

@media(max-width:768px){
  .collab-grid{grid-template-columns:1fr}
  .chat-panel{width:calc(100vw - 2rem);right:1rem}
  .pub-card{flex-direction:column}
}

/* ══ RESPONSIVE ══ */
@media(max-width:900px){.tgr{grid-template-columns:repeat(2,1fr)}.ag2{grid-template-columns:1fr}}
@media(max-width:768px){
  .nm{display:none}.abgr,.ctg{grid-template-columns:1fr}
  .gst{grid-template-columns:1fr 1fr}.gst .gc:nth-child(4){display:none}
  .cstrip{grid-template-columns:repeat(2,1fr)}.frw{grid-template-columns:1fr}
  .adrn{flex:1 1 auto}.apct{padding:1.1rem}
}
@media(max-width:500px){.tgr{grid-template-columns:1fr 1fr}.cdbox{gap:.4rem}.cdu{min-width:56px}.cdn{font-size:2rem}}


/* ═══ HAMBURGER MENU ═══ */
.ham-btn{
  display:none;background:none;border:none;color:#fff;
  font-size:1.4rem;cursor:pointer;padding:.3rem .5rem;
  line-height:1;
}
.mob-menu{
  position:fixed;top:64px;left:0;right:0;
  background:rgba(13,31,51,.98);backdrop-filter:blur(12px);
  z-index:250;
  transform:translateY(-110%);opacity:0;
  transition:transform .3s ease,opacity .3s ease;
  border-bottom:1px solid rgba(201,148,58,.25);
}
.mob-menu.open{transform:translateY(0);opacity:1;}
.mob-menu ul{list-style:none;padding:.8rem 1.5rem 1rem;}
.mob-menu ul li{border-bottom:1px solid rgba(255,255,255,.06);}
.mob-menu ul li a{
  display:block;padding:.75rem .2rem;
  color:rgba(255,255,255,.8);text-decoration:none;
  font-size:.82rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;
  transition:color .2s;
}
.mob-menu ul li a:hover{color:var(--gl);}
.mob-cta{
  display:block;margin:0 0 .5rem;
  background:var(--terra);color:#fff!important;
  text-align:center;padding:.85rem!important;
  font-weight:700!important;
}

/* Sticky bottom bar (mobile only) */
.mob-bar{
  display:none;
  position:fixed;bottom:0;left:0;right:0;z-index:200;
  background:rgba(13,31,51,.97);border-top:1px solid rgba(201,148,58,.25);
  padding:.6rem 1rem .8rem;
  display:grid;grid-template-columns:1fr 1fr;gap:.6rem;
  backdrop-filter:blur(8px);
}
.mob-bar a{
  display:block;text-align:center;padding:.7rem .5rem;
  font-family:'Montserrat',sans-serif;font-size:.75rem;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;text-decoration:none;
  border-radius:2px;transition:all .2s;
}
.mob-bar .mb-dona{background:var(--terra);color:#fff;}
.mob-bar .mb-prog{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.2);}

/* ═══ BONIFICI SEZIONE RESTYLE ═══ */
.bon-section{
  background:var(--nd);position:relative;
  padding:1.8rem;
  border:1px solid rgba(201,148,58,.2);
  margin-top:2.3rem;
}
.bon-header{
  display:flex;align-items:center;gap:.8rem;
  margin-bottom:1.5rem;
  padding-bottom:.8rem;
  border-bottom:1px solid rgba(201,148,58,.15);
}
.bon-header-icon{font-size:1.5rem}
.bon-header h4{
  font-family:'Playfair Display',serif;
  font-size:1.1rem;color:#fff;margin:0;
}
.bon-header p{font-size:.72rem;color:rgba(255,255,255,.4);margin:.2rem 0 0;}
.bon-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.bon-item{
  padding:1rem 1.1rem;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
  border-radius:2px;
}
.bon-item.full{grid-column:1/-1;}
.bon-item.highlight{
  background:rgba(201,148,58,.07);
  border-color:rgba(201,148,58,.25);
}
.bon-label{
  font-size:.6rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(255,255,255,.38);
  margin-bottom:.35rem;display:block;
}
.bon-value{
  font-family:'Cormorant Garamond',serif;
  font-size:1rem;color:rgba(255,255,255,.85);
  line-height:1.4;word-break:break-all;
}
.bon-value.mono{
  font-family:'Montserrat',sans-serif;
  font-size:.82rem;color:var(--gl);letter-spacing:.05em;
}
.bon-copy{
  display:inline-flex;align-items:center;gap:.3rem;
  margin-top:.4rem;padding:.25rem .6rem;
  background:rgba(201,148,58,.12);
  border:1px solid rgba(201,148,58,.3);
  color:var(--gold);font-size:.62rem;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;
  cursor:pointer;border-radius:2px;transition:all .2s;
}
.bon-copy:hover{background:rgba(201,148,58,.22);}
.bon-steps{
  display:flex;flex-direction:column;gap:.6rem;
  margin-top:1.2rem;
}
.bon-step{
  display:flex;align-items:flex-start;gap:.8rem;
  font-family:'Cormorant Garamond',serif;
  font-size:.95rem;color:rgba(255,255,255,.65);line-height:1.5;
}
.bon-step-n{
  width:22px;height:22px;border-radius:50%;
  background:var(--terra);color:#fff;
  font-family:'Montserrat',sans-serif;font-size:.7rem;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;margin-top:.1rem;
}

/* ═══ MOBILE 600px ═══ */
@media(max-width:600px){
  .nm{display:none!important;}
  .ham-btn{display:block;}
  .mob-bar{display:grid;}
  /* padding body bottom for mob-bar */
  body{padding-bottom:64px;}

  nav{height:56px;padding:0 1rem;}
  .nav-logo{font-size:.9rem;}

  .hero{min-height:92vh;}
  .hcont{padding:5.5rem 1rem 3.5rem;}
  .htit{font-size:2.5rem;}
  .hsub{font-size:.95rem;line-height:1.55;}
  .hyr{font-size:1rem;letter-spacing:.15em;}

  section{padding:3rem 1rem;}
  .container{max-width:100%;}

  .btnp,.btns{
    width:100%;justify-content:center;
    padding:.9rem 1.2rem;font-size:.78rem;
  }
  .hbtns{flex-direction:column;}

  .cdbox{gap:.25rem;}
  .cdn{font-size:1.6rem;}
  .cdu{min-width:46px;}
  .cdsep{font-size:1.3rem;padding-bottom:.3rem;}

  .tgr{grid-template-columns:1fr 1fr;}
  .tc{padding:1.1rem;}
  .tam{font-size:1.7rem;}
  .tpk{font-size:.7rem;}

  input,select,textarea{font-size:16px!important;}
  .fg input,.fg select,.clfg input,.clfg select,
  .ctfg input,.ctfg textarea,.af{
    font-size:16px!important;
    padding:.75rem .9rem!important;
  }

  .frw{grid-template-columns:1fr!important;gap:.7rem!important;}
  .dfrm,.collab-form,.poll-box{padding:1.1rem!important;}
  .abgr,.ctg,.collab-grid{
    grid-template-columns:1fr!important;gap:1.5rem!important;
  }

  .cstrip{grid-template-columns:repeat(2,1fr);}
  .cnum{font-size:2rem;}

  .rggr{grid-template-columns:1fr;}
  .cgg2{grid-template-columns:1fr 1fr;}
  .altf-grid{grid-template-columns:1fr;}
  .vol-grid{gap:.4rem;}

  .bon-grid{grid-template-columns:1fr;}
  .apbx{width:96vw;margin:1rem auto;}
  .aptb{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;}
  .at{white-space:nowrap;font-size:.6rem;padding:.65rem .9rem;}
  .apct{padding:1rem;}
  .ag2{grid-template-columns:1fr!important;}

  .pb-hd{flex-direction:column;gap:.3rem;}
  .pbam{font-size:1.6rem;}

  .collab-grid2{grid-template-columns:1fr!important;}
  .chat-panel{width:calc(100vw - 1rem);right:.5rem;}
  .pub-card{flex-direction:column;}
  .tgr{grid-template-columns:1fr;}

  /* Admin panel mobile */
  .ap-badge{display:none!important;}
}

@media(max-width:380px){
  .tgr{grid-template-columns:1fr;}
  .cdn{font-size:1.4rem;}
  .cdu{min-width:40px;}
}

/* ── Guida primo avvio ── */
.guide-ov{position:fixed;inset:0;background:rgba(13,31,51,.97);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1.5rem;animation:fadeUp .4s ease}
.guide-ov.hidden{display:none}
.guide-box{background:#fff;max-width:380px;width:100%;border-radius:4px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.4)}
.guide-header{background:linear-gradient(135deg,#C94A2B,#8B1A1A);padding:1.5rem;text-align:center}
.guide-header h2{font-family:'Playfair Display',serif;color:#fff;font-size:1.3rem;margin-bottom:.3rem}
.guide-header p{font-size:.75rem;color:rgba(255,255,255,.7)}
.guide-body{padding:1.5rem}
.guide-step{display:flex;align-items:flex-start;gap:.9rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.07)}
.guide-step:last-of-type{border-bottom:none;margin-bottom:0}
.guide-num{width:28px;height:28px;border-radius:50%;background:#C94A2B;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;flex-shrink:0;margin-top:.1rem}
.guide-step-t{font-size:.82rem;font-weight:700;color:#1A3352;margin-bottom:.15rem}
.guide-step-d{font-size:.76rem;color:#5C4A35;line-height:1.5}
.guide-btn{display:block;width:100%;padding:1rem;background:linear-gradient(135deg,#C94A2B,#8B1A1A);color:#fff;border:none;cursor:pointer;font-family:'Montserrat',sans-serif;font-size:.85rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-top:1.2rem}
.guide-note{font-size:.65rem;color:#999;text-align:center;margin-top:.7rem}


/* Firma grafica Comitato Feste */
.firma-comitato-box {
  max-width: 1150px;
  margin: 56px auto 36px;
  padding: 28px 24px;
  text-align: center;
  background: rgba(255,255,255,0.92);
  border-radius: 24px;
  box-shadow: 0 12px 35px rgba(0,0,0,0.08);
}

.firma-comitato-testo {
  margin: 0 0 10px;
  font-size: 1rem;
  color: #777;
  letter-spacing: 0.04em;
}

.firma-comitato-box img {
  width: 100%;
  max-width: 980px;
  height: auto;
  display: inline-block;
}

/* ═══ Extra CSS — Santa Cristina 2026 ═══ */

/* ── PREFESTA SECTION ── */
.prefesta-s{
  background:linear-gradient(135deg,var(--nd) 0%,#1a0a0a 100%);
  position:relative;overflow:hidden;
  border-top:3px solid var(--terra);
  border-bottom:3px solid var(--gold);
}
.prefesta-s::before{
  content:'PREFESTA';font-family:'Playfair Display',serif;
  font-size:9rem;font-weight:900;color:rgba(201,74,43,.06);
  position:absolute;top:-1rem;right:-2rem;pointer-events:none;
}
.prefesta-badge{
  display:inline-flex;align-items:center;gap:.5rem;
  background:linear-gradient(135deg,var(--terra),#8B1A1A);
  color:#fff;padding:.45rem 1.2rem;font-size:.72rem;font-weight:700;
  letter-spacing:.15em;text-transform:uppercase;margin-bottom:1.5rem;
}
.prefesta-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:3.5rem;align-items:start;margin-top:2rem}
.prefesta-menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-top:1.5rem}
.prefesta-card{
  padding:1.3rem;
  border:1px solid rgba(201,148,58,.2);
  background:rgba(255,255,255,.04);
  position:relative;transition:all .2s;
}
.prefesta-card:hover{border-color:var(--gold);background:rgba(201,148,58,.06);}
.prefesta-card-price{font-family:'Playfair Display',serif;font-size:1.5rem;color:var(--gl);font-weight:700}
.prefesta-card-name{font-size:.88rem;font-weight:700;color:#fff;margin:.2rem 0}
.prefesta-card-desc{font-family:'Cormorant Garamond',serif;font-size:.9rem;color:rgba(255,255,255,.55);line-height:1.5}
.pref-bracciale{display:inline-block;margin-top:.5rem;padding:.18rem .55rem;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:rgba(255,255,255,.1);color:rgba(255,255,255,.7)}
.pref-collab-grid{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.2rem}
.pref-collab-chip{padding:.4rem .85rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.8);font-size:.78rem;font-weight:600}

/* ── CAMPAGNA FONDI ── */
.campagna-s{
  background:linear-gradient(135deg,rgba(139,26,26,.9),rgba(13,31,51,.95));
  border-top:1px solid rgba(201,74,43,.4);
  border-bottom:1px solid rgba(201,74,43,.4);
  padding:2.5rem 2rem;text-align:center;
}
.campagna-s .stit{color:#fff;font-size:clamp(1.4rem,4vw,2.2rem)}
.campagna-s .sbod{color:rgba(255,255,255,.7);max-width:600px;margin:0 auto 1.5rem}
.campagna-urgent{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--terra);color:#fff;
  padding:.3rem .9rem;font-size:.68rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;
  margin-bottom:1rem;animation:pulse 2s infinite;
}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.7}}

/* ── LOTTERIA SECTION ── */
.lotteria-s{background:var(--nd);position:relative;overflow:hidden}
.lotteria-s::after{content:'🎰';position:absolute;right:2rem;top:50%;transform:translateY(-50%);font-size:6rem;opacity:.06;pointer-events:none}
.lotteria-card{
  background:rgba(255,255,255,.04);border:1px solid rgba(201,148,58,.2);
  padding:2rem;max-width:620px;margin-top:1.8rem;
}
.lotteria-premi{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.7rem;margin-top:1.2rem}
.premio-card{padding:.9rem;background:rgba(255,255,255,.04);border:1px solid rgba(201,148,58,.18);text-align:center}
.premio-posto{font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.premio-desc{font-family:'Playfair Display',serif;font-size:.95rem;color:#fff;margin-top:.3rem}
.lot-form{margin-top:1.5rem;padding:1.5rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07)}
.lot-msg{padding:.8rem;border-radius:3px;margin-bottom:1rem;display:none}

/* ── SOCIAL WALL ── */
.social-wall-s{background:var(--surface,#162436);overflow:hidden}
.sw-hashtag{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--gold);margin-bottom:.5rem}
.sw-widget-wrap{margin-top:1.5rem;min-height:300px}
.sw-desc{font-family:'Cormorant Garamond',serif;font-size:1rem;color:rgba(255,255,255,.55);margin-bottom:.5rem}

/* ── FUMETTI nel registro ── */
.fum-link{display:inline-flex;align-items:center;gap:.3rem;margin-top:.4rem;cursor:pointer;border:1px solid rgba(201,74,43,.35);padding:.2rem .6rem;font-size:.65rem;font-weight:700;letter-spacing:.08em;color:var(--terra);text-transform:uppercase;transition:all .2s}
.fum-link:hover{background:rgba(201,74,43,.08)}
.fum-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.96);z-index:600;display:none;align-items:center;justify-content:center;flex-direction:column;cursor:pointer;padding:1rem}
.fum-lightbox.open{display:flex}
.fum-lightbox img{max-width:90vw;max-height:85vh;border:2px solid rgba(201,148,58,.3)}
.fum-lightbox p{color:rgba(255,255,255,.5);font-size:.75rem;margin-top:.7rem}

/* ── TIER CROWDFUNDING più leggibili ── */
.tc .tam{font-size:2rem}
.tc .tnm{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;display:block;margin:.15rem 0 .6rem;color:rgba(255,255,255,.65)}
.tc .tpk{font-size:.75rem}
.tc .tpk li{margin-bottom:.2rem;padding-left:.2rem}
.tc .tbdg{font-size:.6rem;margin-top:.5rem}
.tgr{gap:1rem}

/* ── SANT'ANTONIO più prominente ── */
.altf-card.sant-antonio{
  border-left:3px solid var(--gold);
  background:linear-gradient(135deg,#fff,#fffdf5);
  padding:1.6rem;
}
.altf-card.sant-antonio .altf-title{font-size:1.1rem;font-weight:800;color:var(--nd)}
.sant-antonio-donate{
  margin-top:1rem;padding:1rem;
  background:rgba(201,148,58,.08);
  border:1px solid rgba(201,148,58,.25);
  border-radius:2px;
}
.sant-antonio-donate p{font-family:'Cormorant Garamond',serif;font-size:.95rem;color:var(--tm);line-height:1.6;margin-bottom:.75rem}

/* ── RESPONSIVE aggiuntivo ── */
@media(max-width:768px){
  .prefesta-grid{grid-template-columns:1fr}
  .lotteria-premi{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .prefesta-menu-grid{grid-template-columns:1fr}
  .lotteria-premi{grid-template-columns:1fr}
  .prefesta-s::before{display:none}
}

/* ── SPONSOR STRIP ─────────────────────────────────────────── */
.spon-strip{background:#0a1628;border-top:1px solid rgba(201,148,58,.2);border-bottom:1px solid rgba(201,148,58,.2);overflow:hidden;padding:.5rem 0}
.spon-label{text-align:center;font-size:.56rem;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:rgba(201,148,58,.5);padding:.28rem 1rem .45rem;display:block}
.spon-track{display:flex;align-items:center;gap:0;animation:spon-scroll 36s linear infinite;width:max-content}
.spon-track:hover{animation-play-state:paused}
@keyframes spon-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.spon-item{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.22rem;padding:.45rem 1.8rem;border-right:1px solid rgba(255,255,255,.05);min-width:120px;text-align:center}
.spon-logo{display:block;object-fit:contain;max-width:130px}
.spon-logo.sz-main{height:50px}.spon-logo.sz-gold{height:40px}.spon-logo.sz-silver{height:32px}.spon-logo.sz-base{height:26px}
.spon-name{font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:115px;color:#ffffff}
/* ── Sponsor section grids ────────────────────────────────────────── */
.sp-section{background:#080f1c;padding:5rem 2rem}
.sp-tier-hd{text-align:center;margin-bottom:1.8rem}
.sp-tier-hd span{display:inline-block;font-size:.57rem;font-weight:700;letter-spacing:.27em;text-transform:uppercase;padding:.28rem 1.15rem;border-radius:20px}
/* MAIN */
.sp-grid-main{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr));gap:1.8rem;max-width:1040px;margin:0 auto 3.5rem}
.sp-card-main{background:linear-gradient(145deg,#0f1e35,#0d1a2d);border:1px solid rgba(201,74,43,.45);border-radius:3px;padding:2.5rem 2rem;display:flex;flex-direction:column;align-items:center;gap:.9rem;text-align:center;position:relative;overflow:hidden;text-decoration:none}
.sp-card-main::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#C94A2B,#C9943A,#C94A2B)}
.sp-card-main .sp-logo-box{width:100%;max-width:320px;height:125px;background:#fff;border-radius:3px;display:flex;align-items:center;justify-content:center;padding:.9rem 1.6rem}
.sp-card-main .sp-logo-box img{max-height:105px;max-width:290px;width:auto;object-fit:contain;display:block}
.sp-card-main .sp-ico-fallback{font-size:3rem;line-height:1}
/* GOLD */
.sp-grid-gold{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:1.2rem;max-width:940px;margin:0 auto 3rem}
.sp-card-gold{background:#0c1a2e;border:1px solid rgba(201,148,58,.28);border-top:3px solid #C9943A;border-radius:3px;padding:1.6rem 1.3rem;display:flex;flex-direction:column;align-items:center;gap:.65rem;text-align:center;text-decoration:none}
.sp-card-gold .sp-logo-box{width:100%;height:86px;background:#fff;border-radius:2px;display:flex;align-items:center;justify-content:center;padding:.55rem 1.1rem}
.sp-card-gold .sp-logo-box img{max-height:74px;max-width:215px;width:auto;object-fit:contain;display:block}
.sp-card-gold .sp-ico-fallback{font-size:2.2rem}
/* SILVER */
.sp-grid-silver{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:1rem;max-width:940px;margin:0 auto 2.5rem}
.sp-card-silver{background:#0c1a2e;border:1px solid rgba(192,192,192,.2);border-top:2px solid #C0C0C0;border-radius:2px;padding:1.3rem 1.1rem;display:flex;flex-direction:column;align-items:center;gap:.52rem;text-align:center;text-decoration:none}
.sp-card-silver .sp-logo-box{width:100%;height:64px;background:#fff;border-radius:2px;display:flex;align-items:center;justify-content:center;padding:.45rem .85rem}
.sp-card-silver .sp-logo-box img{max-height:56px;max-width:165px;width:auto;object-fit:contain;display:block}
.sp-card-silver .sp-ico-fallback{font-size:1.7rem}
/* BASE */
.sp-grid-base{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:.75rem;max-width:940px;margin:0 auto 2rem}
.sp-card-base{background:#0c1a2e;border:1px solid rgba(255,255,255,.09);border-radius:2px;padding:.85rem 1rem;display:flex;align-items:center;gap:.75rem;text-decoration:none}
.sp-card-base .sp-logo-box{width:52px;height:42px;flex-shrink:0;background:#fff;border-radius:2px;display:flex;align-items:center;justify-content:center;padding:.3rem .35rem}
.sp-card-base .sp-logo-box img{max-height:36px;max-width:44px;width:auto;object-fit:contain;display:block}
.sp-card-base .sp-ico-fallback{font-size:1.1rem}
/* Shared text */
.sp-nome-main{font-family:'Playfair Display',serif;font-size:1.45rem;font-weight:900;color:#ffffff;text-shadow:0 1px 3px rgba(0,0,0,.5);line-height:1.2}
.sp-nome-gold{font-family:'Playfair Display',serif;font-size:1.12rem;font-weight:900;color:#ffffff;text-shadow:0 1px 2px rgba(0,0,0,.4);line-height:1.2}
.sp-nome-silver{font-size:.98rem;font-weight:800;color:#ffffff;line-height:1.2}
.sp-nome-base{font-size:.88rem;font-weight:800;color:#ffffff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
.sp-slogan{font-size:.78rem;font-style:italic;color:rgba(255,255,255,.55);line-height:1.35}
.sp-desc{font-family:'Cormorant Garamond',Georgia,serif;font-size:.88rem;color:rgba(255,255,255,.62);line-height:1.65;text-align:center;width:100%}
.sp-link{font-size:.7rem;font-weight:700;color:var(--gold,#C9943A);margin-top:auto}
.sp-badge{position:absolute;top:.55rem;right:.65rem;font-size:.5rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:.16rem .5rem;border-radius:1px}
/* Pacchetti iscrizione */
.sp-pac-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.85rem;margin-bottom:1.7rem}
.sp-pac-card{border:1px solid rgba(255,255,255,.1);border-radius:3px;padding:1.15rem .85rem;text-align:center;cursor:pointer;background:#0c1a2e;transition:border-color .14s,background .14s,transform .14s;position:relative;user-select:none}
.sp-pac-card:hover,.sp-pac-card.sel{transform:translateY(-3px)}
.sp-pac-card .pac-ico{font-size:1.55rem;margin-bottom:.35rem}
.sp-pac-card .pac-nome{font-size:.58rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:.22rem}
.sp-pac-card .pac-price{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:700;margin-bottom:.42rem}
.sp-pac-card .pac-desc{font-size:.6rem;color:rgba(255,255,255,.38);line-height:1.5}
.sp-pac-card .pac-top{position:absolute;top:0;right:0;font-size:.46rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;padding:.18rem .46rem;border-radius:0 3px 0 0}
/* Responsive */
@media(max-width:860px){
  .sp-grid-main{grid-template-columns:1fr;max-width:560px}
  .sp-grid-gold{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}
  .sp-grid-silver{grid-template-columns:repeat(auto-fill,minmax(min(48%,200px),1fr))}
  .sp-grid-base{grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr))}
}
@media(max-width:560px){
  .sp-section{padding:3.5rem 1.1rem}
  .sp-grid-gold{grid-template-columns:1fr}
  .sp-grid-silver{grid-template-columns:1fr 1fr}
  .sp-grid-base{grid-template-columns:1fr}
  .sp-pac-grid{grid-template-columns:1fr 1fr}
  .spon-item{min-width:95px;padding:.38rem 1.1rem}
}
@media(max-width:340px){
  .sp-grid-silver,.sp-grid-base{grid-template-columns:1fr}
}
/* ── SPONSOR SECTION HOME ───────────────────────────────────── */
.sponsor-home-s{background:linear-gradient(160deg,#0a1826 0%,var(--nd,#070f1c) 100%);padding:3.5rem 2rem}
.sponsor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.2rem;margin-top:1.8rem;max-width:900px;margin-left:auto;margin-right:auto}
.sponsor-card{background:rgba(255,255,255,.04);border:1px solid rgba(201,148,58,.15);padding:1.2rem;text-align:center;transition:all .2s}
.sponsor-card:hover{border-color:rgba(201,148,58,.45);background:rgba(201,148,58,.04)}
.sponsor-card img{max-height:55px;max-width:140px;object-fit:contain;margin-bottom:.7rem;filter:grayscale(20%) brightness(1.1)}
.sponsor-card .sp-nome{font-size:.82rem;font-weight:700;color:rgba(255,255,255,.8)}
.sponsor-card .sp-desc{font-size:.72rem;color:rgba(255,255,255,.4);margin-top:.3rem;line-height:1.4}


/* ── LUMINARIE ── */
.lum-tier{background:rgba(255,210,50,.07);border:1px solid rgba(255,210,50,.2);padding:1.5rem;text-align:center;position:relative;cursor:pointer;transition:all .2s}
.lum-tier:hover{border-color:rgba(255,210,50,.5);background:rgba(255,210,50,.12)}
.lum-tier .lt-ico{font-size:1.8rem;margin-bottom:.5rem}
.lum-tier .lt-nome{font-family:'Playfair Display',serif;font-size:1.1rem;color:#fff;font-weight:700;margin-bottom:.25rem}
.lum-tier .lt-pz{font-family:'Playfair Display',serif;font-size:1.6rem;color:rgba(255,210,50,.9);font-weight:700;margin-bottom:.6rem}
.lum-tier .lt-desc{font-size:.72rem;color:rgba(255,255,255,.5);line-height:1.5}
.lum-top{position:absolute;top:0;right:0;background:rgba(255,210,50,.8);color:#070f1c;font-size:.52rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:.2rem .6rem}


/* Programma home: elenco scorrevole senza alterare la grafica */
.programma-scrollbox {
  max-height: 620px;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 0 8px 4px 0;
  margin: 0 auto 1.6rem;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}
.programma-scrollbox::-webkit-scrollbar {
  width: 8px;
}
.programma-scrollbox::-webkit-scrollbar-track {
  background: rgba(26,51,82,.06);
}
.programma-scrollbox::-webkit-scrollbar-thumb {
  background: rgba(201,148,58,.55);
  border-radius: 8px;
}
.programma-scrollbox::-webkit-scrollbar-thumb:hover {
  background: rgba(201,148,58,.85);
}
@media(max-width:600px){
  .programma-scrollbox {
    max-height: 68vh;
    padding-right: 4px;
  }
}

/* ── Gallery uniformità foto ── */
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.8rem}
.gallery-grid .gitem{position:relative;aspect-ratio:4/3;overflow:hidden;background:#0a0f1a;cursor:pointer}
.gallery-grid .gitem img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.gallery-grid .gitem:hover img{transform:scale(1.05)}
.gallery-grid .gcap{position:absolute;left:0;right:0;bottom:0;padding:.5rem .7rem;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);color:#fff;font-size:.72rem;line-height:1.3}
/* Uniforma tutte le sezioni galleria esistenti */
.gal-grid,.photo-grid,.foto-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.8rem}
.gal-grid > div,.photo-grid > div,.foto-grid > div,
.gal-grid > a,.photo-grid > a,.foto-grid > a{aspect-ratio:4/3;overflow:hidden;position:relative}
.gal-grid img,.photo-grid img,.foto-grid img{width:100%;height:100%;object-fit:cover;display:block}
/* Portatori gallery */
[id="portatori"] .rv > div[style*="aspect-ratio"]{aspect-ratio:4/3!important}
/* Prefesta gallery */
.prefesta-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.7rem}
.prefesta-gallery-grid > div{aspect-ratio:4/3;overflow:hidden;position:relative;background:#0a0f1a}
.prefesta-gallery-grid > div img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.prefesta-gallery-grid > div:hover img{transform:scale(1.04)}

/* --- Correzioni leggere sponsor/gallery senza cambio layout generale --- */
.spon-item{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.35rem .9rem;min-height:70px;background:rgba(255,255,255,.025);border:1px solid rgba(201,148,58,.10);}
.spon-tier-label{display:block;font-size:.52rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgba(201,148,58,.72);line-height:1.1;white-space:nowrap;}
.spon-main{background:rgba(201,148,58,.10);border-color:rgba(201,148,58,.40);}
.spon-gold{background:rgba(201,148,58,.07);border-color:rgba(201,148,58,.30);}
.sponsor-card .sp-tier{font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:.55rem;}
.sponsor-card.sponsor-main{border-color:rgba(201,148,58,.55);background:rgba(201,148,58,.08);grid-column:span 2;}
.sponsor-card.sponsor-gold{border-color:rgba(201,148,58,.42);background:rgba(201,148,58,.055);}
.sponsor-card.sponsor-silver{border-color:rgba(201,148,58,.28);}
.gas .gst .gc{display:flex!important;}
.gas .gst img{display:block!important;opacity:1!important;}
@media(max-width:700px){.sponsor-card.sponsor-main{grid-column:span 1}.gas .gst{grid-template-columns:1fr 1fr!important}.gas .gst .gc:nth-child(4){display:flex!important}}


/* ===== PATCH SPONSOR 2026 - integrazione sicura =====
   Migliora leggibilità loghi/nomi e fallback immagini senza modificare layout generale. */
.spon-logo{filter:none!important;background:transparent!important}
.spon-name{color:#fff!important;text-shadow:0 1px 3px rgba(0,0,0,.55);font-weight:900!important}
.sp-card-main .sp-logo-box,
.sp-card-gold .sp-logo-box,
.sp-card-silver .sp-logo-box,
.sp-card-base .sp-logo-box{background:#fff!important;box-shadow:inset 0 0 0 1px rgba(0,0,0,.04)}
.sp-card-main .sp-logo-box img,
.sp-card-gold .sp-logo-box img,
.sp-card-silver .sp-logo-box img,
.sp-card-base .sp-logo-box img{filter:none!important;object-fit:contain!important}
.sp-nome-main,.sp-nome-gold,.sp-nome-silver,.sp-nome-base{color:#fff!important;text-shadow:0 1px 4px rgba(0,0,0,.55)}
.sp-ico-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1;color:#0d1f33}
@media(max-width:560px){.spon-name{max-width:105px}.spon-logo.sz-main{height:46px}.spon-logo.sz-gold{height:38px}}
/* ===== FINE PATCH SPONSOR 2026 ===== */



/* === SC2026 sponsor redesign conservativo: riguarda solo la sezione sponsor === */
#sponsor-home.sp-section{background:radial-gradient(circle at 50% 0%,rgba(201,148,58,.18),rgba(8,15,28,0) 34%),linear-gradient(180deg,#07111f 0%,#0b1829 100%)!important;padding:5.2rem 1.25rem!important;position:relative;overflow:hidden;color:#fff!important;}
#sponsor-home .container{max-width:1120px;margin:0 auto!important;}
#sponsor-home .slbl{font-family:Montserrat,Arial,sans-serif!important;font-size:.68rem!important;font-weight:800!important;letter-spacing:.24em!important;text-transform:uppercase!important;color:#d8b05c!important;}
#sponsor-home .stit{font-family:'Playfair Display',Georgia,serif!important;color:#fff!important;text-shadow:0 8px 24px rgba(0,0,0,.35)!important;line-height:.95!important;margin:0!important;}
#sponsor-home .stit em{color:#d95335!important;font-style:italic!important;text-shadow:none!important;}
#sponsor-home p{color:rgba(255,255,255,.70)!important;}
#sponsor-home a{color:inherit;text-decoration:none!important;}
#sponsor-home .sp-tier-hd{margin:2.2rem 0 1.15rem!important;text-align:center!important;}
#sponsor-home .sp-tier-hd span{display:inline-flex!important;align-items:center!important;gap:.45rem!important;border-radius:999px!important;background:rgba(255,255,255,.08)!important;color:#f2d58c!important;border:1px solid rgba(242,213,140,.34)!important;padding:.48rem 1.05rem!important;font-family:Montserrat,Arial,sans-serif!important;font-size:.68rem!important;font-weight:900!important;letter-spacing:.13em!important;text-transform:uppercase!important;box-shadow:0 10px 25px rgba(0,0,0,.18)!important;}
#sponsor-home .sp-grid-main,#sponsor-home .sp-grid-gold,#sponsor-home .sp-grid-silver,#sponsor-home .sp-grid-base{display:grid!important;gap:1.15rem!important;margin-left:auto!important;margin-right:auto!important;}
#sponsor-home .sp-grid-main{grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr))!important;max-width:1040px!important;margin-bottom:2.4rem!important;}
#sponsor-home .sp-grid-gold{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))!important;max-width:1040px!important;margin-bottom:2.2rem!important;}
#sponsor-home .sp-grid-silver{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))!important;max-width:1040px!important;margin-bottom:2rem!important;}
#sponsor-home .sp-grid-base{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))!important;max-width:1040px!important;margin-bottom:1.6rem!important;}
#sponsor-home .sp-card-main,#sponsor-home .sp-card-gold,#sponsor-home .sp-card-silver,#sponsor-home .sp-card-base{position:relative!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;text-align:center!important;text-decoration:none!important;border-radius:22px!important;background:linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.045))!important;border:1px solid rgba(255,255,255,.13)!important;box-shadow:0 18px 50px rgba(0,0,0,.22)!important;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease!important;}
#sponsor-home .sp-card-main:hover,#sponsor-home .sp-card-gold:hover,#sponsor-home .sp-card-silver:hover,#sponsor-home .sp-card-base:hover{transform:translateY(-4px)!important;border-color:rgba(242,213,140,.45)!important;box-shadow:0 22px 60px rgba(0,0,0,.32)!important;}
#sponsor-home .sp-card-main{padding:2rem!important;border-color:rgba(217,83,53,.48)!important;min-height:300px!important;}
#sponsor-home .sp-card-main:before{content:""!important;position:absolute!important;inset:0 0 auto 0!important;height:5px!important;background:linear-gradient(90deg,#d95335,#f0c96a,#d95335)!important;}
#sponsor-home .sp-card-gold{padding:1.55rem!important;border-color:rgba(240,201,106,.42)!important;min-height:250px!important;}
#sponsor-home .sp-card-silver{padding:1.3rem!important;min-height:215px!important;}
#sponsor-home .sp-card-base{padding:1rem!important;min-height:150px!important;}
#sponsor-home .sp-logo-box{width:100%!important;background:#fff!important;border-radius:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:1rem!important;margin:0 auto 1rem!important;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06),0 8px 20px rgba(0,0,0,.18)!important;overflow:hidden!important;}
#sponsor-home .sp-card-main .sp-logo-box{height:170px!important;max-width:460px!important;}
#sponsor-home .sp-card-gold .sp-logo-box{height:135px!important;max-width:320px!important;}
#sponsor-home .sp-card-silver .sp-logo-box{height:105px!important;max-width:260px!important;}
#sponsor-home .sp-card-base .sp-logo-box{height:78px!important;max-width:200px!important;}
#sponsor-home .sp-logo-box img{display:block!important;max-width:100%!important;width:auto!important;height:auto!important;object-fit:contain!important;filter:none!important;opacity:1!important;}
#sponsor-home .sp-card-main .sp-logo-box img{max-height:145px!important;}
#sponsor-home .sp-card-gold .sp-logo-box img{max-height:115px!important;}
#sponsor-home .sp-card-silver .sp-logo-box img{max-height:88px!important;}
#sponsor-home .sp-card-base .sp-logo-box img{max-height:62px!important;}
#sponsor-home .sp-ico-fallback{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;font-size:2.4rem!important;color:#0d1f33!important;background:#fff!important;}
#sponsor-home .sp-nome-main,#sponsor-home .sp-nome-gold,#sponsor-home .sp-nome-silver,#sponsor-home .sp-nome-base{font-family:Montserrat,Arial,sans-serif!important;color:#fff!important;text-align:center!important;text-decoration:none!important;text-shadow:0 2px 8px rgba(0,0,0,.45)!important;line-height:1.18!important;margin:.15rem auto!important;max-width:100%!important;overflow-wrap:anywhere!important;}
#sponsor-home .sp-nome-main{font-size:1.55rem!important;font-weight:900!important;letter-spacing:.01em!important;}
#sponsor-home .sp-nome-gold{font-size:1.18rem!important;font-weight:900!important;}
#sponsor-home .sp-nome-silver{font-size:1rem!important;font-weight:850!important;}
#sponsor-home .sp-nome-base{font-size:.9rem!important;font-weight:850!important;white-space:normal!important;}
#sponsor-home .sp-desc{font-family:Montserrat,Arial,sans-serif!important;font-size:.84rem!important;color:rgba(255,255,255,.72)!important;line-height:1.55!important;margin:.4rem auto 0!important;max-width:540px!important;}
#sponsor-home .sp-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.3rem!important;margin-top:.7rem!important;font-family:Montserrat,Arial,sans-serif!important;font-size:.75rem!important;font-weight:800!important;color:#f0c96a!important;text-decoration:none!important;}
#sponsor-home .sp-badge{position:absolute!important;top:.9rem!important;right:.9rem!important;border-radius:999px!important;background:rgba(217,83,53,.14)!important;border:1px solid rgba(217,83,53,.35)!important;color:#ffd7ca!important;padding:.32rem .65rem!important;font-size:.55rem!important;letter-spacing:.08em!important;font-family:Montserrat,Arial,sans-serif!important;font-weight:900!important;}
.spon-strip{background:#07111f!important;border-top:1px solid rgba(240,201,106,.20)!important;border-bottom:1px solid rgba(240,201,106,.20)!important;}
.spon-label{color:#f0c96a!important;font-weight:900!important;}
.spon-item{min-width:150px!important;padding:.55rem 1.5rem!important;}
.spon-logo{filter:none!important;background:#fff!important;border-radius:10px!important;padding:.22rem!important;box-shadow:0 4px 12px rgba(0,0,0,.18)!important;}
.spon-logo.sz-main{height:58px!important;max-width:150px!important}.spon-logo.sz-gold{height:50px!important;max-width:135px!important}.spon-logo.sz-silver{height:42px!important;max-width:120px!important}.spon-logo.sz-base{height:36px!important;max-width:105px!important}
.spon-name{font-size:.68rem!important;color:#fff!important;font-weight:900!important;text-shadow:0 1px 4px rgba(0,0,0,.55)!important;max-width:145px!important;}
@media(max-width:640px){#sponsor-home.sp-section{padding:3.6rem 1rem!important}#sponsor-home .sp-grid-main,#sponsor-home .sp-grid-gold,#sponsor-home .sp-grid-silver,#sponsor-home .sp-grid-base{grid-template-columns:1fr!important}#sponsor-home .sp-card-main{min-height:260px!important;padding:1.4rem!important}#sponsor-home .sp-card-main .sp-logo-box{height:145px!important}#sponsor-home .sp-card-gold .sp-logo-box{height:118px!important}#sponsor-home .sp-card-silver .sp-logo-box{height:95px!important}#sponsor-home .sp-card-base .sp-logo-box{height:82px!important}#sponsor-home .sp-nome-main{font-size:1.32rem!important}.spon-item{min-width:132px!important;padding:.48rem 1.05rem!important}}


/* =========================================================
   SC2026 - MOBILE CONSERVATIVO
   Non cambia layout desktop né ordine home.
   ========================================================= */
@media(max-width:768px){
  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  *,*::before,*::after{
    box-sizing:border-box!important;
  }

  img,video,iframe,svg,canvas{
    max-width:100%!important;
    height:auto;
  }

  main,section,footer,nav,
  .container,.hcont,.rv,
  .campagna-s,.sp-section,.rgs,.ab-s,.bio-s,.prayer-s,.prog-s,.vol-s,.poll-s,.gallery-s,.contact-s,.collab-s,
  #sponsor-home,#ringraziamenti-ditte,#compaesani-home-link{
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  .collab-s{
    padding-left:0!important;
    padding-right:0!important;
  }

  .collab-s .container{
    width:100%!important;
    max-width:100%!important;
    padding-left:1rem!important;
    padding-right:1rem!important;
  }

  .collab-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:1.2rem!important;
    max-width:100%!important;
  }

  .collab-perks{
    padding-left:1.1rem!important;
    margin-left:0!important;
    max-width:100%!important;
  }

  .collab-perks li{
    overflow-wrap:anywhere!important;
  }

  .table-wrap{
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
}



/* ==========================================================================
   FIX NAV DESKTOP — Santa Cristina 2026
   Obiettivo: evitare taglio/sovrapposizione del menu in alto quando sono attive
   tutte le voci: sponsor, luminarie, lotteria, cornice, donazioni, ecc.
   Non cambia grafica: riduce solo spazi, impedisce il ritorno a capo e usa
   hamburger su larghezze intermedie dove il menu completo non può stare.
   ========================================================================== */
@media (min-width:601px){
  nav{
    padding:0 clamp(.55rem,1vw,1.15rem)!important;
    gap:clamp(.35rem,.75vw,.9rem)!important;
    overflow:visible!important;
  }
  .nl{
    flex:0 1 clamp(138px,10vw,205px)!important;
    min-width:128px!important;
    max-width:205px!important;
    font-size:clamp(.78rem,.82vw,1.02rem)!important;
    line-height:1.08!important;
    white-space:normal!important;
  }
  .nm{
    flex:1 1 auto!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:clamp(.18rem,.42vw,.68rem)!important;
    flex-wrap:nowrap!important;
    overflow:visible!important;
  }
  .nm li{
    flex:0 1 auto!important;
    min-width:0!important;
  }
  .nm a{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:36px!important;
    padding:0 .08rem!important;
    white-space:nowrap!important;
    font-size:clamp(.54rem,.52vw,.68rem)!important;
    letter-spacing:.03em!important;
    line-height:1.05!important;
    text-align:center!important;
  }
  .nm a.nc{
    padding:.42rem clamp(.38rem,.62vw,.82rem)!important;
    min-height:34px!important;
  }
}

@media (min-width:601px) and (max-width:1320px){
  .nm{display:none!important;}
  .ham-btn{display:block!important;}
  nav{height:64px!important;}
  .mob-menu{top:64px!important;}
}

@media (min-width:1321px) and (max-width:1650px){
  .nl{max-width:165px!important;font-size:.82rem!important;}
  .nm{gap:.28rem!important;}
  .nm a{font-size:.56rem!important;letter-spacing:.018em!important;}
  .nm a.nc{padding:.38rem .52rem!important;}
}

@media (min-width:1651px){
  .nm a{font-size:clamp(.6rem,.5vw,.69rem)!important;}
}

/* FIX FUMETTI HOME - immagini intere, senza taglio */
#fumetti .fumetti-grid-home{
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;
  align-items:start!important;
}
#fumetti .fumetto-card-home{
  border-radius:0!important;
}
#fumetti .fumetto-img-home{
  width:100%!important;
  aspect-ratio:auto!important;
  min-height:0!important;
  background:#f6efe5!important;
}
#fumetti .fumetto-img-home img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  object-fit:contain!important;
}
@media(max-width:768px){
  #fumetti .fumetti-grid-home{
    grid-template-columns:1fr!important;
  }
}

/* ========================================================================== 
   FIX MIRATO 14-07-2026 — titolo Lotteria e distribuzione menu desktop
   Nessuna modifica alla resa mobile o al layout delle sezioni.
   ========================================================================== */
#lotteria .stit{
  color:#fff!important;
  text-shadow:0 2px 12px rgba(0,0,0,.35);
}

@media (min-width:1321px){
  .nm{
    justify-content:space-between!important;
    gap:0!important;
  }
}
