/* Homepage entrances share the site's dark palette without loading the 3D scene. */
.ms-primary-nav { min-width: 0; max-width: 100%; }
.ms-primary-nav a { white-space: nowrap; }
.ms-primary-nav .ms-museum-nav { color: #edd096; background: #d9b87512; }
.ms-hero-actions .ms-museum-entry { color: #edd096; border-color: #d9b87566; }
.ms-museum-entry:focus-visible, .ms-museum-club:focus-visible, .ms-museum-nav:focus-visible, .ms-museum-download:focus-visible {
    outline: 2px solid #edd096; outline-offset: 5px;
}
.ms-museum-section {
    scroll-margin-top: 28px;
    display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 48px;
    position: relative; margin: 28px 0 70px; padding: 42px;
    border: 1px solid #d9b87540; border-radius: 24px;
    background: radial-gradient(ellipse at 0 0, #b5822420, transparent 65%), #091218;
}
.ms-museum-icon { color: #edd096; margin-bottom: 20px; }
.ms-museum-kicker { color: #edd096; font-size: 12px; font-weight: 700; letter-spacing: .1em; margin-bottom: 12px; }
.ms-museum-intro h2 { font-family: 'Outfit', sans-serif; font-size: clamp(28px, 3vw, 42px); line-height: 1.15; color: #f7f2e8; margin-bottom: 16px; }
.ms-museum-description { color: #aab9c4; font-size: 16px; line-height: 1.75; max-width: 38ch; }
.ms-museum-clubs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; align-content: center; }
.ms-museum-club {
    display: flex; align-items: center; gap: 12px; min-width: 0; padding: 17px 14px;
    color: #f7f2e8; text-decoration: none; border: 1px solid #ffffff12;
    background: #ffffff03; border-radius: 12px; transition: background .15s, border-color .15s;
}
.ms-museum-club:hover { border-color: #d9b87580; background: #d9b8750c; }
.ms-museum-badge { flex-shrink: 0; }
.ms-museum-badge .team-badge-circle { width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center; border: 1px solid #ffffff26; }
.ms-museum-badge .team-badge-text { color: #fff; font-size: 14px; font-weight: 700; }
.ms-museum-club > span:not(.ms-museum-arrow) { min-width: 0; }
.ms-museum-club strong { display: block; font-size: 15px; overflow-wrap: anywhere; }
.ms-museum-club small { display: block; color: #c3b28f; font-size: 12px; margin-top: 3px; }
.ms-museum-arrow { color: #edd096; margin-inline-start: auto; }
.ms-museum-download { grid-column: 1 / -1; display: flex; align-items: center; justify-content: center; gap: 16px; padding: 18px 24px; border: 1px solid #d9b87566; border-radius: 12px; color: #edd096; background: #d9b87512; font-size: 16px; font-weight: 700; line-height: 1.5; text-align: center; text-decoration: none; }
.ms-museum-download:hover { background: #d9b87522; border-color: #d9b875; }
[dir="rtl"] .ms-museum-arrow { transform: scaleX(-1); }
@media (max-width: 1450px) {
    .ms-header-shell { grid-template-columns: auto 1fr; gap: 8px 20px; padding-block: 12px; }
    .ms-header-shell .header-actions { grid-column: 2; grid-row: 1; justify-self: end; }
    .ms-header-shell .ms-primary-nav { display: flex; grid-column: 1 / -1; grid-row: 2; justify-self: stretch; justify-content: center; overflow-x: auto; }
}
@media (max-width: 900px) {
    .ms-museum-section { grid-template-columns: minmax(0, 1fr); gap: 24px; padding: 28px; }
    .ms-museum-description { max-width: 60ch; }
    .ms-museum-icon { width: 44px; height: 44px; margin-bottom: 10px; }
}
@media (max-width: 600px) {
    .ms-header-shell .ms-primary-nav { justify-content: flex-start; border-radius: 12px; }
    .ms-primary-nav a { padding: 9px 12px; }
    .ms-museum-section { margin-block: 20px 40px; padding: 24px 18px; border-radius: 18px; }
    .ms-museum-clubs { gap: 8px; }
    .ms-museum-club { padding: 14px 10px; gap: 8px; }
    .ms-museum-badge .team-badge-circle { width: 30px; height: 30px; }
    .ms-museum-badge .team-badge-text { font-size: 11px; }
    .ms-museum-club strong { font-size: 13px; }
    .ms-museum-club small { font-size: 11px; }
    .ms-museum-arrow { display: none; }
}
@media (max-width: 360px) { .ms-museum-clubs { grid-template-columns: minmax(0, 1fr); } }
