.sponsor-section { padding: 48px 0; scroll-margin-top: 100px; }
.sponsor-card {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(240px, 1fr);
    gap: 48px;
    align-items: center;
    padding: clamp(24px, 5vw, 56px);
    border: 1px solid #665138;
    border-radius: 20px;
    background: radial-gradient(ellipse at 100% 0, #33291c, transparent 65%), #131b17;
    color: #f7f4ec;
}
.sponsor-card .sponsor-eyebrow { margin: 0 0 18px; color: #e7bd80; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.12em; }
.sponsor-card h2 { margin: 0 0 20px; color: #fff7e9; font-size: clamp(1.9rem, 4vw, 3.2rem); line-height: 1.08; letter-spacing: -0.04em; text-align: left; }
.sponsor-card p { margin: 0; color: #b9c2bc; font-size: 0.96rem; line-height: 1.7; }
.sponsor-card .sponsor-note { margin-top: 18px; color: #e2d1b4; font-size: 0.83rem; }
.sponsor-action { display: flex; flex-direction: column; align-items: center; gap: 16px; text-align: center; }
.sponsor-cup { font-size: 3.2rem; line-height: 1.2; }
.sponsor-button { display: inline-flex; justify-content: center; align-items: center; gap: 18px; width: 100%; max-width: 310px; padding: 15px 20px; border-radius: 10px; background: #f2cd91; color: #261a0d; font-weight: 750; text-decoration: none; transition: background 150ms ease; }
.sponsor-button:hover { background: #ffe1b0; color: #261a0d; }
.sponsor-button:focus-visible, .sponsor-contact:focus-visible, .sponsor-footer a:focus-visible { outline: 2px solid #f2cd91; outline-offset: 5px; }
.sponsor-action p { max-width: 300px; font-size: 0.8rem; }
.sponsor-contact { color: #e7bd80; font-size: 0.8rem; text-underline-offset: 4px; }
.sponsor-footer { text-align: center; margin: 20px 16px 0; }
.sponsor-footer a { color: #e7bd80; font-size: 0.88rem; text-underline-offset: 4px; }
.home-page .footer-links { flex-wrap: wrap; }
.support-site .sponsor-section { padding-top: 0; padding-bottom: 56px; }
@media (min-width: 801px) and (max-width: 1200px) {
    .home-page .navbar-nav { gap: 14px; }
    .home-page .navbar-nav a { font-size: 0.82rem; }
}
@media (max-width: 680px) {
    .sponsor-card { grid-template-columns: minmax(0, 1fr); gap: 28px; }
    .sponsor-action { align-items: flex-start; text-align: left; }
    .sponsor-cup { font-size: 2.5rem; }
}
