.sph-wrapper { margin-bottom: 50px; font-family: inherit; }
        .sph-tier-section { margin-bottom: 50px; }
        .sph-tier-title { text-align: center; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 30px; font-weight: 700; color: #222; position: relative; padding-bottom: 15px; }
        .sph-tier-title::after { content: ""; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 60px; height: 3px; background-color: #222; }
        
        .sph-grid { display: grid; gap: 20px; align-items: center; justify-content: center; }
        
        /* Pääsponsorien ruudukko - isommat laatikot (n. 3-4 vierekkäin desktopilla) */
        .sph-grid-paasponsori { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 25px; }
        
        /* Normisponsorien ruudukko - pienemmät laatikot (n. 5-7 vierekkäin desktopilla) */
        .sph-grid-sponsori { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 15px; }
        
        /* Logolaatikon tyylit - TASAKORKUISET RIVIT! */
        .sph-card { 
            background: #ffffff; 
            border: 1px solid #eaeaea; 
            border-radius: 8px; 
            aspect-ratio: 3 / 2; /* Lukitsee laatikon suhteet */
            display: flex; 
            align-items: center; 
            justify-content: center; 
            padding: 20px; 
            transition: all 0.2s ease;
            box-shadow: 0 2px 8px rgba(0,0,0,0.02);
        }
        
        .sph-card:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(0,0,0,0.08); border-color: #ddd; }
        
        .sph-logo-link { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; text-decoration: none; }
        
        /* Logon pakottaminen laatikon sisälle siististi */
        .sph-logo-img { 
            max-width: 100%; 
            max-height: 100%; 
            object-fit: contain; /* Pitää mittasuhteet, ei leikkaa, mahtuu laatikkoon */
            mix-blend-mode: multiply; /* Piilottaa valkoiset taustat logosta jos sivulla on eri taustaväri */
        }
        
        .sph-no-logo { color: #888; font-weight: bold; font-size: 0.9em; text-align: center; }