/* Base precedente al restyling social: sezioni e collegamenti concordati */
.main-sponsors-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:16px; }
.main-sponsors-heading h2 { margin:0; color:var(--green-dark); font-size:22px; }
.sponsor-directory-link { color:var(--green); font-size:12px; font-weight:650; }
.main-sponsors-grid>div { display:grid; height:100px; padding:10px 20px; place-items:center; }
.sponsor-site-link { display:flex; flex-direction:column; align-items:center; height:100%; }
.sponsor-name { margin:14px 0 10px; color:var(--green-dark); text-align:center; font-size:18px; }
.sponsor-visit { color:var(--green); font-size:12px; font-weight:650; }
.sponsor-site-link:hover .sponsor-visit { text-decoration:underline; }
@media(max-width:560px) { .main-sponsors-heading { gap:12px; } .main-sponsors-heading h2 { font-size:19px; } .main-sponsors-grid { gap:8px; } .main-sponsors-grid>div { height:76px; padding:6px; } .main-sponsors-grid img { height:64px; } .archive-news-card .news-image { width:100%; height:auto; aspect-ratio:16 / 10; } .archive-news-card .news-image img { width:100%; height:100%; } }

/* Sfondo della fascia iniziale conservato dal restyling */
.home-page .hero { position:relative; background:var(--green-deep); color:white; }
.home-page .hero::before { content:''; position:absolute; inset:0; background:url('../images/avellino26ers-hero-v2.png') center / cover no-repeat; opacity:.16; pointer-events:none; }
.home-page .hero-layout { position:relative; }
.home-page .hero-copy .section-label { color:#c6debb; }
.home-page .hero-lead { color:#dbe5d7; }
.home-page .hero .button-primary { background:#b6d87b; border-color:#b6d87b; color:#052a1d; }
.home-page .hero .button-primary:hover { background:#d1e6ab; border-color:#d1e6ab; }
.home-page .hero .button-secondary { color:white; border-color:#b1c6ad; }
.home-page .hero .button-secondary:hover { background:var(--green-dark); }

/* Locandina integrata con lo sfondo della hero */
.home-page .hero-feature { background:transparent; overflow:visible; }
.home-page .hero-feature img { -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 17%,#000 83%,transparent 100%); mask-image:linear-gradient(to right,transparent 0%,#000 17%,#000 83%,transparent 100%); }
@media(max-width:800px) { .home-page .hero-feature img { -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 9%,#000 91%,transparent 100%); mask-image:linear-gradient(to bottom,transparent 0%,#000 9%,#000 91%,transparent 100%); } }

/* Equilibrio della hero e transizione progressiva tra le texture */
.home-page .hero-layout { grid-template-columns:1fr 1.1fr; min-height:620px; }
.home-page .hero-copy { padding:62px 42px 62px 0; }
.home-page .hero-copy h1 { font-size:clamp(44px,4.6vw,66px); line-height:1.07; letter-spacing:-.045em; margin:24px 0; }
.home-page .hero-lead { max-width:440px; font-size:15px; line-height:1.8; }
.home-page .hero-actions { margin-top:28px; gap:12px; }
.home-page .hero::before { opacity:.11; }
.home-page .hero-feature { min-height:620px; }
.home-page .hero-feature img { -webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.35) 7%,#000 23%,#000 75%,rgba(0,0,0,.55) 90%,transparent 100%); mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.35) 7%,#000 23%,#000 75%,rgba(0,0,0,.55) 90%,transparent 100%); }
.home-page .hero .button { min-height:46px; font-size:10px; letter-spacing:.08em; }
@media(max-width:800px) { .home-page .hero-layout { grid-template-columns:1fr; min-height:0; } .home-page .hero-copy { padding:48px 0 36px; max-width:600px; } .home-page .hero-feature { min-height:0; } .home-page .hero-feature img { height:auto; -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 84%,transparent 100%); mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 84%,transparent 100%); } }
@media(max-width:560px) { .home-page .hero-copy h1 { font-size:44px; } .home-page .hero-lead { font-size:14px; } }

/* Una sola composizione panoramica: nessuna locandina sovrapposta */
.home-page .hero { background:#003921; }
.home-page .hero::before { background-image:url('../images/hero-unified-v1.png'); background-size:100% 100%; background-position:center; opacity:1; }
.home-page .hero-layout { min-height:clamp(520px,33.333vw,680px); grid-template-columns:1fr 1.1fr; }
.home-page .hero-copy { padding:40px 42px 40px 0; }
.home-page .hero-copy h1 { font-size:clamp(44px,4.2vw,62px); }
.home-page .hero-art-space { min-height:0; }
@media(max-width:800px) { .home-page .hero::before { background-image:linear-gradient(to bottom,#003921 0%,#003921 45%,transparent 65%),url('../images/hero-unified-v1.png'); background-size:100% 100%,auto 370px; background-position:center,right bottom; background-repeat:no-repeat; } .home-page .hero-layout { grid-template-columns:1fr; min-height:0; } .home-page .hero-copy { padding:44px 0 24px; } .home-page .hero-art-space { height:370px; } }

/* Main sponsor: layout della precedente sezione partner in fondo alla home */
.home-page .main-sponsors { padding-block:64px; background:white; }
.home-page .main-sponsors .partner-copy .section-label { margin:0; color:var(--green); }
.home-page .main-sponsors-partners { grid-template-columns:repeat(3,minmax(0,1fr)); }
.home-page .main-sponsors-partners .partner-card { min-width:0; padding:20px; gap:24px; }
.home-page .main-sponsors-partners .partner-logo { min-width:0; padding:12px; }
@media(max-width:980px) {
  .home-page .main-sponsors .partner-layout { grid-template-columns:1fr; gap:32px; }
  .home-page .main-sponsors-partners { max-width:none; }
}
@media(max-width:560px) {
  .home-page .main-sponsors { padding-block:40px; }
  .home-page .main-sponsors-partners { grid-template-columns:1fr; }
  .home-page .main-sponsors-partners .partner-card { min-height:190px; }
}

/* Loghi dei main sponsor liberi su fondo bianco */
.home-page .main-sponsors-partners { border:0; }
.home-page .main-sponsors-partners .partner-card { justify-content:center; background:white; border:0; }
.home-page .main-sponsors-partners .partner-logo { background:white; border:0; }

/* Main sponsor nella pagina con tutti gli sponsor */
.sponsor-directory-main { padding:40px 0 0; background:white; }
.sponsor-directory-main h2 { margin:0 0 28px; color:var(--green-dark); font-size:28px; letter-spacing:-.025em; }
.directory-main-logos { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:center; gap:36px; }
.sponsors-page .directory-main-logos { grid-template-columns: repeat(2,minmax(0,1fr)); }
.home-page .main-sponsors-partners { grid-template-columns: repeat(2,minmax(0,1fr)); }
.directory-main-logos img { display:block; width:100%; max-width:280px; height:150px; margin-inline:auto; object-fit:contain; }
@media(max-width:560px) {
  .sponsor-directory-main { padding-top:28px; }
  .directory-main-logos { gap:16px; }
  .directory-main-logos img { height:90px; }
}

/* Calendario ufficiale della prima squadra */
.calendar-leg { margin-top:18px; border:1px solid var(--line); background:white; }
.calendar-leg summary { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:20px 24px; color:var(--green-dark); font-size:20px; font-weight:700; cursor:pointer; }
.calendar-leg summary::after { content:'+'; font-size:24px; }
.calendar-leg[open] summary::after { content:'−'; }
.calendar-leg summary span { margin-left:auto; color:var(--muted); font-size:12px; font-weight:500; }
.calendar-scroll { overflow-x:auto; }
.club-calendar { width:100%; border-collapse:collapse; text-align:left; font-size:13px; }
.calendar-caption { padding:12px 24px; text-align:left; color:var(--muted); font-size:12px; }
.club-calendar th { padding:14px 20px; background:var(--green-dark); color:white; font-size:11px; letter-spacing:.06em; text-transform:uppercase; }
.club-calendar td { padding:18px 20px; border-bottom:1px solid var(--line); line-height:1.55; vertical-align:top; }
.club-calendar tr:last-child td { border-bottom:0; }
.club-calendar td:first-child { width:85px; color:var(--green); font-weight:700; }
.club-calendar td:nth-child(2) { width:140px; white-space:nowrap; }
.club-calendar td:nth-child(3) { width:38%; }
.club-calendar strong { color:var(--green-dark); }
.calendar-vs { display:block; color:var(--muted); font-size:11px; }
.calendar-team { display:flex; align-items:center; gap:10px; min-height:40px; }
.calendar-team img { display:block; flex:0 0 40px; width:40px; height:40px; object-fit:contain; padding:3px; border-radius:6px; background:#fff; }
.calendar-team > span,.calendar-team > strong { min-width:0; overflow-wrap:anywhere; }
.club-calendar .calendar-vs { padding-left:50px; margin:3px 0; }
.club-calendar small { display:block; margin-top:7px; color:var(--green); }
.championship-section .calendar-source { margin:22px 0 0; font-size:12px; }
.calendar-source a { color:var(--green); text-decoration:underline; }
@media(max-width:560px) { .calendar-leg summary { padding:16px; font-size:18px; } .club-calendar { min-width:690px; } .club-calendar th,.club-calendar td { padding:14px; } }

/* Icone social del footer leggibili e centrate */
.footer-social .social-links { gap:10px; }
.footer-social .social-links a { width:36px; height:36px; }
.footer-social .social-links svg { display:block; width:18px; height:18px; flex-shrink:0; }
.footer-social .social-links a:hover { background:white; color:var(--green-deep); }
.footer-social .social-links a:focus-visible { outline:2px solid #b8dc9b; outline-offset:4px; }

/* Presentazioni roster e sponsor dai comunicati del club. */
.player-card-number { display: grid; place-items: center; background: linear-gradient(145deg, #075c36, #10291e); }
.player-card-number strong { position: static; font-size: clamp(4rem, 8vw, 7rem); background: transparent; color: white; }
.player-card-copy a { display: inline-block; margin-top: 12px; color: inherit; }
.partner-logo img.beffe-logo { transform: rotate(90deg); max-width: 170px; max-height: 210px; }
.sponsor-grid .partner-card > p { padding: 0 20px 20px; text-align: center; }

/* Texture e pennellate riprese dalla grafica della home. */
main .article-index,main .roster-intro { position: relative; isolation: isolate; overflow: hidden; background-color: #003921; background-image: linear-gradient(90deg, #002b2066, #00392115), url('../images/hero-unified-v1.png'); background-position: center, left center; background-size: cover, max(240%, 1100px) auto; background-repeat: no-repeat; color: white; border-bottom: 1px solid #426c39; }
main .article-index::before,main .roster-intro::before { content: none; }
main .article-index::after,main .roster-intro::after { content: none; }
main .article-index h1,main .roster-intro h1 { color: #fff; text-shadow: 0 2px 18px #00241855; }
main .article-index .section-label,main .roster-intro .section-label { color: #c9e49d; }
main .article-index > .site-container > p:not(.section-label),main .roster-intro > .site-container > p:not(.section-label) { color: #e3eddb; }
main .roster-intro { padding: 44px 0 38px; }
main .roster-intro h1 { margin: 12px 0 0; font-size: clamp(42px,5vw,64px); }
.roster-directory { padding-top: 40px; }
.news-page .news-masthead { padding: 44px 0 38px; }
.news-page .news-masthead h1 { margin-bottom: 0; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }

/* Sponsor: solo loghi, con spazi e dimensioni uniformi. */
.sponsors-page .sponsor-directory-main { padding: 48px 0 0; }
.sponsors-page .directory-main-logos { gap: 24px; }
.sponsors-page .directory-main-logos > img { max-width: none; height: 205px; padding: 30px; background: #fff; border: 1px solid #e0e6dc; border-radius: 8px; }
.sponsors-page .sponsor-directory { padding: 32px 0 80px; background: #fff; }
.sponsors-page .sponsor-directory-main { padding-bottom: 40px; background: #f3f6ee; border-bottom: 1px solid #dce5d5; }
.sponsors-page .sponsor-directory { padding-top: 42px; }
.sponsors-page .sponsor-tier-title { display: flex; align-items: center; gap: 14px; margin: 0 0 28px; color: #034832; font-size: 24px; font-weight: 750; letter-spacing: -.025em; }
.sponsors-page .sponsor-tier-title::before { content: ""; width: 5px; height: 25px; background: #78bd42; border-radius: 2px; }
.sponsors-page #official-sponsors-title::before { background: #034832; }
.sponsors-page .sponsor-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; border: 0; }
.sponsors-page .sponsor-grid .partner-card { display: grid; min-height: 205px; padding: 22px; background: white; border: 1px solid #e0e6dc; border-radius: 8px; box-shadow: 0 4px 18px #16312705; transition: border-color .2s, box-shadow .2s, transform .2s; }
.sponsors-page .sponsor-grid .partner-card:hover { border-color: #a6bf96; box-shadow: 0 10px 28px #16312712; transform: translateY(-3px); }
.sponsors-page .sponsor-site-link { display: grid; place-items: center; width: 100%; height: 100%; }
.sponsors-page .sponsor-grid .partner-logo { display: grid; place-items: center; height: 160px; min-height: 0; padding: 10px; border: 0; background: white; }
.sponsors-page .sponsor-grid .partner-logo img { width: 100%; max-width: 270px; height: 140px; object-fit: contain; }
.sponsors-page .sponsor-grid .sponsor-logo-catino img { width: 145px; height: 145px; border-radius: 50%; }
.sponsors-page .sponsor-grid .sponsor-logo-beffe img { position: static; width: 145px; height: 200px; max-width: none; transform: rotate(90deg); }
.sponsors-page .sponsor-grid .sponsor-logo-beffe { position: relative; padding: 0; }
.sponsors-page .sponsor-grid .sponsor-logo-beffe img { position: absolute; top: 50%; left: 50%; width: 190px; height: 285px; transform: translate(-50%, -50%) rotate(90deg); }
@media(max-width: 760px) { .sponsors-page .sponsor-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; } .sponsors-page .directory-main-logos { gap: 12px; } .sponsors-page .directory-main-logos > img { height: 145px; padding: 15px; } }
@media(max-width: 480px) { .sponsors-page .sponsor-grid { gap: 12px; } .sponsors-page .sponsor-grid .partner-card { padding: 10px; min-height: 150px; } .sponsors-page .sponsor-grid .partner-logo { height: 130px; padding: 5px; } .sponsors-page .sponsor-grid .partner-logo img { height: 110px; } .sponsors-page .sponsor-grid .sponsor-logo-catino img { width: 110px; height: 110px; } .sponsors-page .sponsor-grid .sponsor-logo-beffe img { width: 110px; height: 145px; } .sponsors-page .directory-main-logos { grid-template-columns: 1fr; } .sponsors-page .directory-main-logos > img { max-width: 100%; height: 170px; } }
@media(prefers-reduced-motion: reduce) { .sponsors-page .sponsor-grid .partner-card { transition: none; } .sponsors-page .sponsor-grid .partner-card:hover { transform: none; } }
.footer-legal { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-block: 18px 22px; border-top: 1px solid #ffffff1f; color: #d4dfd3; font-size: 12px; }
.footer-legal nav { display: flex; flex-wrap: wrap; gap: 20px; }
.footer-legal a:hover { color: #c6e89e; }
.site-credit strong { color: #c6e89e; letter-spacing: .08em; }
.news-load-more { display: flex; justify-content: center; margin-top: 36px; }
.news-filters { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 32px; }
.news-filters button { padding: 12px 22px; border: 1px solid #cdd9c7; border-radius: 4px; background: white; color: #034832; font: inherit; font-size: 13px; font-weight: 650; cursor: pointer; }
.news-filters button[aria-pressed="true"] { background: #034832; border-color: #034832; color: white; }
.news-filters button:hover { border-color: #08714d; }
.news-filters button:focus-visible { outline: 3px solid #78bd42; outline-offset: 3px; }
.news-load-more button { cursor: pointer; font-family: inherit; }
.news-load-more button[hidden] { display: none; }
.news-published { display: block; margin: 8px 0 12px; color: #69736d; font-size: 12px; letter-spacing: 0; text-transform: none; }
.home-news { background: #f5f6f1; }
.home-news-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 32px; }
.home-news-heading h2 { margin: 0; color: #034832; font-size: clamp(34px,4vw,48px); letter-spacing: -.04em; }
.home-news-heading > a { color: #08714d; font-size: 13px; font-weight: 700; }
.home-news-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px; }
.home-story { min-width: 0; background: #fff; border-radius: 5px; overflow: hidden; border: 1px solid #e0e6da; }
.home-story > a { display: flex; flex-direction: column; height: 100%; }
.home-story-image { height: 290px; padding: 14px; background: #eaf0e2; overflow: hidden; }
.home-story-image img { width: 100%; height: 100%; object-fit: contain; transition: transform .25s ease; }
.home-story a:hover .home-story-image img { transform: scale(1.025); }
.home-story-copy { position: relative; padding: 24px 24px 30px; flex: 1; }
.home-story-meta { display: flex; flex-wrap: wrap; gap: 8px 14px; font-size: 11px; color: #69736d; }
.home-story-meta span { color: #08714d; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.home-story-copy h3 { margin: 14px 22px 0 0; color: #034832; font-size: 23px; line-height: 1.2; letter-spacing: -.025em; }
.home-story-arrow { position: absolute; right: 18px; bottom: 25px; color: #08714d; font-size: 22px; }
@media(max-width: 800px) { .home-news-grid { gap: 16px; } .home-story-copy { padding: 18px; } .home-story-copy h3 { font-size: 20px; } .home-story-image { height: 235px; padding: 8px; } }
@media(max-width: 620px) { .home-news-grid { grid-template-columns: 1fr; } .home-story > a { display: grid; grid-template-columns: 120px minmax(0,1fr); } .home-story-image { height: 165px; } .home-story-copy h3 { font-size: 19px; } .home-story-meta { font-size: 10px; gap: 6px; } .home-story-arrow { bottom: 12px; } }
@media(prefers-reduced-motion: reduce) { .home-story-image img { transition: none; } }
.news-archive .archive-news-card[hidden] { display: none !important; }
.sponsor-press-logo { display: grid; place-items: center; width: 100%; height: 100%; min-height: 220px; background: #fff; overflow: hidden; padding: 32px; }
.sponsor-press-logo img { display: block; width: 100%; max-width: 340px; height: 165px; object-fit: contain; }
.article-sponsor-figure .sponsor-press-logo { min-height: 340px; border: 1px solid #e0e6dc; }
.article-sponsor-figure .sponsor-press-logo img { height: 230px; }
.sponsor-press-logo.sponsor-news-beffe img { width: 190px; height: 300px; max-width: none; transform: rotate(90deg); }
.news-image .sponsor-press-logo.sponsor-news-beffe img { width: 165px; height: 260px; }
.criscitiello-name { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 8px; min-height: 160px; text-align: center; padding: 20px; }
.criscitiello-name span { color: #424b35; font-size: 14px; font-weight: 700; text-transform: uppercase; }
.criscitiello-name strong { color: #253e29; font-size: clamp(20px,2.2vw,30px); line-height: 1.15; }
.sponsors-page .agape-logo-window { position: relative; width: 100%; max-width: 270px; aspect-ratio: 3 / 1; overflow: hidden; background: white; }
.sponsors-page .sponsor-grid .agape-logo-window img { position: absolute; width: 135%; max-width: none; height: auto; top: -115%; left: -17.5%; }
.sponsors-page .criscitiello-logo-window { position: relative; width: 100%; max-width: 280px; aspect-ratio: 3 / 1; overflow: hidden; }
.sponsors-page .sponsor-grid .criscitiello-logo-window img { position: absolute; width: 120%; max-width: none; height: auto; top: -120%; left: -10%; }
.sponsors-page .agape-logo-window { aspect-ratio: 3.8 / 1; }
.sponsors-page .sponsor-grid .agape-logo-window img { top: -145%; }
.sponsors-page .criscitiello-logo-window { aspect-ratio: 3.4 / 1; }
.sponsors-page .sponsor-grid .criscitiello-logo-window img { top: -108%; }
.sponsors-page .sponsor-grid .partner-card { height: 230px; min-height: 230px; padding: 20px; align-content: center; }
.sponsors-page .sponsor-grid .partner-logo { width: 100%; height: 160px; }
.sponsors-page .sponsor-grid .sponsor-site-link { grid-template-rows: 160px 30px; align-content: center; }
.sponsors-page .sponsor-grid .sponsor-go { padding-top: 6px; text-align: center; }
.sponsors-page .sponsor-grid .partner-card:not(:has(.sponsor-site-link)) { padding-bottom: 50px; }
@media(max-width: 540px) {
 .sponsors-page .sponsor-grid .partner-card { height: 180px; min-height: 180px; padding: 10px; }
 .sponsors-page .sponsor-grid .partner-logo { height: 130px; }
 .sponsors-page .sponsor-grid .sponsor-site-link { grid-template-rows: 130px 24px; }
 .sponsors-page .sponsor-grid .partner-card:not(:has(.sponsor-site-link)) { padding-bottom: 34px; }
}
.news-card .news-image.sponsor-post-preview { height: auto; aspect-ratio: 4 / 5; background: #eef2e5; }
.news-card .sponsor-post-preview img { display: block; width: 100%; height: 100%; object-fit: contain; }
.sponsor-post-figure img { display: block; width: 100%; height: auto; }
.site-footer .footer-main { padding-block: 36px; }
.site-footer .footer-main > nav { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 14px 22px; max-width: 440px; }
.site-footer .footer-bottom { min-height: 55px; gap: 16px; }
.site-footer .footer-bottom .site-credit { font-size: 11px; text-transform: none; letter-spacing: 0; color: #d4dfd3; }
@media(max-width: 800px) { .site-footer .footer-main > nav { justify-content: flex-start; } }
.sponsors-page .main-sponsor-tile { display: grid; place-items: center; min-height: 205px; padding: 30px; background: white; border: 1px solid #e0e6dc; border-radius: 8px; }
.sponsors-page .main-sponsor-logo { width: 100%; max-width: 280px; border: 0; background: white; }
.sponsors-page .main-sponsor-logo img { display: block; width: 100%; height: auto; max-height: 150px; object-fit: contain; border: 0; padding: 0; }
.sponsors-page .main-sponsor-logo img[src*="gennaro"] { clip-path: inset(1px 2px 2px); }
.sponsors-page .sponsor-grid .partner-logo { border: 0; box-shadow: none; }
.sponsors-page .sponsor-site-link { align-content: center; }
.sponsors-page .sponsor-go { display: block; padding-top: 12px; font-size: 12px; font-weight: 650; color: #08714d; }
.sponsors-page .sponsor-site-link:hover .sponsor-go { text-decoration: underline; text-underline-offset: 3px; }
.sponsors-page .sponsor-grid .partner-card { justify-content: stretch; }
.sponsors-page .sponsor-grid .sponsor-logo-beffe { display: flex; align-items: center; justify-content: center; width: 100%; overflow: hidden; }
.sponsors-page .sponsor-grid .sponsor-logo-beffe img { position: static; inset: auto; display: block; flex: 0 0 auto; width: 205px; height: 300px; max-width: none; object-fit: contain; transform: rotate(90deg); }
@media(max-width: 540px) { .sponsors-page .sponsor-grid .sponsor-logo-beffe img { width: 150px; height: 205px; } }
@media(max-width: 760px) { .sponsors-page .main-sponsor-tile { min-height: 145px; padding: 18px; } }
.legal-content { max-width: 860px; line-height: 1.8; }
.legal-content h2 { margin-top: 30px; font-size: 24px; color: var(--green-dark); }
.legal-content a { text-decoration: underline; color: var(--green); }
.legal-draft { padding: 20px; border: 1px solid #d8bd71; background: #fff8e7; margin-bottom: 30px; }
@media(max-width: 540px) { .footer-legal { align-items: flex-start; flex-direction: column; gap: 14px; } .sponsors-page .sponsor-grid .sponsor-logo-beffe img { width: 140px; height: 180px; } }
