
:root{
 --cream:#faf8f4; --ink:#2e2e2e; --red:#b8292f; --green:#2f8f46;
 --gold:#a9792b; --blue:#243f8f; --line:#e6dfd4; --white:#fff; --muted:#6d6a66;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream);line-height:1.62}
a{color:inherit}.wrap{width:min(1160px,92%);margin:auto}
.topbar{background:var(--blue);color:#fff;padding:8px 0;font-size:.92rem}
.header{position:sticky;top:0;z-index:20;background:rgba(255,248,238,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0}
.brand{text-decoration:none;font-weight:800;color:var(--blue);font-size:1.25rem}
nav{display:flex;gap:18px;flex-wrap:wrap}nav a{text-decoration:none;font-weight:700;font-size:.95rem}
.hero{min-height:610px;display:grid;align-items:center;background:
linear-gradient(90deg,rgba(255,248,238,.10),rgba(255,248,238,.03)),
url('../images/copertina-concorso.jpg') center/cover no-repeat;color:#1f1916}
.hero h1{font-size:clamp(2.5rem,6vw,5.4rem);line-height:1.02;margin:0 0 16px;max-width:900px}
.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:#f2d694}
.hero p{font-size:1.25rem;max-width:720px}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-block;padding:13px 20px;border-radius:999px;text-decoration:none;font-weight:800;border:2px solid transparent}
.btn-primary{background:var(--red);color:#fff}.btn-light{background:#fff;color:var(--ink)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:-52px;position:relative}
.stat{background:#fff;border-radius:18px;padding:24px;box-shadow:0 12px 35px rgba(0,0,0,.12);text-align:center}
.stat strong{display:block;color:var(--red);font-size:1.45rem}
.section{padding:78px 0}.section h2{font-size:clamp(2rem,4vw,3.2rem);margin:0 0 12px}
.lead{color:var(--muted);font-size:1.08rem;max-width:780px}
.band-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:34px}
.band-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;display:flex;flex-direction:column;min-height:220px}
.band-card h3{margin:0 0 8px;color:var(--green)}.band-card p{color:var(--muted);flex:1}
.band-card a{margin-top:8px;text-decoration:none;font-weight:800;color:var(--red)}
.event{background:var(--green);color:#fff}.event-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:36px;align-items:center}
.event-box{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:28px}
.columns{display:grid;grid-template-columns:1fr 1fr;gap:34px}
.archive{background:#fff}
.notice{border-left:5px solid var(--gold);background:#fff;padding:18px 20px;border-radius:12px;margin-top:20px}
.footer{background:var(--blue);color:#fff;padding:42px 0}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:30px}
.page{padding:54px 0 80px}.page h1{font-size:clamp(2.2rem,5vw,4rem);line-height:1.08}
.back{text-decoration:none;color:var(--red);font-weight:800}
.rulebook{background:#fff;border:1px solid var(--line);border-radius:18px;padding:32px;margin-top:26px}
.rulebook pre{white-space:pre-wrap;font-family:inherit;font-size:1rem;line-height:1.68;margin:0}
.small{font-size:.92rem;color:var(--muted)}
@media(max-width:920px){.band-grid{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.event-grid,.columns,.footer-grid{grid-template-columns:1fr}nav{display:none}}
@media(max-width:560px){.band-grid,.stats{grid-template-columns:1fr}.hero{min-height:560px}.section{padding:56px 0}}

.hero-overlay{background:rgba(20,20,20,.56);padding:28px 30px;border-radius:22px;max-width:760px;box-shadow:0 12px 35px rgba(0,0,0,.14)}
.hero .eyebrow{color:#fff}
.hero .btn-light{border-color:var(--ink)}
.gold-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
.gold-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}
.gold-card h3{margin-top:0;color:var(--red)}
@media(max-width:760px){
  .gold-grid{grid-template-columns:1fr}
  .hero{background-position:center top}
  .hero-overlay{margin-top:220px}
}

.hero-overlay h1,.hero-overlay p{color:#fff}
.section-title-blue{color:var(--blue)}
.albo-table-wrap{overflow-x:auto;margin-top:28px}
.albo-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line)}
.albo-table th,.albo-table td{border:1px solid var(--line);padding:14px;vertical-align:top;text-align:left}
.albo-table th{background:var(--blue);color:#fff;position:sticky;top:0}
.albo-table tr:nth-child(even) td{background:#fcfbf8}
.albo-intro{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:26px 0}
.albo-intro article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}
.albo-intro h3{margin-top:0;color:var(--blue)}
.feature-photo{width:100%;border-radius:18px;display:block}
.club-link{display:inline-block;margin-top:12px;font-weight:800;color:var(--blue)}
@media(max-width:760px){.albo-intro{grid-template-columns:1fr}.albo-table th,.albo-table td{min-width:220px}}

.club-banner{display:inline-block;margin-top:16px}
.club-banner img{display:block;max-width:100%;height:auto;border-radius:6px}

.logo-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:18px}
.logo-row img{max-height:78px;width:auto;background:#fff;border-radius:10px;padding:6px}
.archive-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:28px}
.archive-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.archive-card img{width:100%;height:420px;object-fit:cover;display:block}
.archive-card .content{padding:20px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px}
.gallery-grid img{width:100%;height:230px;object-fit:cover;border-radius:16px}
@media(max-width:850px){.archive-grid,.gallery-grid{grid-template-columns:1fr}.archive-card img{height:auto}}

.hero .wrap{display:flex;justify-content:flex-end}
.hero-overlay{max-width:620px}
@media(max-width:760px){
  .hero .wrap{justify-content:center}
  .hero{background-position:center}
  .hero-overlay{margin-top:260px}
}

/* V6: testata e home completamente ridisegnate */
.header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line)}
.header-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:12px 0}
.brand-lockup{display:flex;align-items:center;gap:14px;text-decoration:none;min-width:0}
.brand-logo-concorso{width:74px;height:74px;object-fit:contain;border-radius:0;background:transparent;padding:0}
.brand-text{display:flex;flex-direction:column;line-height:1.05}
.brand-text strong{font-size:1rem;color:var(--blue)}
.brand-text small{font-size:1.35rem;color:var(--red);font-weight:800;margin-top:4px}
.brand-logo-them{width:118px;height:76px;object-fit:contain;background:transparent;border-radius:0;padding:0}
.header nav{justify-content:center}

.hero.hero-clean{
  min-height:620px;
  display:flex;
  align-items:center;
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.62) 0%,rgba(0,0,0,.28) 46%,rgba(0,0,0,.08) 100%),
    url('../images/home-palco.jpg');
  background-size:cover;
  background-position:center;
  color:#fff;
}
.hero-content{display:flex;justify-content:flex-start;width:min(1160px,92%)}
.hero-copy{
  max-width:650px;
  background:none;
  box-shadow:none;
  border-radius:0;
  padding:0;
}
.hero-copy .eyebrow{color:#fff;font-weight:800;letter-spacing:.12em}
.hero-copy h1{color:#fff;font-size:clamp(2.6rem,5vw,5.2rem);line-height:1.02;margin:12px 0 18px}
.hero-copy p{color:#fff;font-size:1.25rem;max-width:560px}
.hero-copy .btn-light{background:#fff;color:var(--blue);border-color:#fff}
.logo-row,.hero-overlay{display:none!important}

@media(max-width:980px){
  .header-inner{grid-template-columns:1fr auto}
  .header nav{grid-column:1/-1;display:flex;justify-content:flex-start}
  .brand-logo-them{width:96px;height:64px}
}
@media(max-width:760px){
  .header-inner{grid-template-columns:1fr}
  .brand-logo-them{display:none}
  .header nav{display:none}
  .brand-logo-concorso{width:62px;height:62px}
  .brand-text strong{font-size:.9rem}
  .brand-text small{font-size:1.15rem}
  .hero.hero-clean{min-height:560px;background-position:58% center}
  .hero-content{justify-content:flex-start}
  .hero-copy{max-width:92%}
}

/* V7 - risultati 33ª edizione 2026 */
.btn-outline{background:transparent;color:#fff;border-color:#fff}
.btn-outline:hover{background:#fff;color:var(--blue)}
.results-heading{max-width:850px;margin-bottom:36px}
.results-block{margin-top:46px}
.results-block h2{color:var(--blue);font-size:clamp(1.7rem,3vw,2.5rem)}
.result-awards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:22px}
.result-award-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}
.result-award-card h3{margin:0 0 10px;color:var(--red);font-size:1.05rem}
.result-award-card p{margin:0;line-height:1.7}
.result-category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:22px}
.result-category{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}
.result-category h3{margin:0 0 14px;color:var(--blue);font-size:1.08rem}
.result-places{list-style:none;margin:0;padding:0}
.result-places li{padding:10px 0;border-top:1px solid var(--line)}
.result-places li:first-child{border-top:0}
.honours-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 22px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px 30px}
.honours-grid li{padding:5px 0}
.albo-current td{background:#fff4d8!important;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold)}
.archive-results-visual{height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--blue),#14255c);color:#fff;text-align:center;padding:24px}
.archive-results-visual .archive-year{font-size:5rem;font-weight:900;line-height:1}
.archive-results-visual strong{font-size:1.7rem;margin-top:10px}
.archive-results-visual span:last-child{font-size:1.1rem;margin-top:6px}
.text-link{font-weight:800;color:var(--blue);text-decoration:none}
@media(max-width:850px){
  .result-awards-grid,.result-category-grid,.honours-grid{grid-template-columns:1fr}
  .archive-results-visual{height:260px}
}

.archive-edition-title{margin-top:42px;margin-bottom:8px;font-size:1.55rem;color:var(--blue)}

/* V13 archivio completo */
.year-index{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 30px}
.year-index a{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;text-decoration:none;font-weight:800;color:var(--blue)}
.archive-note{background:#fff8e8;border-left:4px solid var(--gold);padding:18px 20px;border-radius:10px;margin:20px 0 28px;line-height:1.55}
.year-panel{background:#fff;border:1px solid var(--line);border-radius:16px;margin:14px 0;overflow:hidden;box-shadow:0 3px 14px rgba(0,0,0,.035)}
.year-panel summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;font-size:1.15rem;color:var(--blue);font-weight:800}
.year-panel[open] summary{border-bottom:1px solid var(--line)}
.archive-status{font-size:.78rem;font-weight:800;padding:6px 10px;border-radius:999px;background:#eef7ef;color:#32663a}
.year-unavailable .archive-status{background:#f3f3f3;color:#777}
.year-content{padding:4px 24px 28px}
.year-block{margin-top:22px}
.year-block h3{margin:0 0 10px;color:var(--red);font-size:1.15rem}
.year-block ul{margin:0;padding-left:22px;line-height:1.65}
.year-block li{margin:3px 0}
.winner-block{background:#fff9ed;border-radius:12px;padding:16px 18px}
.special-block{background:#f8fafc;border-radius:12px;padding:16px 18px}
.archive-unavailable{margin-top:18px;padding:18px 20px;border-radius:12px;background:#f7f7f7;color:#555}
.archive-unavailable p{margin-bottom:0}
.archive-missing{color:#777;font-style:italic}
@media(max-width:700px){.year-panel summary{align-items:flex-start;flex-direction:column;gap:8px}.year-content{padding:4px 16px 22px}}
