.igs-main-sponsor { margin: 0 0 1.5rem; padding: 1.5rem; border: 1px solid #8996a3; border-radius: 12px; background: #fff; color: #263442; text-align: center; }
.igs-main-sponsor-label { font-size: .8em; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #526170; }
.igs-main-sponsor h2 { margin: .5rem 0; font-size: 1.5em; line-height: 1.3; }
.igs-main-sponsor-logo { max-width: 460px; margin: 1rem auto; padding: 1.25rem; border: 1px dashed #8996a3; border-radius: 8px; font-size: 1.15em; font-weight: 700; color: #465666; }
.igs-main-sponsor .btn { white-space: normal; }
.igs-main-sponsor.igs-main-sponsor-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0; }
.igs-main-sponsor-slot { min-width: 0; padding: 1.5rem; }
.igs-main-sponsor-slot + .igs-main-sponsor-slot { border-left: 1px solid #8996a3; }
@media (max-width: 480px) {
    .igs-main-sponsor.igs-main-sponsor-pair { grid-template-columns: 1fr; }
    .igs-main-sponsor-slot { padding: 1rem; }
    .igs-main-sponsor-slot + .igs-main-sponsor-slot { border-left: 0; border-top: 1px solid #8996a3; }
    .igs-main-sponsor h2 { font-size: 1.25em; }
}
.igs-sponsors { margin: 2rem 0; padding: 2rem; border-radius: 12px; background: #f5f7f9; color: #263442; text-align: center; }
.igs-sponsors h2 { margin-top: 0; font-size: 1.65em; line-height: 1.3; }
.igs-sponsor-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; margin: 2rem 0; }
.igs-sponsor-card { background: #fff; border: 2px dashed #8996a3; border-radius: 10px; padding: 1.5rem 1rem; }
.igs-sponsor-logo { min-height: 90px; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 1.2em; color: #465666; }
.igs-sponsor-free { color: #526170; font-style: italic; margin-bottom: 0; }
.igs-sponsors .btn { white-space: normal; }
.igs-partner-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .75rem; margin: 1.5rem 0 2rem; }
.igs-partner-card { background: #fff; border: 1px dashed #8996a3; border-radius: 8px; padding: 1rem .5rem; font-size: .85em; overflow-wrap: anywhere; }
.igs-partner-logo { min-height: 45px; display: flex; align-items: center; justify-content: center; font-weight: 700; color: #465666; }
@media (max-width: 991px) { .igs-partner-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 480px) { .igs-partner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) { .igs-sponsor-grid { grid-template-columns: 1fr; } .igs-sponsors { padding: 1.5rem 1rem; } }
