.jw-language-switcher {
    position: relative;
}

.jw-language-switcher__details {
    position: relative;
}

.jw-language-switcher__summary {
    cursor: pointer;
    list-style: none;
    white-space: nowrap;
    color: inherit;
    font: inherit;
    text-transform: inherit;
}

.jw-language-switcher__summary::-webkit-details-marker {
    display: none;
}

.jw-language-switcher__summary::after {
    content: " ▾";
    font-size: 0.72em;
}

.jw-language-switcher__options {
    position: absolute;
    z-index: 10000;
    top: calc(100% + 0.5rem);
    right: 0;
    min-width: 9rem;
    margin: 0;
    padding: 0.45rem;
    list-style: none;
    color: var(--wp--preset--color--base, #2c2c2c);
    background: var(--wp--preset--color--contrast, #eaeaea);
    border: 1px solid currentColor;
    box-shadow: 0 0.4rem 1.2rem rgb(0 0 0 / 22%);
}

.jw-language-switcher__details:not([open]) .jw-language-switcher__options {
    display: none;
}

.jw-language-switcher__choice {
    display: block;
    width: 100%;
    padding: 0.55rem 0.7rem;
    border: 0;
    color: inherit;
    background: transparent;
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.jw-language-switcher__choice:hover,
.jw-language-switcher__choice:focus-visible,
.jw-language-switcher__choice[aria-pressed="true"] {
    background: rgb(44 44 44 / 10%);
    text-decoration: underline;
}

.jw-language-switcher__choice:focus-visible,
.jw-language-switcher__summary:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

/* Keep the For Composers block visually lighter while preserving its copy. */
.jw-for-composers-title {
    margin-block: 1.2rem 0.35rem;
    font-size: clamp(1.2rem, 1.55vw, 1.45rem);
    line-height: 1.25;
}

.jw-for-composers-title + p {
    margin-block: 0.25rem 0.5rem;
    font-size: 0.92rem;
    line-height: 1.45;
}

.jw-for-composers-title + p + p {
    max-width: 58rem;
    margin-block: 0.45rem 0.65rem;
    font-size: 0.92rem;
    line-height: 1.5;
}

.jw-for-composers-title + p + p + .wp-block-list {
    max-width: 58rem;
    margin-block: 0.35rem 1.1rem;
    padding-inline-start: 1.25rem;
    font-size: 0.9rem;
    line-height: 1.4;
    columns: 2;
    column-gap: 2.25rem;
}

.jw-for-composers-title + p + p + .wp-block-list li {
    margin-block: 0.15rem;
    break-inside: avoid;
}

.jw-toolkit-title {
    margin-block: 1.05rem 0.35rem;
    font-size: clamp(1.2rem, 1.55vw, 1.45rem);
    line-height: 1.25;
}

.jw-toolkit-title + .wp-block-list {
    max-width: 58rem;
    margin-block: 0.35rem 1.1rem;
    padding-inline-start: 1.25rem;
    font-size: 0.9rem;
    line-height: 1.4;
    columns: 2;
    column-gap: 2.25rem;
}

.jw-toolkit-title + .wp-block-list li {
    margin-block: 0.15rem;
    break-inside: avoid;
}

.jw-major-honors-title {
    margin-block: 1.1rem 0.45rem;
    font-size: clamp(1.25rem, 1.65vw, 1.5rem);
    line-height: 1.25;
}

.jw-major-honors-title ~ p,
.jw-major-honors-title ~ .wp-block-list {
    margin-block: 0.38rem;
    font-size: 0.94rem;
    line-height: 1.38;
}

.jw-major-honors-title ~ .wp-block-list li {
    margin-block: 0.1rem;
}

.wp-block-social-links {
    column-gap: 1.8rem !important;
    row-gap: 1.8rem !important;
}

.wp-block-social-links > .wp-social-link {
    margin: 0 !important;
}

.wp-block-social-links .jw-ccc-social-icon {
    display: block;
    width: 1em;
    height: 1em;
    object-fit: contain;
}

.wp-social-link-ccc .wp-block-social-link-anchor {
    padding: 0.25em;
}

.wp-social-link-imdb .wp-block-social-link-anchor svg {
    fill: currentColor;
}

@media (max-width: 782px) {
    .jw-language-switcher__options {
        position: static;
        min-width: 0;
        margin-top: 0.4rem;
        box-shadow: none;
    }

    .jw-for-composers-title + p + p + .wp-block-list {
        columns: 1;
    }

    .jw-toolkit-title + .wp-block-list {
        columns: 1;
    }
}
