:root {
    --paper: #ffffff;
    --paper-soft: #f4f8fc;
    --ink: #1a3c63;
    --ink-strong: #112b49;
    --muted: #5f7590;
    --paper-rgb: 255, 255, 255;
    --accent-rgb: 22, 58, 103;
    --accent-bright-rgb: 82, 225, 255;
    --ink-rgb: 26, 60, 99;
    --line: rgba(22, 58, 103, 0.12);
    --accent: #163a67;
    --accent-bright: #52e1ff;
    --hero-navy: #071523;
    --hero-navy-soft: #0c2238;
    --surface-tint: #edf4fb;
    --surface-tint-strong: #e2edf8;
    --shadow: 0 22px 70px rgba(7, 28, 54, 0.1);
    --site-header-height: 92px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: calc(var(--site-header-height, 92px) + 18px);
    overflow-x: hidden;
    overflow-x: clip;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body {
    margin: 0;
    font-family: 'Manrope', sans-serif;
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.015), rgba(0, 0, 0, 0) 180px),
        repeating-linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.012) 0,
            rgba(0, 0, 0, 0.012) 1px,
            transparent 1px,
            transparent 42px
        ),
        var(--paper);
    color: var(--ink);
    overflow-x: hidden;
    overflow-x: clip;
    line-height: 1.6;
    position: relative;
    width: 100%;
    min-width: 0;
    touch-action: auto;
    padding-top: var(--site-header-height, 92px);
}

main,
.container,
.hero,
.section,
.site-footer,
.hero-signature {
    max-width: 100%;
    overflow-x: clip;
}

body.menu-open {
    overflow: hidden;
    overscroll-behavior: none;
}

/* Final responsive polish */
.seo-page--show-roberto-carlos-portugal .showcase-intro-band {
    margin-top: 24px;
}

@media (max-width: 640px) {
    .top-header.top-header--campaign .top-header__inner {
        width: 100%;
        min-width: 0;
        position: relative;
        padding-right: 54px;
    }

    .top-header.top-header--campaign::after {
        position: fixed;
        inset: auto;
        top: 27px;
        right: auto;
        left: calc(min(100vw, 390px) - 46px);
        width: 22px;
        height: 16px;
        background: none;
        border-top: 2px solid #6de9ff;
        border-bottom: 2px solid #6de9ff;
        box-shadow: 0 7px 0 #6de9ff;
        opacity: 1;
        z-index: 1001;
    }

    .top-header.top-header--campaign .site-brand--campaign {
        flex: 1 1 auto;
        min-width: 0;
    }

    .top-header.top-header--campaign .site-brand__copy {
        min-width: 0;
    }

    .top-header.top-header--campaign .site-brand--campaign .site-brand__copy span {
        display: none;
    }

    .top-header.top-header--campaign .top-header__quick {
        position: fixed !important;
        top: 15px;
        right: auto;
        left: calc(min(100vw, 390px) - 56px);
        transform: none !important;
        display: block !important;
        width: 42px;
        height: 42px;
        flex: 0 0 auto;
        min-width: 0;
        gap: 6px;
        opacity: 1;
        visibility: visible;
        z-index: 4;
    }

    .top-header.top-header--campaign .top-header__quick::after {
        content: '';
        position: absolute;
        top: 12px;
        right: auto;
        left: 10px;
        width: 22px;
        height: 16px;
        border-top: 2px solid #6de9ff;
        border-bottom: 2px solid #6de9ff;
        box-shadow: 0 7px 0 #6de9ff;
        pointer-events: none;
        z-index: 2;
    }

    .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign {
        display: inline-flex !important;
        position: absolute;
        inset: 0;
        width: 42px;
        height: 42px;
        opacity: 1;
        visibility: visible;
        color: #6de9ff;
        z-index: 3;
    }

    .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign span {
        display: none;
    }

    .top-header.top-header--campaign .top-header__social {
        display: none;
    }

    .top-header.top-header--campaign .top-header__lang {
        display: none;
    }

    .top-header.top-header--campaign .top-header__quick-link {
        display: none !important;
    }

    .hero {
        min-height: 0;
        height: auto;
        padding: 10px 12px 0;
        overflow: visible;
    }

    .hero::after {
        display: none;
    }

    .hero-media {
        position: relative;
        inset: auto;
        min-height: clamp(520px, 76svh, 660px);
        padding: 0;
        border-radius: 0;
        overflow: hidden;
        transform: none !important;
        opacity: 1 !important;
    }

    .hero-media::after {
        background:
            linear-gradient(180deg, rgba(2, 10, 22, 0.08) 0%, rgba(2, 10, 22, 0.05) 38%, rgba(2, 10, 22, 0.62) 100%);
    }

    .hero-mosaic {
        display: block;
        width: 100%;
        max-width: none;
        height: clamp(520px, 76svh, 660px);
    }

    .hero-tile {
        display: none;
    }

    .hero-tile--singer {
        display: block;
        width: 100%;
        height: 100%;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }

    .hero-tile--singer img {
        object-position: 54% center;
        transform: none;
    }

    .hero-content {
        position: absolute;
        inset: auto 18px 28px;
        width: auto;
        max-width: none;
        height: auto;
        margin: 0;
        padding: 0;
        display: block;
        pointer-events: none;
    }

    .hero-content::before,
    .hero-content::after,
    .hero-copy::after {
        display: none;
    }

    .hero-copy {
        width: 100%;
        max-width: none;
        padding: 18px;
        overflow: visible;
        pointer-events: auto;
    }

    .hero-copy::before {
        inset: 0;
        border-radius: 0;
        background: linear-gradient(100deg, rgba(0, 24, 48, 0.9) 0%, rgba(0, 24, 48, 0.72) 62%, rgba(0, 24, 48, 0.42) 100%);
        box-shadow: 0 18px 34px rgba(0, 22, 43, 0.2);
    }

    .hero h1 {
        max-width: none;
        font-size: clamp(2.65rem, 12.8vw, 3.25rem);
        line-height: 0.9;
        overflow-wrap: break-word;
    }

    .hero-copy > p:not(.eyebrow):not(.hero-slogan) {
        max-width: 32rem;
        margin-top: 10px;
        font-size: 0.96rem;
        line-height: 1.45;
    }

    .hero-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
        margin-top: 14px;
        width: 100%;
    }

    .hero-actions .btn {
        width: 100%;
        min-width: 0;
        min-height: 48px;
        padding: 0 16px;
        font-size: 0.8rem;
        letter-spacing: 0.06em;
    }

    .hero-signature {
        margin-top: 12px;
    }

    .event-showcase-poster {
        max-width: min(100%, 356px) !important;
        margin-inline: auto;
        overflow: visible;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero {
        width: min(100%, 390px) !important;
        max-width: 100% !important;
        overflow: hidden;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__content,
    .seo-page--show-roberto-carlos-portugal .showcase-hero__lead {
        max-width: 100%;
        min-width: 0;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__title {
        max-width: 100% !important;
        font-size: clamp(2.45rem, 12vw, 3rem) !important;
        overflow-wrap: break-word;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__meta {
        display: grid;
        grid-template-columns: 1fr;
    }

    .event-showcase-poster__frame img {
        width: 100%;
        height: auto;
        object-fit: contain;
    }

    .event-showcase-hero__copy {
        min-width: 0;
        max-width: min(100%, 390px);
        overflow: hidden;
    }

    .event-showcase-hero__copy h1 {
        max-width: 100%;
        font-size: clamp(2.1rem, 10.5vw, 2.75rem);
        overflow-wrap: break-word;
    }

    .news-filter {
        width: 100%;
        overflow-x: auto;
        flex-wrap: nowrap;
        justify-content: flex-start;
        padding-bottom: 4px;
        scrollbar-width: none;
    }

    .news-filter::-webkit-scrollbar {
        display: none;
    }

    .news-filter__chip {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .news-page--listing .section--news-landing,
    .news-page--category .section--news-landing,
    .news-page--listing .section--news-featured,
    .news-page--listing .section--news-group,
    .news-page--category .section--news-group {
        width: min(100%, 390px) !important;
        max-width: 100% !important;
        overflow: hidden;
    }

    .news-page--listing .section--news-landing h1,
    .news-page--category .section--news-landing h1,
    .news-page--listing .section--news-featured h2,
    .news-page--listing .section--news-group h2,
    .news-page--category .section--news-group h2,
    .news-page--listing .section-lead,
    .news-page--category .section-lead {
        max-width: 100% !important;
        overflow-wrap: break-word;
    }
}

@media (max-width: 390px) {
    .top-header.top-header--campaign .top-header__social {
        display: none;
    }

    .hero-media,
    .hero-mosaic {
        min-height: 560px;
        height: 560px;
    }

    .hero-content {
        inset: auto 14px 20px;
    }

    .hero-copy {
        padding: 16px;
    }
}

@media (max-width: 900px) {
    .event-showcase-hero__copy {
        width: min(100%, 390px) !important;
        max-width: 100% !important;
        min-width: 0;
        overflow: hidden;
    }

    .event-showcase-hero__copy h1 {
        max-width: 100% !important;
        font-size: clamp(1.72rem, 8.8vw, 2.3rem) !important;
        line-height: 1.02;
        overflow-wrap: break-word;
    }

    .event-showcase-date,
    .event-showcase-meta,
    .event-showcase-story {
        max-width: 100%;
    }
}

@media (max-width: 900px) {
    .event-showcase-hero__copy {
        width: min(100%, 390px);
        max-width: 100%;
        min-width: 0;
        overflow: hidden;
    }

    .event-showcase-hero__copy h1 {
        max-width: 100%;
        font-size: clamp(1.72rem, 8.8vw, 2.3rem);
        line-height: 1.02;
        overflow-wrap: break-word;
    }

    .event-showcase-date,
    .event-showcase-meta,
    .event-showcase-story {
        max-width: 100%;
    }
}

body.scroll-locked {
    overflow: hidden;
    overscroll-behavior: none;
}

body.menu-open .top-header {
    z-index: 260;
}

body::before {
    content: '';
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    background:
        radial-gradient(circle at 18% 26%, rgba(19, 74, 138, 0.08), transparent 24%),
        radial-gradient(circle at 82% 22%, rgba(10, 58, 116, 0.075), transparent 26%),
        radial-gradient(circle at 54% 78%, rgba(82, 225, 255, 0.05), transparent 22%),
        linear-gradient(115deg, transparent 18%, rgba(82, 225, 255, 0.04) 30%, transparent 42%, rgba(255, 255, 255, 0.04) 56%, transparent 70%);
    background-size: 140% 140%, 150% 150%, 130% 130%, 200% 200%;
    mix-blend-mode: soft-light;
    filter: blur(10px);
    opacity: 0.22;
    animation: none;
}

.page-aura {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    overflow: hidden;
    background:
        radial-gradient(circle at 16% -6%, rgba(7, 28, 54, 0.11), transparent 24%),
        radial-gradient(circle at 84% -10%, rgba(10, 36, 70, 0.09), transparent 28%),
        linear-gradient(180deg, rgba(8, 34, 67, 0.035), transparent 18%, transparent 82%, rgba(8, 34, 67, 0.035));
}

.page-aura::before,
.page-aura::after {
    content: '';
    position: absolute;
    top: -28vh;
    width: 34vw;
    height: 168vh;
    border-radius: 999px;
    mix-blend-mode: multiply;
}

.page-aura::before {
    left: -14vw;
    background: linear-gradient(
        110deg,
        transparent 12%,
        rgba(7, 32, 61, 0.02) 24%,
        rgba(16, 63, 121, 0.13) 40%,
        rgba(82, 225, 255, 0.16) 50%,
        rgba(16, 63, 121, 0.11) 60%,
        rgba(7, 32, 61, 0.03) 70%,
        transparent 84%
    );
    filter: blur(18px);
    opacity: 0.32;
    transform: rotate(-17deg) translateX(-12vw);
    animation: none;
}

.page-aura::after {
    right: -12vw;
    left: auto;
    width: 31vw;
    background: linear-gradient(
        70deg,
        transparent 14%,
        rgba(6, 30, 60, 0.02) 28%,
        rgba(18, 70, 128, 0.12) 40%,
        rgba(82, 225, 255, 0.18) 50%,
        rgba(18, 70, 128, 0.12) 60%,
        rgba(6, 30, 60, 0.03) 70%,
        transparent 84%
    );
    filter: blur(18px);
    opacity: 0.3;
    transform: rotate(17deg) translateX(14vw);
    animation: none;
}

a {
    color: inherit;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.top-header {
    position: sticky;
    top: 0;
    z-index: 220;
    padding: 14px 24px;
    background: rgba(var(--accent-rgb), 0.92);
    border-bottom: 1px solid rgba(255, 255, 255, 0.14);
    color: #ffffff;
    isolation: isolate;
    overflow: hidden;
    transition: padding 0.24s ease, background 0.24s ease, border-color 0.24s ease, box-shadow 0.24s ease;
}

.top-header.is-scrolled {
    padding-top: 10px;
    padding-bottom: 10px;
    background: rgba(0, 41, 84, 0.95);
    border-bottom-color: rgba(255, 255, 255, 0.18);
    box-shadow: 0 18px 44px rgba(0, 23, 46, 0.16);
}

.top-header__inner {
    width: min(1400px, 100%);
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    position: relative;
    min-height: 48px;
    flex-wrap: nowrap;
    overflow: hidden;
}

.menu-toggle {
    display: none;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 0;
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
    position: relative;
    z-index: 3;
    transition: transform 0.24s ease, background 0.24s ease, border-color 0.24s ease, box-shadow 0.24s ease;
}

.menu-toggle span {
    display: block;
    width: 18px;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
    transition: transform 0.24s ease, opacity 0.24s ease;
}

.menu-toggle:hover,
.menu-toggle:focus-visible {
    transform: translateY(-1px);
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.28);
    box-shadow: 0 14px 28px rgba(0, 24, 54, 0.18);
    outline: none;
}

.menu-toggle.is-open span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
}

.menu-toggle.is-open span:nth-child(2) {
    opacity: 0;
}

.menu-toggle.is-open span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
}

.site-brand {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    min-width: fit-content;
    text-decoration: none;
}

.site-brand__copy,
.site-footer__brand-copy {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.site-brand strong {
    font-size: 0.92rem;
    font-weight: 800;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    color: #ffffff;
}

.site-brand__copy span {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(226, 241, 255, 0.82);
}

.site-brand:hover,
.site-brand:focus-visible {
    transform: translateY(-1px);
    outline: none;
}

.site-brand {
    transition: transform 0.24s ease;
}

.header-nav-shell {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none;
    z-index: 2;
}

.header-nav-shell::-webkit-scrollbar {
    width: 0;
    height: 0;
    display: none;
}

.site-menu {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: nowrap;
    gap: 6px;
    flex: 1 1 auto;
    min-width: 0;
}

.site-menu a,
.social-link,
.footer-action {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.site-menu a {
    padding: 10px 12px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.9);
    text-decoration: none;
    transition: transform 0.24s ease, background 0.24s ease, border-color 0.24s ease, color 0.24s ease, box-shadow 0.24s ease;
    white-space: nowrap;
}

.site-menu a::before,
.social-link::before,
.footer-action::before,
.header-cta::before {
    content: '';
    position: absolute;
    inset: -40% auto -40% -30%;
    width: 32%;
    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.66), transparent);
    transform: translateX(-220%) skewX(-18deg);
    animation: buttonSheen 6.4s linear infinite;
    mix-blend-mode: screen;
    pointer-events: none;
    z-index: 0;
}

.site-menu a:hover,
.site-menu a:focus-visible {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.28);
    color: #ffffff;
    box-shadow: 0 14px 28px rgba(0, 24, 54, 0.18);
    outline: none;
}

.site-menu a.is-active {
    background: rgba(255, 255, 255, 0.18);
    border-color: rgba(255, 255, 255, 0.34);
    color: #ffffff;
    box-shadow: 0 16px 28px rgba(0, 22, 44, 0.2);
}

.header-cta {
    flex: 0 0 auto;
    min-width: max-content;
    padding: 11px 18px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background: linear-gradient(180deg, rgba(115, 191, 255, 0.24), rgba(255, 255, 255, 0.08));
    color: #ffffff;
    text-decoration: none;
    font-size: 0.69rem;
    font-weight: 800;
    letter-spacing: 0.13em;
    line-height: 1;
    text-transform: uppercase;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transition: transform 0.24s ease, background 0.24s ease, border-color 0.24s ease, box-shadow 0.24s ease;
    white-space: nowrap;
}

.header-cta:hover,
.header-cta:focus-visible {
    transform: translateY(-2px);
    background: linear-gradient(180deg, rgba(129, 204, 255, 0.32), rgba(255, 255, 255, 0.12));
    border-color: rgba(255, 255, 255, 0.3);
    box-shadow: 0 16px 30px rgba(0, 24, 54, 0.2);
    outline: none;
}

.site-social {
    display: flex;
    align-items: center;
    gap: 10px;
}

.site-social--desktop {
    flex: 0 0 auto;
}

.site-social--mobile {
    display: none;
    flex: 0 0 auto;
}

.site-social--mobile .social-link {
    width: 40px;
    height: 40px;
}

.site-social--mobile .social-link--instagram {
    background:
        radial-gradient(circle at 30% 28%, rgba(255, 255, 255, 0.24), transparent 36%),
        linear-gradient(180deg, rgba(120, 177, 233, 0.24), rgba(255, 255, 255, 0.08));
    border-color: rgba(255, 255, 255, 0.24);
}

.site-social--mobile .social-link--youtube {
    background:
        radial-gradient(circle at 30% 28%, rgba(255, 255, 255, 0.22), transparent 36%),
        linear-gradient(180deg, rgba(255, 126, 126, 0.24), rgba(255, 255, 255, 0.08));
    border-color: rgba(255, 214, 214, 0.24);
}

.social-link {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    text-decoration: none;
    transition: transform 0.24s ease, background 0.24s ease, border-color 0.24s ease, box-shadow 0.24s ease;
}

.social-link svg {
    position: relative;
    z-index: 1;
    width: 18px;
    height: 18px;
    fill: currentColor;
}

.social-link:hover,
.social-link:focus-visible {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.3);
    box-shadow: 0 14px 28px rgba(0, 24, 54, 0.18);
    outline: none;
}

.hero {
    --hero-header-offset: 0px;
    --hero-header-gap: 0px;
    position: relative;
    z-index: 1;
    height: 88vh;
    min-height: 680px;
    padding-top: 0;
    overflow: hidden;
    isolation: isolate;
    background:
        radial-gradient(circle at top, rgba(var(--accent-rgb), 0.11), transparent 44%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.34) 58%, rgba(255, 255, 255, 0.82) 88%, #ffffff 100%);
}

.hero::after {
    content: '';
    position: absolute;
    inset: auto 0 0;
    height: 18vh;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.22) 58%, rgba(255, 255, 255, 0.72) 100%);
    z-index: 3;
    pointer-events: none;
}

.hero-media {
    position: absolute;
    inset: 0;
    z-index: 1;
    transform: translate3d(0, 0, 0);
    will-change: transform, opacity;
    transition: transform 0.15s linear, opacity 0.15s linear;
    padding: 24px 24px 96px;
}

.hero-media::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(0, 20, 44, 0.18), rgba(0, 20, 44, 0.04) 42%, rgba(255, 255, 255, 0.08) 86%, rgba(255, 255, 255, 0.2) 100%);
    pointer-events: none;
}

.hero-video-shell {
    position: relative;
    z-index: 1;
    width: min(1180px, 100%);
    height: 100%;
    margin: 0 auto;
    overflow: hidden;
    border-radius: inherit;
    background: #081626;
}

.hero-video-shell__poster {
    position: absolute;
    inset: 0;
}

.hero-video-shell__poster img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: 50% 42%;
    filter: saturate(1.03) contrast(1.05) brightness(0.8);
}

.hero-video-shell__embed {
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
    border: 0;
    aspect-ratio: 16 / 9;
    transform: translate(-50%, -50%) scale(1.18);
    pointer-events: none;
    filter: saturate(1.03) contrast(1.08) brightness(0.86);
}

html.ua-lite .hero-video-shell__embed,
html.ua-embedded .hero-video-shell__embed {
    display: none;
}

@media (prefers-reduced-motion: reduce) {
    .hero-video-shell__embed {
        display: none;
    }
}

.hero-mosaic {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1.1fr 0.9fr 1fr 0.95fr;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 14px;
    width: min(1180px, 100%);
    height: 100%;
    margin: 0 auto;
    opacity: 1;
    filter: none;
}

.hero-tile {
    position: relative;
    overflow: hidden;
    border-radius: 0;
    border: 1px solid rgba(255, 255, 255, 0.34);
    box-shadow: 0 22px 60px rgba(0, 23, 46, 0.18);
    background: #dbe7f2;
    transform-origin: center center;
    transform-style: preserve-3d;
    backface-visibility: hidden;
    opacity: 1;
}

.hero-tile::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 15, 34, 0.03), rgba(0, 15, 34, 0.01) 52%, rgba(0, 15, 34, 0.04) 100%);
}

.hero-tile img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
    transform: translate3d(0, 0, 0) scale(1.025);
    filter: saturate(1.05) contrast(1.03) brightness(0.985);
    image-rendering: auto;
    transition: transform 0.18s linear;
    will-change: transform;
}

.hero-tile--singer {
    --hero-intro-angle: -88deg;
    --hero-intro-delay: 0.02s;
    grid-column: 1;
    grid-row: 1 / span 2;
}

.hero-tile--singer img {
    object-position: 54% center;
}

.hero-tile--wide {
    --hero-intro-angle: 88deg;
    --hero-intro-delay: 0.12s;
    grid-column: 2 / span 2;
    grid-row: 1;
}

.hero-tile--wide img {
    object-position: 50% 34%;
}

.hero-tile--drums {
    --hero-intro-angle: -78deg;
    --hero-intro-delay: 0.2s;
    grid-column: 4;
    grid-row: 1;
}

.hero-tile--drums img {
    object-position: 48% 42%;
}

.hero-tile--keys {
    --hero-intro-angle: 82deg;
    --hero-intro-delay: 0.27s;
    grid-column: 2;
    grid-row: 2;
}

.hero-tile--keys img {
    object-position: 56% 40%;
}

.hero-tile--bass {
    --hero-intro-angle: -84deg;
    --hero-intro-delay: 0.34s;
    grid-column: 3 / span 2;
    grid-row: 2;
}

.hero-tile--bass img {
    object-position: 50% 36%;
}

.hero.hero-intro-ready .hero-tile {
    animation: heroTileFlipIn 0.54s cubic-bezier(0.22, 0.92, 0.28, 1) both;
    animation-delay: var(--hero-intro-delay, 0s);
}

.hero.hero-intro-ready .hero-tile img {
    animation: heroTileImageSettle 0.6s cubic-bezier(0.22, 0.92, 0.28, 1) both;
    animation-delay: var(--hero-intro-delay, 0s);
}

.hero-content {
    position: relative;
    z-index: 4;
    max-width: 1180px;
    height: 100%;
    margin: 0 auto;
    padding: clamp(30px, 4vw, 52px) 24px 11vh;
    display: grid;
    align-items: end;
    pointer-events: none;
    isolation: isolate;
}

.hero-content::before,
.hero-content::after {
    content: '';
    position: absolute;
    bottom: -24%;
    width: min(48vw, 620px);
    height: 132%;
    pointer-events: none;
    z-index: 1;
    border-radius: 0;
    filter: blur(10px);
    opacity: 0.58;
}

.hero-content::before {
    left: -14%;
    background:
        radial-gradient(circle at 18% 92%, rgba(39, 131, 255, 0.3), transparent 18%),
        linear-gradient(
            76deg,
            transparent 0%,
            rgba(0, 22, 52, 0.04) 18%,
            rgba(2, 44, 96, 0.2) 32%,
            rgba(7, 76, 158, 0.38) 44%,
            rgba(112, 188, 255, 0.26) 50%,
            rgba(7, 76, 158, 0.3) 57%,
            rgba(2, 44, 96, 0.1) 68%,
            transparent 84%
        );
    transform-origin: bottom left;
    transform: rotate(19deg);
    animation: heroSpotlightLeft 24s ease-in-out infinite;
}

.hero-content::after {
    right: -12%;
    background:
        radial-gradient(circle at 82% 92%, rgba(39, 131, 255, 0.28), transparent 18%),
        linear-gradient(
            104deg,
            transparent 0%,
            rgba(0, 22, 52, 0.04) 18%,
            rgba(2, 44, 96, 0.18) 32%,
            rgba(8, 72, 152, 0.34) 44%,
            rgba(112, 188, 255, 0.24) 50%,
            rgba(8, 72, 152, 0.28) 57%,
            rgba(2, 44, 96, 0.1) 68%,
            transparent 84%
        );
    transform-origin: bottom right;
    transform: rotate(-19deg);
    animation: heroSpotlightRight 26s ease-in-out infinite;
}

.hero-copy {
    max-width: 500px;
    padding: 30px 54px 24px 24px;
    background: none;
    border: 0;
    backdrop-filter: none;
    box-shadow: none;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    opacity: 1;
    transform: none;
    z-index: 2;
}

.hero.hero-intro-ready .hero-copy {
    animation: heroReveal 1.3s 0.25s both cubic-bezier(0.19, 1, 0.22, 1);
}

.hero-copy::before {
    content: '';
    position: absolute;
    inset: -18px -8px -18px -18px;
    background:
        linear-gradient(92deg, rgba(0, 24, 48, 0.52) 0%, rgba(0, 24, 48, 0.34) 38%, rgba(0, 24, 48, 0.14) 68%, rgba(0, 24, 48, 0) 100%);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 0;
    backdrop-filter: blur(1.6px);
    box-shadow: 0 12px 28px rgba(0, 22, 43, 0.1);
    opacity: 1;
}

.hero-copy::after {
    content: '';
    position: absolute;
    inset: -24%;
    background:
        radial-gradient(circle at 82% 16%, rgba(104, 178, 244, 0.08), transparent 22%),
        linear-gradient(120deg, transparent 18%, rgba(140, 203, 255, 0.06) 34%, transparent 52%);
    transform: translateX(-20%);
    opacity: 0.16;
    animation: none;
    pointer-events: none;
}

.hero-copy > * {
    position: relative;
    z-index: 2;
}

.eyebrow {
    margin: 0 0 18px;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.8);
}

.hero h1 {
    margin: 0;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2.18rem, 4.1vw, 3.9rem);
    line-height: 0.98;
    letter-spacing: -0.04em;
    font-weight: 600;
    color: #ffffff;
    text-shadow: 0 10px 30px rgba(0, 23, 46, 0.28);
}

.hero p {
    max-width: 560px;
    margin: 22px 0 0;
    font-size: clamp(1.04rem, 1.8vw, 1.24rem);
    color: rgba(255, 255, 255, 0.92);
    text-shadow: 0 4px 18px rgba(0, 15, 34, 0.28);
}

.hero-slogan {
    max-width: 470px;
    margin-top: 20px;
    font-size: 0.9rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(201, 230, 255, 0.92);
    text-shadow: 0 0 24px rgba(14, 95, 187, 0.28);
}

@media (max-width: 1380px) {
    .top-header {
        padding-left: 18px;
        padding-right: 18px;
    }

    .top-header__inner {
        width: min(1320px, 100%);
        gap: 10px;
    }

    .site-brand strong {
        font-size: 0.88rem;
        letter-spacing: 0.12em;
    }

    .site-brand__copy span {
        font-size: 0.64rem;
    }

    .site-menu a {
        padding: 9px 10px;
        font-size: 0.65rem;
        letter-spacing: 0.11em;
    }

    .header-cta {
        padding: 10px 16px;
        font-size: 0.66rem;
    }

    .social-link {
        width: 38px;
        height: 38px;
    }

    .hero-content {
        padding-top: clamp(28px, 3.8vw, 46px);
    }

    .hero-copy {
        padding-top: 28px;
    }
}

@media (max-width: 1180px) {
    .site-social--desktop {
        display: none;
    }

    .top-header__inner {
        width: min(1260px, 100%);
    }

    .site-menu a {
        padding: 9px 9px;
        font-size: 0.63rem;
        letter-spacing: 0.1em;
    }

    .header-cta {
        padding: 10px 14px;
        font-size: 0.64rem;
        letter-spacing: 0.11em;
    }

    .hero-content {
        padding-top: clamp(24px, 3.5vw, 40px);
    }

    .hero-copy {
        padding-top: 24px;
    }
}

.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 26px;
    pointer-events: auto;
}

.scroll-cue {
    position: absolute;
    left: 24px;
    bottom: 38px;
    z-index: 4;
    font-size: 0.76rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.72);
}

.scroll-cue::after {
    content: '';
    display: block;
    width: 1px;
    height: 78px;
    margin-top: 10px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(255, 255, 255, 0));
    animation: cueDrift 2.2s infinite ease-in-out;
}

.hero-signature {
    position: relative;
    z-index: 6;
    width: min(720px, calc(100% - 104px));
    margin: 12px auto 14px;
    padding: 0 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px 12px;
    text-align: center;
    overflow: hidden;
    overflow: clip;
}

.hero-signature__mark {
    flex: 0 0 auto;
    width: 54px;
    color: rgba(129, 184, 238, 0.84);
    filter: none;
    opacity: 0.9;
}

.hero-signature__mark svg {
    width: 100%;
    height: auto;
    display: block;
}

.hero-signature__mark path,
.hero-signature__mark circle {
    fill: none;
    stroke: currentColor;
    stroke-width: 2.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.hero-signature__content {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 4px;
    justify-items: center;
    text-align: center;
}

.hero-signature__label {
    display: inline-flex;
    align-items: center;
    margin: 0;
    color: rgba(var(--accent-rgb), 0.62);
    font-size: 0.54rem;
    font-weight: 800;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.hero-signature strong {
    display: block;
    color: var(--accent);
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(1.08rem, 1.7vw, 1.58rem);
    line-height: 0.98;
    letter-spacing: -0.02em;
    text-shadow: 0 4px 12px rgba(255, 255, 255, 0.52);
    text-wrap: balance;
}

.container {
    position: relative;
    z-index: 5;
    max-width: 1180px;
    margin: -1vh auto 0;
    padding: clamp(32px, 5vw, 54px) 24px 80px;
    overflow-x: hidden;
}

.hero,
.section,
.site-footer,
#show {
    scroll-margin-top: calc(var(--site-header-height, 92px) + 18px);
}

.section {
    margin: 0 0 30px;
    padding: clamp(28px, 4vw, 46px);
    border-radius: 0;
    border: 1px solid var(--line);
    background:
        radial-gradient(circle at 14% 14%, rgba(var(--accent-bright-rgb), 0.05), transparent 26%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.985), rgba(247, 250, 252, 0.95));
    box-shadow: 0 24px 78px rgba(7, 28, 54, 0.11);
    position: relative;
    overflow: hidden;
    isolation: isolate;
    opacity: 1;
    transform: none;
    transition:
        opacity 0.38s ease-out,
        transform 0.48s cubic-bezier(0.2, 0.8, 0.2, 1),
        box-shadow 0.24s ease,
        border-color 0.24s ease;
    text-align: center;
    will-change: transform, opacity;
    contain: layout paint;
    max-width: 100%;
}

.section::before {
    content: '';
    position: absolute;
    inset: -1px;
    background: linear-gradient(112deg, transparent 0%, rgba(var(--accent-rgb), 0.04) 18%, rgba(255, 255, 255, 0.84) 34%, rgba(var(--accent-bright-rgb), 0.08) 46%, transparent 60%);
    transform: translateX(-135%);
    opacity: 0.24;
    animation: surfaceSweep 10s ease-in-out infinite;
    pointer-events: none;
}

.section > * {
    position: relative;
    z-index: 1;
}

.section,
.reveal-card {
    --reveal-y: 0px;
    --parallax-y: 0px;
    transform: translate3d(0, calc(var(--reveal-y) + var(--parallax-y)), 0);
    transition:
        opacity 0.56s ease,
        transform 0.72s cubic-bezier(0.19, 1, 0.22, 1),
        box-shadow 0.24s ease,
        border-color 0.24s ease;
    transition-delay: var(--reveal-delay, 0ms);
    will-change: transform, opacity;
}

/* Mobile production lock: prevent Cloudflare/mobile regressions from legacy overrides. */
@media (max-width: 720px) {
    html,
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        scroll-behavior: smooth !important;
    }

    body {
        background: #f5f8fb !important;
    }

    body .top-header,
    body .top-header.is-scrolled {
        width: 100% !important;
        min-height: 88px !important;
        height: 88px !important;
        overflow: hidden !important;
        background:
            radial-gradient(circle at 34% 18%, rgba(0, 145, 255, 0.12), transparent 32%),
            linear-gradient(180deg, rgba(5, 18, 32, 0.98), rgba(2, 12, 24, 0.99)) !important;
        box-shadow: 0 14px 34px rgba(0, 8, 18, 0.3) !important;
    }

    body .top-header .top-header__inner {
        width: 100% !important;
        height: 88px !important;
        max-width: none !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 10px !important;
        align-items: center !important;
        padding: 0 14px !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    body .top-header .site-brand {
        min-width: 0 !important;
        width: auto !important;
        max-width: 100% !important;
        gap: 9px !important;
        overflow: hidden !important;
    }

    body .top-header .site-brand__mark {
        flex: 0 0 96px !important;
        width: 96px !important;
        height: 52px !important;
        font-size: 0 !important;
        background-size: contain !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
    }

    body .top-header .site-brand__copy {
        min-width: 0 !important;
        width: auto !important;
        max-width: 92px !important;
        display: grid !important;
        gap: 2px !important;
        overflow: hidden !important;
    }

    body .top-header .site-brand__copy strong {
        display: block !important;
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        font-size: 0.78rem !important;
        line-height: 1.05 !important;
        letter-spacing: 0.08em !important;
    }

    body .top-header .site-brand__copy span {
        display: none !important;
    }

    body .top-header .top-header__actions {
        flex: 0 0 auto !important;
        width: auto !important;
        display: flex !important;
        gap: 8px !important;
        align-items: center !important;
        justify-content: flex-end !important;
    }

    body .top-header .social-link,
    body .top-header .menu-toggle {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        border-color: rgba(80, 145, 200, 0.38) !important;
        background:
            radial-gradient(circle at 45% 30%, rgba(60, 190, 255, 0.16), transparent 42%),
            rgba(13, 32, 51, 0.76) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.08),
            0 0 22px rgba(0, 174, 255, 0.14) !important;
    }

    body .hero#hero {
        min-height: min(620px, calc(100svh - 88px)) !important;
        height: min(620px, calc(100svh - 88px)) !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    body .hero#hero .hero-content {
        min-height: 100% !important;
        height: 100% !important;
        align-items: end !important;
        padding: 132px 18px 34px !important;
    }

    body .hero#hero .hero-copy {
        width: 100% !important;
        max-width: 340px !important;
        padding: 0 !important;
        transform: none !important;
    }

    body .hero#hero h1 {
        font-size: clamp(3.25rem, 17vw, 4.55rem) !important;
        line-height: 0.92 !important;
    }

    body .hero#hero .hero-actions {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
        width: 100% !important;
    }

    body .hero#hero .hero-actions .btn:first-child {
        grid-column: 1 / -1 !important;
    }

    body .btn,
    body .hero#hero .hero-actions .btn,
    body .site-footer--home-lean .site-footer__button,
    body .site-footer--home-lean .site-footer__pill,
    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.14),
            0 0 22px rgba(0, 168, 255, 0.2),
            0 10px 24px rgba(0, 8, 20, 0.22) !important;
    }

    body .section,
    body main.container > section {
        width: calc(100vw - 28px) !important;
        max-width: calc(100vw - 28px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }

    body #ensaios.section--showcase {
        padding: 28px 14px 22px !important;
    }

    body #ensaios .gallery-showcase--ensaios {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 18px 16px 58px !important;
        overflow: hidden !important;
    }

    body #ensaios .gallery-controls {
        width: min(100%, 260px) !important;
        max-width: 100% !important;
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) !important;
    }

    body main.container #jukebox.rei-jukebox,
    body main.container #jukebox.rei-jukebox .rei-jukebox__frame {
        max-width: calc(100vw - 28px) !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classics {
        max-width: 100% !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classics__track {
        overflow-x: auto !important;
        overscroll-behavior-x: contain !important;
        scrollbar-width: none !important;
    }

    body .site-footer.site-footer--home-lean {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
        padding: 0 !important;
    }

    body .site-footer--home-lean .site-footer__inner {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 26px 14px 30px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
        border-left: 0 !important;
        border-right: 0 !important;
    }

    body .site-footer--home-lean .site-footer__panel,
    body .site-footer--home-lean .site-footer__utility,
    body .site-footer--home-lean .site-footer__booking-card,
    body .site-footer--home-lean .site-footer__home-newsletter,
    body .site-footer--home-lean .site-footer__home-newsletter-address,
    body .site-footer--home-lean .site-footer__button,
    body .site-footer--home-lean .site-footer__lean-row,
    body .site-footer--home-lean .site-footer__mini-links,
    body .site-footer--home-lean .site-footer__bottom {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    body .site-footer--home-lean .site-footer__booking-card {
        padding: 22px 14px !important;
        border-radius: 22px !important;
    }

    body .site-footer--home-lean .site-footer__home-newsletter-address {
        justify-content: center !important;
        padding: 0 12px !important;
        font-size: clamp(0.82rem, 3.55vw, 0.98rem) !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    body .site-footer--home-lean .site-footer__mini-links {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    body .site-footer--home-lean .site-footer__pill {
        justify-content: center !important;
        height: 48px !important;
        font-size: 0.72rem !important;
    }

    body .site-footer--home-lean .site-footer__nav {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 18px !important;
    }

    body .site-footer--home-lean .site-footer__copy {
        max-width: 32ch !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
        line-height: 1.35 !important;
    }
}

.section.reveal-hidden,
.reveal-card.reveal-hidden {
    --reveal-y: 24px;
    opacity: 0;
}

.section.visible,
.reveal-card.visible {
    --reveal-y: 0px;
    opacity: 1;
}

.reveal-card {
    opacity: 1;
}

.section:hover {
    border-color: rgba(var(--accent-rgb), 0.2);
    box-shadow: 0 28px 82px rgba(var(--accent-rgb), 0.1);
}

h2 {
    margin: 0 0 20px;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2.2rem, 4vw, 3.3rem);
    line-height: 1;
    font-weight: 600;
    letter-spacing: -0.03em;
    color: var(--accent);
    text-align: center;
}

.section p {
    margin: 0;
    max-width: 760px;
    color: var(--ink);
    font-size: 1.03rem;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.section > p + .gallery,
.section > p + .video-showcase,
.section > p + .song-showcase,
.section > p + .song-list,
.section > p + .centered,
.section > p + .show-shell,
.section > p + .contact-grid {
    margin-top: 24px;
}

.section-kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid rgba(var(--accent-rgb), 0.14);
    background: rgba(var(--accent-bright-rgb), 0.1);
    color: var(--accent);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.section-kicker--light {
    border-color: rgba(255, 255, 255, 0.16);
    background: rgba(255, 255, 255, 0.08);
    color: rgba(229, 242, 255, 0.94);
}

.section--immersive {
    background:
        radial-gradient(circle at 18% 20%, rgba(var(--accent-bright-rgb), 0.18), transparent 28%),
        radial-gradient(circle at 84% 76%, rgba(var(--accent-bright-rgb), 0.12), transparent 24%),
        linear-gradient(160deg, rgba(12, 35, 59, 0.98) 0%, rgba(8, 24, 40, 0.99) 42%, rgba(4, 12, 23, 0.99) 100%);
    border-color: rgba(var(--accent-bright-rgb), 0.16);
    box-shadow: 0 28px 76px rgba(3, 14, 24, 0.26);
}

.section--immersive::before {
    background: linear-gradient(114deg, transparent 0%, rgba(var(--accent-bright-rgb), 0.16) 18%, rgba(255, 255, 255, 0.24) 34%, rgba(var(--accent-bright-rgb), 0.1) 46%, transparent 60%);
    opacity: 0.5;
}

.section--immersive h2,
.section--immersive p {
    color: #ffffff;
}

.section--immersive p {
    max-width: 840px;
    color: rgba(226, 241, 255, 0.9);
}

#espetaculo {
    background: #ffffff;
    border-color: rgba(var(--accent-rgb), 0.1);
    box-shadow: 0 24px 64px rgba(7, 28, 54, 0.08);
}

#espetaculo::before {
    display: none;
}

#espetaculo h2,
#espetaculo p {
    color: var(--accent);
}

#espetaculo > p {
    color: rgba(var(--accent-rgb), 0.76);
}

#espetaculo .section-kicker--light {
    border-color: rgba(var(--accent-rgb), 0.14);
    background: rgba(var(--accent-bright-rgb), 0.08);
    color: rgba(var(--accent-rgb), 0.78);
}

#espetaculo .experience-showcase {
    border-color: rgba(var(--accent-rgb), 0.12);
    background: linear-gradient(180deg, rgba(249, 252, 255, 0.98), rgba(234, 242, 250, 0.94));
    box-shadow: 0 20px 44px rgba(7, 28, 54, 0.08);
}

#espetaculo .experience-photo-strip {
    margin-bottom: 0;
}

#espetaculo .experience-photo-strip figure {
    border-color: rgba(var(--accent-rgb), 0.1);
    background: rgba(var(--accent-rgb), 0.05);
    box-shadow: 0 16px 30px rgba(7, 28, 54, 0.08);
}

#espetaculo .experience-photo-strip figure::after {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.02) 0%, rgba(12, 32, 54, 0.08) 46%, rgba(8, 22, 38, 0.58) 100%),
        radial-gradient(circle at 18% 10%, rgba(var(--accent-bright-rgb), 0.12), transparent 28%);
}

#espetaculo .experience-recap {
    margin-top: 26px;
    padding-top: 22px;
    border-top: 1px solid rgba(var(--accent-rgb), 0.1);
}

#espetaculo .experience-recap__intro {
    display: grid;
    gap: 10px;
    max-width: 760px;
}

#espetaculo .experience-recap__kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    padding: 7px 12px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 999px;
    background: rgba(var(--accent-bright-rgb), 0.08);
    color: rgba(var(--accent-rgb), 0.76);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

#espetaculo .experience-recap__intro p {
    margin: 0;
    max-width: none;
    color: rgba(var(--accent-rgb), 0.76);
}

#espetaculo .show-shell {
    margin-top: 18px;
}

#espetaculo .show-doodle {
    color: rgba(var(--accent-rgb), 0.24);
}

#espetaculo .show-card {
    box-shadow: 0 20px 40px rgba(7, 28, 54, 0.08);
}

.section-lead {
    max-width: 860px;
}

.section-lead--light {
    color: rgba(226, 241, 255, 0.9);
}

.section--showcase {
    background:
        radial-gradient(circle at 14% 16%, rgba(116, 191, 255, 0.18), transparent 26%),
        radial-gradient(circle at 84% 20%, rgba(116, 191, 255, 0.12), transparent 22%),
        linear-gradient(160deg, rgba(7, 36, 70, 0.985) 0%, rgba(4, 23, 48, 0.992) 48%, rgba(2, 14, 30, 1) 100%);
    border-color: rgba(147, 207, 255, 0.18);
    box-shadow: 0 30px 82px rgba(0, 24, 48, 0.26);
}

.section--showcase::before {
    background: linear-gradient(114deg, transparent 0%, rgba(var(--accent-bright-rgb), 0.18) 18%, rgba(255, 255, 255, 0.28) 34%, rgba(var(--accent-bright-rgb), 0.12) 46%, transparent 60%);
    opacity: 0.52;
}

.section--showcase::after {
    content: '';
    position: absolute;
    inset: auto -12% -24%;
    height: 50%;
    background:
        radial-gradient(circle at 18% 0%, rgba(126, 197, 255, 0.14), transparent 30%),
        radial-gradient(circle at 82% 0%, rgba(126, 197, 255, 0.12), transparent 28%);
    filter: blur(30px);
    opacity: 0.82;
    pointer-events: none;
}

.section--showcase h2,
.section--showcase p {
    color: #ffffff;
}

.section--showcase p {
    max-width: 880px;
    color: rgba(225, 240, 255, 0.88);
}

.section-cta {
    margin: 24px auto 0;
    max-width: 860px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
}

.section-cta .btn {
    margin-top: 0;
    flex: 0 0 auto;
}

.section-cta span {
    max-width: 38rem;
    color: var(--ink-soft);
    font-size: 0.92rem;
    line-height: 1.55;
    text-align: left;
}

.section-cta--light span {
    color: rgba(226, 241, 255, 0.84);
}

.experience-showcase {
    position: relative;
    margin-top: 30px;
    padding: 18px;
    border-radius: 0;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.03));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 20px 44px rgba(0, 17, 34, 0.18);
    overflow: hidden;
    isolation: isolate;
}

.experience-showcase > * {
    position: relative;
    z-index: 1;
}

.experience-showcase .experience-grid {
    margin-top: 0;
}

.experience-photo-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.experience-photo-strip figure {
    position: relative;
    min-height: clamp(280px, 34vw, 520px);
    aspect-ratio: 9 / 14.5;
    margin: 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 0;
    background: rgba(2, 11, 24, 0.24);
    box-shadow: 0 18px 34px rgba(0, 16, 34, 0.16);
}

.experience-photo-strip figure::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(6, 20, 36, 0.04) 0%, rgba(6, 20, 36, 0.12) 38%, rgba(5, 16, 31, 0.76) 100%),
        radial-gradient(circle at 18% 10%, rgba(82, 225, 255, 0.16), transparent 28%);
    pointer-events: none;
}

.experience-photo-strip img,
.experience-photo-strip video {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.28s ease;
}

.experience-photo-strip figure:nth-child(1) img {
    object-position: 54% center;
}

.experience-photo-strip figure:nth-child(2) img {
    object-position: 52% center;
}

.experience-photo-strip figure:nth-child(3) img {
    object-position: 46% center;
}

.experience-photo-strip figure:hover img,
.experience-photo-strip figure:hover video,
.experience-photo-strip figure:focus-within img,
.experience-photo-strip figure:focus-within video {
    transform: scale(1.03);
}

.experience-short__play {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.28);
    background: rgba(3, 16, 30, 0.42);
    backdrop-filter: blur(8px);
    box-shadow: 0 10px 24px rgba(0, 10, 24, 0.24);
    pointer-events: none;
    z-index: 2;
}

.experience-short__play::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 0 7px 11px;
    border-color: transparent transparent transparent #ffffff;
    transform: translate(-35%, -50%);
}

.experience-short__overlay {
    position: absolute;
    right: 16px;
    bottom: 18px;
    left: 16px;
    z-index: 2;
    display: grid;
    gap: 6px;
    pointer-events: none;
}

.experience-short__kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background: rgba(4, 18, 34, 0.38);
    color: rgba(232, 243, 255, 0.88);
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.experience-short__overlay strong {
    color: #ffffff;
    font-size: 1.22rem;
    line-height: 1.04;
}

.experience-short__meta {
    color: rgba(224, 239, 255, 0.82);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

@media (min-width: 769px) {
    #espetaculo {
        padding-block: clamp(22px, 2.5vw, 34px);
    }

    #espetaculo h2 {
        margin-bottom: 10px;
    }

    #espetaculo > p {
        max-width: 780px;
        line-height: 1.48;
    }

    #espetaculo .section-cta {
        margin-top: 14px;
    }

    #espetaculo .section-cta .btn {
        margin-top: 0;
    }

    #espetaculo .experience-showcase {
        width: min(100%, 900px);
        margin: 20px auto 0;
        padding: 12px;
        border: 1px solid rgba(var(--accent-rgb), 0.12);
        background: #ffffff;
        box-shadow: 0 18px 42px rgba(7, 28, 54, 0.08);
        overflow: hidden;
    }

    #espetaculo .experience-photo-strip {
        width: min(100%, 900px, calc(44svh * 21 / 9));
        grid-template-columns: minmax(0, 1fr);
        gap: 0;
        justify-content: center;
        margin: 0 auto;
    }

    #espetaculo .experience-short {
        width: 100%;
        min-height: 0;
        aspect-ratio: 21 / 9;
        border-color: rgba(var(--accent-rgb), 0.14);
        background: #020b18;
        box-shadow:
            0 14px 32px rgba(0, 10, 24, 0.16),
            0 0 0 1px rgba(255, 255, 255, 0.04);
    }

    #espetaculo .experience-short::after {
        background:
            linear-gradient(180deg, rgba(6, 20, 36, 0.04) 0%, rgba(6, 20, 36, 0.08) 62%, rgba(5, 16, 31, 0.18) 100%);
    }

    #espetaculo .experience-short video {
        object-position: center 46%;
    }

    #espetaculo .experience-short:not(:first-child),
    #espetaculo .experience-swipe-hint {
        display: none;
    }

    #espetaculo .experience-short__overlay {
        right: 24px;
        bottom: 22px;
        left: 24px;
    }
}

@media (max-width: 768px) {
    #espetaculo .experience-photo-strip {
        display: block;
    }

    #espetaculo .experience-short:not(:first-child) {
        display: none;
    }

    #espetaculo .experience-short:first-child {
        width: 100%;
        height: auto;
        max-height: none;
        aspect-ratio: 4 / 5;
    }

    #espetaculo .experience-short:first-child video {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    #espetaculo .experience-swipe-hint,
    #videos {
        display: none;
    }
}

.experience-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-top: 30px;
    perspective: 1600px;
}

.experience-card {
    min-height: 100%;
    padding: 24px 22px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.05));
    box-shadow: 0 20px 38px rgba(0, 16, 34, 0.18);
    text-align: left;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transition: transform 0.28s ease, border-color 0.28s ease, box-shadow 0.28s ease, background 0.28s ease;
}

.experience-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(118deg, transparent 0%, rgba(146, 208, 255, 0.12) 20%, rgba(255, 255, 255, 0.14) 34%, transparent 52%);
    transform: translateX(-128%);
    animation: surfaceSweep 13s ease-in-out infinite;
    pointer-events: none;
}

.experience-card > * {
    position: relative;
    z-index: 1;
}

.experience-card:hover {
    transform: translateY(-8px);
    border-color: rgba(178, 220, 255, 0.26);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.08));
    box-shadow: 0 28px 52px rgba(0, 17, 34, 0.24);
}

.experience-card__index {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin-bottom: 18px;
    border-radius: 0;
    background: linear-gradient(180deg, rgba(118, 193, 255, 0.24), rgba(255, 255, 255, 0.08));
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: #ffffff;
    font-size: 0.84rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.experience-card strong {
    display: block;
    color: #ffffff;
    font-size: 1rem;
    line-height: 1.28;
}

.experience-card p {
    margin-top: 12px;
    max-width: none;
    text-align: left;
    color: rgba(226, 241, 255, 0.84);
    font-size: 0.94rem;
}

.legacy-shell {
    margin-top: 30px;
    display: grid;
    grid-template-columns: minmax(280px, 0.92fr) minmax(0, 1.28fr);
    gap: 22px;
    align-items: stretch;
    perspective: 1600px;
}

.legacy-panel,
.legacy-note {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(233, 243, 255, 0.94));
    box-shadow: 0 20px 42px rgba(var(--accent-rgb), 0.1);
}

.legacy-panel::before,
.legacy-note::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(118deg, transparent 2%, rgba(var(--accent-bright-rgb), 0.1) 20%, rgba(255, 255, 255, 0.64) 34%, transparent 52%);
    transform: translateX(-128%);
    animation: surfaceSweep 13s ease-in-out infinite;
    pointer-events: none;
}

.legacy-panel::after {
    content: '';
    position: absolute;
    inset: auto -12% -26%;
    height: 44%;
    background:
        radial-gradient(circle at 14% 0%, rgba(134, 198, 255, 0.2), transparent 34%),
        radial-gradient(circle at 84% 0%, rgba(103, 175, 245, 0.16), transparent 28%);
    filter: blur(22px);
    opacity: 0.9;
    pointer-events: none;
}

.legacy-panel > *,
.legacy-note > * {
    position: relative;
    z-index: 1;
}

.legacy-panel {
    display: grid;
    gap: 16px;
    padding: 28px 26px;
    align-content: start;
}

.legacy-note--inline {
    margin-top: 4px;
    padding: 18px 18px;
    border-radius: 0;
    background: linear-gradient(180deg, rgba(243, 248, 255, 0.98), rgba(231, 241, 252, 0.94));
    box-shadow: 0 14px 28px rgba(var(--accent-rgb), 0.08);
}

.legacy-video-trigger {
    display: grid;
    grid-template-columns: minmax(240px, 1.08fr) minmax(0, 0.92fr);
    gap: 16px;
    align-items: center;
    width: 100%;
    margin-top: 2px;
    padding: 16px;
    border: 1px solid rgba(var(--accent-bright-rgb), 0.18);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.04));
    color: #ffffff;
    text-align: left;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transition: transform 0.24s ease, border-color 0.24s ease, box-shadow 0.24s ease;
}

.legacy-video-trigger::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(118deg, transparent 4%, rgba(160, 220, 255, 0.1) 22%, rgba(255, 255, 255, 0.18) 36%, transparent 54%);
    transform: translateX(-128%);
    animation: surfaceSweep 12s ease-in-out infinite;
    pointer-events: none;
}

.legacy-video-trigger > * {
    position: relative;
    z-index: 1;
}

.legacy-video-trigger:hover,
.legacy-video-trigger:focus-visible {
    transform: translateY(-4px);
    border-color: rgba(190, 229, 255, 0.3);
    box-shadow: 0 18px 36px rgba(0, 25, 52, 0.18);
    outline: none;
}

.legacy-video-trigger__media {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 0;
    background: rgba(255, 255, 255, 0.08);
    box-shadow: 0 16px 30px rgba(0, 17, 34, 0.18);
}

.legacy-video-trigger__media::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22);
    pointer-events: none;
    z-index: 2;
}

.legacy-video-trigger__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.legacy-video-trigger__play {
    position: absolute;
    right: 16px;
    bottom: 16px;
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border-radius: 999px;
    background: rgba(0, 77, 154, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.22);
    color: #ffffff;
    font-size: 1.2rem;
    box-shadow: 0 14px 28px rgba(0, 24, 54, 0.22);
    z-index: 3;
}

.legacy-video-trigger__play::before,
.legacy-video-trigger__play::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
}

.legacy-video-trigger__play::before {
    inset: -7px;
    border: 1px solid rgba(170, 220, 255, 0.24);
    opacity: 0.72;
}

.legacy-video-trigger__play::after {
    inset: auto 10px -16px;
    height: 16px;
    background: radial-gradient(circle, rgba(127, 193, 255, 0.46), transparent 72%);
    filter: blur(8px);
}

.legacy-video-trigger__body {
    display: grid;
    gap: 10px;
    min-width: 0;
}

.legacy-video-trigger__kicker {
    color: rgba(201, 230, 255, 0.88);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.legacy-video-trigger__body strong {
    color: #ffffff;
    font-size: 1.44rem;
    line-height: 1.08;
}

.legacy-video-trigger__text {
    color: rgba(229, 242, 255, 0.82);
    font-size: 0.95rem;
    line-height: 1.58;
}

.legacy-video-trigger__trail {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 4px;
}

.legacy-video-trigger__trail span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(var(--accent-bright-rgb), 0.18);
    background: rgba(255, 255, 255, 0.08);
    color: rgba(234, 245, 255, 0.94);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.legacy-video-trigger__action {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    justify-self: start;
    padding: 11px 18px;
    border-radius: 999px;
    border: 1px solid rgba(180, 226, 255, 0.2);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.07));
    color: #f5fbff;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.legacy-video-trigger__action::before {
    content: '';
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: linear-gradient(180deg, #a8dbff, #4a9ef0);
    box-shadow: 0 0 0 5px rgba(124, 196, 255, 0.12);
}

.legacy-panel__kicker,
.legacy-note__kicker,
.legacy-phase {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    background: rgba(233, 242, 253, 0.9);
    color: var(--accent);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.legacy-panel__kicker,
.legacy-note__kicker {
    justify-self: start;
}

.legacy-panel strong {
    display: block;
    color: var(--accent);
    font-size: 1.34rem;
    line-height: 1.18;
    max-width: 14ch;
}

.legacy-panel p {
    max-width: none;
    margin: 0;
    text-align: left;
    font-size: 0.97rem;
    line-height: 1.72;
    color: var(--ink);
}

.legacy-timeline {
    display: flex;
    align-items: stretch;
    gap: 18px;
}

.legacy-track {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.legacy-card {
    min-height: 100%;
    padding: 24px 22px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(237, 244, 251, 0.95));
    box-shadow: 0 18px 38px rgba(7, 28, 54, 0.08);
    text-align: left;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transition: transform 0.26s ease, box-shadow 0.26s ease, border-color 0.26s ease;
}

.legacy-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(118deg, transparent 2%, rgba(var(--accent-bright-rgb), 0.08) 20%, rgba(255, 255, 255, 0.6) 34%, transparent 52%);
    transform: translateX(-128%);
    animation: surfaceSweep 13s ease-in-out infinite;
    animation-delay: 0.9s;
    pointer-events: none;
}

.legacy-card::after {
    content: '';
    position: absolute;
    inset: 0 0 auto;
    height: 4px;
    background: linear-gradient(90deg, rgba(var(--accent-rgb), 0.9), rgba(var(--accent-bright-rgb), 0.82));
    opacity: 0.84;
}

.legacy-card > * {
    position: relative;
    z-index: 1;
}

.legacy-card:hover {
    transform: translateY(-8px);
    border-color: rgba(var(--accent-rgb), 0.22);
    box-shadow: 0 26px 48px rgba(7, 28, 54, 0.12);
}

.legacy-year {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    padding: 9px 14px;
    border-radius: 999px;
    background: rgba(230, 241, 253, 0.92);
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    color: var(--accent);
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.legacy-phase {
    margin-left: 10px;
    padding-inline: 11px;
    font-size: 0.64rem;
    letter-spacing: 0.11em;
}

.legacy-card strong {
    display: block;
    margin-top: 18px;
    color: var(--accent);
    font-size: 1.04rem;
    line-height: 1.28;
}

.legacy-card p {
    margin-top: 12px;
    max-width: none;
    text-align: left;
    font-size: 0.95rem;
    line-height: 1.65;
}

.legacy-note {
    padding: 22px 24px;
}

.legacy-note p {
    margin: 14px 0 0;
    max-width: none;
    text-align: left;
    color: var(--ink);
    font-size: 0.98rem;
    line-height: 1.7;
}

.legacy-stats {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 4px;
}

.legacy-stats span {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    padding: 11px 14px;
    border-radius: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    background: rgba(235, 243, 252, 0.84);
    color: var(--accent);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1.4;
    text-transform: uppercase;
}

#legado .legacy-shell {
    margin-top: 24px;
    gap: 18px;
    grid-template-columns: minmax(280px, 1fr) minmax(260px, 320px);
    align-items: start;
    justify-content: center;
}

#legado .legacy-shell--player-only {
    max-width: 1120px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(280px, 420px) minmax(320px, 560px);
    align-items: center;
    justify-content: center;
    gap: 32px;
}

#legado .legacy-intro {
    display: grid;
    align-content: center;
    justify-items: start;
    gap: 18px;
    text-align: left;
}

#legado .legacy-intro .section-kicker,
#legado .legacy-intro h2,
#legado .legacy-intro .section-lead {
    margin: 0;
}

#legado .legacy-intro .section-lead {
    max-width: 31ch;
    text-align: left;
}

#legado .legacy-track {
    gap: 14px;
}

#legado.section {
    overflow: hidden;
    border-color: rgba(var(--accent-bright-rgb), 0.18);
    background:
        radial-gradient(circle at 14% 12%, rgba(121, 194, 255, 0.12), transparent 24%),
        radial-gradient(circle at 84% 18%, rgba(83, 162, 247, 0.12), transparent 22%),
        linear-gradient(180deg, rgba(10, 50, 96, 0.98), rgba(5, 28, 56, 0.98));
    box-shadow: 0 24px 54px rgba(0, 32, 72, 0.18);
}

#legado.section::before {
    background: linear-gradient(116deg, transparent 8%, rgba(129, 201, 255, 0.08) 24%, rgba(255, 255, 255, 0.2) 38%, transparent 56%);
}

#legado h2,
#legado .section-lead,
#legado .section-kicker {
    color: #ffffff;
}

#legado .section-kicker {
    border-color: rgba(var(--accent-bright-rgb), 0.18);
    background: rgba(255, 255, 255, 0.08);
    color: #eaf5ff;
}

#legado .section-lead {
    color: rgba(229, 242, 255, 0.9);
}

#legado .legacy-panel {
    min-height: 100%;
    aspect-ratio: 1 / 1;
    align-content: start;
    border: 1px solid rgba(223, 239, 255, 0.76);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(243, 248, 255, 0.98));
    box-shadow: 0 24px 42px rgba(0, 17, 34, 0.16);
    padding: 24px 22px;
    gap: 14px;
}

#legado .legacy-panel::before,
#legado .legacy-panel::after {
    display: none;
}

#legado .legacy-panel__kicker {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    color: rgba(0, 77, 154, 0.72);
    box-shadow: none;
    letter-spacing: 0.14em;
}

#legado .legacy-panel strong {
    max-width: 11ch;
    font-size: 1.24rem;
    line-height: 1.12;
    color: #0d3d77;
}

#legado .legacy-panel p {
    margin: 0;
    font-size: 0.92rem;
    line-height: 1.56;
    color: rgba(27, 67, 110, 0.82);
}

#legado .legacy-panel .legacy-statements li {
    color: #0d3d77;
}

#legado .legacy-panel .legacy-statements li::before {
    background: linear-gradient(180deg, rgba(12, 107, 212, 0.96), rgba(8, 69, 138, 0.96));
    box-shadow: 0 0 0 5px rgba(12, 107, 212, 0.12);
}

#legado .legacy-panel .legacy-closing {
    color: rgba(27, 67, 110, 0.9);
}

#legado .legacy-note,
#legado .legacy-card {
    border-color: rgba(var(--accent-bright-rgb), 0.18);
    background:
        radial-gradient(circle at 14% 16%, rgba(var(--accent-bright-rgb), 0.18), transparent 28%),
        linear-gradient(180deg, rgba(10, 50, 96, 0.98), rgba(5, 28, 56, 0.98));
    box-shadow: 0 24px 54px rgba(0, 32, 72, 0.18);
}

#legado .legacy-note::before,
#legado .legacy-card::before {
    background: linear-gradient(116deg, transparent 8%, rgba(129, 201, 255, 0.08) 24%, rgba(255, 255, 255, 0.24) 38%, transparent 56%);
}

#legado .legacy-card strong,
#legado .legacy-note strong {
    color: #ffffff;
}

#legado .legacy-card p,
#legado .legacy-note p {
    color: rgba(229, 242, 255, 0.9);
}

#legado .legacy-card {
    padding: 20px 18px;
}

#legado .legacy-card::after {
    background: linear-gradient(90deg, rgba(var(--accent-bright-rgb), 0.96), rgba(255, 255, 255, 0.58));
    opacity: 1;
}

#legado .legacy-card strong {
    margin-top: 14px;
    font-size: 0.98rem;
    line-height: 1.2;
}

#legado .legacy-card p {
    margin-top: 10px;
    font-size: 0.88rem;
    line-height: 1.52;
}

.legacy-statements {
    display: grid;
    gap: 10px;
    margin: 2px 0 0;
    padding: 0;
    list-style: none;
}

.legacy-statements li {
    position: relative;
    padding-left: 18px;
    color: rgba(239, 247, 255, 0.94);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    line-height: 1.45;
    text-transform: uppercase;
}

.legacy-statements li::before {
    content: '';
    position: absolute;
    top: 0.55em;
    left: 0;
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(168, 219, 255, 0.98), rgba(74, 158, 240, 0.98));
    box-shadow: 0 0 0 5px rgba(124, 196, 255, 0.12);
}

.legacy-closing {
    margin: 0;
    color: #ffffff;
    font-size: 1rem;
    line-height: 1.6;
    max-width: 26ch;
}

#legado .legacy-timeline {
    min-height: 100%;
    display: grid;
    grid-template-columns: 1fr;
    align-items: start;
    justify-items: center;
    gap: 0;
}

.legacy-feature-card {
    min-height: 100%;
    aspect-ratio: 1 / 1;
    display: grid;
    align-content: start;
    gap: 12px;
    padding: 26px 24px;
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(243, 248, 255, 0.98));
    box-shadow: 0 24px 42px rgba(0, 17, 34, 0.16);
}

.legacy-feature-card__kicker {
    color: rgba(0, 77, 154, 0.72);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.legacy-feature-card strong {
    max-width: 11ch;
    color: #0d3d77;
    font-size: 1.42rem;
    line-height: 1.08;
}

.legacy-feature-card p {
    max-width: 28ch;
    margin: 0;
    color: rgba(27, 67, 110, 0.82);
    font-size: 0.95rem;
    line-height: 1.58;
}

#legado .legacy-video-trigger--feature {
    display: block;
    width: 100%;
    max-width: 500px;
    min-height: 0;
    aspect-ratio: 1 / 1;
    margin: 0;
    padding: 0;
    align-content: stretch;
    justify-items: stretch;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    justify-self: stretch;
}

#legado .legacy-video-trigger--feature::after {
    content: '';
    position: absolute;
    left: 10%;
    right: 10%;
    bottom: -18px;
    height: 28px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(117, 191, 255, 0.28), transparent 72%);
    filter: blur(12px);
    opacity: 0.5;
    z-index: 0;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    min-height: 0;
    padding: 0;
    justify-self: stretch;
    overflow: hidden;
    border-radius: 0;
    border: 0;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01)),
        rgba(var(--accent-rgb), 0.08);
    box-shadow: 0 18px 32px rgba(0, 17, 34, 0.14);
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.03) 28%, rgba(88, 172, 238, 0.12) 64%, rgba(255, 255, 255, 0.08) 100%),
        repeating-linear-gradient(170deg, rgba(255, 255, 255, 0.05) 0 2px, transparent 2px 18px);
    mix-blend-mode: screen;
    opacity: 0.46;
    pointer-events: none;
    z-index: 2;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    object-position: center center;
    border-radius: 0;
    box-shadow: none;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__play {
    width: 86px;
    height: 86px;
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%);
    font-size: 1.32rem;
    background: linear-gradient(180deg, rgba(19, 96, 192, 0.95), rgba(8, 56, 118, 0.98));
    border-color: rgba(255, 255, 255, 0.34);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.24),
        0 16px 26px rgba(0, 18, 40, 0.22);
    backdrop-filter: blur(8px);
}

.section--repertoire .section-lead,
.section--tickets .section-lead {
    max-width: 820px;
}

.section--repertoire {
    overflow: hidden;
}

.repertoire-doodles {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.repertoire-doodle {
    position: absolute;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(0, 89, 178, 0.16);
    background: rgba(255, 255, 255, 0.74);
    color: rgba(0, 77, 154, 0.34);
    box-shadow: 0 12px 28px rgba(var(--accent-rgb), 0.06);
}

.repertoire-doodle svg {
    width: 20px;
    height: 20px;
    display: block;
}

.repertoire-doodle em {
    font-style: normal;
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.repertoire-doodle--rei {
    top: 24px;
    left: 24px;
    transform: rotate(-8deg);
}

.repertoire-doodle--calhambeque {
    top: 18px;
    left: 50%;
    transform: translateX(-50%) rotate(-2deg);
}

.repertoire-doodle--spotify {
    top: 84px;
    right: 32px;
    transform: rotate(10deg);
}

.repertoire-doodle--daniel {
    left: 34px;
    bottom: 22px;
    transform: rotate(-9deg);
}

.repertoire-shell {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: 28px;
    position: relative;
    z-index: 1;
}

.repertoire-card {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: 24px 22px;
    border: 1px solid rgba(var(--accent-bright-rgb), 0.18);
    border-radius: 0;
    background:
        radial-gradient(circle at 14% 16%, rgba(var(--accent-bright-rgb), 0.18), transparent 28%),
        linear-gradient(180deg, rgba(10, 50, 96, 0.98), rgba(5, 28, 56, 0.98));
    box-shadow: 0 22px 48px rgba(0, 32, 72, 0.16);
    text-align: left;
}

.repertoire-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(118deg, transparent 4%, rgba(129, 201, 255, 0.08) 22%, rgba(255, 255, 255, 0.24) 36%, transparent 54%);
    transform: translateX(-128%);
    animation: surfaceSweep 14s ease-in-out infinite;
    pointer-events: none;
}

.repertoire-card > * {
    position: relative;
    z-index: 1;
}

.repertoire-card__kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(var(--accent-bright-rgb), 0.18);
    background: rgba(255, 255, 255, 0.08);
    color: #eaf5ff;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.repertoire-card strong {
    display: block;
    color: #ffffff;
    font-size: 1.04rem;
    line-height: 1.28;
}

.repertoire-card p {
    margin: 12px 0 0;
    max-width: none;
    text-align: left;
    font-size: 0.94rem;
    line-height: 1.62;
    color: rgba(229, 242, 255, 0.9);
}

.section--tickets {
    overflow: hidden;
}

.tickets-shell {
    position: relative;
    margin-top: 26px;
    padding: 34px 28px 28px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(241, 247, 255, 0.94));
    box-shadow: 0 22px 44px rgba(var(--accent-rgb), 0.08);
    overflow: hidden;
    isolation: isolate;
}

.tickets-shell::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(116deg, transparent 8%, rgba(125, 196, 255, 0.08) 24%, rgba(255, 255, 255, 0.66) 38%, transparent 56%);
    transform: translateX(-130%);
    animation: surfaceSweep 14s ease-in-out infinite;
    pointer-events: none;
}

.tickets-shell > * {
    position: relative;
    z-index: 1;
}

.tickets-doodles {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.ticket-doodle {
    position: absolute;
    width: 88px;
    height: 88px;
    color: rgba(0, 77, 154, 0.2);
}

.ticket-doodle svg {
    width: 100%;
    height: 100%;
    display: block;
}

.ticket-doodle--one {
    top: 18px;
    left: 18px;
    transform: rotate(-12deg);
}

.ticket-doodle--two {
    top: 16px;
    right: 22px;
    transform: rotate(14deg);
}

.ticket-doodle--three {
    right: 88px;
    bottom: 12px;
    transform: rotate(-10deg);
}

.tickets-copy {
    max-width: 720px;
    margin: 0 auto;
    text-align: center;
}

.tickets-copy strong {
    display: block;
    color: var(--accent);
    font-size: 1.18rem;
    line-height: 1.28;
}

.tickets-copy p {
    margin: 12px auto 0;
    max-width: 680px;
}

.tickets-actions {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 24px;
}

.tickets-actions .btn {
    margin-top: 0;
}

@media (min-width: 1100px) {
    #legado.section {
        padding: 32px 28px;
    }

    #legado h2 {
        margin-bottom: 16px;
        font-size: clamp(2.1rem, 3.2vw, 2.85rem);
    }

    #legado .section-lead {
        max-width: 760px;
        font-size: 0.98rem;
        line-height: 1.55;
    }

    #legado .legacy-shell {
        margin-top: 22px;
        gap: 16px;
        grid-template-columns: minmax(260px, 0.82fr) minmax(0, 1.18fr);
    }

    #legado .legacy-panel {
        gap: 14px;
        padding: 22px 18px;
    }

    #legado .legacy-panel strong {
        font-size: 1.2rem;
        max-width: 13ch;
    }

    #legado .legacy-panel p {
        font-size: 0.92rem;
        line-height: 1.6;
    }

    #legado .legacy-statements {
        gap: 8px;
    }

    #legado .legacy-statements li {
        font-size: 0.72rem;
        line-height: 1.4;
    }

    #legado .legacy-timeline {
        gap: 14px;
    }

    .legacy-feature-card {
        padding: 22px 20px;
    }

    .legacy-feature-card strong {
        font-size: 1.24rem;
    }

    .legacy-feature-card p {
        font-size: 0.9rem;
    }

    #legado .legacy-video-trigger--feature .legacy-video-trigger__media {
        padding: 0;
    }

    #legado .legacy-video-trigger--feature .legacy-video-trigger__media img {
        min-height: 0;
    }

    #legado .legacy-track {
        gap: 12px;
    }

    #legado .legacy-card {
        padding: 20px 18px;
    }

    #legado .legacy-year {
        margin-bottom: 12px;
        padding: 8px 12px;
        font-size: 0.74rem;
    }

    #legado .legacy-phase {
        font-size: 0.6rem;
    }

    #legado .legacy-card strong {
        margin-top: 14px;
        font-size: 0.98rem;
        line-height: 1.22;
    }

    #legado .legacy-card p {
        margin-top: 10px;
        font-size: 0.89rem;
        line-height: 1.55;
    }

    #legado .legacy-note {
        padding: 18px 18px;
    }

    #legado .legacy-note p {
        margin-top: 10px;
        font-size: 0.91rem;
        line-height: 1.55;
    }
}

.section--bio p {
    max-width: none;
}

.section--bio,
.section--contacts {
    overflow: hidden;
}

.bio-doodles,
.contact-doodles {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.bio-doodle,
.contact-doodle {
    position: absolute;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(0, 89, 178, 0.16);
    background: rgba(255, 255, 255, 0.74);
    color: rgba(0, 77, 154, 0.34);
    box-shadow: 0 12px 28px rgba(var(--accent-rgb), 0.06);
}

.bio-doodle svg,
.contact-doodle svg {
    width: 20px;
    height: 20px;
    display: block;
}

.bio-doodle em,
.contact-doodle em {
    font-style: normal;
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.bio-doodle--daniel {
    top: 24px;
    left: 24px;
    transform: rotate(-9deg);
}

.bio-doodle--mic {
    top: 74px;
    right: 32px;
    transform: rotate(8deg);
}

.bio-doodle--calhambeque {
    right: 64px;
    bottom: 18px;
    transform: rotate(-6deg);
}

.bio-intro {
    max-width: 920px;
    margin: 0 auto 28px;
    text-align: center;
    font-size: 1.08rem;
    color: var(--accent);
    font-weight: 700;
}

.bio-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.bio-preview {
    max-width: 760px;
    margin: 0 auto;
}

.bio-card {
    padding: 22px 24px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    background: linear-gradient(180deg, rgba(237, 244, 251, 0.42), rgba(255, 255, 255, 0.94));
    position: relative;
    overflow: hidden;
    isolation: isolate;
    box-shadow: 0 16px 34px rgba(7, 28, 54, 0.07);
    text-align: left;
}

.bio-card::before {
    content: '';
    position: absolute;
    inset: -1px;
    background: linear-gradient(118deg, transparent 0%, rgba(var(--accent-bright-rgb), 0.05) 20%, rgba(255, 255, 255, 0.66) 36%, transparent 56%);
    transform: translateX(-124%);
    animation: surfaceSweep 16s ease-in-out infinite;
    animation-delay: 1.2s;
    pointer-events: none;
}

.bio-card > * {
    position: relative;
    z-index: 1;
}

.bio-card p + p {
    margin-top: 16px;
}

.contact-doodle--daniel {
    top: 26px;
    left: 28px;
    transform: rotate(-8deg);
}

.contact-doodle--phone {
    top: 82px;
    right: 30px;
    transform: rotate(9deg);
}

.contact-doodle--calhambeque {
    left: 50%;
    bottom: 16px;
    transform: translateX(-50%) rotate(-4deg);
}

.bio-quote {
    margin-top: 20px;
    padding: 20px 24px;
    border-left: 4px solid var(--accent);
    background: rgba(var(--accent-bright-rgb), 0.08);
    color: var(--ink-strong);
    font-size: 1.05rem;
    font-weight: 700;
    text-align: center;
}

.bio-actions {
    display: flex;
    justify-content: center;
    margin-top: 18px;
}

.bio-toggle {
    border: 1px solid rgba(var(--accent-rgb), 0.16);
    background: white;
    color: var(--accent);
    padding: 13px 20px;
    font: inherit;
    font-size: 0.85rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.bio-toggle:hover {
    transform: translateY(-2px);
    border-color: rgba(var(--accent-rgb), 0.3);
    box-shadow: 0 12px 28px rgba(7, 28, 54, 0.12);
}

.bio-more[hidden] {
    display: none;
}

.bio-more {
    margin-top: 18px;
}

.centered {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 28px;
    padding: 15px 26px;
    border: 1px solid var(--accent);
    background: var(--accent);
    color: #ffffff;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 0.82rem;
    font-weight: 800;
    box-shadow: 0 16px 34px rgba(5, 18, 33, 0.2);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease, background 0.25s ease;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

.btn--ghost {
    background: transparent;
    color: var(--accent);
    border-color: rgba(var(--accent-rgb), 0.18);
    box-shadow: none;
}

.btn--light {
    border-color: rgba(176, 214, 246, 0.34);
    background: linear-gradient(180deg, rgba(18, 63, 110, 0.34), rgba(8, 29, 52, 0.3));
    color: #ffffff;
    backdrop-filter: blur(10px);
}

.btn::before,
.bio-toggle::before,
.video-modal-link::before,
.video-nav::before {
    content: '';
    position: absolute;
    inset: -40% auto -40% -30%;
    width: 34%;
    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.72), transparent);
    transform: translateX(-220%) skewX(-18deg);
    animation: buttonSheen 5.6s ease-in-out infinite;
    mix-blend-mode: screen;
    z-index: -1;
}

.btn::after,
.bio-toggle::after,
.video-modal-link::after,
.video-nav::after {
    content: '';
    position: absolute;
    inset: auto 16px -18px;
    height: 22px;
    background: radial-gradient(circle, rgba(var(--accent-bright-rgb), 0.24), transparent 72%);
    opacity: 0.34;
    filter: blur(10px);
    animation: buttonGlow 4.8s ease-in-out infinite;
    mix-blend-mode: screen;
    z-index: -1;
}

.btn:hover,
.btn:focus-visible,
.btn:active,
.bio-toggle:hover,
.bio-toggle:focus-visible,
.bio-toggle:active,
.video-modal-link:hover,
.video-modal-link:focus-visible,
.video-modal-link:active,
.video-nav:hover,
.video-nav:focus-visible,
.video-nav:active {
    transform: translateY(-4px);
    border-color: rgba(var(--accent-bright-rgb), 0.26);
    background:
        radial-gradient(circle at 16% 18%, rgba(var(--accent-bright-rgb), 0.22), transparent 28%),
        linear-gradient(180deg, #1b4678 0%, #102a49 100%);
    box-shadow: 0 22px 42px rgba(7, 28, 54, 0.24);
    color: #ffffff;
    outline: none;
}

.btn:hover::before,
.btn:focus-visible::before,
.btn:active::before,
.bio-toggle:hover::before,
.bio-toggle:focus-visible::before,
.bio-toggle:active::before,
.video-modal-link:hover::before,
.video-modal-link:focus-visible::before,
.video-modal-link:active::before,
.video-nav:hover::before,
.video-nav:focus-visible::before,
.video-nav:active::before {
    animation-duration: 2.3s;
}

.btn:hover::after,
.btn:focus-visible::after,
.btn:active::after,
.bio-toggle:hover::after,
.bio-toggle:focus-visible::after,
.bio-toggle:active::after,
.video-modal-link:hover::after,
.video-modal-link:focus-visible::after,
.video-modal-link:active::after,
.video-nav:hover::after,
.video-nav:focus-visible::after,
.video-nav:active::after {
    animation-duration: 1.9s;
    opacity: 0.82;
}

.video-showcase {
    margin-top: 18px;
    display: grid;
    gap: 20px;
}

.video-showcase__top {
    padding: 24px 26px;
    border-radius: 0;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.05));
    box-shadow: 0 24px 44px rgba(0, 15, 34, 0.18);
}

.video-showcase__top {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    gap: 18px 22px;
    align-items: center;
}

.song-showcase {
    margin-top: 18px;
    display: grid;
    gap: 20px;
}

.gallery-showcase {
    margin-top: 18px;
    display: grid;
    gap: 20px;
}

.showcase-copy {
    position: relative;
    z-index: 1;
    margin: 0 auto;
    max-width: 48rem;
    color: rgba(221, 238, 255, 0.84);
    font-size: 1rem;
    line-height: 1.8;
    text-align: center;
    text-wrap: pretty;
}

.showcase-copy--light {
    color: rgba(226, 239, 250, 0.86);
}

.showcase-copy strong {
    color: #ffffff;
}

.video-showcase__intro {
    display: grid;
    gap: 8px;
    text-align: left;
}

.video-showcase__intro strong {
    color: #ffffff;
    font-size: 1.08rem;
    line-height: 1.3;
    letter-spacing: 0.01em;
}

.video-showcase__intro span {
    color: rgba(221, 238, 255, 0.82);
    font-size: 0.94rem;
    line-height: 1.65;
}

.gallery-showcase__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: rgba(213, 236, 255, 0.88);
    font-size: 0.74rem;
    font-style: normal;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.video-badges,
.song-badges,
.gallery-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 10px;
}

.video-badges span,
.song-badges span,
.gallery-badges span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.08);
    color: rgba(232, 244, 255, 0.94);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.gallery-showcase--ensaios {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.gallery-showcase__stickers {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.gallery-sticker {
    position: absolute;
    display: grid;
    place-items: center;
    width: clamp(52px, 5vw, 78px);
    aspect-ratio: 1;
    color: rgba(214, 235, 255, 0.18);
    filter: drop-shadow(0 12px 24px rgba(0, 21, 44, 0.12));
}

.gallery-sticker svg {
    width: 100%;
    height: 100%;
}

.gallery-sticker--mic {
    top: 24px;
    right: 40px;
}

.gallery-sticker--wave {
    bottom: 112px;
    left: 12px;
}

.gallery-sticker--keys {
    right: 24px;
    bottom: 34px;
}

#ensaios .ensaios-track-frame,
#ensaios .gallery-controls {
    position: relative;
    z-index: 1;
}

#ensaios .showcase-copy {
    max-width: 56rem;
    color: rgba(226, 236, 246, 0.84);
}

.video-track-frame,
.song-grid-shell,
.ensaios-track-frame {
    position: relative;
    overflow: hidden;
    padding: 18px;
    border-radius: 0;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.03));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 20px 44px rgba(0, 17, 34, 0.18);
    contain: layout paint;
}

.song-grid-shell::before,
.song-grid-shell::after,
.video-track-frame::before,
.video-track-frame::after {
    content: '';
    position: absolute;
    top: 18px;
    bottom: 18px;
    width: clamp(24px, 3vw, 40px);
    z-index: 2;
    pointer-events: none;
}

.song-grid-shell::before {
    left: 18px;
    background: linear-gradient(90deg, rgba(4, 29, 58, 0.82), rgba(4, 29, 58, 0));
}

.song-grid-shell::after {
    right: 18px;
    background: linear-gradient(270deg, rgba(4, 29, 58, 0.82), rgba(4, 29, 58, 0));
}

.video-track-frame::before {
    left: 18px;
    background: linear-gradient(90deg, rgba(4, 29, 58, 0.78), rgba(4, 29, 58, 0));
}

.video-track-frame::after {
    right: 18px;
    background: linear-gradient(270deg, rgba(4, 29, 58, 0.78), rgba(4, 29, 58, 0));
}

.show-shell {
    margin-top: 26px;
    position: relative;
    overflow: hidden;
}

.show-doodles {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.show-doodle {
    position: absolute;
    width: 104px;
    height: 104px;
    color: rgba(0, 77, 154, 0.3);
    filter: drop-shadow(0 14px 26px rgba(var(--accent-rgb), 0.06));
}

.show-doodle svg {
    width: 100%;
    height: 100%;
    display: block;
}

.show-doodle--calendar {
    top: 14px;
    left: 14px;
    transform: rotate(-10deg);
}

.show-doodle--ticket {
    top: 16px;
    right: 18px;
    transform: rotate(12deg);
}

.show-doodle--calhambeque {
    right: 76px;
    bottom: 8px;
    transform: rotate(-9deg);
}

.show-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 22px;
    align-items: center;
    padding: 24px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.985), rgba(235, 243, 251, 0.95));
    box-shadow: 0 22px 46px rgba(7, 28, 54, 0.1);
    text-align: left;
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.show-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(118deg, transparent 2%, rgba(var(--accent-bright-rgb), 0.1) 20%, rgba(255, 255, 255, 0.62) 34%, transparent 52%);
    transform: translateX(-128%);
    animation: surfaceSweep 12s ease-in-out infinite;
    pointer-events: none;
}

.show-card > * {
    position: relative;
    z-index: 1;
}

.show-date {
    min-width: 148px;
    padding: 20px 16px;
    border-radius: 0;
    background:
        radial-gradient(circle at 18% 18%, rgba(var(--accent-bright-rgb), 0.22), transparent 34%),
        radial-gradient(circle at 84% 18%, rgba(255, 255, 255, 0.08), transparent 24%),
        linear-gradient(180deg, rgba(14, 39, 66, 0.98), rgba(7, 21, 35, 0.99));
    color: #ffffff;
    box-shadow: 0 18px 36px rgba(3, 14, 24, 0.26);
    text-align: center;
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.show-date::before {
    content: '';
    position: absolute;
    inset: -44% auto -44% -32%;
    width: 44%;
    background: linear-gradient(115deg, transparent 0%, rgba(255, 255, 255, 0.06) 18%, rgba(255, 255, 255, 0.84) 42%, rgba(255, 255, 255, 0.2) 58%, transparent 78%);
    transform: translateX(-220%) skewX(-18deg);
    opacity: 0.96;
    animation: buttonSheen 3.6s linear infinite;
    mix-blend-mode: screen;
    will-change: transform, opacity;
    pointer-events: none;
    z-index: 0;
}

.show-date::after {
    content: '';
    position: absolute;
    inset: auto 12% -22%;
    height: 36%;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(var(--accent-bright-rgb), 0.52), transparent 72%);
    filter: blur(16px);
    opacity: 0.76;
    animation: ambientButtonAura 4.1s ease-in-out infinite;
    mix-blend-mode: screen;
    pointer-events: none;
    z-index: 0;
}

.show-date > * {
    position: relative;
    z-index: 1;
}

.show-date__day {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    font-size: 4rem;
    line-height: 0.82;
    font-weight: 700;
    letter-spacing: -0.05em;
}

.show-date__meta {
    display: block;
    margin-top: 8px;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(223, 240, 255, 0.9);
}

.show-content {
    display: grid;
    gap: 12px;
}

.show-content strong {
    color: var(--accent);
    font-size: 1.2rem;
    line-height: 1.2;
}

.show-content p {
    max-width: none;
    margin: 0;
    text-align: left;
}

.show-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.show-tags span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    background: rgba(235, 243, 252, 0.9);
    color: var(--accent);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.show-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
}

.show-actions .btn {
    margin-top: 0;
    min-width: 208px;
}

.video-controls,
.gallery-controls,
.song-controls {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: -4px;
}

.swipe-hint {
    display: none;
    width: fit-content;
    margin: 10px auto 0;
    padding: 7px 14px;
    border-radius: 999px;
    border: 1px solid rgba(179, 221, 255, 0.16);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
    text-align: center;
    color: rgba(227, 241, 255, 0.8);
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    white-space: nowrap;
}

.video-nav {
    width: 44px;
    height: 44px;
    border: 1px solid rgba(var(--accent-rgb), 0.14);
    background: white;
    color: var(--accent);
    font: inherit;
    font-size: 1.15rem;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    touch-action: manipulation;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.video-nav:hover {
    transform: translateY(-2px);
    border-color: rgba(var(--accent-rgb), 0.28);
    box-shadow: 0 12px 28px rgba(var(--accent-rgb), 0.12);
}

.video-track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(240px, 320px);
    gap: 16px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding: 2px 2px 10px;
    scrollbar-width: none;
    scrollbar-color: transparent transparent;
    touch-action: pan-x;
    -webkit-overflow-scrolling: touch;
}

.section--showcase .video-track {
    scrollbar-color: transparent transparent;
}

.video-track::-webkit-scrollbar {
    display: none;
}

.ensaios-track-frame {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at center, rgba(105, 178, 255, 0.14), transparent 58%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02));
}

.ensaios-track-frame::before,
.ensaios-track-frame::after {
    content: '';
    position: absolute;
    top: 18px;
    bottom: 18px;
    width: clamp(30px, 4vw, 48px);
    z-index: 2;
    pointer-events: none;
}

.ensaios-track-frame::before {
    left: 18px;
    background: linear-gradient(90deg, rgba(4, 29, 58, 0.86), rgba(4, 29, 58, 0));
}

.ensaios-track-frame::after {
    right: 18px;
    background: linear-gradient(270deg, rgba(4, 29, 58, 0.86), rgba(4, 29, 58, 0));
}

.ensaios-track {
    --ensaios-card-width: clamp(248px, 28vw, 356px);
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: var(--ensaios-card-width);
    gap: 16px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: max(2px, calc((100% - var(--ensaios-card-width)) / 2));
    padding: 2px max(2px, calc((100% - var(--ensaios-card-width)) / 2)) 10px;
    scrollbar-width: none;
    touch-action: pan-x;
    -webkit-overflow-scrolling: touch;
}

.ensaios-track::-webkit-scrollbar {
    display: none;
}

.ensaios-card {
    --ensaios-rotate: 0deg;
    --ensaios-scale: 0.94;
    --ensaios-offset: 8px;
    --ensaios-opacity: 0.74;
    position: relative;
    border-radius: 0;
    overflow: hidden;
    scroll-snap-align: center;
    scroll-snap-stop: always;
    border: 1px solid rgba(160, 210, 255, 0.16);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(69, 108, 160, 0.08));
    box-shadow: 0 20px 40px rgba(0, 17, 34, 0.22);
    isolation: isolate;
    opacity: var(--ensaios-opacity);
    transform: perspective(1400px) rotateY(var(--ensaios-rotate)) translateY(var(--ensaios-offset)) scale(var(--ensaios-scale));
    transform-origin: center center;
    transition: transform 0.34s ease, box-shadow 0.26s ease, opacity 0.24s ease, border-color 0.24s ease;
    will-change: transform, opacity;
}

.ensaios-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(118deg, transparent 4%, rgba(var(--accent-bright-rgb), 0.1) 20%, rgba(255, 255, 255, 0.14) 34%, transparent 54%);
    pointer-events: none;
    z-index: 2;
}

.ensaios-card::after {
    content: '';
    position: absolute;
    inset: auto -18% -24% auto;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(105, 178, 255, 0.34), transparent 72%);
    opacity: 0.7;
    pointer-events: none;
    z-index: 1;
}

.ensaios-card.is-active {
    border-color: rgba(190, 229, 255, 0.34);
    box-shadow:
        0 28px 54px rgba(0, 17, 34, 0.24),
        0 0 0 1px rgba(186, 225, 255, 0.14);
}

.ensaios-card img {
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    display: block;
    cursor: pointer;
    filter: none;
    image-rendering: auto;
    transition: transform 0.28s ease;
    will-change: transform;
}

.ensaios-card:hover img,
.ensaios-card.is-active img {
    transform: scale(1.035);
}

.ensaios-card__caption {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    gap: 5px;
    padding: 20px 18px 16px;
    background: linear-gradient(180deg, transparent 0%, rgba(4, 22, 44, 0.7) 50%, rgba(4, 22, 44, 0.96) 100%);
    pointer-events: none;
    z-index: 3;
}

.ensaios-card__tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 28px;
    padding: 6px 11px;
    border-radius: 999px;
    border: 1px solid rgba(199, 229, 255, 0.18);
    background: rgba(6, 31, 58, 0.58);
    color: rgba(235, 245, 255, 0.92);
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.ensaios-card__caption strong {
    color: #ffffff;
    font-size: 1rem;
    line-height: 1.2;
}

.ensaios-card__text {
    color: rgba(223, 240, 255, 0.82);
    font-size: 0.84rem;
    line-height: 1.45;
}

.video-card {
    padding: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(235, 243, 255, 0.92));
    text-align: left;
    cursor: pointer;
    scroll-snap-align: center;
    scroll-snap-stop: always;
    box-shadow: 0 18px 38px rgba(var(--accent-rgb), 0.1);
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}

.video-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(118deg, transparent 2%, rgba(var(--accent-bright-rgb), 0.1) 20%, rgba(255, 255, 255, 0.62) 34%, transparent 52%);
    transform: none;
    opacity: 0.3;
    pointer-events: none;
}

.video-card::after {
    content: '';
    position: absolute;
    inset: auto 18px -20px;
    height: 26px;
    background: radial-gradient(circle, rgba(89, 171, 255, 0.28), transparent 72%);
    opacity: 0.42;
    filter: blur(7px);
    pointer-events: none;
}

.video-card > * {
    position: relative;
    z-index: 1;
}

.video-card:hover {
    transform: translateY(-7px) scale(1.01);
    border-color: rgba(0, 81, 162, 0.24);
    box-shadow: 0 26px 50px rgba(var(--accent-rgb), 0.16);
    background: linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(229, 241, 255, 0.96));
}

.video-thumb {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #d7e3ef;
    border-radius: 0;
}

.video-thumb::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(0, 17, 38, 0.02), rgba(0, 17, 38, 0.1) 100%),
        radial-gradient(circle at 78% 18%, rgba(111, 187, 255, 0.12), transparent 24%);
}

.video-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.45s ease;
    filter: none;
    image-rendering: auto;
}

.video-card:hover .video-thumb img {
    transform: scale(1.05);
}

.video-play {
    position: absolute;
    right: 14px;
    bottom: 16px;
    width: 48px;
    height: 48px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: linear-gradient(180deg, rgba(11, 80, 151, 0.96), rgba(4, 45, 90, 0.96));
    border: 1px solid rgba(255, 255, 255, 0.18);
    color: white;
    font-size: 1rem;
    box-shadow: 0 12px 26px rgba(var(--accent-rgb), 0.28);
    backdrop-filter: blur(8px);
    animation: playPulse 3.6s ease-in-out infinite;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.video-card:hover .video-play {
    transform: scale(1.08);
    box-shadow: 0 16px 30px rgba(var(--accent-rgb), 0.34);
}

.video-meta {
    padding: 14px 14px 18px;
    text-align: center;
}

.video-meta strong {
    display: block;
    color: var(--accent);
    font-size: 0.98rem;
    line-height: 1.3;
}

.video-meta span {
    display: block;
    margin-top: 6px;
    color: var(--ink);
    font-size: 0.84rem;
    line-height: 1.45;
    letter-spacing: 0.02em;
}

.video-carousel-meta {
    margin-top: 22px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    flex-wrap: wrap;
}

.video-carousel-copy {
    display: grid;
    gap: 6px;
    max-width: 42rem;
}

.video-carousel-copy strong {
    color: #ffffff;
    font-size: 1.02rem;
    line-height: 1.2;
}

.video-carousel-copy span {
    color: rgba(223, 240, 255, 0.82);
    font-size: 0.9rem;
    line-height: 1.55;
}

.video-carousel-badges {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.video-carousel-badges span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 7px 12px;
    border-radius: 999px;
    border: 1px solid rgba(188, 223, 255, 0.18);
    background: rgba(255, 255, 255, 0.08);
    color: rgba(236, 244, 255, 0.92);
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.video-thumb video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.45s ease;
}

.video-card:hover .video-thumb video {
    transform: scale(1.05);
}

.video-track-frame--local {
    margin-top: 24px;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    contain: layout;
}

.video-track-frame--local::before,
.video-track-frame--local::after {
    display: none;
}

.video-track--local {
    --video-card-width: clamp(280px, 34vw, 430px);
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: var(--video-card-width);
    gap: 18px;
    padding: 2px max(2px, calc((100% - var(--video-card-width)) / 2)) 8px;
    scroll-padding-inline: max(2px, calc((100% - var(--video-card-width)) / 2));
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    touch-action: pan-x;
}

/* Exact reference skin: artwork is the visual source; controls are transparent hotspots. */
#jukebox.jukebox-reference {
    position: relative !important;
    left: auto !important;
    width: 100% !important;
    max-width: 1160px !important;
    margin: clamp(26px, 3vw, 42px) auto clamp(34px, 4vw, 52px) !important;
    padding: 0 !important;
    transform: none !important;
    background: transparent !important;
    overflow: hidden !important;
    scroll-margin-top: calc(var(--site-header-height, 92px) + 18px) !important;
}

#jukebox.jukebox-reference,
#jukebox.jukebox-reference * {
    box-sizing: border-box !important;
}

#jukebox.jukebox-reference .jukebox-reference__art {
    width: 100% !important;
    aspect-ratio: 1536 / 1024 !important;
    border-radius: 0 !important;
    background: url("../imagens/jukebox/jukebox-do-rei-reference.jpeg") center / contain no-repeat !important;
    filter: drop-shadow(0 30px 70px rgba(0, 0, 0, 0.24)) !important;
}

@media (min-width: 1121px) {
    #jukebox.jukebox-reference {
        max-width: 1132px !important;
    }

    #jukebox.jukebox-reference .jukebox-reference__art {
        max-height: min(68vh, 754px) !important;
    }
}

#jukebox.jukebox-reference .jukebox-reference__hotspots,
#jukebox.jukebox-reference .hotspot {
    position: absolute !important;
}

#jukebox.jukebox-reference .jukebox-reference__hotspots {
    inset: 0 !important;
    z-index: 3 !important;
}

#jukebox.jukebox-reference .hotspot {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: transparent !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    appearance: none !important;
    cursor: pointer !important;
}

#jukebox.jukebox-reference .hotspot:focus-visible {
    outline: 2px solid rgba(48, 200, 255, 0.95) !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 6px rgba(0, 145, 255, 0.18) !important;
}

#jukebox.jukebox-reference .hotspot:hover,
#jukebox.jukebox-reference .hotspot:active {
    background: transparent !important;
    box-shadow: none !important;
    filter: none !important;
}

#jukebox.jukebox-reference .hotspot--top-heart { left: 81.3% !important; top: 7.1% !important; width: 3.8% !important; height: 5.7% !important; border-radius: 50% !important; }
#jukebox.jukebox-reference .hotspot--top-volume { left: 86.6% !important; top: 7.1% !important; width: 3.8% !important; height: 5.7% !important; border-radius: 50% !important; }
#jukebox.jukebox-reference .hotspot--top-more { left: 91.8% !important; top: 7.1% !important; width: 3.8% !important; height: 5.7% !important; border-radius: 50% !important; }
#jukebox.jukebox-reference .hotspot--voice-daniel { left: 4.9% !important; top: 16.2% !important; width: 12.9% !important; height: 4.8% !important; border-radius: 999px !important; }
#jukebox.jukebox-reference .hotspot--voice-roberto { left: 17.9% !important; top: 16.2% !important; width: 14.1% !important; height: 4.8% !important; border-radius: 999px !important; }
#jukebox.jukebox-reference .hotspot--deck-knob { left: 5.1% !important; top: 24.1% !important; width: 3.1% !important; height: 4.9% !important; border-radius: 50% !important; }
#jukebox.jukebox-reference .hotspot--record { left: 8.6% !important; top: 22.4% !important; width: 33.5% !important; height: 50.3% !important; border-radius: 50% !important; }
#jukebox.jukebox-reference .hotspot--speed { left: 4.9% !important; top: 63.4% !important; width: 4.8% !important; height: 7.4% !important; border-radius: 50% !important; }
#jukebox.jukebox-reference .hotspot--volume { left: 40.5% !important; top: 65.6% !important; width: 5.2% !important; height: 7.9% !important; border-radius: 50% !important; }
#jukebox.jukebox-reference .hotspot--track-heart { left: 90.4% !important; top: 20.4% !important; width: 3.1% !important; height: 5.1% !important; border-radius: 50% !important; }
#jukebox.jukebox-reference .hotspot--progress { left: 51.4% !important; top: 52.7% !important; width: 42.2% !important; height: 2.9% !important; border-radius: 999px !important; }
#jukebox.jukebox-reference .hotspot--shuffle { left: 51.5% !important; top: 58.4% !important; width: 5.4% !important; height: 5.0% !important; border-radius: 999px !important; }
#jukebox.jukebox-reference .hotspot--prev { left: 58.7% !important; top: 57.8% !important; width: 7.5% !important; height: 6.3% !important; border-radius: 999px !important; }
#jukebox.jukebox-reference .hotspot--play { left: 68.5% !important; top: 56.5% !important; width: 6.0% !important; height: 8.6% !important; border-radius: 50% !important; }
#jukebox.jukebox-reference .hotspot--next { left: 76.6% !important; top: 57.8% !important; width: 7.5% !important; height: 6.3% !important; border-radius: 999px !important; }
#jukebox.jukebox-reference .hotspot--repeat { left: 88.7% !important; top: 58.4% !important; width: 5.4% !important; height: 5.0% !important; border-radius: 999px !important; }
#jukebox.jukebox-reference .hotspot--nav-prev { left: 50.8% !important; top: 68.2% !important; width: 13.2% !important; height: 5.3% !important; border-radius: 9px !important; }
#jukebox.jukebox-reference .hotspot--search { left: 64.9% !important; top: 68.2% !important; width: 13.5% !important; height: 5.3% !important; border-radius: 9px !important; }
#jukebox.jukebox-reference .hotspot--nav-next { left: 79.4% !important; top: 68.2% !important; width: 15.0% !important; height: 5.3% !important; border-radius: 9px !important; }
#jukebox.jukebox-reference .hotspot--carousel-next { left: 95.7% !important; top: 84.8% !important; width: 3.4% !important; height: 5.5% !important; border-radius: 50% !important; }

#jukebox.jukebox-reference .hotspot--tracks {
    left: 4.2% !important;
    top: 81.0% !important;
    width: 90.5% !important;
    height: 12.0% !important;
}

#jukebox.jukebox-reference .hotspot--tracks .jukebox-classic-card {
    position: absolute !important;
    top: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: transparent !important;
    overflow: hidden !important;
    cursor: pointer !important;
}

#jukebox.jukebox-reference .hotspot--tracks .jukebox-classic-card:nth-child(1) { left: 0 !important; width: 15.7% !important; }
#jukebox.jukebox-reference .hotspot--tracks .jukebox-classic-card:nth-child(2) { left: 16.8% !important; width: 15.0% !important; }
#jukebox.jukebox-reference .hotspot--tracks .jukebox-classic-card:nth-child(3) { left: 33.1% !important; width: 15.9% !important; }
#jukebox.jukebox-reference .hotspot--tracks .jukebox-classic-card:nth-child(4) { left: 50.0% !important; width: 15.6% !important; }
#jukebox.jukebox-reference .hotspot--tracks .jukebox-classic-card:nth-child(5) { left: 66.6% !important; width: 15.8% !important; }
#jukebox.jukebox-reference .hotspot--tracks .jukebox-classic-card:nth-child(6) { left: 83.5% !important; width: 15.0% !important; }

#jukebox.jukebox-reference .hotspot--tracks .jukebox-classic-card > * {
    opacity: 0 !important;
}

#jukebox.jukebox-reference .jukebox-reference__state {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
}

#jukebox.jukebox-reference .jukebox-reference__search {
    width: min(100%, 960px) !important;
    margin: 18px auto 0 !important;
    padding: 18px !important;
    border: 1px solid rgba(71, 126, 190, 0.35) !important;
    border-radius: 14px !important;
    background: rgba(3, 9, 20, 0.96) !important;
    color: #f8fbff !important;
}

#jukebox.jukebox-reference .jukebox-reference__player {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
}

#jukebox.jukebox-reference .jukebox-reference__search[hidden],
#jukebox.jukebox-reference .jukebox-reference__player[hidden],
#jukebox.jukebox-reference .jukebox-reference__search-results[hidden] {
    display: none !important;
}

#jukebox.jukebox-reference .jukebox-reference__search-modes,
#jukebox.jukebox-reference .jukebox-reference__search-form {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: center !important;
}

#jukebox.jukebox-reference .jukebox-reference__search-modes span {
    color: #32c6ff !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
}

#jukebox.jukebox-reference .jukebox-reference__search-modes button,
#jukebox.jukebox-reference .jukebox-reference__search-form button {
    min-height: 42px !important;
    padding: 0 16px !important;
    border: 1px solid rgba(72, 126, 197, 0.44) !important;
    border-radius: 10px !important;
    background: linear-gradient(180deg, rgba(15, 28, 50, 0.96), rgba(5, 12, 25, 0.98)) !important;
    color: #fff !important;
    font-weight: 800 !important;
}

#jukebox.jukebox-reference .jukebox-reference__search-modes button.is-active,
#jukebox.jukebox-reference .jukebox-reference__search-modes button[aria-pressed="true"] {
    background: linear-gradient(180deg, #27bfff 0%, #0875df 52%, #0050bc 100%) !important;
}

#jukebox.jukebox-reference .jukebox-reference__search-form {
    margin-top: 14px !important;
}

#jukebox.jukebox-reference .jukebox-reference__search-form input {
    flex: 1 1 260px !important;
    min-height: 42px !important;
    border: 1px solid rgba(72, 126, 197, 0.44) !important;
    border-radius: 10px !important;
    background: #020713 !important;
    color: #fff !important;
    padding: 0 14px !important;
}

#jukebox.jukebox-reference #jukeboxSearchMeta {
    margin: 12px 0 0 !important;
    color: #9fb0c7 !important;
}

#jukebox.jukebox-reference .jukebox-search-result {
    display: flex !important;
    width: 100% !important;
    gap: 12px !important;
    align-items: center !important;
    margin-top: 10px !important;
    padding: 10px !important;
    border: 1px solid rgba(72, 126, 197, 0.32) !important;
    border-radius: 10px !important;
    background: rgba(6, 15, 31, 0.96) !important;
    color: #fff !important;
    text-align: left !important;
}

#jukebox.jukebox-reference .jukebox-search-result__media img {
    width: 52px !important;
    height: 52px !important;
    border-radius: 7px !important;
    object-fit: cover !important;
}

#jukebox.jukebox-reference .jukebox-search-result__body {
    min-width: 0 !important;
    display: grid !important;
}

#jukebox.jukebox-reference .jukebox-search-result__body span {
    color: #8d9aad !important;
    font-size: 0.82rem !important;
}

@media (max-width: 760px) {
    #jukebox.jukebox-reference {
        width: calc(100vw - 20px) !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }

    #jukebox.jukebox-reference .jukebox-reference__art,
    #jukebox.jukebox-reference .jukebox-reference__hotspots {
        width: 100% !important;
        max-width: 100% !important;
    }

    #jukebox.jukebox-reference .jukebox-reference__art {
        height: auto !important;
    }
}

/* Mobile audit: keep the jukebox panels stacked and non-overlapping. */
@media (max-width: 760px) {
    body main.container #jukebox.section--jukebox-inline {
        width: calc(100vw - 28px) !important;
        max-width: calc(100vw - 28px) !important;
        padding: 24px 14px 28px !important;
        margin: 24px auto 42px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.section--jukebox-inline h2 {
        font-size: clamp(2.65rem, 14vw, 4.1rem) !important;
        line-height: 0.92 !important;
        margin-bottom: 22px !important;
    }

    body main.container #jukebox.section--jukebox-inline .section-lead {
        display: none !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-console {
        padding: 14px !important;
        border-radius: 16px !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-top-actions {
        top: 10px !important;
        right: 10px !important;
        gap: 6px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-top-action {
        width: 34px !important;
        height: 34px !important;
        font-size: 0.9rem !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell {
        display: block !important;
        padding-top: 0 !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-voice-dock {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: 100% !important;
        height: 36px !important;
        margin: 0 0 12px !important;
        z-index: 5 !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-voice-dock__button {
        font-size: 0.63rem !important;
        min-width: 0 !important;
        padding: 0 9px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    body main.container #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
    body main.container #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
        display: block !important;
        height: 320px !important;
        min-height: 320px !important;
        max-height: 320px !important;
        width: 100% !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
        left: 11% !important;
        top: 15% !important;
        width: min(78%, 250px) !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        left: calc(11% + 8px) !important;
        top: calc(15% + 8px) !important;
        width: calc(min(78%, 250px) - 16px) !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        left: calc(11% + (min(78%, 250px) / 2) + 1px) !important;
        top: calc(15% + (min(78%, 250px) / 2) + 5px) !important;
        width: 82px !important;
        height: 82px !important;
        min-width: 82px !important;
        min-height: 82px !important;
        max-width: 82px !important;
        max-height: 82px !important;
        padding: 3px !important;
    }


    body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--top {
        left: 7% !important;
        top: 20% !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--volume {
        right: 7% !important;
        bottom: 12% !important;
        width: 48px !important;
        height: 48px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        height: auto !important;
        min-height: 390px !important;
        max-height: none !important;
        padding: 28px 14px 16px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__headline {
        min-height: 118px !important;
        padding-right: 38px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-display__artist {
        display: block !important;
        max-width: 100% !important;
        font-size: 0.64rem !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-display strong {
        display: block !important;
        font-size: clamp(2.1rem, 14vw, 3.25rem) !important;
        line-height: 0.9 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-display p {
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        font-size: 0.8rem !important;
        line-height: 1.35 !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-signal {
        height: 58px !important;
        margin-top: 8px !important;
        gap: 4px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-progress {
        margin-top: 8px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-control-ring {
        grid-template-columns: repeat(5, minmax(42px, 1fr)) !important;
        gap: 8px !important;
        margin-top: 12px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-control-ring__button,
    body main.container #jukebox.section--jukebox-inline .jukebox-control-ring__button--wide {
        width: 100% !important;
        min-width: 0 !important;
        height: 42px !important;
        border-radius: 999px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-control-ring__button--play {
        height: 52px !important;
        margin-top: -5px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__actions {
        margin-top: 12px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__transport,
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__footer {
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-display__button,
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__search-toggle,
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__link {
        min-width: 0 !important;
        height: 44px !important;
        padding: 0 10px !important;
        font-size: 0.68rem !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-classics {
        margin-top: 16px !important;
    }
}

/* Final viewport fit: keep the reference artwork fully visible under the fixed header. */
#jukebox.jukebox-reference {
    width: min(
        100%,
        1280px,
        calc((100svh - var(--site-header-height, 92px) - 150px) * 1.5)
    ) !important;
    max-width: min(
        100%,
        1280px,
        calc((100svh - var(--site-header-height, 92px) - 150px) * 1.5)
    ) !important;
    margin-top: 18px !important;
    margin-bottom: 42px !important;
    overflow: visible !important;
    scroll-margin-top: calc(var(--site-header-height, 92px) + 24px) !important;
}

#jukebox.jukebox-reference .jukebox-reference__art {
    width: 100% !important;
    max-height: calc(100svh - var(--site-header-height, 92px) - 150px) !important;
    aspect-ratio: 1536 / 1024 !important;
}

@media (min-width: 1400px) {
    #jukebox.jukebox-reference {
        width: min(
            100%,
            1280px,
            calc((100svh - var(--site-header-height, 92px) - 130px) * 1.5)
        ) !important;
        max-width: min(
            100%,
            1280px,
            calc((100svh - var(--site-header-height, 92px) - 130px) * 1.5)
        ) !important;
    }

    #jukebox.jukebox-reference .jukebox-reference__art {
        max-height: calc(100svh - var(--site-header-height, 92px) - 130px) !important;
    }
}

@media (max-width: 760px) {
    #jukebox.jukebox-reference {
        width: calc(100vw - 20px) !important;
        max-width: calc(100vw - 20px) !important;
        margin-top: 18px !important;
        overflow: visible !important;
    }

    #jukebox.jukebox-reference .jukebox-reference__art {
        max-height: none !important;
    }
}

/* Rebuilt Jukebox: isolated from the legacy accumulated jukebox styles. */
#jukebox.rei-jukebox {
    --rei-blue: #0aa7ff;
    --rei-blue-strong: #0070df;
    --rei-panel: #050a16;
    --rei-line: rgba(86, 145, 220, 0.34);
    --rei-text: #f8fbff;
    position: relative;
    left: 50%;
    width: min(96vw, 1480px);
    max-width: none;
    margin: clamp(34px, 4vw, 62px) 0 clamp(44px, 5vw, 76px);
    padding: 0;
    transform: translateX(-50%);
    color: var(--rei-text);
    background: transparent;
    overflow: visible;
}

/* Rebuild fit lock: the jukebox lives inside the existing site container. */
#jukebox.rei-jukebox {
    left: auto !important;
    width: 100% !important;
    max-width: 1410px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    transform: none !important;
}

#jukebox.rei-jukebox .rei-jukebox__frame {
    padding: 28px 26px 28px !important;
}


#jukebox.rei-jukebox h2 {
    font-size: clamp(2.55rem, 3vw, 3.55rem) !important;
}

#jukebox.rei-jukebox .rei-jukebox__top-actions {
    right: 4px !important;
    gap: 16px !important;
}

#jukebox.rei-jukebox .rei-jukebox__round {
    width: 52px !important;
    height: 52px !important;
}

#jukebox.rei-jukebox .rei-jukebox__main {
    grid-template-columns: minmax(0, 0.475fr) minmax(0, 0.525fr) !important;
    gap: 20px !important;
}

#jukebox.rei-jukebox .rei-jukebox__deck,
#jukebox.rei-jukebox .rei-jukebox__panel {
    min-height: 470px !important;
}

#jukebox.rei-jukebox .rei-jukebox__voice {
    width: min(360px, calc(100% - 160px)) !important;
    min-width: 0 !important;
    height: 50px !important;
}

#jukebox.rei-jukebox .rei-jukebox__voice button {
    font-size: 0.74rem !important;
    letter-spacing: 0.09em !important;
}

#jukebox.rei-jukebox .rei-jukebox__record {
    left: 10.5% !important;
    top: 16.5% !important;
    width: min(70%, 350px) !important;
}

#jukebox.rei-jukebox .rei-jukebox__cover {
    border-width: 8px !important;
}


#jukebox.rei-jukebox .rei-jukebox__pilot--side {
    left: 22px !important;
    bottom: 160px !important;
    width: 58px !important;
    height: 58px !important;
}

#jukebox.rei-jukebox .rei-jukebox__speed {
    left: 96px !important;
    bottom: 160px !important;
}

#jukebox.rei-jukebox .rei-jukebox__volume {
    right: 22px !important;
    bottom: 28px !important;
}

#jukebox.rei-jukebox .rei-jukebox__volume i {
    width: 58px !important;
    height: 58px !important;
}

#jukebox.rei-jukebox .rei-jukebox__panel {
    padding: 46px 34px 20px !important;
}

#jukebox.rei-jukebox .rei-jukebox__artist {
    margin-bottom: 12px !important;
    font-size: 0.82rem !important;
}

#jukebox.rei-jukebox #jukeboxDisplayTitle {
    margin-bottom: 10px !important;
    font-size: clamp(2.75rem, 3.3vw, 3.8rem) !important;
}

#jukebox.rei-jukebox #jukeboxDisplayMessage {
    font-size: 0.9rem !important;
    line-height: 1.35 !important;
}

#jukebox.rei-jukebox .rei-jukebox__eq {
    height: 104px !important;
    margin: 18px 0 12px !important;
    gap: 8px !important;
    padding: 0 16px 16px !important;
}

#jukebox.rei-jukebox .rei-jukebox__controls {
    grid-template-columns: 58px 88px 72px 88px 58px !important;
    gap: 14px !important;
    margin-top: 22px !important;
}

#jukebox.rei-jukebox .rei-jukebox__controls button {
    height: 48px !important;
    font-size: 1.25rem !important;
}

#jukebox.rei-jukebox .rei-jukebox__controls .rei-jukebox__control-play {
    width: 72px !important;
    height: 72px !important;
    font-size: 1.85rem !important;
}

#jukebox.rei-jukebox .rei-jukebox__actions {
    margin-top: 18px !important;
}

#jukebox.rei-jukebox .rei-jukebox__actions button,
#jukebox.rei-jukebox .rei-jukebox__actions a {
    min-height: 46px !important;
    font-size: 0.74rem !important;
}

#jukebox.rei-jukebox .rei-jukebox__classics {
    margin-top: 22px !important;
}

#jukebox.rei-jukebox .rei-jukebox__classics-track {
    gap: 12px !important;
}

#jukebox.rei-jukebox .jukebox-classic-card {
    min-height: 84px !important;
    padding: 9px !important;
}

#jukebox.rei-jukebox .jukebox-classic-card img {
    width: 54px !important;
    height: 54px !important;
    flex-basis: 54px !important;
}

#jukebox.rei-jukebox .jukebox-classic-card__body strong {
    font-size: 0.78rem !important;
}

#jukebox.rei-jukebox .jukebox-classic-card__body span {
    font-size: 0.72rem !important;
}

/* Turntable correction: cleaner arm and stronger LP presence. */
#jukebox.rei-jukebox .rei-jukebox__record {
    left: 8.7% !important;
    top: 15.2% !important;
    width: min(74%, 375px) !important;
}

#jukebox.rei-jukebox .rei-jukebox__cover {
    width: 31% !important;
}


@media (max-width: 760px) {
    #jukebox.rei-jukebox {
        width: min(100vw - 28px, 430px) !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__frame {
        padding: 22px 14px !important;
        border-radius: 16px !important;
    }


    #jukebox.rei-jukebox h2 {
        font-size: clamp(2.2rem, 12vw, 3rem) !important;
        letter-spacing: 0.1em !important;
        line-height: 0.95 !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__top-actions {
        display: none !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__main {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__deck {
        min-height: 390px !important;
        border-radius: 16px !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__voice {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: calc(100% - 26px) !important;
        min-width: 0 !important;
        height: 50px !important;
        margin: 16px auto 0 !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__voice button {
        font-size: 0.66rem !important;
        letter-spacing: 0.04em !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__record {
        left: 50% !important;
        top: 98px !important;
        width: 250px !important;
        transform: translateX(-50%) !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__cover {
        border-width: 6px !important;
    }


    #jukebox.rei-jukebox .rei-jukebox__pilot--side,
    #jukebox.rei-jukebox .rei-jukebox__speed,
    #jukebox.rei-jukebox .rei-jukebox__volume {
        display: none !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__panel {
        min-height: 0 !important;
        padding: 24px 16px 18px !important;
        border-radius: 16px !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__heart {
        display: none !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__artist {
        max-width: 100% !important;
        font-size: 0.72rem !important;
        letter-spacing: 0.08em !important;
    }

    #jukebox.rei-jukebox #jukeboxDisplayTitle {
        font-size: clamp(2.4rem, 12vw, 3.1rem) !important;
        white-space: normal !important;
    }

    #jukebox.rei-jukebox #jukeboxDisplayMessage {
        font-size: 0.9rem !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__eq {
        grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
        height: 86px !important;
        gap: 7px !important;
        padding-inline: 0 !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(n + 13) {
        display: none !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-template-columns: 40px 54px 62px 54px 40px !important;
        gap: 7px !important;
        margin-top: 20px !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__controls button {
        height: 42px !important;
        font-size: 1rem !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__controls .rei-jukebox__control-play {
        width: 62px !important;
        height: 62px !important;
        font-size: 1.55rem !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__actions {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        margin-top: 18px !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__classics {
        padding: 0 !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__classics-track {
        display: flex !important;
        gap: 10px !important;
        overflow-x: auto !important;
        padding-bottom: 6px !important;
    }

    #jukebox.rei-jukebox .jukebox-classic-card {
        min-width: 228px !important;
        min-height: 84px !important;
    }

    #jukebox.rei-jukebox .jukebox-classic-card img {
        width: 56px !important;
        height: 56px !important;
        flex-basis: 56px !important;
    }

    #jukebox.rei-jukebox .rei-jukebox__classics-arrow {
        display: none !important;
    }
}

#jukebox.rei-jukebox *,
#jukebox.rei-jukebox *::before,
#jukebox.rei-jukebox *::after {
    box-sizing: border-box;
}

#jukebox.rei-jukebox button,
#jukebox.rei-jukebox a {
    font: inherit;
}

#jukebox.rei-jukebox .rei-jukebox__frame {
    position: relative;
    padding: 30px 36px 36px;
    border: 1px solid rgba(82, 129, 204, 0.38);
    border-radius: 20px;
    background:
        radial-gradient(circle at 50% 3%, rgba(0, 91, 201, 0.28), transparent 28%),
        radial-gradient(circle at 9% 53%, rgba(0, 157, 255, 0.12), transparent 27%),
        linear-gradient(145deg, #01050f 0%, #061326 52%, #01040d 100%);
    box-shadow:
        0 30px 90px rgba(0, 0, 0, 0.42),
        0 0 72px rgba(0, 119, 255, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.055);
    overflow: hidden;
}

#jukebox.rei-jukebox .rei-jukebox__frame::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background:
        linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.035), transparent),
        radial-gradient(circle at 50% 12%, rgba(31, 142, 255, 0.14), transparent 22%);
    pointer-events: none;
}

#jukebox.rei-jukebox .rei-jukebox__frame > * {
    position: relative;
    z-index: 1;
}


#jukebox.rei-jukebox h2 {
    margin: 0;
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(2.8rem, 3.35vw, 4rem);
    font-weight: 500;
    line-height: 0.9;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: #ffffff;
    text-shadow: 0 0 26px rgba(160, 215, 255, 0.24);
}


#jukebox.rei-jukebox .rei-jukebox__top-actions {
    position: absolute;
    top: 3px;
    right: 0;
    display: flex;
    gap: 20px;
}

#jukebox.rei-jukebox .rei-jukebox__round {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(82, 132, 210, 0.42);
    border-radius: 50%;
    background: radial-gradient(circle at 50% 35%, rgba(20, 36, 67, 0.94), rgba(3, 8, 19, 0.98) 70%);
    color: #f7fbff;
    font-size: 1.55rem;
    line-height: 1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.075), 0 14px 34px rgba(0, 0, 0, 0.28);
    cursor: pointer;
}

#jukebox.rei-jukebox .rei-jukebox__main {
    display: grid;
    grid-template-columns: minmax(0, 0.47fr) minmax(0, 0.53fr);
    gap: 22px;
    align-items: stretch;
}

#jukebox.rei-jukebox .rei-jukebox__deck,
#jukebox.rei-jukebox .rei-jukebox__panel {
    position: relative;
    min-height: 570px;
    border: 1px solid var(--rei-line);
    border-radius: 20px;
    background:
        radial-gradient(circle at 18% 16%, rgba(0, 118, 255, 0.14), transparent 29%),
        linear-gradient(145deg, rgba(8, 16, 30, 0.98), rgba(2, 6, 16, 0.995) 72%);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        inset 0 0 50px rgba(0, 0, 0, 0.34),
        0 20px 54px rgba(0, 0, 0, 0.28);
    overflow: hidden;
}

#jukebox.rei-jukebox .rei-jukebox__voice {
    position: absolute;
    top: 20px;
    left: 18px;
    z-index: 8;
    width: min(425px, calc(100% - 240px));
    min-width: 360px;
    height: 54px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    padding: 6px;
    border: 1px solid rgba(77, 130, 199, 0.38);
    border-radius: 999px;
    background: rgba(3, 8, 19, 0.96);
    box-shadow: inset 0 0 24px rgba(0, 0, 0, 0.78);
}

#jukebox.rei-jukebox .rei-jukebox__voice button,
#jukebox.rei-jukebox .rei-jukebox__search-modes button {
    min-width: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #b8c2d3;
    font-size: 0.86rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
}

#jukebox.rei-jukebox .rei-jukebox__voice button.is-active,
#jukebox.rei-jukebox .rei-jukebox__voice button[aria-pressed="true"],
#jukebox.rei-jukebox .rei-jukebox__search-modes button.is-active,
#jukebox.rei-jukebox .rei-jukebox__search-modes button[aria-pressed="true"] {
    color: #fff;
    background: linear-gradient(180deg, #27bfff 0%, #0875df 52%, #0050bc 100%);
    box-shadow: 0 0 28px rgba(0, 145, 255, 0.58), inset 0 1px 0 rgba(255, 255, 255, 0.34);
}

#jukebox.rei-jukebox .rei-jukebox__record {
    position: absolute;
    left: 8.5%;
    top: 14.5%;
    width: min(76%, 500px);
    aspect-ratio: 1;
    border-radius: 50%;
    overflow: hidden;
    background: #010307;
    box-shadow:
        0 30px 58px rgba(0, 0, 0, 0.88),
        0 0 0 9px #02050b,
        0 0 0 13px rgba(147, 176, 220, 0.15);
}

#jukebox.rei-jukebox .rei-jukebox__vinyl {
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background:
        radial-gradient(circle at 50% 50%, transparent 0 16%, rgba(0, 0, 0, 0.54) 16.5% 17.6%, transparent 18.2%),
        radial-gradient(ellipse at 33% 24%, rgba(255, 255, 255, 0.3), transparent 16%),
        radial-gradient(ellipse at 70% 76%, rgba(255, 255, 255, 0.1), transparent 17%),
        conic-gradient(from 22deg, rgba(255, 255, 255, 0.18) 0 8deg, transparent 8deg 82deg, rgba(255, 255, 255, 0.08) 82deg 97deg, transparent 97deg 204deg, rgba(0, 123, 255, 0.16) 204deg 218deg, transparent 218deg 360deg),
        repeating-radial-gradient(circle, #1a1d26 0 1px, #05060a 2px 8px, #292d37 9px 10px, #03050a 11px 16px);
    box-shadow:
        inset 0 0 120px rgba(0, 0, 0, 0.96),
        inset 0 0 24px rgba(255, 255, 255, 0.04);
}

#jukebox.rei-jukebox .rei-jukebox__dots {
    position: absolute;
    inset: 14px;
    border: 3px dotted rgba(232, 241, 255, 0.52);
    border-radius: 50%;
    pointer-events: none;
}

#jukebox.rei-jukebox .rei-jukebox__cover {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 34%;
    aspect-ratio: 1;
    transform: translate(-50%, -50%);
    border: 10px solid #061a32;
    border-radius: 50%;
    overflow: hidden;
    background: #071523;
    box-shadow:
        0 0 0 4px rgba(21, 114, 192, 0.26),
        0 0 36px rgba(0, 145, 255, 0.36);
}

#jukebox.rei-jukebox .rei-jukebox__cover img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    border-radius: inherit;
}

#jukebox.rei-jukebox .rei-jukebox__pilot {
    border: 1px solid rgba(71, 133, 203, 0.42);
    background:
        radial-gradient(circle at 50% 50%, #27c7ff 0 8%, #071525 24%, #010408 72%);
    color: transparent;
    box-shadow: 0 0 24px rgba(0, 174, 255, 0.36), inset 0 0 18px rgba(0, 0, 0, 0.88);
    cursor: pointer;
}

#jukebox.rei-jukebox .rei-jukebox__pilot--side {
    position: absolute;
    left: 28px;
    bottom: 190px;
    z-index: 8;
    width: 70px;
    height: 70px;
    border-radius: 14px;
}

#jukebox.rei-jukebox .rei-jukebox__pilot span {
    display: none;
}

#jukebox.rei-jukebox .rei-jukebox__speed {
    position: absolute;
    left: 112px;
    bottom: 190px;
    display: grid;
    gap: 12px;
    color: #c9d4e4;
    font-size: 0.88rem;
}

#jukebox.rei-jukebox .rei-jukebox__volume {
    position: absolute;
    right: 30px;
    bottom: 40px;
    display: grid;
    place-items: center;
    gap: 8px;
    border: 0;
    background: transparent;
    color: #cbd5e3;
    font-size: 0.74rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    cursor: pointer;
}

/* Final Jukebox polish: integrated progress, cleaner buttons, working classics rail. */
@media (min-width: 761px) {
    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        grid-template-rows: 88px 92px 8px 52px 32px !important;
        gap: 8px !important;
        padding: 22px 26px 12px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__tonearm {
        top: 5.2% !important;
        right: 2.4% !important;
        width: 37.5% !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__heart {
        top: 17px !important;
        right: 22px !important;
        width: 30px !important;
        height: 30px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__artist {
        margin-bottom: 6px !important;
        font-size: 0.56rem !important;
        letter-spacing: 0.08em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
        margin-bottom: 6px !important;
        font-size: clamp(1.55rem, 2.18vw, 1.95rem) !important;
        line-height: 0.98 !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayMessage {
        -webkit-line-clamp: 2 !important;
        font-size: 0.64rem !important;
        line-height: 1.22 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        height: 92px !important;
        padding: 0 14px 8px !important;
        gap: 6px !important;
        border-bottom: 0 !important;
        border-radius: 8px 8px 2px 2px !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.07),
            inset 0 -20px 28px rgba(0, 134, 255, 0.08) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq::before {
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        height: 1px !important;
        background: rgba(78, 173, 238, 0.32) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span {
        min-height: 9px !important;
        border-radius: 3px 3px 1px 1px !important;
        box-shadow: 0 0 9px rgba(0, 160, 255, 0.32) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        height: 8px !important;
        min-height: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: transparent !important;
        cursor: pointer !important;
        transform: translateY(-8px) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress .jukebox-progress__time {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0 0 0 0) !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress b {
        height: 2px !important;
        border-radius: 999px !important;
        background: rgba(61, 119, 178, 0.22) !important;
        box-shadow: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress i {
        background: linear-gradient(90deg, #20d4ff, #39b7ff) !important;
        box-shadow: 0 0 10px rgba(30, 196, 255, 0.74) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-template-columns: 42px 58px 52px 58px 42px !important;
        gap: 12px !important;
        align-self: center !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        height: 34px !important;
        border-color: rgba(69, 127, 193, 0.5) !important;
        background:
            radial-gradient(circle at 50% 18%, rgba(255, 255, 255, 0.08), transparent 42%),
            linear-gradient(180deg, rgba(16, 29, 52, 0.96), rgba(4, 10, 24, 0.98)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.08),
            0 8px 18px rgba(0, 0, 0, 0.26) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button--play {
        width: 52px !important;
        height: 52px !important;
        background:
            radial-gradient(circle at 43% 32%, #68ddff, #128df0 48%, #06439c 100%) !important;
        box-shadow:
            0 0 28px rgba(0, 157, 255, 0.56),
            inset 0 1px 0 rgba(255, 255, 255, 0.26),
            inset 0 -10px 18px rgba(0, 20, 62, 0.36) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        gap: 8px !important;
        align-self: center !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions button,
    body main.container #jukebox.rei-jukebox .rei-jukebox__actions a {
        height: 28px !important;
        min-height: 28px !important;
        padding: 0 8px !important;
        border-radius: 7px !important;
        font-size: 0.5rem !important;
        letter-spacing: 0.04em !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics {
        padding: 0 36px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-track {
        display: flex !important;
        gap: 10px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x mandatory !important;
        scrollbar-width: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-track::-webkit-scrollbar {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card {
        flex: 0 0 calc((100% - 50px) / 6) !important;
        min-width: 0 !important;
        scroll-snap-align: start !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-arrow {
        display: grid !important;
        place-items: center !important;
        top: auto !important;
        bottom: 16px !important;
        width: 28px !important;
        height: 28px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-arrow--prev {
        left: 0 !important;
        right: auto !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-arrow--next {
        right: 0 !important;
        left: auto !important;
    }
}

#jukebox.rei-jukebox .rei-jukebox__volume i {
    width: 68px;
    height: 68px;
    border-radius: 50%;
    background:
        radial-gradient(circle at 45% 42%, #526173 0 26%, #101724 53%, #02050b 72%),
        conic-gradient(#0aa7ff 0 76deg, rgba(255, 255, 255, 0.12) 76deg 270deg, #1a4bff 270deg 310deg, transparent 310deg);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.44), 0 0 24px rgba(0, 145, 255, 0.22);
}

#jukebox.rei-jukebox .rei-jukebox__panel {
    padding: 54px 42px 24px;
}

#jukebox.rei-jukebox .rei-jukebox__heart {
    position: absolute;
    top: 42px;
    right: 42px;
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(82, 132, 210, 0.32);
    border-radius: 50%;
    background: rgba(3, 9, 20, 0.55);
    color: #f6fbff;
    font-size: 1.7rem;
}

#jukebox.rei-jukebox .rei-jukebox__artist {
    display: block;
    max-width: calc(100% - 80px);
    margin-bottom: 16px;
    color: #35c9ff;
    font-size: 0.94rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    line-height: 1.25;
    text-transform: uppercase;
}

#jukebox.rei-jukebox #jukeboxDisplayTitle,
#jukebox.rei-jukebox .rei-jukebox__title {
    display: block;
    margin: 0 0 12px;
    overflow: hidden;
    color: #fff;
    font-family: "Cormorant Garamond", serif;
    font-size: clamp(3.3rem, 4vw, 4.8rem);
    font-weight: 600;
    letter-spacing: 0.08em;
    line-height: 0.86;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
    text-shadow: 0 0 24px rgba(255, 255, 255, 0.14);
}

#jukebox.rei-jukebox #jukeboxDisplayMessage,
#jukebox.rei-jukebox .rei-jukebox__text {
    max-width: 42rem;
    margin: 0;
    color: #b8c3d2;
    font-size: 1rem;
    line-height: 1.5;
}

#jukebox.rei-jukebox .rei-jukebox__eq {
    display: grid;
    grid-template-columns: repeat(24, minmax(0, 1fr));
    align-items: end;
    gap: 10px;
    height: 142px;
    margin: 24px 0 16px;
    padding: 0 22px 22px;
    border-bottom: 1px solid rgba(60, 122, 191, 0.25);
    background: linear-gradient(to top, rgba(0, 135, 255, 0.13), rgba(0, 135, 255, 0.03) 44%, transparent 70%);
}

#jukebox.rei-jukebox .rei-jukebox__eq span {
    min-width: 0;
    width: 100%;
    height: 42%;
    border-radius: 3px 3px 0 0;
    background:
        repeating-linear-gradient(to top, #0679ca 0 6px, transparent 6px 12px),
        linear-gradient(to top, #063f76, #00a5ff 62%, #72e6ff);
    filter: drop-shadow(0 0 8px rgba(0, 174, 255, 0.78));
}

#jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(2n) { height: 58%; }
#jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(3n) { height: 82%; }
#jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(4n) { height: 48%; }
#jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(5n) { height: 72%; }
#jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(7n) { height: 94%; }

#jukebox.rei-jukebox .rei-jukebox__progress {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    color: #fff;
    font-size: 1rem;
    font-weight: 800;
}

#jukebox.rei-jukebox .rei-jukebox__progress b {
    height: 6px;
    border-radius: 999px;
    background: rgba(16, 28, 48, 0.98);
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.8);
    overflow: hidden;
}

#jukebox.rei-jukebox .rei-jukebox__progress i {
    display: block;
    width: 34%;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #18baff, #1bdfff);
    box-shadow: 0 0 16px rgba(0, 190, 255, 0.95);
}

#jukebox.rei-jukebox .rei-jukebox__controls {
    display: grid;
    grid-template-columns: 82px 120px 92px 120px 82px;
    justify-content: center;
    align-items: center;
    gap: 28px;
    margin-top: 34px;
}

#jukebox.rei-jukebox .rei-jukebox__controls button {
    height: 58px;
    border: 1px solid rgba(62, 111, 174, 0.44);
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(14, 25, 45, 0.95), rgba(4, 10, 22, 0.98));
    color: #f4f8ff;
    font-size: 1.55rem;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 12px 28px rgba(0, 0, 0, 0.22);
    cursor: pointer;
}

#jukebox.rei-jukebox .rei-jukebox__controls .rei-jukebox__control-play {
    width: 92px;
    height: 92px;
    border-color: rgba(120, 208, 255, 0.58);
    border-radius: 50%;
    background: linear-gradient(180deg, #23bfff 0%, #0874df 52%, #0047b8 100%);
    font-size: 2.3rem;
    box-shadow: 0 0 44px rgba(0, 145, 255, 0.76), inset 0 1px 0 rgba(255, 255, 255, 0.32);
}

#jukebox.rei-jukebox .rei-jukebox__actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}

#jukebox.rei-jukebox .rei-jukebox__actions button,
#jukebox.rei-jukebox .rei-jukebox__actions a {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(65, 116, 181, 0.48);
    border-radius: 10px;
    background: linear-gradient(180deg, rgba(15, 28, 50, 0.96), rgba(5, 12, 25, 0.98));
    color: #f4f8ff;
    font-size: 0.9rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 12px 28px rgba(0, 0, 0, 0.22);
}

#jukebox.rei-jukebox .rei-jukebox__actions #songNext {
    border-color: rgba(120, 208, 255, 0.58);
    background: linear-gradient(180deg, #16a9ff 0%, #0868d8 56%, #004ab7 100%);
    box-shadow: 0 0 28px rgba(0, 145, 255, 0.46), inset 0 1px 0 rgba(255, 255, 255, 0.28);
}

#jukebox.rei-jukebox .rei-jukebox__actions #jukeboxSpotifyLink {
    display: none;
}

#jukebox.rei-jukebox .rei-jukebox__classics {
    position: relative;
    margin-top: 30px;
    padding: 0 50px 0 12px;
}

#jukebox.rei-jukebox .rei-jukebox__classics h3 {
    margin: 0 0 14px;
    color: #28c5ff;
    font-size: 0.9rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

#jukebox.rei-jukebox .rei-jukebox__classics-track {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
}

#jukebox.rei-jukebox .jukebox-classic-card {
    position: relative;
    min-width: 0;
    min-height: 112px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    border: 1px solid rgba(58, 103, 163, 0.35);
    border-radius: 10px;
    background: linear-gradient(180deg, rgba(7, 16, 31, 0.95), rgba(3, 8, 18, 0.98));
    color: #fff;
    text-align: left;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
    overflow: hidden;
    cursor: pointer;
}

#jukebox.rei-jukebox .jukebox-classic-card.is-active,
#jukebox.rei-jukebox .jukebox-classic-card:hover,
#jukebox.rei-jukebox .jukebox-classic-card:focus-visible {
    border-color: rgba(35, 185, 255, 0.9);
    box-shadow: 0 0 24px rgba(0, 145, 255, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

#jukebox.rei-jukebox .jukebox-classic-card img {
    width: 74px;
    height: 74px;
    flex: 0 0 74px;
    border-radius: 7px;
    object-fit: cover;
}

#jukebox.rei-jukebox .jukebox-classic-card__body {
    min-width: 0;
    display: block;
}

#jukebox.rei-jukebox .jukebox-classic-card__body strong,
#jukebox.rei-jukebox .jukebox-classic-card__body span {
    display: block;
    overflow: hidden;
    letter-spacing: 0;
    line-height: 1.25;
    text-overflow: ellipsis;
    text-transform: none;
    white-space: nowrap;
}

#jukebox.rei-jukebox .jukebox-classic-card__body strong {
    color: #f5f8ff;
    font-size: 0.9rem;
    font-weight: 800;
}

#jukebox.rei-jukebox .jukebox-classic-card__body span {
    margin-top: 4px;
    color: #8d9aad;
    font-size: 0.82rem;
}

#jukebox.rei-jukebox .jukebox-classic-card__meter {
    position: absolute;
    right: 12px;
    bottom: 10px;
    color: #18baff;
    font-size: 1.25rem;
}

#jukebox.rei-jukebox .rei-jukebox__classics-arrow {
    position: absolute;
    right: 0;
    bottom: 28px;
    width: 50px;
    height: 50px;
    border: 1px solid rgba(72, 126, 197, 0.44);
    border-radius: 50%;
    background: rgba(4, 12, 27, 0.94);
    color: #fff;
    font-size: 2rem;
    cursor: pointer;
}

#jukebox.rei-jukebox .rei-jukebox__search {
    margin-top: 22px;
    padding: 18px;
    border: 1px solid rgba(71, 126, 190, 0.35);
    border-radius: 14px;
    background: rgba(3, 9, 20, 0.96);
}

#jukebox.rei-jukebox .rei-jukebox__search[hidden],
#jukebox.rei-jukebox .rei-jukebox__player[hidden],
#jukebox.rei-jukebox .rei-jukebox__search-results[hidden] {
    display: none;
}

#jukebox.rei-jukebox .rei-jukebox__search-modes,
#jukebox.rei-jukebox .rei-jukebox__search-form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

#jukebox.rei-jukebox .rei-jukebox__search-modes span {
    color: #32c6ff;
    font-weight: 900;
    text-transform: uppercase;
}

#jukebox.rei-jukebox .rei-jukebox__search-modes button {
    min-height: 40px;
    padding: 0 18px;
    border: 1px solid rgba(72, 126, 197, 0.44);
}

#jukebox.rei-jukebox .rei-jukebox__search-form {
    margin-top: 14px;
}

#jukebox.rei-jukebox .rei-jukebox__search-form input {
    flex: 1 1 260px;
    min-height: 46px;
    border: 1px solid rgba(72, 126, 197, 0.44);
    border-radius: 10px;
    background: #020713;
    color: #fff;
    padding: 0 14px;
}

#jukebox.rei-jukebox .rei-jukebox__search-form button {
    min-height: 46px;
    padding: 0 16px;
    border: 1px solid rgba(72, 126, 197, 0.44);
    border-radius: 10px;
    background: linear-gradient(180deg, rgba(15, 28, 50, 0.96), rgba(5, 12, 25, 0.98));
    color: #fff;
    font-weight: 800;
}

#jukebox.rei-jukebox #jukeboxSearchMeta {
    margin: 12px 0 0;
    color: #9fb0c7;
}

#jukebox.rei-jukebox .jukebox-search-result {
    display: flex;
    width: 100%;
    gap: 12px;
    align-items: center;
    margin-top: 10px;
    padding: 10px;
    border: 1px solid rgba(72, 126, 197, 0.32);
    border-radius: 10px;
    background: rgba(6, 15, 31, 0.96);
    color: #fff;
    text-align: left;
}

#jukebox.rei-jukebox .jukebox-search-result__media img {
    width: 52px;
    height: 52px;
    border-radius: 7px;
    object-fit: cover;
}

#jukebox.rei-jukebox .jukebox-search-result__body {
    min-width: 0;
    display: grid;
}

#jukebox.rei-jukebox .jukebox-search-result__body span {
    color: #8d9aad;
    font-size: 0.82rem;
}

#jukebox.rei-jukebox .rei-jukebox__player {
    margin-top: 16px;
}

@media (max-width: 1240px) {
    #jukebox.rei-jukebox .rei-jukebox__frame {
        padding: 24px;
    }

    #jukebox.rei-jukebox .rei-jukebox__main {
        grid-template-columns: 1fr;
    }

    #jukebox.rei-jukebox .rei-jukebox__deck,
    #jukebox.rei-jukebox .rei-jukebox__panel {
        min-height: 520px;
    }

    #jukebox.rei-jukebox .rei-jukebox__record {
        left: 11%;
        width: min(62%, 460px);
    }

    #jukebox.rei-jukebox .rei-jukebox__classics-track {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    #jukebox.rei-jukebox {
        width: min(100vw - 28px, 430px);
        margin-top: 28px;
    }

    #jukebox.rei-jukebox .rei-jukebox__frame {
        padding: 22px 14px;
        border-radius: 16px;
    }


    #jukebox.rei-jukebox .rei-jukebox__top-actions {
        display: none;
    }

    #jukebox.rei-jukebox h2 {
        font-size: clamp(2.2rem, 12vw, 3rem);
        letter-spacing: 0.1em;
        line-height: 0.95;
    }


    #jukebox.rei-jukebox .rei-jukebox__deck {
        min-height: 390px;
        border-radius: 16px;
    }

    #jukebox.rei-jukebox .rei-jukebox__voice {
        position: relative;
        top: auto;
        left: auto;
        width: calc(100% - 26px);
        min-width: 0;
        margin: 16px auto 0;
        height: 50px;
    }

    #jukebox.rei-jukebox .rei-jukebox__voice button {
        font-size: 0.68rem;
        letter-spacing: 0.05em;
    }

    #jukebox.rei-jukebox .rei-jukebox__record {
        left: 50%;
        top: 96px;
        width: 250px;
        transform: translateX(-50%);
    }

    #jukebox.rei-jukebox .rei-jukebox__cover {
        border-width: 7px;
    }


    #jukebox.rei-jukebox .rei-jukebox__pilot--side,
    #jukebox.rei-jukebox .rei-jukebox__speed,
    #jukebox.rei-jukebox .rei-jukebox__volume {
        display: none;
    }

    #jukebox.rei-jukebox .rei-jukebox__panel {
        min-height: 0;
        padding: 24px 16px 18px;
        border-radius: 16px;
    }

    #jukebox.rei-jukebox .rei-jukebox__heart {
        display: none;
    }

    #jukebox.rei-jukebox .rei-jukebox__artist {
        max-width: 100%;
        font-size: 0.72rem;
        letter-spacing: 0.08em;
    }

    #jukebox.rei-jukebox #jukeboxDisplayTitle {
        font-size: clamp(2.4rem, 12vw, 3.1rem);
        white-space: normal;
    }

    #jukebox.rei-jukebox #jukeboxDisplayMessage {
        font-size: 0.9rem;
    }

    #jukebox.rei-jukebox .rei-jukebox__eq {
        grid-template-columns: repeat(12, minmax(0, 1fr));
        height: 86px;
        gap: 7px;
        padding-inline: 0;
    }

    #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(n + 13) {
        display: none;
    }

    #jukebox.rei-jukebox .rei-jukebox__progress {
        gap: 8px;
        font-size: 0.86rem;
    }

    #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-template-columns: 40px 54px 62px 54px 40px;
        gap: 7px;
        margin-top: 20px;
    }

    #jukebox.rei-jukebox .rei-jukebox__controls button {
        height: 42px;
        font-size: 1rem;
    }

    #jukebox.rei-jukebox .rei-jukebox__controls .rei-jukebox__control-play {
        width: 62px;
        height: 62px;
        font-size: 1.55rem;
    }

    #jukebox.rei-jukebox .rei-jukebox__actions {
        grid-template-columns: 1fr;
        gap: 10px;
        margin-top: 18px;
    }

    #jukebox.rei-jukebox .rei-jukebox__classics {
        padding: 0;
    }

    #jukebox.rei-jukebox .rei-jukebox__classics-track {
        display: flex;
        gap: 10px;
        overflow-x: auto;
        padding-bottom: 6px;
    }

    #jukebox.rei-jukebox .jukebox-classic-card {
        min-width: 228px;
        min-height: 84px;
    }

    #jukebox.rei-jukebox .jukebox-classic-card img {
        width: 56px;
        height: 56px;
        flex-basis: 56px;
    }

    #jukebox.rei-jukebox .rei-jukebox__classics-arrow {
        display: none;
    }
}

.video-track--local::-webkit-scrollbar {
    display: none;
}

.video-card--local {
    aspect-ratio: 16 / 9;
    border: 1px solid rgba(173, 209, 240, 0.16);
    background: linear-gradient(180deg, rgba(16, 40, 64, 0.96), rgba(7, 19, 32, 0.99));
    box-shadow: 0 16px 34px rgba(0, 11, 22, 0.18);
}

.video-card--local::before {
    background: linear-gradient(118deg, transparent 4%, rgba(var(--accent-bright-rgb), 0.08) 26%, rgba(255, 255, 255, 0.16) 42%, transparent 58%);
    opacity: 0.2;
}

.video-card--local::after {
    display: none;
}

.video-card--local:hover {
    transform: translateY(-4px);
    border-color: rgba(196, 223, 244, 0.24);
    background: linear-gradient(180deg, rgba(19, 47, 76, 0.97), rgba(7, 19, 32, 1));
    box-shadow: 0 22px 42px rgba(0, 11, 22, 0.24);
}

.video-card--local .video-thumb {
    position: absolute;
    inset: 0;
    aspect-ratio: auto;
    background: #173a61;
}

.video-card--local .video-thumb img,
.video-card--local .video-thumb video {
    position: absolute;
    inset: 0;
}

.video-card--local .video-thumb video {
    opacity: 0.95;
}

.video-card--local .video-thumb::after {
    background:
        linear-gradient(180deg, rgba(2, 10, 19, 0.04) 0%, rgba(2, 10, 19, 0.12) 44%, rgba(2, 10, 19, 0.72) 100%),
        radial-gradient(circle at 78% 18%, rgba(111, 187, 255, 0.14), transparent 24%);
}

.video-card--local .video-meta {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    display: grid;
    gap: 4px;
    text-align: left;
    padding: 18px 18px 16px;
    background: linear-gradient(180deg, transparent 0%, rgba(4, 16, 29, 0.16) 24%, rgba(4, 16, 29, 0.9) 100%);
}

.video-card--local .video-meta strong {
    font-size: 1rem;
    color: #ffffff;
}

.video-card--local .video-meta span {
    margin-top: 0;
    color: rgba(223, 240, 255, 0.84);
    font-size: 0.82rem;
    line-height: 1.42;
}

.video-card--local .video-play {
    right: 14px;
    bottom: 14px;
    left: auto;
    top: auto;
    width: 60px;
    height: 60px;
    background: linear-gradient(180deg, rgba(14, 74, 135, 0.88), rgba(6, 37, 72, 0.9));
    border-color: rgba(255, 255, 255, 0.18);
    box-shadow: 0 14px 28px rgba(0, 11, 22, 0.28);
    transform: none;
}

.video-card--local:hover .video-play {
    transform: scale(1.04);
    box-shadow: 0 18px 32px rgba(0, 11, 22, 0.32);
}

.gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 18px;
    position: relative;
    isolation: isolate;
    max-width: 100%;
    margin: 28px auto 0;
}

.gallery::before {
    content: '';
    position: absolute;
    inset: -6% -4%;
    background: linear-gradient(115deg, transparent 12%, rgba(95, 168, 242, 0.08) 24%, rgba(255, 255, 255, 0.06) 34%, transparent 46%, rgba(95, 168, 242, 0.05) 58%, transparent 72%);
    filter: blur(10px);
    opacity: 0.22;
    pointer-events: none;
}

.gallery img {
    width: 100%;
    height: clamp(220px, 26vw, 290px);
    object-fit: cover;
    display: block;
    cursor: pointer;
    border: 1px solid var(--line);
    border-radius: 0;
    box-shadow: 0 18px 36px rgba(var(--accent-rgb), 0.12);
    filter: none;
    image-rendering: auto;
    position: relative;
    z-index: 1;
    transition: transform 0.4s ease, box-shadow 0.4s ease, filter 0.4s ease, border-color 0.4s ease;
}

.gallery img:hover {
    transform: translateY(-8px) scale(1.015);
    box-shadow: 0 26px 54px rgba(var(--accent-rgb), 0.16);
    border-color: rgba(var(--accent-rgb), 0.18);
}

.gallery__image-modal:focus-visible {
    outline: 3px solid rgba(var(--accent-rgb), 0.34);
    outline-offset: 4px;
}

.gallery__image-modal {
    touch-action: manipulation;
}

#ensaios h2 {
    font-size: clamp(2rem, 3.5vw, 2.9rem);
    margin-bottom: 18px;
}

#ensaios {
    background:
        radial-gradient(circle at 16% 18%, rgba(var(--accent-bright-rgb), 0.14), transparent 24%),
        radial-gradient(circle at 84% 18%, rgba(92, 164, 232, 0.12), transparent 22%),
        linear-gradient(158deg, #102840 0%, #0b2033 48%, #071523 100%);
    border-color: rgba(157, 201, 236, 0.14);
    box-shadow: 0 28px 80px rgba(0, 16, 31, 0.26);
}

#ensaios::before {
    background: linear-gradient(118deg, transparent 0%, rgba(var(--accent-bright-rgb), 0.08) 22%, rgba(255, 255, 255, 0.12) 34%, transparent 54%);
}

#ensaios h2,
#ensaios > p {
    color: #ffffff;
}

#ensaios > p {
    max-width: 920px;
    margin-bottom: 38px;
    color: rgba(224, 236, 246, 0.86);
}

#ensaios .gallery-sticker {
    color: rgba(205, 225, 242, 0.12);
    filter: drop-shadow(0 12px 24px rgba(0, 11, 22, 0.14));
}

#ensaios .ensaios-track-frame {
    border-color: rgba(173, 209, 240, 0.14);
    background:
        radial-gradient(circle at center, rgba(var(--accent-bright-rgb), 0.1), transparent 58%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(8, 26, 44, 0.12));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 20px 44px rgba(0, 11, 22, 0.24);
}

#ensaios .ensaios-track-frame::before {
    background: linear-gradient(90deg, rgba(5, 18, 33, 0.92), rgba(5, 18, 33, 0));
}

#ensaios .ensaios-track-frame::after {
    background: linear-gradient(270deg, rgba(5, 18, 33, 0.92), rgba(5, 18, 33, 0));
}

#ensaios .ensaios-card {
    border-color: rgba(167, 204, 233, 0.14);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.11), rgba(25, 56, 92, 0.08));
    box-shadow: 0 18px 38px rgba(0, 11, 22, 0.24);
}

#ensaios .ensaios-card::before {
    background: linear-gradient(118deg, transparent 4%, rgba(var(--accent-bright-rgb), 0.08) 22%, rgba(255, 255, 255, 0.12) 34%, transparent 54%);
}

#ensaios .ensaios-card::after {
    background: radial-gradient(circle, rgba(var(--accent-bright-rgb), 0.18), transparent 72%);
    opacity: 0.62;
}

#ensaios .ensaios-card.is-active,
#ensaios .ensaios-card:hover {
    border-color: rgba(196, 223, 244, 0.24);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.13), rgba(32, 72, 112, 0.1));
    box-shadow: 0 24px 46px rgba(0, 12, 24, 0.28);
}

#ensaios .ensaios-card__tag {
    border-color: rgba(194, 221, 242, 0.16);
    background: rgba(7, 24, 42, 0.64);
    color: rgba(233, 242, 250, 0.84);
}

#ensaios .ensaios-card__text {
    color: rgba(223, 235, 245, 0.76);
}

.song-grid {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(168px, 184px);
    gap: 14px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    padding: 2px 2px 10px;
    scrollbar-width: none;
    touch-action: pan-x;
    -webkit-overflow-scrolling: touch;
}

.song-grid::-webkit-scrollbar {
    display: none;
}

.song-grid-shell .song-grid {
    margin-top: 0;
}

.gallery,
.song-grid,
.experience-grid,
.legacy-track,
.contact-grid {
    contain: layout paint;
}

.contact-grid {
    margin-top: 26px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    perspective: 1600px;
}

.contact-card {
    display: grid;
    gap: 12px;
    padding: 24px 22px;
    border: 1px solid rgba(var(--accent-bright-rgb), 0.16);
    border-radius: 0;
    background:
        radial-gradient(circle at 14% 18%, rgba(var(--accent-bright-rgb), 0.16), transparent 28%),
        linear-gradient(180deg, rgba(12, 35, 59, 0.98), rgba(7, 21, 35, 0.99));
    box-shadow: 0 22px 44px rgba(3, 14, 24, 0.24);
    text-decoration: none;
    text-align: left;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    touch-action: manipulation;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}

.contact-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(118deg, transparent 2%, rgba(var(--accent-bright-rgb), 0.16) 20%, rgba(255, 255, 255, 0.24) 34%, transparent 52%);
    transform: translateX(-128%);
    animation: surfaceSweep 12s ease-in-out infinite;
    animation-delay: 1.1s;
    pointer-events: none;
}

.contact-card > * {
    position: relative;
    z-index: 1;
}

.contact-card:hover {
    transform: translateY(-7px);
    border-color: rgba(var(--accent-bright-rgb), 0.26);
    box-shadow: 0 28px 52px rgba(3, 14, 24, 0.3);
    background:
        radial-gradient(circle at 14% 18%, rgba(var(--accent-bright-rgb), 0.18), transparent 30%),
        linear-gradient(180deg, rgba(15, 43, 72, 1), rgba(8, 24, 40, 0.99));
}

.contact-card__kicker {
    color: rgba(208, 238, 255, 0.78);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.contact-card strong {
    color: #ffffff;
    font-size: 1.08rem;
    line-height: 1.2;
}

.contact-card > span:last-of-type {
    color: rgba(226, 242, 255, 0.84);
    font-size: 0.95rem;
    line-height: 1.65;
}

.contact-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 2px;
}

.contact-card__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 10px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    text-decoration: none;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease, background 0.22s ease;
}

.contact-card__action:hover,
.contact-card__action:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(255, 255, 255, 0.28);
    box-shadow: 0 12px 24px rgba(0, 16, 34, 0.18);
    outline: none;
}

.contact-card__action--accent {
    background: rgba(255, 255, 255, 0.96);
    border-color: rgba(255, 255, 255, 0.96);
    color: var(--accent);
}

.contact-card__action--accent:hover,
.contact-card__action--accent:focus-visible {
    background: #ffffff;
    border-color: #ffffff;
    color: var(--accent);
}

.contact-card__stack {
    display: grid;
    gap: 14px;
}

.contact-card__person {
    display: grid;
    gap: 10px;
    padding-top: 14px;
    border-top: 1px solid rgba(var(--accent-bright-rgb), 0.12);
}

.contact-card__person:first-of-type {
    padding-top: 2px;
    border-top: 0;
}

.contact-card__number {
    color: #ffffff;
    font-size: 0.94rem;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.song-card {
    padding: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(236, 244, 255, 0.92));
    text-align: left;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    scroll-snap-align: center;
    scroll-snap-stop: always;
    touch-action: manipulation;
    box-shadow: 0 18px 34px rgba(var(--accent-rgb), 0.1);
    transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}

.song-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(118deg, transparent 2%, rgba(var(--accent-bright-rgb), 0.1) 20%, rgba(255, 255, 255, 0.62) 34%, transparent 52%);
    transform: none;
    opacity: 0.3;
    pointer-events: none;
}

.song-card::after {
    content: '';
    position: absolute;
    inset: auto 12px -18px;
    height: 24px;
    background: radial-gradient(circle, rgba(89, 171, 255, 0.28), transparent 72%);
    opacity: 0.52;
    filter: blur(7px);
    pointer-events: none;
}

.song-card > * {
    position: relative;
    z-index: 1;
}

.song-card:hover {
    transform: translateY(-7px) scale(1.01);
    border-color: rgba(0, 81, 162, 0.24);
    box-shadow: 0 24px 44px rgba(var(--accent-rgb), 0.16);
    background: linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(229, 241, 255, 0.96));
}

.song-card__media {
    position: relative;
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #dbe6f0;
    border-radius: 0;
}

.song-card__media::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(0, 17, 38, 0.02), rgba(0, 17, 38, 0.1) 100%),
        radial-gradient(circle at 80% 18%, rgba(111, 187, 255, 0.12), transparent 24%);
}

.song-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: none;
    image-rendering: auto;
    transition: transform 0.45s ease;
}

.song-card:hover .song-card__media img {
    transform: scale(1.05);
}

.song-card__play {
    position: absolute;
    right: 12px;
    bottom: 14px;
    z-index: 2;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: linear-gradient(180deg, rgba(11, 80, 151, 0.96), rgba(4, 45, 90, 0.96));
    border: 1px solid rgba(255, 255, 255, 0.18);
    color: #ffffff;
    font-size: 0.88rem;
    box-shadow: 0 12px 24px rgba(var(--accent-rgb), 0.28);
    backdrop-filter: blur(8px);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.song-card:hover .song-card__play {
    transform: scale(1.08);
    box-shadow: 0 16px 28px rgba(var(--accent-rgb), 0.34);
}

.song-card__body {
    display: grid;
    gap: 4px;
    padding: 12px 12px 14px;
}

.song-card__title {
    margin: 0;
    color: var(--accent);
    font-size: 0.92rem;
    font-weight: 800;
    line-height: 1.3;
}

.song-card__meta {
    color: var(--ink);
    font-size: 0.78rem;
    line-height: 1.45;
    letter-spacing: 0.02em;
}

.bio-card::before,
.experience-card::before,
.legacy-card::before,
.contact-card::before {
    transform: translateX(-128%);
    opacity: 0.22;
    animation: surfaceSweep 14s ease-in-out infinite;
}

.video-play,
.song-card__play {
    backdrop-filter: none;
    animation: playPulse 4.8s ease-in-out infinite;
}

.social-link::before,
.footer-action::before,
.bio-toggle::before,
.bio-toggle::after {
    opacity: 0.44;
}

.social-link::before,
.footer-action::before,
.bio-toggle::before {
    animation: buttonSheen 6.8s ease-in-out infinite;
}

.bio-toggle::after {
    animation: buttonGlow 5.8s ease-in-out infinite;
    opacity: 0.3;
}

.section--showcase .video-nav {
    border-color: rgba(255, 255, 255, 0.14);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.05));
    color: #ffffff;
    box-shadow: 0 16px 30px rgba(0, 15, 33, 0.18);
}

.section--showcase .video-nav:hover {
    border-color: rgba(173, 218, 255, 0.32);
    box-shadow: 0 20px 34px rgba(0, 18, 38, 0.24);
}

.section--showcase .video-card,
.section--showcase .song-card,
.section--showcase .ensaios-card {
    border-color: rgba(160, 210, 255, 0.16);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(69, 108, 160, 0.08));
    box-shadow: 0 20px 40px rgba(0, 17, 34, 0.22);
}

.section--showcase .video-card::before,
.section--showcase .song-card::before,
.section--showcase .ensaios-card::before {
    background: linear-gradient(118deg, transparent 0%, rgba(var(--accent-bright-rgb), 0.18) 18%, rgba(255, 255, 255, 0.22) 34%, transparent 52%);
}

.section--showcase .video-card::after,
.section--showcase .song-card::after,
.section--showcase .ensaios-card::after {
    background: radial-gradient(circle, rgba(105, 178, 255, 0.34), transparent 72%);
}

.section--showcase .video-card:hover,
.section--showcase .song-card:hover,
.section--showcase .ensaios-card:hover {
    border-color: rgba(187, 225, 255, 0.28);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(84, 128, 186, 0.11));
    box-shadow: 0 30px 54px rgba(0, 18, 38, 0.28);
}

.section--showcase .video-thumb,
.section--showcase .song-card__media {
    background: #25456a;
}

.section--showcase .video-thumb::after,
.section--showcase .song-card__media::after {
    background:
        linear-gradient(180deg, rgba(0, 14, 30, 0.04), rgba(0, 14, 30, 0.28) 100%),
        radial-gradient(circle at 78% 18%, rgba(128, 198, 255, 0.22), transparent 26%);
}

.section--showcase .video-meta strong,
.section--showcase .song-card__title {
    color: #ffffff;
}

.section--showcase .video-meta span,
.section--showcase .song-card__meta {
    color: rgba(223, 240, 255, 0.84);
}

.section--showcase .video-play,
.section--showcase .song-card__play {
    background: linear-gradient(180deg, rgba(15, 78, 150, 0.92), rgba(3, 36, 79, 0.96));
    border-color: rgba(216, 236, 255, 0.34);
    box-shadow: 0 16px 28px rgba(0, 15, 33, 0.28);
}

.section--showcase .video-card:hover .video-play,
.section--showcase .song-card:hover .song-card__play {
    box-shadow: 0 20px 34px rgba(0, 17, 34, 0.34);
}

.site-footer {
    position: relative;
    z-index: 5;
    padding: 0 24px 36px;
}

.site-footer__inner {
    width: min(1180px, 100%);
    margin: 0 auto;
    padding: 30px clamp(22px, 4vw, 36px);
    border: 1px solid var(--line);
    background: linear-gradient(180deg, rgba(9, 37, 68, 0.98), rgba(5, 24, 46, 0.96));
    box-shadow: 0 26px 70px rgba(0, 30, 60, 0.18);
    color: #ffffff;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    gap: 24px;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
}

.site-footer__inner::before {
    content: '';
    position: absolute;
    inset: -1px;
    background: linear-gradient(112deg, transparent 0%, rgba(86, 165, 242, 0.14) 18%, rgba(255, 255, 255, 0.32) 32%, rgba(103, 181, 255, 0.18) 44%, transparent 58%);
    transform: translateX(-126%);
    opacity: 0.72;
    animation: surfaceSweep 3.8s linear infinite;
    pointer-events: none;
}

.site-footer__brand,
.site-footer__connect,
.site-footer__social {
    position: relative;
    z-index: 1;
}

.site-footer__brand {
    display: grid;
    gap: 14px;
}

.site-footer__brand strong {
    display: block;
    font-size: 1.06rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.site-footer__brand-copy span {
    color: rgba(226, 241, 255, 0.8);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.site-footer__brand p {
    margin: 0;
    max-width: 430px;
    color: rgba(226, 241, 255, 0.84);
    font-size: 0.96rem;
    line-height: 1.7;
}

.site-footer__network {
    margin: 0;
    color: rgba(226, 241, 255, 0.76);
    font-size: 0.84rem;
    line-height: 1.6;
}

.site-footer__network a {
    color: #ffffff;
    text-decoration: underline;
    text-decoration-color: rgba(255, 255, 255, 0.42);
    text-underline-offset: 0.22em;
}

.site-footer__network a:hover,
.site-footer__network a:focus-visible {
    text-decoration-color: rgba(255, 255, 255, 0.88);
}

.site-footer__connect {
    display: grid;
    gap: 14px;
    justify-items: center;
    text-align: center;
    align-content: center;
}

.footer-kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 12px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.08);
    color: rgba(226, 241, 255, 0.9);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.footer-lead {
    margin: 0;
    max-width: 340px;
    color: rgba(226, 241, 255, 0.86);
    font-size: 0.96rem;
    line-height: 1.7;
}

.footer-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.footer-action {
    padding: 10px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    text-decoration: none;
    transition: transform 0.24s ease, background 0.24s ease, border-color 0.24s ease, box-shadow 0.24s ease, color 0.24s ease;
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.footer-action:hover,
.footer-action:focus-visible {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.28);
    box-shadow: 0 14px 28px rgba(0, 18, 38, 0.18);
    outline: none;
}

.footer-action--ghost {
    background: transparent;
    color: rgba(226, 241, 255, 0.88);
}

.site-footer__social {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    grid-column: 1 / -1;
    padding-top: 4px;
}

.site-footer__copy {
    width: min(1180px, 100%);
    margin: 18px auto 0;
    text-align: center;
    color: rgba(19, 58, 99, 0.78);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 1000;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.84);
    backdrop-filter: blur(14px);
    padding: 24px;
}

.modal-content {
    width: min(920px, 100%);
    padding: 34px;
    border: 1px solid rgba(var(--accent-rgb), 0.1);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(241, 247, 255, 0.96));
    box-shadow: 0 30px 70px rgba(var(--accent-rgb), 0.14);
    position: relative;
    overflow: hidden;
}

.modal-content--jukebox {
    width: min(900px, 100%);
    padding: 16px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(242, 248, 255, 0.96));
    max-height: min(88vh, 760px);
    overflow: auto;
    scrollbar-width: none;
}

.modal-content--jukebox::-webkit-scrollbar {
    display: none;
}

.modal-content--video {
    width: min(920px, 100%);
    padding: 18px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(242, 248, 255, 0.96));
    max-height: min(92vh, 920px);
    overflow: auto;
    scrollbar-width: none;
}

.modal-content--video::-webkit-scrollbar {
    display: none;
}

.video-modal-shell {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: 26px;
    border-radius: 0;
    border: 1px solid rgba(170, 220, 255, 0.16);
    background:
        radial-gradient(circle at 14% 18%, rgba(124, 198, 255, 0.18), transparent 24%),
        linear-gradient(180deg, rgba(10, 50, 96, 0.98), rgba(5, 28, 56, 0.98));
    box-shadow: 0 26px 58px rgba(0, 26, 56, 0.22);
}

.video-modal-shell::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(118deg, transparent 8%, rgba(135, 204, 255, 0.08) 24%, rgba(255, 255, 255, 0.22) 38%, transparent 56%);
    transform: translateX(-130%);
    animation: surfaceSweep 12.6s ease-in-out infinite;
    pointer-events: none;
}

.video-modal-shell > * {
    position: relative;
    z-index: 1;
}

.video-modal-bar {
    margin-top: 18px;
    display: grid;
    gap: 8px;
    text-align: left;
}

.jukebox-modal-shell {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: 22px;
    display: grid;
    grid-template-columns: minmax(180px, 220px) minmax(0, 1fr);
    gap: 18px 22px;
    align-items: start;
    border-radius: 0;
    border: 1px solid rgba(170, 220, 255, 0.16);
    background:
        radial-gradient(circle at 14% 18%, rgba(124, 198, 255, 0.2), transparent 24%),
        linear-gradient(180deg, rgba(10, 50, 96, 0.98), rgba(5, 28, 56, 0.98));
    box-shadow: 0 26px 58px rgba(0, 26, 56, 0.22);
}

.jukebox-modal-shell::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(118deg, transparent 8%, rgba(135, 204, 255, 0.08) 24%, rgba(255, 255, 255, 0.24) 38%, transparent 56%);
    transform: translateX(-130%);
    animation: surfaceSweep 12.6s ease-in-out infinite;
    pointer-events: none;
}

.jukebox-modal-shell > * {
    position: relative;
    z-index: 1;
}

.jukebox-modal-stickers {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.jukebox-sticker {
    position: absolute;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.06);
    color: rgba(243, 250, 255, 0.92);
    box-shadow: 0 14px 28px rgba(0, 14, 30, 0.14);
}

.jukebox-sticker svg {
    width: 20px;
    height: 20px;
    display: block;
}

.jukebox-sticker em {
    font-style: normal;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.jukebox-sticker--rei {
    top: 18px;
    right: 20px;
    transform: rotate(8deg);
}

.jukebox-sticker--spotify {
    right: 22px;
    bottom: 24px;
    transform: rotate(-9deg);
}

.jukebox-sticker--daniel {
    left: 20px;
    bottom: 26px;
    transform: rotate(-8deg);
}

.jukebox-modal-head {
    display: contents;
}

.jukebox-modal-cover {
    grid-column: 1;
    grid-row: 1 / span 2;
    aspect-ratio: 1 / 1;
    max-width: 220px;
    overflow: hidden;
    border-radius: 0;
    border: 1px solid rgba(255, 255, 255, 0.18);
    box-shadow: 0 18px 32px rgba(0, 18, 38, 0.2);
    background: rgba(255, 255, 255, 0.1);
}

.jukebox-modal-cover img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.jukebox-modal-meta {
    grid-column: 2;
    grid-row: 1;
    display: grid;
    gap: 10px;
    text-align: left;
    align-content: start;
    padding-top: 6px;
}

.jukebox-modal-kicker {
    color: rgba(201, 230, 255, 0.88);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.jukebox-modal-meta strong {
    color: #ffffff;
    font-size: clamp(1.66rem, 2.2vw, 2.2rem);
    line-height: 1;
    font-weight: 800;
}

.jukebox-modal-artist {
    color: rgba(223, 239, 255, 0.92);
    font-size: 1rem;
    font-weight: 700;
}

.jukebox-modal-meta p {
    margin: 0;
    max-width: 32ch;
    color: rgba(223, 239, 255, 0.86);
    line-height: 1.52;
    font-size: 0.96rem;
}

.jukebox-modal-player {
    grid-column: 2;
    grid-row: 2;
    border-radius: 0;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.08);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
    padding: 10px;
    align-self: start;
}

.jukebox-modal-player iframe {
    display: block;
    height: clamp(164px, 18vw, 212px);
    border-radius: 0;
    background: transparent;
}

.jukebox-modal-link {
    margin: 8px 0 0;
    background: #ffffff;
    border-color: #ffffff;
    color: var(--accent);
}

.jukebox-modal-link:hover,
.jukebox-modal-link:focus-visible {
    background: #ffffff;
    border-color: #ffffff;
    color: var(--ink-strong);
}

.video-frame-wrap {
    position: relative;
    padding-top: 56.25%;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 0;
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 22px 48px rgba(0, 18, 38, 0.22);
}

.video-player-host,
.video-native-player,
.video-player-host iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.video-native-player {
    display: block;
    background: #020f21;
    object-fit: cover;
}

.video-native-player[hidden] {
    display: none;
}

.video-player-host[hidden] {
    display: none;
}

.video-frame-wrap[hidden] {
    display: none;
}

.video-modal-note {
    display: grid;
    grid-template-columns: minmax(240px, 320px) minmax(0, 1fr);
    gap: 22px;
    align-items: center;
    margin-top: 18px;
    padding: 0;
    text-align: left;
}

.video-modal-note[hidden] {
    display: none;
}

.video-modal-preview {
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #dbe7f2;
    border-radius: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.1);
    box-shadow: 0 18px 36px rgba(var(--accent-rgb), 0.1);
}

.video-modal-preview img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.video-modal-meta {
    display: grid;
    gap: 12px;
    align-content: start;
}

.video-modal-kicker {
    color: rgba(var(--accent-rgb), 0.68);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.video-modal-title {
    color: var(--accent);
    font-size: 1.65rem;
    line-height: 1.05;
    font-weight: 800;
}

.video-modal-shell .video-modal-kicker,
.video-modal-shell .video-modal-title,
.video-modal-subtitle {
    color: rgba(244, 249, 255, 0.96);
}

.video-modal-shell .video-modal-kicker {
    color: rgba(201, 230, 255, 0.88);
}

.video-modal-subtitle {
    margin: 0;
    max-width: 48ch;
    color: rgba(223, 239, 255, 0.84);
    line-height: 1.58;
}

.video-modal-note p {
    margin: 0;
    color: var(--ink);
    line-height: 1.6;
}

.video-modal-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    margin: 0 auto;
    padding: 13px 18px;
    border: 1px solid var(--accent);
    background: var(--accent);
    color: white;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 0.8rem;
    font-weight: 800;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.close-modal {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    border: 1px solid rgba(var(--accent-rgb), 0.1);
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 12px 24px rgba(var(--accent-rgb), 0.08);
    font-size: 1.9rem;
    line-height: 1;
    cursor: pointer;
    color: var(--accent);
    padding: 0;
    transition: transform 0.2s ease, color 0.2s ease;
}

.close-modal:hover,
.close-modal:focus-visible {
    color: var(--ink-strong);
    transform: scale(1.04);
    outline: none;
}

.modal-back-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 46px;
    margin-top: 12px;
    padding: 12px 18px;
    border-radius: 999px;
    border: 1px solid rgba(162, 214, 255, 0.18);
    background: linear-gradient(180deg, rgba(8, 52, 100, 0.98), rgba(4, 36, 72, 0.98));
    color: #ffffff;
    font: inherit;
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
    box-shadow: 0 14px 28px rgba(0, 28, 58, 0.22);
    transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.modal-back-link:hover,
.modal-back-link:focus-visible {
    background: linear-gradient(180deg, rgba(10, 62, 118, 0.98), rgba(5, 42, 84, 0.98));
    border-color: rgba(198, 229, 255, 0.3);
    box-shadow: 0 18px 32px rgba(0, 28, 58, 0.24);
    transform: translateY(-1px);
    outline: none;
}

.video-modal-note .modal-back-link,
.jukebox-modal-meta .modal-back-link {
    max-width: 320px;
}

.lightbox {
    position: fixed;
    inset: 0;
    z-index: 1001;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(4, 18, 38, 0.82);
    backdrop-filter: blur(18px);
}

.lightbox__close {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 999px;
    background: rgba(5, 28, 56, 0.78);
    color: rgba(255, 255, 255, 0.88);
    font-size: 34px;
    line-height: 1;
    cursor: pointer;
}

.lightbox__close:hover,
.lightbox__close:focus-visible {
    color: #ffffff;
    outline: none;
}

.lightbox__dialog {
    position: relative;
    width: min(940px, 100%);
    padding: 18px;
    border-radius: 0;
    border: 1px solid rgba(166, 214, 255, 0.14);
    background: linear-gradient(180deg, rgba(9, 37, 68, 0.96), rgba(5, 24, 46, 0.96));
    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.28);
}

.lightbox__chrome {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin: 0 54px 12px 0;
}

.lightbox__counter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid rgba(166, 214, 255, 0.16);
    background: rgba(255, 255, 255, 0.06);
    color: rgba(226, 240, 255, 0.9);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.lightbox__navs {
    display: flex;
    gap: 10px;
}

.lightbox__nav {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(166, 214, 255, 0.16);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    color: rgba(244, 249, 255, 0.92);
    font: inherit;
    font-size: 1rem;
    cursor: pointer;
    transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

.lightbox__nav:hover,
.lightbox__nav:focus-visible {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(198, 229, 255, 0.28);
    transform: translateY(-1px);
    outline: none;
}

.lightbox__figure {
    margin: 0;
    display: grid;
    gap: 14px;
}

.lightbox__image {
    width: 100%;
    max-height: 76vh;
    display: block;
    object-fit: contain;
    border-radius: 0;
    border: 1px solid rgba(166, 214, 255, 0.14);
    box-shadow: 0 22px 54px rgba(0, 0, 0, 0.22);
    background: rgba(255, 255, 255, 0.04);
}

.lightbox__caption {
    margin: 0;
    display: grid;
    gap: 4px;
    color: rgba(225, 240, 255, 0.9);
    font-size: 0.94rem;
    line-height: 1.6;
    text-align: center;
}

.lightbox__caption strong {
    color: #ffffff;
    font-size: 1rem;
    line-height: 1.2;
    font-weight: 700;
}

.lightbox__caption span {
    color: rgba(225, 240, 255, 0.82);
}

@keyframes heroReveal {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes cueDrift {
    0%, 100% {
        transform: translateY(0);
        opacity: 0.5;
    }
    50% {
        transform: translateY(10px);
        opacity: 1;
    }
}

@keyframes heroTileFlipIn {
    0% {
        opacity: 0;
        transform: perspective(1400px) rotateY(var(--hero-intro-angle, 90deg)) scale(0.98);
    }
    56% {
        opacity: 1;
    }
    100% {
        opacity: 1;
        transform: perspective(1400px) rotateY(0deg) scale(1);
    }
}

@keyframes heroTileImageSettle {
    0% {
        transform: scale(1.08);
    }
    100% {
        transform: translate3d(0, 0, 0) scale(1.025);
    }
}

@keyframes pageLightSweep {
    from {
        transform: rotate(-17deg) translateX(-18vw);
        opacity: 0.62;
    }
    to {
        transform: rotate(-11deg) translateX(44vw);
        opacity: 0.82;
    }
}

@keyframes pageLightSweepReverse {
    from {
        transform: rotate(17deg) translateX(18vw);
        opacity: 0.56;
    }
    to {
        transform: rotate(11deg) translateX(-44vw);
        opacity: 0.74;
    }
}

@keyframes buttonSheen {
    0%, 12% {
        transform: translateX(-220%) skewX(-18deg);
        opacity: 0;
    }
    22% {
        opacity: 0.18;
    }
    38% {
        opacity: 0.88;
    }
    58%, 100% {
        transform: translateX(380%) skewX(-18deg);
        opacity: 0;
    }
}

@keyframes buttonGlow {
    0%, 100% {
        opacity: 0.34;
        transform: scale(0.96);
    }
    50% {
        opacity: 0.76;
        transform: scale(1.08);
    }
}

@keyframes surfaceSweep {
    0%, 14% {
        transform: translateX(-125%);
        opacity: 0;
    }
    24% {
        opacity: 0.34;
    }
    44%, 100% {
        transform: translateX(126%);
        opacity: 0;
    }
}

@keyframes heroPanelGlow {
    0%, 100% {
        transform: translateX(-18%) scale(1);
        opacity: 0.42;
    }
    50% {
        transform: translateX(8%) scale(1.04);
        opacity: 0.86;
    }
}

@keyframes heroSpotlightLeft {
    0%, 100% {
        transform: rotate(17deg) translate3d(-2%, 0, 0);
        opacity: 0.7;
    }
    50% {
        transform: rotate(24deg) translate3d(5%, -2%, 0);
        opacity: 0.96;
    }
}

@keyframes heroSpotlightRight {
    0%, 100% {
        transform: rotate(-17deg) translate3d(2%, 0, 0);
        opacity: 0.68;
    }
    50% {
        transform: rotate(-24deg) translate3d(-5%, -2%, 0);
        opacity: 0.94;
    }
}

@keyframes waterField {
    0% {
        transform: translate3d(-2%, -1%, 0) scale(1);
    }
    50% {
        transform: translate3d(2%, 2%, 0) scale(1.04);
    }
    100% {
        transform: translate3d(-1%, 4%, 0) scale(1.01);
    }
}

@keyframes waterGlide {
    0% {
        transform: translate3d(-12%, 0, 0) skewX(-12deg);
    }
    50% {
        transform: translate3d(8%, -2%, 0) skewX(-8deg);
    }
    100% {
        transform: translate3d(-6%, 1%, 0) skewX(-12deg);
    }
}

@keyframes playPulse {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 12px 26px rgba(var(--accent-rgb), 0.24);
    }
    50% {
        transform: scale(1.08);
        box-shadow: 0 18px 34px rgba(var(--accent-rgb), 0.32);
    }
}

@media (max-width: 1200px) {
    .experience-grid,
    .legacy-track {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .legacy-shell {
        grid-template-columns: 1fr;
    }

    .video-showcase__top {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .video-controls,
    .song-controls,
    .gallery-controls {
        grid-column: 1 / -1;
        justify-content: flex-start;
    }

    .song-grid {
        grid-auto-columns: minmax(164px, 24vw);
    }
}

@keyframes ambientPanelGlow {
    0%, 100% {
        opacity: 0.24;
        transform: scale(0.985);
    }
    50% {
        opacity: 0.46;
        transform: scale(1.035);
    }
}

@keyframes ambientButtonAura {
    0%, 100% {
        opacity: 0.22;
        transform: scale(0.95);
    }
    50% {
        opacity: 0.48;
        transform: scale(1.06);
    }
}

@media (max-width: 900px) {
    .top-header,
    .top-header.is-scrolled {
        padding: 12px 16px;
    }

    .top-header__inner {
        flex-wrap: nowrap;
        justify-content: space-between;
        min-height: 52px;
    }

    .site-brand {
        flex: 1 1 auto;
        min-width: 0;
        align-items: flex-start;
        text-align: left;
    }

    .site-brand__copy {
        min-width: 0;
    }

    .site-brand strong {
        font-size: 0.84rem;
        letter-spacing: 0.09em;
    }

    .site-brand__copy span {
        font-size: 0.58rem;
        letter-spacing: 0.08em;
    }

    .menu-toggle {
        display: inline-flex;
        order: 3;
        flex: 0 0 auto;
    }

    .site-social--desktop {
        display: none;
    }

    .site-social--mobile {
        display: flex;
        order: 2;
        margin-left: auto;
        margin-right: 10px;
        align-items: center;
        gap: 8px;
    }

    .site-social--mobile .social-link {
        width: 42px;
        height: 42px;
    }

    .header-nav-shell {
        position: fixed;
        top: var(--mobile-menu-top, 82px);
        right: 12px;
        left: auto;
        width: min(348px, calc(100vw - 24px));
        display: none;
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
        justify-items: stretch;
        align-content: start;
        padding: 14px;
        max-height: calc(100vh - var(--mobile-menu-top, 82px) - 12px);
        max-height: calc(100dvh - var(--mobile-menu-top, 82px) - 12px);
        overflow: hidden;
        overscroll-behavior: contain;
        border: 1px solid rgba(255, 255, 255, 0.16);
        border-radius: 0;
        background: linear-gradient(180deg, rgba(5, 32, 64, 0.995), rgba(4, 20, 40, 0.995));
        backdrop-filter: blur(16px);
        box-shadow: 0 28px 64px rgba(0, 20, 40, 0.28);
        opacity: 0;
        visibility: hidden;
        transform: translateY(-8px);
        pointer-events: none;
        transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s ease;
        z-index: 210;
    }

    .header-nav-shell.is-open {
        display: grid;
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        pointer-events: auto;
        overflow-y: auto;
        overflow-x: hidden;
    }

    .site-menu {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        gap: 10px;
        flex: none;
        align-self: stretch;
        justify-self: stretch;
    }

    .site-menu a {
        display: flex;
        width: 100%;
        max-width: none;
        min-height: 52px;
        padding: 14px 18px;
        align-items: center;
        justify-content: center;
        text-align: center;
        font-size: 0.76rem;
        letter-spacing: 0.14em;
    }

    .header-cta {
        display: inline-flex;
        width: 100%;
        min-height: 54px;
        max-width: none;
        justify-content: center;
        justify-self: stretch;
        align-self: stretch;
        text-align: center;
        padding: 14px 18px;
    }

    .hero {
        --hero-header-offset: 0px;
        --hero-header-gap: 0px;
        min-height: 560px;
        height: 78vh;
        padding-top: 0;
    }

    .hero-media {
        padding: 78px 18px 88px;
    }

    .hero-mosaic {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: repeat(3, minmax(0, 1fr));
    }

    .hero-tile--singer {
        grid-column: 1;
        grid-row: 1 / span 2;
    }

    .hero-tile--wide {
        grid-column: 2;
        grid-row: 1;
    }

    .hero-tile--drums {
        grid-column: 2;
        grid-row: 2;
    }

    .hero-tile--keys {
        grid-column: 1;
        grid-row: 3;
    }

    .hero-tile--bass {
        grid-column: 2;
        grid-row: 3;
    }

    .hero-content {
        align-items: center;
        padding-top: 92px;
        padding-bottom: 104px;
    }

    .hero-content::before,
    .hero-content::after {
        width: min(56vw, 520px);
        bottom: -18%;
        opacity: 0.72;
    }

    .container {
        margin-top: 0;
        padding-top: 24px;
    }

    .video-showcase__top {
        grid-template-columns: 1fr;
        padding: 20px 20px 18px;
    }

    .gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .song-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .song-grid-shell,
    .video-track-frame,
    .ensaios-track-frame {
        padding: 16px;
    }

    .ensaios-track {
        --ensaios-card-width: min(320px, 52vw);
    }

    .experience-grid,
    .legacy-track {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .show-card,
    .contact-grid {
        grid-template-columns: 1fr;
    }

    .section-cta {
        gap: 12px;
    }

    .section-cta span {
        max-width: 34rem;
        text-align: center;
    }

    .show-date {
        justify-self: start;
    }

    .show-actions {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .site-footer__inner {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .site-footer__brand p {
        margin-left: auto;
        margin-right: auto;
    }

    .site-footer__social {
        justify-content: center;
    }

    .site-footer__connect {
        order: 2;
    }
}

@media (max-width: 640px) {
    html,
    body {
        overflow-x: hidden;
    }

    body,
    .top-header,
    .hero,
    .container,
    .section,
    .site-footer {
        max-width: 100%;
    }

    .section {
        margin-bottom: 28px;
        padding: 20px 16px 22px;
        border-radius: 0;
    }

    .section h2 {
        margin-bottom: 14px;
        font-size: clamp(1.95rem, 9.2vw, 2.7rem);
        line-height: 1.01;
    }

    .section--showcase h2 {
        font-size: clamp(1.85rem, 8.8vw, 2.4rem);
        line-height: 0.98;
        max-width: 11ch;
        margin-left: auto;
        margin-right: auto;
    }

    .section p {
        max-width: 100%;
        font-size: 0.93rem;
        line-height: 1.52;
        overflow-wrap: anywhere;
    }

    .section-kicker {
        margin-bottom: 10px;
        padding: 7px 11px;
        font-size: 0.62rem;
        letter-spacing: 0.12em;
    }

    .site-brand strong {
        font-size: 0.86rem;
        letter-spacing: 0.12em;
    }

    .site-brand__copy span {
        font-size: 0.62rem;
    }

    .site-brand {
        gap: 10px;
        min-width: 0;
        max-width: calc(100% - 64px);
    }

    .site-brand__copy {
        min-width: 0;
    }

    .site-brand strong,
    .site-brand__copy span {
        overflow-wrap: anywhere;
    }

    .header-nav-shell {
        top: var(--mobile-menu-top, 80px);
        right: 10px;
        left: auto;
        width: min(100%, calc(100vw - 20px));
        padding: 12px;
        gap: 10px;
        border-radius: 0;
        max-height: calc(100vh - var(--mobile-menu-top, 80px) - 10px);
        max-height: calc(100dvh - var(--mobile-menu-top, 80px) - 10px);
    }

    .site-menu {
        gap: 9px;
    }

    .site-menu a {
        min-height: 50px;
        padding: 12px 14px;
        font-size: 0.72rem;
        line-height: 1.1;
    }

    .site-social,
    .site-footer__social {
        gap: 8px;
    }

    .social-link {
        width: 38px;
        height: 38px;
    }

    .gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        margin-top: 20px;
    }

    .gallery img {
        height: auto;
        aspect-ratio: 4 / 5;
        border-radius: 0;
    }

    #ensaios h2 {
        font-size: clamp(1.9rem, 9vw, 2.5rem);
    }

    #ensaios > p {
        margin-bottom: 22px;
    }

    .song-grid {
        --song-card-width: min(74vw, 240px);
        grid-auto-flow: column;
        grid-template-columns: none;
        grid-auto-columns: var(--song-card-width);
        gap: 10px;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scroll-snap-type: x mandatory;
        scroll-padding-inline: max(2px, calc((100% - var(--song-card-width)) / 2));
        padding: 0 max(2px, calc((100% - var(--song-card-width)) / 2)) 4px;
        scrollbar-width: none;
    }

    .video-showcase__intro strong {
        font-size: 0.9rem;
        max-width: 15ch;
        margin-left: auto;
        margin-right: auto;
    }

    .video-showcase__intro span {
        max-width: 24ch;
        margin-left: auto;
        margin-right: auto;
        font-size: 0.82rem;
        line-height: 1.38;
    }

    .section-lead {
        max-width: 28ch;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 16px;
    }

    .section-lead--light {
        max-width: 24ch;
    }

    .video-showcase,
    .song-showcase,
    .gallery-showcase {
        gap: 12px;
    }

    .showcase-copy {
        max-width: none;
        font-size: 0.96rem;
        line-height: 1.72;
    }

    .video-showcase__intro {
        text-align: center;
        gap: 4px;
    }

    #videos .video-showcase__top {
        display: none;
    }

    #ensaios .gallery-showcase__stickers {
        inset: 8px;
        opacity: 0.82;
    }

    #videos .video-showcase,
    #jukebox .song-showcase,
    #ensaios .gallery-showcase {
        margin-top: 10px;
    }

    .song-grid-shell,
    .video-track-frame,
    .ensaios-track-frame {
        padding: 8px 6px 10px;
        border-radius: 0;
    }

    .song-grid-shell::before,
    .song-grid-shell::after {
        display: none;
    }

    .video-controls,
    .song-controls,
    .gallery-controls {
        display: none;
    }

    .swipe-hint {
        display: block;
        margin-top: 10px;
        font-size: 0.64rem;
        letter-spacing: 0.14em;
    }

    .video-track {
        --video-card-width: min(84vw, 318px);
        grid-auto-flow: column;
        grid-template-columns: none;
        grid-auto-columns: var(--video-card-width);
        gap: 12px;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scroll-snap-type: x mandatory;
        scroll-padding-inline: max(2px, calc((100% - var(--video-card-width)) / 2));
        padding: 0 max(2px, calc((100% - var(--video-card-width)) / 2)) 4px;
        scrollbar-width: none;
    }

    .video-track::-webkit-scrollbar {
        display: none;
    }

    .video-track--local {
        --video-card-width: min(90vw, 360px);
        grid-template-columns: none;
        grid-auto-flow: column;
        grid-auto-columns: var(--video-card-width);
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        touch-action: pan-x;
        gap: 14px;
        padding: 0 0 4px;
        scroll-padding-inline: 0;
    }

    .video-card--local .video-play {
        right: 12px;
        bottom: 12px;
        width: 54px;
        height: 54px;
    }

    .video-controls .video-nav,
    .song-controls .video-nav,
    .gallery-controls .video-nav {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }

    .ensaios-track-frame::before,
    .ensaios-track-frame::after {
        top: 10px;
        bottom: 10px;
        width: 18px;
    }

    .ensaios-track-frame::before {
        left: 8px;
    }

    .ensaios-track-frame::after {
        right: 8px;
    }

    .ensaios-track {
        --ensaios-card-width: min(92vw, 352px);
        gap: 12px;
        scroll-padding-inline: max(2px, calc((100% - var(--ensaios-card-width)) / 2));
        padding: 0 max(2px, calc((100% - var(--ensaios-card-width)) / 2)) 2px;
    }

    .ensaios-card {
        --ensaios-scale: 1;
        --ensaios-offset: 0px;
        --ensaios-opacity: 1;
        border-radius: 0;
        transform: none;
    }

    .ensaios-card__caption {
        padding: 16px 14px 13px;
    }

    .ensaios-card__tag {
        min-height: 24px;
        padding: 5px 9px;
        font-size: 0.56rem;
        letter-spacing: 0.1em;
    }

    .ensaios-card__caption strong {
        font-size: 0.95rem;
    }

    .ensaios-card__text {
        font-size: 0.8rem;
        line-height: 1.38;
    }

    .video-card {
        border-radius: 0;
    }

    .video-thumb {
        border-radius: 0;
    }

    .video-play {
        right: 12px;
        bottom: 12px;
        width: 44px;
        height: 44px;
    }

    .video-meta {
        padding: 12px 12px 14px;
    }

    .video-meta strong {
        font-size: 1rem;
    }

    .video-meta span {
        font-size: 0.83rem;
        line-height: 1.4;
    }

    .video-carousel-meta {
        margin-top: 18px;
        gap: 14px;
    }

    .video-carousel-copy span {
        font-size: 0.86rem;
    }

    .song-card {
        border-radius: 0;
    }

    .song-card__media {
        border-radius: 0;
    }

    .song-card__play {
        right: 10px;
        bottom: 10px;
        width: 38px;
        height: 38px;
        font-size: 0.8rem;
    }

    .song-card__body {
        padding: 10px 10px 12px;
    }

    .song-card__title {
        font-size: 0.88rem;
        line-height: 1.25;
    }

    .song-card__meta {
        font-size: 0.76rem;
        line-height: 1.35;
    }

    .experience-grid,
    .legacy-track,
    .contact-grid {
        grid-template-columns: 1fr;
    }

    .experience-grid {
        display: flex;
        gap: 12px;
        margin-top: 0;
        scroll-padding-inline: 0;
        padding: 2px 0 10px;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        touch-action: pan-x;
        contain: none;
    }

    .experience-photo-strip {
        grid-auto-flow: column;
        grid-template-columns: none;
        grid-auto-columns: min(74vw, 280px);
        gap: 10px;
        margin-bottom: 12px;
        padding: 2px 2px 8px;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        touch-action: pan-x;
    }

    .experience-photo-strip::-webkit-scrollbar {
        display: none;
    }

    .experience-photo-strip figure,
    .experience-photo-strip figure:first-child {
        grid-row: auto;
        min-height: 0;
        border-radius: 0;
        scroll-snap-align: center;
        scroll-snap-stop: always;
    }

    .experience-grid::-webkit-scrollbar {
        display: none;
    }

    .experience-showcase {
        margin-top: 18px;
        padding: 12px 10px 10px;
        border-radius: 0;
    }

    .experience-swipe-hint {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        width: auto;
        margin-top: 8px;
        padding: 0;
        border: 0;
        background: none;
        box-shadow: none;
        color: rgba(220, 236, 255, 0.68);
        font-size: 0.58rem;
        font-weight: 700;
        letter-spacing: 0.16em;
    }

    .experience-swipe-hint::before {
        content: '';
        width: 22px;
        height: 1px;
        background: linear-gradient(90deg, rgba(210, 232, 255, 0), rgba(210, 232, 255, 0.46));
    }

    .contact-grid {
        contain: none;
    }

    .experience-card {
        display: grid;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        grid-template-columns: 46px minmax(0, 1fr);
        grid-template-areas:
            "index title"
            ". text";
        align-items: start;
        gap: 8px 14px;
        align-content: start;
        min-height: 156px;
        padding: 20px 18px 18px;
        border-radius: 0;
        box-shadow: 0 14px 24px rgba(0, 17, 34, 0.14);
        scroll-snap-align: start;
        scroll-snap-stop: always;
    }

    .experience-card__index {
        grid-area: index;
        width: 46px;
        height: 46px;
        margin: 0;
        border-radius: 0;
        font-size: 0.76rem;
    }

    .experience-card strong {
        grid-area: title;
        align-self: center;
        font-size: 1rem;
        line-height: 1.24;
    }

    .experience-card p {
        grid-area: text;
        margin-top: 0;
        font-size: 0.86rem;
        line-height: 1.42;
    }

    .section-cta {
        margin-top: 18px;
        align-items: stretch;
    }

    #espetaculo .section-cta .btn {
        display: none;
    }

    .section-cta .btn {
        width: 100%;
        justify-content: center;
    }

    .section-cta span {
        width: 100%;
        font-size: 0.84rem;
        line-height: 1.5;
        text-align: center;
    }

    .experience-short__play {
        top: 12px;
        right: 12px;
        width: 38px;
        height: 38px;
    }

    .experience-short__overlay {
        right: 14px;
        bottom: 14px;
        left: 14px;
        gap: 5px;
    }

    .experience-short__kicker {
        min-height: 26px;
        padding: 0 10px;
        font-size: 0.58rem;
    }

    .experience-short__overlay strong {
        font-size: 1.04rem;
    }

    .experience-short__meta {
        font-size: 0.64rem;
    }

    .legacy-shell {
        gap: 16px;
        margin-top: 22px;
    }

    #legado .legacy-shell {
        grid-template-columns: 1fr;
    }

    #legado .legacy-shell--player-only {
        margin-top: 0;
        max-width: 540px;
        grid-template-columns: 1fr;
        gap: 16px;
    }

    #legado .legacy-intro {
        justify-items: center;
        text-align: center;
        gap: 12px;
    }

    #legado .legacy-intro .section-lead {
        max-width: 36ch;
        text-align: center;
    }

    .legacy-panel {
        padding: 22px 18px;
        border-radius: 0;
        gap: 12px;
    }

    .legacy-panel strong {
        max-width: none;
        font-size: 1.08rem;
        line-height: 1.24;
    }

    #legado .legacy-panel strong {
        max-width: none;
    }

    .hero {
        --hero-header-offset: 0px;
        --hero-header-gap: 0px;
        min-height: 0;
        height: auto;
        padding: 10px 10px 0;
    }

    .hero::after {
        height: 10vh;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.14) 58%, rgba(255, 255, 255, 0.52) 100%);
    }

    .hero-media {
        position: relative;
        inset: auto;
        min-height: 400px;
        padding: 0;
        width: 100%;
        max-width: 100%;
        transform: none !important;
        opacity: 1 !important;
    }

    .hero-media::after {
        background: linear-gradient(180deg, rgba(0, 20, 44, 0.12), rgba(0, 20, 44, 0.05) 42%, rgba(255, 255, 255, 0.06) 82%, rgba(255, 255, 255, 0.14) 100%);
    }

    .hero-mosaic {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: repeat(3, minmax(0, 1fr));
        gap: 8px;
        width: 100%;
        max-width: 100%;
        height: 400px;
    }

    .hero-tile {
        border-radius: 0;
    }

    .bio-grid {
        grid-template-columns: 1fr;
    }

    .hero-content {
        position: absolute;
        top: 18px;
        left: 16px;
        width: min(54vw, 204px);
        max-width: none;
        height: auto;
        margin: 0;
        padding: 0;
        display: block;
    }

    .hero h1 {
        font-size: clamp(2.16rem, 12.2vw, 2.92rem);
        max-width: 160px;
    }

    .hero-copy {
        width: 100%;
        max-width: none;
        min-width: 0;
        padding: 12px 10px 12px;
    }

    .hero-copy::before {
        inset: 0;
        border-radius: 0;
        background: linear-gradient(100deg, rgba(0, 24, 48, 0.82) 0%, rgba(0, 24, 48, 0.62) 58%, rgba(0, 24, 48, 0.2) 100%);
        box-shadow: 0 12px 24px rgba(0, 22, 43, 0.12);
    }

    .hero-content::before,
    .hero-content::after {
        display: none;
    }

    .eyebrow {
        margin-bottom: 8px;
        font-size: 0.68rem;
        letter-spacing: 0.16em;
    }

    .hero-copy > p:not(.eyebrow):not(.hero-slogan) {
        max-width: none;
        margin-top: 8px;
        font-size: 0.84rem;
        line-height: 1.32;
    }

    .hero-slogan {
        display: none;
    }

    .hero-actions {
        margin-top: 10px;
        flex-direction: column;
        align-items: stretch;
        gap: 6px;
        width: 100%;
    }

    .hero-actions .btn {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        margin-top: 0;
        padding: 10px 10px;
        font-size: 0.64rem;
    }

    .scroll-cue {
        display: none;
    }

    .hero-signature {
        display: flex;
        width: min(100%, calc(100% - 36px));
        max-width: 360px;
        margin: 8px auto 12px;
        padding: 0;
        text-align: center;
        gap: 6px;
    }

    .hero-signature__content {
        display: grid;
        justify-items: center;
        gap: 3px;
        margin-top: 0;
        padding: 0;
        text-align: center;
    }

    .hero-signature__label {
        margin-bottom: 1px;
        font-size: 0.5rem;
        letter-spacing: 0.16em;
    }

    .hero-signature__mark {
        display: none;
    }

    .hero-signature strong {
        font-size: clamp(0.98rem, 5vw, 1.38rem);
        line-height: 1.04;
    }

    .repertoire-shell {
        grid-template-columns: 1fr;
        gap: 14px;
        margin-top: 22px;
    }

    .repertoire-doodle {
        padding: 7px 10px;
    }

    .repertoire-doodle svg {
        width: 16px;
        height: 16px;
    }

    .repertoire-doodle em {
        font-size: 0.56rem;
        letter-spacing: 0.12em;
    }

    .repertoire-doodle--rei {
        top: 16px;
        left: 14px;
    }

    .repertoire-doodle--calhambeque {
        top: 18px;
        left: 50%;
        transform: translateX(-50%) rotate(-2deg);
    }

    .repertoire-doodle--spotify {
        top: 70px;
        right: 14px;
    }

    .repertoire-doodle--daniel {
        left: 16px;
        bottom: 18px;
    }

    .repertoire-card {
        padding: 20px 18px;
        border-radius: 0;
    }

    .repertoire-card strong {
        font-size: 0.98rem;
    }

    .repertoire-card p {
        font-size: 0.9rem;
        line-height: 1.55;
    }

    .tickets-shell {
        margin-top: 20px;
        padding: 24px 18px 20px;
        border-radius: 0;
    }

    .ticket-doodle {
        width: 62px;
        height: 62px;
    }

    .ticket-doodle--three {
        right: 24px;
        bottom: 8px;
    }

    .bio-doodle,
    .contact-doodle {
        padding: 7px 10px;
    }

    .bio-doodle svg,
    .contact-doodle svg {
        width: 16px;
        height: 16px;
    }

    .bio-doodle em,
    .contact-doodle em {
        font-size: 0.56rem;
        letter-spacing: 0.12em;
    }

    .bio-doodle--daniel {
        top: 16px;
        left: 14px;
    }

    .bio-doodle--mic {
        top: 64px;
        right: 14px;
    }

    .bio-doodle--calhambeque {
        right: 18px;
        bottom: 16px;
    }

    .contact-doodle--daniel {
        top: 16px;
        left: 14px;
    }

    .contact-doodle--phone {
        top: 66px;
        right: 14px;
    }

    .contact-doodle--calhambeque {
        left: auto;
        right: 18px;
        bottom: 16px;
        transform: rotate(-4deg);
    }

    .tickets-copy strong {
        font-size: 1.02rem;
    }

    .tickets-copy p {
        font-size: 0.92rem;
        line-height: 1.54;
    }

    .tickets-actions {
        gap: 10px;
    }

    .modal-content--jukebox {
        width: min(100%, 372px);
        max-height: calc(100vh - 24px);
        max-height: calc(100dvh - 24px);
        padding: 10px;
        border-radius: 0;
    }

    .jukebox-modal-shell {
        display: block;
        padding: 14px 12px 12px;
        border-radius: 0;
    }

    .jukebox-modal-head {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        margin-bottom: 12px;
        text-align: center;
    }

    .jukebox-modal-cover {
        width: min(122px, 38vw);
        max-width: none;
        margin: 0 auto;
        border-radius: 0;
    }

    .jukebox-modal-meta {
        text-align: center;
        justify-items: center;
        gap: 8px;
    }

    .jukebox-modal-meta strong {
        font-size: clamp(1.45rem, 7vw, 1.9rem);
    }

    .jukebox-modal-meta p {
        max-width: 24ch;
        font-size: 0.88rem;
        line-height: 1.42;
    }

    .jukebox-modal-player {
        padding: 6px;
        border-radius: 0;
    }

    .jukebox-modal-player iframe {
        height: 152px;
        border-radius: 0;
    }

    .jukebox-modal-link {
        width: 100%;
        justify-content: center;
        margin-top: 2px;
    }

    .jukebox-sticker {
        padding: 6px 8px;
    }

    .jukebox-sticker svg {
        width: 15px;
        height: 15px;
    }

    .jukebox-sticker em {
        font-size: 0.52rem;
        letter-spacing: 0.1em;
    }

    .jukebox-sticker--rei {
        top: 10px;
        left: 10px;
        bottom: auto;
    }

    .jukebox-sticker--daniel {
        left: 10px;
        bottom: 10px;
    }

    .jukebox-sticker--spotify {
        top: 10px;
        right: 10px;
        bottom: auto;
    }

    .modal-content--video {
        width: min(100%, 428px);
        max-height: calc(100vh - 16px);
        max-height: calc(100dvh - 16px);
        padding: 12px;
        border-radius: 0;
    }

    .video-modal-shell {
        padding: 18px 16px 16px;
        border-radius: 0;
    }

    .video-frame-wrap {
        border-radius: 0;
    }

    .video-modal-bar {
        margin-top: 14px;
        gap: 8px;
        text-align: center;
        justify-items: center;
    }

    .video-modal-title {
        font-size: clamp(1.5rem, 7.2vw, 1.98rem);
    }

    .video-modal-subtitle {
        max-width: 28ch;
        font-size: 0.92rem;
        line-height: 1.5;
    }

    .video-modal-note {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 12px;
        text-align: center;
    }

    .video-modal-preview {
        max-width: min(278px, 80vw);
        margin: 0 auto;
        border-radius: 0;
    }

    .video-modal-meta {
        justify-items: center;
    }

    .video-modal-link {
        width: 100%;
    }

    .bio-intro {
        margin-bottom: 20px;
        font-size: 1rem;
        line-height: 1.5;
    }

    .bio-card {
        padding: 18px 18px;
    }

    .bio-card p {
        font-size: 0.96rem;
        line-height: 1.6;
    }

    .bio-quote {
        padding: 16px 18px;
        font-size: 0.98rem;
    }

    .legacy-card {
        padding: 20px 18px;
        border-radius: 0;
    }

    .legacy-card strong {
        font-size: 1rem;
        margin-top: 16px;
    }

    .legacy-card p {
        font-size: 0.94rem;
        line-height: 1.55;
    }

    .legacy-note {
        padding: 18px 18px;
        border-radius: 0;
    }

    .legacy-panel p,
    .legacy-note p {
        font-size: 0.92rem;
        line-height: 1.58;
    }

    .legacy-stats {
        gap: 10px;
        margin-top: 18px;
    }

    .legacy-stats span {
        width: 100%;
        padding: 10px 12px;
        font-size: 0.7rem;
        line-height: 1.35;
        justify-content: center;
        text-align: center;
    }

    .legacy-video-trigger {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 12px;
    }

    .legacy-video-trigger__media {
        max-width: none;
    }

    .legacy-video-trigger__body strong {
        font-size: 1.06rem;
    }

    .legacy-video-trigger__text {
        font-size: 0.84rem;
    }

    .legacy-video-trigger__trail {
        gap: 8px;
    }

    .legacy-video-trigger__trail span {
        width: 100%;
        justify-content: center;
        font-size: 0.62rem;
    }

    #legado .legacy-video-trigger--feature {
        width: 100%;
        max-width: min(100%, 360px);
        aspect-ratio: 1 / 1;
        border-radius: 0;
        justify-self: center;
    }

    #legado .legacy-timeline {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 0;
    }

    .legacy-feature-card {
        aspect-ratio: auto;
        min-height: 0;
        padding: 18px 16px;
        border-radius: 0;
    }

    #legado .legacy-panel {
        aspect-ratio: 1 / 1;
        min-height: 0;
        padding: 20px 18px;
        border: 1px solid rgba(223, 239, 255, 0.76);
        border-radius: 0;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(243, 248, 255, 0.98));
        box-shadow: 0 20px 34px rgba(0, 17, 34, 0.16);
        gap: 10px;
    }

    .legacy-feature-card strong {
        max-width: none;
        font-size: 1.18rem;
    }

    .legacy-feature-card p {
        font-size: 0.88rem;
        line-height: 1.48;
    }

    #legado .legacy-panel__kicker {
        color: rgba(0, 77, 154, 0.72);
    }

    #legado .legacy-panel strong {
        color: #0d3d77;
        font-size: 1.1rem;
        line-height: 1.18;
    }

    #legado .legacy-panel p,
    #legado .legacy-panel .legacy-statements li,
    #legado .legacy-panel .legacy-closing {
        color: rgba(27, 67, 110, 0.88);
    }

    #legado .legacy-panel p {
        font-size: 0.84rem;
        line-height: 1.46;
    }

    #legado .legacy-panel .legacy-statements {
        gap: 8px;
    }

    #legado .legacy-panel .legacy-statements li {
        font-size: 0.68rem;
        line-height: 1.34;
        letter-spacing: 0.05em;
    }

    #legado .legacy-panel .legacy-closing {
        font-size: 0.82rem;
        line-height: 1.44;
    }

    #legado .legacy-panel .legacy-statements li::before {
        background: linear-gradient(180deg, rgba(12, 107, 212, 0.96), rgba(8, 69, 138, 0.96));
        box-shadow: 0 0 0 5px rgba(12, 107, 212, 0.12);
    }

    #legado .legacy-video-trigger--feature .legacy-video-trigger__media {
        padding: 0;
        aspect-ratio: 1 / 1;
        border-radius: 0;
    }

    #legado .legacy-video-trigger--feature .legacy-video-trigger__media img {
        min-height: 0;
        border-radius: 0;
    }

    #legado .legacy-video-trigger--feature .legacy-video-trigger__play {
        width: 64px;
        height: 64px;
        inset: 50% auto auto 50%;
        transform: translate(-50%, -50%);
        font-size: 1.18rem;
    }

    .modal-content {
        padding: 18px 12px 12px;
        border-radius: 0;
    }

    .video-modal-note {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 8px 0 0;
        text-align: center;
    }

    .video-modal-title {
        font-size: 1.22rem;
    }

    .video-modal-kicker {
        font-size: 0.68rem;
        letter-spacing: 0.14em;
    }

    .video-modal-note p {
        font-size: 0.92rem;
    }

    .video-modal-link {
        width: 100%;
    }

    .close-modal {
        top: 10px;
        right: 10px;
        width: 38px;
        height: 38px;
        font-size: 1.6rem;
    }

    .lightbox {
        padding: 14px;
    }

    .lightbox__dialog {
        width: min(100%, 360px);
        padding: 12px;
        border-radius: 0;
    }

    .lightbox__chrome {
        margin: 0 42px 10px 0;
        gap: 10px;
    }

    .lightbox__counter {
        min-height: 32px;
        padding: 7px 12px;
        font-size: 0.64rem;
    }

    .lightbox__nav {
        width: 36px;
        height: 36px;
        font-size: 0.92rem;
    }

    .lightbox__figure {
        gap: 10px;
    }

    .lightbox__image {
        max-height: 68vh;
        border-radius: 0;
    }

    .lightbox__caption {
        font-size: 0.86rem;
        line-height: 1.5;
    }

    .lightbox__close {
        top: 10px;
        right: 10px;
        width: 38px;
        height: 38px;
        font-size: 1.55rem;
    }

    .show-card {
        padding: 18px;
    }

    .show-doodle {
        width: 72px;
        height: 72px;
    }

    .show-doodle--calhambeque {
        right: 24px;
        bottom: 8px;
    }

    .show-date {
        width: 100%;
        min-width: 0;
        padding: 18px 14px;
    }

    .show-date__day {
        font-size: 3.4rem;
    }

    .show-content {
        gap: 10px;
    }

    .show-content strong {
        font-size: 1.04rem;
        line-height: 1.18;
    }

    .show-content p {
        font-size: 0.96rem;
        line-height: 1.55;
    }

    .show-tags {
        gap: 8px;
    }

    .show-tags span {
        padding: 8px 10px;
        font-size: 0.68rem;
    }

    .show-actions {
        gap: 10px;
    }

    .show-actions .btn,
    .contact-card {
        width: 100%;
    }

    .show-actions .btn {
        min-width: 0;
    }

    .video-carousel-meta {
        margin-top: 16px;
        gap: 10px;
    }

    .video-carousel-copy {
        gap: 4px;
    }

    .video-carousel-copy strong {
        font-size: 0.92rem;
    }

    .video-carousel-copy span {
        font-size: 0.82rem;
        line-height: 1.46;
    }

    .video-carousel-badges span {
        min-height: 28px;
        padding: 6px 10px;
        font-size: 0.58rem;
        letter-spacing: 0.11em;
    }

    .contact-card {
        padding: 18px 16px 20px;
        gap: 12px;
    }

    .contact-card strong {
        font-size: 1rem;
    }

    .contact-card span:last-child {
        font-size: 0.9rem;
        line-height: 1.55;
    }

    .contact-card__actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .contact-card__action {
        width: 100%;
        padding: 10px 12px;
        font-size: 0.66rem;
    }

    .reveal-card {
        transition-duration: 0.46s, 0.62s;
    }
}

@media (max-width: 420px) {
    .site-brand__copy span {
        display: none;
    }
}

@media (max-width: 420px) {
    .hero h1 {
        max-width: 154px;
        font-size: clamp(2.04rem, 13.6vw, 2.82rem);
    }

    .hero-copy {
        padding: 11px 10px 12px;
    }

    .hero-content {
        top: 16px;
        left: 14px;
        width: min(55vw, 192px);
    }

    .legacy-stats span {
        font-size: 0.66rem;
    }

    .contact-card__actions {
        grid-template-columns: 1fr;
    }

    .modal-back-link {
        width: 100%;
        justify-content: center;
        margin-top: 12px;
        font-size: 0.68rem;
        letter-spacing: 0.1em;
    }
}

@media (max-width: 360px) {
    .song-grid {
        --song-card-width: min(78vw, 224px);
        grid-auto-columns: var(--song-card-width);
    }

    .ensaios-track {
        --ensaios-card-width: min(91vw, 320px);
    }

    .video-track {
        --video-card-width: min(88vw, 304px);
        grid-auto-columns: var(--video-card-width);
    }
}

@media (hover: none), (pointer: coarse) {
    .gallery img:hover,
    .ensaios-card:hover img,
    .ensaios-card.is-active img,
    .video-card:hover,
    .video-card:hover .video-thumb img,
    .video-card:hover .video-play,
    .song-card:hover,
    .song-card:hover .song-card__media img,
    .song-card:hover .song-card__play {
        transform: none !important;
    }

    .video-card:hover,
    .song-card:hover,
    .ensaios-card:hover {
        box-shadow: inherit;
    }

    .section.reveal-hidden,
    .reveal-card.reveal-hidden {
        --reveal-y: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    .hero-copy,
    body::before,
    .scroll-cue::after,
    .page-aura::before,
    .page-aura::after,
    .section,
    .reveal-card,
    .hero-media,
    .hero-content::before,
    .hero-content::after,
    .site-menu a::before,
    .social-link::before,
    .footer-action::before,
    .hero-copy::before,
    .hero-copy::after,
    .section::before,
    .gallery::before,
    .bio-card::before,
    .btn::before,
    .btn::after,
    .bio-toggle::before,
    .bio-toggle::after,
    .video-modal-link::before,
    .video-modal-link::after,
    .video-nav::before,
    .video-nav::after,
    .video-card::before,
    .video-card::after,
    .video-thumb img,
    .song-card::before,
    .song-card::after,
    .song-card__media img,
    .song-card__play,
    .video-play {
        animation: none !important;
        transition: none !important;
    }

    .hero-copy,
    .section,
    .reveal-card {
        opacity: 1;
        transform: none;
    }

    .section,
    .reveal-card {
        --reveal-y: 0px;
        --parallax-y: 0px;
        transform: none;
    }
}

.section--news-home {
    background:
        radial-gradient(circle at 14% 18%, rgba(96, 182, 255, 0.14), transparent 24%),
        radial-gradient(circle at 86% 18%, rgba(96, 182, 255, 0.08), transparent 22%),
        linear-gradient(160deg, rgba(5, 24, 48, 0.99) 0%, rgba(3, 15, 31, 0.995) 48%, rgba(1, 9, 20, 1) 100%);
    border-color: rgba(125, 192, 246, 0.16);
    box-shadow: 0 30px 82px rgba(0, 15, 30, 0.32);
}

.section--news-home::before {
    background: linear-gradient(114deg, transparent 0%, rgba(128, 191, 245, 0.14) 18%, rgba(255, 255, 255, 0.18) 34%, rgba(106, 170, 230, 0.08) 46%, transparent 60%);
    opacity: 0.42;
}

.section--news-home h2,
.section--news-home p {
    color: #ffffff;
}

.section--news-home p {
    color: rgba(225, 240, 255, 0.88);
}

.news-home-shell {
    display: grid;
    grid-template-columns: minmax(280px, 0.84fr) minmax(0, 1.16fr);
    gap: 22px;
    margin-top: 28px;
    align-items: start;
}

.news-home-intro {
    display: grid;
    gap: 14px;
    align-content: start;
    text-align: left;
    padding: 26px 24px;
    border-radius: 0;
    border: 1px solid rgba(var(--accent-bright-rgb), 0.18);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.04));
    box-shadow: 0 20px 44px rgba(0, 17, 34, 0.18);
}

.news-home-intro strong {
    color: #ffffff;
    font-size: 1.2rem;
    line-height: 1.2;
}

.news-home-intro p {
    max-width: none;
    margin: 0;
    text-align: left;
    color: rgba(226, 241, 255, 0.84);
}

.news-home-intro span {
    color: #ffffff;
    font-weight: 800;
}

.news-home-intro .btn {
    justify-self: start;
}

.news-home-grid,
.news-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.news-grid {
    margin-top: 26px;
}

.news-grid--featured {
    align-items: stretch;
}

.news-card {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(236, 244, 255, 0.96));
    box-shadow: 0 20px 42px rgba(var(--accent-rgb), 0.1);
    transition: transform 0.26s ease, box-shadow 0.26s ease, border-color 0.26s ease;
}

.news-card:hover {
    transform: translateY(-6px);
    border-color: rgba(0, 81, 162, 0.22);
    box-shadow: 0 28px 48px rgba(var(--accent-rgb), 0.14);
}

.news-card__media {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: #dbe7f2;
}

.news-card__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.28s ease;
}

.news-card:hover .news-card__media img {
    transform: scale(1.03);
}

.news-card__body {
    display: grid;
    gap: 12px;
    padding: 18px 18px 20px;
    text-align: left;
}

.news-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    color: rgba(33, 74, 118, 0.72);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.news-card__category {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 10px;
    border-radius: 999px;
    border: 1px solid rgba(var(--accent-rgb), 0.1);
    background: rgba(232, 241, 252, 0.9);
    color: var(--accent);
    text-decoration: none;
}

.news-card__title {
    margin: 0;
    color: var(--ink-strong);
    font-size: 1.18rem;
    line-height: 1.22;
    font-weight: 800;
}

.news-card__title a {
    color: inherit;
    text-decoration: none;
}

.news-card__excerpt {
    margin: 0;
    max-width: none;
    text-align: left;
    color: var(--ink);
    font-size: 0.96rem;
    line-height: 1.62;
}

.news-card__link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    width: fit-content;
    color: var(--accent);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    text-decoration: none;
}

.news-card__link::after {
    content: '\2192';
    font-size: 1rem;
    line-height: 1;
}

.news-card--featured {
    grid-column: span 2;
}

.news-card--featured .news-card__body {
    padding: 22px 22px 24px;
}

.news-card--featured .news-card__title {
    font-size: 1.44rem;
}

.section--news-home .news-card {
    border-color: rgba(var(--accent-bright-rgb), 0.18);
    background: linear-gradient(180deg, rgba(7, 43, 82, 0.98), rgba(4, 28, 56, 0.98));
    box-shadow: 0 20px 44px rgba(0, 17, 34, 0.18);
}

.section--news-home .news-card__meta {
    color: rgba(201, 230, 255, 0.82);
}

.section--news-home .news-card__category {
    border-color: rgba(var(--accent-bright-rgb), 0.18);
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
}

.section--news-home .news-card__title,
.section--news-home .news-card__excerpt,
.section--news-home .news-card__link {
    color: #ffffff;
}

.container--news {
    padding-top: 34px;
}

.section--news-landing,
.section--news-featured,
.section--news-group,
.section--news-related,
.section--news-article {
    overflow: visible;
}

.section--news-landing h1,
.section--news-article h1 {
    margin: 0 0 18px;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2.6rem, 5vw, 4.2rem);
    line-height: 0.95;
    font-weight: 600;
    letter-spacing: -0.04em;
    color: var(--accent);
    text-align: center;
}

.news-filter,
.news-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.news-filter__chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 14px;
    border-radius: 999px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    background: rgba(236, 244, 255, 0.94);
    color: var(--accent);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    text-decoration: none;
    transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease, background 0.24s ease;
}

.news-filter__chip:hover,
.news-filter__chip:focus-visible,
.news-filter__chip.is-active {
    transform: translateY(-2px);
    border-color: rgba(0, 81, 162, 0.22);
    background: #ffffff;
    box-shadow: 0 16px 30px rgba(var(--accent-rgb), 0.1);
    outline: none;
}

.news-featured__intro {
    display: grid;
    gap: 10px;
    justify-items: center;
}

.news-group__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.92fr);
    gap: 22px;
    align-items: end;
    text-align: left;
}

.news-group__header h2 {
    margin: 0;
    text-align: left;
}

.news-group__header p {
    max-width: none;
    margin: 0;
    text-align: left;
}

.news-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    margin-bottom: 16px;
    color: rgba(33, 74, 118, 0.72);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.news-breadcrumbs a {
    color: inherit;
    text-decoration: none;
}

.news-article-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-bottom: 16px;
    color: rgba(33, 74, 118, 0.74);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.news-article-meta span,
.news-breadcrumbs span {
    display: inline-flex;
    align-items: center;
}

.news-article-lead {
    max-width: 52rem;
}

.news-article-cover {
    margin-top: 26px;
    overflow: hidden;
    border-radius: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.1);
    box-shadow: 0 24px 54px rgba(var(--accent-rgb), 0.1);
    background: #dbe7f2;
}

.news-article-cover img {
    width: 100%;
    display: block;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

.news-article-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(280px, 0.7fr);
    gap: 24px;
    margin-top: 28px;
    align-items: start;
}

.news-article-body,
.news-aside-card {
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(236, 244, 255, 0.96));
    box-shadow: 0 20px 42px rgba(var(--accent-rgb), 0.1);
}

.news-article-body {
    padding: 30px 28px;
    text-align: left;
}

.news-article-block + .news-article-block {
    margin-top: 26px;
}

.news-article-body h2 {
    margin: 0 0 14px;
    font-size: clamp(1.8rem, 3vw, 2.4rem);
    text-align: left;
}

.news-article-body p {
    max-width: none;
    margin: 0;
    text-align: left;
    color: var(--ink);
    font-size: 1rem;
    line-height: 1.72;
}

.news-article-body p + p {
    margin-top: 14px;
}

.news-article-list {
    display: grid;
    gap: 12px;
    margin: 14px 0 0;
    padding: 0;
    list-style: none;
}

.news-article-list li {
    position: relative;
    padding-left: 18px;
    color: var(--ink);
    font-size: 0.98rem;
    line-height: 1.66;
}

.news-article-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.72em;
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(12, 107, 212, 0.96), rgba(8, 69, 138, 0.96));
}

.news-article-aside {
    display: grid;
    gap: 16px;
}

.news-aside-card {
    display: grid;
    gap: 10px;
    padding: 22px 20px;
    text-align: left;
}

.news-aside-card__label {
    color: rgba(33, 74, 118, 0.72);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.news-aside-card strong {
    color: var(--ink-strong);
    font-size: 1.08rem;
    line-height: 1.25;
}

.news-aside-card p {
    max-width: none;
    margin: 0;
    text-align: left;
    color: var(--ink);
    font-size: 0.92rem;
    line-height: 1.6;
}

.news-aside-card .btn,
.news-actions .btn {
    justify-self: start;
}

.site-footer--news .site-footer__inner {
    align-items: start;
}

@media (max-width: 1200px) {
    .news-home-grid,
    .news-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .news-card--featured {
        grid-column: span 2;
    }

    .news-group__header,
    .news-article-layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .news-home-shell {
        grid-template-columns: 1fr;
    }

    .news-home-intro .btn,
    .news-aside-card .btn {
        justify-self: stretch;
    }
}

@media (max-width: 640px) {
    .container--news {
        padding-top: 18px;
    }

    .section--news-home,
    .section--news-landing,
    .section--news-featured,
    .section--news-group,
    .section--news-related,
    .section--news-article {
        padding: 20px 16px 22px;
    }

    .section--news-landing h1,
    .section--news-article h1 {
        font-size: clamp(2.05rem, 10vw, 2.9rem);
        line-height: 0.98;
    }

    .news-home-intro,
    .news-article-body,
    .news-aside-card {
        padding: 20px 18px;
        border-radius: 0;
    }

    .news-home-grid,
    .news-grid {
        grid-template-columns: 1fr;
    }

    .news-card--featured {
        grid-column: auto;
    }

    .news-group__header {
        gap: 12px;
    }

    .news-group__header h2,
    .news-group__header p {
        text-align: center;
    }

    .news-filter,
    .news-actions {
        align-items: stretch;
    }

    .news-filter__chip,
    .news-actions .btn {
        width: 100%;
        justify-content: center;
    }

    .news-article-cover {
        border-radius: 0;
    }

    .news-article-layout {
        gap: 16px;
    }

    .news-card__body {
        padding: 16px 16px 18px;
    }

    .news-card__title {
        font-size: 1.04rem;
    }

    .news-card__excerpt,
    .news-article-body p,
    .news-article-list li {
        font-size: 0.92rem;
        line-height: 1.58;
    }
}

@media (prefers-reduced-motion: reduce) {
    .news-card,
    .news-card__media img,
    .news-filter__chip {
        transition: none !important;
    }

    .news-card:hover {
        transform: none;
    }
}

/* Home editorial redesign */
.section--news-home {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(244, 248, 252, 0.98));
    border-color: rgba(var(--accent-rgb), 0.08);
    box-shadow: 0 28px 70px rgba(11, 36, 66, 0.08);
}

.section--news-home::before {
    background:
        radial-gradient(circle at 12% 14%, rgba(69, 143, 226, 0.08), transparent 24%),
        radial-gradient(circle at 88% 20%, rgba(69, 143, 226, 0.05), transparent 20%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(255, 255, 255, 0));
    opacity: 1;
}

.section--news-home .section-kicker {
    border-color: rgba(var(--accent-rgb), 0.1);
    background: rgba(242, 247, 252, 0.98);
    color: var(--accent);
}

.section--news-home .section-lead,
.section--news-home p,
.section--news-home h2 {
    color: inherit;
}

.news-home-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(var(--accent-rgb), 0.08);
}

.news-home-heading {
    display: grid;
    gap: 10px;
    text-align: left;
}

.section--news-home h2 {
    margin: 0;
    color: var(--accent);
    text-align: left;
}

.section--news-home .section-lead {
    max-width: 760px;
    margin: 0;
    color: rgba(45, 65, 88, 0.82);
    text-align: left;
}

.news-home-head__link,
.news-home-note__link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    width: fit-content;
    color: var(--accent);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    text-decoration: none;
}

.news-home-head__link::after,
.news-home-note__link::after {
    content: '\2192';
    font-size: 1rem;
    line-height: 1;
}

.news-home-shell {
    display: grid;
    grid-template-columns: minmax(0, 1.24fr) minmax(320px, 0.76fr);
    gap: 24px;
    margin-top: 24px;
    align-items: stretch;
}

.news-home-rail {
    display: grid;
    gap: 16px;
    align-content: start;
}

.news-home-note {
    display: grid;
    gap: 14px;
    padding: 24px;
    border: 1px solid rgba(var(--accent-rgb), 0.08);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(239, 245, 251, 0.96), rgba(255, 255, 255, 0.99));
    box-shadow: 0 18px 36px rgba(11, 36, 66, 0.06);
    text-align: left;
}

.news-home-note__eyebrow {
    color: rgba(36, 66, 102, 0.7);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.news-home-note strong {
    color: var(--ink-strong);
    font-size: 1.18rem;
    line-height: 1.24;
}

.news-home-note p {
    max-width: none;
    margin: 0;
    color: rgba(53, 72, 94, 0.84);
    text-align: left;
}

.news-home-note__topics {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.news-home-note__topics span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 8px 12px;
    border: 1px solid rgba(var(--accent-rgb), 0.08);
    border-radius: 999px;
    background: #ffffff;
    color: var(--accent);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.section--news-home .news-card {
    border-radius: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.08);
    background: #ffffff;
    box-shadow: 0 18px 40px rgba(11, 36, 66, 0.07);
}

.section--news-home .news-card:hover {
    transform: translateY(-4px);
    border-color: rgba(12, 79, 153, 0.16);
    box-shadow: 0 24px 46px rgba(11, 36, 66, 0.1);
}

.section--news-home .news-card__media {
    background: #dfe8f0;
}

.section--news-home .news-card__meta {
    gap: 10px;
    color: rgba(65, 82, 102, 0.72);
    font-size: 0.68rem;
    letter-spacing: 0.14em;
}

.section--news-home .news-card__category {
    border-color: rgba(var(--accent-rgb), 0.08);
    background: rgba(236, 243, 250, 0.92);
    color: var(--accent);
}

.section--news-home .news-card__title {
    color: var(--ink-strong);
    font-size: 1.12rem;
    line-height: 1.16;
}

.section--news-home .news-card__excerpt {
    color: rgba(63, 80, 101, 0.86);
    font-size: 0.97rem;
    line-height: 1.68;
}

.section--news-home .news-card__link {
    color: var(--accent);
}

.section--news-home .news-card--lead {
    display: grid;
    grid-template-columns: minmax(0, 1.06fr) minmax(310px, 0.94fr);
    min-height: 100%;
}

.section--news-home .news-card--lead .news-card__media {
    aspect-ratio: auto;
    min-height: 100%;
}

.section--news-home .news-card--lead .news-card__media img {
    height: 100%;
}

.section--news-home .news-card--lead .news-card__body {
    align-content: start;
    gap: 14px;
    padding: 28px 28px 30px;
}

.section--news-home .news-card--lead .news-card__title {
    font-size: clamp(1.72rem, 2.3vw, 2.35rem);
    line-height: 1.02;
    letter-spacing: -0.03em;
}

.section--news-home .news-card--lead .news-card__excerpt {
    font-size: 1rem;
}

.section--news-home .news-card--compact {
    display: grid;
    grid-template-columns: 148px minmax(0, 1fr);
    min-height: 0;
}

.section--news-home .news-card--compact .news-card__media {
    aspect-ratio: auto;
    min-height: 100%;
}

.section--news-home .news-card--compact .news-card__media img {
    height: 100%;
}

.section--news-home .news-card--compact .news-card__body {
    align-content: start;
    gap: 10px;
    padding: 16px 18px 18px;
}

.section--news-home .news-card--compact .news-card__title {
    font-size: 1.02rem;
}

.section--news-home .news-card--compact .news-card__excerpt {
    display: none;
}

@media (max-width: 1200px) {
    .news-home-head {
        align-items: start;
        flex-direction: column;
    }

    .news-home-shell {
        grid-template-columns: 1fr;
    }

    .news-home-rail {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .news-home-note {
        grid-column: 1 / -1;
    }
}

@media (max-width: 900px) {
    .news-home-rail,
    .section--news-home .news-card--lead,
    .section--news-home .news-card--compact {
        grid-template-columns: 1fr;
    }

    .section--news-home .news-card--lead .news-card__media {
        min-height: 280px;
    }

    .section--news-home .news-card--compact .news-card__media {
        aspect-ratio: 16 / 10;
    }

    .news-home-head__link,
    .news-home-note__link {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 640px) {
    .section--news-home {
        padding: 18px 16px 20px;
    }

    .news-home-head {
        gap: 14px;
        padding-bottom: 16px;
    }

    .section--news-home h2 {
        font-size: clamp(2.2rem, 11vw, 3rem);
        line-height: 0.96;
    }

    .news-home-note,
    .section--news-home .news-card__body,
    .section--news-home .news-card--lead .news-card__body {
        padding: 18px 16px 20px;
    }

    .news-home-note strong {
        font-size: 1.02rem;
    }

    .section--news-home .news-card--lead .news-card__media {
        min-height: 220px;
    }

    .section--news-home .news-card--lead .news-card__title {
        font-size: 1.52rem;
    }

    .section--news-home .news-card--compact .news-card__title {
        font-size: 1rem;
    }

    .news-home-note__topics {
        gap: 7px;
    }

    .news-home-note__topics span {
        min-height: 32px;
        padding-inline: 10px;
        font-size: 0.64rem;
    }
}

/* News home strip */
.section--news-home {
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
    border-color: rgba(var(--accent-rgb), 0.1);
    box-shadow:
        0 34px 74px rgba(2, 17, 35, 0.18),
        0 16px 34px rgba(7, 48, 90, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.94);
}

.section--news-home::before {
    display: none;
}

.section--news-home .section-kicker {
    color: rgba(var(--accent-rgb), 0.76);
    text-shadow: none;
    letter-spacing: 0.18em;
}

.news-home-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(var(--accent-rgb), 0.1);
}

.news-home-heading {
    display: grid;
    gap: 10px;
    text-align: left;
}

.section--news-home h2 {
    margin: 0;
    text-align: left;
    color: var(--ink-strong);
    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.86),
        0 14px 28px rgba(7, 28, 54, 0.08);
}

.section--news-home .section-lead {
    max-width: 760px;
    margin: 0;
    text-align: left;
    color: rgba(21, 49, 79, 0.76);
    text-wrap: pretty;
}

.news-home-track {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: 24px;
}

.section--news-home .news-card--home {
    display: grid;
    grid-template-rows: auto 1fr;
    min-height: 100%;
    overflow: hidden;
    border-radius: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.08);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(245, 249, 253, 0.98));
    box-shadow: 0 18px 40px rgba(11, 36, 66, 0.08);
}

.section--news-home .news-card--home:hover {
    transform: translateY(-4px);
    border-color: rgba(12, 79, 153, 0.16);
    box-shadow: 0 24px 46px rgba(11, 36, 66, 0.1);
}

.section--news-home .news-card--home .news-card__media {
    aspect-ratio: 16 / 10;
    padding: 0;
    background:
        linear-gradient(180deg, rgba(233, 241, 248, 0.95), rgba(248, 251, 254, 0.98));
}

.section--news-home .news-card--home .news-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.section--news-home .news-card--home .news-card__body {
    display: grid;
    align-content: start;
    gap: 12px;
    padding: 20px 20px 22px;
    text-align: left;
}

.section--news-home .news-card--home .news-card__meta {
    gap: 10px;
    color: rgba(65, 82, 102, 0.72);
    font-size: 0.67rem;
    letter-spacing: 0.14em;
}

.section--news-home .news-card--home .news-card__category {
    border-color: rgba(var(--accent-rgb), 0.08);
    background: rgba(236, 243, 250, 0.92);
    color: var(--accent);
}

.section--news-home .news-card--home .news-card__title {
    margin: 0;
    font-size: 1.1rem;
    line-height: 1.18;
    color: var(--ink-strong);
}

.section--news-home .news-card--home .news-card__excerpt {
    max-width: none;
    margin: 0;
    color: rgba(63, 80, 101, 0.84);
    font-size: 0.95rem;
    line-height: 1.58;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.section--news-home .news-card--home .news-card__link {
    color: var(--accent);
}

/* News article editorial page */
.section--news-article {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(244, 248, 252, 0.98));
    border-color: rgba(var(--accent-rgb), 0.08);
    box-shadow: 0 28px 70px rgba(11, 36, 66, 0.08);
}

.news-breadcrumbs {
    justify-content: flex-start;
    margin-bottom: 18px;
}

.news-article-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.06fr) minmax(320px, 0.94fr);
    gap: 24px;
    align-items: stretch;
}

.news-article-intro {
    display: grid;
    align-content: start;
    gap: 14px;
    padding: 28px 30px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(236, 244, 255, 0.96));
    box-shadow: 0 20px 42px rgba(var(--accent-rgb), 0.1);
    text-align: left;
}

.section--news-article h1 {
    margin: 0;
    text-align: left;
    color: var(--accent);
}

.news-article-meta {
    justify-content: flex-start;
    margin: 0;
}

.news-article-lead {
    max-width: none;
    margin: 0;
    text-align: left;
    color: rgba(49, 68, 89, 0.86);
    font-size: 1.05rem;
    line-height: 1.72;
}

.news-article-cover {
    margin-top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100%;
    padding: 0;
    overflow: hidden;
    border-radius: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.1);
    box-shadow: 0 24px 54px rgba(var(--accent-rgb), 0.1);
    background:
        linear-gradient(180deg, rgba(232, 240, 248, 0.96), rgba(248, 251, 254, 0.98));
}

.news-article-cover img {
    width: 100%;
    height: 100%;
    min-height: 420px;
    display: block;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center;
}

.news-article-layout {
    grid-template-columns: minmax(0, 1fr) 320px;
}

.news-article-body {
    padding: 34px 32px;
}

.news-article-block + .news-article-block {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid rgba(var(--accent-rgb), 0.08);
}

.news-article-body h2 {
    margin-bottom: 16px;
    font-size: clamp(1.5rem, 2vw, 1.95rem);
}

.news-article-body p {
    font-size: 1rem;
    line-height: 1.78;
}

.news-article-list {
    gap: 14px;
    margin-top: 18px;
}

.news-article-aside {
    position: sticky;
    top: calc(var(--site-header-height, 84px) + 20px);
}

@media (max-width: 1180px) {
    .news-home-head {
        align-items: start;
        flex-direction: column;
    }

    .news-home-track {
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: minmax(280px, 1fr);
        overflow-x: auto;
        padding-bottom: 6px;
        scroll-snap-type: x proximity;
    }

    .section--news-home .news-card--home {
        scroll-snap-align: start;
    }

    .news-article-hero,
    .news-article-layout {
        grid-template-columns: 1fr;
    }

    .news-article-aside {
        position: static;
    }
}

@media (max-width: 920px) {
    .section--news-home {
        padding: 22px 18px 24px;
    }

    .news-home-head {
        gap: 12px;
        padding-bottom: 14px;
    }

    .news-home-track {
        grid-auto-flow: row;
        grid-template-columns: 1fr;
        overflow: visible;
        padding-bottom: 0;
        gap: 14px;
    }

    .section--news-home .news-card--home {
        grid-template-columns: 118px minmax(0, 1fr);
        grid-template-rows: 1fr;
        min-height: 0;
        align-items: stretch;
    }

    .section--news-home .news-card--home .news-card__media {
        aspect-ratio: auto;
        min-height: 100%;
        padding: 0;
    }

    .section--news-home .news-card--home .news-card__media img {
        height: 100%;
        max-height: none;
    }

    .section--news-home .news-card--home .news-card__body {
        min-width: 0;
        gap: 10px;
        padding: 16px 16px 18px 0;
    }

    .section--news-home .news-card--home .news-card__meta {
        gap: 8px;
        font-size: 0.63rem;
        letter-spacing: 0.12em;
    }

    .section--news-home .news-card--home .news-card__title {
        font-size: clamp(1rem, 3.8vw, 1.16rem);
        overflow-wrap: anywhere;
    }

    .section--news-home .news-card--home .news-card__excerpt {
        font-size: 0.9rem;
        line-height: 1.5;
        -webkit-line-clamp: 2;
    }
}

@media (max-width: 720px) {
    .section--news-home {
        padding: 18px 16px 20px;
    }

    .news-home-head {
        gap: 14px;
        padding-bottom: 16px;
    }

    .section--news-home h2 {
        font-size: clamp(2rem, 10vw, 2.8rem);
    }

    .news-home-track {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .section--news-home .news-card--home {
        grid-template-columns: 1fr;
    }

    .section--news-home .news-card--home .news-card__media {
        aspect-ratio: 16 / 9;
        min-height: 0;
        padding: 0;
    }

    .section--news-home .news-card--home .news-card__media img {
        height: 100%;
        max-height: none;
    }

    .section--news-home .news-card--home .news-card__body,
    .news-article-intro,
    .news-article-body,
    .news-aside-card,
    .news-article-cover {
        padding: 18px 16px 20px;
    }

    .section--news-home .news-card--home .news-card__body {
        gap: 9px;
    }

    .section--news-home .news-card--home .news-card__meta {
        font-size: 0.62rem;
        letter-spacing: 0.11em;
    }

    .section--news-home .news-card--home .news-card__title {
        font-size: 1.08rem;
        line-height: 1.16;
    }

    .section--news-home .news-card--home .news-card__excerpt {
        -webkit-line-clamp: 3;
    }

    .news-home-head__link {
        align-self: flex-start;
        font-size: 0.85rem;
    }

    .news-article-hero {
        gap: 16px;
    }

    .news-article-cover img {
        min-height: 240px;
    }
}

/* Audit hardening: keep compact headers and animated media inside the viewport. */
@media (max-width: 640px) {
    .top-header .top-header__inner,
    .top-header .site-brand,
    .top-header .site-brand__copy {
        min-width: 0 !important;
    }

    .top-header .top-header__inner {
        position: relative !important;
        padding-right: 158px !important;
    }

    .top-header .site-brand {
        flex: 1 1 auto !important;
        max-width: 100% !important;
    }

    .top-header .top-header__actions {
        flex: 0 0 auto !important;
        max-width: 150px !important;
        position: absolute !important;
        right: 0 !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }
}

.news-card__media--banner,
.news-article-cover--banner,
.news-card__banner-track,
.news-card__banner-slide {
    overflow: hidden !important;
    max-width: 100% !important;
}

@media (max-width: 640px) {
    .news-card__banner-backdrop {
        inset: 0 !important;
    }

    .news-card__banner-backdrop img {
        transform: scale(1.08) !important;
    }
}

/* Final LP intro override: must win over older legacy-stage experiments. */
#legado .legacy-video-trigger--feature .legacy-video-trigger__media {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media {
    overflow: visible !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::before,
#legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
    content: '' !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    aspect-ratio: 1 !important;
    border-radius: 50% !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translate(-50%, -50%) scale(0.72) rotate(0deg) !important;
    z-index: 4 !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::before {
    width: min(88%, 490px) !important;
    background:
        radial-gradient(circle at center, rgba(245, 250, 255, 0.96) 0 4.5%, rgba(19, 74, 138, 0.96) 4.8% 11%, rgba(255, 255, 255, 0.18) 11.2% 11.8%, transparent 12.1%),
        repeating-radial-gradient(circle at center, transparent 0 8px, rgba(255, 255, 255, 0.16) 8px 9px, transparent 9px 14px),
        radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.16), transparent 18%) !important;
    box-shadow: none !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
    width: min(86%, 478px) !important;
    background:
        radial-gradient(circle at center, transparent 0 18%, rgba(255, 255, 255, 0.18) 18.4% 18.9%, transparent 19.2% 100%),
        conic-gradient(from 0deg, rgba(255, 255, 255, 0.22), transparent 18deg, transparent 82deg, rgba(255, 255, 255, 0.14) 112deg, transparent 154deg, transparent 360deg) !important;
    mix-blend-mode: screen !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media img {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: min(76%, 420px) !important;
    height: auto !important;
    aspect-ratio: 1 !important;
    margin: auto !important;
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
    object-fit: cover !important;
    filter: saturate(0.92) contrast(1.08) brightness(0.78) !important;
    animation: legacyBannerRecordSpin 5s linear forwards !important;
    z-index: 3 !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::before,
#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::after {
    opacity: 1 !important;
    animation: legacyRecordOverlaySpin 5s linear forwards !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__play {
    left: 60% !important;
    top: 34% !important;
    width: min(38%, 220px) !important;
    height: 4px !important;
    min-width: 132px !important;
    border: 1px solid rgba(220, 232, 242, 0.32) !important;
    border-radius: 999px !important;
    background: #020407 !important;
    box-shadow:
        -12px 0 0 -3px #020407,
        0 7px 14px rgba(0, 0, 0, 0.42),
        0 0 0 1px rgba(255, 255, 255, 0.08) !important;
    color: transparent !important;
    font-size: 0 !important;
    opacity: 1 !important;
    transform-origin: 100% 50% !important;
    animation: legacyTonearmDrop 5s ease-in-out forwards !important;
    pointer-events: none !important;
    z-index: 16 !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__play::before,
#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__play::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    background: #020407 !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__play::before {
    right: -8px !important;
    top: 50% !important;
    width: 17px !important;
    height: 17px !important;
    border-radius: 50% !important;
    border: 1px solid rgba(220, 232, 242, 0.24) !important;
    transform: translateY(-50%) !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__play::after {
    left: -13px !important;
    top: 50% !important;
    width: 15px !important;
    height: 2px !important;
    transform: translateY(-50%) rotate(-34deg) !important;
    transform-origin: 100% 50% !important;
}

/* Legacy video intro: banner becomes a spinning LP before the modal opens. */
#legado .legacy-video-trigger--feature {
    cursor: pointer;
}

#legado .legacy-video-trigger--feature:disabled {
    cursor: wait;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media {
    position: relative !important;
    display: block !important;
    overflow: hidden !important;
    isolation: isolate !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::before,
#legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
    content: '' !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: min(76%, 420px) !important;
    aspect-ratio: 1 !important;
    border-radius: 50% !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translate(-50%, -50%) scale(0.72) rotate(0deg) !important;
    transition: opacity 0.28s ease !important;
    z-index: 2 !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::before {
    background:
        radial-gradient(circle at center, rgba(245, 250, 255, 0.96) 0 4.5%, rgba(19, 74, 138, 0.96) 4.8% 11%, rgba(255, 255, 255, 0.18) 11.2% 11.8%, transparent 12.1%),
        repeating-radial-gradient(circle at center, transparent 0 8px, rgba(255, 255, 255, 0.16) 8px 9px, transparent 9px 14px),
        radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.16), transparent 18%);
    box-shadow: none !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
    width: min(74%, 408px) !important;
    background:
        radial-gradient(circle at center, transparent 0 18%, rgba(255, 255, 255, 0.18) 18.4% 18.9%, transparent 19.2% 100%),
        conic-gradient(from 0deg, rgba(255, 255, 255, 0.22), transparent 18deg, transparent 82deg, rgba(255, 255, 255, 0.14) 112deg, transparent 154deg, transparent 360deg);
    mix-blend-mode: screen !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media img {
    transition:
        border-radius 0.72s cubic-bezier(0.2, 0.8, 0.2, 1),
        clip-path 0.72s cubic-bezier(0.2, 0.8, 0.2, 1),
        transform 0.72s cubic-bezier(0.2, 0.8, 0.2, 1),
        filter 0.42s ease,
        box-shadow 0.42s ease !important;
    transform-origin: center center !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media {
    overflow: visible !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media img {
    width: min(88%, 490px) !important;
    aspect-ratio: 1 !important;
    height: auto !important;
    margin: auto !important;
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
    object-fit: cover !important;
    filter: saturate(0.92) contrast(1.08) brightness(0.78) !important;
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.12),
        0 24px 56px rgba(0, 8, 18, 0.42) !important;
    animation: legacyBannerRecordSpin 5s linear forwards !important;
    z-index: 3 !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::before,
#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::after {
    opacity: 1 !important;
    animation: legacyRecordOverlaySpin 5s linear forwards !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__play {
    opacity: 0 !important;
    transform: translate(-50%, -50%) scale(0.65) !important;
    pointer-events: none !important;
}

/* Final fix: the LP must rotate and the needle must touch near the middle. */
#legado .legacy-video-trigger--feature .legacy-video-trigger__media::before {
    width: min(88%, 490px) !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
    width: min(86%, 478px) !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media img {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: min(88%, 490px) !important;
    max-width: none !important;
    transform: translate(-50%, -50%) scale(0.9) !important;
    rotate: none;
    animation: none !important;
    z-index: 5 !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::before,
#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::after {
    rotate: none;
    animation: none !important;
}

#legado .legacy-video-trigger__needle {
    right: 22% !important;
    top: 34% !important;
    width: min(26%, 150px) !important;
    min-width: 108px !important;
    height: 3px !important;
}

#legado .legacy-video-trigger__needle::before {
    right: -9px !important;
    width: 17px !important;
    height: 17px !important;
}

#legado .legacy-video-trigger__needle::after {
    left: -15px !important;
    width: 23px !important;
    height: 2px !important;
    transform: translateY(-50%) rotate(-52deg) !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__needle {
    opacity: 1 !important;
    animation: legacyNeedleDropFinal 5s ease-in-out forwards !important;
}

@keyframes legacyLpSpinFinal {
    to {
        rotate: 1800deg;
    }
}

@keyframes legacyNeedleDropFinal {
    0% {
        opacity: 0;
        transform: rotate(-8deg) translate3d(0, -16px, 0);
    }

    12% {
        opacity: 1;
        transform: rotate(-8deg) translate3d(0, -16px, 0);
    }

    30%,
    88% {
        opacity: 1;
        transform: rotate(-34deg) translate3d(-10px, 42px, 0);
    }

    100% {
        opacity: 0;
        transform: rotate(-34deg) translate3d(-10px, 42px, 0);
    }
}

@media (max-width: 720px) {
    #legado .legacy-video-trigger__needle {
        right: 18% !important;
        top: 35% !important;
        width: min(30%, 118px) !important;
        min-width: 84px !important;
    }

    #legado .legacy-video-trigger__needle::before {
        width: 14px !important;
        height: 14px !important;
    }

    #legado .legacy-video-trigger__needle::after {
        left: -13px !important;
        width: 20px !important;
    }
}

.section--jukebox-inline .jukebox-inline-shell {
    border-radius: 22px !important;
    background:
        radial-gradient(circle at 32% 8%, rgba(103, 183, 255, 0.16), transparent 26%),
        linear-gradient(180deg, rgba(18, 48, 78, 0.9), rgba(5, 20, 36, 0.98)) !important;
}

.section--jukebox-inline .jukebox-inline-shell__record {
    width: min(100%, 336px) !important;
    padding: 12px !important;
    border-radius: 50% !important;
    background:
        radial-gradient(circle at center, transparent 0 66%, rgba(118, 183, 240, 0.13) 66.5% 67.5%, transparent 68%),
        radial-gradient(circle at 48% 44%, rgba(106, 183, 255, 0.18), transparent 42%) !important;
    box-shadow:
        0 28px 58px rgba(0, 8, 18, 0.36),
        inset 0 0 0 1px rgba(195, 225, 255, 0.12) !important;
}

.section--jukebox-inline .jukebox-inline-shell__vinyl {
    inset: 12px !important;
    background:
        radial-gradient(circle at center, rgba(8, 33, 61, 0.98) 0 7.5%, rgba(32, 96, 153, 0.88) 8% 10.8%, rgba(5, 17, 31, 1) 11.2% 18%, transparent 18.4%),
        radial-gradient(circle at center, transparent 0 34%, rgba(255, 255, 255, 0.05) 34.4% 34.8%, transparent 35.2% 100%),
        repeating-radial-gradient(circle at center, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 6px),
        conic-gradient(from 18deg, rgba(255, 255, 255, 0.08), transparent 22deg, transparent 124deg, rgba(115, 184, 244, 0.09) 146deg, transparent 186deg, transparent 360deg),
        radial-gradient(circle at center, #071522 0 67%, #020910 100%) !important;
    box-shadow:
        inset 0 0 0 2px rgba(116, 181, 236, 0.12),
        inset 0 0 0 12px rgba(0, 0, 0, 0.22),
        inset 0 0 58px rgba(0, 0, 0, 0.7),
        0 26px 46px rgba(0, 0, 0, 0.34) !important;
}

#jukebox.is-playing .section--jukebox-inline .jukebox-inline-shell__vinyl,
#jukebox.is-changing .section--jukebox-inline .jukebox-inline-shell__vinyl,
#jukebox.is-playing .section--jukebox-inline .jukebox-display__cover {
    animation: jukeboxRecordSpinFinal 3.8s linear infinite !important;
}

.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    width: 64% !important;
    z-index: 3 !important;
    box-shadow:
        0 0 0 10px rgba(3, 12, 23, 0.92),
        0 0 0 17px rgba(88, 150, 210, 0.18),
        0 18px 34px rgba(0, 0, 0, 0.34) !important;
}

.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before {
    background:
        linear-gradient(130deg, rgba(255, 255, 255, 0.2), transparent 28%, transparent 66%, rgba(0, 0, 0, 0.2)),
        radial-gradient(circle at 34% 12%, rgba(255, 255, 255, 0.32), transparent 13%) !important;
}

.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::after {
    width: 24% !important;
    background:
        radial-gradient(circle at center, #071522 0 34%, rgba(41, 124, 194, 0.95) 35% 57%, #071522 58% 100%) !important;
    box-shadow:
        0 0 0 6px rgba(3, 13, 24, 0.88),
        0 0 0 12px rgba(96, 164, 224, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}


.section--jukebox-inline .jukebox-inline-shell__toggle {
    min-height: 50px !important;
    padding: 0 22px !important;
    border-radius: 999px !important;
    background:
        radial-gradient(circle at 20% 15%, rgba(255, 255, 255, 0.45), transparent 28%),
        linear-gradient(180deg, #fff7eb, #e7dac9) !important;
    color: #06121f !important;
    box-shadow:
        0 16px 28px rgba(0, 8, 18, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
}

.section--jukebox-inline .jukebox-inline-shell__toggle:hover,
.section--jukebox-inline .jukebox-inline-shell__toggle:focus-visible {
    transform: translateY(-2px) !important;
    outline: 2px solid rgba(128, 205, 255, 0.45) !important;
    outline-offset: 3px !important;
}

.section--jukebox-inline .jukebox-display__button,
.section--jukebox-inline .jukebox-inline-shell__search-toggle,
.section--jukebox-inline .jukebox-inline-shell__link {
    min-height: 48px !important;
    border-radius: 12px !important;
    gap: 8px !important;
    transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease !important;
}

.section--jukebox-inline .jukebox-display__button::before,
.section--jukebox-inline .jukebox-inline-shell__search-toggle::before,
.section--jukebox-inline .jukebox-inline-shell__link::before {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    font-size: 0.72rem !important;
    line-height: 1 !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: currentColor !important;
}

#songPrev::before {
    content: '<' !important;
}

#songNext::before {
    content: '>' !important;
}

.section--jukebox-inline .jukebox-inline-shell__search-toggle::before {
    content: '?' !important;
}

.section--jukebox-inline .jukebox-inline-shell__link::before {
    content: 'S' !important;
    background: rgba(6, 18, 31, 0.08) !important;
}

.section--jukebox-inline .jukebox-display__button:hover,
.section--jukebox-inline .jukebox-display__button:focus-visible,
.section--jukebox-inline .jukebox-inline-shell__search-toggle:hover,
.section--jukebox-inline .jukebox-inline-shell__search-toggle:focus-visible,
.section--jukebox-inline .jukebox-inline-shell__link:hover,
.section--jukebox-inline .jukebox-inline-shell__link:focus-visible {
    transform: translateY(-2px) !important;
    border-color: rgba(143, 211, 255, 0.42) !important;
    outline: none !important;
}

@keyframes jukeboxRecordSpinFinal {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 560px) {
    .section--jukebox-inline .jukebox-inline-shell {
        padding: 14px !important;
        gap: 14px !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__record {
        width: min(100%, 286px) !important;
        padding: 10px !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__vinyl {
        inset: 10px !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        width: 62% !important;
    }


    .section--jukebox-inline .jukebox-inline-shell__toggle {
        min-height: 48px !important;
        padding: 0 20px !important;
    }

    .section--jukebox-inline .jukebox-display__button,
    .section--jukebox-inline .jukebox-inline-shell__search-toggle,
    .section--jukebox-inline .jukebox-inline-shell__link {
        min-height: 46px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.11em !important;
        padding: 0 10px !important;
    }
}

/* Final correction: voice choice controls must read as compact clickable chips. */
.section--jukebox-inline .jukebox-inline-shell__discovery > .jukebox-search__controls:first-child,
.section--jukebox-inline .jukebox-search__controls:has([data-jukebox-voice]) {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    width: 100% !important;
}

.section--jukebox-inline .jukebox-search__reset[data-jukebox-voice] {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 38px !important;
    aspect-ratio: auto !important;
    border-radius: 999px !important;
    white-space: nowrap !important;
}

.section--jukebox-inline .jukebox-inline-shell__discovery > .jukebox-search__controls:first-child .jukebox-inline-shell__mode {
    flex: 0 0 auto !important;
    width: auto !important;
    height: auto !important;
    min-height: 34px !important;
    aspect-ratio: auto !important;
    white-space: nowrap !important;
}

@media (max-width: 560px) {
    .section--jukebox-inline .jukebox-inline-shell__discovery > .jukebox-search__controls:first-child,
    .section--jukebox-inline .jukebox-search__controls:has([data-jukebox-voice]) {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__discovery > .jukebox-search__controls:first-child .jukebox-inline-shell__mode {
        grid-column: 1 / -1 !important;
        justify-self: start !important;
    }

    .section--jukebox-inline .jukebox-search__reset[data-jukebox-voice] {
        width: 100% !important;
        min-height: 42px !important;
        padding: 0 10px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.07em !important;
    }
}


.section--jukebox-inline .jukebox-search__controls:has([data-jukebox-voice]) {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 7px !important;
    border: 1px solid rgba(139, 205, 255, 0.16) !important;
    border-radius: 18px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.02)),
        rgba(4, 16, 30, 0.72) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}

.section--jukebox-inline .jukebox-search__controls:has([data-jukebox-voice]) .jukebox-inline-shell__mode {
    min-height: 34px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    border: 1px solid rgba(145, 211, 255, 0.24) !important;
    background: rgba(91, 159, 222, 0.12) !important;
    color: rgba(232, 244, 255, 0.9) !important;
}

.section--jukebox-inline .jukebox-search__reset[data-jukebox-voice] {
    min-height: 38px !important;
    padding: 0 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(156, 216, 255, 0.22) !important;
    background:
        radial-gradient(circle at 20% 10%, rgba(255, 255, 255, 0.18), transparent 30%),
        linear-gradient(180deg, rgba(20, 55, 89, 0.96), rgba(5, 19, 35, 0.96)) !important;
    color: rgba(235, 246, 255, 0.92) !important;
    cursor: pointer !important;
    font-size: 0.68rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.12em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    box-shadow:
        0 10px 20px rgba(0, 8, 18, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease !important;
    -webkit-tap-highlight-color: transparent !important;
}

.section--jukebox-inline .jukebox-search__reset[data-jukebox-voice]::before {
    content: '' !important;
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: rgba(139, 205, 255, 0.46) !important;
    box-shadow: 0 0 0 4px rgba(139, 205, 255, 0.08) !important;
}

.section--jukebox-inline .jukebox-search__reset[data-jukebox-voice]:hover,
.section--jukebox-inline .jukebox-search__reset[data-jukebox-voice]:focus-visible {
    transform: translateY(-2px) !important;
    border-color: rgba(152, 221, 255, 0.56) !important;
    outline: 2px solid rgba(128, 205, 255, 0.24) !important;
    outline-offset: 2px !important;
    box-shadow:
        0 14px 26px rgba(0, 8, 18, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

.section--jukebox-inline .jukebox-search__reset[data-jukebox-voice].is-active,
.section--jukebox-inline .jukebox-search__reset[data-jukebox-voice][aria-pressed="true"] {
    border-color: rgba(245, 234, 222, 0.78) !important;
    background:
        radial-gradient(circle at 20% 12%, rgba(255, 255, 255, 0.42), transparent 31%),
        linear-gradient(180deg, #fff5e7, #e8dccb) !important;
    color: #06121f !important;
    box-shadow:
        0 16px 30px rgba(0, 8, 18, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.78) !important;
}

.section--jukebox-inline .jukebox-search__reset[data-jukebox-voice].is-active::before,
.section--jukebox-inline .jukebox-search__reset[data-jukebox-voice][aria-pressed="true"]::before {
    background: #0b5a98 !important;
    box-shadow: 0 0 0 4px rgba(11, 90, 152, 0.15) !important;
}

.section--jukebox-inline .jukebox-inline-shell__record {
    width: min(100%, 356px) !important;
}

.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    width: 66% !important;
}


@media (max-width: 560px) {
    .section--jukebox-inline .jukebox-inline-shell__record {
        width: min(100%, 304px) !important;
    }


    .section--jukebox-inline .jukebox-search__controls:has([data-jukebox-voice]) {
        gap: 7px !important;
        padding: 6px !important;
    }

    .section--jukebox-inline .jukebox-search__reset[data-jukebox-voice] {
        flex: 1 1 132px !important;
        min-height: 40px !important;
        padding: 0 10px !important;
        font-size: 0.6rem !important;
        letter-spacing: 0.08em !important;
    }

    .section--jukebox-inline .jukebox-search__controls:has([data-jukebox-voice]) .jukebox-inline-shell__mode {
        flex: 1 1 100% !important;
    }
}


/* LP player correction: spin without fighting transform!important, shorter needle. */
#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media img {
    transform: translate(-50%, -50%) scale(0.9) !important;
    rotate: 0deg;
    animation: legacyLpRotateOnly 5s linear forwards !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::before,
#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::after {
    rotate: 0deg;
    animation: legacyLpRotateOnly 5s linear forwards !important;
}

#legado .legacy-video-trigger__needle {
    right: 7% !important;
    top: 21% !important;
    width: min(29%, 170px) !important;
    min-width: 128px !important;
    height: 3px !important;
}

#legado .legacy-video-trigger__needle::before {
    right: -9px !important;
    width: 17px !important;
    height: 17px !important;
}

#legado .legacy-video-trigger__needle::after {
    left: -16px !important;
    width: 24px !important;
    height: 2px !important;
    transform: translateY(-50%) rotate(-56deg) !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__needle {
    opacity: 1 !important;
    animation: legacyNeedleToMiddle 5s ease-in-out forwards !important;
}

@keyframes legacyLpRotateOnly {
    to {
        rotate: 1800deg;
    }
}

@keyframes legacyNeedleToMiddle {
    0% {
        opacity: 0;
        transform: rotate(-8deg) translate3d(0, -20px, 0);
    }

    12% {
        opacity: 1;
        transform: rotate(-8deg) translate3d(0, -20px, 0);
    }

    32%,
    88% {
        opacity: 1;
        transform: rotate(-31deg) translate3d(-12px, 18px, 0);
    }

    100% {
        opacity: 0;
        transform: rotate(-31deg) translate3d(-12px, 18px, 0);
    }
}

@media (max-width: 720px) {
    #legado .legacy-video-trigger__needle {
        right: 5% !important;
        top: 20% !important;
        width: min(34%, 136px) !important;
        min-width: 96px !important;
    }

    #legado .legacy-video-trigger__needle::before {
        width: 14px !important;
        height: 14px !important;
    }

    #legado .legacy-video-trigger__needle::after {
        left: -13px !important;
        width: 20px !important;
    }
}

/* Needle and larger LP: final local override. */
#legado .legacy-video-trigger--feature {
    position: relative !important;
}

#legado .legacy-video-trigger--feature.is-opening {
    overflow: visible !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::before {
    width: min(88%, 490px) !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
    width: min(86%, 478px) !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media img {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: min(88%, 490px) !important;
    max-width: none !important;
    transform: translate(-50%, -50%) scale(1) rotate(0deg) !important;
}

#legado .legacy-video-trigger--feature.is-opening::before,
#legado .legacy-video-trigger--feature.is-opening::after {
    content: '' !important;
    position: absolute !important;
    display: block !important;
    pointer-events: none !important;
    opacity: 0 !important;
    z-index: 40 !important;
}

#legado .legacy-video-trigger--feature.is-opening::before {
    right: 6% !important;
    top: 15% !important;
    width: min(44%, 270px) !important;
    min-width: 190px !important;
    height: 4px !important;
    border-radius: 999px !important;
    background: #020407 !important;
    border: 1px solid rgba(235, 242, 248, 0.72) !important;
    box-shadow: 0 9px 18px rgba(0, 0, 0, 0.48), 0 0 0 2px rgba(0, 0, 0, 0.18) !important;
    transform-origin: 100% 50% !important;
    animation: legacyTonearmDropVisible 5s ease-in-out forwards !important;
}

#legado .legacy-video-trigger--feature.is-opening::after {
    right: calc(6% + min(39%, 238px)) !important;
    top: calc(15% + 46px) !important;
    width: 34px !important;
    height: 3px !important;
    border-radius: 999px !important;
    background: #020407 !important;
    border-top: 1px solid rgba(235, 242, 248, 0.66) !important;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.42) !important;
    transform-origin: 100% 50% !important;
    animation: legacyNeedleTipDropVisible 5s ease-in-out forwards !important;
}

@keyframes legacyBannerRecordSpin {
    0% {
        transform: translate(-50%, -50%) scale(1) rotate(0deg);
    }

    14% {
        transform: translate(-50%, -50%) scale(0.9) rotate(90deg);
    }

    100% {
        transform: translate(-50%, -50%) scale(0.9) rotate(1800deg);
    }
}

@keyframes legacyRecordOverlaySpin {
    0% {
        transform: translate(-50%, -50%) scale(0.72) rotate(0deg);
    }

    14% {
        transform: translate(-50%, -50%) scale(0.9) rotate(90deg);
    }

    100% {
        transform: translate(-50%, -50%) scale(0.9) rotate(1800deg);
    }
}

@keyframes legacyTonearmDropVisible {
    0% {
        opacity: 0;
        transform: rotate(-10deg) translate3d(0, -34px, 0);
    }

    12% {
        opacity: 1;
        transform: rotate(-10deg) translate3d(0, -34px, 0);
    }

    30%,
    88% {
        opacity: 1;
        transform: rotate(-29deg) translate3d(-18px, 20px, 0);
    }

    100% {
        opacity: 0;
        transform: rotate(-29deg) translate3d(-18px, 20px, 0);
    }
}

@keyframes legacyNeedleTipDropVisible {
    0% {
        opacity: 0;
        transform: rotate(-43deg) translate3d(0, -34px, 0);
    }

    12% {
        opacity: 1;
        transform: rotate(-43deg) translate3d(0, -34px, 0);
    }

    30%,
    88% {
        opacity: 1;
        transform: rotate(-62deg) translate3d(-22px, 20px, 0);
    }

    100% {
        opacity: 0;
        transform: rotate(-62deg) translate3d(-22px, 20px, 0);
    }
}

#legado .legacy-video-trigger__needle {
    position: absolute !important;
    right: 4% !important;
    top: 14% !important;
    width: min(48%, 285px) !important;
    min-width: 190px !important;
    height: 4px !important;
    border-radius: 999px !important;
    background: #020407 !important;
    border: 1px solid rgba(235, 242, 248, 0.76) !important;
    box-shadow: 0 9px 18px rgba(0, 0, 0, 0.5), 0 0 0 2px rgba(0, 0, 0, 0.18) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform-origin: 100% 50% !important;
    z-index: 60 !important;
}

#legado .legacy-video-trigger__needle::before,
#legado .legacy-video-trigger__needle::after {
    content: '' !important;
    position: absolute !important;
    display: block !important;
    background: #020407 !important;
    pointer-events: none !important;
}

#legado .legacy-video-trigger__needle::before {
    right: -11px !important;
    top: 50% !important;
    width: 21px !important;
    height: 21px !important;
    border-radius: 50% !important;
    border: 1px solid rgba(235, 242, 248, 0.58) !important;
    box-shadow: 0 7px 14px rgba(0, 0, 0, 0.42) !important;
    transform: translateY(-50%) !important;
}

#legado .legacy-video-trigger__needle::after {
    left: -22px !important;
    top: 50% !important;
    width: 34px !important;
    height: 3px !important;
    border-radius: 999px !important;
    border-top: 1px solid rgba(235, 242, 248, 0.68) !important;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.42) !important;
    transform: translateY(-50%) rotate(-62deg) !important;
    transform-origin: 100% 50% !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__needle {
    opacity: 1 !important;
    animation: legacyTonearmDropVisible 5s ease-in-out forwards !important;
}

@media (max-width: 720px) {
    #legado .legacy-video-trigger__needle {
        right: 1% !important;
        top: 12% !important;
        width: min(55%, 230px) !important;
        min-width: 142px !important;
    }

    #legado .legacy-video-trigger__needle::before {
        width: 17px !important;
        height: 17px !important;
    }

    #legado .legacy-video-trigger__needle::after {
        left: -18px !important;
        width: 28px !important;
    }
}

@media (max-width: 640px) {
    .top-header .site-brand {
        max-width: calc(100% - 150px) !important;
    }

    .top-header .site-brand__copy {
        display: none !important;
    }
}

@keyframes legacyBannerRecordSpin {
    0% {
        transform: translate(-50%, -50%) scale(1) rotate(0deg);
    }

    14% {
        transform: translate(-50%, -50%) scale(0.9) rotate(90deg);
    }

    100% {
        transform: translate(-50%, -50%) scale(0.9) rotate(1800deg);
    }
}

@keyframes legacyRecordOverlaySpin {
    0% {
        transform: translate(-50%, -50%) scale(0.72) rotate(0deg);
    }

    14% {
        transform: translate(-50%, -50%) scale(0.9) rotate(90deg);
    }

    100% {
        transform: translate(-50%, -50%) scale(0.9) rotate(1800deg);
    }
}

@keyframes legacyTonearmDrop {
    0% {
        opacity: 0;
        transform: rotate(-16deg) translate3d(0, -26px, 0);
    }

    10% {
        opacity: 1;
        transform: rotate(-16deg) translate3d(0, -26px, 0);
    }

    28%,
    88% {
        opacity: 1;
        transform: rotate(-34deg) translate3d(-6px, 4px, 0);
    }

    100% {
        opacity: 0;
        transform: rotate(-34deg) translate3d(-6px, 4px, 0);
    }
}

@media (max-width: 640px) {
    #legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media img,
    #legado .legacy-video-trigger--feature .legacy-video-trigger__media::before {
        width: min(90%, 354px) !important;
    }

    #legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
        width: min(88%, 344px) !important;
    }
}

/* Final LP intro override: must win over older legacy-stage experiments. */
#legado .legacy-video-trigger--feature .legacy-video-trigger__media {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media {
    overflow: visible !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::before,
#legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
    content: '' !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    aspect-ratio: 1 !important;
    border-radius: 50% !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translate(-50%, -50%) scale(0.72) rotate(0deg) !important;
    z-index: 4 !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::before {
    width: min(76%, 420px) !important;
    background:
        radial-gradient(circle at center, rgba(245, 250, 255, 0.96) 0 4.5%, rgba(19, 74, 138, 0.96) 4.8% 11%, rgba(255, 255, 255, 0.18) 11.2% 11.8%, transparent 12.1%),
        repeating-radial-gradient(circle at center, transparent 0 8px, rgba(255, 255, 255, 0.16) 8px 9px, transparent 9px 14px),
        radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.16), transparent 18%) !important;
    box-shadow: none !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
    width: min(74%, 408px) !important;
    background:
        radial-gradient(circle at center, transparent 0 18%, rgba(255, 255, 255, 0.18) 18.4% 18.9%, transparent 19.2% 100%),
        conic-gradient(from 0deg, rgba(255, 255, 255, 0.22), transparent 18deg, transparent 82deg, rgba(255, 255, 255, 0.14) 112deg, transparent 154deg, transparent 360deg) !important;
    mix-blend-mode: screen !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media img {
    width: min(76%, 420px) !important;
    height: auto !important;
    aspect-ratio: 1 !important;
    margin: auto !important;
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
    object-fit: cover !important;
    filter: saturate(0.92) contrast(1.08) brightness(0.78) !important;
    animation: legacyBannerRecordSpin 5s linear forwards !important;
    z-index: 3 !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::before,
#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::after {
    opacity: 1 !important;
    animation: legacyRecordOverlaySpin 5s linear forwards !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__play {
    opacity: 0 !important;
    transform: translate(-50%, -50%) scale(0.65) !important;
    pointer-events: none !important;
}

#legado .legacy-video-trigger--feature::before {
    content: '' !important;
    position: absolute !important;
    top: 22% !important;
    right: 10% !important;
    width: min(42%, 240px) !important;
    height: 3px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, #05080b, #111820 76%, #05080b) !important;
    box-shadow:
        -10px 0 0 -1px rgba(255, 255, 255, 0.16),
        0 2px 6px rgba(0, 0, 0, 0.42) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform-origin: 100% 50% !important;
    transform: rotate(-16deg) translate3d(0, -26px, 0) !important;
    z-index: 12 !important;
}

#legado .legacy-video-trigger--feature.is-opening::before {
    animation: legacyTonearmDrop 5s ease-in-out forwards !important;
}

/* Editorial typography refresh */
h2,
.news-card__title,
.section--news-landing h1,
.section--news-article h1,
.news-article-body h2,
.news-aside-card strong {
    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.78),
        0 12px 24px rgba(11, 36, 66, 0.07);
}

.section-kicker,
.section-kicker--light,
.news-home-note__eyebrow,
.news-aside-card__label,
.gallery-showcase__eyebrow {
    display: inline-block;
    margin-bottom: 16px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

.section-kicker {
    color: rgba(18, 115, 146, 0.94);
    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.88),
        0 10px 18px rgba(var(--accent-rgb), 0.08);
}

.section-kicker::after,
.section-kicker--light::after,
.news-home-note__eyebrow::after,
.news-aside-card__label::after,
.gallery-showcase__eyebrow::after {
    content: '';
    display: block;
    width: 82px;
    max-width: 100%;
    height: 1px;
    margin-top: 11px;
    background: linear-gradient(90deg, currentColor, rgba(var(--accent-rgb), 0));
    opacity: 0.42;
}

.section-kicker--light,
.gallery-showcase__eyebrow {
    color: rgba(228, 241, 255, 0.88);
    text-shadow:
        0 1px 0 rgba(4, 22, 44, 0.42),
        0 10px 22px rgba(0, 15, 32, 0.2);
}

.news-home-note__eyebrow,
.news-aside-card__label {
    color: rgba(33, 74, 118, 0.66);
}

.news-filter {
    gap: 14px 22px;
}

.news-filter__chip,
.news-card__category,
.video-badges span,
.song-badges span,
.gallery-badges span,
.show-tags span,
.ensaios-card__tag,
.news-home-note__topics span {
    position: relative;
    min-height: 0;
    padding: 0 0 6px;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    text-shadow: inherit;
}

.news-filter__chip::after,
.news-card__category::after,
.video-badges span::after,
.song-badges span::after,
.gallery-badges span::after,
.show-tags span::after,
.ensaios-card__tag::after,
.news-home-note__topics span::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background: currentColor;
    opacity: 0.24;
    transform-origin: left center;
}

.news-filter__chip {
    color: rgba(33, 74, 118, 0.76);
    transition: color 0.22s ease, transform 0.22s ease;
}

.news-filter__chip:hover,
.news-filter__chip:focus-visible,
.news-filter__chip.is-active {
    transform: translateY(-1px);
    background: none;
    box-shadow: none;
    border: 0;
    color: var(--accent);
}

.news-filter__chip:hover::after,
.news-filter__chip:focus-visible::after,
.news-filter__chip.is-active::after {
    opacity: 0.72;
}

.news-card__category {
    color: rgba(16, 68, 120, 0.88);
}

.section--news-home .news-card--home .news-card__category,
.section--news-home .news-card__category {
    color: rgba(16, 68, 120, 0.82);
}

.section--news-home .section-kicker {
    border: 0;
    background: none;
    box-shadow: none;
}

.section--news-home .section-kicker::after {
    width: 56px;
    height: 2px;
    margin-top: 8px;
    background: linear-gradient(90deg, rgba(var(--accent-rgb), 0.58), rgba(var(--accent-rgb), 0));
    opacity: 0.24;
}

.news-article-intro .section-kicker {
    border: 0;
    background: none;
    box-shadow: none;
}

.section--news-home .news-card--home {
    border-radius: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.08);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.985), rgba(242, 247, 251, 0.985));
    box-shadow:
        0 16px 32px rgba(7, 28, 54, 0.07),
        inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.section--news-home .news-card--home:hover {
    transform: translateY(-4px);
    border-color: rgba(var(--accent-rgb), 0.16);
    box-shadow:
        0 24px 46px rgba(7, 28, 54, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.section--news-home .news-card--home .news-card__body {
    gap: 10px;
    background: linear-gradient(180deg, var(--hero-navy-soft) 0%, var(--hero-navy) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.section--news-home .news-card--home .news-card__meta {
    color: rgba(214, 232, 248, 0.78);
    letter-spacing: 0.08em;
}

.section--news-home .news-card--home .news-card__title {
    font-size: 1.16rem;
    line-height: 1.14;
    letter-spacing: -0.024em;
    text-wrap: balance;
    color: #ffffff;
    text-shadow: none;
}

.section--news-home .news-card--home .news-card__title a {
    color: #ffffff;
}

.section--news-home .news-card--home .news-card__excerpt {
    color: rgba(231, 241, 251, 0.86);
    text-wrap: pretty;
}

.section--news-home .news-card--home .news-card__category {
    border-color: rgba(var(--accent-bright-rgb), 0.18);
    background: rgba(255, 255, 255, 0.08);
    color: #d7ebff;
}

.section--news-home .news-card--home .news-card__link {
    color: #ffffff;
    border-bottom-color: rgba(var(--accent-bright-rgb), 0.24);
    text-shadow: none;
}

.news-home-head__link,
.news-home-note__link,
.news-card__link {
    padding-bottom: 4px;
    border-bottom: 1px solid rgba(var(--accent-rgb), 0.16);
    text-shadow: none;
}

.section--news-home .news-home-head__link,
.section--news-home .news-home-note__link {
    color: var(--accent);
    border-bottom-color: rgba(var(--accent-rgb), 0.14);
    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.82),
        0 10px 18px rgba(7, 28, 54, 0.04);
}

/* Article page: less cards, more editorial page */
.section--news-article {
    padding: 18px 0 8px;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.section--news-article::before {
    display: none;
}

.news-breadcrumbs {
    gap: 10px;
    margin-bottom: 24px;
    color: rgba(33, 74, 118, 0.62);
    font-size: 0.72rem;
}

.news-article-hero {
    gap: 34px;
    align-items: end;
}

.news-article-intro {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    gap: 18px;
}

.section--news-article h1 {
    max-width: 12ch;
    font-size: clamp(3rem, 6.1vw, 5rem);
    line-height: 0.92;
    letter-spacing: -0.035em;
    text-wrap: balance;
    color: #0c3156;
}

.news-article-meta {
    gap: 12px;
    color: rgba(33, 74, 118, 0.62);
    font-size: 0.7rem;
    letter-spacing: 0.16em;
}

.news-article-meta span + span::before {
    content: '/';
    margin-right: 12px;
    color: rgba(33, 74, 118, 0.34);
}

.news-article-lead {
    max-width: 42rem;
    font-size: 1.12rem;
    line-height: 1.82;
    color: rgba(47, 66, 88, 0.9);
    text-wrap: pretty;
}

.news-article-cover {
    border: 0;
    border-radius: 0;
    box-shadow: 0 28px 58px rgba(8, 31, 58, 0.16);
    background: #dbe7f2;
}

.news-article-layout {
    grid-template-columns: minmax(0, 1fr) 280px;
    gap: 48px;
    margin-top: 44px;
}

.news-article-body {
    position: relative;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    max-width: 760px;
}

.news-article-body::before {
    content: '';
    position: absolute;
    top: 2px;
    bottom: 6px;
    left: -30px;
    width: 1px;
    background: linear-gradient(180deg, rgba(var(--accent-rgb), 0.26), rgba(var(--accent-rgb), 0.04));
}

.news-article-block + .news-article-block {
    margin-top: 40px;
    padding-top: 34px;
    border-top: 1px solid rgba(var(--accent-rgb), 0.1);
}

.news-article-body h2 {
    margin-bottom: 18px;
    font-size: clamp(1.68rem, 2.2vw, 2.2rem);
    line-height: 1.04;
    letter-spacing: -0.028em;
    text-align: left;
    text-wrap: balance;
}

.news-article-body p {
    max-width: 39em;
    font-size: 1.08rem;
    line-height: 1.9;
    color: rgba(23, 42, 63, 0.9);
}

.news-article-block:first-of-type p:first-of-type::first-letter {
    float: left;
    margin: 7px 12px 0 0;
    font-family: 'Cormorant Garamond', serif;
    font-size: 4.9rem;
    line-height: 0.82;
    color: var(--accent);
    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.84),
        0 12px 22px rgba(11, 36, 66, 0.12);
}

.news-article-list {
    margin-top: 22px;
    gap: 16px;
}

.news-article-list li {
    padding-left: 24px;
    font-size: 1.02rem;
    line-height: 1.78;
    color: rgba(23, 42, 63, 0.9);
}

.news-article-list li::before {
    top: 0.9em;
    width: 10px;
    height: 1px;
    border-radius: 0;
    background: linear-gradient(90deg, rgba(8, 70, 138, 0.96), rgba(8, 70, 138, 0.08));
}

.news-article-aside {
    gap: 26px;
    padding-top: 6px;
}

.news-aside-card {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    gap: 12px;
    border-top: 1px solid rgba(var(--accent-rgb), 0.1);
    padding-top: 18px;
}

.news-aside-card:first-child {
    border-top: 0;
    padding-top: 0;
}

.news-aside-card strong {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.52rem;
    font-weight: 600;
    line-height: 1.08;
    color: #10385f;
}

.news-aside-card p {
    font-size: 0.96rem;
    line-height: 1.72;
    color: rgba(43, 62, 83, 0.84);
}

.news-aside-card .btn,
.news-aside-card .btn--ghost {
    min-height: 0;
    padding: 0 0 4px;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    color: var(--accent);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.news-aside-card .btn::before,
.news-aside-card .btn::after,
.news-aside-card .btn--ghost::before,
.news-aside-card .btn--ghost::after {
    display: none;
}

.news-aside-card .btn {
    border-bottom: 1px solid rgba(var(--accent-rgb), 0.16);
}

.section--news-related {
    margin-top: 14px;
    padding: 34px 0 0;
    border: 0;
    border-top: 1px solid rgba(var(--accent-rgb), 0.1);
    background: transparent;
    box-shadow: none;
}

.section--news-related::before {
    display: none;
}

.section--news-related h2,
.section--news-related .section-lead {
    text-align: left;
}

.section--news-related .section-lead {
    margin-left: 0;
    margin-right: 0;
    max-width: 48rem;
}

.section--news-related .news-grid--related {
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 26px;
}

.section--news-related .news-card {
    display: grid;
    grid-template-columns: 186px minmax(0, 1fr);
    align-items: start;
    gap: 20px;
    padding: 22px 0;
    border: 0;
    border-top: 1px solid rgba(var(--accent-rgb), 0.1);
    border-radius: 0;
    background: none;
    box-shadow: none;
}

.section--news-related .news-card:hover {
    transform: none;
    box-shadow: none;
    border-color: rgba(var(--accent-rgb), 0.1);
}

.section--news-related .news-card__media {
    border-radius: 0;
    box-shadow: 0 16px 28px rgba(11, 36, 66, 0.08);
}

.section--news-related .news-card__body {
    padding: 0;
    gap: 9px;
}

.section--news-related .news-card__title {
    font-size: clamp(1.28rem, 2vw, 1.48rem);
    line-height: 1.1;
}

.section--news-related .news-card__excerpt {
    max-width: 56ch;
    color: rgba(43, 62, 83, 0.84);
}

@media (max-width: 1180px) {
    .news-article-layout {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .news-article-body::before {
        display: none;
    }

    .news-article-aside {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        position: static;
    }
}

@media (max-width: 920px) {
    .section-kicker,
    .section-kicker--light,
    .news-home-note__eyebrow,
    .news-aside-card__label,
    .gallery-showcase__eyebrow {
        letter-spacing: 0.18em;
    }

    .section--news-article {
        padding-top: 10px;
    }

    .section--news-article h1 {
        max-width: none;
        font-size: clamp(2.4rem, 9vw, 3.7rem);
    }

    .news-article-hero {
        gap: 18px;
    }

    .news-article-lead {
        font-size: 1rem;
        line-height: 1.72;
    }

    .news-article-body p,
    .news-article-list li {
        font-size: 0.98rem;
        line-height: 1.74;
    }

    .news-article-aside {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .section--news-related .news-card {
        grid-template-columns: 132px minmax(0, 1fr);
        gap: 16px;
    }
}

@media (max-width: 720px) {
    .section-kicker::after,
    .section-kicker--light::after,
    .news-home-note__eyebrow::after,
    .news-aside-card__label::after,
    .gallery-showcase__eyebrow::after {
        width: 60px;
        margin-top: 9px;
    }

    .news-filter {
        gap: 10px 16px;
        justify-content: flex-start;
    }

    .news-filter__chip {
        width: auto;
        justify-content: flex-start;
    }

    .section--news-home .news-card--home .news-card__body {
        padding: 18px 16px 20px;
    }

    .news-article-body p {
        font-size: 0.97rem;
        line-height: 1.72;
    }

    .news-article-block:first-of-type p:first-of-type::first-letter {
        margin-right: 9px;
        font-size: 3.9rem;
    }

    .section--news-related .news-card {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .section--news-related .news-card__body {
        padding: 0;
    }
}

/* News polish: remove prompt-like underlines, fix overflow, support local video */
.section-kicker::after,
.section-kicker--light::after,
.news-home-note__eyebrow::after,
.news-aside-card__label::after,
.gallery-showcase__eyebrow::after,
.news-filter__chip::after,
.news-card__category::after,
.video-badges span::after,
.song-badges span::after,
.gallery-badges span::after,
.show-tags span::after,
.ensaios-card__tag::after,
.news-home-note__topics span::after {
    content: none !important;
    display: none;
}

.news-home-head__link,
.news-home-note__link,
.news-card__link,
.news-aside-card .btn {
    border-bottom: 0;
    padding-bottom: 0;
}

.news-page,
.news-page .container--news,
.news-page .section--news-home,
.news-page .section--news-article,
.news-page .section--news-related,
.news-page .section--news-landing,
.news-page .section--news-featured,
.news-page .section--news-group,
.news-page .news-article-hero,
.news-page .news-article-layout,
.news-page .news-article-intro,
.news-page .news-article-cover,
.news-page .news-article-body,
.news-page .news-article-aside,
.news-page .news-breadcrumbs,
.news-page .news-card,
.news-page .news-card__body {
    min-width: 0;
}

.news-page .container--news {
    overflow-x: clip;
}

.news-page .section--news-home,
.news-page .section--news-article,
.news-page .section--news-related,
.news-page .section--news-landing,
.news-page .section--news-featured,
.news-page .section--news-group {
    contain: none;
    isolation: auto;
}

.news-page .section--news-home:hover,
.news-page .section--news-article:hover,
.news-page .section--news-related:hover,
.news-page .section--news-landing:hover,
.news-page .section--news-featured:hover,
.news-page .section--news-group:hover {
    border-color: transparent;
    box-shadow: none;
    transform: none;
}

.news-article-layout,
.news-grid--related,
.section--news-related .news-card,
.section--news-related .news-card__body {
    overflow: visible;
}

.news-breadcrumbs a,
.section--news-article h1,
.news-article-lead,
.news-article-body h2,
.news-article-body p,
.news-article-list li,
.news-card__title,
.news-card__title a,
.news-card__excerpt {
    overflow-wrap: anywhere;
    word-break: normal;
}

.news-card__media,
.news-article-cover {
    position: relative;
}

.news-card__media img,
.news-card__media video,
.news-article-cover img,
.news-article-cover video {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.news-card__media--video video,
.news-article-cover--video video {
    pointer-events: none;
    background: #dbe7f2;
}

.news-card__media--video::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 2;
    border-radius: inherit;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.04) 28%, rgba(88, 172, 238, 0.18) 64%, rgba(255, 255, 255, 0.08) 100%),
        repeating-linear-gradient(170deg, rgba(255, 255, 255, 0.05) 0 2px, transparent 2px 18px);
    mix-blend-mode: screen;
    opacity: 0.46;
    pointer-events: none;
}

.news-card__media--video::after {
    content: '\25B6';
    position: absolute;
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    width: 78px;
    height: 78px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(19, 96, 192, 0.95), rgba(8, 56, 118, 0.98));
    border: 1px solid rgba(255, 255, 255, 0.34);
    color: #ffffff;
    font-size: 1.18rem;
    line-height: 1;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.24),
        0 16px 26px rgba(0, 18, 40, 0.22);
    backdrop-filter: blur(8px);
    pointer-events: none;
}

.news-card__media--banner,
.news-article-cover--banner {
    position: relative;
    isolation: isolate;
}

.news-article-cover--banner {
    display: block;
}

.news-card__banner-track,
.news-card__banner-shade,
.news-card__banner-dots {
    position: absolute;
    inset: 0;
}

.news-card__banner-slide:nth-child(1),
.news-card__banner-dots span:nth-child(1) {
    --news-banner-delay: 0s;
}

.news-card__banner-slide:nth-child(2),
.news-card__banner-dots span:nth-child(2) {
    --news-banner-delay: 6s;
}

.news-card__banner-slide:nth-child(3),
.news-card__banner-dots span:nth-child(3) {
    --news-banner-delay: 12s;
}

.news-card__banner-slide {
    position: absolute;
    inset: 0;
    overflow: hidden;
    background: #0f3559;
    opacity: 0;
    animation: newsCardBannerCycle 18s infinite ease-in-out;
    animation-delay: var(--news-banner-delay, 0s);
}

.news-card__banner-backdrop {
    position: absolute;
    inset: -8%;
    z-index: 0;
    overflow: hidden;
}

.news-card__banner-backdrop img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    filter: blur(22px) saturate(0.96);
    transform: scale(1.14);
    opacity: 0.86;
}

.news-card__banner-slide:first-child {
    opacity: 1;
}

.news-card__banner-image {
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
    z-index: 1;
    transform: scale(1);
    animation: newsCardBannerZoom 18s infinite ease-in-out;
    animation-delay: var(--news-banner-delay, 0s);
}

.news-card__banner-shade {
    z-index: 2;
    background:
        linear-gradient(180deg, rgba(7, 28, 47, 0.02), rgba(7, 28, 47, 0.12) 44%, rgba(7, 28, 47, 0.52)),
        linear-gradient(135deg, rgba(115, 184, 246, 0.24), transparent 56%);
    pointer-events: none;
}

.news-card__banner-dots {
    inset: auto auto 16px 18px;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 7px;
    pointer-events: none;
}

.news-card__banner-dots span {
    width: 28px;
    height: 3px;
    border-radius: 999px;
    background: rgba(226, 240, 255, 0.3);
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.1);
    animation: newsCardBannerDot 18s infinite ease-in-out;
    animation-delay: var(--news-banner-delay, 0s);
}

@keyframes newsCardBannerCycle {
    0%,
    28% {
        opacity: 1;
    }

    33%,
    100% {
        opacity: 0;
    }
}

@keyframes newsCardBannerZoom {
    0% {
        transform: scale(1);
    }

    28% {
        transform: scale(1.025);
    }

    33%,
    100% {
        transform: scale(1);
    }
}

@keyframes newsCardBannerZoomLite {
    0% {
        transform: scale(1);
    }

    28% {
        transform: scale(1.018);
    }

    33%,
    100% {
        transform: scale(1);
    }
}

@keyframes newsCardBannerDot {
    0%,
    28% {
        background: rgba(255, 255, 255, 0.92);
        transform: scaleX(1.05);
    }

    33%,
    100% {
        background: rgba(226, 240, 255, 0.3);
        transform: scaleX(1);
    }
}

@keyframes newsArticleBannerZoom {
    0% {
        transform: scale(1.02) translate3d(0, 0, 0);
    }

    28% {
        transform: scale(1.055) translate3d(0, -1.4%, 0);
    }

    33%,
    100% {
        transform: scale(1.02) translate3d(0, 0, 0);
    }
}

@keyframes newsArticleBannerSheen {
    0%,
    100% {
        opacity: 0.18;
        transform: translate3d(-6%, 0, 0) scale(1);
    }

    50% {
        opacity: 0.34;
        transform: translate3d(4%, -1%, 0) scale(1.035);
    }
}

@media (prefers-reduced-motion: reduce) {
    .news-card__banner-slide,
    .news-card__banner-image,
    .news-card__banner-dots span {
        animation: none;
    }

    .news-card__banner-slide {
        opacity: 0;
    }

    .news-card__banner-slide:first-child {
        opacity: 1;
    }
}

@media (min-width: 981px) {
    .news-card__media--banner .news-card__banner-image,
    .news-article-cover--banner .news-card__banner-image {
        object-fit: contain !important;
        object-position: center !important;
        padding: clamp(10px, 1.2vw, 18px);
    }

    .news-page--article .section--news-related .news-card__media--banner .news-card__banner-image {
        padding: clamp(12px, 1vw, 16px);
    }

    .news-article-cover--banner .news-card__banner-image {
        padding: clamp(14px, 1.4vw, 22px);
    }
}

.news-article-cover {
    padding: 0;
    max-width: 100%;
    width: min(100%, 520px);
    aspect-ratio: 16 / 10;
    justify-self: end;
    overflow: hidden;
    border-radius: 0;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01)),
        rgba(var(--accent-rgb), 0.08);
    box-shadow: 0 18px 32px rgba(0, 17, 34, 0.14);
}

.news-article-cover::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 2;
    border-radius: inherit;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.03) 28%, rgba(88, 172, 238, 0.12) 64%, rgba(255, 255, 255, 0.07) 100%);
    mix-blend-mode: screen;
    pointer-events: none;
}

.news-article-cover img,
.news-article-cover video {
    min-height: 0;
    aspect-ratio: 16 / 10;
    border-radius: 0;
}

.news-article-cover--banner .news-card__banner-dots {
    inset: auto auto 18px 22px;
}

.news-article-cover--banner .news-card__banner-dots span {
    width: 34px;
    height: 4px;
}

.news-article-cover--video::before {
    display: none;
}

.news-article-cover--video video {
    pointer-events: auto;
}

.news-article-player {
    accent-color: #1b6fd0;
    background: #dbe7f2;
}

@media (max-width: 1320px) {
    .news-article-hero {
        grid-template-columns: minmax(0, 1fr);
        gap: 24px;
    }

    .news-article-cover {
        width: 100%;
        max-width: 520px;
        justify-self: start;
    }
}

.section--news-related .news-card {
    grid-template-columns: minmax(264px, 292px) minmax(0, 1fr);
    align-items: center;
    gap: 28px;
}

.section--news-related .news-card__media {
    width: 100%;
    max-width: 292px;
    aspect-ratio: 1 / 1;
    border-radius: 0;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01)),
        rgba(var(--accent-rgb), 0.08);
    box-shadow: 0 18px 32px rgba(0, 17, 34, 0.14);
}

@media (max-width: 920px) {
    .section--news-related .news-card {
        grid-template-columns: minmax(208px, 236px) minmax(0, 1fr);
    }

    .section--news-related .news-card__media {
        max-width: 236px;
    }

    .news-article-cover {
        max-width: 420px;
    }
}

@media (max-width: 720px) {
    .news-article-cover,
    .news-article-cover--video,
    .news-article-cover--banner {
        padding: 0;
        width: 100%;
        max-width: none;
    }

    .news-article-cover img,
    .news-article-cover video {
        aspect-ratio: 16 / 10;
    }

    .news-card__media--video::after,
    .news-article-cover--video::after {
        width: 66px;
        height: 66px;
        font-size: 1rem;
    }

    .section--news-related .news-card__media {
        max-width: none;
        aspect-ratio: 1 / 1;
    }
}

.section--news-home,
.section--news-landing,
.section--news-featured,
.section--news-group,
.section--news-related {
    border-color: rgba(92, 162, 232, 0.16);
    background:
        radial-gradient(circle at 12% 10%, rgba(102, 176, 245, 0.12), transparent 24%),
        radial-gradient(circle at 88% 14%, rgba(75, 152, 228, 0.08), transparent 22%),
        linear-gradient(180deg, rgba(241, 247, 255, 0.98), rgba(251, 253, 255, 0.98));
    box-shadow: 0 24px 58px rgba(var(--accent-rgb), 0.08);
}

.news-page--article .container--news {
    background:
        radial-gradient(circle at 18% 6%, rgba(96, 173, 243, 0.14), transparent 24%),
        linear-gradient(180deg, rgba(232, 242, 253, 0.62), rgba(255, 255, 255, 0) 24%);
    border-radius: 0;
}

.news-page--article .section--news-article h1,
.news-page--article .news-article-body h2,
.news-page--article .news-card__title {
    color: #0b3c6f;
}

@media (max-width: 720px) {
    .news-page--article .container--news {
        border-radius: 0;
    }
}

/* Mobile article redesign */
@media (max-width: 980px) {
    body.news-page--article {
        background: #f3f6fa;
    }

    .news-page--article .page-aura {
        opacity: 0.18;
    }

    .news-page--article .container--news {
        padding: 12px 12px 42px;
        background: none;
        border-radius: 0;
    }

    .news-page--article .section--news-article {
        margin-bottom: 18px;
        padding: 0;
        background: none;
        border: 0;
        box-shadow: none;
    }

    .news-page--article .news-breadcrumbs {
        display: none;
    }

    .news-page--article .news-article-hero {
        grid-template-columns: 1fr !important;
        gap: 0;
        overflow: hidden;
        border-radius: 0;
        background: linear-gradient(180deg, #051a30 0%, #082744 58%, #0c3c67 100%);
        box-shadow: 0 22px 44px rgba(0, 18, 36, 0.24);
    }

    .news-page--article .news-article-cover {
        order: -1;
        width: 100%;
        max-width: none;
        justify-self: stretch;
        border-radius: 0;
        aspect-ratio: 16 / 10;
        background: transparent;
        box-shadow: none;
    }

    .news-page--article .news-article-cover::before {
        display: none;
    }

    .news-page--article .news-article-cover img,
    .news-page--article .news-article-cover video {
        aspect-ratio: 16 / 10;
        border-radius: 0;
    }

    .news-page--article .news-article-intro {
        gap: 12px;
        padding: 18px 18px 22px;
        background: none;
        border: 0;
        box-shadow: none;
        text-align: left;
    }

    .news-page--article .section-kicker {
        margin-bottom: 0;
        color: rgba(222, 237, 255, 0.82);
        text-shadow: none;
        letter-spacing: 0.14em;
        font-size: 0.68rem;
    }

    .news-page--article .section--news-article h1 {
        max-width: none;
        color: #ffffff;
        font-size: clamp(2.25rem, 8.5vw, 3.25rem);
        line-height: 0.94;
        letter-spacing: -0.045em;
        text-shadow: none;
        text-wrap: balance;
    }

    .news-page--article .news-article-meta {
        gap: 10px;
        color: rgba(204, 226, 247, 0.78);
        font-size: 0.72rem;
        letter-spacing: 0.12em;
    }

    .news-page--article .news-article-meta span + span::before {
        color: rgba(204, 226, 247, 0.38);
    }

    .news-page--article .news-article-lead {
        max-width: none;
        color: rgba(239, 246, 255, 0.92);
        font-size: 1.04rem;
        line-height: 1.74;
        text-shadow: none;
        text-wrap: pretty;
    }

    .news-page--article .news-article-layout {
        gap: 16px;
        margin-top: 18px;
    }

    .news-page--article .news-article-body {
        padding: 22px 18px 24px;
        background: #ffffff;
        border-radius: 0;
        box-shadow: 0 18px 38px rgba(10, 38, 67, 0.08);
    }

    .news-page--article .news-article-body::before {
        display: none;
    }

    .news-page--article .news-article-block + .news-article-block {
        margin-top: 28px;
        padding-top: 22px;
    }

    .news-page--article .news-article-body h2 {
        margin-bottom: 14px;
        color: #0c3156;
        font-size: clamp(1.62rem, 6vw, 2rem);
        line-height: 1.04;
        text-shadow: none;
        text-wrap: balance;
    }

    .news-page--article .news-article-body p {
        max-width: none;
        font-size: 1.03rem;
        line-height: 1.86;
        color: #233a53;
    }

    .news-page--article .news-article-body p + p {
        margin-top: 16px;
    }

    .news-page--article .news-article-block:first-of-type p:first-of-type::first-letter {
        font-size: 4.2rem;
        margin: 6px 10px 0 0;
    }

    .news-page--article .news-article-list li {
        font-size: 1rem;
        line-height: 1.76;
        color: #233a53;
    }

    .news-page--article .news-article-aside {
        gap: 12px;
    }

    .news-page--article .news-aside-card {
        gap: 10px;
        padding: 16px 16px 18px;
        background: #ffffff;
        border: 0;
        border-radius: 0;
        box-shadow: 0 14px 28px rgba(10, 38, 67, 0.08);
    }

    .news-page--article .news-aside-card strong {
        font-size: 1.2rem;
        line-height: 1.08;
        text-shadow: none;
    }

    .news-page--article .news-aside-card p {
        font-size: 0.96rem;
        line-height: 1.68;
    }

    .news-page--article .section--news-related {
        margin-top: 18px;
        padding: 22px 18px 24px;
        background: linear-gradient(180deg, #051a30 0%, #082744 52%, #0b3660 100%);
        border: 0;
        border-radius: 0;
        box-shadow: 0 24px 40px rgba(0, 18, 36, 0.22);
    }

    .news-page--article .section--news-related .section-kicker,
    .news-page--article .section--news-related h2,
    .news-page--article .section--news-related .section-lead {
        text-align: left;
        text-shadow: none;
    }

    .news-page--article .section--news-related .section-kicker {
        color: rgba(218, 236, 255, 0.78);
        letter-spacing: 0.14em;
        margin-bottom: 8px;
    }

    .news-page--article .section--news-related h2 {
        color: #ffffff;
        font-size: clamp(2rem, 9vw, 2.8rem);
        line-height: 0.98;
        letter-spacing: -0.03em;
        text-wrap: balance;
    }

    .news-page--article .section--news-related .section-lead {
        max-width: none;
        color: rgba(224, 237, 252, 0.82);
        font-size: 1rem;
        line-height: 1.66;
        text-wrap: pretty;
    }

    .news-page--article .section--news-related .news-grid--related {
        gap: 16px;
        margin-top: 20px;
    }

    .news-page--article .section--news-related .news-card {
        grid-template-columns: 1fr !important;
        align-items: stretch !important;
        gap: 0 !important;
        padding: 0;
        overflow: hidden;
        background: rgba(255, 255, 255, 0.06);
        border: 1px solid rgba(var(--accent-bright-rgb), 0.14);
        border-radius: 0;
        box-shadow: 0 16px 30px rgba(0, 17, 34, 0.18);
    }

    .news-page--article .section--news-related .news-card__media {
        max-width: none;
        aspect-ratio: 1 / 1;
        border-radius: 0;
        background: #0f3559;
        box-shadow: none;
        justify-self: stretch !important;
    }

    .news-page--article .section--news-related .news-card__body {
        gap: 10px;
        padding: 16px 16px 18px;
        text-align: left !important;
        justify-items: start !important;
        align-items: start !important;
    }

    .news-page--article .section--news-related .news-card__meta {
        gap: 8px;
        color: rgba(205, 226, 246, 0.76);
        font-size: 0.7rem;
        letter-spacing: 0.11em;
        justify-content: flex-start !important;
    }

    .news-page--article .section--news-related .news-card__category {
        color: #9fccff;
    }

    .news-page--article .section--news-related .news-card__title,
    .news-page--article .section--news-related .news-card__title a {
        color: #ffffff;
        font-size: clamp(1.44rem, 6vw, 1.86rem);
        line-height: 1.06;
        letter-spacing: -0.024em;
        text-shadow: none;
        text-wrap: balance;
    }

    .news-page--article .section--news-related .news-card__excerpt {
        max-width: none;
        color: rgba(231, 241, 251, 0.86);
        font-size: 1rem;
        line-height: 1.68;
        margin-inline: 0 !important;
        text-align: left !important;
        text-wrap: pretty;
    }

    .news-page--article .section--news-related .news-card__link {
        color: #ffffff;
        font-size: 0.78rem;
        letter-spacing: 0.14em;
    }
}

@media (max-width: 420px) {
    .news-page--article .container--news {
        padding-left: 10px;
        padding-right: 10px;
    }

    .news-page--article .news-article-intro,
    .news-page--article .news-article-body,
    .news-page--article .news-aside-card,
    .news-page--article .section--news-related {
        padding-left: 16px;
        padding-right: 16px;
    }

    .news-page--article .section--news-article h1 {
        font-size: clamp(2rem, 10vw, 2.8rem);
    }

    .news-page--article .news-article-body p,
    .news-page--article .section--news-related .news-card__excerpt {
        font-size: 0.98rem;
        line-height: 1.78;
    }
}

/* Mobile/category listing redesign */
@media (max-width: 980px) {
    body.news-page--listing,
    body.news-page--category {
        background: #eff4f8;
    }

    .news-page--listing .page-aura,
    .news-page--category .page-aura {
        opacity: 0.14;
    }

    .news-page--listing .container--news,
    .news-page--category .container--news {
        padding: 12px 12px 42px;
        background: none;
        border-radius: 0;
    }

    .news-page--listing .section--news-landing,
    .news-page--category .section--news-landing {
        padding: 22px 18px 24px;
        background: linear-gradient(180deg, #082b4b 0%, #0d4578 62%, #1662a3 100%);
        border: 0;
        border-radius: 0;
        box-shadow: 0 22px 44px rgba(0, 24, 48, 0.2);
        text-align: left;
    }

    .news-page--listing .section--news-landing .section-kicker,
    .news-page--category .section--news-landing .section-kicker {
        color: rgba(222, 237, 255, 0.82);
        letter-spacing: 0.14em;
        text-shadow: none;
    }

    .news-page--listing .section--news-landing h1,
    .news-page--category .section--news-landing h1 {
        margin-bottom: 12px;
        color: #ffffff;
        text-align: left;
        font-size: clamp(2.4rem, 9vw, 3.35rem);
        line-height: 0.94;
        text-shadow: none;
        text-wrap: balance;
    }

    .news-page--listing .section--news-landing .section-lead,
    .news-page--category .section--news-landing .section-lead {
        max-width: none;
        color: rgba(236, 244, 255, 0.88);
        text-align: left;
        font-size: 1rem;
        line-height: 1.7;
    }

    .news-page--listing .news-filter,
    .news-page--category .news-filter {
        justify-content: flex-start;
        gap: 10px;
    }

    .news-page--listing .news-filter__chip,
    .news-page--category .news-filter__chip {
        width: auto;
        min-height: 40px;
        padding: 9px 12px;
        border: 1px solid rgba(188, 223, 255, 0.18);
        background: rgba(255, 255, 255, 0.08);
        color: #ffffff;
        box-shadow: none;
    }

    .news-page--listing .news-filter__chip:hover,
    .news-page--listing .news-filter__chip:focus-visible,
    .news-page--listing .news-filter__chip.is-active,
    .news-page--category .news-filter__chip:hover,
    .news-page--category .news-filter__chip:focus-visible,
    .news-page--category .news-filter__chip.is-active {
        transform: none;
        border-color: rgba(255, 255, 255, 0.24);
        background: rgba(255, 255, 255, 0.16);
        color: #ffffff;
        box-shadow: none;
    }

    .news-page--listing .section--news-featured,
    .news-page--listing .section--news-group,
    .news-page--category .section--news-group {
        margin-top: 18px;
        padding: 22px 18px 24px;
        background: linear-gradient(180deg, #082845 0%, #0d3d69 100%);
        border: 0;
        border-radius: 0;
        box-shadow: 0 24px 40px rgba(0, 23, 46, 0.18);
    }

    .news-page--listing .news-featured__intro,
    .news-page--listing .news-group__header,
    .news-page--category .news-group__header {
        grid-template-columns: 1fr;
        gap: 10px;
        justify-items: start;
        text-align: left;
    }

    .news-page--listing .section--news-featured .section-kicker,
    .news-page--listing .section--news-group .section-kicker,
    .news-page--category .section--news-group .section-kicker {
        color: rgba(218, 236, 255, 0.78);
        margin-bottom: 8px;
    }

    .news-page--listing .section--news-featured h2,
    .news-page--listing .section--news-group h2,
    .news-page--category .section--news-group h2 {
        color: #ffffff;
        text-align: left;
        font-size: clamp(2rem, 8vw, 2.7rem);
        line-height: 0.98;
        text-shadow: none;
    }

    .news-page--listing .section--news-featured p,
    .news-page--listing .section--news-group p,
    .news-page--category .section--news-group p {
        max-width: none;
        margin: 0;
        color: rgba(224, 237, 252, 0.82);
        text-align: left;
        font-size: 1rem;
        line-height: 1.66;
    }

    .news-page--listing .news-grid,
    .news-page--category .news-grid {
        grid-template-columns: 1fr !important;
        gap: 14px;
        margin-top: 20px;
    }

    .news-page--listing .news-card,
    .news-page--category .news-card,
    .news-page--listing .news-card--featured,
    .news-page--category .news-card--featured {
        display: grid;
        grid-column: auto;
        grid-template-columns: 1fr !important;
        align-items: stretch !important;
        gap: 0 !important;
        min-height: 0;
        padding: 0;
        overflow: hidden;
        background: rgba(255, 255, 255, 0.06);
        border: 1px solid rgba(var(--accent-bright-rgb), 0.14);
        border-radius: 0;
        box-shadow: 0 16px 30px rgba(0, 17, 34, 0.18);
    }

    .news-page--listing .news-card:hover,
    .news-page--category .news-card:hover {
        transform: none;
        border-color: rgba(var(--accent-bright-rgb), 0.14);
        box-shadow: 0 16px 30px rgba(0, 17, 34, 0.18);
    }

    .news-page--listing .news-card__media,
    .news-page--category .news-card__media {
        width: 100%;
        max-width: none;
        aspect-ratio: 16 / 10;
        max-height: min(58vw, 260px);
        border-radius: 0;
        background: #0f3559;
        box-shadow: none;
    }

    .news-page--listing .news-card__media img,
    .news-page--listing .news-card__media video,
    .news-page--category .news-card__media img,
    .news-page--category .news-card__media video {
        object-fit: cover;
    }

    .news-page--listing .news-card__media--banner .news-card__banner-image,
    .news-page--category .news-card__media--banner .news-card__banner-image,
    .section--news-home .news-card--home .news-card__media--banner .news-card__banner-image,
    .news-article-cover--banner .news-card__banner-image,
    .news-page--article .section--news-related .news-card__media--banner .news-card__banner-image {
        object-fit: cover !important;
        padding: 0;
    }

    .news-page--listing .news-card__body,
    .news-page--category .news-card__body,
    .news-page--listing .news-card--featured .news-card__body,
    .news-page--category .news-card--featured .news-card__body {
        grid-template-rows: auto auto 1fr auto;
        gap: 9px;
        padding: 15px 15px 17px;
        text-align: left;
        justify-items: start;
        align-items: start;
    }

    .news-page--listing .news-card__meta,
    .news-page--category .news-card__meta {
        justify-content: flex-start;
        gap: 8px;
        row-gap: 6px;
        color: rgba(205, 226, 246, 0.76);
        font-size: 0.7rem;
        letter-spacing: 0.11em;
    }

    .news-page--listing .news-card__category,
    .news-page--category .news-card__category {
        padding: 0;
        border: 0;
        background: none;
        color: #9fccff;
    }

    .news-page--listing .news-card__title,
    .news-page--listing .news-card__title a,
    .news-page--category .news-card__title,
    .news-page--category .news-card__title a {
        color: #ffffff;
        font-size: clamp(1.2rem, 5vw, 1.56rem);
        line-height: 1.12;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-shadow: none;
    }

    .news-page--listing .news-card__excerpt,
    .news-page--category .news-card__excerpt {
        color: rgba(231, 241, 251, 0.86);
        font-size: 0.94rem;
        line-height: 1.56;
        text-align: left;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .news-page--listing .news-card__link,
    .news-page--category .news-card__link {
        color: #ffffff;
        margin-top: 4px;
        font-size: 0.74rem;
        letter-spacing: 0.14em;
    }
}

/* Final article related-section override */
.news-page--article .section--news-related {
    margin-top: clamp(28px, 3.4vw, 40px);
    padding: clamp(22px, 3vw, 36px);
    background: linear-gradient(180deg, #051a30 0%, #082744 52%, #0b3660 100%);
    border: 0;
    border-radius: 0;
    box-shadow: 0 24px 40px rgba(0, 18, 36, 0.22);
}

.news-page--article .section--news-related .section-kicker,
.news-page--article .section--news-related h2,
.news-page--article .section--news-related .section-lead {
    text-align: left;
    text-shadow: none;
    margin-inline: 0;
}

.news-page--article .section--news-related .section-kicker {
    color: rgba(218, 236, 255, 0.78);
}

.news-page--article .section--news-related h2 {
    color: #ffffff;
    margin-bottom: 12px;
    max-width: 14ch;
    letter-spacing: -0.03em;
    text-wrap: balance;
}

.news-page--article .section--news-related .section-lead {
    max-width: 60ch;
    color: rgba(224, 237, 252, 0.82);
    text-wrap: pretty;
}

.news-page--article .section--news-related .news-grid--related {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(16px, 2vw, 24px);
    margin-top: clamp(18px, 2.4vw, 24px);
}

.news-page--article .section--news-related .news-card {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: stretch !important;
    gap: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    min-width: 0;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(157, 212, 255, 0.12) !important;
    border-radius: 0 !important;
    box-shadow: 0 18px 34px rgba(0, 14, 28, 0.22) !important;
}

.news-page--article .section--news-related .news-card:hover {
    transform: none;
    border-color: rgba(157, 212, 255, 0.12);
    box-shadow: 0 18px 34px rgba(0, 14, 28, 0.22);
}

.news-page--article .section--news-related .news-card__media {
    width: 100%;
    max-width: none !important;
    min-width: 0;
    aspect-ratio: 21 / 8;
    min-height: clamp(190px, 21vw, 270px);
    border-radius: 0 !important;
    background: #081f37;
    box-shadow: none !important;
}

.news-page--article .section--news-related .news-card__body {
    gap: 14px;
    min-width: 0;
    padding: clamp(18px, 2.3vw, 30px) !important;
    text-align: left !important;
    justify-items: start !important;
    align-items: start !important;
}

.news-page--article .section--news-related .news-card__meta {
    justify-content: flex-start !important;
    gap: 10px;
    row-gap: 6px;
    color: rgba(205, 226, 246, 0.76);
}

.news-page--article .section--news-related .news-card__category {
    padding: 0;
    border: 0;
    background: none;
    color: #9fccff;
}

.news-page--article .section--news-related .news-card__title,
.news-page--article .section--news-related .news-card__title a {
    color: #ffffff;
    font-size: clamp(1.5rem, 2.6vw, 2.05rem);
    line-height: 1.08;
    letter-spacing: -0.024em;
    text-shadow: none;
    max-width: 24ch;
    text-wrap: balance;
}

.news-page--article .section--news-related .news-card__excerpt {
    max-width: 62ch;
    margin: 0;
    color: rgba(231, 241, 251, 0.86);
    font-size: 1.02rem;
    line-height: 1.72;
    text-align: left;
    text-wrap: pretty;
}

.news-page--article .section--news-related .news-card__link {
    color: #ffffff;
}

@media (max-width: 980px) {
    .news-page--article .container--news {
        padding: 16px 16px 42px;
    }

    .news-page--article .section--news-related {
        border-radius: 0 !important;
    }

    .news-page--article .section--news-related .section-lead {
        max-width: none;
    }

    .news-page--article .section--news-related .news-card__media {
        aspect-ratio: 16 / 10;
        min-height: 0;
    }

    .news-page--article .section--news-related .news-card__body {
        padding: 18px 18px 20px !important;
    }

    .news-page--article .section--news-related .news-card__excerpt {
        max-width: none;
    }
}

@media (max-width: 420px) {
    .news-page--article .container--news {
        padding: 12px 12px 38px;
    }

    .news-page--article .section--news-related {
        border-radius: 0 !important;
    }

    .news-page--article .section--news-related .news-card__body {
        padding: 16px 16px 18px !important;
    }

    .news-page--article .section--news-related .news-card__title,
    .news-page--article .section--news-related .news-card__title a {
        max-width: none;
    }
}

/* Final desktop article banner override */
@media (min-width: 981px) {
    .news-page--article .news-article-cover,
    .news-page--article .news-article-cover--video,
    .news-page--article .news-article-cover--banner {
        width: 100% !important;
        max-width: none !important;
        min-height: clamp(280px, 34vw, 440px);
        justify-self: stretch !important;
        aspect-ratio: 21 / 8 !important;
        padding: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: hidden !important;
    }

    .news-page--article .news-article-cover::before,
    .news-page--article .news-article-cover--video::before,
    .news-page--article .news-article-cover--banner::before {
        display: none !important;
    }

    .news-page--article .news-article-cover img,
    .news-page--article .news-article-cover video,
    .news-page--article .news-article-cover--banner .news-card__banner-image {
        width: 100% !important;
        height: 100% !important;
        aspect-ratio: 21 / 8 !important;
        border-radius: 0 !important;
        object-fit: cover !important;
        object-position: center !important;
        padding: 0 !important;
        box-shadow: none !important;
    }

.news-page--article .news-article-cover--banner .news-card__banner-dots {
        inset: auto auto 20px 24px;
    }
}

/* Final article background cleanup */
body.news-page--article {
    background: #f7f8fb;
}

.news-page--article .page-aura {
    opacity: 0.05;
}

@media (min-width: 981px) {
    .news-page--article .container--news {
        background: none !important;
        border-radius: 0 !important;
    }

    .news-page--article .section--news-article {
        padding: clamp(28px, 3vw, 40px);
        background: #ffffff !important;
        border: 1px solid rgba(var(--accent-rgb), 0.08) !important;
        border-radius: 0 !important;
        box-shadow: 0 18px 42px rgba(10, 38, 67, 0.06) !important;
    }

    .news-page--article .news-article-body,
    .news-page--article .news-aside-card {
        background: #ffffff !important;
        box-shadow: 0 14px 30px rgba(10, 38, 67, 0.05) !important;
    }

    .news-page--article .news-article-body p,
    .news-page--article .news-article-list li,
    .news-page--article .news-aside-card p {
        color: rgba(29, 47, 68, 0.88);
    }
}

/* Performance hardening for mobile/coarse pointers and static deploys */
html.ua-lite,
html.ua-embedded {
    scroll-behavior: auto;
}

html.ua-lite body,
html.ua-embedded body,
html.ua-lite main,
html.ua-embedded main,
html.ua-lite .container,
html.ua-embedded .container,
html.ua-lite .hero,
html.ua-embedded .hero,
html.ua-lite .section,
html.ua-embedded .section,
html.ua-lite .site-footer,
html.ua-embedded .site-footer,
html.ua-lite .hero-signature,
html.ua-embedded .hero-signature {
    overflow-x: hidden !important;
}

html.ua-lite .section,
html.ua-embedded .section,
html.ua-lite .site-footer,
html.ua-embedded .site-footer,
html.ua-lite .section--news-featured,
html.ua-embedded .section--news-featured,
html.ua-lite .section--news-group,
html.ua-embedded .section--news-group {
    content-visibility: visible !important;
    contain-intrinsic-size: auto !important;
}

html.ua-lite .gallery,
html.ua-embedded .gallery,
html.ua-lite .song-grid,
html.ua-embedded .song-grid,
html.ua-lite .experience-grid,
html.ua-embedded .experience-grid,
html.ua-lite .legacy-track,
html.ua-embedded .legacy-track,
html.ua-lite .contact-grid,
html.ua-embedded .contact-grid,
html.ua-lite .song-grid-shell,
html.ua-embedded .song-grid-shell,
html.ua-lite .video-track-frame,
html.ua-embedded .video-track-frame,
html.ua-lite .ensaios-track-frame,
html.ua-embedded .ensaios-track-frame {
    contain: none !important;
}

html.ua-lite .video-track,
html.ua-embedded .video-track,
html.ua-lite .ensaios-track,
html.ua-embedded .ensaios-track,
html.ua-lite .song-grid,
html.ua-embedded .song-grid,
html.ua-lite .experience-grid,
html.ua-embedded .experience-grid {
    scroll-snap-type: x proximity !important;
    overscroll-behavior-x: auto !important;
    touch-action: auto !important;
}

html.ua-lite .video-card,
html.ua-embedded .video-card,
html.ua-lite .song-card,
html.ua-embedded .song-card,
html.ua-lite .ensaios-card,
html.ua-embedded .ensaios-card,
html.ua-lite .experience-card,
html.ua-embedded .experience-card {
    scroll-snap-stop: normal !important;
    transform: none !important;
    opacity: 1 !important;
    will-change: auto !important;
}

html.ua-lite .video-play,
html.ua-embedded .video-play,
html.ua-lite .song-card__play,
html.ua-embedded .song-card__play,
html.ua-lite .modal,
html.ua-embedded .modal,
html.ua-lite .lightbox,
html.ua-embedded .lightbox,
html.ua-lite .video-modal-shell,
html.ua-embedded .video-modal-shell,
html.ua-lite .jukebox-modal-shell,
html.ua-embedded .jukebox-modal-shell {
    backdrop-filter: none !important;
}

html.ua-lite .btn::before,
html.ua-embedded .btn::before,
html.ua-lite .btn::after,
html.ua-embedded .btn::after,
html.ua-lite .video-nav::before,
html.ua-embedded .video-nav::before,
html.ua-lite .video-nav::after,
html.ua-embedded .video-nav::after,
html.ua-lite .footer-action::before,
html.ua-embedded .footer-action::before,
html.ua-lite .social-link::before,
html.ua-embedded .social-link::before,
html.ua-lite .song-card::before,
html.ua-embedded .song-card::before,
html.ua-lite .song-card::after,
html.ua-embedded .song-card::after,
html.ua-lite .video-card::before,
html.ua-embedded .video-card::before,
html.ua-lite .video-card::after,
html.ua-embedded .video-card::after,
html.ua-lite .ensaios-card::before,
html.ua-embedded .ensaios-card::before,
html.ua-lite .ensaios-card::after,
html.ua-embedded .ensaios-card::after,
html.ua-lite .gallery-sticker,
html.ua-embedded .gallery-sticker {
    animation: none !important;
}

@supports (content-visibility: auto) {
    .section,
    .site-footer {
        content-visibility: auto;
        contain-intrinsic-size: 1px 860px;
    }

    .hero,
    .top-header,
    .header-nav-shell,
    .section--news-article,
    .section--news-landing,
    .section--news-featured,
    .section--news-home,
    .lightbox,
    .modal {
        content-visibility: visible;
        contain-intrinsic-size: auto;
    }
}

@media (hover: none), (pointer: coarse) {
    .video-track,
    .ensaios-track,
    .song-grid,
    .experience-grid {
        scroll-snap-type: x proximity;
        overscroll-behavior-x: auto;
        touch-action: auto;
    }

    .video-card,
    .song-card,
    .ensaios-card,
    .experience-card {
        scroll-snap-stop: normal;
    }
}

@media (max-width: 1200px), (hover: none), (pointer: coarse) {
    .section,
    .site-footer,
    .section--news-featured,
    .section--news-group,
    .section--news-home {
        content-visibility: visible !important;
        contain-intrinsic-size: auto !important;
    }

    .gallery,
    .song-grid,
    .experience-grid,
    .legacy-track,
    .contact-grid,
    .song-grid-shell,
    .video-track-frame,
    .ensaios-track-frame {
        contain: none !important;
    }

    body::before,
    .page-aura::before,
    .page-aura::after,
    .hero-copy::before,
    .hero-copy::after,
    .hero-content::before,
    .hero-content::after,
    .gallery::before,
    .news-card__banner-backdrop {
        animation: none !important;
        display: none !important;
    }

    .page-aura {
        background: linear-gradient(180deg, rgba(6, 36, 74, 0.018), transparent 18%, transparent 82%, rgba(6, 36, 74, 0.018));
    }

    .section,
    .news-card,
    .video-card,
    .song-card,
    .contact-card,
    .bio-card,
    .repertoire-card,
    .legacy-card,
    .show-card,
    .ensaios-card,
    .experience-showcase,
    .song-grid-shell,
    .ensaios-track-frame,
    .video-track-frame,
    .show-date,
    .bio-preview {
        box-shadow:
            0 16px 32px rgba(0, 20, 40, 0.13),
            0 0 0 1px rgba(158, 212, 255, 0.06),
            0 0 34px rgba(92, 170, 245, 0.11) !important;
    }

    .news-card__banner-slide,
    .news-card__banner-dots span {
        animation: none !important;
    }

    .show-date {
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.12),
            0 18px 36px rgba(0, 33, 66, 0.24),
            0 0 0 1px rgba(169, 220, 255, 0.08),
            0 0 34px rgba(102, 183, 255, 0.22) !important;
    }

    .btn,
    .header-cta,
    .footer-action,
    .social-link {
        box-shadow:
            0 14px 28px rgba(0, 24, 54, 0.16),
            0 0 0 1px rgba(183, 227, 255, 0.08),
            0 0 28px rgba(111, 191, 255, 0.18) !important;
    }

    .btn::before,
    .header-cta::before,
    .footer-action::before,
    .social-link::before {
        inset: -48% auto -48% -34% !important;
        width: 44% !important;
        background: linear-gradient(115deg, transparent 0%, rgba(255, 255, 255, 0.08) 18%, rgba(255, 255, 255, 0.82) 42%, rgba(255, 255, 255, 0.14) 58%, transparent 76%) !important;
        opacity: 0.92;
        animation-duration: 3.4s !important;
    }

    .header-cta::after,
    .footer-action::after,
    .social-link::after {
        content: '' !important;
        position: absolute !important;
        inset: auto 12% -28% !important;
        height: 46% !important;
        border-radius: 999px !important;
        background: radial-gradient(circle, rgba(169, 220, 255, 0.42), transparent 72%) !important;
        opacity: 0.72 !important;
        filter: blur(12px) !important;
        animation: ambientButtonAura 4s ease-in-out infinite !important;
        mix-blend-mode: screen !important;
        pointer-events: none !important;
        z-index: -1 !important;
    }

    .btn::after {
        background: radial-gradient(circle, rgba(169, 220, 255, 0.46), transparent 72%) !important;
        opacity: 0.72;
        filter: blur(12px) !important;
        animation-duration: 4s !important;
    }

    .show-date::before {
        opacity: 1 !important;
        inset: -46% auto -46% -34% !important;
        width: 48% !important;
        background: linear-gradient(115deg, transparent 0%, rgba(255, 255, 255, 0.08) 16%, rgba(255, 255, 255, 0.92) 42%, rgba(255, 255, 255, 0.22) 58%, transparent 78%) !important;
        animation-duration: 3s !important;
    }

    .show-date::after {
        opacity: 0.88 !important;
        animation-duration: 3.8s !important;
    }

    .song-grid-shell,
    .ensaios-track-frame,
    .video-track-frame,
    .experience-showcase,
    .show-date,
    .bio-preview {
        position: relative !important;
        overflow: hidden !important;
        isolation: isolate !important;
    }

    .show-date,
    .experience-showcase,
    .song-grid-shell,
    .ensaios-track-frame,
    .video-track-frame {
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.1),
            0 18px 34px rgba(0, 20, 40, 0.14),
            0 0 0 1px rgba(158, 212, 255, 0.06),
            0 0 36px rgba(92, 170, 245, 0.14) !important;
    }
}

@media (prefers-reduced-motion: no-preference) and (max-width: 1200px),
       (prefers-reduced-motion: no-preference) and (hover: none),
       (prefers-reduced-motion: no-preference) and (pointer: coarse) {
    .section--news-home .news-card--home .news-card__banner-slide,
    .news-page--article .news-article-cover--banner .news-card__banner-slide,
    .news-page--article .section--news-related .news-card__banner-slide {
        animation: newsCardBannerCycle 18s infinite ease-in-out !important;
        animation-delay: var(--news-banner-delay, 0s) !important;
    }

    .news-page--article .news-article-cover--banner .news-card__banner-backdrop,
    .news-page--article .section--news-related .news-card__banner-backdrop {
        display: block !important;
    }

    .section--news-home .news-card--home .news-card__banner-image,
    .news-page--article .news-article-cover--banner .news-card__banner-image,
    .news-page--article .section--news-related .news-card__banner-image {
        animation: newsCardBannerZoom 18s infinite ease-in-out !important;
        animation-delay: var(--news-banner-delay, 0s) !important;
    }

    .section--news-home .news-card--home .news-card__banner-dots span,
    .news-page--article .news-article-cover--banner .news-card__banner-dots span,
    .news-page--article .section--news-related .news-card__banner-dots span {
        animation: newsCardBannerDot 18s infinite ease-in-out !important;
        animation-delay: var(--news-banner-delay, 0s) !important;
    }
}

/* Final editorial override for the home news container */
.section--news-home {
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
    border-color: rgba(var(--accent-rgb), 0.08) !important;
    box-shadow:
        0 28px 64px rgba(2, 17, 35, 0.1),
        0 10px 22px rgba(7, 48, 90, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
}

.section--news-home::before {
    display: none !important;
}

.section--news-home .section-kicker {
    color: rgba(18, 115, 146, 0.94) !important;
}

.section--news-home h2,
.section--news-home .section-lead {
    color: var(--ink-strong) !important;
    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.86),
        0 12px 24px rgba(7, 28, 54, 0.06) !important;
}

.section--news-home .section-lead {
    color: rgba(38, 63, 92, 0.8) !important;
}

.section--news-home .news-home-head {
    border-bottom-color: rgba(var(--accent-rgb), 0.1) !important;
}

.section--news-home .news-home-head__link,
.section--news-home .news-home-note__link {
    color: rgba(18, 115, 146, 0.94) !important;
    text-shadow: none !important;
    border-bottom-color: rgba(var(--accent-bright-rgb), 0.18) !important;
}

.section--news-home .news-card--home {
    border: 1px solid rgba(var(--accent-bright-rgb), 0.14) !important;
    background: linear-gradient(180deg, #163c60 0%, #0b2238 100%) !important;
    box-shadow:
        0 18px 38px rgba(0, 12, 24, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
}

.section--news-home .news-card--home:hover {
    border-color: rgba(var(--accent-bright-rgb), 0.22) !important;
    box-shadow:
        0 24px 46px rgba(0, 12, 24, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

.section--news-home .news-card--home .news-card__media {
    background: linear-gradient(180deg, rgba(12, 36, 59, 0.98), rgba(7, 21, 35, 0.99)) !important;
}

.section--news-home .news-card--home .news-card__body {
    background: linear-gradient(180deg, rgba(15, 46, 76, 0.96), rgba(8, 24, 40, 0.98)) !important;
}

.section--news-home .news-card--home .news-card__meta {
    color: rgba(196, 219, 239, 0.7) !important;
}

.section--news-home .news-card--home .news-card__category {
    color: var(--accent-bright) !important;
    background: rgba(var(--accent-bright-rgb), 0.08) !important;
    border: 1px solid rgba(var(--accent-bright-rgb), 0.12) !important;
}

.section--news-home .news-card--home .news-card__title,
.section--news-home .news-card--home .news-card__title a {
    color: #ffffff !important;
    text-shadow: none !important;
}

.section--news-home .news-card--home .news-card__excerpt {
    color: rgba(224, 236, 247, 0.82) !important;
}

.section--news-home .news-card--home .news-card__link {
    color: var(--accent-bright) !important;
    border-bottom-color: rgba(var(--accent-bright-rgb), 0.18) !important;
}

.section--news-home .news-card__banner-dots span {
    background: rgba(var(--accent-bright-rgb), 0.26) !important;
    box-shadow: 0 0 0 1px rgba(var(--accent-bright-rgb), 0.14) !important;
}

@media (max-width: 1200px), (hover: none), (pointer: coarse) {
    .section--news-home {
        box-shadow:
            0 22px 46px rgba(2, 17, 35, 0.1),
            0 8px 18px rgba(7, 48, 90, 0.04),
            inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
    }
}

/* Archive/category pages: keep cards white over blue sections */
.news-page--listing .news-card,
.news-page--category .news-card,
.news-page--listing .news-card--featured,
.news-page--category .news-card--featured {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.995), rgba(246, 250, 254, 0.985)) !important;
    border: 1px solid rgba(11, 54, 98, 0.1) !important;
    box-shadow:
        0 18px 34px rgba(1, 16, 32, 0.16),
        0 8px 20px rgba(8, 47, 88, 0.06),
        inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;
}

.news-page--listing .news-card:hover,
.news-page--category .news-card:hover {
    border-color: rgba(11, 54, 98, 0.14) !important;
    box-shadow:
        0 22px 40px rgba(1, 16, 32, 0.18),
        0 10px 22px rgba(8, 47, 88, 0.07),
        inset 0 1px 0 rgba(255, 255, 255, 0.94) !important;
}

.news-page--listing .news-card__body,
.news-page--category .news-card__body,
.news-page--listing .news-card--featured .news-card__body,
.news-page--category .news-card--featured .news-card__body {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.995), rgba(247, 251, 255, 0.985)) !important;
}

.news-page--listing .news-card__meta,
.news-page--category .news-card__meta {
    color: rgba(27, 58, 92, 0.62) !important;
}

.news-page--listing .news-card__category,
.news-page--category .news-card__category {
    color: var(--accent) !important;
    background: rgba(var(--accent-bright-rgb), 0.08) !important;
    border: 1px solid rgba(var(--accent-rgb), 0.08) !important;
    padding: 7px 10px !important;
    border-radius: 999px !important;
}

.news-page--listing .news-card__title,
.news-page--listing .news-card__title a,
.news-page--category .news-card__title,
.news-page--category .news-card__title a {
    color: var(--ink-strong) !important;
    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.84),
        0 10px 18px rgba(7, 28, 54, 0.06) !important;
}

.news-page--listing .news-card__excerpt,
.news-page--category .news-card__excerpt {
    color: rgba(38, 62, 88, 0.82) !important;
}

.news-page--listing .news-card__link,
.news-page--category .news-card__link {
    color: var(--accent) !important;
}

@media (min-width: 981px) {
    body.news-page--listing,
    body.news-page--category {
        background: #eff4f8;
    }

    .news-page--listing .page-aura,
    .news-page--category .page-aura {
        opacity: 0.08;
    }

    .news-page--listing .container--news,
    .news-page--category .container--news {
        padding-bottom: 54px;
    }

    .news-page--listing .section--news-landing,
    .news-page--category .section--news-landing {
        padding: clamp(30px, 3vw, 40px);
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.995), rgba(247, 251, 255, 0.985));
        border: 1px solid rgba(var(--accent-rgb), 0.09);
        border-radius: 0;
        box-shadow:
            0 26px 54px rgba(7, 36, 66, 0.08),
            inset 0 1px 0 rgba(255, 255, 255, 0.94);
    }

    .news-page--listing .section--news-featured,
    .news-page--listing .section--news-group,
    .news-page--category .section--news-group {
        margin-top: 24px;
        padding: clamp(26px, 2.7vw, 34px);
        background: linear-gradient(180deg, #082845 0%, #0d3d69 100%);
        border: 0;
        border-radius: 0;
        box-shadow: 0 26px 48px rgba(0, 23, 46, 0.18);
        content-visibility: auto;
        contain-intrinsic-size: 1px 900px;
    }

    .news-page--listing .news-featured__intro,
    .news-page--listing .news-group__header,
    .news-page--category .news-group__header {
        grid-template-columns: minmax(0, 1fr) minmax(280px, 0.82fr);
        gap: 24px;
        align-items: end;
        justify-items: start;
        text-align: left;
    }

    .news-page--listing .section--news-featured .section-kicker,
    .news-page--listing .section--news-group .section-kicker,
    .news-page--category .section--news-group .section-kicker,
    .news-page--listing .section--news-featured h2,
    .news-page--listing .section--news-featured p,
    .news-page--listing .section--news-group h2,
    .news-page--listing .section--news-group p,
    .news-page--category .section--news-group h2,
    .news-page--category .section--news-group p {
        text-align: left;
        margin-inline: 0;
        text-shadow: none;
    }

    .news-page--listing .section--news-featured .section-kicker,
    .news-page--listing .section--news-group .section-kicker,
    .news-page--category .section--news-group .section-kicker {
        color: rgba(218, 236, 255, 0.76);
    }

    .news-page--listing .section--news-featured h2,
    .news-page--listing .section--news-group h2,
    .news-page--category .section--news-group h2 {
        color: #ffffff;
        font-size: clamp(2rem, 3.2vw, 2.7rem);
        line-height: 1.02;
        max-width: 14ch;
    }

    .news-page--listing .section--news-featured p,
    .news-page--listing .section--news-group p,
    .news-page--category .section--news-group p {
        color: rgba(226, 239, 252, 0.82);
        max-width: 42ch;
    }

    .news-page--listing .news-grid,
    .news-page--category .news-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 22px !important;
        align-items: start;
    }

    .news-page--listing .news-grid--featured {
        grid-template-columns: minmax(0, 1.14fr) minmax(320px, 0.86fr) !important;
        grid-auto-rows: minmax(0, 1fr);
        gap: 22px !important;
    }

    .news-page--listing .news-grid--featured > .news-card:nth-child(1) {
        grid-column: 1;
        grid-row: 1 / span 2;
    }

    .news-page--listing .news-grid--featured > .news-card:nth-child(2) {
        grid-column: 2;
        grid-row: 1;
    }

    .news-page--listing .news-grid--featured > .news-card:nth-child(3) {
        grid-column: 2;
        grid-row: 2;
    }

    .news-page--listing .news-card,
    .news-page--category .news-card,
    .news-page--listing .news-card--featured,
    .news-page--category .news-card--featured {
        grid-template-rows: auto 1fr;
        min-height: 0;
    }

    .news-page--listing .news-card__media,
    .news-page--category .news-card__media {
        aspect-ratio: 16 / 9;
        max-width: none;
        min-height: clamp(198px, 18vw, 238px);
        background: #0f3559;
    }

    .news-page--listing .news-grid--featured > .news-card:nth-child(1) .news-card__media {
        min-height: clamp(288px, 27vw, 390px);
    }

    .news-page--listing .news-grid--featured > .news-card:nth-child(n + 2) .news-card__media {
        min-height: clamp(168px, 12vw, 196px);
    }

    .news-page--listing .news-card__media--banner .news-card__banner-backdrop,
    .news-page--category .news-card__media--banner .news-card__banner-backdrop {
        display: none;
    }

    .news-page--listing .news-card__media--banner .news-card__banner-image,
    .news-page--category .news-card__media--banner .news-card__banner-image {
        object-fit: cover !important;
        object-position: center !important;
        padding: 0 !important;
        animation: newsCardBannerZoomLite 18s infinite ease-in-out !important;
        animation-delay: var(--news-banner-delay, 0s) !important;
    }

    .news-page--listing .news-card__banner-dots span,
    .news-page--category .news-card__banner-dots span {
        animation: newsCardBannerDot 18s infinite ease-in-out !important;
        animation-delay: var(--news-banner-delay, 0s) !important;
    }

    .news-page--listing .news-card__body,
    .news-page--category .news-card__body {
        grid-template-rows: auto auto 1fr auto;
        gap: 12px;
        padding: 20px 20px 22px !important;
    }

    .news-page--listing .news-grid--featured > .news-card:nth-child(1) .news-card__body {
        padding: 22px 22px 24px !important;
    }

    .news-page--listing .news-grid--featured > .news-card:nth-child(n + 2) .news-card__body {
        gap: 9px;
        padding: 16px 16px 18px !important;
    }

    .news-page--listing .news-card__title,
    .news-page--listing .news-card__title a,
    .news-page--category .news-card__title,
    .news-page--category .news-card__title a {
        font-size: clamp(1.34rem, 1.6vw, 1.62rem) !important;
        line-height: 1.1 !important;
        letter-spacing: -0.024em;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-wrap: balance;
    }

    .news-page--listing .news-grid--featured > .news-card:nth-child(1) .news-card__title,
    .news-page--listing .news-grid--featured > .news-card:nth-child(1) .news-card__title a {
        font-size: clamp(1.8rem, 2.1vw, 2.16rem) !important;
        max-width: 18ch;
    }

    .news-page--listing .news-grid--featured > .news-card:nth-child(n + 2) .news-card__title,
    .news-page--listing .news-grid--featured > .news-card:nth-child(n + 2) .news-card__title a {
        font-size: clamp(1.16rem, 1.5vw, 1.32rem) !important;
        line-height: 1.12;
    }

    .news-page--listing .news-card__excerpt,
    .news-page--category .news-card__excerpt {
        display: -webkit-box;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        overflow: hidden;
        max-width: 58ch;
        line-height: 1.62;
    }

    .news-page--listing .news-grid--featured > .news-card:nth-child(n + 2) .news-card__excerpt {
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
        font-size: 0.94rem;
        line-height: 1.56;
    }

    .news-page--listing .news-card__link,
    .news-page--category .news-card__link {
        margin-top: 2px;
    }
}

@media (max-width: 920px) {
    .section--news-home .news-card--home {
        background: linear-gradient(180deg, #173f66 0%, #0b2238 100%) !important;
        border: 1px solid rgba(var(--accent-bright-rgb), 0.14) !important;
        box-shadow:
            0 16px 32px rgba(0, 12, 24, 0.24),
            inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
    }

    .section--news-home .news-card--home .news-card__body {
        background: linear-gradient(180deg, rgba(15, 46, 76, 0.96), rgba(8, 24, 40, 0.98)) !important;
        box-shadow: none !important;
    }

    .section--news-home .news-card--home .news-card__meta {
        color: rgba(196, 219, 239, 0.7) !important;
    }

    .section--news-home .news-card--home .news-card__category {
        color: var(--accent-bright) !important;
        background: rgba(var(--accent-bright-rgb), 0.08) !important;
        border: 1px solid rgba(var(--accent-bright-rgb), 0.12) !important;
    }

    .section--news-home .news-card--home .news-card__title,
    .section--news-home .news-card--home .news-card__title a {
        color: #ffffff !important;
        text-shadow: none !important;
    }

    .section--news-home .news-card--home .news-card__excerpt {
        color: rgba(224, 236, 247, 0.82) !important;
    }

    .section--news-home .news-card--home .news-card__link {
        color: var(--accent-bright) !important;
        border-bottom-color: rgba(var(--accent-bright-rgb), 0.18) !important;
    }
}

@media (hover: none), (pointer: coarse) {
    .section--news-home .news-card__banner-backdrop,
    .news-page--listing .news-card__banner-backdrop,
    .news-page--category .news-card__banner-backdrop {
        display: none !important;
    }

    .section--news-home .news-card__banner-image,
    .news-page--listing .news-card__banner-image,
    .news-page--category .news-card__banner-image {
        animation: none !important;
        transform: none !important;
    }

    .section--news-home .news-card__banner-dots span,
    .news-page--listing .news-card__banner-dots span,
    .news-page--category .news-card__banner-dots span {
        animation: none !important;
        transform: none !important;
    }
}

.news-page--article .news-article-cover--banner {
    position: relative;
}

.news-page--article .news-article-cover--banner::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
        radial-gradient(circle at 18% 24%, rgba(var(--accent-bright-rgb), 0.2), transparent 34%),
        linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.06) 34%, rgba(255, 255, 255, 0.16) 48%, transparent 70%);
    mix-blend-mode: screen;
    opacity: 0.24;
    pointer-events: none;
    animation: newsArticleBannerSheen 18s infinite ease-in-out;
}

.news-page--article .news-article-cover--banner .news-card__banner-shade {
    z-index: 3;
}

.news-page--article .news-article-cover--banner .news-card__banner-dots {
    z-index: 4;
}

.news-page--article .news-article-cover--banner .news-card__banner-image {
    animation: newsArticleBannerZoom 18s infinite ease-in-out !important;
    animation-delay: var(--news-banner-delay, 0s) !important;
    will-change: transform;
}

@media (prefers-reduced-motion: no-preference) and (max-width: 980px) {
    .news-page--listing .news-card__banner-slide,
    .news-page--category .news-card__banner-slide {
        animation: newsCardBannerCycle 18s infinite ease-in-out !important;
        animation-delay: var(--news-banner-delay, 0s) !important;
    }

    .news-page--listing .news-card__banner-image,
    .news-page--category .news-card__banner-image {
        animation: newsCardBannerZoomLite 18s infinite ease-in-out !important;
        animation-delay: var(--news-banner-delay, 0s) !important;
    }

    .news-page--listing .news-card__banner-dots span,
    .news-page--category .news-card__banner-dots span {
        animation: newsCardBannerDot 18s infinite ease-in-out !important;
        animation-delay: var(--news-banner-delay, 0s) !important;
    }
}

@media (hover: none), (pointer: coarse) {
    .news-page--article .news-article-cover--banner::after {
        opacity: 0.18;
        animation-duration: 22s;
    }
}

.seo-page .news-breadcrumbs {
    margin-bottom: 20px;
}

.seo-page .news-article-intro {
    align-self: center;
}

.seo-page .news-article-cover img {
    min-height: clamp(320px, 38vw, 520px);
}

.seo-cta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 24px;
}

.seo-faq__item {
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    border-radius: 0;
    background: rgba(255, 255, 255, 0.72);
    box-shadow: 0 14px 30px rgba(7, 36, 66, 0.06);
    overflow: hidden;
}

.seo-faq__item + .seo-faq__item {
    margin-top: 12px;
}

.seo-faq__item summary {
    cursor: pointer;
    padding: 16px 18px;
    color: var(--accent);
    font-weight: 800;
}

.seo-faq__item p {
    margin: 0;
    padding: 0 18px 18px;
}

.section--event-promo {
    background:
        radial-gradient(circle at top left, rgba(var(--accent-bright-rgb), 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(239, 245, 251, 0.97));
}

.event-promo-shell {
    display: grid;
    gap: 24px;
}

.event-promo-hero {
    display: grid;
    grid-template-columns: minmax(0, 400px) minmax(0, 1fr);
    gap: 24px;
    align-items: stretch;
}

.event-promo-poster {
    position: relative;
    padding: 22px;
    border-radius: 0;
    overflow: hidden;
    background:
        radial-gradient(circle at 20% 20%, rgba(var(--accent-bright-rgb), 0.24), transparent 30%),
        linear-gradient(160deg, var(--hero-navy-soft) 0%, #0b1f36 56%, var(--hero-navy) 100%);
    box-shadow: 0 28px 60px rgba(3, 14, 24, 0.24);
}

.event-promo-poster::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 84% 18%, rgba(255, 255, 255, 0.16), transparent 26%),
        linear-gradient(135deg, transparent 0%, rgba(255, 255, 255, 0.08) 42%, transparent 78%);
    pointer-events: none;
}

.event-promo-poster__badge {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 18px;
    border-radius: 999px;
    background: rgba(255, 236, 191, 0.18);
    border: 1px solid rgba(255, 236, 191, 0.28);
    color: rgba(255, 244, 214, 0.96);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.event-promo-poster__frame {
    position: relative;
    z-index: 1;
    margin-top: 18px;
    overflow: hidden;
    border-radius: 0;
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow: 0 18px 36px rgba(5, 17, 35, 0.26);
}

.event-promo-poster__frame img {
    display: block;
    width: 100%;
    min-height: 620px;
    object-fit: cover;
    object-position: center top;
}

.event-promo-intro {
    display: grid;
    align-content: start;
    gap: 18px;
    padding: 32px;
    border-radius: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.1);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(239, 245, 251, 0.96));
    box-shadow: 0 24px 56px rgba(7, 28, 54, 0.1);
}

.event-promo-intro h1 {
    margin: 0;
    text-align: left;
}

.event-promo-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.event-promo-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    border-radius: 999px;
    background: rgba(var(--accent-bright-rgb), 0.08);
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    color: var(--accent);
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.event-promo-story {
    display: grid;
    gap: 12px;
}

.event-promo-story h2 {
    margin: 0;
    text-align: left;
    font-size: clamp(1.5rem, 2vw, 2rem);
}

.event-promo-story p {
    margin: 0;
    color: rgba(49, 68, 89, 0.88);
    line-height: 1.82;
}

.event-promo-socials,
.event-promo-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.event-promo-social,
.event-promo-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    border-radius: 999px;
    border: 1px solid rgba(var(--accent-rgb), 0.12);
    background: rgba(255, 255, 255, 0.9);
    color: var(--accent);
    text-decoration: none;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.event-promo-social:hover,
.event-promo-link:hover {
    transform: translateY(-1px);
    border-color: rgba(var(--accent-rgb), 0.22);
    box-shadow: 0 14px 24px rgba(7, 28, 54, 0.08);
}

.event-promo-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.event-promo-card {
    padding: 28px;
    border-radius: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.1);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(239, 245, 251, 0.96));
    box-shadow: 0 20px 46px rgba(7, 28, 54, 0.08);
}

.event-promo-card--gallery,
.event-promo-card--faq {
    grid-column: 1 / -1;
}

.event-promo-card__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: rgba(var(--accent-rgb), 0.78);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.event-promo-card h2 {
    margin: 10px 0 0;
    text-align: left;
    font-size: clamp(1.45rem, 2vw, 1.95rem);
}

.event-promo-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 20px;
}

.event-promo-facts div {
    padding: 16px 18px;
    border-radius: 0;
    background: rgba(var(--accent-bright-rgb), 0.08);
    border: 1px solid rgba(var(--accent-rgb), 0.08);
}

.event-promo-facts dt {
    color: rgba(var(--accent-rgb), 0.74);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.event-promo-facts dd {
    margin: 10px 0 0;
    color: var(--accent);
    font-size: 1.02rem;
    font-weight: 700;
    line-height: 1.56;
}

.event-promo-session {
    margin-top: 20px;
    padding: 24px;
    border-radius: 0;
    background:
        radial-gradient(circle at 18% 18%, rgba(var(--accent-bright-rgb), 0.16), transparent 26%),
        linear-gradient(160deg, var(--hero-navy-soft) 0%, #0b1f36 58%, var(--hero-navy) 100%);
    box-shadow: 0 20px 42px rgba(3, 14, 24, 0.24);
}

.event-promo-session strong {
    display: block;
    color: #fff;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2.6rem, 6vw, 4.2rem);
    line-height: 0.9;
    letter-spacing: 0.04em;
}

.event-promo-session span {
    display: block;
    margin-top: 10px;
    color: rgba(255, 240, 204, 0.92);
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

.event-promo-session p {
    margin: 16px 0 0;
    color: rgba(255, 255, 255, 0.84);
    line-height: 1.78;
}

.event-promo-list {
    display: grid;
    gap: 12px;
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
}

.event-promo-list li {
    position: relative;
    padding-left: 20px;
    color: rgba(49, 68, 89, 0.9);
    line-height: 1.74;
}

.event-promo-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.7em;
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: var(--accent);
}

.event-promo-copy {
    display: grid;
    gap: 12px;
    margin-top: 20px;
}

.event-promo-copy p {
    margin: 0;
    color: rgba(49, 68, 89, 0.9);
    line-height: 1.82;
}

.event-promo-gallery {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 20px;
}

.event-promo-gallery__item {
    margin: 0;
    overflow: hidden;
    border-radius: 0;
    border: 1px solid rgba(var(--accent-rgb), 0.08);
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 18px 36px rgba(7, 36, 66, 0.08);
}

.event-promo-gallery__item img {
    display: block;
    width: 100%;
    height: 240px;
    object-fit: cover;
}

.event-promo-gallery__item figcaption {
    padding: 12px 14px 16px;
    color: rgba(49, 68, 89, 0.86);
    font-size: 0.86rem;
    line-height: 1.58;
}

.event-promo-card--faq .news-article-block {
    margin: 0;
    padding: 0;
    border: 0;
}

.event-promo-card--faq .news-article-block h2 {
    margin: 0 0 18px;
    text-align: left;
}

@media (max-width: 1180px) {
    .event-promo-hero,
    .event-promo-grid {
        grid-template-columns: 1fr;
    }

    .event-promo-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 780px) {
    .event-promo-intro,
    .event-promo-card,
    .event-promo-poster {
        padding: 22px;
    }

    .event-promo-poster__frame img {
        min-height: 460px;
    }

    .event-promo-facts,
    .event-promo-gallery {
        grid-template-columns: 1fr;
    }

    .event-promo-social,
    .event-promo-link,
    .event-promo-chip {
        width: 100%;
    }
}

.event-showcase-page {
    background: #eef3f8;
    color: var(--ink-strong);
}

.event-showcase-main {
    width: min(1280px, calc(100% - 56px));
    margin: 0 auto;
    padding: 18px 0 0;
}

.event-showcase-header {
    position: sticky;
    top: 0;
    z-index: 40;
    background: linear-gradient(180deg, var(--hero-navy) 0%, var(--hero-navy-soft) 100%);
    color: #fff;
    box-shadow: 0 12px 24px rgba(3, 14, 24, 0.22);
}

.event-showcase-header__inner {
    width: min(1280px, calc(100% - 56px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 18px;
    padding: 6px 0 5px;
}

.event-showcase-header__menu,
.event-showcase-header__brand,
.event-showcase-header__action {
    text-decoration: none;
}

.event-showcase-header__menu {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--accent-bright);
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    font-size: 0.68rem;
}

.event-showcase-header__menu-icon {
    display: inline-flex;
    flex-direction: column;
    gap: 4px;
}

.event-showcase-header__menu-icon span {
    width: 26px;
    height: 3px;
    border-radius: 999px;
    background: currentColor;
}

.event-showcase-header__brand {
    display: grid;
    justify-items: center;
    gap: 0;
    color: #fff;
}

.event-showcase-header__brand-mark {
    display: block;
    font-size: clamp(1.3rem, 2vw, 2rem);
    font-weight: 900;
    letter-spacing: 0.22em;
    text-indent: 0.22em;
}

.event-showcase-header__brand-copy {
    display: grid;
    gap: 1px;
    justify-items: center;
}

.event-showcase-header__brand-copy strong {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.event-showcase-header__brand-copy span {
    font-size: 0.56rem;
    color: var(--accent-bright);
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.event-showcase-header__actions {
    display: inline-flex;
    align-items: center;
    gap: 16px;
    justify-self: end;
}

.event-showcase-header__action,
.event-showcase-header__lang {
    color: var(--accent-bright);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.event-showcase {
    display: grid;
    gap: 20px;
    padding-bottom: 28px;
}

.event-showcase-hero {
    display: grid;
    grid-template-columns: minmax(280px, 380px) minmax(0, 1fr);
    gap: 26px;
    align-items: start;
}

.event-showcase-poster {
    position: relative;
    padding: 12px 0 0;
    overflow: hidden;
    background: linear-gradient(180deg, var(--hero-navy-soft) 0%, var(--hero-navy) 100%);
    box-shadow: 0 18px 38px rgba(3, 14, 24, 0.22);
}

.event-showcase-poster::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 18% 24%, rgba(255, 255, 255, 0.2) 0 2px, transparent 3px),
        radial-gradient(circle at 72% 34%, rgba(255, 255, 255, 0.18) 0 1.5px, transparent 3px),
        radial-gradient(circle at 48% 70%, rgba(255, 255, 255, 0.14) 0 1.5px, transparent 3px);
    background-size: 140px 140px;
    opacity: 0.32;
    pointer-events: none;
}

.event-showcase-poster__badge {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 12px;
    padding: 8px 16px;
    border-radius: 999px;
    border: 2px solid rgba(var(--accent-bright-rgb), 0.88);
    color: #b8f5ff;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.event-showcase-poster__frame {
    position: relative;
    z-index: 1;
    margin-top: 10px;
    overflow: hidden;
    display: block;
    padding: 0;
    background: transparent;
    box-shadow: none;
}

.event-showcase-poster__frame img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
}

.event-showcase-hero__copy {
    padding-top: 6px;
}

.event-showcase-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
    color: #2c2c2c;
    font-size: 0.94rem;
}

.event-showcase-breadcrumbs a {
    color: inherit;
    text-decoration: none;
}

.event-showcase-breadcrumbs span {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: var(--accent-bright);
}

.event-showcase-kicker {
    display: inline-block;
    color: var(--accent);
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.event-showcase-hero__copy h1 {
    margin: 12px 0 0;
    font-size: clamp(2.15rem, 4.5vw, 4rem);
    font-weight: 300;
    letter-spacing: 0.03em;
    line-height: 0.94;
    text-transform: uppercase;
}

.event-showcase-divider {
    width: min(100%, 300px);
    height: 5px;
    margin-top: 18px;
    background: var(--accent-bright);
}

.event-showcase-date {
    margin-top: 18px;
    font-size: clamp(1.7rem, 3.8vw, 3rem);
    font-weight: 900;
    line-height: 1;
    text-transform: uppercase;
}

.event-showcase-meta {
    margin-top: 8px;
    color: #2c2c2c;
    font-size: clamp(0.96rem, 1.7vw, 1.16rem);
    font-weight: 600;
    letter-spacing: 0.03em;
}

.event-showcase-story {
    display: grid;
    gap: 12px;
    margin-top: 20px;
}

.event-showcase-story p {
    margin: 0;
    color: #2d2d2d;
    font-size: clamp(0.98rem, 1.45vw, 1.05rem);
    line-height: 1.62;
}

.event-showcase-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 18px;
}

.event-showcase-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 24px;
    background: var(--accent);
    border: 1px solid var(--accent);
    color: #fff;
    text-decoration: none;
    font-size: 0.84rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.event-showcase-button:hover,
.event-showcase-button:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 18px 28px rgba(7, 28, 54, 0.16);
}

.event-showcase-button--ghost {
    background: transparent;
    color: var(--accent);
}

.event-showcase-grid {
    display: grid;
    grid-template-columns: minmax(320px, 0.42fr) minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.event-showcase-grid__sidebar,
.event-showcase-grid__content {
    display: grid;
    gap: 18px;
}

.event-showcase-card {
    padding: 22px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(233, 241, 249, 0.96));
    box-shadow: 0 12px 26px rgba(7, 28, 54, 0.07);
}

.event-showcase-card h2 {
    margin: 0;
    font-size: clamp(1.35rem, 2.2vw, 1.7rem);
    font-weight: 400;
    line-height: 1.2;
    text-transform: uppercase;
}

.event-showcase-card__kicker {
    display: inline-block;
    color: #111;
    font-size: 0.9rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.event-showcase-card__line {
    width: 76px;
    height: 4px;
    margin-top: 12px;
    background: var(--accent-bright);
}

.event-showcase-card__value {
    display: block;
    margin-top: 20px;
    font-size: clamp(1.45rem, 2.8vw, 1.8rem);
    font-weight: 900;
    line-height: 1.12;
}

.event-showcase-card__note {
    margin: 12px 0 0;
    color: #2d2d2d;
    font-size: 0.94rem;
    line-height: 1.62;
}

.event-showcase-facts {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
    gap: 14px 22px;
    margin: 18px 0 0;
}

.event-showcase-facts div {
    display: contents;
}

.event-showcase-facts dt,
.event-showcase-facts dd {
    margin: 0;
    font-size: 1rem;
    line-height: 1.38;
}

.event-showcase-facts dt {
    color: #111;
}

.event-showcase-facts dd {
    color: #111;
    font-weight: 500;
}

.event-showcase-sessions {
    display: grid;
    gap: 16px;
    margin-top: 20px;
}

.event-showcase-session-item strong,
.event-showcase-session-item span {
    display: block;
}

.event-showcase-session-item strong {
    font-size: clamp(1.35rem, 2.6vw, 1.65rem);
    font-weight: 900;
    line-height: 1.12;
}

.event-showcase-session-item span {
    margin-top: 4px;
    font-size: clamp(1.22rem, 2.4vw, 1.45rem);
    font-weight: 800;
    line-height: 1.12;
}

.event-showcase-card__site-link {
    display: block;
    margin-top: 20px;
    color: #111;
    font-size: 1.02rem;
    font-weight: 500;
    line-height: 1.55;
    text-decoration: underline;
    text-underline-offset: 0.2em;
    overflow-wrap: anywhere;
}

.event-showcase-info-copy {
    display: grid;
    gap: 14px;
    margin-top: 18px;
}

.event-showcase-info-copy p {
    margin: 0;
    color: #2d2d2d;
    font-size: 1.04rem;
    line-height: 1.72;
}

.event-showcase-share {
    margin-top: 20px;
}

.event-showcase-share > span {
    display: block;
    color: #5b5b5b;
    font-size: 1rem;
}

.event-showcase-share__links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px;
}

.event-showcase-share__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 120px;
    min-height: 44px;
    padding: 0 16px;
    border: 1px solid rgba(var(--accent-rgb), 0.16);
    background: rgba(255, 255, 255, 0.58);
    color: var(--accent);
    text-decoration: none;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.event-showcase-list {
    display: grid;
    gap: 14px;
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
}

.event-showcase-list li {
    position: relative;
    padding-left: 18px;
    color: #2d2d2d;
    font-size: 1.04rem;
    line-height: 1.72;
}

.event-showcase-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.72em;
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: var(--accent-bright);
}

.event-showcase-footer {
    background: linear-gradient(180deg, var(--hero-navy) 0%, var(--hero-navy-soft) 100%);
    color: #fff;
    padding: 22px 0 24px;
}

.event-showcase-footer__inner {
    width: min(1240px, calc(100% - 48px));
    margin: 0 auto;
}

.event-showcase-footer__grid {
    display: grid;
    grid-template-columns: minmax(190px, 0.85fr) minmax(320px, 1.12fr) minmax(210px, 0.72fr);
    gap: 22px;
    align-items: start;
}

.event-showcase-footer__column h2 {
    margin: 4px 0 0;
    color: #fff;
    font-family: 'Manrope', sans-serif;
    font-size: clamp(1.02rem, 1.25vw, 1.18rem);
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1.08;
    text-shadow: none;
    -webkit-font-smoothing: antialiased;
    text-rendering: geometricPrecision;
}

.event-showcase-footer__kicker {
    color: rgba(255, 255, 255, 0.52);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

.event-showcase-footer__column p {
    margin: 8px 0 0;
    color: rgba(255, 255, 255, 0.86);
    font-size: 0.92rem;
    line-height: 1.46;
}

.event-showcase-footer__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 18px;
    margin-top: 12px;
    background: #f4f4f4;
    color: #111;
    text-decoration: none;
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    border: 1px solid #f4f4f4;
}

.event-showcase-footer__button--light {
    cursor: pointer;
}

.event-showcase-footer__form {
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.event-showcase-footer__form label {
    font-size: 0.88rem;
    font-weight: 600;
}

.event-showcase-footer__form input[type="email"] {
    width: 100%;
    min-height: 42px;
    padding: 0 14px;
    border: 1px solid rgba(255, 255, 255, 0.36);
    background: transparent;
    color: #fff;
    font-size: 0.92rem;
}

.event-showcase-footer__form input[type="email"]::placeholder {
    color: rgba(255, 255, 255, 0.5);
}

.event-showcase-footer__check {
    display: grid;
    grid-template-columns: 19px 1fr;
    gap: 10px;
    align-items: start;
    color: rgba(255, 255, 255, 0.88);
}

.event-showcase-footer__check input {
    width: 19px;
    height: 19px;
    margin: 0;
    accent-color: var(--accent-bright);
}

.event-showcase-footer__check span {
    font-size: 0.85rem;
    line-height: 1.42;
}

.event-showcase-footer__socials {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px;
}

.event-showcase-footer__social-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    color: #fff;
    text-decoration: none;
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.event-showcase-footer__bottom {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 18px;
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.event-showcase-footer__nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
}

.event-showcase-footer__nav-link {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    color: #fff;
    text-decoration: none;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.event-showcase-footer__support {
    min-width: min(100%, 330px);
    padding: 14px 16px;
    background: #efefef;
    color: #111;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.18);
}

.event-showcase-footer__support-title {
    display: block;
    color: #111;
    font-family: 'Manrope', sans-serif;
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    line-height: 1.1;
    text-shadow: none;
}

.event-showcase-footer__support-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.event-showcase-footer__support-pill {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    background: rgba(var(--accent-bright-rgb), 0.12);
    color: var(--accent);
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.event-showcase-footer__copy {
    margin: 10px 0 0;
    color: rgba(255, 255, 255, 0.64);
    font-size: 0.78rem;
}

@media (max-width: 1180px) {
    .event-showcase-hero,
    .event-showcase-grid,
    .event-showcase-footer__bottom {
        grid-template-columns: 1fr;
        display: grid;
    }

    .event-showcase-hero__copy {
        padding-top: 0;
    }

    .event-showcase-footer__grid {
        grid-template-columns: minmax(0, 0.84fr) minmax(0, 1.16fr);
        gap: 18px 20px;
    }

    .event-showcase-footer__column--newsletter {
        grid-column: 1 / -1;
    }
}

@media (max-width: 860px) {
    .event-showcase-main,
    .event-showcase-header__inner,
    .event-showcase-footer__inner {
        width: min(100%, calc(100% - 32px));
    }

    .event-showcase-header__inner {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
        gap: 10px;
        padding: 5px 0 4px;
    }

    .event-showcase-header__actions {
        justify-self: center;
    }

    .event-showcase-poster__frame img {
        height: auto;
    }

    .event-showcase-facts {
        grid-template-columns: 1fr;
    }

    .event-showcase-footer {
        padding: 18px 0 20px;
    }

    .event-showcase-footer__grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .event-showcase-footer__column--newsletter {
        grid-column: auto;
    }

    .event-showcase-footer__bottom {
        gap: 14px;
        margin-top: 14px;
        padding-top: 14px;
    }

    .event-showcase-footer__support {
        min-width: 0;
        width: 100%;
    }
}

@media (max-width: 640px) {
    .event-showcase-main {
        padding-top: 16px;
    }

    .event-showcase-header__inner {
        gap: 8px;
        padding: 4px 0 3px;
    }

    .event-showcase-header__brand-mark {
        font-size: 1.12rem;
    }

    .event-showcase-header__brand-copy strong {
        font-size: 0.64rem;
    }

    .event-showcase-header__brand-copy span {
        font-size: 0.5rem;
        letter-spacing: 0.14em;
    }

    .event-showcase-header__menu,
    .event-showcase-header__action,
    .event-showcase-header__lang {
        font-size: 0.62rem;
    }

    .event-showcase-hero {
        gap: 16px;
    }

    .event-showcase-poster,
    .event-showcase-card {
        padding: 16px;
    }

    .event-showcase-poster__frame img {
        height: auto;
    }

    .event-showcase-story p,
    .event-showcase-info-copy p,
    .event-showcase-list li,
    .event-showcase-footer__column p {
        font-size: 1.02rem;
    }

    .event-showcase-actions,
    .event-showcase-share__links,
    .event-showcase-footer__socials {
        flex-direction: column;
    }

    .event-showcase-button,
    .event-showcase-share__link {
        width: 100%;
        justify-content: center;
    }

    .event-showcase-footer__inner {
        width: min(100%, calc(100% - 24px));
    }

    .event-showcase-footer__column h2 {
        font-size: 0.96rem;
    }

    .event-showcase-footer__column p {
        font-size: 0.88rem;
    }

    .event-showcase-footer__form {
        gap: 7px;
    }

    .event-showcase-footer__socials {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .event-showcase-footer__social-link {
        width: auto;
        min-height: 36px;
        padding: 0 10px;
        justify-content: center;
    }

    .event-showcase-footer__nav {
        gap: 8px 12px;
    }

    .event-showcase-footer__nav-link {
        width: auto;
        min-height: 26px;
        justify-content: flex-start;
        font-size: 0.76rem;
    }

.event-showcase-footer__support {
        padding: 12px 14px;
    }
}

.top-header--campaign {
    padding: 5px 24px 6px;
    background:
        radial-gradient(circle at 50% -18%, rgba(74, 188, 255, 0.18), transparent 34%),
        linear-gradient(180deg, rgba(7, 21, 35, 0.98) 0%, rgba(12, 34, 56, 0.98) 100%);
    border-bottom: 1px solid rgba(84, 218, 255, 0.14);
    box-shadow: 0 12px 24px rgba(1, 7, 18, 0.3);
    overflow: visible;
}

.top-header--campaign::before {
    content: '';
    position: absolute;
    inset: -36% auto -36% -24%;
    width: 38%;
    background: linear-gradient(
        112deg,
        transparent 6%,
        rgba(99, 223, 255, 0.04) 20%,
        rgba(99, 223, 255, 0.28) 44%,
        rgba(255, 255, 255, 0.16) 52%,
        rgba(99, 223, 255, 0.08) 68%,
        transparent 88%
    );
    transform: translateX(-220%) skewX(-20deg);
    filter: blur(6px);
    mix-blend-mode: screen;
    animation: campaignHeaderLightSweep 8.6s linear infinite;
    pointer-events: none;
    z-index: 0;
}

.top-header--campaign::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.02), transparent 38%),
        radial-gradient(circle at 18% 50%, rgba(84, 218, 255, 0.1), transparent 24%),
        radial-gradient(circle at 82% 42%, rgba(84, 218, 255, 0.08), transparent 26%);
    pointer-events: none;
    z-index: 0;
}

.top-header--campaign.is-scrolled {
    padding-top: 4px;
    padding-bottom: 5px;
    background:
        radial-gradient(circle at 50% -18%, rgba(74, 188, 255, 0.12), transparent 32%),
        linear-gradient(180deg, rgba(4, 9, 21, 0.985) 0%, rgba(5, 13, 28, 0.985) 100%);
    border-bottom-color: rgba(84, 218, 255, 0.18);
    box-shadow: 0 10px 20px rgba(1, 7, 18, 0.26);
}

.top-header--campaign .top-header__inner {
    width: min(1620px, 100%);
    min-height: 60px;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 14px;
    overflow: visible;
    z-index: 1;
}

.top-header__start,
.top-header__quick {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    position: relative;
    z-index: 2;
}

.top-header__quick {
    justify-self: end;
    gap: 14px;
}

.top-header__social {
    gap: 8px;
}

.top-header__social .social-link {
    width: 30px;
    height: 30px;
    border-color: rgba(var(--accent-bright-rgb), 0.16);
    background: rgba(255, 255, 255, 0.06);
    box-shadow: none;
}

.top-header__social .social-link svg {
    width: 14px;
    height: 14px;
}

.top-header__social .social-link:hover,
.top-header__social .social-link:focus-visible {
    background: rgba(var(--accent-bright-rgb), 0.12);
    border-color: rgba(var(--accent-bright-rgb), 0.24);
    box-shadow: 0 12px 24px rgba(0, 18, 36, 0.18);
}

.top-header__start {
    justify-self: start;
}

.top-header--campaign .menu-toggle--campaign {
    display: inline-flex;
    width: 32px;
    height: 32px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--accent-bright);
    gap: 4px;
    box-shadow: none;
}

.top-header--campaign .menu-toggle--campaign span {
    width: 20px;
    height: 2.25px;
    border-radius: 999px;
    background: currentColor;
}

.top-header--campaign .menu-toggle--campaign:hover,
.top-header--campaign .menu-toggle--campaign:focus-visible {
    background: transparent;
    color: #7be7ff;
    transform: translateY(-1px);
    box-shadow: none;
    border-color: transparent;
}

.top-header--campaign .top-header__home,
.top-header--campaign .top-header__quick-link,
.top-header--campaign .top-header__lang {
    color: var(--accent-bright);
    text-decoration: none;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.top-header--campaign .top-header__home:hover,
.top-header--campaign .top-header__home:focus-visible,
.top-header--campaign .top-header__quick-link:hover,
.top-header--campaign .top-header__quick-link:focus-visible {
    color: #b5f5ff;
    outline: none;
}

.site-brand--campaign {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    justify-self: center;
    color: #fff;
    text-decoration: none;
    z-index: 2;
}

.site-brand--campaign:hover,
.site-brand--campaign:focus-visible {
    transform: translateY(-1px);
    outline: none;
}

.site-brand--campaign .site-brand__mark {
    display: block;
    color: #ffffff;
    font-size: clamp(1.36rem, 2.1vw, 2.05rem);
    font-weight: 900;
    letter-spacing: 0.16em;
    line-height: 1;
    text-indent: 0.16em;
}

.site-brand--campaign .site-brand__copy {
    align-items: flex-start;
    text-align: left;
    gap: 2px;
}

.site-brand--campaign strong {
    font-size: 0.66rem;
    letter-spacing: 0.1em;
}

.site-brand--campaign .site-brand__copy span {
    color: var(--accent-bright);
    font-size: 0.54rem;
    letter-spacing: 0.16em;
}

.header-nav-shell--campaign {
    position: absolute;
    top: calc(100% + 14px);
    left: auto;
    right: 0;
    display: none;
    grid-template-columns: minmax(0, 1fr);
    justify-items: stretch;
    gap: 10px;
    width: min(246px, calc(100vw - 40px));
    max-width: 100%;
    padding: 14px;
    border: 1px solid rgba(84, 218, 255, 0.16);
    border-radius: 0;
    background:
        linear-gradient(180deg, rgba(5, 17, 36, 0.985) 0%, rgba(4, 10, 22, 0.985) 100%);
    box-shadow: 0 32px 64px rgba(1, 8, 18, 0.34);
    backdrop-filter: blur(18px);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    pointer-events: none;
    overflow: hidden;
    z-index: 8;
}

.header-nav-shell--campaign.is-open {
    display: grid;
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}

.site-menu--campaign {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 8px;
}

.site-menu--campaign a {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 42px;
    justify-content: flex-start;
    padding: 10px 14px;
    border-radius: 0;
    border: 1px solid rgba(84, 218, 255, 0.14);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(235, 250, 255, 0.94);
    box-shadow: none;
}

.site-menu--campaign a:hover,
.site-menu--campaign a:focus-visible,
.site-menu--campaign a.is-active {
    background: rgba(84, 218, 255, 0.12);
    border-color: rgba(84, 218, 255, 0.3);
    box-shadow: 0 14px 28px rgba(2, 11, 26, 0.18);
}

.header-cta--campaign {
    display: inline-flex;
    align-items: center;
    justify-self: stretch;
    width: 100%;
    min-height: 44px;
    justify-content: center;
    padding: 11px 16px;
    border-radius: 0;
    border: 1px solid rgba(84, 218, 255, 0.18);
    background: linear-gradient(180deg, rgba(84, 218, 255, 0.2), rgba(255, 255, 255, 0.08));
}

.hero-breadcrumb-band {
    display: none;
}

.hero-breadcrumb-band__inner {
    width: min(1620px, 100%);
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    padding: 16px 0 14px;
    color: #31445a;
    font-size: 1rem;
}

.hero-breadcrumb-band__inner a,
.hero-breadcrumb-band__inner strong {
    color: inherit;
    text-decoration: none;
    font-weight: 500;
}

.hero-breadcrumb-band__inner strong {
    color: var(--accent);
    font-weight: 700;
}

.hero-breadcrumb-band__inner span {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background:
        radial-gradient(circle at 32% 32%, rgba(var(--accent-bright-rgb), 0.38), rgba(var(--accent-rgb), 0.96) 68%);
    box-shadow: 0 0 0 1px rgba(var(--accent-rgb), 0.08);
    flex: 0 0 auto;
}

.hero--campaign {
    height: auto;
    min-height: 0;
    padding: 24px 32px 0;
    background:
        linear-gradient(180deg, rgba(245, 247, 251, 0.98) 0%, rgba(255, 255, 255, 1) 100%);
}

.hero--campaign::after {
    display: none;
}

.hero-shell {
    width: min(1620px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(340px, 476px) minmax(0, 1fr);
    gap: 32px;
    align-items: start;
}

.hero--campaign .hero-media {
    position: relative;
    inset: auto;
    padding: 24px 0 0;
    width: 100%;
    transform: translate3d(0, 0, 0);
}

.hero--campaign .hero-media::after {
    display: none;
}

.hero-poster-card {
    position: relative;
    overflow: hidden;
    padding: 16px 16px 0;
    background: linear-gradient(180deg, var(--hero-navy-soft) 0%, var(--hero-navy) 100%);
    box-shadow: 0 24px 48px rgba(10, 20, 53, 0.2);
}

.hero-poster-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 22% 24%, rgba(255, 255, 255, 0.16) 0 2px, transparent 3px),
        radial-gradient(circle at 72% 30%, rgba(255, 255, 255, 0.14) 0 1.5px, transparent 3px),
        radial-gradient(circle at 48% 70%, rgba(255, 255, 255, 0.12) 0 1.5px, transparent 3px);
    background-size: 122px 122px;
    opacity: 0.38;
    pointer-events: none;
}

.hero-poster-badge {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 20px;
    border-radius: 999px;
    border: 2px solid rgba(var(--accent-bright-rgb), 0.88);
    color: #b8f5ff;
    font-size: 0.92rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.hero-poster-frame {
    position: relative;
    z-index: 1;
    margin-top: 12px;
}

.hero-poster-frame img {
    display: block;
    width: 100%;
    height: auto;
}

.hero--campaign .hero-content {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    margin: 0;
    padding: 34px 0 0;
}

.hero--campaign .hero-content::before,
.hero--campaign .hero-content::after,
.hero--campaign .hero-copy::before,
.hero--campaign .hero-copy::after {
    content: none;
    display: none;
}

.hero-copy--campaign {
    width: min(100%, 900px);
    max-width: none;
    min-width: 0;
    padding: 0;
    margin: 0;
    background: transparent;
    color: #111;
    box-shadow: none;
}

.hero-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
    color: #1a1f28;
    font-size: 0.98rem;
}

.hero-breadcrumbs a {
    color: inherit;
    text-decoration: none;
}

.hero-breadcrumbs span {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: var(--accent-bright);
}

.hero--campaign .eyebrow {
    margin: 26px 0 0;
    color: var(--accent);
    font-size: 0.92rem;
    font-weight: 800;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

.hero--campaign h1 {
    margin: 18px 0 0;
    color: #101216;
    font-size: clamp(3.9rem, 7vw, 6.9rem);
    font-weight: 300;
    letter-spacing: 0.02em;
    line-height: 0.94;
    text-transform: uppercase;
    max-width: 11ch;
}

.hero-divider {
    width: min(100%, 460px);
    height: 6px;
    margin-top: 22px;
    background: var(--accent-bright);
}

.hero-date {
    margin: 28px 0 0;
    color: #111;
    font-size: clamp(2.4rem, 4.8vw, 4.6rem);
    font-weight: 900;
    line-height: 1;
    text-transform: uppercase;
}

.hero-meta {
    margin: 12px 0 0;
    color: #273241;
    font-size: clamp(1.08rem, 2vw, 1.42rem);
    font-weight: 600;
    letter-spacing: 0.03em;
}

.hero-lead {
    max-width: 58rem;
    margin: 24px 0 0;
    color: #243041;
    font-size: 1.12rem;
    line-height: 1.72;
}

.hero--campaign .hero-slogan {
    display: block;
    margin: 14px 0 0;
    color: var(--accent);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.hero--campaign .hero-actions {
    margin-top: 24px;
    align-items: center;
    gap: 14px;
}

.hero--campaign .btn {
    min-height: 48px;
    padding: 0 22px;
    border-radius: 999px;
    border: 1px solid rgba(var(--accent-bright-rgb), 0.16);
    background:
        radial-gradient(circle at 16% 18%, rgba(var(--accent-bright-rgb), 0.15), transparent 26%),
        linear-gradient(180deg, #163a67 0%, #0b213a 100%);
    color: #fff;
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    box-shadow: 0 14px 30px rgba(4, 16, 30, 0.18);
}

.hero--campaign .btn:hover,
.hero--campaign .btn:focus-visible {
    transform: translateY(-1px);
    background:
        radial-gradient(circle at 16% 18%, rgba(var(--accent-bright-rgb), 0.18), transparent 28%),
        linear-gradient(180deg, #1b4678 0%, #102a49 100%);
    border-color: rgba(var(--accent-bright-rgb), 0.2);
    box-shadow: 0 18px 32px rgba(7, 28, 54, 0.2);
}

.hero--campaign .btn.btn--ghost {
    background: rgba(8, 23, 39, 0.46);
    color: #ffffff;
    border-color: rgba(var(--accent-bright-rgb), 0.12);
}

.hero--campaign .btn.btn--ghost:hover,
.hero--campaign .btn.btn--ghost:focus-visible {
    background: rgba(8, 23, 39, 0.66);
    border-color: rgba(var(--accent-bright-rgb), 0.18);
}

.hero--campaign .scroll-cue {
    display: none;
}

@keyframes campaignHeaderLightSweep {
    0% {
        transform: translateX(-220%) skewX(-20deg);
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    28% {
        opacity: 0.42;
    }
    52% {
        transform: translateX(360%) skewX(-20deg);
        opacity: 0;
    }
    100% {
        transform: translateX(360%) skewX(-20deg);
        opacity: 0;
    }
}

@media (max-width: 1180px) {
    .top-header--campaign .top-header__inner {
        min-height: 78px;
        gap: 18px;
    }

    .hero-shell {
        grid-template-columns: minmax(280px, 420px) minmax(0, 1fr);
        gap: 24px;
    }

    .hero--campaign h1 {
        font-size: clamp(3.3rem, 6vw, 5.6rem);
    }
}

@media (max-width: 900px) {
    .top-header--campaign,
    .top-header--campaign.is-scrolled {
        padding: 10px 16px 12px;
    }

    .top-header--campaign .top-header__inner {
        min-height: 72px;
        gap: 12px;
    }

    .site-brand--campaign {
        display: flex;
        align-items: center;
        gap: 12px;
    }

    .top-header__quick {
        gap: 12px;
    }

    .top-header__social {
        gap: 6px;
    }

    .top-header__social .social-link {
        width: 28px;
        height: 28px;
    }

    .top-header__social .social-link svg {
        width: 13px;
        height: 13px;
    }

    .site-brand--campaign .site-brand__mark {
        font-size: 1.58rem;
        letter-spacing: 0.16em;
        text-indent: 0.16em;
        flex: 0 0 auto;
    }

    .site-brand--campaign .site-brand__copy {
        align-items: flex-start;
        text-align: left;
        gap: 3px;
    }

    .site-brand--campaign strong {
        font-size: 0.66rem;
        letter-spacing: 0.1em;
    }

    .site-brand--campaign .site-brand__copy span,
    .top-header--campaign .top-header__home,
    .top-header--campaign .top-header__quick-link,
    .top-header--campaign .top-header__lang {
        font-size: 0.6rem;
    }

    .header-nav-shell--campaign {
        width: min(236px, calc(100vw - 32px));
        padding: 13px;
    }

    .hero--campaign {
        padding: 18px 16px 0;
    }

    .hero-breadcrumb-band {
        padding: 0 16px;
    }

    .hero-breadcrumb-band__inner {
        padding: 14px 0 12px;
        font-size: 0.92rem;
    }

    .hero-shell {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .hero--campaign .hero-media {
        max-width: min(100%, 540px);
        padding-top: 0;
        margin: 0 auto;
    }

    .hero--campaign .hero-content {
        padding-top: 0;
    }

    .hero--campaign h1 {
        font-size: clamp(2.9rem, 9vw, 4.8rem);
    }

    .hero-date {
        font-size: clamp(2rem, 7vw, 3.3rem);
    }

    .hero-lead {
        font-size: 1rem;
    }
}

@media (max-width: 640px) {
    .top-header--campaign,
    .top-header--campaign.is-scrolled {
        padding: 6px 10px 7px;
    }

    .top-header--campaign .top-header__inner {
        min-height: 56px;
        gap: 8px;
    }

    .top-header__home {
        display: none;
    }

    .top-header__quick {
        gap: 6px;
    }

    .top-header--campaign .menu-toggle--campaign {
        width: 30px;
        height: 30px;
        gap: 4px;
    }

    .top-header--campaign .menu-toggle--campaign span {
        width: 20px;
        height: 2.25px;
    }

    .top-header__social {
        gap: 4px;
    }

    .top-header__social .social-link {
        width: 24px;
        height: 24px;
    }

    .top-header__social .social-link svg {
        width: 11px;
        height: 11px;
    }

    .site-brand--campaign {
        gap: 6px;
    }

    .site-brand--campaign .site-brand__mark {
        font-size: 0.96rem;
        letter-spacing: 0.1em;
        text-indent: 0.1em;
    }

    .site-brand--campaign strong {
        font-size: 0.42rem;
        letter-spacing: 0.08em;
    }

    .site-brand--campaign .site-brand__copy span,
    .top-header--campaign .top-header__quick-link,
    .top-header--campaign .top-header__lang {
        font-size: 0.4rem;
        letter-spacing: 0.08em;
    }

    .header-nav-shell--campaign {
        right: 0;
        width: min(224px, calc(100vw - 24px));
        padding: 12px;
        border-radius: 0;
    }

    .site-menu--campaign {
        gap: 7px;
    }

    .site-menu--campaign a,
    .header-cta--campaign {
        width: 100%;
        justify-content: center;
    }

    .hero--campaign {
        padding: 14px 12px 0;
    }

    .hero-breadcrumb-band {
        padding: 0 12px;
    }

    .hero-breadcrumb-band__inner {
        gap: 10px;
        padding: 12px 0 10px;
        font-size: 0.82rem;
    }

    .hero-breadcrumb-band__inner span {
        width: 10px;
        height: 10px;
    }

    .hero-poster-card {
        padding: 14px 14px 0;
    }

    .hero-poster-badge {
        padding: 8px 14px;
        font-size: 0.72rem;
        letter-spacing: 0.12em;
    }

    .hero-breadcrumbs {
        gap: 10px;
        font-size: 0.86rem;
    }

    .hero-breadcrumbs span {
        width: 8px;
        height: 8px;
    }

    .hero--campaign .eyebrow {
        margin-top: 18px;
        font-size: 0.74rem;
    }

    .hero--campaign h1 {
        font-size: clamp(2.38rem, 12vw, 3.9rem);
    }

    .hero-divider {
        margin-top: 16px;
        height: 5px;
    }

    .hero-date {
        margin-top: 18px;
        font-size: clamp(1.8rem, 10vw, 2.9rem);
    }

    .hero-meta {
        font-size: 0.98rem;
        line-height: 1.5;
    }

    .hero-lead,
    .hero--campaign .hero-slogan {
        font-size: 0.95rem;
        line-height: 1.6;
    }

    .hero--campaign .hero-actions {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }

    .hero--campaign .btn {
        width: 100%;
        justify-content: center;
        min-height: 50px;
        padding: 0 18px;
    }
}

/* Show page hero: desktop mosaic, mobile slider */
.seo-page--show-roberto-carlos-portugal .showcase-hero {
    display: block;
    padding: 8px;
    border-radius: 0;
    background:
        radial-gradient(circle at 16% 14%, rgba(82, 225, 255, 0.08), transparent 28%),
        linear-gradient(180deg, rgba(8, 24, 39, 0.94), rgba(5, 16, 27, 0.98));
    box-shadow: 0 26px 56px rgba(8, 31, 58, 0.12);
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__desktop {
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(220px, 0.76fr) minmax(220px, 0.76fr);
    grid-template-rows: minmax(248px, 1fr) minmax(220px, 1fr);
    gap: 10px;
    align-items: stretch;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__mobile {
    display: none;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__feature,
.seo-page--show-roberto-carlos-portugal .showcase-hero__tile {
    position: relative;
    overflow: hidden;
    background: #0b2238;
    box-shadow: 0 28px 58px rgba(8, 31, 58, 0.18);
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__feature {
    grid-row: 1 / span 2;
    min-height: 560px;
    border-radius: 0;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__tile {
    border-radius: 0;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__tile--wide {
    grid-column: 2 / span 2;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__tile--bottom-left {
    grid-column: 2;
    grid-row: 2;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__tile--bottom-right {
    grid-column: 3;
    grid-row: 2;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__feature img,
.seo-page--show-roberto-carlos-portugal .showcase-hero__tile img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__feature::after,
.seo-page--show-roberto-carlos-portugal .showcase-hero__tile::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(8, 24, 39, 0.02), transparent 20%),
        linear-gradient(180deg, rgba(5, 15, 26, 0.08), rgba(5, 15, 26, 0.24) 48%, rgba(5, 15, 26, 0.42));
    pointer-events: none;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__overlay {
    position: absolute;
    inset: auto 0 0 0;
    z-index: 1;
    display: grid;
    gap: 12px;
    padding: 36px 28px 30px;
    background:
        linear-gradient(180deg, rgba(6, 19, 32, 0) 0%, rgba(6, 19, 32, 0.18) 14%, rgba(6, 19, 32, 0.82) 58%, rgba(6, 19, 32, 0.94) 100%);
    color: #ffffff;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__brand {
    display: inline-flex;
    align-items: center;
    color: rgba(236, 244, 252, 0.92);
    font-size: 0.82rem;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__title {
    margin: 0;
    max-width: 8ch;
    color: #ffffff;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(4rem, 5.4vw, 5.8rem);
    font-weight: 600;
    line-height: 0.88;
    letter-spacing: -0.04em;
    text-wrap: balance;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__subtitle {
    margin: -2px 0 0;
    color: rgba(231, 241, 251, 0.84);
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.4;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__lead {
    margin: 0;
    max-width: 18ch;
    color: rgba(242, 247, 251, 0.92);
    font-size: 0.98rem;
    line-height: 1.42;
    text-wrap: pretty;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__note {
    margin: 2px 0 0;
    color: #ffffff;
    font-size: 0.86rem;
    font-weight: 900;
    letter-spacing: 0.2em;
    line-height: 1.4;
    text-transform: uppercase;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__actions {
    margin-top: 4px;
    gap: 12px;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn,
.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn.btn--ghost {
    min-height: 54px;
    padding: 0 22px;
    border-radius: 0;
    border: 1px solid rgba(255, 255, 255, 0.16);
    box-shadow: 0 18px 36px rgba(2, 10, 18, 0.22);
    font-family: 'Manrope', sans-serif;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn {
    border-color: rgba(123, 231, 255, 0.18);
    background:
        radial-gradient(circle at 78% 22%, rgba(79, 214, 255, 0.14), transparent 30%),
        radial-gradient(circle at 14% 0%, rgba(90, 181, 255, 0.14), transparent 34%),
        linear-gradient(180deg, rgba(12, 31, 51, 0.98) 0%, rgba(9, 25, 41, 0.985) 100%);
    color: #ffffff;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn.btn--ghost {
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.22);
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn:hover,
.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn:focus-visible,
.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn.btn--ghost:hover,
.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn.btn--ghost:focus-visible {
    transform: translateY(-1px);
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn:hover,
.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn:focus-visible {
    border-color: rgba(123, 231, 255, 0.3);
    background:
        radial-gradient(circle at 78% 22%, rgba(118, 236, 255, 0.2), transparent 32%),
        radial-gradient(circle at 14% 0%, rgba(90, 181, 255, 0.2), transparent 38%),
        linear-gradient(180deg, rgba(14, 37, 60, 0.985) 0%, rgba(8, 22, 37, 0.99) 100%);
    box-shadow: 0 22px 42px rgba(7, 22, 38, 0.24);
}

.seo-page--show-roberto-carlos-portugal .news-article-layout {
    margin-top: 38px;
}

@media (max-width: 1180px) {
    .seo-page--show-roberto-carlos-portugal .showcase-hero__desktop {
        grid-template-columns: minmax(0, 1fr) minmax(190px, 0.7fr) minmax(190px, 0.7fr);
        grid-template-rows: minmax(210px, 1fr) minmax(190px, 1fr);
        gap: 10px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__feature {
        min-height: 500px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__overlay {
        padding: 28px 22px 24px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__title {
        font-size: clamp(3.4rem, 5.2vw, 4.8rem);
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__lead {
        font-size: 1rem;
    }
}

@media (max-width: 920px) {
    .seo-page--show-roberto-carlos-portugal .news-breadcrumbs {
        display: none;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__desktop {
        display: none;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__mobile {
        display: grid;
        gap: 16px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__slider {
        width: 100%;
        max-width: none;
        justify-self: stretch;
        aspect-ratio: 16 / 10;
        border-radius: 0;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__slider::before {
        display: none;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__mobile-copy {
        display: grid;
        gap: 10px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__mobile-copy .showcase-hero__brand {
        color: rgba(19, 76, 123, 0.84);
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__mobile-copy .showcase-hero__title {
        max-width: 8ch;
        color: #0c3156;
        font-size: clamp(2.8rem, 12vw, 4.2rem);
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__mobile-copy .showcase-hero__subtitle {
        margin-top: 0;
        color: rgba(43, 62, 83, 0.76);
        font-size: 0.96rem;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__lead--mobile {
        max-width: 22ch;
        color: rgba(31, 48, 68, 0.9);
        font-size: 0.94rem;
        line-height: 1.5;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__note--mobile {
        color: var(--accent);
        font-size: 0.76rem;
        letter-spacing: 0.18em;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__actions {
        gap: 10px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn,
    .seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn.btn--ghost {
        width: 100%;
        justify-content: center;
        min-height: 52px;
    }

    .seo-page--show-roberto-carlos-portugal .news-article-layout {
        margin-top: 30px;
    }
}

@media (max-width: 640px) {
    .seo-page--show-roberto-carlos-portugal .showcase-hero {
        padding: 6px;
        border-radius: 0;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__slider {
        aspect-ratio: 5 / 6;
        border-radius: 0;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__mobile-copy {
        gap: 10px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__mobile-copy .showcase-hero__title {
        font-size: clamp(2.5rem, 13vw, 3.8rem);
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__mobile-copy .showcase-hero__subtitle {
        display: none;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__lead--mobile {
        font-size: 0.95rem;
        line-height: 1.58;
    }
}

/* Restore approved embedded header and compact footer */
.top-header {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    z-index: 220;
    padding: 10px 22px;
    background:
        radial-gradient(circle at 18% 0%, rgba(82, 225, 255, 0.05), transparent 24%),
        radial-gradient(circle at 82% 8%, rgba(82, 225, 255, 0.04), transparent 22%),
        linear-gradient(180deg, rgba(6, 18, 31, 0.99) 0%, rgba(4, 13, 24, 1) 100%);
    border-bottom: 1px solid rgba(123, 231, 255, 0.1);
    box-shadow: 0 18px 40px rgba(0, 11, 22, 0.22);
    backdrop-filter: none;
}

.top-header.is-scrolled {
    padding-top: 10px;
    padding-bottom: 10px;
    background:
        radial-gradient(circle at 18% 0%, rgba(82, 225, 255, 0.06), transparent 24%),
        radial-gradient(circle at 82% 8%, rgba(82, 225, 255, 0.05), transparent 22%),
        linear-gradient(180deg, rgba(6, 18, 31, 0.995) 0%, rgba(4, 13, 24, 1) 100%);
    border-bottom-color: rgba(123, 231, 255, 0.14);
    box-shadow: 0 20px 44px rgba(0, 11, 22, 0.28);
}

.top-header .top-header__inner {
    width: min(1400px, 100%);
    min-height: 60px;
    justify-content: space-between;
    gap: 14px;
    position: relative;
    overflow: visible;
}

.top-header .site-brand {
    gap: 11px;
    min-width: fit-content;
}

.top-header .site-brand__mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 0;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.04)),
        linear-gradient(180deg, rgba(83, 133, 185, 0.18), rgba(255, 255, 255, 0.04));
    color: #ffffff;
    font-size: 1.08rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    line-height: 1;
    text-indent: 0.12em;
    box-shadow: 0 16px 34px rgba(0, 23, 46, 0.16);
    flex: 0 0 auto;
}

.top-header .site-brand__copy {
    gap: 2px;
}

.top-header .site-brand__copy strong {
    font-size: 0.88rem;
    font-weight: 800;
    letter-spacing: 0.13em;
}

.top-header .site-brand__copy span {
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: rgba(226, 241, 255, 0.82);
}

.top-header .site-brand__signature {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    padding: 10px 12px;
    margin-left: 6px;
    border: 1px solid rgba(123, 231, 255, 0.1);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.02));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
    color: rgba(220, 236, 248, 0.7);
    font-size: 0.5rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    line-height: 1.2;
    text-transform: uppercase;
    white-space: nowrap;
    border-radius: 999px;
}

.top-header .site-brand__signature svg {
    width: 28px;
    height: 16px;
    flex: 0 0 auto;
    fill: none;
    stroke: rgba(123, 231, 255, 0.7);
    stroke-width: 2.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.top-header .site-brand__signature span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 18rem;
}

.top-header .top-header__actions {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
    padding: 6px 8px;
    border: 1px solid rgba(123, 231, 255, 0.1);
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.015));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
}

.top-header .menu-toggle {
    display: inline-flex;
    width: 44px;
    height: 44px;
    margin-left: 0;
    border-radius: 0;
    border: 1px solid rgba(123, 231, 255, 0.14);
    background: rgba(255, 255, 255, 0.06);
    color: #6de9ff;
    box-shadow: 0 14px 28px rgba(0, 11, 22, 0.18);
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

.top-header .menu-toggle span {
    width: 20px;
    height: 2px;
    background: currentColor;
}

.top-header .menu-toggle:hover,
.top-header .menu-toggle:focus-visible,
.top-header .menu-toggle:active {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(123, 231, 255, 0.28);
    box-shadow: 0 18px 34px rgba(0, 11, 22, 0.24);
    outline: none;
}

.top-header .header-nav-shell:not(.is-open) {
    display: none;
}

.top-header .header-nav-shell {
    position: fixed;
    right: 24px;
    left: auto;
    top: calc(var(--site-header-height, 92px) + 10px);
    width: min(320px, calc(100vw - 32px));
    max-height: calc(100vh - var(--site-header-height, 92px) - 26px);
    max-height: calc(100dvh - var(--site-header-height, 92px) - 26px);
    display: none;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 10px;
    padding: 14px;
    border-radius: 0;
    border: 1px solid rgba(123, 231, 255, 0.12);
    background:
        radial-gradient(circle at 18% 0%, rgba(82, 225, 255, 0.05), transparent 24%),
        radial-gradient(circle at 82% 8%, rgba(82, 225, 255, 0.04), transparent 22%),
        linear-gradient(180deg, rgba(6, 18, 31, 0.995) 0%, rgba(4, 13, 24, 1) 100%);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.03),
        0 24px 54px rgba(0, 11, 22, 0.34);
    overflow: auto;
    scrollbar-width: none;
    z-index: 240;
}

.top-header .header-nav-shell.is-open {
    display: flex;
}

.top-header .site-menu {
    width: 100%;
    justify-content: flex-start;
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    flex: 0 0 auto;
}

.top-header .site-menu a {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: center;
    min-height: 46px;
    padding: 12px 16px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

.top-header .site-menu a:hover,
.top-header .site-menu a:focus-visible,
.top-header .site-menu a:active {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.28);
    color: #ffffff;
    box-shadow: 0 14px 28px rgba(0, 24, 54, 0.18);
}

.top-header .site-menu a.is-active {
    background: rgba(255, 255, 255, 0.18);
    border-color: rgba(255, 255, 255, 0.34);
    color: #ffffff;
    box-shadow: 0 16px 28px rgba(0, 22, 44, 0.2);
}

.top-header .site-social {
    gap: 8px;
}

.top-header .site-social--desktop {
    display: none !important;
}

.top-header .site-social--mobile {
    display: flex;
}

.top-header .social-link {
    width: 38px;
    height: 38px;
    border-radius: 999px;
    border: 1px solid rgba(123, 231, 255, 0.14);
    background: rgba(255, 255, 255, 0.06);
    color: #6de9ff;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

.top-header .social-link svg {
    width: 17px;
    height: 17px;
}

.top-header .social-link:hover,
.top-header .social-link:focus-visible,
.top-header .social-link:active {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(123, 231, 255, 0.28);
    box-shadow: 0 14px 28px rgba(0, 11, 22, 0.2);
    outline: none;
}

.top-header .header-cta {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: center;
    min-width: 0;
    min-height: 46px;
    padding: 12px 16px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background:
        radial-gradient(circle at 18% 10%, rgba(82, 225, 255, 0.1), transparent 28%),
        linear-gradient(180deg, rgba(18, 53, 89, 0.98), rgba(9, 25, 41, 0.99));
    color: #ffffff;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    line-height: 1;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

.top-header .header-cta:hover,
.top-header .header-cta:focus-visible,
.top-header .header-cta:active {
    transform: translateY(-2px);
    background:
        radial-gradient(circle at 18% 10%, rgba(82, 225, 255, 0.14), transparent 28%),
        linear-gradient(180deg, rgba(21, 62, 102, 0.985), rgba(9, 25, 41, 0.995));
    border-color: rgba(123, 231, 255, 0.24);
    box-shadow: 0 16px 30px rgba(0, 11, 22, 0.24);
    outline: none;
}

.top-header .top-header__quick-link {
    display: none !important;
}

.site-footer {
    padding: 34px 24px 22px;
}

.site-footer .site-footer__inner {
    width: min(1400px, 100%);
    gap: 20px;
}

.site-footer .site-footer__grid {
    grid-template-columns: minmax(180px, 0.82fr) minmax(0, 1.12fr) minmax(180px, 0.78fr);
    gap: 24px;
}

.site-footer .site-footer__kicker {
    margin-bottom: 8px;
    font-size: 0.72rem;
    letter-spacing: 0.22em;
}

.site-footer .site-footer__title {
    margin-bottom: 10px;
    font-size: clamp(1.2rem, 1.7vw, 1.6rem);
    line-height: 1.1;
}

.site-footer .site-footer__location,
.site-footer .site-footer__lead {
    font-size: 0.96rem;
    line-height: 1.46;
}

.site-footer .site-footer__newsletter {
    margin-top: 12px;
}

.site-footer .site-footer__newsletter-label {
    margin-bottom: 8px;
    font-size: 0.82rem;
}

.site-footer .site-footer__newsletter-address {
    min-height: 44px;
    padding: 0 14px;
    font-size: 0.92rem;
}

.site-footer .site-footer__notes {
    margin-top: 12px;
    gap: 8px;
}

.site-footer .site-footer__notes li {
    padding-left: 24px;
    font-size: 0.86rem;
    line-height: 1.36;
}

.site-footer .site-footer__notes li::before {
    top: 0.18em;
    width: 14px;
    height: 14px;
}

.site-footer .site-footer__newsletter-actions {
    margin-top: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.site-footer .site-footer__button {
    min-height: 44px;
    padding: 0 14px;
    font-size: 0.66rem;
    letter-spacing: 0.16em;
}

.site-footer .site-footer__button--wide {
    width: auto;
}

.site-footer .site-footer__socials {
    gap: 10px;
}

.site-footer .site-footer__social-link {
    min-height: 40px;
    padding: 0 14px;
    font-size: 0.68rem;
    letter-spacing: 0.14em;
}

.site-footer .site-footer__bottom {
    gap: 18px;
    padding-top: 18px;
}

.site-footer .site-footer__nav {
    gap: 8px 16px;
}

.site-footer .site-footer__nav-link {
    font-size: 0.92rem;
}

.site-footer .site-footer__support {
    min-width: 0;
    padding: 14px 16px;
}

.site-footer .site-footer__support-title {
    margin-bottom: 10px;
    font-size: 0.86rem;
}

.site-footer .site-footer__support-list {
    gap: 8px;
}

.site-footer .site-footer__support-pill {
    min-height: 32px;
    padding: 0 12px;
    font-size: 0.64rem;
    letter-spacing: 0.14em;
}

.site-footer .site-footer__copy {
    font-size: 0.86rem;
}

@media (max-width: 1180px) {
    .top-header {
        padding: 14px 20px;
    }

    .top-header .top-header__inner {
        min-height: 48px;
        gap: 12px;
    }

    .top-header .site-brand__mark {
        width: 64px;
        height: 64px;
        border-radius: 0;
    }

    .top-header .site-brand__signature {
        font-size: 0.5rem;
    }

    .top-header .site-brand__signature svg {
        width: 30px;
        height: 18px;
    }

    .top-header .site-menu a {
        padding: 9px 11px;
        font-size: 0.66rem;
    }

    .site-footer {
        padding: 30px 18px 20px;
    }

    .site-footer .site-footer__grid {
        gap: 20px;
    }
}

@media (max-width: 900px) {
    .top-header,
    .top-header.is-scrolled {
        padding: 12px 14px;
    }

    .top-header .top-header__inner {
        min-height: 56px;
        gap: 10px;
        overflow: visible;
    }

    .top-header .site-brand {
        gap: 10px;
        max-width: calc(100% - 136px);
    }

    .top-header .site-brand__signature {
        display: none;
    }

    .top-header .site-brand__mark {
        width: 56px;
        height: 56px;
        border-radius: 0;
        font-size: 1.05rem;
    }

    .top-header .site-brand__copy strong {
        font-size: 0.82rem;
    }

    .top-header .site-brand__copy span {
        font-size: 0.62rem;
    }

    .top-header .menu-toggle {
        display: inline-flex;
        margin-left: 0;
        width: 42px;
        height: 42px;
    }

    .top-header .site-social--desktop {
        display: none;
    }

    .top-header .site-social--mobile {
        display: flex;
        margin-left: auto;
        gap: 6px;
    }

    .top-header .header-nav-shell:not(.is-open) {
        display: none;
    }

    .top-header .header-nav-shell {
        position: fixed;
        right: 12px;
        left: auto;
        top: var(--mobile-menu-top, 80px);
        width: min(320px, calc(100vw - 24px));
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        padding: 10px;
        border-radius: 0;
        max-height: calc(100vh - var(--mobile-menu-top, 80px) - 18px);
        max-height: calc(100dvh - var(--mobile-menu-top, 80px) - 18px);
        overflow: auto;
    }

    .top-header .header-nav-shell.is-open {
        display: flex;
    }

    .top-header .header-nav-shell .site-social--desktop {
        display: flex;
        justify-content: center;
        gap: 8px;
        margin-top: 2px;
    }

    .top-header .site-menu {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
        gap: 7px;
    }

    .top-header .site-menu a,
    .top-header .header-cta {
        width: 100%;
        justify-content: center;
        min-height: 42px;
        padding: 10px 14px;
        font-size: 0.68rem;
        line-height: 1.1;
    }

    .site-footer {
        padding: 26px 16px 18px;
    }

    .site-footer .site-footer__grid,
    .site-footer .site-footer__bottom {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .site-footer .site-footer__newsletter-actions {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .container {
        padding: 20px 12px 56px;
    }

    .section {
        margin-bottom: 18px;
        padding: 22px 14px;
    }

    .section > p + .gallery,
    .section > p + .video-showcase,
    .section > p + .song-showcase,
    .section > p + .song-list,
    .section > p + .centered,
    .section > p + .show-shell,
    .section > p + .contact-grid {
        margin-top: 18px;
    }

    .top-header,
    .top-header.is-scrolled {
        padding: 10px 12px;
    }

    .top-header .top-header__inner {
        min-height: 54px;
        gap: 8px;
    }

    .top-header .site-brand__mark {
        width: 48px;
        height: 48px;
        border-radius: 0;
        font-size: 0.96rem;
    }

    .top-header .site-brand__copy strong {
        font-size: 0.74rem;
    }

    .top-header .site-brand__copy span {
        display: none;
    }

    .top-header .site-social--mobile {
        display: flex;
    }

    .top-header .site-social--mobile .social-link,
    .top-header .header-nav-shell .site-social--desktop .social-link {
        width: 34px;
        height: 34px;
    }

    .top-header .menu-toggle {
        width: 40px;
        height: 40px;
    }

    .top-header .header-nav-shell {
        right: 12px;
        width: min(304px, calc(100vw - 24px));
        padding: 9px;
        gap: 7px;
    }

    .top-header .site-menu {
        gap: 6px;
    }

    .top-header .site-menu a,
    .top-header .header-cta {
        min-height: 40px;
        padding: 10px 12px;
        font-size: 0.64rem;
        letter-spacing: 0.11em;
    }

    .site-footer {
        padding: 22px 12px 16px;
    }

    .site-footer .site-footer__title {
        font-size: 1.26rem;
    }

    .site-footer .site-footer__location,
    .site-footer .site-footer__lead {
        font-size: 0.9rem;
    }

    .site-footer .site-footer__newsletter-address,
    .site-footer .site-footer__button,
    .site-footer .site-footer__social-link {
        min-height: 42px;
    }
}

/* Restored compact embedded header */
.top-header.top-header--campaign,
.top-header.top-header--campaign.is-scrolled {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    padding: 0 16px;
    background:
        radial-gradient(circle at 76% 22%, rgba(79, 214, 255, 0.12), transparent 22%),
        radial-gradient(circle at 12% 0%, rgba(90, 181, 255, 0.16), transparent 30%),
        linear-gradient(180deg, rgba(12, 31, 51, 0.98) 0%, rgba(9, 25, 41, 0.985) 100%);
    border-bottom: 1px solid rgba(123, 231, 255, 0.1);
    box-shadow: 0 14px 34px rgba(4, 14, 28, 0.16);
    backdrop-filter: none;
    overflow: visible;
}

.top-header.top-header--campaign::before,
.top-header.top-header--campaign::after {
    content: '';
    position: absolute;
    pointer-events: none;
    z-index: 0;
}

.top-header.top-header--campaign::before {
    inset: -30% auto -30% -14%;
    width: 24%;
    background: linear-gradient(
        114deg,
        transparent 2%,
        rgba(82, 225, 255, 0.04) 18%,
        rgba(82, 225, 255, 0.18) 38%,
        rgba(255, 255, 255, 0.16) 50%,
        rgba(82, 225, 255, 0.08) 64%,
        transparent 82%
    );
    transform: translateX(-240%) skewX(-18deg);
    animation: buttonSheen 7.6s linear infinite;
    mix-blend-mode: screen;
}

.top-header.top-header--campaign::after {
    inset: 0;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.05), transparent 34%),
        radial-gradient(circle at 82% 16%, rgba(82, 225, 255, 0.08), transparent 24%);
}

.top-header.top-header--campaign .top-header__inner {
    width: min(1620px, 100%);
    margin: 0 auto;
    min-height: 84px;
    padding: 0 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    overflow: visible;
    position: relative;
    z-index: 1;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.top-header.top-header--campaign .site-brand--campaign {
    flex: 1 1 auto;
    min-width: 0;
    justify-self: auto;
    gap: 10px;
}

.top-header.top-header--campaign .site-brand--campaign .site-brand__mark {
    width: auto;
    height: auto;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: #ffffff;
    font-size: 1.85rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    line-height: 1;
    text-indent: 0.08em;
    flex: 0 0 auto;
}

.top-header.top-header--campaign .site-brand__copy {
    min-width: 0;
    gap: 2px;
}

.top-header.top-header--campaign .site-brand--campaign strong {
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    color: #ffffff;
    font-family: 'Manrope', sans-serif;
}

.top-header.top-header--campaign .site-brand--campaign .site-brand__copy span {
    color: #52dfff;
    font-size: 0.52rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    font-family: 'Manrope', sans-serif;
}

.top-header.top-header--campaign .top-header__quick {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex: 0 0 auto;
}

.top-header.top-header--campaign .top-header__social {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.top-header.top-header--campaign .top-header__social .social-link {
    width: 36px;
    height: 36px;
    border-radius: 999px;
    border: 1px solid rgba(131, 225, 255, 0.18);
    background:
        radial-gradient(circle at 30% 30%, rgba(255, 255, 255, 0.16), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.03));
    color: #f5fbff;
    box-shadow: none;
}

.top-header.top-header--campaign .top-header__social .social-link:hover,
.top-header.top-header--campaign .top-header__social .social-link:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(131, 225, 255, 0.34);
    background:
        radial-gradient(circle at 30% 30%, rgba(255, 255, 255, 0.24), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.06));
    box-shadow: 0 10px 24px rgba(5, 18, 34, 0.18);
}

.top-header.top-header--campaign .top-header__social .social-link svg {
    width: 16px;
    height: 16px;
}

.top-header.top-header--campaign .top-header__quick-link {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    color: #7ceaff;
    text-decoration: none;
    font-size: 0.64rem;
    font-weight: 800;
    font-family: 'Manrope', sans-serif;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.top-header.top-header--campaign .top-header__quick-link:hover,
.top-header.top-header--campaign .top-header__quick-link:focus-visible {
    color: #baf8ff;
    outline: none;
}

.top-header.top-header--campaign .top-header__lang {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #9deeff;
    font-size: 0.64rem;
    font-weight: 800;
    font-family: 'Manrope', sans-serif;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.top-header.top-header--campaign .menu-toggle.menu-toggle--campaign {
    display: inline-flex;
    width: 42px;
    height: 42px;
    margin-left: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #6de9ff;
    box-shadow: none;
}

.top-header.top-header--campaign .menu-toggle.menu-toggle--campaign span {
    width: 22px;
    height: 2.5px;
    border-radius: 999px;
    background: currentColor;
}

.top-header.top-header--campaign .menu-toggle.menu-toggle--campaign:hover,
.top-header.top-header--campaign .menu-toggle.menu-toggle--campaign:focus-visible {
    transform: translateY(-1px);
    background: rgba(109, 233, 255, 0.08);
    color: #baf8ff;
    box-shadow: none;
    border-color: transparent;
}

.top-header.top-header--campaign .header-nav-shell.header-nav-shell--campaign {
    position: absolute;
    top: calc(100% + 12px);
    right: 18px;
    left: auto;
    width: min(320px, calc(100vw - 36px));
    display: none;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    padding: 14px;
    border: 1px solid rgba(123, 231, 255, 0.18);
    border-radius: 0;
    background:
        linear-gradient(180deg, rgba(8, 24, 40, 0.985) 0%, rgba(5, 15, 26, 0.99) 100%);
    box-shadow: 0 24px 48px rgba(1, 8, 18, 0.3);
    backdrop-filter: blur(18px);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    pointer-events: none;
    overflow: hidden;
    z-index: 20;
}

.top-header.top-header--campaign .header-nav-shell.header-nav-shell--campaign.is-open {
    display: grid;
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}

.top-header.top-header--campaign .site-menu.site-menu--campaign {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 8px;
    min-width: 0;
}

.top-header.top-header--campaign .site-menu.site-menu--campaign a {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 44px;
    padding: 10px 14px;
    border-radius: 0;
    border: 1px solid rgba(123, 231, 255, 0.14);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(240, 250, 255, 0.94);
    font-size: 0.72rem;
    font-weight: 800;
    font-family: 'Manrope', sans-serif;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    box-shadow: none;
}

.top-header.top-header--campaign .site-menu.site-menu--campaign a:hover,
.top-header.top-header--campaign .site-menu.site-menu--campaign a:focus-visible,
.top-header.top-header--campaign .site-menu.site-menu--campaign a.is-active {
    background: rgba(123, 231, 255, 0.12);
    border-color: rgba(123, 231, 255, 0.3);
    color: #ffffff;
    box-shadow: 0 12px 24px rgba(2, 11, 26, 0.18);
}

.top-header.top-header--campaign .header-cta.header-cta--campaign {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 46px;
    padding: 0 16px;
    border-radius: 0;
    border: 1px solid rgba(123, 231, 255, 0.18);
    background: linear-gradient(180deg, rgba(84, 218, 255, 0.2), rgba(255, 255, 255, 0.08));
    color: #ffffff;
    font-size: 0.72rem;
    font-weight: 800;
    font-family: 'Manrope', sans-serif;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    box-shadow: none;
}

.top-header.top-header--campaign .header-cta.header-cta--campaign:hover,
.top-header.top-header--campaign .header-cta.header-cta--campaign:focus-visible {
    transform: translateY(-1px);
    background: linear-gradient(180deg, rgba(100, 225, 255, 0.28), rgba(255, 255, 255, 0.12));
    border-color: rgba(123, 231, 255, 0.28);
    box-shadow: 0 12px 24px rgba(2, 11, 26, 0.18);
}

@media (max-width: 900px) {
    .top-header.top-header--campaign,
    .top-header.top-header--campaign.is-scrolled {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        padding: 0 12px;
        overflow: visible;
        z-index: 280;
    }

    body {
        padding-top: var(--site-header-height, 78px);
    }

    .top-header.top-header--campaign .top-header__inner {
        min-height: 78px;
        padding: 0 8px;
        gap: 12px;
    }

    .top-header.top-header--campaign .site-brand--campaign {
        gap: 8px;
    }

    .top-header.top-header--campaign .site-brand--campaign .site-brand__mark {
        font-size: 1.5rem;
    }

    .top-header.top-header--campaign .site-brand--campaign strong {
        font-size: 0.58rem;
    }

    .top-header.top-header--campaign .site-brand--campaign .site-brand__copy span,
    .top-header.top-header--campaign .top-header__quick-link,
    .top-header.top-header--campaign .top-header__lang {
        font-size: 0.54rem;
    }

    .top-header.top-header--campaign .top-header__social {
        gap: 6px;
    }

    .top-header.top-header--campaign .top-header__social .social-link {
        width: 32px;
        height: 32px;
    }

    .top-header.top-header--campaign .top-header__social .social-link svg {
        width: 14px;
        height: 14px;
    }

    .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign {
        width: 38px;
        height: 38px;
    }

    .top-header.top-header--campaign .header-nav-shell.header-nav-shell--campaign {
        right: 14px;
        width: min(300px, calc(100vw - 28px));
    }
}

@media (max-width: 640px) {
    .top-header.top-header--campaign,
    .top-header.top-header--campaign.is-scrolled {
        padding: 0 10px;
    }

    .top-header.top-header--campaign .top-header__inner {
        min-height: 70px;
        padding: 0 8px;
        gap: 8px;
    }

    .top-header.top-header--campaign .site-brand--campaign {
        gap: 7px;
    }

    .top-header.top-header--campaign .site-brand--campaign .site-brand__mark {
        font-size: 1.16rem;
        letter-spacing: 0.06em;
        text-indent: 0.06em;
    }

    .top-header.top-header--campaign .site-brand--campaign strong {
        font-size: 0.44rem;
        letter-spacing: 0.08em;
    }

    .top-header.top-header--campaign .site-brand--campaign .site-brand__copy span,
    .top-header.top-header--campaign .top-header__quick-link,
    .top-header.top-header--campaign .top-header__lang {
        font-size: 0.42rem;
        letter-spacing: 0.08em;
    }

    .top-header.top-header--campaign .top-header__quick {
        gap: 7px;
    }

    .top-header.top-header--campaign .top-header__social {
        gap: 4px;
    }

    .top-header.top-header--campaign .top-header__social .social-link {
        width: 30px;
        height: 30px;
    }

    .top-header.top-header--campaign .top-header__social .social-link svg {
        width: 12px;
        height: 12px;
    }

    .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign {
        width: 38px;
        height: 38px;
        border-radius: 0;
    }

    .top-header.top-header--campaign .header-nav-shell.header-nav-shell--campaign {
        right: 10px;
        width: min(280px, calc(100vw - 20px));
        padding: 12px;
        border-radius: 0;
    }
}

/* Restored footer layout */
.site-footer {
    position: relative;
    z-index: 5;
    width: min(1240px, 100%);
    margin: 0 auto 28px;
    padding: 0 20px;
    background: transparent;
    border-top: 0;
    box-shadow: none;
    overflow: visible;
}

.site-footer::before {
    content: none;
    display: none;
}

.site-footer::after {
    content: none;
    display: none;
}

.site-footer .site-footer__inner {
    width: 100%;
    margin: 0 auto;
    padding: 18px clamp(20px, 3vw, 32px) 14px;
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
    align-items: stretch;
    overflow: visible;
    isolation: auto;
    border: 1px solid rgba(123, 231, 255, 0.08);
    border-radius: 0;
    background:
        radial-gradient(circle at 18% 0%, rgba(82, 225, 255, 0.05), transparent 24%),
        radial-gradient(circle at 82% 8%, rgba(82, 225, 255, 0.04), transparent 22%),
        linear-gradient(180deg, rgba(6, 18, 31, 0.99) 0%, rgba(4, 13, 24, 1) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
    color: #ffffff;
}

.site-footer .site-footer__inner::before {
    content: '';
    position: absolute;
    inset: -24% auto -24% -12%;
    width: 28%;
    background: linear-gradient(
        112deg,
        transparent 4%,
        rgba(93, 225, 255, 0.04) 20%,
        rgba(93, 225, 255, 0.18) 40%,
        rgba(255, 255, 255, 0.14) 50%,
        rgba(93, 225, 255, 0.1) 64%,
        transparent 82%
    );
    transform: translateX(-220%) skewX(-18deg);
    animation: buttonSheen 7.2s linear infinite;
    mix-blend-mode: screen;
    pointer-events: none;
    z-index: 0;
}

.site-footer .site-footer__inner::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.025), transparent 22%),
        radial-gradient(circle at 50% -10%, rgba(82, 225, 255, 0.08), transparent 24%);
    pointer-events: none;
    z-index: 0;
}

.site-footer .site-footer__grid {
    display: grid;
    grid-template-columns: minmax(190px, 0.88fr) minmax(0, 1.18fr) minmax(210px, 0.84fr);
    gap: 22px;
    align-items: start;
}

.site-footer .site-footer__column {
    min-width: 0;
}

.site-footer .site-footer__kicker {
    display: inline-block;
    margin: 0 0 6px;
    color: rgba(222, 238, 252, 0.86);
    font-size: 0.72rem;
    font-weight: 800;
    font-family: 'Manrope', sans-serif;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

.site-footer .site-footer__title {
    margin: 0 0 10px;
    color: #ffffff;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(1.46rem, 1.72vw, 1.86rem);
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0;
    text-shadow: none;
    -webkit-text-stroke: 0;
}

.site-footer .site-footer__location,
.site-footer .site-footer__lead {
    margin: 0;
    color: rgba(230, 239, 248, 0.92);
    font-size: 0.88rem;
    font-family: 'Manrope', sans-serif;
    line-height: 1.42;
}

.site-footer .site-footer__newsletter {
    display: grid;
    gap: 8px;
    margin-top: 8px;
}

.site-footer .site-footer__newsletter-label {
    color: rgba(230, 239, 248, 0.92);
    font-size: 0.78rem;
    font-weight: 800;
    font-family: 'Manrope', sans-serif;
    letter-spacing: 0.04em;
}

.site-footer .site-footer__newsletter-address {
    display: flex;
    align-items: center;
    min-height: 40px;
    padding: 0 12px;
    border: 1px solid rgba(160, 220, 255, 0.18);
    background: rgba(255, 255, 255, 0.03);
    color: #ffffff;
    font-size: 0.88rem;
    font-weight: 500;
    font-family: 'Manrope', sans-serif;
    text-decoration: none;
}

.site-footer .site-footer__notes {
    display: grid;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-footer .site-footer__notes li {
    position: relative;
    padding-left: 20px;
    color: rgba(230, 239, 248, 0.92);
    font-size: 0.8rem;
    font-family: 'Manrope', sans-serif;
    line-height: 1.32;
}

.site-footer .site-footer__notes li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.28em;
    width: 10px;
    height: 10px;
    border: 1px solid rgba(160, 220, 255, 0.34);
    background: rgba(255, 255, 255, 0.03);
}

.site-footer .site-footer__newsletter-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 2px;
}

.site-footer .site-footer__button,
.site-footer .site-footer__social-link,
.site-footer .site-footer__support-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 13px;
    border: 1px solid rgba(160, 220, 255, 0.18);
    color: #f7fbff;
    text-decoration: none;
    font-size: 0.62rem;
    font-weight: 800;
    font-family: 'Manrope', sans-serif;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.site-footer .site-footer__button {
    background: #f2ece5;
    border-color: #f2ece5;
    color: #0a1b2f;
}

.site-footer .site-footer__button:hover,
.site-footer .site-footer__button:focus-visible {
    transform: translateY(-1px);
    background: #fbf6ef;
    border-color: #fbf6ef;
    box-shadow: 0 14px 28px rgba(0, 14, 28, 0.16);
    outline: none;
}

.site-footer .site-footer__button--ghost {
    background: transparent;
    border-color: rgba(160, 220, 255, 0.18);
    color: #f7fbff;
}

.site-footer .site-footer__button--ghost:hover,
.site-footer .site-footer__button--ghost:focus-visible {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(160, 220, 255, 0.3);
    color: #ffffff;
}

.site-footer .site-footer__button--wide {
    width: 100%;
}

.site-footer .site-footer__socials {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.site-footer .site-footer__social-link,
.site-footer .site-footer__support-pill {
    min-height: 36px;
    background: transparent;
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.site-footer .site-footer__social-link::before,
.site-footer .site-footer__support-pill::before {
    content: '';
    position: absolute;
    inset: -40% auto -40% -30%;
    width: 32%;
    background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.52), transparent);
    transform: translateX(-220%) skewX(-18deg);
    animation: buttonSheen 6.8s linear infinite;
    mix-blend-mode: screen;
    pointer-events: none;
    z-index: 0;
}

.site-footer .site-footer__social-link:hover,
.site-footer .site-footer__social-link:focus-visible,
.site-footer .site-footer__support-pill:hover,
.site-footer .site-footer__support-pill:focus-visible {
    transform: translateY(-1px);
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(160, 220, 255, 0.3);
    box-shadow: 0 12px 24px rgba(0, 14, 28, 0.14);
    outline: none;
}

.site-footer .site-footer__bottom {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: start;
    padding-top: 14px;
    border-top: 1px solid rgba(160, 220, 255, 0.12);
}

.site-footer .site-footer__nav {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 14px;
}

.site-footer .site-footer__nav-link {
    color: #ffffff;
    font-size: 0.88rem;
    font-weight: 700;
    font-family: 'Manrope', sans-serif;
    text-decoration: none;
}

.site-footer .site-footer__nav-link:hover,
.site-footer .site-footer__nav-link:focus-visible {
    color: #8fefff;
    outline: none;
}

.site-footer .site-footer__support {
    display: grid;
    gap: 10px;
    min-width: 280px;
    padding: 16px;
    border: 1px solid rgba(160, 220, 255, 0.12);
    background: rgba(255, 255, 255, 0.03);
}

.site-footer .site-footer__support-title {
    color: #ffffff;
    font-size: 0.84rem;
    font-weight: 800;
}

.site-footer .site-footer__support-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.site-footer .site-footer__copy {
    width: auto;
    margin: 0;
    color: rgba(219, 234, 248, 0.72);
    font-size: 0.68rem;
    font-weight: 700;
    font-family: 'Manrope', sans-serif;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: left;
}

@media (max-width: 1180px) {
    .site-footer {
        width: min(100%, 1240px);
        margin-bottom: 24px;
        padding: 0 18px;
    }

    .site-footer .site-footer__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }

    .site-footer .site-footer__column--social {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    html,
    body {
        min-height: 100%;
    }

    body {
        min-height: 100svh;
        display: flex;
        flex-direction: column;
    }

    body > .container,
    body > main {
        flex: 1 0 auto;
    }

    body > .site-footer {
        flex: 0 0 auto;
    }

    .site-footer {
        margin-bottom: 0;
        padding: 0 14px 0;
    }

    .site-footer .site-footer__grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .site-footer .site-footer__column {
        display: grid;
        gap: 8px;
        justify-items: start;
        align-content: start;
        text-align: left;
    }

    .site-footer .site-footer__inner {
        padding: 16px 14px calc(12px + env(safe-area-inset-bottom, 0px));
        border-radius: 0;
        gap: 12px;
    }

    .site-footer .site-footer__kicker,
    .site-footer .site-footer__title,
    .site-footer .site-footer__location,
    .site-footer .site-footer__lead,
    .site-footer .site-footer__newsletter-label {
        text-align: left;
    }

    .site-footer .site-footer__title {
        margin-bottom: 6px;
        font-size: clamp(1.28rem, 6.5vw, 1.58rem);
    }

    .site-footer .site-footer__location,
    .site-footer .site-footer__lead {
        font-size: 0.92rem;
        line-height: 1.38;
    }

    .site-footer .site-footer__newsletter {
        width: 100%;
        gap: 10px;
    }

    .site-footer .site-footer__newsletter-address {
        width: 100%;
        min-height: 44px;
        padding: 0 14px;
        font-size: 0.82rem;
    }

    .site-footer .site-footer__notes {
        gap: 8px;
        width: 100%;
    }

    .site-footer .site-footer__notes li {
        padding-left: 18px;
        font-size: 0.84rem;
        line-height: 1.34;
        text-align: left;
    }

    .site-footer .site-footer__notes li::before {
        top: 0.34em;
        width: 8px;
        height: 8px;
    }

    .site-footer .site-footer__newsletter-actions {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .site-footer .site-footer__socials,
    .site-footer .site-footer__support-list {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .site-footer .site-footer__social-link:last-child,
    .site-footer .site-footer__support-pill:last-child {
        grid-column: 1 / -1;
    }

    .site-footer .site-footer__button,
    .site-footer .site-footer__social-link,
    .site-footer .site-footer__support-pill {
        width: 100%;
        min-height: 42px;
    }

    .site-footer .site-footer__bottom {
        gap: 12px;
        padding-top: 12px;
    }

    .site-footer .site-footer__nav {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px 12px;
    }

    .site-footer .site-footer__nav-link {
        font-size: 0.82rem;
    }

    .site-footer .site-footer__copy {
        font-size: 0.66rem;
        line-height: 1.45;
        letter-spacing: 0.04em;
        text-transform: none;
        text-align: left;
    }
}

@media (max-width: 480px) {
    .site-footer .site-footer__socials,
    .site-footer .site-footer__support-list,
    .site-footer .site-footer__nav {
        grid-template-columns: 1fr;
    }

    .site-footer .site-footer__social-link:last-child,
    .site-footer .site-footer__support-pill:last-child {
        grid-column: auto;
    }
}

/* Premium show campaign page */
body.seo-page--show-roberto-carlos-portugal {
    --show-ink: #101821;
    --show-muted: #4f5f70;
    --show-red: #78172d;
    --show-red-deep: #420d1b;
    --show-gold: #c79b43;
    --show-ivory: #f7f3ec;
    --show-line: rgba(16, 24, 33, 0.12);
    background:
        linear-gradient(180deg, #f8fafc 0%, #ffffff 34%, #f7f3ec 100%);
    color: var(--show-ink);
}

body.seo-page--show-roberto-carlos-portugal::before,
body.seo-page--show-roberto-carlos-portugal .page-aura {
    display: none;
}

.seo-page--show-roberto-carlos-portugal .container--news {
    max-width: none;
    margin: 0;
    padding: 0 0 82px;
    overflow: visible;
}

.seo-page--show-roberto-carlos-portugal .section--news-article {
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
    text-align: left;
}

.seo-page--show-roberto-carlos-portugal .section--news-article::before {
    display: none;
}

.seo-page--show-roberto-carlos-portugal .news-breadcrumbs {
    width: min(1180px, calc(100% - 48px));
    margin: 26px auto 18px;
    justify-content: flex-start;
    color: rgba(16, 24, 33, 0.58);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero {
    position: relative;
    min-height: 560px;
    height: calc(100svh - var(--site-header-height, 84px) - 104px);
    max-height: 780px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    align-items: end;
    gap: 32px;
    padding: 72px 64px 52px;
    overflow: hidden;
    background: #101821;
    color: #ffffff;
    isolation: isolate;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero::before,
.seo-page--show-roberto-carlos-portugal .showcase-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero::before {
    background:
        linear-gradient(90deg, rgba(6, 8, 13, 0.92) 0%, rgba(6, 8, 13, 0.72) 38%, rgba(6, 8, 13, 0.22) 72%, rgba(6, 8, 13, 0.64) 100%),
        linear-gradient(0deg, rgba(6, 8, 13, 0.88) 0%, rgba(6, 8, 13, 0.08) 48%, rgba(6, 8, 13, 0.18) 100%);
}

.seo-page--show-roberto-carlos-portugal .showcase-hero::after {
    background:
        linear-gradient(120deg, rgba(120, 23, 45, 0.52) 0%, transparent 34%),
        linear-gradient(180deg, transparent 0%, rgba(199, 155, 67, 0.18) 100%);
    mix-blend-mode: soft-light;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__media {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: 52% 20%;
    filter: saturate(1.02) contrast(1.05);
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__content,
.seo-page--show-roberto-carlos-portugal .showcase-hero__proof {
    position: relative;
    z-index: 2;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__content {
    max-width: 780px;
    display: grid;
    gap: 18px;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__brand,
.seo-page--show-roberto-carlos-portugal .show-section-kicker,
.seo-page--show-roberto-carlos-portugal .show-feature-card span,
.seo-page--show-roberto-carlos-portugal .show-process span,
.seo-page--show-roberto-carlos-portugal .showcase-intro-band span,
.seo-page--show-roberto-carlos-portugal .news-aside-card__label {
    display: inline-flex;
    align-items: center;
    color: var(--show-gold);
    font-size: 0.82rem;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__title {
    margin: 0;
    max-width: 10ch;
    color: #ffffff;
    font-family: 'Cormorant Garamond', serif;
    font-size: 6.8rem;
    font-weight: 700;
    line-height: 0.9;
    letter-spacing: 0;
    text-wrap: balance;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__lead {
    max-width: 46rem;
    margin: 0;
    color: rgba(255, 255, 255, 0.9);
    font-size: 1.12rem;
    line-height: 1.7;
    text-align: left;
    text-wrap: pretty;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__meta span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border: 1px solid rgba(255, 255, 255, 0.24);
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.82rem;
    font-weight: 800;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__actions {
    margin: 8px 0 0;
    gap: 12px;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn,
.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn.btn--ghost {
    min-height: 52px;
    margin: 0;
    padding: 0 22px;
    border-radius: 4px;
    border: 1px solid rgba(255, 255, 255, 0.24);
    background: #ffffff;
    color: #121922;
    font-size: 0.82rem;
    letter-spacing: 0;
    box-shadow: none;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn.btn--ghost {
    background: transparent;
    color: #ffffff;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn::before,
.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn::after {
    display: none;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn:hover,
.seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn:focus-visible {
    transform: translateY(-2px);
    background: var(--show-gold);
    border-color: var(--show-gold);
    color: #101821;
    box-shadow: 0 18px 32px rgba(0, 0, 0, 0.24);
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__proof {
    display: grid;
    gap: 1px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(8, 12, 18, 0.54);
    backdrop-filter: blur(14px);
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__proof span {
    display: grid;
    gap: 3px;
    min-height: 92px;
    padding: 18px;
    background: rgba(255, 255, 255, 0.06);
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__proof strong {
    color: #ffffff;
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.64rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__proof small {
    color: rgba(255, 255, 255, 0.74);
    font-size: 0.82rem;
    line-height: 1.35;
}

.seo-page--show-roberto-carlos-portugal .showcase-intro-band {
    position: relative;
    z-index: 3;
    width: min(1180px, calc(100% - 48px));
    margin: -36px auto 72px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    background: var(--show-line);
    border: 1px solid var(--show-line);
    box-shadow: 0 20px 40px rgba(16, 24, 33, 0.09);
}

.seo-page--show-roberto-carlos-portugal .showcase-intro-band article {
    display: grid;
    align-content: start;
    gap: 10px;
    min-height: 178px;
    padding: 24px;
    background: #ffffff;
}

.seo-page--show-roberto-carlos-portugal .showcase-intro-band strong {
    color: var(--show-ink);
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.62rem;
    line-height: 1.02;
    letter-spacing: 0;
}

.seo-page--show-roberto-carlos-portugal .showcase-intro-band p {
    margin: 0;
    color: var(--show-muted);
    font-size: 0.96rem;
    line-height: 1.62;
    text-align: left;
}

.seo-page--show-roberto-carlos-portugal .news-article-layout {
    width: min(1180px, calc(100% - 48px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 56px;
    align-items: start;
}

.seo-page--show-roberto-carlos-portugal .news-article-body {
    max-width: none;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.seo-page--show-roberto-carlos-portugal .news-article-body::before {
    display: none;
}

.seo-page--show-roberto-carlos-portugal .news-article-block {
    padding: 0 0 46px;
    border-bottom: 1px solid rgba(16, 24, 33, 0.11);
}

.seo-page--show-roberto-carlos-portugal .news-article-block + .news-article-block,
.seo-page--show-roberto-carlos-portugal .show-feature-grid + .news-article-block,
.seo-page--show-roberto-carlos-portugal .show-editorial-photo + .news-article-block,
.seo-page--show-roberto-carlos-portugal .show-process + .news-article-block {
    margin-top: 46px;
    padding-top: 0;
    border-top: 0;
}

.seo-page--show-roberto-carlos-portugal .news-article-block:first-of-type p:first-of-type::first-letter {
    float: none;
    margin: 0;
    color: inherit;
    font: inherit;
    line-height: inherit;
    text-shadow: none;
}

.seo-page--show-roberto-carlos-portugal .news-article-body h2 {
    max-width: 13ch;
    margin: 10px 0 18px;
    color: var(--show-ink);
    font-size: 3.1rem;
    line-height: 0.98;
    letter-spacing: 0;
    text-align: left;
    text-wrap: balance;
}

.seo-page--show-roberto-carlos-portugal .news-article-body p,
.seo-page--show-roberto-carlos-portugal .news-article-list li {
    max-width: 48rem;
    color: rgba(16, 24, 33, 0.84);
    font-size: 1.04rem;
    line-height: 1.86;
    text-align: left;
}

.seo-page--show-roberto-carlos-portugal .news-article-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 22px;
}

.seo-page--show-roberto-carlos-portugal .news-article-list li {
    min-height: 78px;
    padding: 18px 18px 18px 42px;
    border: 1px solid rgba(16, 24, 33, 0.1);
    background: #ffffff;
    border-radius: 0;
    line-height: 1.5;
}

.seo-page--show-roberto-carlos-portugal .news-article-list li::before {
    top: 25px;
    left: 18px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: var(--show-red);
}

.seo-page--show-roberto-carlos-portugal .show-feature-grid,
.seo-page--show-roberto-carlos-portugal .show-process {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 46px;
}

.seo-page--show-roberto-carlos-portugal .show-feature-card,
.seo-page--show-roberto-carlos-portugal .show-process article {
    display: grid;
    align-content: start;
    gap: 12px;
    padding: 22px;
    border: 1px solid rgba(16, 24, 33, 0.1);
    border-radius: 0;
    background: #ffffff;
}

.seo-page--show-roberto-carlos-portugal .show-feature-card {
    border-top: 4px solid var(--show-gold);
}

.seo-page--show-roberto-carlos-portugal .show-feature-card strong,
.seo-page--show-roberto-carlos-portugal .show-process strong {
    color: var(--show-ink);
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: 0;
}

.seo-page--show-roberto-carlos-portugal .show-feature-card p,
.seo-page--show-roberto-carlos-portugal .show-process p {
    margin: 0;
    color: var(--show-muted);
    font-size: 0.94rem;
    line-height: 1.58;
}

.seo-page--show-roberto-carlos-portugal .show-editorial-photo {
    margin: 46px 0 0;
    display: grid;
    gap: 12px;
}

.seo-page--show-roberto-carlos-portugal .show-editorial-photo img {
    width: 100%;
    aspect-ratio: 16 / 9;
    display: block;
    object-fit: cover;
    object-position: center 38%;
    border-radius: 0;
    box-shadow: 0 22px 44px rgba(16, 24, 33, 0.14);
}

.seo-page--show-roberto-carlos-portugal .show-editorial-photo figcaption {
    color: rgba(16, 24, 33, 0.62);
    font-size: 0.86rem;
    line-height: 1.5;
}

.seo-page--show-roberto-carlos-portugal .seo-faq__item {
    border-color: rgba(16, 24, 33, 0.12);
    border-radius: 0;
    background: #ffffff;
    box-shadow: none;
}

.seo-page--show-roberto-carlos-portugal .seo-faq__item summary {
    color: var(--show-ink);
    letter-spacing: 0;
}

.seo-page--show-roberto-carlos-portugal .news-article-aside {
    position: sticky;
    top: calc(var(--site-header-height, 84px) + 22px);
    display: grid;
    gap: 16px;
}

.seo-page--show-roberto-carlos-portugal .news-aside-card {
    display: grid;
    gap: 14px;
    padding: 22px;
    border: 1px solid rgba(16, 24, 33, 0.1);
    border-radius: 0;
    background: #ffffff;
    box-shadow: 0 18px 34px rgba(16, 24, 33, 0.08);
}

.seo-page--show-roberto-carlos-portugal .news-aside-card--booking {
    border-color: rgba(120, 23, 45, 0.24);
    background:
        linear-gradient(145deg, var(--show-red-deep) 0%, #111821 58%, #0b1017 100%);
    color: #ffffff;
}

.seo-page--show-roberto-carlos-portugal .news-aside-card strong {
    color: var(--show-ink);
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.72rem;
    font-weight: 700;
    line-height: 1.02;
    letter-spacing: 0;
}

.seo-page--show-roberto-carlos-portugal .news-aside-card--booking strong,
.seo-page--show-roberto-carlos-portugal .news-aside-card--booking p {
    color: #ffffff;
}

.seo-page--show-roberto-carlos-portugal .news-aside-card p {
    margin: 0;
    color: var(--show-muted);
    font-size: 0.94rem;
    line-height: 1.62;
    text-align: left;
}

.seo-page--show-roberto-carlos-portugal .news-aside-card .btn,
.seo-page--show-roberto-carlos-portugal .news-aside-card .btn--ghost {
    width: 100%;
    min-height: 48px;
    margin: 4px 0 0;
    padding: 0 16px;
    border: 1px solid var(--show-red);
    border-radius: 4px;
    background: var(--show-red);
    color: #ffffff;
    font-size: 0.78rem;
    letter-spacing: 0;
    box-shadow: none;
}

.seo-page--show-roberto-carlos-portugal .news-aside-card--booking .btn {
    border-color: var(--show-gold);
    background: var(--show-gold);
    color: #111821;
}

.seo-page--show-roberto-carlos-portugal .news-aside-card .btn--ghost {
    background: transparent;
    color: var(--show-red);
}

.seo-page--show-roberto-carlos-portugal .news-aside-card .btn::before,
.seo-page--show-roberto-carlos-portugal .news-aside-card .btn::after {
    display: none;
}

.seo-page--show-roberto-carlos-portugal .news-aside-card .btn:hover,
.seo-page--show-roberto-carlos-portugal .news-aside-card .btn:focus-visible {
    transform: translateY(-2px);
    border-color: var(--show-ink);
    background: var(--show-ink);
    color: #ffffff;
}

.seo-page--show-roberto-carlos-portugal .news-aside-card--visual img {
    width: 100%;
    aspect-ratio: 4 / 5;
    display: block;
    object-fit: cover;
    object-position: center 20%;
    border-radius: 0;
}

@media (max-width: 1180px) {
    .seo-page--show-roberto-carlos-portugal .showcase-hero {
        min-height: 540px;
        grid-template-columns: minmax(0, 1fr) 300px;
        padding: 60px 40px 44px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__title {
        font-size: 5.6rem;
    }

    .seo-page--show-roberto-carlos-portugal .news-article-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 40px;
    }

    .seo-page--show-roberto-carlos-portugal .news-article-aside {
        position: static;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 920px) {
    .seo-page--show-roberto-carlos-portugal .container--news {
        padding-bottom: 64px;
    }

    .seo-page--show-roberto-carlos-portugal .news-breadcrumbs {
        display: none;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero {
        min-height: 500px;
        height: calc(100svh - var(--site-header-height, 78px) - 116px);
        grid-template-columns: 1fr;
        align-content: end;
        gap: 22px;
        padding: 48px 24px 28px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero::before {
        background:
            linear-gradient(90deg, rgba(6, 8, 13, 0.9) 0%, rgba(6, 8, 13, 0.52) 100%),
            linear-gradient(0deg, rgba(6, 8, 13, 0.92) 0%, rgba(6, 8, 13, 0.18) 62%, rgba(6, 8, 13, 0.22) 100%);
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__media img {
        object-position: 56% 12%;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__title {
        max-width: 9ch;
        font-size: 4.2rem;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__lead {
        max-width: 34rem;
        font-size: 1rem;
        line-height: 1.62;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__proof {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__proof span {
        min-height: 72px;
        padding: 12px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__proof strong {
        font-size: 1.24rem;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-intro-band,
    .seo-page--show-roberto-carlos-portugal .news-article-layout {
        width: min(100% - 32px, 720px);
    }

    .seo-page--show-roberto-carlos-portugal .showcase-intro-band {
        margin-top: 18px;
        margin-bottom: 52px;
        grid-template-columns: 1fr;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-intro-band article {
        min-height: 0;
    }

    .seo-page--show-roberto-carlos-portugal .news-article-body h2 {
        max-width: none;
        font-size: 2.5rem;
    }

    .seo-page--show-roberto-carlos-portugal .show-feature-grid,
    .seo-page--show-roberto-carlos-portugal .show-process,
    .seo-page--show-roberto-carlos-portugal .news-article-list,
    .seo-page--show-roberto-carlos-portugal .news-article-aside {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .seo-page--show-roberto-carlos-portugal .showcase-hero {
        min-height: 480px;
        padding: 36px 16px 20px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__content {
        gap: 12px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__brand,
    .seo-page--show-roberto-carlos-portugal .show-section-kicker,
    .seo-page--show-roberto-carlos-portugal .show-feature-card span,
    .seo-page--show-roberto-carlos-portugal .show-process span,
    .seo-page--show-roberto-carlos-portugal .showcase-intro-band span,
    .seo-page--show-roberto-carlos-portugal .news-aside-card__label {
        font-size: 0.72rem;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__title {
        font-size: 3.15rem;
        line-height: 0.94;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__lead {
        font-size: 0.94rem;
        line-height: 1.54;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__meta {
        gap: 8px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__meta span {
        min-height: 30px;
        padding: 0 10px;
        font-size: 0.74rem;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn,
    .seo-page--show-roberto-carlos-portugal .showcase-hero__actions .btn.btn--ghost {
        width: 100%;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__proof {
        display: none;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-intro-band,
    .seo-page--show-roberto-carlos-portugal .news-article-layout {
        width: min(100% - 24px, 560px);
    }

    .seo-page--show-roberto-carlos-portugal .showcase-intro-band article,
    .seo-page--show-roberto-carlos-portugal .show-feature-card,
    .seo-page--show-roberto-carlos-portugal .show-process article,
    .seo-page--show-roberto-carlos-portugal .news-aside-card {
        padding: 18px;
    }

    .seo-page--show-roberto-carlos-portugal .news-article-block {
        padding-bottom: 38px;
    }

    .seo-page--show-roberto-carlos-portugal .news-article-block + .news-article-block,
    .seo-page--show-roberto-carlos-portugal .show-feature-grid + .news-article-block,
    .seo-page--show-roberto-carlos-portugal .show-editorial-photo + .news-article-block,
    .seo-page--show-roberto-carlos-portugal .show-process + .news-article-block,
    .seo-page--show-roberto-carlos-portugal .show-feature-grid,
    .seo-page--show-roberto-carlos-portugal .show-editorial-photo,
    .seo-page--show-roberto-carlos-portugal .show-process {
        margin-top: 38px;
    }

    .seo-page--show-roberto-carlos-portugal .news-article-body h2 {
        font-size: 2.05rem;
        line-height: 1.04;
    }

    .seo-page--show-roberto-carlos-portugal .news-article-body p,
    .seo-page--show-roberto-carlos-portugal .news-article-list li {
        font-size: 0.96rem;
        line-height: 1.7;
    }

    .seo-page--show-roberto-carlos-portugal .news-article-list li {
        min-height: 0;
    }
}

/* Final responsive polish overrides */
.seo-page--show-roberto-carlos-portugal .showcase-intro-band {
    margin-top: 24px;
}

@media (min-width: 641px) {
    .hero {
        height: clamp(640px, 76vh, 780px);
        min-height: 640px;
        background: #071421;
    }

    .hero::after {
        height: 24%;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(244, 249, 253, 0.72) 74%, #ffffff 100%);
    }

    .hero-media {
        inset: 0;
        padding: 0;
        overflow: hidden;
    }

    .hero-media::after {
        z-index: 2;
        background:
            linear-gradient(90deg, rgba(3, 12, 24, 0.9) 0%, rgba(3, 12, 24, 0.72) 34%, rgba(3, 12, 24, 0.3) 66%, rgba(3, 12, 24, 0.08) 100%),
            linear-gradient(180deg, rgba(3, 12, 24, 0.16) 0%, rgba(3, 12, 24, 0.02) 54%, rgba(255, 255, 255, 0.18) 100%);
    }

    .hero-video-shell {
        display: block;
        width: 100%;
        max-width: none;
        height: 100%;
        margin: 0;
        border-radius: 0;
    }

    .hero-video-shell__poster img {
        object-position: 50% 42%;
        filter: saturate(1.03) contrast(1.05) brightness(0.76);
    }

    .hero-video-shell__embed {
        transform: translate(-50%, -50%) scale(1.16);
    }

    .hero-content {
        width: min(1240px, calc(100% - 96px));
        max-width: none;
        padding: 0 0 clamp(74px, 9vh, 104px);
        align-items: end;
    }

    .hero-content::before,
    .hero-content::after,
    .hero-copy::after {
        display: none;
    }

    .hero-copy {
        max-width: 660px;
        padding: 0;
        overflow: visible;
    }

    .hero-copy::before {
        inset: -32px -86px -34px -42px;
        border: 0;
        border-radius: 0;
        background: linear-gradient(90deg, rgba(3, 16, 30, 0.66) 0%, rgba(3, 16, 30, 0.38) 58%, rgba(3, 16, 30, 0) 100%);
        box-shadow: none;
        backdrop-filter: none;
    }

    .hero .eyebrow,
    .hero-slogan,
    .hero h1 {
        letter-spacing: 0;
    }

    .hero h1 {
        max-width: 9ch;
        font-size: 5.4rem;
        line-height: 0.92;
    }

    .hero p {
        max-width: 34rem;
        font-size: 1.18rem;
        line-height: 1.55;
    }

    .hero-slogan {
        max-width: 28rem;
        font-size: 1rem;
        line-height: 1.45;
    }
}

@media (min-width: 641px) and (max-width: 1180px) {
    .hero {
        height: 680px;
        min-height: 680px;
    }

    .hero-content {
        width: min(100%, calc(100% - 56px));
        padding-bottom: 70px;
    }

    .hero h1 {
        font-size: 4.4rem;
    }
}

@media (max-width: 900px) {
    body::after {
        content: none !important;
        display: none !important;
    }

    .top-header.top-header--campaign .top-header__social,
    .top-header.top-header--campaign .top-header__quick-link,
    .top-header.top-header--campaign .top-header__lang {
        display: none !important;
    }

    .top-header.top-header--campaign::after {
        content: none !important;
        display: none !important;
    }

    .top-header.top-header--campaign .top-header__quick {
        position: static !important;
        top: auto;
        right: auto;
        display: inline-flex !important;
        width: auto !important;
        height: auto !important;
        min-width: 0;
        transform: none !important;
        opacity: 1;
        visibility: visible;
    }

    .top-header.top-header--campaign .top-header__quick::after {
        content: none !important;
        display: none !important;
    }

    .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign {
        position: fixed !important;
        top: 15px !important;
        right: 16px !important;
        bottom: auto !important;
        left: auto !important;
        display: inline-flex !important;
        flex: 0 0 42px;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 5px;
        width: 42px !important;
        height: 42px !important;
        border: 1px solid rgba(143, 243, 255, 0.22) !important;
        border-radius: 0;
        background: rgba(143, 243, 255, 0.08) !important;
        color: #8ff3ff;
        box-shadow: 0 10px 22px rgba(0, 8, 18, 0.18);
        opacity: 1 !important;
        visibility: visible !important;
        z-index: 3001;
    }

    .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign span {
        display: block !important;
        width: 22px;
        height: 2.25px;
        border-radius: 999px;
        background: currentColor;
    }
}

@media (max-width: 640px) {
    .top-header.top-header--campaign .top-header__inner {
        width: 100%;
        min-width: 0;
        position: relative;
        padding-right: 54px;
    }

    .top-header.top-header--campaign .site-brand--campaign {
        flex: 1 1 auto;
        min-width: 0;
    }

    .top-header.top-header--campaign .site-brand__copy {
        min-width: 0;
    }

    .top-header.top-header--campaign .site-brand--campaign .site-brand__copy span {
        display: none;
    }

    .top-header.top-header--campaign .top-header__social {
        display: none;
    }

    .top-header.top-header--campaign .top-header__lang {
        display: none;
    }

    .top-header.top-header--campaign .top-header__quick-link {
        display: none !important;
    }

    .hero {
        min-height: 0;
        height: auto;
        padding: 10px 12px 0;
        overflow: visible;
    }

    .hero::after {
        display: none;
    }

    .hero-media {
        position: relative;
        inset: auto;
        min-height: clamp(520px, 76svh, 660px);
        padding: 0;
        border-radius: 0;
        overflow: hidden;
        transform: none !important;
        opacity: 1 !important;
    }

    .hero-media::after {
        background:
            linear-gradient(180deg, rgba(2, 10, 22, 0.08) 0%, rgba(2, 10, 22, 0.05) 38%, rgba(2, 10, 22, 0.62) 100%);
    }

    .hero-video-shell {
        display: block;
        width: 100%;
        max-width: none;
        height: clamp(520px, 76svh, 660px);
    }

    .hero-video-shell__poster img {
        object-position: 56% center;
    }

    .hero-video-shell__embed {
        transform: translate(-50%, -50%) scale(1.28);
    }

    .hero-content {
        position: absolute;
        inset: auto 18px 28px;
        width: auto;
        max-width: none;
        height: auto;
        margin: 0;
        padding: 0;
        display: block;
        pointer-events: none;
    }

    .hero-content::before,
    .hero-content::after,
    .hero-copy::after {
        display: none;
    }

    .hero-copy {
        width: 100%;
        max-width: none;
        padding: 18px;
        overflow: visible;
        pointer-events: auto;
    }

    .hero-copy::before {
        inset: 0;
        border-radius: 0;
        background: linear-gradient(100deg, rgba(0, 24, 48, 0.9) 0%, rgba(0, 24, 48, 0.72) 62%, rgba(0, 24, 48, 0.42) 100%);
        box-shadow: 0 18px 34px rgba(0, 22, 43, 0.2);
    }

    .hero h1 {
        max-width: none;
        font-size: clamp(2.65rem, 12.8vw, 3.25rem);
        line-height: 0.9;
        overflow-wrap: break-word;
    }

    .hero-copy > p:not(.eyebrow):not(.hero-slogan) {
        max-width: min(100%, 18.5rem);
        margin-top: 10px;
        font-size: 0.94rem;
        line-height: 1.45;
        overflow-wrap: break-word;
    }

    .hero-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
        margin-top: 14px;
        width: 100%;
    }

    .hero-actions .btn {
        width: 100%;
        min-width: 0;
        min-height: 44px;
        padding: 0 14px;
        font-size: 0.7rem;
        letter-spacing: 0.08em;
    }

    .hero-signature {
        margin-top: 12px;
    }

    .event-showcase-poster {
        max-width: min(100%, 356px);
        margin-inline: auto;
        overflow: visible;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero {
        width: min(100%, 390px);
        max-width: 100%;
        overflow: hidden;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__content,
    .seo-page--show-roberto-carlos-portugal .showcase-hero__lead {
        max-width: 100%;
        min-width: 0;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__title {
        max-width: 100%;
        font-size: clamp(2.45rem, 12vw, 3rem);
        overflow-wrap: break-word;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__meta {
        display: grid;
        grid-template-columns: 1fr;
    }

    .event-showcase-poster__frame img {
        width: 100%;
        height: auto;
        object-fit: contain;
    }

    .event-showcase-hero__copy {
        width: min(100%, 356px) !important;
        max-width: 356px !important;
        min-width: 0 !important;
        margin-inline: auto;
        overflow: hidden !important;
    }

    .event-showcase-hero__copy h1 {
        max-width: 100% !important;
        font-size: clamp(1.55rem, 7.8vw, 2.05rem) !important;
        line-height: 1.05 !important;
        overflow-wrap: anywhere !important;
    }

    .event-showcase-date,
    .event-showcase-meta,
    .event-showcase-story {
        width: 100%;
        max-width: 100% !important;
    }

    .news-filter {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
        overflow: visible;
        gap: 10px;
        padding-bottom: 0;
    }

    .news-filter::-webkit-scrollbar {
        display: none;
    }

    .news-filter__chip {
        width: 100%;
        min-width: 0;
        justify-content: center;
        text-align: center;
        white-space: normal;
        line-height: 1.2;
    }
}

@media (max-width: 390px) {
    .top-header.top-header--campaign .top-header__social {
        display: none;
    }

    .hero-media,
    .hero-video-shell {
        min-height: 560px;
        height: 560px;
    }

    .hero-content {
        inset: auto 14px 20px;
    }

    .hero-copy {
        padding: 16px;
    }
}

/* Layout scale normalization */
.container {
    padding: clamp(28px, 4vw, 48px) 24px 68px;
}

.section {
    margin: 0 0 24px;
    padding: clamp(24px, 3.2vw, 40px);
    border-radius: 0;
}

.hero {
    height: clamp(560px, 70vh, 720px);
    min-height: 560px;
}

.hero-content {
    padding-bottom: clamp(56px, 8vh, 88px);
}

.section-cta {
    margin-top: 20px;
    gap: 14px;
}

.experience-showcase {
    margin-top: 24px;
    padding: 14px;
    border-radius: 0;
}

.experience-photo-strip {
    width: min(100%, 804px);
    grid-template-columns: repeat(3, minmax(0, 248px));
    justify-content: center;
    gap: 10px;
    margin: 0 auto 12px;
}

.experience-photo-strip figure {
    min-height: 0;
    width: min(100%, 248px);
    justify-self: center;
    aspect-ratio: 9 / 16;
    border-radius: 0;
}

.experience-short__overlay strong {
    font-size: 1.08rem;
}

.experience-short__meta {
    font-size: 0.68rem;
}

.video-showcase,
.song-showcase,
.gallery-showcase {
    gap: 16px;
}

.video-showcase__top {
    padding: 20px 22px;
}

.video-track {
    grid-auto-columns: minmax(220px, 272px);
}

.ensaios-track {
    --ensaios-card-width: clamp(220px, 24vw, 300px);
}

.song-grid {
    grid-auto-columns: minmax(156px, 174px);
}

.gallery {
    gap: 16px;
    margin-top: 24px;
}

.gallery img {
    height: clamp(190px, 22vw, 250px);
}

.seo-page .news-article-cover img {
    min-height: clamp(240px, 30vw, 420px);
}

.event-promo-poster__frame img {
    min-height: 520px;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero {
    min-height: 500px;
    height: clamp(520px, calc(82svh - var(--site-header-height, 84px)), 680px);
    max-height: 680px;
    gap: 24px;
    padding: 60px 54px 40px;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__title {
    font-size: clamp(4.8rem, 5.8vw, 6rem);
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__lead {
    font-size: 1.05rem;
    line-height: 1.6;
}

.seo-page--show-roberto-carlos-portugal .showcase-hero__proof span {
    min-height: 64px;
    padding: 12px 14px;
}

@media (min-width: 641px) and (max-width: 1180px) {
    .hero {
        height: clamp(540px, 68vh, 620px);
        min-height: 540px;
    }

    .hero-content {
        padding-bottom: 64px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero {
        min-height: 470px;
        height: clamp(500px, calc(78svh - var(--site-header-height, 84px)), 620px);
        grid-template-columns: minmax(0, 1fr) 260px;
        padding: 52px 36px 34px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__title {
        font-size: clamp(4.1rem, 5vw, 5.1rem);
    }
}

@media (max-width: 900px) {
    .hero-media {
        min-height: clamp(430px, 64svh, 560px);
    }

    .hero-video-shell {
        height: clamp(430px, 64svh, 560px);
    }

    .hero-content {
        inset: auto 16px 22px;
    }

    .hero-copy {
        padding: 16px;
    }

    .video-track {
        --video-card-width: min(74vw, 266px);
        grid-auto-columns: var(--video-card-width);
        scroll-padding-inline: max(2px, calc((100% - var(--video-card-width)) / 2));
        padding: 0 max(2px, calc((100% - var(--video-card-width)) / 2)) 4px;
    }

    .ensaios-track {
        --ensaios-card-width: min(84vw, 300px);
    }

    .song-grid {
        --song-card-width: min(68vw, 220px);
        grid-auto-columns: var(--song-card-width);
        scroll-padding-inline: max(2px, calc((100% - var(--song-card-width)) / 2));
        padding: 0 max(2px, calc((100% - var(--song-card-width)) / 2)) 4px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero {
        min-height: 440px;
        height: clamp(440px, 70svh, 540px);
        gap: 16px;
        padding: 40px 20px 24px;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__title {
        font-size: clamp(3.2rem, 11vw, 3.8rem);
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__lead {
        line-height: 1.5;
    }

    .seo-page--show-roberto-carlos-portugal .showcase-hero__proof span {
        min-height: 58px;
        padding: 10px;
    }

    .event-showcase-poster {
        max-width: min(100%, 320px);
    }

    #espetaculo .experience-recap {
        margin-top: 22px;
        padding-top: 18px;
    }
}

@media (max-width: 640px) {
    .container {
        padding: 18px 14px 48px;
    }

    .section {
        margin-bottom: 22px;
        padding: 18px 14px 20px;
        border-radius: 0;
    }

    .section h2 {
        margin-bottom: 12px;
    }

    .section-cta {
        margin-top: 16px;
        gap: 10px;
    }

    .experience-showcase {
        margin-top: 16px;
        padding: 10px;
        border-radius: 0;
    }

    #espetaculo .experience-showcase {
        border-color: rgba(123, 231, 255, 0.1) !important;
        background:
            radial-gradient(circle at 18% 0%, rgba(82, 225, 255, 0.05), transparent 24%),
            radial-gradient(circle at 82% 8%, rgba(82, 225, 255, 0.04), transparent 22%),
            linear-gradient(180deg, rgba(6, 18, 31, 0.99) 0%, rgba(4, 13, 24, 1) 100%) !important;
        box-shadow: 0 18px 40px rgba(0, 11, 22, 0.22) !important;
    }

    #espetaculo .experience-recap {
        margin-top: 18px;
        padding-top: 16px;
    }

    #espetaculo .experience-recap__intro {
        gap: 8px;
    }

    #espetaculo .experience-recap__kicker {
        font-size: 0.62rem;
        letter-spacing: 0.12em;
    }

    .experience-photo-strip {
        width: auto;
        grid-auto-columns: min(60vw, 216px);
        gap: 8px;
        margin-bottom: 10px;
    }

    .experience-photo-strip figure,
    .experience-photo-strip figure:first-child {
        width: auto;
        border-radius: 0;
    }

    .experience-short__play {
        top: 12px;
        right: 12px;
        width: 38px;
        height: 38px;
    }

    .experience-short__overlay {
        right: 12px;
        bottom: 14px;
        left: 12px;
        gap: 4px;
    }

    .experience-short__overlay strong {
        font-size: 0.96rem;
    }

    .experience-short__meta {
        font-size: 0.62rem;
    }

    .video-showcase,
    .song-showcase,
    .gallery-showcase {
        gap: 10px;
    }

    .gallery img {
        height: 190px;
        border-radius: 0;
    }

    .seo-page .news-article-cover img {
        min-height: clamp(220px, 54vw, 320px);
    }

    .event-promo-poster__frame img {
        min-height: 400px;
    }
}

@media (max-width: 390px) {
    .hero-media,
    .hero-video-shell {
        min-height: 500px;
        height: 500px;
    }

    .hero-content {
        inset: auto 12px 18px;
    }
}

/* Final hero banner polish */
.hero {
    margin-top: 6px;
    height: clamp(480px, calc(74svh - var(--site-header-height, 84px)), 580px);
    min-height: 480px;
    padding: 0;
    background: #061421;
    overflow: hidden;
}

.hero::after {
    display: block;
    height: 16%;
    background:
        linear-gradient(180deg, rgba(6, 20, 34, 0) 0%, rgba(10, 30, 51, 0.04) 58%, rgba(18, 44, 72, 0.16) 100%);
}

.hero-media {
    position: absolute;
    inset: 0;
    min-height: 0;
    padding: 0;
    overflow: hidden;
}

.hero-media::after {
    z-index: 2;
    background:
        linear-gradient(90deg, rgba(2, 10, 20, 0.72) 0%, rgba(2, 10, 20, 0.42) 20%, rgba(2, 10, 20, 0.12) 50%, rgba(2, 10, 20, 0.02) 100%),
        linear-gradient(180deg, rgba(2, 10, 20, 0.16) 0%, rgba(2, 10, 20, 0.02) 46%, rgba(84, 120, 156, 0.04) 100%);
}

.hero-video-shell {
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 0;
    margin: 0;
    border-radius: 0;
    background: #061421;
}

.hero-video-shell__embed {
    position: absolute;
    inset: 0;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
    max-width: none;
    aspect-ratio: auto;
    border: 0;
    display: block;
    object-fit: cover;
    object-position: center 74%;
    transform: none;
    filter: saturate(1.04) contrast(1.1) brightness(1);
    pointer-events: none;
}

.hero-video-shell__poster img {
    object-position: center center;
    filter: saturate(1.05) contrast(1.08) brightness(0.78);
}

.hero-content {
    width: min(1240px, calc(100% - 48px));
    max-width: none;
    height: 100%;
    padding: 0 0 clamp(44px, 6vh, 64px);
    align-items: flex-end;
}

.hero-content::before,
.hero-content::after,
.hero-copy::after {
    display: none;
}

.hero-copy {
    max-width: 500px;
    padding: 0;
    overflow: visible;
}

.hero-copy::before {
    inset: -24px -28px -24px -24px;
    border: 0;
    background:
        linear-gradient(90deg, rgba(3, 16, 30, 0.48) 0%, rgba(3, 16, 30, 0.24) 46%, rgba(3, 16, 30, 0) 100%);
    box-shadow: none;
    backdrop-filter: none;
}

.hero h1 {
    max-width: 9ch;
    font-size: clamp(3.7rem, 5.4vw, 5.6rem);
    line-height: 0.9;
    letter-spacing: 0;
}

.hero p {
    max-width: 32rem;
    font-size: clamp(1rem, 1.35vw, 1.16rem);
    line-height: 1.48;
}

.hero-slogan {
    max-width: 30rem;
    font-size: clamp(0.78rem, 0.96vw, 0.92rem);
    line-height: 1.45;
    letter-spacing: 0.08em;
}

.hero-actions {
    gap: 12px;
}

.hero-actions .btn {
    margin-top: 0;
    min-height: 50px;
    padding: 0 24px;
}

.scroll-cue {
    z-index: 5;
}

@media (min-width: 641px) and (max-width: 1180px) {
    .hero {
        height: clamp(460px, calc(72svh - var(--site-header-height, 78px)), 560px);
        min-height: 460px;
    }

    .hero-content {
        width: min(100%, calc(100% - 40px));
        padding-bottom: 44px;
    }

    .hero h1 {
        font-size: clamp(3.2rem, 7vw, 4.6rem);
    }
}

@media (max-width: 640px) {
    .hero {
        height: clamp(500px, calc(88svh - var(--site-header-height, 70px)), 600px);
        min-height: 500px;
        padding: 0;
        overflow: hidden;
    }

    .hero::after {
        display: block;
        height: 42%;
        background:
            linear-gradient(180deg, rgba(6, 20, 34, 0) 0%, rgba(10, 30, 51, 0.08) 52%, rgba(14, 36, 60, 0.52) 100%);
    }

    .hero-media {
        position: absolute;
        inset: 0;
        min-height: 0;
        height: 100%;
        padding: 0;
        overflow: hidden;
    }

    .hero-media::after {
        display: block;
        background:
            linear-gradient(180deg, rgba(2, 10, 20, 0.18) 0%, rgba(2, 10, 20, 0.06) 30%, rgba(2, 10, 20, 0.68) 72%, rgba(10, 26, 44, 0.28) 100%),
            linear-gradient(90deg, rgba(2, 10, 20, 0.7) 0%, rgba(2, 10, 20, 0.24) 50%, rgba(2, 10, 20, 0.05) 100%);
    }

    .hero-video-shell {
        height: 100%;
        min-height: 0;
    }

    .hero-video-shell__embed,
    .hero-video-shell__poster img {
        object-position: 68% 72%;
    }

    .hero-content {
        position: relative;
        inset: auto;
        width: 100%;
        height: 100%;
        padding: 0 16px 28px;
        display: flex;
        align-items: flex-end;
    }

    .hero-copy {
        width: 100%;
        max-width: none;
        padding: 0;
    }

    .hero-copy::before {
        inset: -18px -10px -18px -10px;
        background:
            linear-gradient(180deg, rgba(3, 16, 30, 0.08) 0%, rgba(3, 16, 30, 0.7) 34%, rgba(3, 16, 30, 0.88) 100%);
        border: 0;
    }

    .hero h1 {
        max-width: 8ch;
        font-size: clamp(2.9rem, 13vw, 4rem);
        line-height: 0.92;
    }

    .hero-copy > p:not(.eyebrow):not(.hero-slogan) {
        max-width: 24ch;
        margin-top: 14px;
        font-size: 0.94rem;
        line-height: 1.4;
    }

    .hero-slogan {
        margin-top: 14px;
        font-size: 0.68rem;
        line-height: 1.3;
        letter-spacing: 0.08em;
    }

    .hero-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
        width: 100%;
        margin-top: 16px;
    }

    .hero-actions .btn {
        width: 100%;
        min-width: 0;
        min-height: 44px;
        padding: 0 12px;
        font-size: 0.72rem;
        letter-spacing: 0.08em;
        line-height: 1.12;
        text-align: center;
    }

    .scroll-cue {
        display: none;
    }

    .hero-signature {
        width: min(100%, calc(100% - 28px));
        margin-top: 10px;
    }
}

@media (max-width: 390px) {
    .hero {
        height: 480px;
        min-height: 480px;
    }

    .hero-content {
        padding: 0 14px 24px;
    }
}

body.home-redesign {
    --spotlight-navy: #07111d;
    --spotlight-navy-soft: #102338;
    --spotlight-ink: #10243d;
    --spotlight-ivory: #f8f1e7;
    --spotlight-champagne: #eac88f;
    --spotlight-champagne-strong: #ffdba4;
    --spotlight-copper: #b1795b;
    --spotlight-line: rgba(218, 183, 123, 0.2);
    background:
        radial-gradient(circle at 18% -6%, rgba(255, 219, 164, 0.16), transparent 32%),
        radial-gradient(circle at 84% 10%, rgba(99, 166, 242, 0.18), transparent 24%),
        linear-gradient(180deg, #fbf6ee 0%, #f4f7fb 24%, #f6f1e8 100%);
}

.home-redesign .top-header.top-header--campaign,
.home-redesign .top-header.top-header--campaign.is-scrolled {
    background:
        radial-gradient(circle at 16% 0%, rgba(255, 217, 154, 0.12), transparent 24%),
        radial-gradient(circle at 84% 18%, rgba(84, 158, 242, 0.14), transparent 26%),
        linear-gradient(180deg, rgba(7, 17, 29, 0.985) 0%, rgba(8, 18, 30, 0.985) 100%);
    border-bottom-color: rgba(234, 200, 143, 0.16);
    box-shadow: 0 18px 42px rgba(4, 10, 19, 0.22);
}

.home-redesign .top-header.top-header--campaign::before {
    background: linear-gradient(
        116deg,
        transparent 2%,
        rgba(255, 217, 154, 0.04) 18%,
        rgba(255, 217, 154, 0.18) 38%,
        rgba(255, 255, 255, 0.1) 50%,
        rgba(84, 158, 242, 0.04) 72%,
        transparent 100%
    );
}

.home-redesign .top-header.top-header--campaign::after {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.05), transparent 34%),
        radial-gradient(circle at 82% 16%, rgba(84, 158, 242, 0.08), transparent 24%);
}

.home-redesign .top-header.top-header--campaign .site-brand--campaign .site-brand__copy span,
.home-redesign .top-header.top-header--campaign .top-header__quick-link,
.home-redesign .top-header.top-header--campaign .top-header__lang {
    color: rgba(255, 224, 178, 0.92);
}

.home-redesign .top-header.top-header--campaign .top-header__social .social-link,
.home-redesign .top-header.top-header--campaign .site-menu.site-menu--campaign a,
.home-redesign .top-header.top-header--campaign .header-cta.header-cta--campaign {
    border-color: rgba(255, 224, 178, 0.18);
}

.home-redesign .hero-breadcrumb-band--spotlight {
    width: min(1420px, calc(100% - 48px));
    margin: 0 auto -18px;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    color: rgba(70, 64, 57, 0.76);
}

.home-redesign .hero-breadcrumb-band--spotlight .hero-breadcrumb-band__inner {
    display: inline-flex;
    width: auto;
    padding: 14px 18px;
    border-radius: 999px;
    border: 1px solid rgba(255, 220, 170, 0.16);
    background: rgba(255, 249, 240, 0.78);
    box-shadow: 0 18px 40px rgba(12, 24, 40, 0.12);
    backdrop-filter: blur(14px);
    justify-content: flex-start;
    gap: 12px;
}

.home-redesign .hero-breadcrumb-band--spotlight .hero-breadcrumb-band__inner a,
.home-redesign .hero-breadcrumb-band--spotlight .hero-breadcrumb-band__inner strong {
    color: rgba(67, 61, 55, 0.76);
}

.home-redesign .hero-breadcrumb-band--spotlight .hero-breadcrumb-band__inner strong {
    color: var(--spotlight-copper);
}

.home-redesign .hero.hero--spotlight {
    position: relative;
    height: clamp(700px, 86vh, 880px);
    min-height: 700px;
    padding: clamp(22px, 3vw, 34px);
    overflow: hidden;
    isolation: isolate;
    background:
        radial-gradient(circle at 18% 18%, rgba(255, 218, 156, 0.12), transparent 26%),
        radial-gradient(circle at 82% 18%, rgba(94, 165, 255, 0.22), transparent 28%),
        linear-gradient(180deg, rgba(3, 10, 18, 0.2) 0%, rgba(3, 10, 18, 0.56) 100%);
}

.home-redesign .hero.hero--spotlight::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(100deg, rgba(3, 8, 16, 0.84) 6%, rgba(3, 8, 16, 0.42) 42%, rgba(3, 8, 16, 0.14) 66%, rgba(3, 8, 16, 0.9) 100%),
        linear-gradient(180deg, rgba(255, 228, 182, 0.1), transparent 24%);
}

.home-redesign .hero.hero--spotlight::after {
    content: '';
    position: absolute;
    right: -10%;
    bottom: -12%;
    z-index: 1;
    width: 54%;
    height: 62%;
    background: radial-gradient(circle, rgba(255, 217, 154, 0.25) 0, rgba(255, 217, 154, 0.12) 24%, transparent 72%);
    filter: blur(24px);
    opacity: 0.7;
    pointer-events: none;
}

.home-redesign .hero.hero--spotlight .hero-media {
    position: absolute;
    inset: 0;
}

.home-redesign .hero.hero--spotlight .hero-video-shell {
    background:
        linear-gradient(180deg, rgba(4, 10, 19, 0.22) 0%, rgba(4, 10, 19, 0.52) 100%),
        url('../imagens/web/ensaio-whatsapp-daniel-02.jpg') center 34% / cover no-repeat;
}

.home-redesign .hero.hero--spotlight .hero-media::after {
    background: linear-gradient(180deg, rgba(4, 10, 19, 0.04) 0%, rgba(4, 10, 19, 0.22) 32%, rgba(4, 10, 19, 0.78) 100%);
}

.home-redesign .hero.hero--spotlight .hero-video-shell__embed {
    opacity: 0.58;
    filter: saturate(0.96) contrast(1.08) brightness(0.82);
}

.home-redesign .hero.hero--spotlight .hero-content {
    position: relative;
    inset: auto;
    z-index: 2;
    width: min(1400px, 100%);
    height: 100%;
    margin: 0 auto;
    padding: clamp(110px, 14vw, 156px) clamp(14px, 2vw, 24px) clamp(36px, 6vw, 60px);
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(290px, 0.58fr);
    gap: 24px;
    align-items: end;
    pointer-events: none;
}

.home-redesign .hero.hero--spotlight .hero-content::before,
.home-redesign .hero.hero--spotlight .hero-content::after {
    display: none;
}

.home-redesign .hero.hero--spotlight .hero-copy {
    width: 100%;
    max-width: none;
    padding: clamp(28px, 4vw, 44px);
    border-radius: 28px 28px 28px 8px;
    border: 1px solid rgba(255, 218, 156, 0.18);
    background: linear-gradient(145deg, rgba(6, 17, 30, 0.86) 0%, rgba(7, 20, 35, 0.66) 58%, rgba(10, 27, 46, 0.52) 100%);
    box-shadow: 0 32px 70px rgba(4, 12, 22, 0.36);
    backdrop-filter: blur(16px);
    pointer-events: auto;
}

.home-redesign .hero.hero--spotlight .hero-copy::before {
    inset: 14px auto auto 14px;
    width: 120px;
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(255, 221, 170, 0.78), rgba(255, 255, 255, 0));
    opacity: 0.8;
}

.home-redesign .hero.hero--spotlight .hero-copy::after {
    display: none;
}

.home-redesign .hero.hero--spotlight .hero-copy > * {
    position: relative;
    z-index: 1;
}

.home-redesign .hero.hero--spotlight .eyebrow {
    color: rgba(255, 228, 185, 0.8);
    font-size: 0.68rem;
    letter-spacing: 0.28em;
}

.home-redesign .hero-kicker {
    display: inline-flex;
    margin: 0 0 12px;
    color: var(--spotlight-champagne);
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(1.12rem, 1.8vw, 1.48rem);
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.home-redesign .hero.hero--spotlight h1 {
    max-width: 13ch;
    margin: 0;
    color: #fffaf3;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(3.7rem, 6vw, 5.6rem);
    line-height: 0.9;
    letter-spacing: -0.045em;
    text-shadow: 0 16px 32px rgba(0, 0, 0, 0.36);
}

.home-redesign .hero.hero--spotlight .hero-lead {
    max-width: 34rem;
    margin-top: 16px;
    color: rgba(245, 241, 233, 0.9);
    font-size: 1.04rem;
    line-height: 1.7;
}

.home-redesign .hero.hero--spotlight .hero-slogan {
    color: rgba(255, 221, 170, 0.92);
    font-size: 0.79rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.home-redesign .hero.hero--spotlight .hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 26px;
}

.home-redesign .hero.hero--spotlight .hero-actions .btn,
.home-redesign .booking-teaser .btn,
.home-redesign .section--booking .tickets-actions .btn {
    min-width: 196px;
    border-radius: 999px;
}

.home-redesign .hero.hero--spotlight .hero-proof-inline {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

.home-redesign .hero.hero--spotlight .hero-proof-inline span,
.home-redesign .booking-teaser__meta span,
.home-redesign .section--booking .tickets-meta span,
.home-redesign .show-card__details span {
    display: inline-flex;
    align-items: center;
    padding: 10px 14px;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.home-redesign .hero.hero--spotlight .hero-proof-inline span {
    border: 1px solid rgba(255, 228, 185, 0.16);
    background: rgba(255, 255, 255, 0.06);
    color: rgba(249, 241, 231, 0.88);
}

.home-redesign .hero-poster {
    position: relative;
    align-self: end;
    justify-self: end;
    max-width: 360px;
    padding: 28px 26px 26px;
    border-radius: 28px 8px 28px 28px;
    background: linear-gradient(180deg, rgba(248, 241, 231, 0.98) 0%, rgba(239, 223, 191, 0.95) 100%);
    color: var(--spotlight-ink);
    border: 1px solid rgba(234, 200, 143, 0.42);
    box-shadow: 0 26px 60px rgba(0, 0, 0, 0.28);
    transform: rotate(3deg);
    pointer-events: auto;
}

.home-redesign .hero-poster::after {
    content: 'BC';
    position: absolute;
    top: 18px;
    right: 18px;
    color: rgba(16, 36, 61, 0.08);
    font-family: 'Cormorant Garamond', serif;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1;
}

.home-redesign .hero-poster__eyebrow,
.home-redesign .booking-teaser__kicker,
.home-redesign .manifesto-note__kicker,
.home-redesign .experience-copy__eyebrow,
.home-redesign .show-card__eyebrow,
.home-redesign .proof-card__label {
    display: inline-flex;
    align-items: center;
    margin: 0;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.home-redesign .hero-poster__eyebrow {
    color: rgba(16, 36, 61, 0.58);
}

.home-redesign .hero-poster__title {
    display: block;
    margin-top: 12px;
    color: var(--spotlight-ink);
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2rem, 3vw, 2.85rem);
    line-height: 0.98;
    letter-spacing: -0.03em;
}

.home-redesign .hero-poster__text {
    margin: 12px 0 0;
    color: rgba(16, 36, 61, 0.74);
    line-height: 1.62;
}

.home-redesign .hero-poster__list,
.home-redesign .experience-bullets {
    margin: 16px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 10px;
}

.home-redesign .hero-poster__list li,
.home-redesign .experience-bullets li {
    position: relative;
    padding-left: 18px;
    line-height: 1.55;
}

.home-redesign .hero-poster__list li::before,
.home-redesign .experience-bullets li::before {
    content: '';
    position: absolute;
    top: 0.72em;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--spotlight-champagne-strong), var(--spotlight-copper));
}

.home-redesign .hero-poster__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
    padding: 12px 18px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(16, 36, 61, 0.96), rgba(23, 51, 82, 0.96));
    color: #fff8ec;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 16px 32px rgba(14, 27, 45, 0.22);
    transition: transform 0.24s ease, box-shadow 0.24s ease;
}

.home-redesign .hero-poster__link:hover,
.home-redesign .hero-poster__link:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(14, 27, 45, 0.28);
}

.home-redesign .hero-signature--spotlight {
    width: min(820px, calc(100% - 52px));
    margin: 12px auto 28px;
    gap: 14px;
}

.home-redesign .hero-signature--spotlight .hero-signature__mark {
    color: rgba(177, 121, 91, 0.78);
}

.home-redesign .hero-signature--spotlight .hero-signature__label {
    color: rgba(84, 78, 70, 0.66);
}

.home-redesign .hero-signature--spotlight strong {
    color: #1e3556;
}

.home-redesign .container--editorial {
    padding-top: clamp(20px, 3vw, 34px);
}

.home-redesign .proof-strip {
    margin: 0 0 28px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.home-redesign .proof-card {
    padding: 24px 22px;
    border-radius: 22px;
    border: 1px solid rgba(16, 36, 61, 0.08);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(246, 239, 229, 0.96));
    box-shadow: 0 18px 46px rgba(10, 20, 35, 0.08);
}

.home-redesign .proof-card__label {
    color: rgba(16, 36, 61, 0.54);
}

.home-redesign .proof-card strong {
    display: block;
    margin: 10px 0 8px;
    color: var(--spotlight-ink);
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.72rem;
    line-height: 1.02;
    letter-spacing: -0.02em;
}

.home-redesign .proof-card p {
    margin: 0;
    color: rgba(16, 36, 61, 0.7);
    line-height: 1.6;
}

.home-redesign .section--manifesto,
.home-redesign .section--acts,
.home-redesign .section--show-recap,
.home-redesign .section--booking {
    border-radius: 30px;
}

.home-redesign .section--manifesto {
    border-color: rgba(177, 121, 91, 0.18);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(251, 243, 230, 0.98) 44%, rgba(240, 246, 252, 0.96) 100%);
}

.home-redesign .section--manifesto h2,
.home-redesign .section--show-recap h2,
.home-redesign .section--booking h2 {
    max-width: 14ch;
}

.home-redesign .manifesto-grid,
.home-redesign .section-head--split,
.home-redesign .showcase-head,
.home-redesign .experience-showcase--editorial,
.home-redesign .section--booking .booking-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
    gap: 24px;
    align-items: start;
}

.home-redesign .manifesto-pillars {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.home-redesign .manifesto-pillars span {
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(16, 36, 61, 0.06);
    border: 1px solid rgba(177, 121, 91, 0.12);
    color: #173352;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.home-redesign .manifesto-note {
    position: relative;
    padding: 28px 24px;
    border-radius: 22px;
    background: linear-gradient(160deg, rgba(10, 24, 40, 0.98) 0%, rgba(15, 34, 56, 0.92) 100%);
    color: rgba(246, 241, 234, 0.94);
    box-shadow: 0 24px 60px rgba(5, 14, 28, 0.18);
    overflow: hidden;
}

.home-redesign .manifesto-note::before {
    content: '';
    position: absolute;
    inset: 16px;
    border: 1px solid rgba(255, 221, 170, 0.12);
    border-radius: 16px;
    pointer-events: none;
}

.home-redesign .manifesto-note__kicker {
    position: relative;
    z-index: 1;
    color: rgba(255, 226, 180, 0.82);
}

.home-redesign .manifesto-note__quote {
    position: relative;
    z-index: 1;
    margin: 12px 0 18px;
    color: #fffaf3;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2rem, 3vw, 2.6rem);
    line-height: 1.02;
    letter-spacing: -0.03em;
}

.home-redesign .manifesto-note__meta {
    position: relative;
    z-index: 1;
    margin: 0;
    color: rgba(239, 244, 249, 0.82);
}

.home-redesign .section--acts {
    border-color: rgba(255, 220, 170, 0.12);
    background:
        radial-gradient(circle at 14% 16%, rgba(255, 220, 170, 0.16), transparent 28%),
        radial-gradient(circle at 84% 18%, rgba(100, 190, 255, 0.12), transparent 26%),
        linear-gradient(160deg, rgba(6, 16, 28, 0.99) 0%, rgba(6, 20, 36, 0.97) 48%, rgba(3, 10, 18, 1) 100%);
}

.home-redesign .section-head--split {
    align-items: end;
    margin-bottom: 28px;
}

.home-redesign .section--acts h2 {
    max-width: 13ch;
    color: #fffaf3;
}

.home-redesign .section-head--split .section-lead {
    margin: 0;
}

.home-redesign .acts-grid,
.home-redesign .booking-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.home-redesign .acts-grid {
    margin-top: 18px;
}

.home-redesign .act-card {
    position: relative;
    min-height: 212px;
    padding: 26px 22px 22px;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.03));
    overflow: hidden;
}

.home-redesign .act-card::after {
    content: '';
    position: absolute;
    right: -20%;
    bottom: -30%;
    width: 160px;
    height: 160px;
    background: radial-gradient(circle, rgba(255, 216, 152, 0.18) 0, transparent 70%);
}

.home-redesign .act-card__index {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 228, 185, 0.9);
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.12em;
}

.home-redesign .act-card h3 {
    position: relative;
    z-index: 1;
    margin: 16px 0 10px;
    color: #fffaf3;
    font-family: 'Cormorant Garamond', serif;
    font-size: 2rem;
    line-height: 0.96;
    letter-spacing: -0.02em;
}

.home-redesign .act-card p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: rgba(228, 239, 250, 0.84);
}

.home-redesign .experience-copy {
    padding: 28px;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.03));
}

.home-redesign .experience-copy__eyebrow {
    color: rgba(255, 228, 185, 0.82);
}

.home-redesign .experience-copy strong {
    display: block;
    margin-top: 12px;
    color: #fffaf3;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2rem, 3.5vw, 3rem);
    line-height: 0.96;
    letter-spacing: -0.03em;
}

.home-redesign .experience-copy p {
    margin-top: 14px;
    color: rgba(231, 240, 249, 0.84);
}

.home-redesign .experience-short--editorial {
    min-height: 420px;
    height: 100%;
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: #000;
    box-shadow: 0 26px 60px rgba(2, 10, 20, 0.26);
}

.home-redesign .experience-short--editorial video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.home-redesign .section--show-recap {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(245, 248, 252, 0.97) 42%, rgba(250, 242, 231, 0.96) 100%);
}

.home-redesign .showcase-head {
    align-items: end;
    margin-bottom: 24px;
}

.home-redesign .show-shell--spotlight {
    display: grid;
    grid-template-columns: minmax(0, 0.88fr) minmax(0, 1fr);
    gap: 0;
    border-radius: 28px;
    overflow: hidden;
    border: 1px solid rgba(16, 36, 61, 0.08);
    background: linear-gradient(135deg, rgba(9, 20, 34, 0.98) 0%, rgba(16, 36, 61, 0.94) 36%, rgba(248, 241, 231, 0.96) 36.2%, rgba(248, 241, 231, 0.98) 100%);
    box-shadow: 0 26px 64px rgba(10, 20, 35, 0.14);
}

.home-redesign .show-poster {
    position: relative;
    min-height: 440px;
    margin: 0;
    overflow: hidden;
}

.home-redesign .show-poster img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    filter: saturate(1.05) contrast(1.04);
}

.home-redesign .show-poster::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(5, 12, 22, 0.08) 0%, rgba(5, 12, 22, 0.18) 32%, rgba(5, 12, 22, 0.62) 100%);
}

.home-redesign .show-poster__badge {
    position: absolute;
    top: 22px;
    left: 22px;
    z-index: 1;
    display: inline-flex;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255, 247, 230, 0.9);
    color: #152741;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18);
}

.home-redesign .show-card--spotlight {
    position: relative;
    display: grid;
    align-content: center;
    gap: 18px;
    padding: 34px;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.home-redesign .show-card--spotlight::before {
    content: '';
    position: absolute;
    inset: 18px 18px 18px 0;
    border: 1px solid rgba(177, 121, 91, 0.14);
    border-left: 0;
    border-radius: 0 22px 22px 0;
    pointer-events: none;
}

.home-redesign .show-card__eyebrow {
    color: rgba(16, 36, 61, 0.62);
}

.home-redesign .show-card__title {
    margin: 0;
    color: var(--spotlight-ink);
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2.1rem, 4vw, 3.3rem);
    line-height: 0.96;
    letter-spacing: -0.03em;
}

.home-redesign .show-card--spotlight p {
    margin: 0;
    color: rgba(16, 36, 61, 0.78);
    font-size: 1rem;
    line-height: 1.7;
}

.home-redesign .show-card__details {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.home-redesign .show-card__details span {
    border: 1px solid rgba(16, 36, 61, 0.09);
    background: rgba(255, 255, 255, 0.66);
    color: #173352;
}

.home-redesign .show-card--spotlight .show-tags span {
    border-color: rgba(177, 121, 91, 0.18);
    background: rgba(255, 255, 255, 0.7);
    color: #173352;
}

.home-redesign .show-card--spotlight .show-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.home-redesign .booking-teaser {
    position: relative;
    margin: 0 0 30px;
    padding: clamp(28px, 4vw, 44px);
    border-radius: 28px;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) auto;
    gap: 24px;
    align-items: center;
    background:
        radial-gradient(circle at 12% 18%, rgba(255, 217, 154, 0.18), transparent 24%),
        radial-gradient(circle at 82% 18%, rgba(84, 158, 242, 0.16), transparent 22%),
        linear-gradient(135deg, rgba(8, 17, 31, 0.98) 0%, rgba(10, 25, 43, 0.96) 55%, rgba(13, 29, 48, 0.98) 100%);
    border: 1px solid rgba(255, 219, 164, 0.16);
    box-shadow: 0 30px 74px rgba(4, 11, 22, 0.22);
    color: #fbf7f0;
    overflow: hidden;
}

.home-redesign .booking-teaser::before {
    content: '';
    position: absolute;
    right: -16%;
    bottom: -40%;
    width: 320px;
    height: 320px;
    background: radial-gradient(circle, rgba(255, 216, 152, 0.26) 0, transparent 70%);
    pointer-events: none;
}

.home-redesign .booking-teaser__copy,
.home-redesign .booking-teaser__actions {
    position: relative;
    z-index: 1;
}

.home-redesign .booking-teaser__kicker {
    color: rgba(255, 226, 180, 0.82);
}

.home-redesign .booking-teaser h2 {
    max-width: 15ch;
    margin: 10px 0 12px;
    color: #fffaf3;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2.4rem, 4.6vw, 4rem);
    line-height: 0.94;
    letter-spacing: -0.04em;
}

.home-redesign .booking-teaser p {
    max-width: 44rem;
    margin: 0;
    color: rgba(239, 244, 249, 0.84);
}

.home-redesign .booking-teaser__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}

.home-redesign .booking-teaser__meta span {
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.06);
    color: rgba(255, 246, 231, 0.88);
}

.home-redesign .booking-teaser__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: flex-end;
}

.home-redesign .booking-teaser .btn.btn--ghost {
    color: #fff;
    border-color: rgba(255, 255, 255, 0.16);
    background: rgba(255, 255, 255, 0.06);
}

.home-redesign .booking-teaser .btn.btn--ghost:hover,
.home-redesign .booking-teaser .btn.btn--ghost:focus-visible {
    background: rgba(255, 255, 255, 0.12);
}

.home-redesign .section--booking {
    border-color: rgba(177, 121, 91, 0.14);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.985) 0%, rgba(251, 243, 230, 0.98) 52%, rgba(240, 246, 252, 0.96) 100%);
}

.home-redesign .section--booking .tickets-shell {
    margin-top: 30px;
    padding: 36px 32px 30px;
    border-radius: 28px;
    border-color: rgba(177, 121, 91, 0.18);
    background: linear-gradient(140deg, rgba(255, 253, 249, 0.99) 0%, rgba(250, 244, 235, 0.97) 46%, rgba(238, 245, 252, 0.95) 100%);
    box-shadow: 0 26px 64px rgba(10, 20, 35, 0.12);
}

.home-redesign .section--booking .tickets-shell::before {
    background: linear-gradient(116deg, transparent 10%, rgba(255, 220, 170, 0.12) 28%, rgba(255, 255, 255, 0.74) 42%, transparent 58%);
}

.home-redesign .section--booking .tickets-copy strong {
    display: block;
    color: var(--spotlight-ink);
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2.2rem, 4vw, 3.5rem);
    line-height: 0.94;
    letter-spacing: -0.03em;
}

.home-redesign .section--booking .tickets-copy p {
    margin-top: 14px;
    max-width: 44rem;
}

.home-redesign .section--booking .tickets-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}

.home-redesign .section--booking .tickets-meta span {
    border: 1px solid rgba(177, 121, 91, 0.12);
    background: rgba(16, 36, 61, 0.06);
    color: #173352;
}

.home-redesign .booking-step {
    position: relative;
    padding: 22px 18px 20px;
    border-radius: 22px;
    border: 1px solid rgba(16, 36, 61, 0.1);
    background: rgba(255, 255, 255, 0.72);
    box-shadow: 0 14px 36px rgba(10, 20, 35, 0.06);
}

.home-redesign .booking-step span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    margin-bottom: 12px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(16, 36, 61, 0.95), rgba(23, 51, 82, 0.95));
    color: #fff7ea;
    font-size: 0.88rem;
    font-weight: 800;
}

.home-redesign .booking-step strong {
    display: block;
    color: var(--spotlight-ink);
    font-size: 1rem;
}

.home-redesign .booking-step p {
    margin: 8px 0 0;
    color: rgba(16, 36, 61, 0.74);
    font-size: 0.94rem;
    line-height: 1.55;
}

.home-redesign .section--booking .tickets-actions {
    margin-top: 24px;
    justify-content: flex-start;
    gap: 12px;
}

.home-redesign .section--booking .tickets-actions .btn.btn--ghost {
    border-color: rgba(16, 36, 61, 0.14);
    color: #173352;
    background: rgba(255, 255, 255, 0.7);
}

@media (max-width: 1180px) {
    .home-redesign .hero.hero--spotlight .hero-content {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-redesign .hero-poster {
        max-width: 420px;
        justify-self: start;
        transform: translateY(-6px) rotate(0deg);
    }

    .home-redesign .proof-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-redesign .manifesto-grid,
    .home-redesign .section-head--split,
    .home-redesign .showcase-head,
    .home-redesign .experience-showcase--editorial,
    .home-redesign .section--booking .booking-grid,
    .home-redesign .booking-teaser {
        grid-template-columns: 1fr;
    }

    .home-redesign .booking-teaser__actions {
        justify-content: flex-start;
    }
}

@media (max-width: 960px) {
    .home-redesign .hero-breadcrumb-band--spotlight {
        width: min(100%, calc(100% - 30px));
        margin-bottom: -10px;
    }

    .home-redesign .hero.hero--spotlight {
        height: auto;
        min-height: 0;
        padding: 16px;
    }

    .home-redesign .hero.hero--spotlight .hero-content {
        height: auto;
        padding: clamp(88px, 18vw, 124px) 0 28px;
        gap: 18px;
    }

    .home-redesign .hero.hero--spotlight .hero-copy {
        padding: 24px 20px;
        border-radius: 24px;
    }

    .home-redesign .hero.hero--spotlight h1 {
        max-width: 10ch;
        font-size: clamp(3.1rem, 12vw, 4.6rem);
    }

    .home-redesign .hero.hero--spotlight .hero-lead {
        max-width: none;
        font-size: 0.98rem;
    }

    .home-redesign .hero.hero--spotlight .hero-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .home-redesign .hero.hero--spotlight .hero-actions .btn,
    .home-redesign .booking-teaser .btn {
        width: 100%;
        min-width: 0;
    }

    .home-redesign .hero.hero--spotlight .hero-proof-inline {
        gap: 8px;
    }

    .home-redesign .hero.hero--spotlight .hero-proof-inline span {
        font-size: 0.68rem;
    }

    .home-redesign .hero-poster {
        max-width: none;
        padding: 22px 20px;
        border-radius: 24px;
    }

    .home-redesign .hero-signature--spotlight {
        width: min(100%, calc(100% - 28px));
        margin-bottom: 24px;
    }

    .home-redesign .proof-strip,
    .home-redesign .acts-grid,
    .home-redesign .booking-steps {
        grid-template-columns: 1fr;
    }

    .home-redesign .show-shell--spotlight {
        grid-template-columns: 1fr;
        background: linear-gradient(180deg, rgba(9, 20, 34, 0.98) 0%, rgba(9, 20, 34, 0.98) 44%, rgba(248, 241, 231, 0.98) 44.2%, rgba(248, 241, 231, 0.98) 100%);
    }

    .home-redesign .show-poster {
        min-height: 320px;
    }

    .home-redesign .show-card--spotlight::before {
        inset: 0 18px 18px;
        border-left: 1px solid rgba(177, 121, 91, 0.14);
        border-radius: 0 0 22px 22px;
    }
}

@media (max-width: 640px) {
    .home-redesign .hero-breadcrumb-band--spotlight .hero-breadcrumb-band__inner {
        padding: 0 2px;
        font-size: 0.62rem;
        letter-spacing: 0.18em;
    }

    .home-redesign .hero.hero--spotlight .hero-content {
        padding-top: 86px;
    }

    .home-redesign .hero.hero--spotlight .hero-copy {
        padding: 22px 18px;
    }

    .home-redesign .hero.hero--spotlight h1 {
        max-width: 9ch;
        font-size: clamp(2.85rem, 13vw, 3.9rem);
    }

    .home-redesign .hero.hero--spotlight .hero-slogan {
        font-size: 0.7rem;
    }

    .home-redesign .proof-card,
    .home-redesign .manifesto-note,
    .home-redesign .act-card,
    .home-redesign .experience-copy,
    .home-redesign .show-card--spotlight,
    .home-redesign .booking-teaser,
    .home-redesign .section--booking .tickets-shell,
    .home-redesign .booking-step {
        border-radius: 20px;
    }
}

.home-redesign .top-header.top-header--campaign,
.home-redesign .top-header.top-header--campaign.is-scrolled {
    overflow: visible;
}

.home-redesign .top-header.top-header--campaign .header-nav-shell.header-nav-shell--campaign {
    width: min(340px, calc(100vw - 32px));
    border-radius: 20px;
    z-index: 260;
}

.home-redesign .top-header.top-header--campaign .site-menu.site-menu--campaign a,
.home-redesign .top-header.top-header--campaign .header-cta.header-cta--campaign {
    border-radius: 14px;
}

.home-redesign .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign.is-open {
    background: rgba(255, 224, 178, 0.08);
    color: #fff3d9;
}

@media (max-width: 640px) {
    .home-redesign .top-header.top-header--campaign,
    .home-redesign .top-header.top-header--campaign.is-scrolled {
        padding: 0 8px;
        overflow: visible;
    }

    .home-redesign .top-header.top-header--campaign::after,
    .home-redesign .top-header.top-header--campaign .top-header__quick::after {
        content: none !important;
        display: none !important;
    }

    .home-redesign .top-header.top-header--campaign .top-header__inner {
        min-height: 74px;
        padding: 0 4px;
        gap: 8px;
    }

    .home-redesign .top-header.top-header--campaign .site-brand--campaign {
        gap: 8px;
    }

    .home-redesign .top-header.top-header--campaign .site-brand--campaign .site-brand__mark {
        font-size: 1.42rem;
    }

    .home-redesign .top-header.top-header--campaign .site-brand--campaign strong {
        font-size: 0.48rem;
        letter-spacing: 0.08em;
    }

    .home-redesign .top-header.top-header--campaign .site-brand--campaign .site-brand__copy span,
    .home-redesign .top-header.top-header--campaign .top-header__quick-link,
    .home-redesign .top-header.top-header--campaign .top-header__lang {
        display: none !important;
    }

    .home-redesign .top-header.top-header--campaign .top-header__quick {
        position: static !important;
        display: inline-flex !important;
        align-items: center;
        justify-content: flex-end;
        width: auto !important;
        height: auto !important;
        min-width: 0;
        gap: 6px;
        opacity: 1;
        visibility: visible;
        transform: none !important;
        z-index: 3;
    }

    .home-redesign .top-header.top-header--campaign .top-header__social {
        display: inline-flex !important;
        align-items: center;
        gap: 6px;
    }

    .home-redesign .top-header.top-header--campaign .top-header__social .social-link {
        width: 34px;
        height: 34px;
        border-radius: 12px;
        border-color: rgba(255, 224, 178, 0.16);
        background:
            radial-gradient(circle at 30% 30%, rgba(255, 255, 255, 0.16), transparent 34%),
            linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.03));
    }

    .home-redesign .top-header.top-header--campaign .top-header__social .social-link svg {
        width: 14px;
        height: 14px;
    }

    .home-redesign .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign {
        position: relative !important;
        inset: auto !important;
        top: auto !important;
        right: auto !important;
        left: auto !important;
        width: 40px;
        height: 40px;
        border-radius: 12px;
        border: 1px solid rgba(109, 233, 255, 0.22);
        background: rgba(109, 233, 255, 0.08);
        box-shadow: 0 12px 24px rgba(2, 11, 26, 0.18);
    }

    .home-redesign .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign span {
        display: block !important;
        width: 18px;
        height: 2px;
    }

    .home-redesign .top-header.top-header--campaign .header-nav-shell.header-nav-shell--campaign {
        position: fixed;
        top: calc(var(--site-header-height, 74px) + 10px) !important;
        right: 12px !important;
        left: 12px !important;
        width: auto !important;
        max-height: calc(100dvh - var(--site-header-height, 74px) - 24px) !important;
        padding: 14px;
        border-radius: 20px;
    }

    .home-redesign .top-header.top-header--campaign .site-menu.site-menu--campaign a,
    .home-redesign .top-header.top-header--campaign .header-cta.header-cta--campaign {
        min-height: 48px;
        padding-inline: 14px;
        border-radius: 14px;
    }

    .home-redesign .hero-breadcrumb-band--spotlight {
        display: none;
    }

    .home-redesign .hero.hero--spotlight {
        padding: 12px 12px 0;
    }

    .home-redesign .hero.hero--spotlight .hero-content {
        padding-top: 78px;
        padding-bottom: 14px;
        gap: 12px;
    }

    .home-redesign .hero.hero--spotlight .hero-copy {
        padding: 18px 16px;
        border-radius: 22px;
    }

    .home-redesign .hero.hero--spotlight .hero-copy::before {
        inset: 12px auto auto 12px;
        width: 84px;
    }

    .home-redesign .hero.hero--spotlight h1 {
        max-width: 8.5ch;
        font-size: clamp(2.55rem, 12vw, 3.45rem);
    }

    .home-redesign .hero.hero--spotlight .hero-lead {
        margin-top: 12px;
        font-size: 0.94rem;
        line-height: 1.58;
    }

    .home-redesign .hero.hero--spotlight .hero-slogan {
        display: none;
    }

    .home-redesign .hero.hero--spotlight .hero-actions {
        margin-top: 14px;
    }

    .home-redesign .hero.hero--spotlight .hero-actions .btn,
    .home-redesign .booking-teaser .btn,
    .home-redesign .section--booking .tickets-actions .btn {
        min-height: 46px;
    }

    .home-redesign .hero.hero--spotlight .hero-proof-inline {
        margin-top: 14px;
        gap: 8px;
    }

    .home-redesign .hero.hero--spotlight .hero-proof-inline span,
    .home-redesign .booking-teaser__meta span,
    .home-redesign .section--booking .tickets-meta span,
    .home-redesign .show-card__details span {
        padding: 8px 11px;
        font-size: 0.62rem;
    }

    .home-redesign .hero-poster {
        padding: 18px 16px;
        border-radius: 22px;
        transform: none;
    }

    .home-redesign .hero-poster__title {
        font-size: clamp(1.8rem, 9vw, 2.4rem);
    }

    .home-redesign .hero-poster__text,
    .home-redesign .hero-poster__list li {
        font-size: 0.92rem;
        line-height: 1.54;
    }

    .home-redesign .hero-poster__link {
        width: 100%;
        min-height: 44px;
    }

    .home-redesign .hero-signature--spotlight {
        margin: 6px auto 14px;
    }

    .home-redesign .container--editorial {
        padding: 12px 12px 44px;
    }

    .home-redesign .proof-strip {
        gap: 10px;
        margin-bottom: 18px;
    }

    .home-redesign .proof-card {
        padding: 16px 14px;
        border-radius: 18px;
    }

    .home-redesign .proof-card strong {
        font-size: 1.46rem;
    }

    .home-redesign .section,
    .home-redesign .booking-teaser {
        margin-bottom: 16px;
        padding: 20px 16px;
        border-radius: 20px;
    }

    .home-redesign .manifesto-grid,
    .home-redesign .section-head--split,
    .home-redesign .showcase-head,
    .home-redesign .experience-showcase--editorial,
    .home-redesign .section--booking .booking-grid {
        gap: 14px;
    }

    .home-redesign .section h2,
    .home-redesign .booking-teaser h2,
    .home-redesign .section--booking .tickets-copy strong,
    .home-redesign .show-card__title {
        max-width: none;
        font-size: clamp(2rem, 8.6vw, 2.7rem);
        line-height: 0.96;
    }

    .home-redesign .section-lead,
    .home-redesign .manifesto-note__meta,
    .home-redesign .experience-copy p,
    .home-redesign .show-card--spotlight p,
    .home-redesign .booking-teaser p,
    .home-redesign .section--booking .tickets-copy p {
        font-size: 0.94rem;
        line-height: 1.56;
    }

    .home-redesign .manifesto-pillars {
        gap: 8px;
        margin-top: 16px;
    }

    .home-redesign .manifesto-pillars span {
        padding: 8px 11px;
        font-size: 0.66rem;
    }

    .home-redesign .manifesto-note,
    .home-redesign .experience-copy,
    .home-redesign .show-card--spotlight,
    .home-redesign .booking-step {
        padding: 20px 16px;
    }

    .home-redesign .act-card {
        min-height: 0;
        padding: 20px 16px;
    }

    .home-redesign .experience-short--editorial {
        min-height: 300px;
        border-radius: 20px;
    }

    .home-redesign .show-poster {
        min-height: 260px;
    }

    .home-redesign .show-card__details,
    .home-redesign .booking-teaser__meta,
    .home-redesign .section--booking .tickets-meta {
        gap: 8px;
    }

    .home-redesign .section--repertoire {
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(243, 248, 253, 0.98));
    }

    .home-redesign .section--repertoire .repertoire-doodles {
        display: none;
    }

    .home-redesign .repertoire-shell {
        gap: 12px;
        margin-top: 18px;
    }

    .home-redesign .repertoire-card {
        padding: 18px 16px;
        border-radius: 18px;
        border: 1px solid rgba(16, 36, 61, 0.1);
        background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(232, 241, 252, 0.96));
        box-shadow: 0 16px 32px rgba(9, 25, 44, 0.08);
    }

    .home-redesign .repertoire-card::before {
        display: none;
    }

    .home-redesign .repertoire-card__kicker {
        margin-bottom: 12px;
        padding: 7px 12px;
        border-color: rgba(30, 91, 148, 0.14);
        background: rgba(30, 91, 148, 0.08);
        color: #1a568b;
        font-size: 0.66rem;
        letter-spacing: 0.1em;
    }

    .home-redesign .repertoire-card strong {
        color: #163a67;
        font-size: 1.02rem;
        line-height: 1.24;
    }

    .home-redesign .repertoire-card p {
        margin-top: 10px;
        color: rgba(22, 58, 103, 0.76);
        font-size: 0.9rem;
        line-height: 1.52;
    }
}

@media (max-width: 390px) {
    .home-redesign .top-header.top-header--campaign .top-header__social .social-link {
        width: 31px;
        height: 31px;
        border-radius: 11px;
    }

    .home-redesign .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign {
        width: 38px;
        height: 38px;
    }

    .home-redesign .hero.hero--spotlight h1 {
        font-size: clamp(2.34rem, 13vw, 3.2rem);
    }

    .home-redesign .hero.hero--spotlight .hero-proof-inline {
        gap: 6px;
    }

    .home-redesign .hero.hero--spotlight .hero-proof-inline span,
    .home-redesign .booking-teaser__meta span,
    .home-redesign .section--booking .tickets-meta span,
    .home-redesign .show-card__details span {
        width: fit-content;
        max-width: 100%;
    }
}

/* Jukebox Console And Footer Refresh */
#jukebox {
    background:
        radial-gradient(circle at 16% 12%, rgba(95, 168, 242, 0.16), transparent 24%),
        radial-gradient(circle at 84% 12%, rgba(82, 225, 255, 0.1), transparent 24%),
        linear-gradient(180deg, rgba(11, 33, 57, 0.99) 0%, rgba(6, 21, 37, 1) 100%);
    border-color: rgba(160, 210, 255, 0.14);
    box-shadow: 0 32px 84px rgba(0, 12, 24, 0.26);
}

#jukebox .section-lead {
    max-width: 46rem;
}

#jukebox .jukebox-console {
    margin-top: 28px;
    display: grid;
    gap: 18px;
    padding: 22px;
    border: 1px solid rgba(160, 210, 255, 0.14);
    background:
        radial-gradient(circle at center, rgba(82, 225, 255, 0.08), transparent 52%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 24px 52px rgba(0, 11, 22, 0.24);
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

#jukebox .jukebox-console::before {
    content: '';
    position: absolute;
    inset: -18% auto -18% -12%;
    width: 26%;
    background: linear-gradient(112deg, transparent 4%, rgba(93, 225, 255, 0.06) 24%, rgba(255, 255, 255, 0.12) 48%, rgba(93, 225, 255, 0.08) 64%, transparent 82%);
    transform: translateX(-220%) skewX(-18deg);
    animation: buttonSheen 8.8s linear infinite;
    pointer-events: none;
    z-index: 0;
}

#jukebox .jukebox-console > * {
    position: relative;
    z-index: 1;
}

#jukebox .jukebox-console__marquee {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 18px;
    align-items: center;
    padding: 18px 20px;
    border: 1px solid rgba(170, 219, 255, 0.14);
    background:
        radial-gradient(circle at 16% 0%, rgba(82, 225, 255, 0.08), transparent 26%),
        linear-gradient(180deg, rgba(17, 46, 77, 0.92), rgba(9, 27, 46, 0.96));
}

#jukebox .jukebox-console__kicker,
#jukebox .jukebox-selector__kicker {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    color: rgba(223, 240, 255, 0.74);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

#jukebox .jukebox-console__marquee strong {
    color: #ffffff;
    font-size: 1.08rem;
    line-height: 1.2;
}

#jukebox .jukebox-console__count {
    justify-self: end;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 14px;
    border: 1px solid rgba(170, 219, 255, 0.16);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(238, 245, 252, 0.9);
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

#jukebox .jukebox-console__body {
    display: grid;
    grid-template-columns: minmax(280px, 0.88fr) minmax(0, 1.18fr);
    gap: 18px;
    align-items: stretch;
}

#jukebox .jukebox-display,
#jukebox .jukebox-selector {
    min-width: 0;
    border: 1px solid rgba(170, 219, 255, 0.14);
    background: linear-gradient(180deg, rgba(13, 38, 64, 0.98), rgba(6, 20, 35, 0.99));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.03),
        0 22px 44px rgba(0, 11, 22, 0.22);
}

#jukebox .jukebox-display {
    display: grid;
    grid-template-columns: minmax(150px, 190px) minmax(0, 1fr);
    gap: 22px;
    padding: 22px;
    align-items: center;
}

#jukebox .jukebox-display__record {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    display: grid;
    place-items: center;
}

#jukebox .jukebox-display__glow {
    position: absolute;
    inset: 8%;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(82, 225, 255, 0.18), rgba(82, 225, 255, 0.02) 58%, transparent 72%);
    filter: blur(8px);
}

#jukebox .jukebox-display__cover {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    padding: 14px;
    background:
        radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.08) 0 14%, transparent 15% 100%),
        radial-gradient(circle at center, rgba(20, 57, 92, 0.8) 0%, rgba(7, 20, 34, 0.96) 68%);
    box-shadow:
        inset 0 0 0 1px rgba(181, 227, 255, 0.12),
        0 24px 40px rgba(0, 11, 22, 0.24);
}

#jukebox .jukebox-display__cover::before {
    content: '';
    position: absolute;
    inset: 12px;
    border-radius: 50%;
    border: 1px solid rgba(181, 227, 255, 0.1);
    pointer-events: none;
}

#jukebox .jukebox-display__cover::after {
    content: '';
    position: absolute;
    inset: 42% 42%;
    border-radius: 50%;
    background: #071523;
    box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.08);
    pointer-events: none;
}

#jukebox .jukebox-display__cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 50%;
}

#jukebox .jukebox-display__meta {
    display: grid;
    gap: 12px;
    text-align: left;
}

#jukebox .jukebox-display__eyebrow {
    color: rgba(221, 240, 255, 0.78);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

#jukebox .jukebox-display__topline {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

#jukebox .jukebox-display__code {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 12px;
    border: 1px solid rgba(170, 219, 255, 0.18);
    background: rgba(255, 255, 255, 0.05);
    color: #ffffff;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

#jukebox .jukebox-display__artist {
    color: rgba(221, 240, 255, 0.74);
    font-size: 0.9rem;
    font-weight: 700;
}

#jukebox .jukebox-display strong {
    color: #ffffff;
    font-size: clamp(1.8rem, 2.8vw, 2.6rem);
    font-family: 'Cormorant Garamond', serif;
    font-weight: 600;
    line-height: 0.95;
}

#jukebox .jukebox-display p {
    margin: 0;
    color: rgba(223, 240, 255, 0.86);
    font-size: 0.94rem;
    line-height: 1.58;
}

#jukebox .jukebox-display__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 4px;
}

#jukebox .jukebox-display__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 16px;
    border: 1px solid rgba(170, 219, 255, 0.18);
    background: rgba(255, 255, 255, 0.05);
    color: #ffffff;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform 0.22s ease, border-color 0.22s ease, background 0.22s ease, box-shadow 0.22s ease;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

#jukebox .jukebox-display__button:hover,
#jukebox .jukebox-display__button:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(170, 219, 255, 0.3);
    background: rgba(255, 255, 255, 0.1);
    box-shadow: 0 12px 24px rgba(0, 11, 22, 0.18);
    outline: none;
}

#jukebox .jukebox-display__button--accent {
    background:
        radial-gradient(circle at 18% 16%, rgba(82, 225, 255, 0.14), transparent 30%),
        linear-gradient(180deg, rgba(23, 70, 114, 0.98), rgba(9, 28, 49, 1));
    border-color: rgba(170, 219, 255, 0.22);
}

#jukebox .jukebox-selector {
    display: grid;
    gap: 16px;
    padding: 22px;
}

#jukebox .jukebox-selector__head {
    display: grid;
    gap: 6px;
    text-align: left;
}

#jukebox .jukebox-selector__head strong {
    color: #ffffff;
    font-size: 1.02rem;
    line-height: 1.24;
}

#jukebox .jukebox-selector__head p {
    margin: 0;
    color: rgba(223, 240, 255, 0.76);
    font-size: 0.88rem;
    line-height: 1.5;
}

#jukebox .song-grid-shell--jukebox {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

#jukebox .song-grid-shell--jukebox::before,
#jukebox .song-grid-shell--jukebox::after {
    display: none;
}

#jukebox .song-grid--jukebox {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-flow: row;
    grid-auto-columns: auto;
    gap: 14px;
    padding: 0;
    overflow: visible;
    scroll-snap-type: none;
    touch-action: auto;
}

#jukebox .song-card--jukebox {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    align-items: stretch;
    min-height: 122px;
    border-color: rgba(169, 220, 255, 0.14);
    background:
        radial-gradient(circle at 12% 18%, rgba(82, 225, 255, 0.12), transparent 28%),
        linear-gradient(180deg, rgba(18, 49, 79, 0.96), rgba(8, 24, 42, 0.98));
    box-shadow: 0 18px 34px rgba(0, 11, 22, 0.18);
}

#jukebox .song-card--jukebox:hover,
#jukebox .song-card--jukebox.is-active {
    transform: translateY(-4px);
    border-color: rgba(195, 230, 255, 0.24);
    background:
        radial-gradient(circle at 12% 18%, rgba(82, 225, 255, 0.16), transparent 32%),
        linear-gradient(180deg, rgba(23, 60, 96, 0.98), rgba(8, 24, 42, 1));
    box-shadow: 0 24px 42px rgba(0, 11, 22, 0.22);
}

#jukebox .song-card--jukebox .song-card__media {
    aspect-ratio: auto;
    min-height: 100%;
    background: #1c436e;
}

#jukebox .song-card--jukebox .song-card__media img {
    height: 100%;
}

#jukebox .song-card--jukebox .song-card__media::after {
    background:
        linear-gradient(180deg, rgba(0, 14, 30, 0.02), rgba(0, 14, 30, 0.28) 100%),
        radial-gradient(circle at 72% 18%, rgba(128, 198, 255, 0.18), transparent 28%);
}

#jukebox .song-card--jukebox .song-card__play {
    right: 10px;
    bottom: 10px;
    width: 36px;
    height: 36px;
    font-size: 0.74rem;
}

#jukebox .song-card--jukebox .song-card__body {
    align-content: center;
    padding: 14px 14px 14px 12px;
    gap: 5px;
}

#jukebox .song-card__slot {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 24px;
    padding: 0 9px;
    border: 1px solid rgba(170, 219, 255, 0.16);
    background: rgba(255, 255, 255, 0.05);
    color: rgba(223, 240, 255, 0.84);
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

#jukebox .song-card--jukebox .song-card__title {
    font-size: 1rem;
    line-height: 1.16;
}

#jukebox .song-card--jukebox .song-card__meta {
    font-size: 0.76rem;
}

#jukebox .song-card__blurb {
    color: rgba(223, 240, 255, 0.7);
    font-size: 0.72rem;
    line-height: 1.38;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

.site-footer {
    width: min(1260px, 100%);
    margin-bottom: 30px;
}

.site-footer .site-footer__inner {
    padding: 30px clamp(22px, 3vw, 38px) 20px;
    gap: 22px;
    border-color: rgba(202, 217, 232, 0.12);
    background: linear-gradient(180deg, rgba(19, 49, 86, 0.985), rgba(9, 24, 43, 1) 100%);
    box-shadow: 0 22px 44px rgba(6, 18, 33, 0.12);
}

.site-footer .site-footer__inner::before,
.site-footer .site-footer__inner::after {
    content: none;
    display: none;
}

.site-footer .site-footer__hero {
    display: grid;
    grid-template-columns: minmax(0, 1.36fr) auto;
    gap: 18px 26px;
    align-items: end;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(208, 223, 237, 0.14);
}

.site-footer .site-footer__hero-copy {
    display: grid;
    gap: 10px;
    max-width: 58rem;
}

.site-footer .site-footer__title {
    max-width: 18ch;
    margin: 0;
    font-size: clamp(1.76rem, 2.35vw, 2.58rem);
    line-height: 1.04;
}

.site-footer .site-footer__lead {
    max-width: 60ch;
    color: rgba(231, 239, 246, 0.82);
}

.site-footer .site-footer__hero-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.site-footer .site-footer__hero-actions .site-footer__button {
    min-width: 176px;
}

.site-footer .site-footer__grid {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.08fr) minmax(0, 0.86fr);
    gap: 22px;
    align-items: start;
}

.site-footer .site-footer__column {
    display: grid;
    gap: 10px;
}

.site-footer .site-footer__panel-title {
    margin: 0;
    color: #ffffff;
    font-size: 1.08rem;
    font-weight: 700;
    line-height: 1.28;
}

.site-footer .site-footer__contact-cards {
    display: grid;
    gap: 0;
}

.site-footer .site-footer__contact-card {
    display: grid;
    gap: 6px;
    padding: 14px 0 15px;
    border: 0;
    border-bottom: 1px solid rgba(208, 223, 237, 0.14);
    background: none;
    color: #ffffff;
    text-decoration: none;
    box-shadow: none;
    transition: transform 0.22s ease, border-color 0.22s ease, color 0.22s ease;
}

.site-footer .site-footer__contact-card:first-child {
    padding-top: 16px;
    border-top: 1px solid rgba(208, 223, 237, 0.14);
}

.site-footer .site-footer__contact-card:hover,
.site-footer .site-footer__contact-card:focus-visible {
    transform: translateX(4px);
    border-color: rgba(239, 227, 209, 0.26);
    color: #fff7ee;
    outline: none;
}

.site-footer .site-footer__contact-label {
    color: rgba(208, 221, 236, 0.72);
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.site-footer .site-footer__contact-card strong {
    color: #ffffff;
    font-size: 1rem;
    line-height: 1.3;
    font-weight: 700;
}

.site-footer .site-footer__newsletter {
    gap: 12px;
    margin-top: 2px;
    padding: 18px;
    border: 1px solid rgba(208, 223, 237, 0.12);
    background: rgba(255, 255, 255, 0.045);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.site-footer .site-footer__newsletter-address {
    min-height: 48px;
    padding: 0 14px;
    border-color: rgba(208, 223, 237, 0.16);
    background: rgba(10, 23, 40, 0.42);
}

.site-footer .site-footer__notes li::before {
    top: 0.48em;
    width: 6px;
    height: 6px;
    border: 0;
    border-radius: 999px;
    background: rgba(241, 228, 211, 0.82);
}

.site-footer .site-footer__newsletter-actions {
    margin-top: 2px;
}

.site-footer .site-footer__button,
.site-footer .site-footer__social-link,
.site-footer .site-footer__support-pill {
    min-height: 42px;
    padding: 0 16px;
    border-radius: 6px;
    font-size: 0.65rem;
    letter-spacing: 0.14em;
}

.site-footer .site-footer__button {
    box-shadow: none;
}

.site-footer .site-footer__button:hover,
.site-footer .site-footer__button:focus-visible {
    box-shadow: 0 12px 24px rgba(8, 17, 32, 0.16);
}

.site-footer .site-footer__button--ghost {
    background: rgba(255, 255, 255, 0.035);
    border-color: rgba(208, 223, 237, 0.16);
}

.site-footer .site-footer__socials {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 2px;
}

.site-footer .site-footer__social-link,
.site-footer .site-footer__support-pill {
    min-height: 40px;
    background: rgba(255, 255, 255, 0.035);
    border-color: rgba(208, 223, 237, 0.14);
    box-shadow: none;
}

.site-footer .site-footer__social-link::before,
.site-footer .site-footer__support-pill::before {
    content: none;
    display: none;
}

.site-footer .site-footer__social-link:hover,
.site-footer .site-footer__social-link:focus-visible,
.site-footer .site-footer__support-pill:hover,
.site-footer .site-footer__support-pill:focus-visible {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(240, 226, 208, 0.2);
    box-shadow: none;
}

.site-footer .site-footer__support {
    min-width: 0;
    margin-top: 2px;
    padding: 0;
    border: 0;
    background: none;
    gap: 12px;
}

.site-footer .site-footer__support-title {
    color: rgba(208, 221, 236, 0.78);
    font-size: 0.68rem;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.site-footer .site-footer__support-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.site-footer .site-footer__bottom {
    gap: 12px;
    padding-top: 16px;
    border-top: 1px solid rgba(208, 223, 237, 0.14);
}

.site-footer .site-footer__nav {
    gap: 8px 18px;
}

.site-footer .site-footer__nav-link {
    color: rgba(243, 247, 250, 0.88);
}

.site-footer .site-footer__nav-link:hover,
.site-footer .site-footer__nav-link:focus-visible {
    color: #f3e6d5;
}

.site-footer .site-footer__copy {
    padding-top: 2px;
    color: rgba(220, 229, 237, 0.7);
    font-size: 0.72rem;
    letter-spacing: 0.03em;
    text-transform: none;
}

@media (max-width: 1180px) {
    #jukebox .jukebox-console__body {
        grid-template-columns: 1fr;
    }

    #jukebox .song-grid--jukebox {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-footer .site-footer__hero,
    .site-footer .site-footer__grid {
        grid-template-columns: 1fr;
    }

    .site-footer .site-footer__hero-actions {
        justify-content: flex-start;
    }
}

@media (max-width: 900px) {
    #jukebox .jukebox-display {
        grid-template-columns: 132px minmax(0, 1fr);
        gap: 18px;
        padding: 18px;
    }

    #jukebox .jukebox-selector,
    #jukebox .jukebox-console__marquee {
        padding: 18px;
    }

    #jukebox .song-grid--jukebox {
        grid-template-columns: none;
        grid-auto-flow: column;
        grid-auto-columns: minmax(248px, 280px);
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        touch-action: pan-x;
        padding: 0 0 4px;
    }

    #jukebox .song-card--jukebox {
        scroll-snap-align: center;
    }
}

@media (max-width: 640px) {
    #jukebox .jukebox-console {
        margin-top: 22px;
        padding: 14px;
        gap: 14px;
    }

    #jukebox .jukebox-console__marquee {
        grid-template-columns: 1fr;
        justify-items: start;
        padding: 16px 14px;
    }

    #jukebox .jukebox-console__count {
        justify-self: start;
    }

    #jukebox .jukebox-display,
    #jukebox .jukebox-selector {
        padding: 14px;
    }

    #jukebox .jukebox-display {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    #jukebox .jukebox-display__record {
        width: min(100%, 220px);
        justify-self: center;
    }

    #jukebox .jukebox-display__meta {
        text-align: center;
    }

    #jukebox .jukebox-display__topline,
    #jukebox .jukebox-display__actions {
        justify-content: center;
    }

    #jukebox .jukebox-display__button {
        flex: 1 1 100%;
    }

    #jukebox .song-grid--jukebox {
        grid-auto-columns: minmax(250px, 82vw);
    }

    #jukebox .song-card--jukebox {
        grid-template-columns: 88px minmax(0, 1fr);
        min-height: 116px;
    }

    #jukebox .song-card--jukebox .song-card__body {
        padding: 12px;
    }

    #jukebox .song-card__blurb {
        font-size: 0.7rem;
    }

    .site-footer {
        padding: 0 12px 22px;
    }

    .site-footer .site-footer__inner {
        padding: 22px 16px 16px;
        gap: 18px;
    }

    .site-footer .site-footer__title {
        font-size: clamp(1.44rem, 8vw, 1.92rem);
    }

    .site-footer .site-footer__lead {
        font-size: 0.9rem;
        line-height: 1.44;
    }

    .site-footer .site-footer__hero-actions {
        width: 100%;
    }

    .site-footer .site-footer__hero-actions .site-footer__button {
        width: 100%;
        min-width: 0;
    }

    .site-footer .site-footer__newsletter {
        padding: 16px;
    }

    .site-footer .site-footer__newsletter-actions,
    .site-footer .site-footer__socials,
    .site-footer .site-footer__support-list,
    .site-footer .site-footer__nav {
        width: 100%;
    }

    .site-footer .site-footer__newsletter-actions {
        grid-template-columns: 1fr;
    }

    .site-footer .site-footer__socials,
    .site-footer .site-footer__support-list,
    .site-footer .site-footer__nav {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .site-footer .site-footer__social-link:last-child,
    .site-footer .site-footer__support-pill:last-child {
        grid-column: 1 / -1;
    }
}

/* Compact Jukebox Refresh */
#jukebox {
    background:
        radial-gradient(circle at 16% 12%, rgba(95, 168, 242, 0.12), transparent 24%),
        linear-gradient(180deg, rgba(10, 30, 52, 0.99) 0%, rgba(6, 21, 37, 1) 100%);
    box-shadow: 0 28px 72px rgba(0, 12, 24, 0.24);
    overflow-x: clip;
}

#jukebox .section-lead {
    max-width: 38rem;
}

#jukebox .jukebox-console {
    margin-top: 24px;
    gap: 16px;
    padding: 18px;
    background:
        radial-gradient(circle at center, rgba(82, 225, 255, 0.06), transparent 52%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.02));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.03),
        0 20px 42px rgba(0, 11, 22, 0.2);
    overflow-x: clip;
}

#jukebox .jukebox-console::before {
    content: none;
    display: none;
}

#jukebox .jukebox-console__marquee {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px 16px;
    padding: 14px 16px;
}

#jukebox .jukebox-console__marquee strong {
    max-width: 32ch;
    font-size: 1rem;
}

#jukebox .jukebox-console__count {
    min-height: 32px;
    padding: 0 12px;
}

#jukebox .jukebox-console__body {
    grid-template-columns: minmax(280px, 0.88fr) minmax(0, 1fr);
    gap: 16px;
    min-width: 0;
    max-width: 100%;
    overflow-x: clip;
}

#jukebox .jukebox-display,
#jukebox .jukebox-selector {
    min-width: 0;
    max-width: 100%;
    padding: 18px;
    border-radius: 14px;
}

#jukebox .jukebox-display {
    grid-template-columns: minmax(136px, 172px) minmax(0, 1fr);
    gap: 18px;
}

#jukebox .jukebox-display__record {
    width: min(100%, 172px);
}

#jukebox .jukebox-display__meta {
    gap: 10px;
}

#jukebox .jukebox-display__eyebrow {
    font-size: 0.66rem;
}

#jukebox .jukebox-display strong {
    font-size: clamp(1.6rem, 2.4vw, 2.3rem);
}

#jukebox .jukebox-display p {
    font-size: 0.92rem;
    line-height: 1.5;
}

#jukebox .jukebox-display__hint {
    color: rgba(223, 240, 255, 0.68);
    font-size: 0.76rem;
    line-height: 1.45;
}

#jukebox .jukebox-display__actions {
    margin-top: 0;
}

#jukebox .jukebox-display__button {
    min-height: 42px;
    padding: 0 14px;
    font-size: 0.64rem;
}

#jukebox .jukebox-selector {
    gap: 14px;
}

#jukebox .jukebox-selector__head {
    gap: 4px;
}

#jukebox .jukebox-selector__head p {
    max-width: 40ch;
    font-size: 0.82rem;
}

#jukebox .song-grid-shell--jukebox {
    min-width: 0;
    max-width: 100%;
    overflow-x: clip;
    overflow-y: visible;
}

#jukebox .song-grid--jukebox {
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    grid-auto-columns: auto;
    gap: 10px;
    min-width: 0;
    max-width: 100%;
    overflow-x: clip;
    overflow-y: visible;
    scroll-snap-type: none;
    touch-action: manipulation;
}

#jukebox .song-card--jukebox,
#jukebox .song-card--jukebox:hover,
#jukebox .song-card--jukebox.is-active {
    transform: none;
}

#jukebox .song-card--jukebox {
    grid-template-columns: 72px minmax(0, 1fr);
    min-height: 84px;
    width: 100%;
    min-width: 0;
    border-radius: 12px;
    border-color: rgba(169, 220, 255, 0.14);
    background: rgba(10, 30, 52, 0.76);
    box-shadow: none;
}

#jukebox .song-card--jukebox::before,
#jukebox .song-card--jukebox::after {
    display: none;
}

#jukebox .song-card--jukebox:hover,
#jukebox .song-card--jukebox:focus-visible {
    border-color: rgba(195, 230, 255, 0.24);
    background: rgba(13, 38, 64, 0.92);
    box-shadow: none;
}

#jukebox .song-card--jukebox.is-active {
    border-color: rgba(135, 219, 255, 0.34);
    background:
        linear-gradient(180deg, rgba(18, 49, 79, 0.96), rgba(8, 24, 42, 0.98));
    box-shadow: inset 0 0 0 1px rgba(82, 225, 255, 0.1);
}

#jukebox .song-card--jukebox .song-card__media {
    min-height: 72px;
    border-radius: 10px 0 0 10px;
    background: #12385d;
    overflow: hidden;
}

#jukebox .song-card--jukebox .song-card__media::after {
    background:
        linear-gradient(180deg, rgba(0, 14, 30, 0.04), rgba(0, 14, 30, 0.2) 100%);
}

#jukebox .song-card--jukebox .song-card__play {
    display: none;
}

#jukebox .song-card--jukebox .song-card__body {
    align-content: center;
    padding: 10px 12px;
    gap: 4px;
}

#jukebox .song-card__slot {
    min-height: 22px;
    font-size: 0.58rem;
}

#jukebox .song-card--jukebox .song-card__title {
    font-size: 0.96rem;
}

#jukebox .song-card--jukebox .song-card__meta {
    font-size: 0.78rem;
}

#jukebox .song-card__blurb {
    display: none;
}

.modal-content--jukebox {
    width: min(760px, 100%);
    max-height: min(86vh, 720px);
    max-height: min(86dvh, 720px);
    padding: 12px;
}

.jukebox-modal-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    padding: 18px;
    gap: 16px;
    border-radius: 16px;
    background:
        linear-gradient(180deg, rgba(10, 50, 96, 0.98), rgba(5, 28, 56, 0.98));
}

.jukebox-modal-shell::before {
    content: none;
    display: none;
}

.jukebox-modal-stickers {
    display: none;
}

.jukebox-modal-head {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    width: 100%;
    min-width: 0;
}

.jukebox-modal-cover {
    grid-column: auto;
    grid-row: auto;
    width: 100%;
    max-width: 120px;
    border-radius: 12px;
}

.jukebox-modal-meta {
    display: grid;
    grid-column: auto;
    grid-row: auto;
    min-width: 0;
    gap: 8px;
    padding-top: 0;
    align-content: start;
    justify-items: start;
}

.jukebox-modal-meta strong {
    font-size: clamp(1.44rem, 2vw, 1.9rem);
    line-height: 1.02;
    max-width: 14ch;
    text-wrap: balance;
}

.jukebox-modal-meta p {
    max-width: none;
    font-size: 0.9rem;
    line-height: 1.5;
}

.jukebox-modal-player {
    grid-column: 1 / -1;
    grid-row: auto;
    min-width: 0;
    padding: 8px;
    border-radius: 12px;
}

.jukebox-modal-player iframe {
    height: 180px;
    border-radius: 10px;
}

.jukebox-modal-link {
    margin-top: 4px;
    width: fit-content;
    max-width: 100%;
    min-width: 196px;
    white-space: nowrap;
}

.jukebox-modal-meta .modal-back-link {
    width: fit-content;
    min-width: 140px;
    max-width: 100%;
}

@media (max-width: 960px) {
    #jukebox .jukebox-console__body {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    #jukebox .jukebox-console {
        padding: 14px;
    }

    #jukebox .jukebox-console__marquee {
        grid-template-columns: 1fr;
        padding: 12px;
    }

    #jukebox .jukebox-console__count {
        justify-self: start;
    }

    #jukebox .jukebox-display,
    #jukebox .jukebox-selector {
        padding: 14px;
        border-radius: 12px;
    }

    #jukebox .jukebox-display {
        grid-template-columns: 1fr;
        text-align: center;
    }

    #jukebox .jukebox-display__record {
        width: min(100%, 156px);
        justify-self: center;
    }

    #jukebox .jukebox-display__meta {
        text-align: center;
    }

    #jukebox .jukebox-display__topline,
    #jukebox .jukebox-display__actions {
        justify-content: center;
    }

    #jukebox .jukebox-display__hint {
        text-align: center;
    }

    #jukebox .jukebox-display__button {
        flex: 1 1 100%;
    }

    #jukebox .jukebox-selector__head p {
        display: none;
    }

    #jukebox .song-card--jukebox {
        grid-template-columns: 64px minmax(0, 1fr);
        min-height: 74px;
    }

    #jukebox .song-card--jukebox .song-card__media {
        min-height: 74px;
    }

    .modal-content--jukebox {
        width: min(100%, 420px);
        max-height: calc(100vh - 16px);
        max-height: calc(100dvh - 16px);
        padding: 8px;
    }

    .jukebox-modal-shell {
        padding: 14px;
        border-radius: 14px;
    }

    .jukebox-modal-head {
        grid-template-columns: 1fr;
        gap: 12px;
        text-align: center;
    }

    .jukebox-modal-cover {
        max-width: 100px;
        margin: 0 auto;
    }

    .jukebox-modal-meta {
        justify-items: center;
        text-align: center;
    }

    .jukebox-modal-meta strong {
        max-width: 100%;
    }

    .jukebox-modal-player iframe {
        height: 152px;
    }

    .jukebox-modal-link,
    .jukebox-modal-meta .modal-back-link {
        width: 100%;
        min-width: 0;
        justify-content: center;
        white-space: normal;
    }
}

@media (max-width: 720px) {
    .section--news-home {
        padding: 18px 14px 22px;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(246, 250, 253, 0.98));
        box-shadow:
            0 18px 38px rgba(7, 28, 54, 0.08),
            inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
    }

    .news-home-head {
        gap: 10px;
        padding-bottom: 14px;
        align-items: start;
    }

    .news-home-heading {
        gap: 8px;
    }

    .section--news-home .section-lead {
        max-width: 32ch;
        font-size: 0.93rem;
        line-height: 1.55;
    }

    .section--news-home .news-home-head__link {
        align-self: start;
        padding: 10px 12px;
        border: 1px solid rgba(var(--accent-rgb), 0.08);
        border-radius: 999px;
        background: #ffffff;
        box-shadow: 0 10px 20px rgba(7, 28, 54, 0.06);
        font-size: 0.66rem;
        letter-spacing: 0.13em;
    }

    .news-home-track {
        margin-top: 16px;
        gap: 10px;
    }

    .section--news-home .news-card--home {
        grid-template-columns: 92px minmax(0, 1fr) !important;
        grid-template-rows: 1fr !important;
        min-height: 0;
        align-items: stretch;
        border: 1px solid rgba(var(--accent-rgb), 0.09) !important;
        border-radius: 16px !important;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.995), rgba(248, 251, 254, 0.985)) !important;
        box-shadow:
            0 12px 28px rgba(7, 28, 54, 0.08),
            inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
        transform: none !important;
    }

    .section--news-home .news-card--home:hover {
        transform: none !important;
        border-color: rgba(var(--accent-rgb), 0.11) !important;
        box-shadow:
            0 14px 30px rgba(7, 28, 54, 0.1),
            inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
    }

    .section--news-home .news-card--home .news-card__media {
        aspect-ratio: auto !important;
        min-height: 100%;
        max-height: 126px;
        padding: 0;
        background: #dbe8f3 !important;
        border-radius: 16px 0 0 16px;
        overflow: hidden;
    }

    .section--news-home .news-card--home .news-card__banner-backdrop,
    .section--news-home .news-card--home .news-card__banner-shade,
    .section--news-home .news-card--home .news-card__banner-dots {
        display: none !important;
    }

    .section--news-home .news-card--home .news-card__banner-slide {
        animation: none !important;
        opacity: 0;
    }

    .section--news-home .news-card--home .news-card__banner-slide:first-child {
        opacity: 1;
    }

    .section--news-home .news-card--home .news-card__banner-image {
        animation: none !important;
        transform: none !important;
        object-fit: cover !important;
        object-position: center !important;
        padding: 0 !important;
    }

    .section--news-home .news-card--home .news-card__body {
        min-width: 0;
        display: grid;
        align-content: center;
        gap: 7px;
        padding: 12px 14px 12px 12px !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .section--news-home .news-card--home .news-card__meta {
        gap: 6px;
        font-size: 0.56rem;
        letter-spacing: 0.11em;
        color: rgba(55, 79, 103, 0.68) !important;
    }

    .section--news-home .news-card--home .news-card__category {
        min-height: 24px;
        padding: 4px 8px;
        background: rgba(var(--accent-rgb), 0.04) !important;
        border: 1px solid rgba(var(--accent-rgb), 0.08) !important;
        color: var(--accent) !important;
    }

    .section--news-home .news-card--home .news-card__title,
    .section--news-home .news-card--home .news-card__title a {
        font-size: 0.99rem;
        line-height: 1.16;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
        overflow-wrap: anywhere;
        text-wrap: balance;
        color: var(--ink-strong) !important;
    }

    .section--news-home .news-card--home .news-card__excerpt {
        display: none !important;
    }

    .section--news-home .news-card--home .news-card__link {
        align-self: start;
        gap: 8px;
        margin-top: 2px;
        border-bottom: 0 !important;
        color: var(--accent) !important;
        font-size: 0.66rem;
        letter-spacing: 0.14em;
    }

    .section--news-home .news-card--home .news-card__link::after {
        font-size: 0.9rem;
    }
}

@media (max-width: 420px) {
    .section--news-home .news-home-head__link {
        font-size: 0.63rem;
    }

    .section--news-home .news-card--home {
        grid-template-columns: 84px minmax(0, 1fr) !important;
    }

    .section--news-home .news-card--home .news-card__media {
        max-height: 116px;
    }

    .section--news-home .news-card--home .news-card__body {
        padding: 11px 12px 11px 11px !important;
    }

    .section--news-home .news-card--home .news-card__meta {
        font-size: 0.53rem;
    }

    .section--news-home .news-card--home .news-card__title,
    .section--news-home .news-card--home .news-card__title a {
        font-size: 0.95rem;
        -webkit-line-clamp: 2;
    }
}

@media (max-width: 720px) {
    #espetaculo .experience-recap,
    .section--repertoire,
    .site-menu a[href="#repertorio"] {
        display: none !important;
    }
}

.site-footer--home-compact {
    width: min(1260px, 100%);
    margin-bottom: 30px;
}

.site-footer--home-compact .site-footer__inner {
    padding: 28px clamp(20px, 3vw, 36px) 18px;
    gap: 18px;
    border-color: rgba(202, 217, 232, 0.12);
    background: linear-gradient(180deg, rgba(19, 49, 86, 0.985), rgba(9, 24, 43, 1) 100%);
    box-shadow: 0 22px 44px rgba(6, 18, 33, 0.12);
}

.site-footer--home-compact .site-footer__inner::before,
.site-footer--home-compact .site-footer__inner::after {
    content: none;
    display: none;
}

.site-footer--home-compact .site-footer__hero {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) auto;
    gap: 16px 24px;
    align-items: center;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(208, 223, 237, 0.14);
}

.site-footer--home-compact .site-footer__hero-copy {
    display: grid;
    gap: 8px;
    max-width: 46rem;
}

.site-footer--home-compact .site-footer__title {
    max-width: 16ch;
    margin: 0;
    font-size: clamp(1.7rem, 2.25vw, 2.34rem);
    line-height: 1.05;
}

.site-footer--home-compact .site-footer__lead {
    max-width: 44ch;
    margin: 0;
    color: rgba(231, 239, 246, 0.82);
}

.site-footer--home-compact .site-footer__hero-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.site-footer--home-compact .site-footer__button {
    min-width: 188px;
    box-shadow: none;
}

.site-footer--home-compact .site-footer__button:hover,
.site-footer--home-compact .site-footer__button:focus-visible {
    box-shadow: 0 12px 24px rgba(8, 17, 32, 0.16);
}

.site-footer--home-compact .site-footer__button--ghost {
    background: rgba(255, 255, 255, 0.035);
    border-color: rgba(208, 223, 237, 0.16);
}

.site-footer--home-compact .site-footer__compact {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.2fr) auto;
    gap: 10px;
    align-items: stretch;
}

.site-footer--home-compact .site-footer__detail {
    display: grid;
    gap: 4px;
    align-content: center;
    padding: 14px 16px;
    border: 1px solid rgba(208, 223, 237, 0.14);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
    color: #ffffff;
    text-decoration: none;
    transition: transform 0.22s ease, border-color 0.22s ease, background-color 0.22s ease;
}

.site-footer--home-compact .site-footer__detail:hover,
.site-footer--home-compact .site-footer__detail:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(239, 227, 209, 0.26);
    background: rgba(255, 255, 255, 0.07);
    outline: none;
}

.site-footer--home-compact .site-footer__detail-label {
    color: rgba(208, 221, 236, 0.72);
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.site-footer--home-compact .site-footer__detail strong {
    color: #ffffff;
    font-size: 0.98rem;
    line-height: 1.28;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.site-footer--home-compact .site-footer__mini-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
    align-items: stretch;
}

.site-footer--home-compact .site-footer__pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    min-width: 136px;
    padding: 0 16px;
    border: 1px solid rgba(208, 223, 237, 0.14);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.035);
    color: #ffffff;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color 0.22s ease, border-color 0.22s ease, transform 0.22s ease;
}

.site-footer--home-compact .site-footer__pill:hover,
.site-footer--home-compact .site-footer__pill:focus-visible {
    transform: translateY(-1px);
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(240, 226, 208, 0.2);
    outline: none;
}

.site-footer--home-compact .site-footer__bottom {
    gap: 12px;
    padding-top: 2px;
    border-top: 0;
}

.site-footer--home-compact .site-footer__nav {
    gap: 8px 18px;
}

.site-footer--home-compact .site-footer__nav-link {
    color: rgba(243, 247, 250, 0.88);
}

.site-footer--home-compact .site-footer__nav-link:hover,
.site-footer--home-compact .site-footer__nav-link:focus-visible {
    color: #f3e6d5;
}

.site-footer--home-compact .site-footer__copy {
    margin: 0;
    padding-top: 0;
    color: rgba(220, 229, 237, 0.7);
    font-size: 0.72rem;
    letter-spacing: 0.03em;
    text-transform: none;
}

@media (max-width: 1080px) {
    .site-footer--home-compact .site-footer__hero,
    .site-footer--home-compact .site-footer__compact {
        grid-template-columns: 1fr;
    }

    .site-footer--home-compact .site-footer__hero-actions,
    .site-footer--home-compact .site-footer__mini-links {
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .site-footer--home-compact {
        padding: 0 12px 22px;
    }

    .site-footer--home-compact .site-footer__inner {
        padding: 22px 16px 16px;
        gap: 16px;
    }

    .site-footer--home-compact .site-footer__title {
        font-size: clamp(1.42rem, 8vw, 1.88rem);
    }

    .site-footer--home-compact .site-footer__lead {
        font-size: 0.9rem;
        line-height: 1.44;
    }

    .site-footer--home-compact .site-footer__hero-actions {
        width: 100%;
    }

    .site-footer--home-compact .site-footer__button {
        width: 100%;
        min-width: 0;
    }

    .site-footer--home-compact .site-footer__mini-links {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .site-footer--home-compact .site-footer__pill {
        min-width: 0;
        min-height: 42px;
    }

    .site-footer--home-compact .site-footer__bottom {
        gap: 10px;
    }

    .site-footer--home-compact .site-footer__nav {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        width: 100%;
    }

    .site-footer--home-compact .site-footer__nav-link:last-child {
        grid-column: 1 / -1;
    }
}

.section--contacts-compact {
    padding-block: clamp(24px, 3vw, 34px);
}

.section--contacts-compact .contact-doodles,
.section--contacts-compact .contact-grid {
    display: none;
}

.section--contacts-compact .section-lead {
    max-width: 34ch;
}

.contact-compact {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(300px, 0.9fr);
    gap: 16px;
    margin-top: 24px;
    align-items: stretch;
}

.contact-compact__primary,
.contact-compact__panel {
    display: grid;
    gap: 10px;
    padding: 22px 24px;
    border: 1px solid rgba(var(--accent-rgb), 0.1);
    border-radius: 24px;
    text-decoration: none;
}

.contact-compact__primary {
    align-content: center;
    background: linear-gradient(180deg, rgba(15, 46, 82, 0.98), rgba(7, 24, 44, 1));
    color: #ffffff;
    box-shadow: 0 18px 36px rgba(7, 28, 54, 0.12);
}

.contact-compact__primary p {
    max-width: 28ch;
    margin: 0;
    color: rgba(227, 239, 248, 0.82);
}

.contact-compact__secondary {
    display: grid;
    gap: 16px;
}

.contact-compact__panel {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(246, 249, 252, 0.96));
    color: inherit;
    box-shadow: 0 16px 30px rgba(7, 28, 54, 0.08);
}

.contact-compact__panel--plain {
    align-content: start;
}

.contact-compact__label {
    color: rgba(var(--accent-rgb), 0.72);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.contact-compact__primary strong,
.contact-compact__panel strong {
    display: block;
    font-size: clamp(1.32rem, 2.4vw, 1.86rem);
    line-height: 1.04;
}

.contact-compact__panel strong {
    color: var(--ink-strong);
    font-size: 1.02rem;
    line-height: 1.3;
}

.contact-compact__panel > span:last-child {
    color: rgba(34, 55, 79, 0.68);
    font-size: 0.92rem;
    line-height: 1.52;
}

.contact-compact__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 4px;
}

.contact-compact__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 18px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 999px;
    color: #ffffff;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-decoration: none;
    text-transform: uppercase;
    transition: transform 0.22s ease, background-color 0.22s ease, border-color 0.22s ease;
}

.contact-compact__action:hover,
.contact-compact__action:focus-visible {
    transform: translateY(-1px);
    outline: none;
}

.contact-compact__action--accent {
    border-color: rgba(243, 235, 223, 0.4);
    background: linear-gradient(180deg, rgba(243, 235, 223, 1), rgba(229, 218, 201, 1));
    color: #0f2a48;
}

.contact-compact__numbers {
    display: grid;
    gap: 8px;
}

.contact-compact__numbers a {
    color: var(--accent);
    font-weight: 800;
    text-decoration: none;
}

.contact-compact__numbers a:hover,
.contact-compact__numbers a:focus-visible {
    color: var(--accent-strong);
    outline: none;
}

.section--jukebox-inline .jukebox-console {
    margin-top: 26px;
    padding: 22px;
    border: 1px solid rgba(145, 205, 255, 0.14);
    border-radius: 30px;
    background:
        radial-gradient(circle at 18% 16%, rgba(121, 194, 255, 0.12), transparent 28%),
        linear-gradient(180deg, rgba(12, 40, 71, 0.98), rgba(6, 21, 39, 1));
    box-shadow: 0 26px 52px rgba(2, 12, 24, 0.2);
}

.section--jukebox-inline .jukebox-console::before,
.section--jukebox-inline .jukebox-display,
.section--jukebox-inline .jukebox-selector,
.section--jukebox-inline .song-grid-shell--jukebox,
.section--jukebox-inline .song-grid--jukebox,
.section--jukebox-inline .song-card--jukebox {
    display: none !important;
}

.jukebox-inline-shell {
    display: grid;
    gap: 18px;
}

.jukebox-inline-shell__stage {
    display: grid;
    grid-template-columns: minmax(240px, 320px) minmax(0, 1fr);
    gap: 24px;
    align-items: center;
}

.jukebox-inline-shell__record {
    position: relative;
    width: min(100%, 320px);
    margin: 0 auto;
    aspect-ratio: 1 / 1;
    display: grid;
    place-items: center;
}

.jukebox-inline-shell__vinyl {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background:
        radial-gradient(circle at center, rgba(5, 18, 33, 0.96) 0 12%, rgba(17, 44, 73, 0.98) 12% 18%, rgba(6, 16, 28, 1) 18% 52%, rgba(29, 72, 115, 0.78) 52% 56%, rgba(6, 16, 28, 1) 56% 100%);
    box-shadow:
        inset 0 0 0 10px rgba(255, 255, 255, 0.03),
        0 18px 38px rgba(0, 0, 0, 0.28);
}

.jukebox-inline-shell__record .jukebox-display__cover {
    position: relative;
    z-index: 1;
    width: 58%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    overflow: hidden;
    box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.04);
}

.jukebox-inline-shell__record .jukebox-display__cover::before,
.jukebox-inline-shell__record .jukebox-display__cover::after {
    content: none;
}

.jukebox-inline-shell__record .jukebox-display__cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.jukebox-inline-shell__toggle {
    position: absolute;
    z-index: 2;
    bottom: 18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 48px;
    padding: 0 18px;
    border: 1px solid rgba(240, 231, 219, 0.34);
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(243, 235, 223, 0.98), rgba(229, 218, 201, 0.98));
    color: #102949;
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.jukebox-inline-shell__toggle:hover,
.jukebox-inline-shell__toggle:focus-visible {
    transform: translateX(-50%) translateY(-1px);
    box-shadow: 0 14px 28px rgba(1, 10, 22, 0.22);
    outline: none;
}

.jukebox-inline-shell__meta {
    display: grid;
    gap: 10px;
    min-width: 0;
}

.section--jukebox-inline .jukebox-display__eyebrow,
.section--jukebox-inline .jukebox-display__artist,
.section--jukebox-inline .jukebox-display__hint,
.section--jukebox-inline .jukebox-inline-shell__status {
    color: rgba(225, 238, 248, 0.74);
}

.section--jukebox-inline .jukebox-display__topline {
    align-items: center;
}

.section--jukebox-inline .jukebox-display__code {
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
}

.section--jukebox-inline .jukebox-display strong {
    color: #ffffff;
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 0.96;
    text-wrap: balance;
}

.section--jukebox-inline .jukebox-display p {
    max-width: 32ch;
    margin: 0;
    color: rgba(227, 239, 248, 0.86);
}

.section--jukebox-inline .jukebox-inline-shell__transport {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 4px;
}

.section--jukebox-inline .jukebox-display__button {
    min-height: 46px;
    padding: 0 18px;
    border-radius: 16px;
    box-shadow: none;
}

.section--jukebox-inline .jukebox-inline-shell__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 16px;
}

.jukebox-inline-shell__search-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 13px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.04);
    color: rgba(225, 238, 248, 0.8);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
    transition: border-color 0.22s ease, color 0.22s ease, background-color 0.22s ease;
}

.jukebox-inline-shell__search-toggle:hover,
.jukebox-inline-shell__search-toggle:focus-visible {
    border-color: rgba(145, 205, 255, 0.22);
    background: rgba(255, 255, 255, 0.06);
    color: #ffffff;
    outline: none;
}

.jukebox-inline-shell__discovery {
    display: grid;
    gap: 10px;
    padding-top: 14px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.jukebox-inline-shell__mode {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.035);
    color: rgba(242, 230, 213, 0.84);
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.jukebox-search {
    display: grid;
    gap: 10px;
}

.jukebox-search__field {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
}

.jukebox-search__field input {
    width: 100%;
    min-height: 42px;
    padding: 0 14px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    background: rgba(6, 20, 38, 0.58);
    color: #ffffff;
    font: inherit;
}

.jukebox-search__field input::placeholder {
    color: rgba(225, 238, 248, 0.44);
}

.jukebox-search__field input:focus-visible {
    border-color: rgba(145, 205, 255, 0.28);
    outline: none;
    box-shadow: 0 0 0 3px rgba(117, 190, 247, 0.1);
}

.jukebox-search__submit,
.jukebox-search__reset {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 15px;
    border-radius: 14px;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
    transition: border-color 0.22s ease, background-color 0.22s ease, color 0.22s ease;
}

.jukebox-search__submit {
    border: 1px solid rgba(240, 231, 219, 0.22);
    background: rgba(243, 235, 223, 0.92);
    color: #0f2949;
}

.jukebox-search__reset {
    min-height: 28px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: rgba(225, 238, 248, 0.72);
}

.jukebox-search__submit:hover,
.jukebox-search__submit:focus-visible,
.jukebox-search__reset:hover,
.jukebox-search__reset:focus-visible,
.section--jukebox-inline .jukebox-display__button:hover,
.section--jukebox-inline .jukebox-display__button:focus-visible {
    border-color: rgba(145, 205, 255, 0.22);
    background-color: rgba(255, 255, 255, 0.08);
    outline: none;
}

.jukebox-search__submit:disabled {
    cursor: wait;
    opacity: 0.74;
}

.jukebox-search__controls {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 14px;
}

.jukebox-search__meta {
    color: rgba(225, 238, 248, 0.72);
    font-size: 0.78rem;
    line-height: 1.35;
}

.jukebox-search__meta[data-state="loading"] {
    color: #f2e6d5;
}

.jukebox-search__meta[data-state="success"] {
    color: rgba(190, 241, 212, 0.92);
}

.jukebox-search__meta[data-state="error"] {
    color: rgba(255, 201, 201, 0.92);
}

.jukebox-search-results {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    max-height: min(240px, 44vh);
    overflow-y: auto;
    padding-right: 4px;
}

.jukebox-search-result {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 8px 10px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.025);
    color: #ffffff;
    text-align: left;
    cursor: pointer;
    transition: border-color 0.22s ease, background-color 0.22s ease;
}

.jukebox-search-result:hover,
.jukebox-search-result:focus-visible,
.jukebox-search-result.is-active {
    border-color: rgba(117, 190, 247, 0.24);
    background: rgba(41, 87, 132, 0.18);
    outline: none;
}

.jukebox-search-result__media {
    overflow: hidden;
    width: 46px;
    aspect-ratio: 1 / 1;
    border-radius: 12px;
}

.jukebox-search-result__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.jukebox-search-result__body {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.jukebox-search-result__body strong,
.jukebox-search-result__body span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.jukebox-search-result__body strong {
    color: #ffffff;
    font-size: 0.82rem;
    line-height: 1.18;
}

.jukebox-search-result__body span {
    color: rgba(225, 238, 248, 0.72);
    font-size: 0.72rem;
}

.jukebox-inline-shell__link {
    color: #f2e6d5;
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-decoration: none;
    text-transform: uppercase;
}

.jukebox-inline-shell__link:hover,
.jukebox-inline-shell__link:focus-visible {
    color: #ffffff;
    outline: none;
}

.jukebox-inline-player {
    padding: 16px 18px 18px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.04);
}

.jukebox-inline-player__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
    color: rgba(232, 241, 248, 0.82);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.jukebox-inline-player__embed {
    min-height: 152px;
    border-radius: 18px;
    overflow: hidden;
}

.jukebox-inline-player__embed iframe {
    border-radius: 18px;
}

.jukebox-inline-player__stop {
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
    color: #ffffff;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
}

.jukebox-inline-player__stop:hover,
.jukebox-inline-player__stop:focus-visible {
    background: rgba(255, 255, 255, 0.09);
    outline: none;
}

.section--jukebox-inline .jukebox-display__button:disabled,
.jukebox-search__reset:disabled {
    cursor: default;
    opacity: 0.45;
    background: transparent;
}

/* ========================================
   QUIZ INTERATIVO
   ======================================== */

.btn--quiz {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 24px;
    background: linear-gradient(135deg, var(--accent) 0%, var(--hero-navy) 100%);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 999px;
    color: #ffffff;
    font-family: inherit;
    font-size: 0.9rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    cursor: pointer;
    transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 8px 24px rgba(7, 21, 35, 0.25);
}

.btn--quiz:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(7, 21, 35, 0.35);
    border-color: rgba(82, 225, 255, 0.4);
}

.btn--quiz:focus-visible {
    outline: 2px solid var(--accent-bright);
    outline-offset: 3px;
}

.btn--quiz svg {
    flex-shrink: 0;
}

/* Quiz Modal */
.modal--quiz {
    z-index: 9999;
}

.modal-content--quiz {
    max-width: 560px;
    width: calc(100% - 32px);
    max-height: calc(100vh - 64px);
    padding: 0;
    background: linear-gradient(180deg, var(--hero-navy) 0%, #0a1a2e 100%);
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 32px 80px rgba(7, 21, 35, 0.5);
}

.modal-content--quiz .close-modal {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 10;
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, 0.08);
    border: none;
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 1.5rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.modal-content--quiz .close-modal:hover {
    background: rgba(255, 255, 255, 0.14);
    color: #ffffff;
}

.quiz-shell {
    display: flex;
    flex-direction: column;
    min-height: 480px;
    max-height: calc(100vh - 64px);
    overflow: hidden;
}

/* Progress Bar */
.quiz-progress {
    padding: 20px 24px 12px;
    background: rgba(0, 0, 0, 0.2);
}

.quiz-progress-bar {
    height: 4px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 999px;
    overflow: hidden;
    margin-bottom: 8px;
}

.quiz-progress-fill {
    height: 100%;
    background: linear-gradient(90deg, var(--accent-bright) 0%, #7df0ff 100%);
    border-radius: 999px;
    transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    width: 0%;
}

.quiz-progress-text {
    font-size: 0.75rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.5);
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

/* Quiz Content */
.quiz-content {
    flex: 1;
    padding: 24px;
    overflow-y: auto;
}

.quiz-question {
    animation: quizFadeIn 0.4s ease;
}

@keyframes quizFadeIn {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.quiz-kicker {
    display: inline-block;
    padding: 6px 12px;
    background: rgba(82, 225, 255, 0.12);
    border-radius: 999px;
    color: var(--accent-bright);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    margin-bottom: 16px;
}

.quiz-question-title {
    margin: 0 0 24px;
    color: #ffffff;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.3;
}

/* Quiz Options */
.quiz-options {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.quiz-option {
    display: flex;
    align-items: center;
    gap: 14px;
    width: 100%;
    padding: 16px 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    color: #ffffff;
    font-family: inherit;
    font-size: 1rem;
    text-align: left;
    cursor: pointer;
    transition: all 0.24s ease;
    animation: quizOptionIn 0.4s backwards;
}

@keyframes quizOptionIn {
    from {
        opacity: 0;
        transform: translateX(-12px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.quiz-option:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(82, 225, 255, 0.3);
    transform: translateX(4px);
}

.quiz-option:focus-visible {
    outline: 2px solid var(--accent-bright);
    outline-offset: 2px;
}

.quiz-option--selected {
    background: rgba(82, 225, 255, 0.15);
    border-color: var(--accent-bright);
}

.quiz-option-letter {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 10px;
    font-size: 0.85rem;
    font-weight: 800;
    color: var(--accent-bright);
    flex-shrink: 0;
}

.quiz-option-text {
    flex: 1;
    line-height: 1.4;
}

/* Quiz Result */
.quiz-result {
    text-align: center;
    animation: quizFadeIn 0.5s ease;
}

.quiz-result-header {
    margin-bottom: 20px;
}

.quiz-result-emoji {
    display: block;
    font-size: 4rem;
    margin-bottom: 12px;
    animation: quizBounce 0.6s ease;
}

@keyframes quizBounce {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.2); }
}

.quiz-result-title {
    margin: 0;
    color: #ffffff;
    font-size: 1.6rem;
    font-weight: 800;
    line-height: 1.2;
}

.quiz-result-description {
    margin: 0 0 24px;
    color: rgba(255, 255, 255, 0.75);
    font-size: 1rem;
    line-height: 1.6;
}

/* Result Song Card */
.quiz-result-song {
    margin-bottom: 24px;
}

.quiz-result-song-card {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    margin-bottom: 14px;
}

.quiz-result-song-cover {
    width: 72px;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #1DB954 0%, #1ed760 100%);
    border-radius: 12px;
    flex-shrink: 0;
}

.quiz-result-song-cover svg {
    color: #000;
}

.quiz-result-song-info {
    flex: 1;
    text-align: left;
}

.quiz-result-song-label {
    display: block;
    font-size: 0.7rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.5);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 4px;
}

.quiz-result-song-title {
    display: block;
    color: #ffffff;
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 2px;
}

.quiz-result-song-artist {
    display: block;
    color: rgba(255, 255, 255, 0.6);
    font-size: 0.9rem;
}

.quiz-result-spotify {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 14px 20px;
    background: #1DB954;
    border-radius: 999px;
    color: #000;
    font-size: 0.9rem;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.2s ease;
}

.quiz-result-spotify:hover {
    background: #1ed760;
    transform: translateY(-2px);
}

/* Result Actions */
.quiz-result-actions {
    display: flex;
    gap: 12px;
    margin-bottom: 24px;
}

.quiz-result-actions .btn {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 16px;
    border-radius: 12px;
    font-family: inherit;
    font-size: 0.85rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn--share {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #ffffff;
}

.btn--share:hover {
    background: rgba(255, 255, 255, 0.14);
}

.btn--secondary {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: rgba(255, 255, 255, 0.7);
}

.btn--secondary:hover {
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
}

/* Result CTA */
.quiz-result-cta {
    padding: 20px;
    background: rgba(82, 225, 255, 0.08);
    border-radius: 16px;
    border: 1px solid rgba(82, 225, 255, 0.2);
}

.quiz-result-cta p {
    margin: 0 0 12px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.9rem;
}

.quiz-result-cta .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 14px 20px;
    background: #25D366;
    border: none;
    border-radius: 12px;
    color: #ffffff;
    font-size: 0.95rem;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.2s ease;
}

.quiz-result-cta .btn:hover {
    background: #22c35e;
    transform: translateY(-2px);
}

/* Quiz Footer */
.quiz-footer {
    padding: 16px 24px;
    background: rgba(0, 0, 0, 0.15);
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.quiz-branding {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: rgba(255, 255, 255, 0.4);
    font-size: 0.8rem;
    font-weight: 600;
}

.quiz-logo {
    font-size: 1.1rem;
}

/* Toast */
.quiz-toast {
    position: fixed;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%) translateY(100px);
    padding: 14px 24px;
    background: var(--hero-navy);
    border: 1px solid rgba(82, 225, 255, 0.3);
    border-radius: 12px;
    color: #ffffff;
    font-size: 0.9rem;
    font-weight: 600;
    box-shadow: 0 12px 32px rgba(7, 21, 35, 0.4);
    z-index: 10000;
    opacity: 0;
    transition: all 0.3s ease;
}

.quiz-toast--show {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
}

/* Responsive */
@media (max-width: 640px) {
    .btn--quiz {
        padding: 12px 18px;
        font-size: 0.85rem;
    }
    
    .quiz-content {
        padding: 20px 16px;
    }
    
    .quiz-question-title {
        font-size: 1.2rem;
    }
    
    .quiz-option {
        padding: 14px 16px;
    }
    
    .quiz-result-song-card {
        flex-direction: column;
        text-align: center;
    }
    
    .quiz-result-song-info {
        text-align: center;
    }
    
    .quiz-result-actions {
        flex-direction: column;
    }
    
    .quiz-result-emoji {
        font-size: 3rem;
    }
}

#jukebox.is-playing .jukebox-inline-shell__vinyl,
#jukebox.is-playing .jukebox-inline-shell__record .jukebox-display__cover {
    animation: jukeboxSpin 6.8s linear infinite;
}

#jukebox.is-changing .jukebox-inline-shell__record .jukebox-display__cover {
    animation: jukeboxSwap 0.56s ease;
}

.site-footer--home-lean .site-footer__hero {
    grid-template-columns: minmax(0, 1fr) auto;
    padding-bottom: 14px;
}

.site-footer--home-lean .site-footer__title {
    max-width: 14ch;
}

.site-footer--home-lean .site-footer__lead {
    max-width: 34ch;
}

.site-footer--home-lean .site-footer__button--ghost,
.site-footer--home-lean .site-footer__compact {
    display: none;
}

.site-footer--home-lean .site-footer__lean-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px 18px;
}

.site-footer--home-lean .site-footer__lean-label {
    color: rgba(208, 221, 236, 0.72);
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.site-footer--home-lean .site-footer__mini-links {
    justify-content: flex-start;
}

@keyframes jukeboxSpin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes jukeboxSwap {
    0% {
        transform: rotate(-10deg) scale(0.96);
    }

    60% {
        transform: rotate(8deg) scale(1.03);
    }

    100% {
        transform: rotate(0deg) scale(1);
    }
}

@media (max-width: 1080px) {
    .contact-compact,
    .jukebox-inline-shell__stage,
    .site-footer--home-lean .site-footer__hero {
        grid-template-columns: 1fr;
    }

    .site-footer--home-lean .site-footer__hero-actions {
        justify-content: flex-start;
    }
}

@media (max-width: 720px) {
    .section--contacts-compact {
        padding-block: 22px;
    }

    .contact-compact {
        gap: 12px;
        margin-top: 20px;
    }

    .contact-compact__primary,
    .contact-compact__panel {
        padding: 18px 18px;
        border-radius: 20px;
    }

    .contact-compact__primary strong {
        font-size: 1.56rem;
    }

    .contact-compact__actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .section--jukebox-inline .jukebox-console {
        padding: 18px 14px;
        border-radius: 24px;
    }

    .jukebox-inline-shell__stage {
        gap: 18px;
    }

    .jukebox-inline-shell__record {
        width: min(100%, 260px);
    }

    .jukebox-inline-shell__toggle {
        min-height: 44px;
        padding: 0 16px;
        font-size: 0.68rem;
    }

    .section--jukebox-inline .jukebox-display strong {
        font-size: clamp(1.78rem, 10vw, 2.48rem);
    }

    .section--jukebox-inline .jukebox-display p,
    .section--jukebox-inline .jukebox-display__hint {
        max-width: none;
    }

    .section--jukebox-inline .jukebox-inline-shell__transport {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .jukebox-search__field,
    .jukebox-search-results {
        grid-template-columns: 1fr;
    }

    .section--jukebox-inline .jukebox-inline-shell__footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .jukebox-inline-player {
        padding: 14px 14px 16px;
        border-radius: 20px;
    }

    .site-footer--home-lean .site-footer__lean-row {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 480px) {
    .contact-compact__actions,
    .section--jukebox-inline .jukebox-inline-shell__transport {
        grid-template-columns: 1fr;
    }

    .section--jukebox-inline .jukebox-console {
        margin-top: 20px;
    }

    .jukebox-inline-shell__record {
        width: min(100%, 232px);
    }

    .jukebox-search__controls {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Modal and gallery refresh */
.modal {
    background:
        radial-gradient(circle at 50% 10%, rgba(93, 169, 245, 0.18), transparent 28%),
        rgba(2, 12, 24, 0.84);
    backdrop-filter: blur(20px) saturate(1.08);
}

.modal-content--video {
    width: min(1040px, 100%);
    padding: 20px;
    border-radius: 28px;
    border: 1px solid rgba(166, 214, 255, 0.12);
    background:
        radial-gradient(circle at 18% 10%, rgba(92, 174, 255, 0.08), transparent 26%),
        linear-gradient(180deg, rgba(8, 30, 55, 0.98), rgba(4, 18, 34, 0.98));
    box-shadow:
        0 36px 96px rgba(0, 0, 0, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.video-modal-shell {
    padding: 22px;
    border-radius: 24px;
    border: 1px solid rgba(174, 221, 255, 0.12);
    background:
        radial-gradient(circle at 82% 14%, rgba(86, 176, 255, 0.14), transparent 24%),
        linear-gradient(180deg, rgba(10, 40, 74, 0.98), rgba(5, 22, 41, 1));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 22px 48px rgba(0, 0, 0, 0.22);
}

.video-frame-wrap {
    border-radius: 22px;
    border-color: rgba(179, 223, 255, 0.1);
    background: #04111f;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 24px 54px rgba(0, 0, 0, 0.24);
}

.video-modal-bar {
    margin-top: 18px;
    gap: 10px;
    padding: 0 4px;
}

.video-modal-title {
    font-size: clamp(1.72rem, 2.3vw, 2.48rem);
    line-height: 0.96;
}

.video-modal-shell .video-modal-subtitle {
    max-width: 48ch;
    color: rgba(227, 240, 255, 0.82);
    font-size: 0.95rem;
    line-height: 1.58;
}

.video-modal-note {
    margin-top: 16px;
    padding: 18px;
    border-radius: 22px;
    border: 1px solid rgba(174, 221, 255, 0.1);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.03));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.video-modal-preview {
    border-radius: 18px;
    border-color: rgba(174, 221, 255, 0.12);
    background: rgba(255, 255, 255, 0.04);
    box-shadow: none;
}

.video-modal-meta {
    gap: 14px;
}

.video-modal-meta .video-modal-kicker,
.video-modal-meta .video-modal-title,
.video-modal-note p {
    color: rgba(233, 243, 255, 0.92);
}

.video-modal-meta .video-modal-kicker {
    color: rgba(194, 226, 255, 0.72);
}

.video-modal-link,
.modal-action-pill,
.modal-content--video .modal-back-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 46px;
    padding: 0 18px;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    text-decoration: none;
    font-family: inherit;
    line-height: 1;
    transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
}

.video-modal-link {
    margin: 0;
    border-color: rgba(255, 255, 255, 0.18);
    background: linear-gradient(180deg, rgba(255, 247, 236, 0.98), rgba(241, 228, 212, 0.98));
    color: #0b2743;
    box-shadow: none;
}

.video-modal-link:hover,
.video-modal-link:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(255, 255, 255, 0.24);
    background: linear-gradient(180deg, rgba(255, 250, 243, 1), rgba(245, 233, 219, 1));
    color: #061a31;
    box-shadow: 0 14px 26px rgba(0, 0, 0, 0.14);
    outline: none;
}

.video-modal-actions,
.lightbox__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.video-modal-actions {
    margin-top: 16px;
    padding: 0 4px 2px;
}

.modal-action-pill,
.modal-content--video .modal-back-link {
    border: 1px solid rgba(174, 221, 255, 0.14);
    background: rgba(255, 255, 255, 0.05);
    color: rgba(243, 248, 255, 0.94);
    box-shadow: none;
    cursor: pointer;
}

.modal-action-pill--primary {
    border-color: rgba(198, 229, 255, 0.2);
    background: linear-gradient(180deg, rgba(16, 64, 112, 0.98), rgba(7, 36, 69, 0.98));
}

.modal-action-pill:hover,
.modal-action-pill:focus-visible,
.modal-content--video .modal-back-link:hover,
.modal-content--video .modal-back-link:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(198, 229, 255, 0.28);
    background: rgba(255, 255, 255, 0.09);
    color: #ffffff;
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.16);
    outline: none;
}

.modal-action-pill--primary:hover,
.modal-action-pill--primary:focus-visible {
    background: linear-gradient(180deg, rgba(19, 78, 136, 0.98), rgba(8, 44, 84, 0.98));
}

.modal-content--video .modal-back-link {
    width: fit-content;
    margin-top: 0;
}

.video-modal-note .modal-back-link {
    max-width: none;
}

.close-modal {
    top: 18px;
    right: 18px;
    width: 44px;
    height: 44px;
    border-color: rgba(174, 221, 255, 0.14);
    background: rgba(4, 20, 37, 0.74);
    color: rgba(244, 249, 255, 0.92);
    box-shadow: none;
}

.close-modal:hover,
.close-modal:focus-visible {
    background: rgba(7, 29, 52, 0.92);
    color: #ffffff;
}

.lightbox {
    background:
        radial-gradient(circle at 50% 10%, rgba(93, 169, 245, 0.2), transparent 28%),
        rgba(2, 12, 24, 0.88);
    backdrop-filter: blur(22px) saturate(1.06);
}

.lightbox__dialog {
    width: min(1000px, 100%);
    padding: 20px;
    border-radius: 28px;
    border: 1px solid rgba(166, 214, 255, 0.14);
    background:
        radial-gradient(circle at 78% 12%, rgba(86, 176, 255, 0.12), transparent 24%),
        linear-gradient(180deg, rgba(9, 36, 64, 0.98), rgba(4, 18, 34, 0.98));
    box-shadow:
        0 34px 88px rgba(0, 0, 0, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.lightbox__chrome {
    margin: 0 56px 14px 0;
    gap: 12px;
    align-items: center;
}

.lightbox__counter,
.lightbox__nav {
    border-color: rgba(174, 221, 255, 0.16);
    background: rgba(255, 255, 255, 0.06);
}

.lightbox__nav {
    width: 42px;
    height: 42px;
}

.lightbox__nav:hover,
.lightbox__nav:focus-visible {
    background: rgba(255, 255, 255, 0.11);
}

.lightbox__figure {
    gap: 16px;
}

.lightbox__image {
    max-height: 70vh;
    border-radius: 24px;
    border-color: rgba(174, 221, 255, 0.14);
    background: rgba(255, 255, 255, 0.03);
}

.lightbox__caption {
    gap: 8px;
    padding: 0 4px 2px;
    text-align: left;
    align-items: flex-start;
}

.lightbox__caption strong {
    font-size: 1.08rem;
}

.lightbox__close {
    top: 14px;
    right: 14px;
    width: 42px;
    height: 42px;
    border-color: rgba(174, 221, 255, 0.14);
    background: rgba(4, 20, 37, 0.74);
}

.lightbox__actions {
    margin-top: 8px;
}

#ensaios .gallery-showcase--ensaios {
    gap: 14px;
    padding: 24px;
    border-radius: 28px;
    border: 1px solid rgba(173, 220, 255, 0.12);
    background:
        radial-gradient(circle at 18% 8%, rgba(98, 176, 255, 0.14), transparent 24%),
        linear-gradient(180deg, rgba(10, 31, 54, 0.98), rgba(6, 21, 37, 1));
    box-shadow: 0 28px 62px rgba(0, 12, 24, 0.22);
}

#ensaios .gallery-showcase__stickers,
#ensaios .gallery-controls,
#ensaios .swipe-hint {
    display: none !important;
}

#ensaios .showcase-copy {
    max-width: 40rem;
    color: rgba(223, 238, 251, 0.78);
    font-size: 0.94rem;
    line-height: 1.62;
}

#ensaios .ensaios-track-frame {
    padding: 18px;
    border-radius: 24px;
    border: 1px solid rgba(174, 221, 255, 0.12);
    background:
        radial-gradient(circle at 50% 20%, rgba(99, 181, 255, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.02));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.03),
        0 24px 48px rgba(0, 10, 20, 0.18);
}

#ensaios .ensaios-track-frame::before,
#ensaios .ensaios-track-frame::after {
    display: none;
}

#ensaios .ensaios-track {
    gap: 14px;
    padding: 4px 56px 8px;
    scroll-padding-inline: 56px;
}

#ensaios .ensaios-card {
    border-radius: 24px;
    border-color: rgba(183, 225, 255, 0.14);
    background: linear-gradient(180deg, rgba(18, 49, 79, 0.94), rgba(6, 22, 38, 0.98));
    box-shadow: 0 22px 48px rgba(0, 16, 31, 0.24);
}

#ensaios .ensaios-card::before {
    background: linear-gradient(118deg, transparent 6%, rgba(132, 205, 255, 0.06) 22%, rgba(255, 255, 255, 0.12) 38%, transparent 58%);
}

#ensaios .ensaios-card::after {
    width: 180px;
    height: 180px;
    opacity: 0.54;
}

#ensaios .ensaios-card.is-active,
#ensaios .ensaios-card:hover {
    border-color: rgba(204, 233, 255, 0.28);
    box-shadow:
        0 30px 60px rgba(0, 16, 31, 0.28),
        0 0 0 1px rgba(158, 214, 255, 0.12);
}

#ensaios .ensaios-card img {
    aspect-ratio: 4 / 5;
}

#ensaios .ensaios-card__caption {
    gap: 6px;
    padding: 18px 16px 14px;
    background: linear-gradient(180deg, transparent 0%, rgba(4, 20, 38, 0.18) 20%, rgba(4, 20, 38, 0.84) 58%, rgba(4, 20, 38, 0.96) 100%);
    backdrop-filter: blur(10px);
}

#ensaios .ensaios-card__tag {
    min-height: 26px;
    padding: 5px 10px;
    border-color: rgba(198, 229, 255, 0.14);
    background: rgba(5, 30, 56, 0.62);
}

#ensaios .ensaios-card__caption strong {
    font-size: 1.02rem;
}

#ensaios .ensaios-card__text {
    color: rgba(223, 240, 255, 0.74);
    font-size: 0.82rem;
    line-height: 1.42;
}

#ensaios .gallery-frame-button {
    position: absolute;
    top: 50%;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 48px;
    padding: 0 14px;
    border: 1px solid rgba(180, 225, 255, 0.14);
    border-radius: 999px;
    background: rgba(6, 28, 52, 0.8);
    color: rgba(238, 245, 255, 0.92);
    box-shadow: 0 18px 34px rgba(0, 10, 20, 0.24);
    backdrop-filter: blur(14px);
    cursor: pointer;
    transform: translateY(-50%);
    transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
}

#ensaios .gallery-frame-button:hover,
#ensaios .gallery-frame-button:focus-visible {
    transform: translateY(calc(-50% - 1px));
    border-color: rgba(208, 234, 255, 0.28);
    background: rgba(10, 39, 70, 0.94);
    outline: none;
}

#ensaios .gallery-frame-button:disabled,
#ensaios .gallery-frame-button.is-disabled {
    opacity: 0.34;
    cursor: default;
    pointer-events: none;
}

#ensaios .gallery-frame-button--prev {
    left: 18px;
}

#ensaios .gallery-frame-button--next {
    right: 18px;
}

#ensaios .gallery-frame-button__icon {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
}

#ensaios .gallery-frame-button__icon svg {
    width: 22px;
    height: 22px;
    display: block;
}

#ensaios .gallery-frame-button--prev .gallery-frame-button__icon svg {
    transform: scaleX(-1);
}

#ensaios .gallery-frame-button__text {
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    white-space: nowrap;
}

@media (max-width: 720px) {
    .modal {
        padding: 14px;
    }

    .modal-content--video {
        width: min(100%, 440px);
        padding: 10px;
        border-radius: 24px;
    }

    .video-modal-shell {
        padding: 16px;
        border-radius: 20px;
    }

    .video-frame-wrap {
        border-radius: 18px;
    }

    .video-modal-bar {
        padding: 0;
        text-align: left;
        justify-items: start;
    }

    .video-modal-note {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 14px;
        text-align: left;
    }

    .video-modal-preview {
        max-width: none;
        margin: 0;
    }

    .video-modal-meta {
        justify-items: start;
    }

    .video-modal-link,
    .modal-action-pill,
    .modal-content--video .modal-back-link {
        width: 100%;
    }

    .video-modal-actions,
    .lightbox__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .lightbox__dialog {
        width: min(100%, 420px);
        padding: 12px;
        border-radius: 22px;
    }

    .lightbox__chrome {
        margin: 0 44px 12px 0;
    }

    .lightbox__image {
        max-height: 60vh;
        border-radius: 18px;
    }

    #ensaios .gallery-showcase--ensaios {
        padding: 16px;
        border-radius: 22px;
    }

    #ensaios .ensaios-track-frame {
        padding: 12px 10px 58px;
        border-radius: 18px;
    }

    #ensaios .ensaios-track {
        gap: 12px;
        padding: 2px 4px 2px;
        scroll-padding-inline: 10px;
    }

    #ensaios .ensaios-card {
        border-radius: 20px;
    }

    #ensaios .ensaios-card__caption {
        padding: 15px 13px 12px;
    }

    #ensaios .gallery-frame-button {
        top: auto;
        bottom: 12px;
        transform: none;
        min-height: 42px;
        padding: 0 12px;
    }

    #ensaios .gallery-frame-button:hover,
    #ensaios .gallery-frame-button:focus-visible {
        transform: translateY(-1px);
    }

    #ensaios .gallery-frame-button--prev {
        left: 10px;
    }

    #ensaios .gallery-frame-button--next {
        right: 10px;
    }

    #ensaios .gallery-frame-button__text {
        display: none;
    }
}

/* Jukebox polish */
.jukebox-inline-shell {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.jukebox-inline-shell__ambience {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    overflow: hidden;
}

.jukebox-inline-shell__note {
    position: absolute;
    color: rgba(178, 221, 255, 0.08);
    font-size: clamp(1.5rem, 2.2vw, 2.1rem);
    line-height: 1;
    opacity: 0;
    text-shadow: 0 10px 28px rgba(0, 14, 30, 0.24);
    transform: translate3d(0, 0, 0);
}

.jukebox-inline-shell__note--one {
    top: 9%;
    right: 20%;
}

.jukebox-inline-shell__note--two {
    right: 8%;
    bottom: 20%;
}

.jukebox-inline-shell__note--three {
    bottom: 10%;
    left: 40%;
}

#jukebox.is-playing .jukebox-inline-shell__note {
    opacity: 0.18;
    animation: jukeboxNoteFloat 7.2s ease-in-out infinite;
}

#jukebox.is-playing .jukebox-inline-shell__note--two {
    animation-delay: 0.5s;
    animation-duration: 8s;
}

#jukebox.is-playing .jukebox-inline-shell__note--three {
    animation-delay: 1.1s;
    animation-duration: 6.8s;
}

.jukebox-inline-shell__stage {
    position: relative;
    z-index: 1;
    gap: 26px;
}

.section--jukebox-inline .jukebox-display__topline {
    gap: 0;
}

.section--jukebox-inline .jukebox-display__artist {
    color: rgba(214, 232, 249, 0.78);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.section--jukebox-inline .jukebox-inline-shell__meta {
    gap: 12px;
}

.section--jukebox-inline .jukebox-display strong {
    max-width: 10ch;
    color: #ffffff;
    font-size: clamp(2.36rem, 4.6vw, 3.5rem);
    line-height: 0.92;
    text-shadow: 0 12px 28px rgba(0, 12, 24, 0.22);
}

.section--jukebox-inline .jukebox-display p {
    max-width: 31ch;
    color: rgba(227, 239, 248, 0.88);
    font-size: 1rem;
    line-height: 1.56;
}

.section--jukebox-inline .jukebox-inline-shell__footer {
    gap: 10px 18px;
    margin-top: 2px;
}

.jukebox-inline-shell__search-toggle {
    min-height: 36px;
    padding: 0 14px;
    border-color: rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.03);
    color: rgba(225, 238, 248, 0.72);
}

.jukebox-inline-shell__link {
    color: rgba(243, 230, 213, 0.96);
}

.jukebox-inline-player--stealth {
    position: fixed;
    top: -9999px;
    left: -9999px;
    width: 320px;
    height: 160px;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    overflow: hidden;
    pointer-events: none;
    opacity: 0;
}

.jukebox-inline-player--stealth .jukebox-inline-player__embed {
    width: 320px;
    min-height: 160px;
    border-radius: 0;
}

@keyframes jukeboxNoteFloat {
    0% {
        opacity: 0;
        transform: translate3d(0, 16px, 0) scale(0.94) rotate(-4deg);
    }

    18% {
        opacity: 0.18;
    }

    52% {
        opacity: 0.12;
        transform: translate3d(8px, -12px, 0) scale(1.03) rotate(4deg);
    }

    100% {
        opacity: 0;
        transform: translate3d(14px, -44px, 0) scale(1.08) rotate(8deg);
    }
}

@media (max-width: 720px) {
    .section--jukebox-inline .jukebox-inline-shell__meta {
        gap: 10px;
    }

    .section--jukebox-inline .jukebox-display strong {
        max-width: none;
        font-size: clamp(2rem, 11vw, 2.78rem);
    }

    .section--jukebox-inline .jukebox-display p {
        font-size: 0.95rem;
        line-height: 1.5;
    }

    .jukebox-inline-shell__note--one {
        right: 10%;
    }

    .jukebox-inline-shell__note--two {
        right: 4%;
        bottom: 26%;
    }

    .jukebox-inline-shell__note--three {
        left: 10%;
        bottom: 18%;
    }
}

/* Jukebox and modal refinements */
.modal {
    align-items: flex-start;
    overflow: auto;
    padding: 12px;
}

.modal-content--video {
    width: min(920px, calc(100vw - 24px));
    max-height: min(calc(100dvh - 24px), 820px);
    margin: auto;
    padding: 14px;
    display: grid;
    gap: 12px;
    align-content: start;
}

.video-modal-shell {
    padding: 18px;
    border-radius: 22px;
}

.video-frame-wrap {
    border-radius: 18px;
}

.video-modal-bar {
    margin-top: 14px;
    gap: 8px;
}

.video-modal-title {
    font-size: clamp(1.48rem, 2vw, 2.08rem);
}

.video-modal-actions {
    margin-top: 0;
    padding: 0;
    justify-content: flex-start;
}

.section--jukebox-inline .jukebox-inline-shell__stage {
    grid-template-columns: minmax(224px, 308px) minmax(0, 1fr);
    gap: 28px;
    align-items: center;
}

.section--jukebox-inline .jukebox-inline-shell__meta {
    min-width: 0;
    gap: 16px;
    align-content: center;
}

.jukebox-inline-shell__headline {
    display: grid;
    gap: 8px;
    min-width: 0;
    width: min(100%, 34rem);
    align-content: start;
}

.section--jukebox-inline .jukebox-display__topline,
.section--jukebox-inline .jukebox-display__artist {
    min-width: 0;
    max-width: 100%;
}

.section--jukebox-inline .jukebox-display__artist {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#jukeboxDisplayTitle {
    display: block;
    margin: 0;
    max-width: 100%;
    color: #f7fbff;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2.44rem, 4.8vw, 3.7rem);
    font-weight: 600;
    line-height: 0.92;
    letter-spacing: -0.03em;
    text-wrap: balance;
    text-shadow: 0 14px 30px rgba(0, 12, 24, 0.24);
    overflow: hidden;
    overflow-wrap: anywhere;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    max-height: 1.84em;
}

#jukeboxDisplayMessage {
    max-width: 34ch;
    margin: 0;
    color: rgba(227, 239, 248, 0.9);
    font-size: 1rem;
    line-height: 1.58;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    max-height: 4.74em;
}

.section--jukebox-inline .jukebox-inline-shell__actions {
    display: grid;
    gap: 14px;
}

.section--jukebox-inline .jukebox-inline-shell__transport {
    gap: 12px;
}

.section--jukebox-inline .jukebox-display__button {
    min-width: 156px;
}

.section--jukebox-inline .jukebox-inline-shell__footer {
    gap: 10px 12px;
}

.jukebox-inline-shell__search-toggle,
.jukebox-inline-shell__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.03);
    color: rgba(234, 241, 249, 0.88);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    text-decoration: none;
}

.jukebox-inline-shell__link:hover,
.jukebox-inline-shell__link:focus-visible {
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    outline: none;
}

.jukebox-inline-player--stealth {
    top: 14px;
    left: 14px;
    width: 1px;
    height: 1px;
    opacity: 0.01;
}

.jukebox-inline-player--stealth .jukebox-inline-player__embed {
    width: 320px;
    min-height: 160px;
}

@media (max-width: 720px) {
    .modal-content--video {
        width: min(100%, 420px);
        max-height: calc(100dvh - 18px);
        padding: 10px;
    }

    .video-modal-shell {
        padding: 16px;
    }

    .section--jukebox-inline .jukebox-inline-shell__stage {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .section--jukebox-inline .jukebox-inline-shell__meta {
        gap: 14px;
        justify-items: start;
    }

    #jukeboxDisplayTitle {
        max-width: none;
        font-size: clamp(2.08rem, 11vw, 2.96rem);
        max-height: 1.96em;
    }

    #jukeboxDisplayMessage {
        max-width: none;
        font-size: 0.95rem;
        line-height: 1.52;
        -webkit-line-clamp: 4;
        line-clamp: 4;
        max-height: 6.08em;
    }

    .section--jukebox-inline .jukebox-inline-shell__transport,
    .section--jukebox-inline .jukebox-inline-shell__footer {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
    }

    .section--jukebox-inline .jukebox-display__button,
    .jukebox-inline-shell__search-toggle,
    .jukebox-inline-shell__link {
        width: 100%;
        min-width: 0;
    }
}

@media (max-width: 480px) {
    .section--jukebox-inline .jukebox-inline-shell__transport,
    .section--jukebox-inline .jukebox-inline-shell__footer {
        grid-template-columns: 1fr;
    }
}

/* Video stage refinements */
#legado .legacy-video-trigger--feature {
    max-width: 560px;
    isolation: isolate;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage {
    position: relative;
    isolation: isolate;
    border-radius: 34px;
    border: 1px solid rgba(183, 225, 255, 0.12);
    background:
        radial-gradient(circle at 50% 14%, rgba(169, 221, 255, 0.16), transparent 22%),
        linear-gradient(180deg, rgba(10, 34, 61, 0.98), rgba(4, 16, 30, 1));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 28px 58px rgba(0, 12, 24, 0.24);
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage::before {
    display: none;
}

#legado .legacy-video-trigger__spotlight,
#legado .legacy-video-trigger__footlights,
#legado .legacy-video-trigger__curtain,
#legado .legacy-video-trigger__disc-shell {
    position: absolute;
    pointer-events: none;
}

#legado .legacy-video-trigger__spotlight {
    inset: 8% 12% auto;
    height: 38%;
    background:
        radial-gradient(circle at 50% 0%, rgba(240, 248, 255, 0.34), transparent 48%),
        radial-gradient(circle at 50% 16%, rgba(124, 198, 255, 0.18), transparent 56%);
    filter: blur(4px);
    opacity: 0.92;
    z-index: 0;
}

#legado .legacy-video-trigger__footlights {
    left: 10%;
    right: 10%;
    bottom: 8%;
    height: 20px;
    border-radius: 999px;
    background:
        radial-gradient(circle at 10% 50%, rgba(166, 220, 255, 0.82) 0 10%, transparent 12%),
        radial-gradient(circle at 25% 50%, rgba(166, 220, 255, 0.78) 0 10%, transparent 12%),
        radial-gradient(circle at 40% 50%, rgba(166, 220, 255, 0.74) 0 10%, transparent 12%),
        radial-gradient(circle at 55% 50%, rgba(166, 220, 255, 0.78) 0 10%, transparent 12%),
        radial-gradient(circle at 70% 50%, rgba(166, 220, 255, 0.74) 0 10%, transparent 12%),
        radial-gradient(circle at 85% 50%, rgba(166, 220, 255, 0.8) 0 10%, transparent 12%);
    opacity: 0.54;
    filter: blur(0.3px);
    z-index: 0;
}

#legado .legacy-video-trigger__curtain {
    top: -1%;
    bottom: -1%;
    width: 56%;
    z-index: 3;
    background:
        linear-gradient(90deg, rgba(78, 11, 20, 0.98), rgba(120, 18, 32, 0.98) 26%, rgba(79, 10, 20, 0.98) 52%, rgba(126, 17, 32, 0.98) 76%, rgba(73, 8, 18, 0.98)),
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.05) 0 3px, transparent 3px 22px);
    box-shadow: inset -14px 0 26px rgba(32, 2, 8, 0.22);
    transition: transform 0.42s cubic-bezier(0.2, 0.7, 0.16, 1), opacity 0.24s ease;
}

#legado .legacy-video-trigger__curtain::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.14), transparent 20%, transparent 78%, rgba(0, 0, 0, 0.16)),
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.08) 0 4px, transparent 4px 26px);
    opacity: 0.62;
}

#legado .legacy-video-trigger__curtain--left {
    left: 0;
    border-radius: 34px 0 0 34px;
}

#legado .legacy-video-trigger__curtain--right {
    right: 0;
    border-radius: 0 34px 34px 0;
}

#legado .legacy-video-trigger__disc-shell {
    inset: 7.5%;
    display: grid;
    place-items: center;
    z-index: 1;
}

#legado .legacy-video-trigger__disc {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 30px;
    box-shadow:
        0 24px 42px rgba(0, 12, 24, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
    transition: border-radius 0.26s ease, box-shadow 0.26s ease, transform 0.26s ease;
}

#legado .legacy-video-trigger__disc::before,
#legado .legacy-video-trigger__disc::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.18s ease;
}

#legado .legacy-video-trigger__disc::before {
    top: 50%;
    left: 50%;
    width: 82px;
    height: 82px;
    margin: -41px 0 0 -41px;
    border-radius: 999px;
    background:
        radial-gradient(circle, rgba(7, 25, 46, 0.96) 0 30%, rgba(31, 89, 156, 0.92) 31% 54%, rgba(205, 231, 255, 0.16) 55% 66%, rgba(2, 14, 28, 0.96) 67% 100%);
    box-shadow: 0 0 0 12px rgba(255, 255, 255, 0.04);
    z-index: 3;
}

#legado .legacy-video-trigger__disc::after {
    background:
        repeating-radial-gradient(circle at center, rgba(255, 255, 255, 0.14) 0 2px, transparent 2px 15px),
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), transparent 24%, transparent 76%, rgba(0, 0, 0, 0.1));
    mix-blend-mode: screen;
    z-index: 2;
}

#legado .legacy-video-trigger__disc img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__play {
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%);
    z-index: 4;
    transition: transform 0.24s ease, opacity 0.24s ease, box-shadow 0.24s ease;
}

#legado .legacy-video-trigger--feature:hover .legacy-video-trigger__play,
#legado .legacy-video-trigger--feature:focus-visible .legacy-video-trigger__play {
    transform: translate(-50%, -50%) scale(1.04);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.24),
        0 18px 30px rgba(0, 18, 40, 0.28);
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__curtain--left {
    transform: translateX(-108%);
    opacity: 0;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__curtain--right {
    transform: translateX(108%);
    opacity: 0;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__disc {
    border-radius: 999px;
    box-shadow:
        0 30px 52px rgba(0, 12, 24, 0.34),
        0 0 0 1px rgba(201, 232, 255, 0.12);
    animation: legacyFeatureSpin 0.66s linear 0.2s both;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__disc::before,
#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__disc::after {
    opacity: 1;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__play {
    transform: translate(-50%, -50%) scale(0.82);
    opacity: 0;
}

#videoModal {
    padding: 10px;
}

.modal-content--video {
    width: min(1080px, calc(100vw - 20px));
    max-height: calc(100dvh - 14px);
    padding: 10px;
    gap: 10px;
}

.video-modal-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(240px, 292px);
    gap: 18px;
    align-items: stretch;
    padding: 16px;
    border-radius: 24px;
}

.video-modal-sidebar {
    min-width: 0;
    display: grid;
    gap: 14px;
    align-content: space-between;
}

.video-frame-wrap {
    padding-top: 0;
    aspect-ratio: 16 / 9;
    min-height: clamp(260px, 42vh, 420px);
    border-radius: 20px;
}

.video-modal-bar {
    margin-top: 0;
    padding: 2px 0;
    gap: 10px;
}

.video-modal-title {
    font-size: clamp(1.42rem, 2vw, 1.96rem);
    line-height: 0.98;
}

.video-modal-shell .video-modal-subtitle {
    max-width: 26ch;
    font-size: 0.92rem;
    line-height: 1.5;
}

.video-modal-actions {
    margin-top: 0;
    padding: 0;
    gap: 10px;
    flex-direction: column;
    align-items: stretch;
}

.video-modal-link,
.modal-action-pill,
.modal-content--video .modal-back-link {
    min-height: 42px;
    padding: 0 16px;
    font-size: 0.66rem;
}

.modal-content--video .close-modal {
    top: 12px;
    right: 12px;
    width: 40px;
    height: 40px;
}

.video-modal-note {
    margin-top: 0;
    padding: 14px;
    border-radius: 18px;
}

.video-modal-preview {
    border-radius: 16px;
}

.modal-content--video.is-frame-hidden .video-modal-shell {
    grid-template-columns: 1fr;
}

.modal-content--video.is-frame-hidden .video-modal-sidebar {
    gap: 10px;
}

@keyframes legacyFeatureSpin {
    from {
        transform: rotate(0deg) scale(1);
    }

    to {
        transform: rotate(360deg) scale(0.9);
    }
}

@media (max-width: 900px) {
    .video-modal-shell {
        grid-template-columns: 1fr;
    }

    .video-modal-sidebar {
        gap: 12px;
    }

    .video-modal-actions {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .video-modal-shell .video-modal-subtitle {
        max-width: none;
    }
}

@media (max-width: 720px) {
    #legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage {
        border-radius: 26px;
    }

    #legado .legacy-video-trigger__curtain--left {
        border-radius: 26px 0 0 26px;
    }

    #legado .legacy-video-trigger__curtain--right {
        border-radius: 0 26px 26px 0;
    }

    #legado .legacy-video-trigger__disc-shell {
        inset: 8.5%;
    }

    #legado .legacy-video-trigger__play {
        width: 78px;
        height: 78px;
    }

    #videoModal {
        padding: 8px;
    }

    .modal-content--video {
        width: min(100%, 430px);
        max-height: calc(100dvh - 10px);
        padding: 8px;
    }

    .video-modal-shell {
        gap: 14px;
        padding: 14px;
    }

    .video-frame-wrap {
        min-height: auto;
        border-radius: 18px;
    }

    .video-modal-actions {
        display: grid;
        grid-template-columns: 1fr;
    }
}

/* Video stage retry */
#legado .legacy-video-trigger--feature {
    width: min(100%, 520px);
    justify-self: center;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage {
    display: block;
    min-height: 100%;
    background:
        radial-gradient(circle at 50% 14%, rgba(169, 221, 255, 0.1), transparent 22%),
        linear-gradient(180deg, rgba(7, 16, 29, 0.98), rgba(2, 8, 18, 1));
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage::after {
    content: '';
    position: absolute;
    inset: 11%;
    border-radius: 30px;
    border: 1px solid rgba(214, 234, 255, 0.12);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0)),
        url('../imagens/videos/legado-player-cover.svg') center / cover no-repeat,
        #08111b;
    box-shadow:
        0 22px 42px rgba(0, 10, 20, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.06);
    opacity: 0.34;
    z-index: 0;
    transition: opacity 0.22s ease, transform 0.22s ease;
}

#legado .legacy-video-trigger__spotlight,
#legado .legacy-video-trigger__footlights,
#legado .legacy-video-trigger__curtain,
#legado .legacy-video-trigger__disc-shell,
#legado .legacy-video-trigger__disc {
    display: block;
}

#legado .legacy-video-trigger__spotlight {
    inset: 4% 16% auto;
    height: 30%;
    background:
        radial-gradient(circle at 50% 0%, rgba(240, 248, 255, 0.26), transparent 48%),
        radial-gradient(circle at 50% 16%, rgba(124, 198, 255, 0.12), transparent 56%);
    filter: blur(5px);
    opacity: 0.7;
}

#legado .legacy-video-trigger__footlights {
    left: 12%;
    right: 12%;
    bottom: 7%;
    height: 18px;
    opacity: 0.38;
}

#legado .legacy-video-trigger__curtain {
    width: 52%;
    background:
        linear-gradient(90deg, rgba(88, 10, 18, 0.99), rgba(142, 18, 32, 0.99) 24%, rgba(94, 10, 20, 0.99) 52%, rgba(154, 17, 35, 0.99) 76%, rgba(76, 7, 17, 0.99)),
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.06) 0 4px, transparent 4px 24px);
    box-shadow:
        inset -14px 0 26px rgba(32, 2, 8, 0.22),
        0 8px 22px rgba(8, 3, 5, 0.18);
}

#legado .legacy-video-trigger__curtain::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 2px;
    background: linear-gradient(180deg, rgba(255, 227, 188, 0.12), rgba(255, 244, 221, 0.48), rgba(255, 227, 188, 0.12));
    opacity: 0.8;
}

#legado .legacy-video-trigger__curtain--left::after {
    right: 18px;
}

#legado .legacy-video-trigger__curtain--right::after {
    left: 18px;
}

#legado .legacy-video-trigger__disc-shell {
    inset: 11%;
}

#legado .legacy-video-trigger__disc {
    width: 100%;
    height: 100%;
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(255, 255, 255, 0)),
        url('../imagens/videos/legado-player-cover.svg') center / cover no-repeat,
        #08111b;
}

#legado .legacy-video-trigger__disc img {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    overflow: hidden;
    clip-path: inset(50%);
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media--stage::after {
    opacity: 0;
    transform: scale(0.92);
}

@media (max-width: 720px) {
    #legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage::after {
        inset: 10%;
        border-radius: 22px;
    }

    #legado .legacy-video-trigger__disc-shell {
        inset: 10%;
    }
}

/* Brand stage and hybrid jukebox */
#legado .legacy-video-trigger__curtain {
    background:
        linear-gradient(90deg, rgba(6, 18, 34, 0.99), rgba(var(--accent-rgb), 0.98) 24%, rgba(9, 29, 52, 0.99) 52%, rgba(0, 41, 84, 0.98) 76%, rgba(6, 18, 34, 0.99)),
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.06) 0 4px, transparent 4px 24px);
    transition: transform 0.9s cubic-bezier(0.2, 0.7, 0.16, 1), opacity 0.46s ease;
}

#legado .legacy-video-trigger__curtain::before {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.1), transparent 18%, transparent 78%, rgba(0, 0, 0, 0.22)),
        repeating-linear-gradient(90deg, rgba(154, 210, 247, 0.1) 0 4px, transparent 4px 26px);
}

#legado .legacy-video-trigger__curtain::after {
    background: linear-gradient(180deg, rgba(251, 240, 220, 0.1), rgba(149, 202, 238, 0.46), rgba(251, 240, 220, 0.1));
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__disc {
    animation: legacyFeatureSpinSlow 1.26s linear 0.32s both;
}

@keyframes legacyFeatureSpinSlow {
    from {
        transform: rotate(0deg) scale(1);
    }

    to {
        transform: rotate(360deg) scale(0.9);
    }
}

.jukebox-inline-shell__record {
    overflow: visible;
}


.jukebox-inline-player__audio {
    display: none;
}

#jukebox[data-playback="local"] .jukebox-display__artist {
    color: rgba(248, 232, 210, 0.92);
}

@media (max-width: 720px) {


}

@media (max-width: 720px) {
    .modal-content--video {
        width: min(100%, 392px);
        max-height: calc(100dvh - 22px);
        padding: 6px;
        gap: 8px;
    }

    .video-modal-shell {
        gap: 10px;
        padding: 12px;
    }

    .video-modal-bar {
        gap: 6px;
    }

    .video-modal-title {
        font-size: clamp(1.16rem, 7vw, 1.5rem);
    }

    .video-modal-shell .video-modal-subtitle {
        font-size: 0.86rem;
        line-height: 1.42;
    }

    .video-modal-link,
    .modal-action-pill,
    .modal-content--video .modal-back-link {
        min-height: 40px;
        padding: 0 14px;
        font-size: 0.62rem;
    }

    .modal-content--video.is-frame-hidden .video-modal-shell {
        padding: 12px;
        gap: 8px;
    }

    .modal-content--video.is-frame-hidden .video-modal-actions {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .modal-content--video.is-frame-hidden .video-modal-note {
        margin-top: 0;
        padding: 12px;
        border-radius: 16px;
    }

    .modal-content--video.is-frame-hidden .video-modal-preview {
        max-height: 146px;
        border-radius: 14px;
    }

    .modal-content--video.is-frame-hidden .video-modal-meta {
        gap: 10px;
    }
}

.section--jukebox-inline .jukebox-inline-shell__stage {
    align-items: stretch;
}

.section--jukebox-inline .jukebox-inline-shell__meta {
    min-height: 0;
    grid-template-rows: auto minmax(0, 1fr) auto;
    align-self: stretch;
}

.jukebox-inline-shell__headline {
    width: min(100%, 30rem);
    overflow: hidden;
}

.section--jukebox-inline .jukebox-display__artist {
    max-width: min(100%, 30rem);
}

#jukeboxDisplayTitle {
    width: min(100%, 30rem);
    font-size: clamp(2.02rem, 4vw, 3.18rem);
    line-height: 0.88;
    text-wrap: normal;
    white-space: normal;
    max-height: calc(2 * 0.88em);
    min-height: calc(2 * 0.88em);
}

#jukeboxDisplayMessage {
    max-width: min(100%, 31rem);
    font-size: 0.98rem;
    line-height: 1.46;
    max-height: calc(3 * 1.46em);
    min-height: calc(3 * 1.46em);
}

.section--jukebox-inline .jukebox-inline-shell__actions {
    align-self: end;
    margin-top: auto;
}

.jukebox-inline-shell__record {
    isolation: isolate;
}


@media (min-width: 721px) {
    .section--jukebox-inline .jukebox-inline-shell__stage {
        min-height: clamp(304px, 32vw, 350px);
    }

    .section--jukebox-inline .jukebox-inline-shell__meta {
        max-height: clamp(304px, 32vw, 350px);
    }
}

@media (max-width: 720px) {
    .section--jukebox-inline .jukebox-inline-shell__meta {
        grid-template-rows: auto auto auto;
        max-height: none;
    }

    .jukebox-inline-shell__headline,
    #jukeboxDisplayTitle,
    #jukeboxDisplayMessage,
    .section--jukebox-inline .jukebox-display__artist {
        width: 100%;
        max-width: 100%;
    }

    #jukeboxDisplayTitle {
        font-size: clamp(1.78rem, 9vw, 2.44rem);
        min-height: calc(2 * 0.9em);
        max-height: calc(2 * 0.9em);
    }

    #jukeboxDisplayMessage {
        min-height: calc(3 * 1.42em);
        max-height: calc(3 * 1.42em);
        font-size: 0.92rem;
        line-height: 1.42;
    }


}

@media (max-width: 980px) {
    .section--jukebox-inline .jukebox-inline-shell__stage {
        grid-template-columns: 1fr;
        gap: 20px;
        min-height: 0;
    }

    .section--jukebox-inline .jukebox-inline-shell__meta {
        grid-template-rows: auto auto auto;
        max-height: none;
        justify-items: start;
    }

    .jukebox-inline-shell__headline,
    #jukeboxDisplayTitle,
    #jukeboxDisplayMessage,
    .section--jukebox-inline .jukebox-display__artist {
        width: 100%;
        max-width: 100%;
    }

    #jukeboxDisplayTitle {
        font-size: clamp(1.88rem, 6.8vw, 2.64rem);
        min-height: calc(2 * 0.9em);
        max-height: calc(2 * 0.9em);
    }

    #jukeboxDisplayMessage {
        min-height: calc(3 * 1.42em);
        max-height: calc(3 * 1.42em);
        font-size: 0.94rem;
        line-height: 1.42;
    }

    .section--jukebox-inline .jukebox-inline-shell__transport,
    .section--jukebox-inline .jukebox-inline-shell__footer {
        width: 100%;
    }


}

/* Jukebox hard reset */
.section--jukebox-inline .jukebox-console,
.section--jukebox-inline .jukebox-inline-shell,
.section--jukebox-inline .jukebox-inline-shell__stage,
.section--jukebox-inline .jukebox-inline-shell__record {
    overflow: visible !important;
}

.section--jukebox-inline .jukebox-inline-shell {
    gap: 22px !important;
}

.section--jukebox-inline .jukebox-inline-shell__stage {
    display: grid !important;
    grid-template-columns: minmax(270px, 318px) minmax(0, 1fr) !important;
    gap: 34px !important;
    align-items: center !important;
    justify-content: start !important;
    min-height: 0 !important;
}

.section--jukebox-inline .jukebox-inline-shell__record {
    width: min(100%, 318px) !important;
    margin: 0 !important;
    aspect-ratio: 1 / 1 !important;
    display: grid !important;
    place-items: center !important;
    isolation: isolate !important;
}

.section--jukebox-inline .jukebox-inline-shell__vinyl {
    inset: 0 !important;
    border-radius: 50% !important;
    background:
        radial-gradient(circle at center, rgba(4, 16, 29, 0.98) 0 11%, transparent 11% 12%, rgba(5, 18, 32, 1) 12% 68%, rgba(39, 96, 150, 0.24) 68% 69%, rgba(5, 18, 32, 1) 69% 100%),
        repeating-radial-gradient(circle at center, rgba(255, 255, 255, 0.02) 0 1px, transparent 1px 7px) !important;
    box-shadow:
        inset 0 0 0 8px rgba(255, 255, 255, 0.03),
        0 22px 42px rgba(0, 0, 0, 0.26) !important;
}

.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    position: relative !important;
    z-index: 2 !important;
    width: 82% !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    box-shadow:
        0 0 0 10px rgba(4, 15, 28, 0.9),
        0 0 0 16px rgba(32, 85, 136, 0.14),
        0 24px 36px rgba(0, 0, 0, 0.24) !important;
}

.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background:
        linear-gradient(140deg, rgba(255, 255, 255, 0.16), transparent 34%, transparent 64%, rgba(0, 0, 0, 0.16)) !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 18% !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    transform: translate(-50%, -50%) !important;
    background:
        radial-gradient(circle at center, rgba(8, 31, 56, 0.98) 0 46%, rgba(34, 67, 103, 0.98) 47% 68%, rgba(5, 18, 32, 1) 69% 100%) !important;
    box-shadow:
        0 0 0 6px rgba(7, 24, 44, 0.86),
        0 0 0 11px rgba(255, 255, 255, 0.03) !important;
    z-index: 2 !important;
}

.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transform: scale(1.04) !important;
}


.section--jukebox-inline .jukebox-inline-shell__meta {
    display: grid !important;
    grid-template-rows: auto auto auto !important;
    justify-items: start !important;
    align-content: center !important;
    align-items: start !important;
    text-align: left !important;
    gap: 14px !important;
    min-width: 0 !important;
    max-height: none !important;
}

.section--jukebox-inline .jukebox-inline-shell__headline {
    display: grid !important;
    width: 100% !important;
    max-width: 32rem !important;
    gap: 8px !important;
    justify-items: start !important;
    text-align: left !important;
    overflow: hidden !important;
}

.section--jukebox-inline .jukebox-display__topline {
    width: 100% !important;
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    text-align: left !important;
}

.section--jukebox-inline .jukebox-display__artist {
    display: block !important;
    width: 100% !important;
    max-width: 32rem !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    text-align: left !important;
}

#jukeboxDisplayTitle {
    display: -webkit-box !important;
    width: 100% !important;
    max-width: 32rem !important;
    margin: 0 !important;
    overflow: hidden !important;
    text-overflow: clip !important;
    white-space: normal !important;
    text-wrap: initial !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    font-size: clamp(1.84rem, 3.3vw, 2.76rem) !important;
    line-height: 0.96 !important;
    max-height: calc(2 * 0.96em) !important;
    min-height: calc(2 * 0.96em) !important;
    text-align: left !important;
}

#jukeboxDisplayMessage {
    display: -webkit-box !important;
    width: 100% !important;
    max-width: 32rem !important;
    margin: 0 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    line-clamp: 3 !important;
    font-size: 0.98rem !important;
    line-height: 1.44 !important;
    max-height: calc(3 * 1.44em) !important;
    min-height: calc(3 * 1.44em) !important;
    text-align: left !important;
}

.section--jukebox-inline .jukebox-inline-shell__actions {
    display: grid !important;
    width: 100% !important;
    gap: 14px !important;
    justify-items: start !important;
    align-self: start !important;
    margin-top: 0 !important;
}

.section--jukebox-inline .jukebox-inline-shell__transport,
.section--jukebox-inline .jukebox-inline-shell__footer {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    width: 100% !important;
    gap: 12px !important;
}

.section--jukebox-inline .jukebox-display__button,
.section--jukebox-inline .jukebox-inline-shell__search-toggle,
.section--jukebox-inline .jukebox-inline-shell__link {
    min-width: 190px !important;
}

@media (max-width: 980px) {
    .section--jukebox-inline .jukebox-inline-shell__stage {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__record {
        width: min(100%, 286px) !important;
        margin: 0 auto !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__meta,
    .section--jukebox-inline .jukebox-inline-shell__headline,
    .section--jukebox-inline .jukebox-display__topline,
    #jukeboxDisplayTitle,
    #jukeboxDisplayMessage {
        justify-items: start !important;
        text-align: left !important;
    }

    #jukeboxDisplayTitle,
    #jukeboxDisplayMessage,
    .section--jukebox-inline .jukebox-display__artist {
        max-width: 100% !important;
    }

    #jukeboxDisplayTitle {
        font-size: clamp(1.58rem, 6.2vw, 2.14rem) !important;
        line-height: 0.98 !important;
        max-height: calc(2 * 0.98em) !important;
        min-height: calc(2 * 0.98em) !important;
    }

    #jukeboxDisplayMessage {
        font-size: 0.93rem !important;
        line-height: 1.42 !important;
        max-height: calc(3 * 1.42em) !important;
        min-height: calc(3 * 1.42em) !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__transport,
    .section--jukebox-inline .jukebox-inline-shell__footer {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 12px !important;
    }

    .section--jukebox-inline .jukebox-display__button,
    .section--jukebox-inline .jukebox-inline-shell__search-toggle,
    .section--jukebox-inline .jukebox-inline-shell__link {
        width: 100% !important;
        min-width: 0 !important;
    }


}

@media (max-width: 560px) {
    .section--jukebox-inline .jukebox-inline-shell__record {
        width: min(100%, 252px) !important;
    }

    #jukeboxDisplayTitle {
        font-size: clamp(1.42rem, 5.8vw, 1.86rem) !important;
        line-height: 1 !important;
        max-height: calc(2 * 1em) !important;
        min-height: calc(2 * 1em) !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__transport,
    .section--jukebox-inline .jukebox-inline-shell__footer {
        grid-template-columns: 1fr !important;
    }


}

/* Classical stage curtain */
#legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage::before {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    top: 0 !important;
    left: 10% !important;
    right: 10% !important;
    height: 20% !important;
    border-radius: 0 0 28px 28px !important;
    background:
        radial-gradient(circle at 14% -10%, rgba(214, 236, 255, 0.18) 0 16%, transparent 17%),
        radial-gradient(circle at 50% -18%, rgba(214, 236, 255, 0.22) 0 22%, transparent 23%),
        radial-gradient(circle at 86% -10%, rgba(214, 236, 255, 0.18) 0 16%, transparent 17%),
        linear-gradient(180deg, rgba(33, 92, 154, 0.92), rgba(12, 44, 82, 0.98) 58%, rgba(5, 22, 43, 0.98) 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.16),
        inset 0 -10px 16px rgba(0, 8, 18, 0.2),
        0 12px 24px rgba(0, 10, 20, 0.12) !important;
    z-index: 2 !important;
    pointer-events: none !important;
}

#legado .legacy-video-trigger__curtain {
    top: -1.5% !important;
    bottom: -1.5% !important;
    width: 54% !important;
    background:
        radial-gradient(ellipse at 50% 12%, rgba(218, 237, 255, 0.16), transparent 36%),
        linear-gradient(90deg, rgba(6, 24, 46, 0.98) 0%, rgba(20, 67, 118, 0.98) 18%, rgba(7, 31, 59, 0.99) 34%, rgba(34, 94, 156, 0.96) 50%, rgba(8, 34, 66, 0.99) 66%, rgba(17, 63, 111, 0.98) 82%, rgba(5, 22, 43, 0.98) 100%),
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.08) 0 3px, rgba(255, 255, 255, 0) 3px 17px, rgba(6, 20, 38, 0.18) 17px 22px) !important;
    box-shadow:
        inset -18px 0 26px rgba(0, 8, 20, 0.22),
        inset 18px 0 26px rgba(0, 8, 20, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        0 18px 34px rgba(0, 10, 20, 0.16) !important;
    transition: transform 0.86s cubic-bezier(0.2, 0.7, 0.16, 1), opacity 0.4s ease !important;
}

#legado .legacy-video-trigger__curtain::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.16), transparent 18%, transparent 76%, rgba(0, 0, 0, 0.18)),
        repeating-linear-gradient(90deg, rgba(173, 214, 255, 0.12) 0 4px, transparent 4px 22px) !important;
    opacity: 0.82 !important;
}

#legado .legacy-video-trigger__curtain::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 9px !important;
    background:
        linear-gradient(180deg, rgba(246, 251, 255, 0.42), rgba(143, 206, 255, 0.86) 36%, rgba(248, 252, 255, 0.22) 58%, rgba(19, 68, 120, 0.86) 100%) !important;
    box-shadow:
        0 0 0 1px rgba(219, 239, 255, 0.08),
        0 0 18px rgba(121, 193, 255, 0.22) !important;
    opacity: 0.9 !important;
}

#legado .legacy-video-trigger__curtain--left {
    border-radius: 34px 0 0 34px !important;
}

#legado .legacy-video-trigger__curtain--right {
    border-radius: 0 34px 34px 0 !important;
}

#legado .legacy-video-trigger__curtain--left::after {
    right: 14px !important;
}

#legado .legacy-video-trigger__curtain--right::after {
    left: 14px !important;
}

@media (max-width: 720px) {
    #legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage::before {
        left: 8% !important;
        right: 8% !important;
        height: 18% !important;
        border-radius: 0 0 22px 22px !important;
    }

    #legado .legacy-video-trigger__curtain {
        width: 55% !important;
    }
}

/* Legacy section final stage reset */
#legado .legacy-shell--player-only {
    grid-template-columns: minmax(280px, 420px) minmax(360px, 620px) !important;
    align-items: center !important;
    gap: clamp(28px, 4vw, 52px) !important;
}

#legado .legacy-intro {
    max-width: 420px !important;
    justify-items: start !important;
    align-content: center !important;
    gap: 16px !important;
    text-align: left !important;
}

#legado .legacy-intro .section-kicker {
    padding: 0.45rem 0.78rem !important;
    border-radius: 0 !important;
    letter-spacing: 0.18em !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(171, 215, 255, 0.14) !important;
}

#legado .legacy-intro h2 {
    max-width: 10.5ch !important;
    font-size: clamp(3rem, 5.2vw, 4.35rem) !important;
    line-height: 0.94 !important;
    letter-spacing: -0.05em !important;
    text-align: left !important;
    text-wrap: balance !important;
}

#legado .legacy-intro .section-lead {
    max-width: 28ch !important;
    font-size: clamp(1.04rem, 1.55vw, 1.18rem) !important;
    line-height: 1.58 !important;
    text-align: left !important;
    color: rgba(232, 243, 255, 0.88) !important;
    text-wrap: pretty !important;
}

#legado .legacy-video-trigger--feature {
    max-width: 620px !important;
    justify-self: end !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage {
    border-radius: 40px !important;
    border: 1px solid rgba(176, 218, 255, 0.12) !important;
    background:
        radial-gradient(circle at 50% 76%, rgba(102, 174, 242, 0.1), transparent 32%),
        linear-gradient(180deg, rgba(5, 20, 40, 0.98), rgba(3, 14, 28, 1)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 28px 60px rgba(0, 10, 22, 0.24) !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage::before {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    top: -2.5% !important;
    left: -1.5% !important;
    right: -1.5% !important;
    height: 22% !important;
    border-radius: 30px 30px 46px 46px / 20px 20px 52px 52px !important;
    background:
        radial-gradient(130% 120% at 12% 130%, rgba(2, 12, 28, 0.62) 0 18%, transparent 18.5%),
        radial-gradient(130% 120% at 34% 130%, rgba(2, 12, 28, 0.62) 0 18%, transparent 18.5%),
        radial-gradient(130% 120% at 50% 134%, rgba(2, 12, 28, 0.58) 0 20%, transparent 20.5%),
        radial-gradient(130% 120% at 66% 130%, rgba(2, 12, 28, 0.62) 0 18%, transparent 18.5%),
        radial-gradient(130% 120% at 88% 130%, rgba(2, 12, 28, 0.62) 0 18%, transparent 18.5%),
        linear-gradient(90deg, rgba(3, 16, 33, 0.96) 0%, rgba(11, 39, 77, 0.99) 16%, rgba(var(--accent-rgb), 0.98) 36%, rgba(9, 32, 63, 0.99) 54%, rgba(13, 46, 90, 0.98) 74%, rgba(3, 16, 33, 0.96) 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        inset 0 -18px 24px rgba(3, 10, 24, 0.42),
        0 16px 28px rgba(0, 8, 20, 0.18) !important;
    pointer-events: none !important;
    z-index: 4 !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage::after {
    content: '' !important;
    position: absolute !important;
    left: 50% !important;
    top: 11.5% !important;
    bottom: 4% !important;
    width: 12px !important;
    transform: translateX(-50%) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.42), rgba(143, 205, 255, 0.78) 18%, rgba(255, 255, 255, 0.2) 42%, rgba(9, 31, 62, 0.86) 100%) !important;
    box-shadow:
        0 0 0 1px rgba(208, 235, 255, 0.08),
        0 0 18px rgba(118, 190, 255, 0.22) !important;
    opacity: 0.95 !important;
    z-index: 3 !important;
    pointer-events: none !important;
}

#legado .legacy-video-trigger__spotlight {
    inset: 18% 19% auto !important;
    height: 34% !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(226, 242, 255, 0.24), transparent 42%),
        radial-gradient(circle at 50% 12%, rgba(118, 194, 255, 0.14), transparent 56%) !important;
    filter: blur(6px) !important;
    opacity: 0.68 !important;
    z-index: 0 !important;
}

#legado .legacy-video-trigger__footlights {
    left: 16% !important;
    right: 16% !important;
    bottom: 6.5% !important;
    height: 28px !important;
    background:
        radial-gradient(circle at 50% 50%, rgba(138, 202, 255, 0.32) 0 16%, transparent 52%),
        linear-gradient(90deg, transparent, rgba(138, 202, 255, 0.2), transparent) !important;
    opacity: 0.52 !important;
    filter: blur(8px) !important;
    z-index: 0 !important;
}

#legado .legacy-video-trigger__curtain {
    top: 8% !important;
    bottom: 0 !important;
    width: 51% !important;
    opacity: 1 !important;
    background:
        radial-gradient(ellipse at 50% 5%, rgba(190, 228, 255, 0.24), transparent 26%),
        radial-gradient(ellipse at 50% 102%, rgba(0, 0, 0, 0.28), transparent 34%),
        linear-gradient(90deg, rgba(3, 16, 34, 1) 0%, rgba(11, 38, 75, 0.99) 11%, rgba(24, 74, 132, 0.98) 22%, rgba(7, 24, 50, 0.99) 34%, rgba(var(--accent-rgb), 0.98) 47%, rgba(6, 24, 49, 0.99) 60%, rgba(29, 84, 148, 0.98) 74%, rgba(7, 25, 51, 0.99) 86%, rgba(3, 16, 34, 1) 100%) !important;
    box-shadow:
        inset -20px 0 30px rgba(0, 6, 16, 0.26),
        inset 18px 0 24px rgba(255, 255, 255, 0.04),
        inset 0 -12px 16px rgba(3, 10, 20, 0.18),
        0 18px 34px rgba(0, 10, 20, 0.18) !important;
    transition: transform 0.92s cubic-bezier(0.22, 0.76, 0.2, 1), opacity 0.42s ease !important;
    z-index: 3 !important;
}

#legado .legacy-video-trigger__curtain::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.12), transparent 18%, transparent 78%, rgba(0, 0, 0, 0.18)),
        repeating-linear-gradient(90deg, rgba(164, 214, 255, 0.06) 0 3px, rgba(0, 0, 0, 0) 3px 26px, rgba(0, 0, 0, 0.16) 26px 44px) !important;
    opacity: 0.92 !important;
}

#legado .legacy-video-trigger__curtain::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 10px !important;
    background:
        linear-gradient(180deg, rgba(246, 251, 255, 0.42), rgba(148, 208, 255, 0.84) 24%, rgba(255, 255, 255, 0.2) 48%, rgba(11, 38, 75, 0.9) 100%) !important;
    box-shadow:
        0 0 0 1px rgba(220, 240, 255, 0.08),
        0 0 18px rgba(118, 190, 255, 0.18) !important;
    opacity: 0.9 !important;
}

#legado .legacy-video-trigger__curtain--left {
    border-radius: 40px 0 0 40px !important;
}

#legado .legacy-video-trigger__curtain--right {
    border-radius: 0 40px 40px 0 !important;
}

#legado .legacy-video-trigger__curtain--left::after {
    right: 14px !important;
}

#legado .legacy-video-trigger__curtain--right::after {
    left: 14px !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media--stage::after {
    opacity: 0 !important;
    transition: opacity 0.22s ease !important;
}

@media (max-width: 980px) {
    #legado .legacy-shell--player-only {
        max-width: 720px !important;
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    #legado .legacy-intro {
        max-width: 100% !important;
        justify-items: center !important;
        text-align: center !important;
    }

    #legado .legacy-intro h2 {
        max-width: 11ch !important;
        text-align: center !important;
    }

    #legado .legacy-intro .section-lead {
        max-width: 34ch !important;
        text-align: center !important;
    }

    #legado .legacy-video-trigger--feature {
        justify-self: center !important;
        max-width: min(100%, 560px) !important;
    }
}

@media (max-width: 720px) {
    #legado .legacy-intro h2 {
        font-size: clamp(2.4rem, 10vw, 3.2rem) !important;
    }

    #legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage {
        border-radius: 32px !important;
    }

    #legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage::before {
        left: -1% !important;
        right: -1% !important;
        height: 18% !important;
        border-radius: 24px 24px 34px 34px / 18px 18px 38px 38px !important;
    }

    #legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage::after {
        top: 10% !important;
        bottom: 4% !important;
        width: 10px !important;
    }

    #legado .legacy-video-trigger__curtain {
        top: 7% !important;
        width: 52% !important;
    }

    #legado .legacy-video-trigger__curtain--left {
        border-radius: 32px 0 0 32px !important;
    }

    #legado .legacy-video-trigger__curtain--right {
        border-radius: 0 32px 32px 0 !important;
    }
}

/* Final 2026-04 article/footer/header cleanup */
@media (min-width: 981px) and (max-width: 1279px) {
    .news-page--article .section--news-related .news-grid--related {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 1280px) {
    .news-page--article .section--news-related .news-grid--related {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 981px) {
    .news-page--article .section--news-related .news-card {
        min-height: 100%;
    }

    .news-page--article .section--news-related .news-card__media {
        aspect-ratio: 16 / 11 !important;
        min-height: 0 !important;
    }

    .news-page--article .section--news-related .news-card__banner-dots {
        bottom: 14px;
        left: 16px;
    }

    .news-page--article .section--news-related .news-card__body {
        gap: 10px !important;
        padding: 18px 18px 20px !important;
    }

    .news-page--article .section--news-related .news-card__title,
    .news-page--article .section--news-related .news-card__title a {
        max-width: none !important;
        font-size: clamp(1.16rem, 1.42vw, 1.42rem) !important;
        line-height: 1.12 !important;
        text-wrap: pretty !important;
    }

    .news-page--article .section--news-related .news-card__excerpt {
        max-width: none !important;
        font-size: 0.92rem !important;
        line-height: 1.58 !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 3 !important;
        overflow: hidden !important;
    }
}

.top-header .site-brand__signature {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 1 clamp(320px, 30vw, 430px);
    min-width: clamp(320px, 30vw, 430px);
    min-height: 48px;
    padding: 0 22px;
    margin: 0 auto;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 999px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.015)),
        linear-gradient(180deg, rgba(7, 25, 47, 0.34), rgba(4, 14, 28, 0.16));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.1),
        inset 0 -10px 18px rgba(0, 0, 0, 0.2),
        0 10px 20px rgba(0, 18, 38, 0.08);
    overflow: hidden;
    isolation: isolate;
}

.top-header .site-brand__signature::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(112deg, transparent 18%, rgba(255, 255, 255, 0.12) 36%, transparent 56%),
        url("../logo2.png") center / 118% auto no-repeat;
    opacity: 1;
    mix-blend-mode: screen;
    pointer-events: none;
    z-index: 0;
}

.top-header .site-brand__signature::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 50% 48%, rgba(255, 255, 255, 0.08), transparent 42%),
        linear-gradient(90deg, transparent, rgba(138, 202, 255, 0.1), transparent);
    pointer-events: none;
    z-index: 0;
}

.top-header .site-brand__signature span {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.1rem;
    font-style: italic;
    font-weight: 600;
    letter-spacing: 0.03em;
    line-height: 48px;
    text-transform: none;
    white-space: nowrap;
    text-align: center;
    color: rgba(239, 246, 255, 0.24);
    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.2),
        0 -1px 0 rgba(0, 0, 0, 0.38),
        0 0 14px rgba(130, 196, 255, 0.04);
}

.top-header .site-brand {
    gap: 10px;
    align-items: center;
}

.top-header .site-brand__copy {
    gap: 1px;
}

.top-header .site-brand__copy strong {
    font-size: 0.86rem;
    line-height: 1.05;
}

.top-header .site-brand__copy span {
    font-size: 0.62rem;
    line-height: 1.05;
}

.top-header .site-brand__mark {
    color: transparent !important;
    text-indent: -9999px;
    overflow: visible;
    display: inline-block;
    flex: 0 0 clamp(74px, 6.1vw, 92px);
    width: clamp(74px, 6.1vw, 92px);
    height: 64px;
    border: 0 !important;
    border-radius: 0 !important;
    background: url("../logo3.png") center 52% / contain no-repeat !important;
    box-shadow: none !important;
    filter:
        drop-shadow(0 8px 14px rgba(0, 15, 32, 0.16))
        drop-shadow(0 0 12px rgba(115, 181, 255, 0.12));
}

.top-header .site-brand__signature svg {
    display: none !important;
}

.social-link {
    border-color: rgba(255, 255, 255, 0.18);
    background:
        radial-gradient(circle at 30% 24%, rgba(255, 255, 255, 0.22), transparent 38%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.04));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        0 10px 20px rgba(0, 18, 38, 0.12);
}

.social-link:hover,
.social-link:focus-visible {
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        0 16px 28px rgba(0, 24, 54, 0.2);
}

.site-footer--news .site-footer__inner {
    background:
        linear-gradient(180deg, rgba(var(--accent-rgb), 0.97), rgba(0, 41, 84, 0.95)) !important;
    border-color: rgba(186, 224, 255, 0.14) !important;
}

.site-footer--news .site-footer__newsletter {
    padding: 20px !important;
    border: 1px solid rgba(190, 226, 255, 0.14) !important;
    border-radius: 18px !important;
    background:
        linear-gradient(180deg, rgba(var(--accent-rgb), 0.92), rgba(5, 22, 42, 0.96)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 18px 32px rgba(0, 14, 28, 0.16) !important;
}

.site-footer--news .site-footer__newsletter-address {
    min-height: 50px !important;
    border-color: rgba(208, 231, 255, 0.14) !important;
    background: rgba(6, 18, 34, 0.46) !important;
    border-radius: 14px !important;
}

.site-footer--news .site-footer__button {
    border-radius: 14px !important;
}

.site-footer--news .site-footer__button--ghost {
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(208, 231, 255, 0.16) !important;
}

.site-footer--news .site-footer__socials,
.site-footer--home-lean .site-footer__mini-links,
.site-footer--home-lean .site-footer__home-newsletter-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.site-footer--news .site-footer__social-link,
.site-footer--home-lean .site-footer__pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 44px !important;
    padding: 0 16px 0 10px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(205, 229, 255, 0.14) !important;
    background: rgba(255, 255, 255, 0.05) !important;
    color: #ffffff !important;
}

.site-footer--news .site-footer__social-link::before,
.site-footer--home-lean .site-footer__pill::before {
    content: '' !important;
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background-color: rgba(255, 255, 255, 0.12);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 14px 14px;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.16),
        0 8px 16px rgba(0, 16, 30, 0.14);
}

.site-footer--news .site-footer__social-link[href*="instagram.com"]::before,
.site-footer--home-lean .site-footer__pill[href*="instagram.com"]::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M7 2h10a5 5 0 0 1 5 5v10a5 5 0 0 1-5 5H7a5 5 0 0 1-5-5V7a5 5 0 0 1 5-5Zm0 2.2A2.8 2.8 0 0 0 4.2 7v10A2.8 2.8 0 0 0 7 19.8h10a2.8 2.8 0 0 0 2.8-2.8V7A2.8 2.8 0 0 0 17 4.2H7Zm10.35 1.65a1.1 1.1 0 1 1 0 2.2 1.1 1.1 0 0 1 0-2.2ZM12 7a5 5 0 1 1 0 10 5 5 0 0 1 0-10Zm0 2.2A2.8 2.8 0 1 0 12 14.8 2.8 2.8 0 0 0 12 9.2Z'/></svg>");
}

.site-footer--news .site-footer__social-link[href*="youtube.com"]::before,
.site-footer--home-lean .site-footer__pill[href*="youtube.com"]::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M23 12.01s0-3.07-.39-4.55a3 3 0 0 0-2.11-2.12C19.01 5 12 5 12 5s-7.01 0-8.5.34A3 3 0 0 0 1.39 7.46 19.5 19.5 0 0 0 1 12.01a19.5 19.5 0 0 0 .39 4.55 3 3 0 0 0 2.11 2.12C4.99 19 12 19 12 19s7.01 0 8.5-.34a3 3 0 0 0 2.11-2.12c.39-1.48.39-4.53.39-4.53ZM9.75 15.5v-7l6 3.5-6 3.5Z'/></svg>");
}

.site-footer--news .site-footer__social-link[href*="wa.me"]::before,
.site-footer--home-lean .site-footer__pill[href*="wa.me"]::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M20.52 3.48A11.86 11.86 0 0 0 12.06 0C5.56 0 .28 5.27.28 11.78c0 2.08.54 4.11 1.57 5.9L0 24l6.5-1.7a11.8 11.8 0 0 0 5.56 1.42h.01c6.5 0 11.78-5.28 11.78-11.78 0-3.15-1.23-6.1-3.33-8.46ZM12.07 21.7h-.01a9.83 9.83 0 0 1-5-1.37l-.36-.22-3.86 1 1.03-3.76-.24-.39a9.8 9.8 0 0 1-1.5-5.18C2.13 6.35 6.63 1.85 12.06 1.85c2.61 0 5.06 1.02 6.9 2.86a9.69 9.69 0 0 1 2.86 6.9c0 5.43-4.5 9.93-9.75 10.09Zm5.4-7.39c-.3-.15-1.76-.87-2.03-.97-.27-.1-.47-.15-.66.15-.2.3-.76.97-.94 1.16-.17.2-.35.23-.64.08-.3-.15-1.25-.46-2.38-1.47a8.86 8.86 0 0 1-1.65-2.05c-.17-.3-.02-.45.13-.6.13-.13.3-.35.44-.52.15-.18.2-.3.3-.5.1-.2.05-.38-.03-.53-.08-.15-.66-1.6-.91-2.2-.24-.58-.48-.5-.66-.5h-.56c-.2 0-.5.08-.76.38-.26.3-1 1-.99 2.45 0 1.44 1.03 2.83 1.18 3.03.14.2 2.02 3.08 4.88 4.32.68.3 1.21.47 1.62.6.68.22 1.3.18 1.8.11.55-.08 1.76-.72 2.01-1.41.25-.7.25-1.3.17-1.42-.08-.13-.28-.2-.58-.35Z'/></svg>");
}

.site-footer--news .site-footer__social-link:hover,
.site-footer--news .site-footer__social-link:focus-visible,
.site-footer--home-lean .site-footer__pill:hover,
.site-footer--home-lean .site-footer__pill:focus-visible {
    background: rgba(255, 255, 255, 0.1) !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
}

.site-footer--home-lean .site-footer__home-newsletter {
    display: grid;
    grid-template-columns: minmax(0, 0.86fr) minmax(240px, 1.1fr) auto;
    gap: 14px;
    align-items: center;
    padding: 16px 0 18px;
    border-top: 1px solid rgba(208, 223, 237, 0.12);
    border-bottom: 1px solid rgba(208, 223, 237, 0.12);
}

.site-footer--home-lean .site-footer__home-newsletter-copy {
    display: grid;
    gap: 6px;
}

.site-footer--home-lean .site-footer__home-newsletter-title {
    color: #ffffff;
    font-size: 1rem;
    line-height: 1.22;
    letter-spacing: -0.01em;
}

.site-footer--home-lean .site-footer__home-newsletter-address {
    display: flex;
    align-items: center;
    min-height: 48px;
    padding: 0 16px;
    border-radius: 14px;
    border: 1px solid rgba(208, 223, 237, 0.14);
    background: rgba(var(--accent-rgb), 0.28);
    color: #ffffff;
    text-decoration: none;
    font-size: 0.96rem;
    font-weight: 600;
}

.site-footer--home-lean .site-footer__home-newsletter-actions {
    justify-content: flex-end;
}

.site-footer--home-lean .site-footer__button {
    border-radius: 999px;
}

@media (max-width: 960px) {
    .site-footer--home-lean .site-footer__home-newsletter {
        grid-template-columns: 1fr;
    }

    .site-footer--home-lean .site-footer__home-newsletter-actions {
        justify-content: flex-start;
    }
}

#legado .legacy-video-trigger__curtain,
#legado .legacy-video-trigger__curtain::before,
#legado .legacy-video-trigger__curtain::after,
#legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage::before,
#legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage::after {
    display: none !important;
    content: none !important;
}

.top-header .site-brand__signature {
    display: none !important;
}

/* Header, footer and mobile jukebox refinement */
.top-header .site-brand {
    gap: 14px;
    align-items: center;
}

.top-header .site-brand__copy {
    gap: 2px;
    margin-left: 2px;
}

.top-header .site-brand__copy strong {
    font-size: 0.88rem;
    line-height: 1.04;
}

.top-header .site-brand__copy span {
    font-size: 0.63rem;
    line-height: 1.04;
}

.top-header .site-brand__mark {
    flex: 0 0 clamp(82px, 6.8vw, 104px);
    width: clamp(82px, 6.8vw, 104px);
    height: 64px;
    background: url("../logo3.png") center 52% / 116% auto no-repeat !important;
}

.site-footer--home-lean .site-footer__home-newsletter-actions {
    justify-content: flex-start;
}

.section--jukebox-inline .jukebox-display__button,
.section--jukebox-inline .jukebox-inline-shell__search-toggle,
.section--jukebox-inline .jukebox-inline-shell__link {
    border: 1px solid rgba(214, 228, 241, 0.14) !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.025)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 10px 18px rgba(0, 10, 22, 0.08) !important;
    color: rgba(247, 249, 251, 0.94) !important;
    text-decoration: none !important;
}

@media (max-width: 640px) {
    .section--jukebox-inline .jukebox-console {
        padding: 14px 12px !important;
        border-radius: 22px !important;
    }

    .section--jukebox-inline .jukebox-inline-shell {
        gap: 12px !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__stage {
        gap: 14px !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__record {
        width: min(100%, 224px) !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__meta {
        gap: 8px !important;
    }

    .jukebox-inline-shell__headline {
        gap: 6px !important;
    }

    #jukeboxDisplayTitle {
        font-size: clamp(1.56rem, 8vw, 2rem) !important;
        line-height: 0.98 !important;
    }

    #jukeboxDisplayMessage {
        font-size: 0.88rem !important;
        line-height: 1.36 !important;
        max-height: calc(3 * 1.36em) !important;
        min-height: 0 !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__transport,
    .section--jukebox-inline .jukebox-inline-shell__footer {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
    }

    .section--jukebox-inline .jukebox-display__button,
    .section--jukebox-inline .jukebox-inline-shell__search-toggle,
    .section--jukebox-inline .jukebox-inline-shell__link {
        min-width: 0 !important;
        min-height: 40px !important;
        padding: 0 12px !important;
        border-radius: 13px !important;
        font-size: 0.64rem !important;
        letter-spacing: 0.11em !important;
        justify-content: center !important;
    }

    .jukebox-search {
        gap: 8px !important;
    }

    .jukebox-search__field {
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 8px !important;
    }

    .jukebox-search__field input {
        min-height: 40px !important;
        padding: 0 12px !important;
        border-radius: 12px !important;
        font-size: 0.94rem !important;
    }

    .jukebox-search__submit {
        min-width: 92px !important;
        min-height: 40px !important;
        padding: 0 14px !important;
        border-radius: 12px !important;
        font-size: 0.64rem !important;
    }

    .jukebox-search__controls {
        gap: 6px 10px !important;
    }

    .jukebox-search__meta {
        display: none !important;
    }
}

/* Footer brand color synced with header */
.site-footer--home-lean .site-footer__inner,
.site-footer--news .site-footer__inner {
    background:
        radial-gradient(circle at 18% 0%, rgba(82, 225, 255, 0.05), transparent 24%),
        radial-gradient(circle at 82% 8%, rgba(82, 225, 255, 0.04), transparent 22%),
        linear-gradient(180deg, rgba(6, 18, 31, 0.99) 0%, rgba(4, 13, 24, 1) 100%) !important;
    border-color: rgba(123, 231, 255, 0.1) !important;
    box-shadow: 0 18px 40px rgba(0, 11, 22, 0.22) !important;
}

.site-footer--home-lean .site-footer__home-newsletter-address,
.site-footer--news .site-footer__newsletter-address {
    background: rgba(6, 18, 34, 0.46) !important;
}

/* Final blue article cards for the home news section */
.section--news-home .news-card--home {
    border: 1px solid rgba(123, 231, 255, 0.14) !important;
    background: linear-gradient(180deg, rgba(18, 52, 84, 0.985), rgba(8, 24, 40, 0.995)) !important;
    box-shadow:
        0 18px 38px rgba(0, 12, 24, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

.section--news-home .news-card--home:hover {
    border-color: rgba(123, 231, 255, 0.2) !important;
    box-shadow:
        0 24px 46px rgba(0, 12, 24, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
}

.section--news-home .news-card--home .news-card__media {
    background: linear-gradient(180deg, rgba(10, 33, 55, 0.98), rgba(6, 20, 33, 0.99)) !important;
}

.section--news-home .news-card--home .news-card__body {
    background: linear-gradient(180deg, rgba(16, 47, 77, 0.96), rgba(8, 24, 40, 0.98)) !important;
    box-shadow: none !important;
}

.section--news-home .news-card--home .news-card__meta {
    color: rgba(196, 219, 239, 0.72) !important;
}

.section--news-home .news-card--home .news-card__category {
    color: var(--accent-bright) !important;
    background: rgba(var(--accent-bright-rgb), 0.08) !important;
    border: 1px solid rgba(var(--accent-bright-rgb), 0.14) !important;
}

.section--news-home .news-card--home .news-card__title,
.section--news-home .news-card--home .news-card__title a,
.section--news-home .news-card--home .news-card__excerpt {
    color: #ffffff !important;
    text-shadow: none !important;
}

.section--news-home .news-card--home .news-card__excerpt {
    color: rgba(224, 236, 247, 0.82) !important;
}

.section--news-home .news-card--home .news-card__link {
    color: var(--accent-bright) !important;
    border-bottom-color: rgba(var(--accent-bright-rgb), 0.18) !important;
}

@media (max-width: 720px) {
    .section--news-home {
        padding-inline: clamp(14px, 4.8vw, 22px);
    }

    .news-home-head {
        gap: 10px;
        margin-bottom: 6px;
    }

    .section--news-home .section-lead {
        max-width: 16ch;
        color: rgba(62, 86, 111, 0.86);
    }

    .news-home-track {
        gap: 12px;
    }

    .section--news-home .news-card--home {
        position: relative;
        grid-template-columns: 102px minmax(0, 1fr) !important;
        border: 1px solid rgba(123, 231, 255, 0.14) !important;
        border-radius: 20px !important;
        overflow: hidden;
        background:
            radial-gradient(circle at 100% 0%, rgba(102, 184, 229, 0.16), transparent 34%),
            linear-gradient(135deg, rgba(21, 57, 92, 0.985), rgba(9, 26, 45, 1) 78%) !important;
        box-shadow:
            0 14px 28px rgba(2, 16, 31, 0.18),
            inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
    }

    .section--news-home .news-card--home:hover {
        border-color: rgba(123, 231, 255, 0.2) !important;
        box-shadow:
            0 16px 30px rgba(2, 16, 31, 0.2),
            inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    }

    .section--news-home .news-card--home::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg, transparent 34%, rgba(118, 221, 255, 0.04) 100%);
        pointer-events: none;
    }

    .section--news-home .news-card--home .news-card__media {
        min-height: 118px;
        background: linear-gradient(180deg, rgba(10, 33, 55, 0.98), rgba(6, 20, 33, 0.99)) !important;
        border-radius: 20px 0 0 20px;
    }

    .section--news-home .news-card--home .news-card__body {
        display: grid;
        align-content: center;
        gap: 8px;
        padding: 14px 16px 14px 14px !important;
        background: linear-gradient(180deg, rgba(17, 48, 79, 0.18), rgba(6, 20, 33, 0)) !important;
    }

    .section--news-home .news-card--home .news-card__meta {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 7px 8px;
        color: rgba(196, 219, 239, 0.68) !important;
        font-size: 0.58rem;
        letter-spacing: 0.13em;
    }

    .section--news-home .news-card--home .news-card__meta span {
        width: 100%;
        color: rgba(206, 222, 238, 0.62) !important;
    }

    .section--news-home .news-card--home .news-card__category {
        min-height: 23px;
        padding: 4px 8px;
        background: rgba(var(--accent-bright-rgb), 0.08) !important;
        border: 1px solid rgba(var(--accent-bright-rgb), 0.12) !important;
        color: var(--accent-bright) !important;
    }

    .section--news-home .news-card--home .news-card__title,
    .section--news-home .news-card--home .news-card__title a {
        color: #ffffff !important;
        font-size: 1.08rem;
        line-height: 1.1;
        -webkit-line-clamp: 2;
        text-wrap: initial;
    }

    .section--news-home .news-card--home .news-card__link {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin-top: 2px;
        color: var(--accent-bright) !important;
        font-size: 0.68rem;
        letter-spacing: 0.15em;
    }
}

@media (max-width: 420px) {
    .section--news-home .section-lead {
        max-width: 14ch;
    }

    .section--news-home .news-card--home {
        grid-template-columns: 92px minmax(0, 1fr) !important;
        border-radius: 18px !important;
    }

    .section--news-home .news-card--home .news-card__media {
        min-height: 110px;
        border-radius: 18px 0 0 18px;
    }

    .section--news-home .news-card--home .news-card__body {
        padding: 12px 14px 12px 12px !important;
        gap: 7px;
    }

    .section--news-home .news-card--home .news-card__meta {
        gap: 6px 7px;
        font-size: 0.54rem;
    }

    .section--news-home .news-card--home .news-card__title,
    .section--news-home .news-card--home .news-card__title a {
        font-size: 1rem;
    }
}

/* Mobile footer compression: keep conversion, remove repeated contact noise. */
@media (max-width: 720px) {
    body > .site-footer,
    .site-footer {
        margin: 0 !important;
        padding: 0 12px 18px !important;
        background: #06121f !important;
    }

    .site-footer .site-footer__inner {
        gap: 14px !important;
        padding: 18px 16px 16px !important;
        border-radius: 0 !important;
        background:
            radial-gradient(circle at 18% 0%, rgba(82, 225, 255, 0.055), transparent 30%),
            linear-gradient(180deg, rgba(6, 18, 31, 0.99), rgba(4, 13, 24, 1)) !important;
        box-shadow: none !important;
    }

    .site-footer .site-footer__inner::before,
    .site-footer .site-footer__inner::after,
    .site-footer::before,
    .site-footer::after {
        display: none !important;
        content: none !important;
    }

    .site-footer .site-footer__hero {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        padding: 0 0 12px !important;
        border-bottom: 1px solid rgba(190, 218, 242, 0.12) !important;
        text-align: left !important;
    }

    .site-footer .site-footer__kicker {
        margin: 0 !important;
        color: rgba(193, 214, 233, 0.66) !important;
        font-size: 0.62rem !important;
        letter-spacing: 0.16em !important;
    }

    .site-footer .site-footer__title {
        max-width: 18ch !important;
        margin: 0 !important;
        color: #ffffff !important;
        font-size: clamp(1.26rem, 6.2vw, 1.58rem) !important;
        line-height: 1.04 !important;
        text-align: left !important;
    }

    .site-footer .site-footer__lead,
    .site-footer .site-footer__button--ghost,
    .site-footer .site-footer__column--contact,
    .site-footer .site-footer__support,
    .site-footer .site-footer__bottom,
    .site-footer .site-footer__notes,
    .site-footer .site-footer__social-link[href*="wa.me"] {
        display: none !important;
    }

    .site-footer .site-footer__hero-actions {
        display: block !important;
        width: 100% !important;
    }

    .site-footer .site-footer__grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        padding: 0 !important;
    }

    .site-footer .site-footer__column {
        gap: 8px !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .site-footer .site-footer__column--social {
        padding-top: 2px !important;
    }

    .site-footer .site-footer__panel-title {
        margin: 0 !important;
        color: #ffffff !important;
        font-size: 0.95rem !important;
        line-height: 1.22 !important;
        letter-spacing: -0.01em !important;
    }

    .site-footer .site-footer__newsletter {
        display: grid !important;
        gap: 9px !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .site-footer .site-footer__newsletter-address {
        min-height: 42px !important;
        padding: 0 13px !important;
        border-radius: 14px !important;
        border: 1px solid rgba(190, 218, 242, 0.13) !important;
        background: rgba(255, 255, 255, 0.045) !important;
        color: rgba(244, 248, 252, 0.94) !important;
        font-size: 0.88rem !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .site-footer .site-footer__newsletter-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .site-footer .site-footer__newsletter-actions .site-footer__button--ghost {
        display: none !important;
    }

    .site-footer .site-footer__button,
    .site-footer .site-footer__social-link {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 42px !important;
        padding: 0 14px !important;
        border-radius: 999px !important;
        font-size: 0.66rem !important;
        letter-spacing: 0.15em !important;
        box-shadow: none !important;
    }

    .site-footer .site-footer__button {
        background: #efe6db !important;
        color: #071523 !important;
        border-color: #efe6db !important;
    }

    .site-footer .site-footer__socials {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        margin: 0 !important;
    }

    .site-footer .site-footer__social-link {
        justify-content: center !important;
        gap: 8px !important;
        background: rgba(255, 255, 255, 0.055) !important;
        border-color: rgba(190, 218, 242, 0.13) !important;
        color: #ffffff !important;
    }

    .site-footer .site-footer__social-link::before {
        width: 24px !important;
        height: 24px !important;
        background-size: 12px 12px !important;
    }

    .site-footer .site-footer__copy {
        margin: 0 !important;
        padding: 2px 0 0 !important;
        border: 0 !important;
        color: rgba(207, 220, 232, 0.58) !important;
        font-size: 0.68rem !important;
        line-height: 1.35 !important;
        text-align: center !important;
        text-transform: none !important;
        letter-spacing: 0.02em !important;
    }
}

@media (max-width: 420px) {
    .site-footer .site-footer__inner {
        padding-inline: 14px !important;
    }

    .site-footer .site-footer__title {
        max-width: 17ch !important;
    }
}

/* Brand color distribution across the page */
body {
    background:
        linear-gradient(180deg, rgba(7, 24, 42, 0.02), rgba(7, 24, 42, 0) 220px),
        repeating-linear-gradient(
            180deg,
            rgba(7, 24, 42, 0.008) 0,
            rgba(7, 24, 42, 0.008) 1px,
            transparent 1px,
            transparent 42px
        ),
        var(--paper) !important;
}

#sobre,
#daniel {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(251, 253, 255, 0.98));
    border-top: 1px solid rgba(22, 58, 103, 0.06);
    border-bottom: 1px solid rgba(22, 58, 103, 0.06);
}

.bio-card,
.bio-quote {
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.3),
        0 18px 36px rgba(8, 24, 42, 0.08);
}

.section-kicker:not(.section-kicker--light) {
    color: var(--accent);
    text-shadow: 0 0 10px rgba(82, 225, 255, 0.08);
}

/* Layout integrity pass: keeps premium sections from clipping or drifting. */
.section > .section-kicker,
.section > h2,
.section > .section-lead,
.section > .centered {
    max-width: min(100%, 980px);
    margin-left: auto;
    margin-right: auto;
}

.section-kicker,
.section-kicker--light {
    line-height: 1.25;
}

.section h2,
.section strong,
.section p,
.section a,
.section span {
    text-rendering: geometricPrecision;
}

.section h2 {
    overflow: visible;
    padding-bottom: 0.04em;
}

.section--contacts-compact {
    padding-top: clamp(34px, 4vw, 52px) !important;
    padding-bottom: clamp(32px, 4vw, 48px) !important;
}

.section--contacts-compact .section-kicker {
    margin-top: 0;
}

.contact-compact {
    width: min(100%, 1180px);
    margin: clamp(22px, 3vw, 34px) auto 0 !important;
    grid-template-columns: minmax(300px, 0.92fr) minmax(320px, 1fr) !important;
    gap: clamp(16px, 2vw, 22px) !important;
    align-items: stretch;
}

.contact-compact__primary,
.contact-compact__panel {
    min-width: 0;
    min-height: 0;
    text-align: left;
}

.contact-compact__primary {
    justify-content: start;
    align-content: center;
    padding: clamp(26px, 3.2vw, 42px) !important;
    border-color: rgba(145, 205, 255, 0.16);
    background:
        radial-gradient(circle at 18% 18%, rgba(82, 225, 255, 0.09), transparent 30%),
        linear-gradient(150deg, rgba(12, 39, 69, 0.98), rgba(6, 21, 37, 1));
    box-shadow: 0 22px 42px rgba(7, 24, 42, 0.16);
}

.contact-compact__primary .contact-compact__label {
    color: rgba(226, 241, 255, 0.76);
}

.contact-compact__primary strong {
    color: #ffffff;
    font-size: clamp(1.78rem, 3vw, 2.35rem);
    letter-spacing: -0.035em;
    line-height: 1.02;
}

.contact-compact__primary p {
    max-width: 34ch;
    margin-left: 0;
    margin-right: 0;
    color: rgba(226, 241, 255, 0.82);
    text-align: left;
}

.contact-compact__secondary {
    grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
}

.contact-compact__panel {
    align-content: center;
    padding: clamp(22px, 2.6vw, 34px) !important;
    border-color: rgba(22, 58, 103, 0.12);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(246, 250, 253, 0.94));
}

.contact-compact__panel strong,
.contact-compact__numbers a {
    overflow-wrap: anywhere;
}

.contact-compact__actions {
    justify-content: flex-start;
}

#repertorio {
    border-color: rgba(145, 205, 255, 0.16);
    background:
        radial-gradient(circle at 16% 12%, rgba(82, 225, 255, 0.1), transparent 28%),
        radial-gradient(circle at 84% 86%, rgba(82, 225, 255, 0.07), transparent 30%),
        linear-gradient(150deg, rgba(10, 38, 68, 0.99), rgba(5, 20, 36, 1));
    box-shadow: 0 26px 58px rgba(4, 16, 30, 0.2);
}

#repertorio h2,
#repertorio .section-lead {
    color: #ffffff;
}

#repertorio .section-lead {
    max-width: 70ch;
    color: rgba(226, 241, 255, 0.84);
}

#repertorio .section-kicker {
    color: rgba(243, 235, 223, 0.9);
    text-shadow: 0 12px 24px rgba(0, 8, 18, 0.22);
}

#repertorio .show-tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 10px;
    width: min(100%, 960px);
    margin: clamp(18px, 2vw, 24px) auto 0;
}

#repertorio .show-tags span {
    min-height: 34px;
    padding: 8px 12px;
    border: 1px solid rgba(145, 205, 255, 0.13);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.045);
    color: rgba(226, 241, 255, 0.8);
    font-size: 0.64rem;
    letter-spacing: 0.12em;
    line-height: 1.15;
}

#repertorio .section-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px 22px;
    width: min(100%, 900px);
    margin-top: clamp(22px, 3vw, 30px);
    padding-top: clamp(18px, 2.4vw, 24px);
    border-top: 1px solid rgba(145, 205, 255, 0.12);
}

#repertorio .section-cta .btn {
    min-width: 190px;
    border-color: rgba(243, 235, 223, 0.32);
    background: rgba(255, 255, 255, 0.035);
    color: #ffffff;
}

#repertorio .section-cta span {
    max-width: 50ch;
    color: rgba(226, 241, 255, 0.82);
    text-align: left;
}

#jukeboxDisplayTitle {
    font-size: clamp(1.72rem, 3vw, 2.5rem) !important;
    line-height: 1.08 !important;
    max-height: calc(2 * 1.08em + 0.12em) !important;
    min-height: calc(2 * 1.08em + 0.12em) !important;
    padding-bottom: 0.08em !important;
}

@media (max-width: 980px) {
    .contact-compact {
        grid-template-columns: 1fr !important;
    }

    .contact-compact__secondary {
        grid-template-rows: auto;
    }

    #repertorio .section-cta {
        align-items: stretch;
        flex-direction: column;
    }

    #repertorio .section-cta span {
        text-align: center;
    }
}

@media (max-width: 720px) {
    #repertorio {
        display: none !important;
    }

    .section--contacts-compact {
        padding-top: 28px !important;
    }

    .contact-compact__primary,
    .contact-compact__panel {
        text-align: left;
    }

    .contact-compact__primary strong {
        font-size: clamp(1.56rem, 7vw, 1.92rem);
    }

    .contact-compact__actions {
        grid-template-columns: 1fr 1fr;
    }

    #jukeboxDisplayTitle {
        font-size: clamp(1.28rem, 5.4vw, 1.72rem) !important;
        line-height: 1.12 !important;
        max-height: calc(2 * 1.12em + 0.14em) !important;
        min-height: calc(2 * 1.12em + 0.14em) !important;
    }
}

/* Quiz stabilization */
.quiz-entry {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: clamp(18px, 3vw, 42px);
    margin: clamp(22px, 4vw, 44px) 0;
    padding: clamp(22px, 3.5vw, 38px);
    overflow: hidden;
    border: 1px solid rgba(145, 205, 255, 0.16);
    border-radius: clamp(22px, 3vw, 34px);
    background:
        radial-gradient(circle at 88% 10%, rgba(82, 225, 255, 0.14), transparent 30%),
        linear-gradient(135deg, #071523 0%, #0b2136 52%, #10395d 100%);
    color: #ffffff;
    box-shadow: 0 24px 70px rgba(7, 21, 35, 0.22);
}

.quiz-entry::before {
    content: "";
    position: absolute;
    inset: 1px;
    pointer-events: none;
    border-radius: inherit;
    background:
        linear-gradient(115deg, transparent 0%, rgba(255, 255, 255, 0.08) 44%, transparent 58%),
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 38px);
    opacity: 0.72;
}

.quiz-entry__content,
.quiz-entry__actions {
    position: relative;
    z-index: 1;
}

.quiz-entry__kicker {
    display: inline-flex;
    margin-bottom: 12px;
    color: var(--accent-bright);
}

.quiz-entry h2 {
    max-width: 760px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(2rem, 4.8vw, 4.25rem);
    line-height: 0.96;
    text-align: left;
}

.quiz-entry p {
    max-width: 650px;
    margin: 16px 0 0;
    color: rgba(229, 239, 248, 0.78);
    font-size: clamp(1rem, 1.5vw, 1.2rem);
    line-height: 1.55;
}

.quiz-entry__actions {
    display: grid;
    justify-items: center;
    gap: 12px;
}

.quiz-entry__button {
    min-width: 190px;
    border: 0;
    border-radius: 999px;
    background: var(--cream, #f3ebdf);
    color: #071523;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22);
}

.quiz-entry__button:hover {
    transform: translateY(-2px);
}

.quiz-entry__note {
    color: rgba(229, 239, 248, 0.64);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: center;
}

.hero-actions .btn--quiz {
    min-height: 46px;
    padding: 0 18px;
    border-color: rgba(243, 235, 223, 0.22);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.035));
    color: #ffffff;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.hero-actions .btn--quiz::before {
    content: '?';
    display: inline-grid;
    place-items: center;
    width: 20px;
    height: 20px;
    border: 1px solid rgba(82, 225, 255, 0.3);
    border-radius: 999px;
    color: var(--accent-bright);
    font-size: 0.72rem;
    line-height: 1;
}

.modal-content--quiz {
    border: 1px solid rgba(145, 205, 255, 0.14);
}

.modal--quiz[hidden] {
    display: none !important;
}

.modal--quiz.is-open {
    display: flex !important;
}

.quiz-result-cta-link {
    text-decoration: none;
}

@media (max-width: 720px) {
    .quiz-entry {
        grid-template-columns: 1fr;
        margin: 18px 0 28px;
        padding: 22px;
        text-align: center;
    }

    .quiz-entry h2 {
        font-size: clamp(1.8rem, 9vw, 2.7rem);
        line-height: 1;
        text-align: center;
    }

    .quiz-entry p {
        margin-inline: auto;
        font-size: 0.98rem;
    }

    .quiz-entry__actions {
        justify-items: stretch;
    }

    .quiz-entry__button {
        width: 100%;
        min-height: 52px;
    }

    .hero-actions .btn--quiz {
        min-height: 42px;
        padding: 0 15px;
        font-size: 0.72rem;
    }

    .modal-content--quiz {
        width: min(100%, calc(100vw - 22px));
        max-height: calc(100dvh - 22px);
        border-radius: 18px;
    }

    .quiz-shell {
        min-height: 0;
        max-height: calc(100dvh - 22px);
    }

    .quiz-content {
        overflow-y: auto;
    }
}

/* Full interactive quiz */
.quiz-lead {
    display: grid;
    gap: 16px;
    text-align: left;
}

.quiz-lead p {
    margin: 0;
    color: rgba(235, 244, 252, 0.76);
    line-height: 1.56;
}

.quiz-lead-form {
    display: grid;
    gap: 12px;
}

.quiz-lead-label {
    color: rgba(235, 244, 252, 0.78);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.quiz-lead-input {
    width: 100%;
    min-height: 48px;
    padding: 0 16px;
    border: 1px solid rgba(145, 205, 255, 0.16);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.06);
    color: #ffffff;
    font: inherit;
}

.quiz-lead-input::placeholder {
    color: rgba(235, 244, 252, 0.42);
}

.quiz-lead-input:focus {
    border-color: rgba(82, 225, 255, 0.45);
    outline: none;
    box-shadow: 0 0 0 3px rgba(82, 225, 255, 0.12);
}

.quiz-lead-consent {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    color: rgba(235, 244, 252, 0.68);
    font-size: 0.82rem;
    line-height: 1.45;
}

.quiz-lead-consent input {
    margin-top: 3px;
    accent-color: var(--accent-bright);
}

.quiz-lead-message {
    margin: 0;
    color: #ffd5d5 !important;
    font-size: 0.84rem;
}

.quiz-lead-submit,
.quiz-lead-skip {
    min-height: 46px;
    border-radius: 999px;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    cursor: pointer;
}

.quiz-lead-submit {
    border: 1px solid rgba(243, 235, 223, 0.42);
    background: linear-gradient(180deg, rgba(243, 235, 223, 1), rgba(229, 218, 201, 1));
    color: #071523;
}

.quiz-lead-skip {
    border: 1px solid rgba(145, 205, 255, 0.14);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(235, 244, 252, 0.74);
}

.quiz-result-song-card--premium {
    background:
        radial-gradient(circle at 20% 20%, rgba(82, 225, 255, 0.14), transparent 30%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.035));
}

.quiz-result-song-card--premium .quiz-result-song-cover {
    background:
        radial-gradient(circle at 50% 50%, rgba(7, 21, 35, 1) 0 22%, rgba(82, 225, 255, 0.28) 23% 26%, transparent 27%),
        repeating-radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.1) 0 1px, transparent 1px 7px),
        linear-gradient(145deg, rgba(9, 32, 56, 1), rgba(3, 11, 22, 1));
    color: rgba(243, 235, 223, 0.92);
    font-weight: 900;
    letter-spacing: 0.08em;
}

.quiz-spotify-embed {
    margin: 16px 0 18px;
    overflow: hidden;
    border: 1px solid rgba(145, 205, 255, 0.14);
    border-radius: 16px;
    background: rgba(0, 0, 0, 0.18);
}

.quiz-spotify-embed iframe {
    display: block;
}

.quiz-share-card {
    position: relative;
    display: grid;
    gap: 10px;
    margin: 16px 0 18px;
    padding: 20px;
    overflow: hidden;
    border: 1px solid rgba(145, 205, 255, 0.18);
    border-radius: 20px;
    background:
        radial-gradient(circle at 84% 16%, rgba(82, 225, 255, 0.16), transparent 28%),
        linear-gradient(135deg, rgba(7, 21, 35, 0.98), rgba(12, 42, 68, 0.96));
    color: #ffffff;
    text-align: left;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.quiz-share-card::before {
    content: "BC";
    position: absolute;
    right: 18px;
    bottom: -8px;
    color: rgba(255, 255, 255, 0.045);
    font-size: 5.8rem;
    font-weight: 900;
    letter-spacing: -0.08em;
    line-height: 1;
}

.quiz-share-card__kicker,
.quiz-share-card__signature {
    position: relative;
    z-index: 1;
    color: rgba(145, 205, 255, 0.78);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.quiz-share-card__song {
    position: relative;
    z-index: 1;
    color: #ffffff;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(2rem, 7vw, 3.3rem);
    font-weight: 700;
    line-height: 0.92;
    text-wrap: balance;
}

.quiz-share-card__phrase {
    position: relative;
    z-index: 1;
    margin: 0;
    color: rgba(235, 244, 252, 0.82);
    font-size: 0.98rem;
    line-height: 1.45;
}

.quiz-share-card__signature {
    color: rgba(243, 235, 223, 0.68);
}

.quiz-share-card__whatsapp {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 44px;
    margin-top: 4px;
    padding: 0 18px;
    border-radius: 999px;
    background: linear-gradient(135deg, #25d366, #128c7e);
    color: #ffffff;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-decoration: none;
    text-transform: uppercase;
    box-shadow: 0 12px 28px rgba(18, 140, 126, 0.28);
}

.quiz-share-card__whatsapp:hover,
.quiz-share-card__whatsapp:focus-visible {
    transform: translateY(-1px);
    outline: none;
    box-shadow: 0 16px 34px rgba(18, 140, 126, 0.36);
}

.quiz-share-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 16px;
}

.quiz-share-grid .btn,
.quiz-result-actions .btn {
    min-height: 44px;
    text-decoration: none;
}

.quiz-result-actions {
    display: grid;
    grid-template-columns: 1fr;
}

.quiz-lead-ok {
    margin: 14px 0 0;
    color: rgba(235, 244, 252, 0.58);
    font-size: 0.82rem;
}

@media (max-width: 520px) {
    .quiz-share-grid {
        grid-template-columns: 1fr;
    }

    .quiz-share-card {
        padding: 18px;
    }

    .quiz-share-card__song {
        font-size: clamp(1.86rem, 12vw, 2.62rem);
    }

    .quiz-share-card__whatsapp {
        width: 100%;
    }

    .quiz-result-song-card--premium {
        align-items: flex-start;
        flex-direction: row;
        text-align: left;
    }

    .quiz-result-song-card--premium .quiz-result-song-cover {
        width: 58px;
        height: 58px;
    }
}

/* Jukebox voice selector */
.jukebox-voice-switch {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: fit-content;
    max-width: 100%;
    margin: 2px 0 0;
    padding: 5px;
    border: 1px solid rgba(145, 205, 255, 0.16);
    border-radius: 999px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.025)),
        rgba(5, 18, 31, 0.46);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.jukebox-voice-switch__button {
    min-height: 34px;
    padding: 0 16px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: rgba(226, 236, 246, 0.68);
    cursor: pointer;
    font: inherit;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.jukebox-voice-switch__button:hover,
.jukebox-voice-switch__button:focus-visible {
    color: #ffffff;
    outline: none;
}

.jukebox-voice-switch__button.is-active {
    background: linear-gradient(135deg, rgba(243, 235, 223, 0.96), rgba(212, 232, 246, 0.92));
    color: #071523;
    box-shadow:
        0 10px 24px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

#jukebox[data-voice="roberto"] .jukebox-voice-switch__button.is-active {
    background: linear-gradient(135deg, rgba(82, 225, 255, 0.9), rgba(30, 87, 138, 0.94));
    color: #ffffff;
}

@media (max-width: 720px) {
    .jukebox-voice-switch {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
        margin-top: 0;
    }

    .jukebox-voice-switch__button {
        min-height: 32px;
        padding: 0 9px;
        font-size: 0.62rem;
        letter-spacing: 0.07em;
    }
}

/* Guided booking */
.booking-guide {
    --booking-progress: 0%;
    display: grid;
    gap: 20px;
    margin: clamp(22px, 4vw, 40px) auto clamp(34px, 5vw, 64px);
    padding: clamp(22px, 3vw, 34px);
    width: min(100%, 980px);
    overflow: hidden;
    border: 1px solid rgba(145, 205, 255, 0.16);
    border-radius: 30px;
    background:
        radial-gradient(circle at 88% 12%, rgba(82, 225, 255, 0.14), transparent 30%),
        linear-gradient(135deg, #071523 0%, #0b2136 58%, #10395d 100%);
    color: #f7fbff;
    box-shadow: 0 28px 70px rgba(7, 21, 35, 0.2);
}

.booking-guide__intro {
    display: grid;
    gap: 8px;
    max-width: 720px;
}

.booking-guide__eyebrow,
.booking-guide__legend {
    color: var(--accent-bright);
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.booking-guide__intro strong {
    color: #ffffff;
    font-size: clamp(1.5rem, 3vw, 2.5rem);
    line-height: 1;
}

.booking-guide__intro p {
    margin: 0;
    color: rgba(226, 236, 246, 0.76);
    font-size: 1rem;
    line-height: 1.55;
}

.booking-guide__progress {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.booking-guide__progress::before {
    content: "";
    position: absolute;
    left: 8%;
    right: 8%;
    top: 18px;
    height: 2px;
    border-radius: 999px;
    background:
        linear-gradient(90deg, rgba(82, 225, 255, 0.9) 0 var(--booking-progress), rgba(255, 255, 255, 0.12) var(--booking-progress) 100%);
}

.booking-guide__progress li {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 8px;
    color: rgba(226, 236, 246, 0.62);
    font-size: 0.76rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.booking-guide__progress li::before {
    content: "";
    width: 36px;
    height: 36px;
    border: 1px solid rgba(145, 205, 255, 0.2);
    border-radius: 999px;
    background: #0a1b2e;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.booking-guide__progress li.is-active,
.booking-guide__progress li.is-complete {
    color: #ffffff;
}

.booking-guide__progress li.is-active::before,
.booking-guide__progress li.is-complete::before {
    border-color: rgba(82, 225, 255, 0.65);
    background: linear-gradient(135deg, #1e578a, #52e1ff);
}

.booking-guide__panel {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.booking-guide__panel[hidden] {
    display: none !important;
}

.booking-guide__field {
    display: grid;
    gap: 8px;
}

.booking-guide__field--wide {
    grid-column: 1 / -1;
}

.booking-guide__field span {
    color: rgba(226, 236, 246, 0.78);
    font-size: 0.76rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.booking-guide__field input,
.booking-guide__field textarea {
    width: 100%;
    border: 1px solid rgba(145, 205, 255, 0.18);
    border-radius: 18px;
    background: rgba(3, 13, 24, 0.55);
    color: #ffffff;
    font: inherit;
    font-size: 1rem;
    outline: none;
    padding: 15px 16px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.booking-guide__field input[type="date"] {
    color-scheme: dark;
    padding-right: 10px;
}

.booking-guide__field input[type="date"]::-webkit-calendar-picker-indicator {
    width: 22px;
    height: 22px;
    margin: -6px -4px -6px 8px;
    padding: 9px;
    border-radius: 12px;
    background-color: rgba(82, 225, 255, 0.16);
    box-shadow: inset 0 0 0 1px rgba(82, 225, 255, 0.28), 0 0 18px rgba(82, 225, 255, 0.12);
    cursor: pointer;
    filter: invert(79%) sepia(63%) saturate(1367%) hue-rotate(155deg) brightness(105%) contrast(103%);
    opacity: 1;
}

.booking-guide__field input[type="date"]:hover::-webkit-calendar-picker-indicator,
.booking-guide__field input[type="date"]:focus::-webkit-calendar-picker-indicator {
    background-color: rgba(82, 225, 255, 0.26);
    box-shadow: inset 0 0 0 1px rgba(82, 225, 255, 0.5), 0 0 22px rgba(82, 225, 255, 0.2);
}

.booking-guide__field textarea {
    resize: vertical;
}

.booking-guide__field input:focus,
.booking-guide__field textarea:focus {
    border-color: rgba(82, 225, 255, 0.62);
    background: rgba(3, 13, 24, 0.74);
    box-shadow: 0 0 0 4px rgba(82, 225, 255, 0.12);
}

.booking-guide__options {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    grid-column: 1 / -1;
}

.booking-guide__options label {
    position: relative;
    cursor: pointer;
}

.booking-guide__options input {
    position: absolute;
    inset: 0;
    opacity: 0;
}

.booking-guide__options span {
    display: grid;
    min-height: 66px;
    place-items: center;
    padding: 12px;
    border: 1px solid rgba(145, 205, 255, 0.16);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.045);
    color: rgba(226, 236, 246, 0.78);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-align: center;
    text-transform: uppercase;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.booking-guide__options input:focus-visible + span,
.booking-guide__options label:hover span {
    border-color: rgba(82, 225, 255, 0.42);
    color: #ffffff;
}

.booking-guide__options input:checked + span {
    border-color: transparent;
    background: linear-gradient(135deg, rgba(243, 235, 223, 0.96), rgba(212, 232, 246, 0.92));
    color: #071523;
    transform: translateY(-1px);
}

.booking-guide__status {
    min-height: 1.3em;
    margin: 0;
    color: rgba(226, 236, 246, 0.68);
    font-size: 0.92rem;
}

.booking-guide__status[data-state="error"] {
    color: #ffd0d0;
}

.booking-guide__status[data-state="success"] {
    color: #b9f5d0;
}

.booking-guide__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.booking-guide__button {
    min-height: 48px;
    padding: 0 22px;
    border: 1px solid rgba(145, 205, 255, 0.18);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.07);
    color: #ffffff;
    cursor: pointer;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.booking-guide__button--accent {
    border-color: transparent;
    background: linear-gradient(135deg, rgba(243, 235, 223, 0.98), rgba(229, 218, 201, 0.98));
    color: #071523;
}

.booking-guide__button--ghost {
    color: rgba(226, 236, 246, 0.76);
}

.booking-guide__button:hover,
.booking-guide__button:focus-visible {
    transform: translateY(-1px);
    outline: none;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
}

@media (max-width: 760px) {
    .booking-guide {
        border-radius: 24px;
        padding: 20px;
    }

    .booking-guide__panel,
    .booking-guide__options {
        grid-template-columns: 1fr;
    }

    .booking-guide__progress li {
        font-size: 0.66rem;
        letter-spacing: 0.08em;
    }

    .booking-guide__actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .booking-guide__button {
        width: 100%;
    }
}

/* Compact mobile quiz entry */
@media (max-width: 720px) {
    .quiz-entry {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        margin: 14px 0 22px !important;
        padding: 18px 18px 16px !important;
        border-radius: 24px !important;
        background:
            radial-gradient(circle at 96% 0%, rgba(82, 225, 255, 0.14), transparent 34%),
            linear-gradient(145deg, #071523 0%, #0b2136 62%, #0d304f 100%) !important;
        box-shadow: 0 16px 36px rgba(7, 21, 35, 0.16) !important;
        text-align: left !important;
    }

    .quiz-entry::before {
        background:
            linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.05) 46%, transparent 62%),
            repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.028) 0 1px, transparent 1px 52px) !important;
        opacity: 0.55 !important;
    }

    .quiz-entry__kicker {
        margin: 0 0 8px !important;
        font-size: 0.68rem !important;
        letter-spacing: 0.18em !important;
    }

    .quiz-entry h2 {
        max-width: 12ch !important;
        font-size: clamp(1.88rem, 8.6vw, 2.42rem) !important;
        line-height: 0.94 !important;
        text-align: left !important;
        text-wrap: balance;
    }

    .quiz-entry p {
        max-width: 30ch !important;
        margin: 10px 0 0 !important;
        color: rgba(229, 239, 248, 0.72) !important;
        font-size: 0.92rem !important;
        line-height: 1.42 !important;
        text-align: left !important;
    }

    .quiz-entry__actions {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
        width: 100% !important;
    }

    .quiz-entry__button {
        width: auto !important;
        min-width: 0 !important;
        min-height: 42px !important;
        padding: 0 18px !important;
        border: 1px solid rgba(243, 235, 223, 0.42) !important;
        background: rgba(243, 235, 223, 0.96) !important;
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.16) !important;
        font-size: 0.74rem !important;
        letter-spacing: 0.12em !important;
        white-space: nowrap !important;
    }

    .quiz-entry__note {
        max-width: 12ch !important;
        color: rgba(229, 239, 248, 0.5) !important;
        font-size: 0.62rem !important;
        line-height: 1.25 !important;
        letter-spacing: 0.08em !important;
        text-align: right !important;
    }
}

@media (max-width: 420px) {
    .quiz-entry h2 {
        max-width: 11ch !important;
        font-size: clamp(1.72rem, 9vw, 2.12rem) !important;
    }

    .quiz-entry p {
        font-size: 0.88rem !important;
    }

    .quiz-entry__actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    .quiz-entry__button {
        width: 100% !important;
    }

    .quiz-entry__note {
        max-width: none !important;
        text-align: center !important;
    }
}

/* Regression guard: footer and inline jukebox must stay lean after static rebuilds. */
.site-footer--home-lean {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #06121f !important;
}

.site-footer--home-lean .site-footer__inner {
    width: min(100%, 1440px) !important;
    margin: 0 auto !important;
    padding: clamp(24px, 3vw, 38px) clamp(22px, 4vw, 54px) clamp(18px, 2.4vw, 26px) !important;
    gap: 16px !important;
    border-radius: 0 !important;
    background:
        radial-gradient(circle at 18% 0%, rgba(82, 225, 255, 0.055), transparent 28%),
        linear-gradient(180deg, rgba(6, 18, 31, 0.99), rgba(4, 13, 24, 1)) !important;
}

.site-footer--home-lean .site-footer__hero {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 18px 28px !important;
    align-items: end !important;
    padding: 0 0 14px !important;
    border-bottom: 1px solid rgba(190, 218, 242, 0.12) !important;
}

.site-footer--home-lean .site-footer__title {
    max-width: 18ch !important;
    font-size: clamp(1.54rem, 2.4vw, 2.28rem) !important;
    line-height: 1.02 !important;
}

.site-footer--home-lean .site-footer__lead {
    max-width: 46ch !important;
    margin: 8px 0 0 !important;
    color: rgba(224, 236, 247, 0.72) !important;
}

.site-footer--home-lean .site-footer__home-newsletter {
    display: grid !important;
    grid-template-columns: minmax(0, 0.82fr) minmax(260px, 1fr) auto !important;
    gap: 12px !important;
    align-items: center !important;
    padding: 2px 0 16px !important;
    border-top: 0 !important;
    border-bottom: 1px solid rgba(190, 218, 242, 0.12) !important;
}

.site-footer--home-lean .site-footer__home-newsletter-address {
    min-height: 46px !important;
    border-radius: 999px !important;
}

.site-footer--home-lean .site-footer__lean-row,
.site-footer--home-lean .site-footer__bottom {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px 20px !important;
}

.site-footer--home-lean .site-footer__mini-links,
.site-footer--home-lean .site-footer__nav {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.site-footer--home-lean .site-footer__pill,
.site-footer--home-lean .site-footer__nav-link {
    min-height: 38px !important;
}

.site-footer--home-lean .site-footer__copy {
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}

.section--jukebox-inline .jukebox-console {
    padding: clamp(16px, 2.2vw, 24px) !important;
}

.section--jukebox-inline .jukebox-inline-shell__stage {
    grid-template-columns: minmax(238px, 300px) minmax(0, 1fr) !important;
    gap: clamp(20px, 3vw, 34px) !important;
}

.section--jukebox-inline .jukebox-inline-shell__record {
    width: min(100%, 300px) !important;
}

.section--jukebox-inline .jukebox-inline-shell__headline {
    max-width: 34rem !important;
}

#jukeboxDisplayTitle {
    font-size: clamp(1.58rem, 3vw, 2.36rem) !important;
    line-height: 1.03 !important;
    max-height: calc(2 * 1.03em + 0.1em) !important;
    min-height: calc(2 * 1.03em + 0.1em) !important;
}

#jukeboxDisplayMessage {
    font-size: 0.96rem !important;
    line-height: 1.42 !important;
    max-height: calc(3 * 1.42em) !important;
    min-height: 0 !important;
}

.section--jukebox-inline .jukebox-inline-shell__transport,
.section--jukebox-inline .jukebox-inline-shell__footer {
    gap: 9px !important;
}

.section--jukebox-inline .jukebox-display__button,
.section--jukebox-inline .jukebox-inline-shell__search-toggle,
.section--jukebox-inline .jukebox-inline-shell__link {
    min-width: 138px !important;
    min-height: 38px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    font-size: 0.64rem !important;
}

@media (max-width: 720px) {
    .site-footer--home-lean {
        padding: 0 12px 18px !important;
    }

    .site-footer--home-lean .site-footer__inner {
        padding: 18px 16px 16px !important;
        gap: 12px !important;
    }

    .site-footer--home-lean .site-footer__hero,
    .site-footer--home-lean .site-footer__home-newsletter,
    .site-footer--home-lean .site-footer__lean-row {
        grid-template-columns: 1fr !important;
        display: grid !important;
        gap: 10px !important;
    }

    .site-footer--home-lean .site-footer__title {
        max-width: 17ch !important;
        font-size: clamp(1.28rem, 6vw, 1.58rem) !important;
    }

    .site-footer--home-lean .site-footer__lead,
    .site-footer--home-lean .site-footer__bottom {
        display: none !important;
    }

    .site-footer--home-lean .site-footer__home-newsletter-title {
        font-size: 0.95rem !important;
    }

    .site-footer--home-lean .site-footer__home-newsletter-address {
        min-height: 42px !important;
        font-size: 0.84rem !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .site-footer--home-lean .site-footer__mini-links {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .site-footer--home-lean .site-footer__pill {
        min-width: 0 !important;
        min-height: 38px !important;
        padding: 0 8px !important;
        justify-content: center !important;
        font-size: 0.58rem !important;
    }

    .section--jukebox-inline .jukebox-console {
        padding: 14px 12px !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__stage {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__record {
        width: min(100%, 224px) !important;
        margin: 0 auto !important;
    }

    #jukeboxDisplayTitle {
        font-size: clamp(1.2rem, 5.4vw, 1.58rem) !important;
        line-height: 1.08 !important;
        max-height: calc(2 * 1.08em + 0.08em) !important;
        min-height: 0 !important;
    }

    #jukeboxDisplayMessage {
        font-size: 0.86rem !important;
        line-height: 1.36 !important;
        -webkit-line-clamp: 3 !important;
        line-clamp: 3 !important;
        max-height: calc(3 * 1.36em) !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__transport,
    .section--jukebox-inline .jukebox-inline-shell__footer {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
    }

    .section--jukebox-inline .jukebox-display__button,
    .section--jukebox-inline .jukebox-inline-shell__search-toggle,
    .section--jukebox-inline .jukebox-inline-shell__link {
        min-width: 0 !important;
        width: 100% !important;
        min-height: 36px !important;
    }
}

@media (max-width: 420px) {
    .site-footer--home-lean .site-footer__mini-links {
        grid-template-columns: 1fr !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__transport,
    .section--jukebox-inline .jukebox-inline-shell__footer {
        grid-template-columns: 1fr !important;
    }
}

/* Regression guard: gallery carousel controls must remain scrollable and visible. */
#ensaios .ensaios-track {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-template-columns: none !important;
    grid-auto-columns: clamp(230px, 28vw, 356px) !important;
    overflow-x: auto !important;
    overscroll-behavior-x: contain !important;
    scroll-snap-type: x mandatory !important;
    touch-action: pan-x !important;
    -webkit-overflow-scrolling: touch !important;
}

#ensaios .gallery-controls {
    display: flex !important;
    justify-content: center !important;
    gap: 10px !important;
    margin-top: 12px !important;
}

#ensaios .gallery-controls .video-nav {
    display: inline-grid !important;
    place-items: center !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 999px !important;
    border-color: rgba(183, 225, 255, 0.22) !important;
    background:
        radial-gradient(circle at 32% 20%, rgba(255, 255, 255, 0.18), transparent 36%),
        linear-gradient(180deg, rgba(17, 52, 84, 0.96), rgba(5, 19, 34, 0.98)) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 24px rgba(0, 12, 24, 0.18) !important;
}

#ensaios .gallery-controls .video-nav:disabled,
#ensaios .gallery-controls .video-nav.is-disabled {
    opacity: 0.38 !important;
    cursor: default !important;
}

@media (max-width: 720px) {
    #ensaios .ensaios-track {
        grid-auto-columns: min(78vw, 286px) !important;
        padding: 2px 6px 4px !important;
        scroll-padding-inline: 8px !important;
    }

    #ensaios .gallery-controls {
        margin-top: 10px !important;
    }

    #ensaios .swipe-hint {
        display: block !important;
        margin-top: 8px !important;
    }
}

/* Final polish: footer, gallery controls and inline jukebox restored after rebuild regressions. */
.site-footer--home-lean {
    padding: 0 !important;
    background: #06121f !important;
    color: rgba(238, 247, 255, 0.92) !important;
}

.site-footer--home-lean,
.site-footer--home-lean * {
    box-sizing: border-box !important;
}

.site-footer--home-lean a {
    text-decoration: none !important;
}

.site-footer--home-lean .site-footer__inner {
    width: min(100%, 1480px) !important;
    margin: 0 auto !important;
    padding: clamp(26px, 3vw, 44px) clamp(22px, 4.8vw, 78px) 24px !important;
    display: grid !important;
    gap: 18px !important;
    border-radius: 0 !important;
    background:
        radial-gradient(circle at 14% 0%, rgba(91, 213, 255, 0.09), transparent 30%),
        radial-gradient(circle at 84% 12%, rgba(255, 255, 255, 0.045), transparent 26%),
        linear-gradient(180deg, #06121f 0%, #050f1b 100%) !important;
}

.site-footer--home-lean .site-footer__panel {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 380px) !important;
    gap: clamp(18px, 4vw, 56px) !important;
    align-items: center !important;
    padding-bottom: 18px !important;
    border-bottom: 1px solid rgba(195, 222, 245, 0.13) !important;
}

.site-footer--home-lean .site-footer__brandline {
    display: flex !important;
    align-items: center !important;
    gap: clamp(18px, 3vw, 34px) !important;
    min-width: 0 !important;
}

.site-footer--home-lean .site-footer__brandmark {
    flex: 0 0 auto !important;
    display: block !important;
    width: clamp(168px, 14vw, 260px) !important;
    height: clamp(92px, 8vw, 142px) !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.site-footer--home-lean .site-footer__brandmark img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: contain !important;
    object-position: center !important;
    filter: drop-shadow(0 18px 30px rgba(0, 0, 0, 0.28)) !important;
}

.site-footer--home-lean .site-footer__headline {
    display: grid !important;
    gap: 7px !important;
    min-width: 0 !important;
}

.site-footer--home-lean .site-footer__kicker,
.site-footer--home-lean .site-footer__lean-label {
    margin: 0 !important;
    color: rgba(186, 220, 248, 0.86) !important;
    font-size: 0.68rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.24em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

.site-footer--home-lean .site-footer__title {
    max-width: 22ch !important;
    margin: 0 !important;
    color: #ffffff !important;
    font-size: clamp(1.38rem, 2.7vw, 2.34rem) !important;
    line-height: 0.98 !important;
    letter-spacing: -0.025em !important;
}

.site-footer--home-lean .site-footer__lead {
    max-width: 48ch !important;
    margin: 0 !important;
    color: rgba(224, 236, 248, 0.72) !important;
    font-size: 0.95rem !important;
    line-height: 1.5 !important;
}

.site-footer--home-lean .site-footer__booking-card {
    display: grid !important;
    gap: 12px !important;
    justify-items: start !important;
    padding: 18px !important;
    border: 1px solid rgba(205, 229, 255, 0.13) !important;
    border-radius: 26px !important;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.025)),
        rgba(255, 255, 255, 0.025) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}

.site-footer--home-lean .site-footer__booking-card span {
    color: rgba(186, 220, 248, 0.82) !important;
    font-size: 0.66rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase !important;
}

.site-footer--home-lean .site-footer__booking-card strong {
    max-width: 26ch !important;
    color: #ffffff !important;
    font-size: clamp(1rem, 1.35vw, 1.18rem) !important;
    line-height: 1.24 !important;
}

.site-footer--home-lean .site-footer__utility {
    display: grid !important;
    grid-template-columns: minmax(0, 1.15fr) minmax(250px, 0.85fr) !important;
    gap: 18px 34px !important;
    align-items: stretch !important;
    padding-bottom: 18px !important;
    border-bottom: 1px solid rgba(195, 222, 245, 0.12) !important;
}

.site-footer--home-lean .site-footer__home-newsletter {
    display: grid !important;
    grid-template-columns: minmax(170px, 0.62fr) minmax(260px, 1fr) auto !important;
    gap: 12px !important;
    align-items: center !important;
    padding: 0 !important;
    border: 0 !important;
}

.site-footer--home-lean .site-footer__home-newsletter-copy {
    display: grid !important;
    gap: 6px !important;
    min-width: 0 !important;
}

.site-footer--home-lean .site-footer__home-newsletter-title {
    color: #ffffff !important;
    font-size: 1rem !important;
    line-height: 1.25 !important;
}

.site-footer--home-lean .site-footer__home-newsletter-address {
    min-width: 0 !important;
    min-height: 46px !important;
    padding: 0 18px !important;
    display: flex !important;
    align-items: center !important;
    border: 1px solid rgba(199, 226, 250, 0.13) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.035) !important;
    color: #ffffff !important;
    font-size: 0.96rem !important;
    font-weight: 700 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.site-footer--home-lean .site-footer__button {
    min-height: 46px !important;
    padding: 0 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 999px !important;
    background: #f3eadf !important;
    color: #06121f !important;
    font-size: 0.66rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.18em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    box-shadow: 0 14px 24px rgba(0, 0, 0, 0.12) !important;
}

.site-footer--home-lean .site-footer__button:hover,
.site-footer--home-lean .site-footer__button:focus-visible {
    transform: translateY(-1px) !important;
    background: #ffffff !important;
    outline: none !important;
}

.site-footer--home-lean .site-footer__lean-row {
    display: grid !important;
    gap: 12px !important;
    align-content: start !important;
    justify-content: end !important;
}

.site-footer--home-lean .site-footer__mini-links {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    gap: 10px !important;
}

.site-footer--home-lean .site-footer__pill {
    min-height: 44px !important;
    padding: 0 15px 0 9px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    border: 1px solid rgba(205, 229, 255, 0.14) !important;
    border-radius: 999px !important;
    background:
        radial-gradient(circle at 24% 18%, rgba(255, 255, 255, 0.12), transparent 34%),
        rgba(255, 255, 255, 0.045) !important;
    color: #ffffff !important;
    font-size: 0.68rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
}

.site-footer--home-lean .site-footer__pill::before {
    width: 28px !important;
    height: 28px !important;
    background-color: rgba(255, 255, 255, 0.13) !important;
}

.site-footer--home-lean .site-footer__pill[href="/noticias/"]::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M5 3.5h14a1.5 1.5 0 0 1 1.5 1.5v14a1.5 1.5 0 0 1-1.5 1.5H5A1.5 1.5 0 0 1 3.5 19V5A1.5 1.5 0 0 1 5 3.5Zm1.5 4v2h11v-2h-11Zm0 4v1.7h11v-1.7h-11Zm0 3.7V17h7.5v-1.8H6.5Z'/></svg>") !important;
}

.site-footer--home-lean .site-footer__bottom {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding: 0 !important;
    border: 0 !important;
}

.site-footer--home-lean .site-footer__nav {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px 18px !important;
}

.site-footer--home-lean .site-footer__nav-link {
    min-height: auto !important;
    color: rgba(233, 244, 255, 0.84) !important;
    font-size: 0.88rem !important;
    font-weight: 800 !important;
}

.site-footer--home-lean .site-footer__copy {
    margin: 0 !important;
    padding: 0 !important;
    color: rgba(191, 217, 242, 0.72) !important;
    font-size: 0.8rem !important;
    font-weight: 700 !important;
    text-align: right !important;
}

#ensaios .gallery-showcase--ensaios {
    position: relative !important;
}

#ensaios .gallery-controls {
    position: absolute !important;
    inset: 0 !important;
    z-index: 6 !important;
    display: block !important;
    margin: 0 !important;
    pointer-events: none !important;
}

#ensaios .gallery-controls .gallery-frame-button {
    pointer-events: auto !important;
}

#ensaios .gallery-controls .video-nav {
    display: none !important;
}

#ensaios .gallery-frame-button {
    display: inline-flex !important;
    border-color: rgba(198, 229, 255, 0.16) !important;
    background:
        radial-gradient(circle at 25% 18%, rgba(255, 255, 255, 0.16), transparent 34%),
        rgba(6, 20, 35, 0.82) !important;
    box-shadow:
        0 18px 36px rgba(0, 9, 20, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

.section--jukebox-inline .jukebox-inline-shell__actions {
    max-width: 460px !important;
}

.section--jukebox-inline .jukebox-inline-shell__transport,
.section--jukebox-inline .jukebox-inline-shell__footer {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: min(100%, 460px) !important;
}

.section--jukebox-inline .jukebox-display__button,
.section--jukebox-inline .jukebox-inline-shell__search-toggle,
.section--jukebox-inline .jukebox-inline-shell__link {
    min-width: 0 !important;
    min-height: 42px !important;
    width: 100% !important;
    padding: 0 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 16px !important;
    border: 1px solid rgba(199, 226, 250, 0.15) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.025)) !important;
    color: rgba(247, 250, 255, 0.92) !important;
    font-size: 0.62rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.15em !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.07) !important;
}

.section--jukebox-inline .jukebox-inline-shell__link {
    background: rgba(243, 234, 223, 0.96) !important;
    border-color: rgba(243, 234, 223, 0.6) !important;
    color: #06121f !important;
}

#jukeboxDisplayTitle {
    color: #ffffff !important;
    font-size: clamp(1.52rem, 3vw, 2.34rem) !important;
    line-height: 1.02 !important;
    max-height: calc(2 * 1.02em) !important;
    min-height: 0 !important;
}

@media (max-width: 900px) {
    .site-footer--home-lean .site-footer__inner {
        padding: 24px 16px 18px !important;
        gap: 14px !important;
    }

    .site-footer--home-lean .site-footer__panel,
    .site-footer--home-lean .site-footer__utility {
        grid-template-columns: 1fr !important;
    }

    .site-footer--home-lean .site-footer__brandline {
        gap: 14px !important;
    }

    .site-footer--home-lean .site-footer__brandmark {
        width: 96px !important;
        height: 58px !important;
    }

    .site-footer--home-lean .site-footer__title {
        font-size: clamp(1.22rem, 5.2vw, 1.54rem) !important;
        max-width: 20ch !important;
    }

    .site-footer--home-lean .site-footer__lead {
        display: none !important;
    }

    .site-footer--home-lean .site-footer__booking-card {
        grid-template-columns: 1fr auto !important;
        align-items: center !important;
        padding: 14px !important;
        border-radius: 20px !important;
    }

    .site-footer--home-lean .site-footer__booking-card span {
        grid-column: 1 / -1 !important;
    }

    .site-footer--home-lean .site-footer__booking-card strong {
        font-size: 0.94rem !important;
    }

    .site-footer--home-lean .site-footer__home-newsletter {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .site-footer--home-lean .site-footer__lean-row {
        justify-content: stretch !important;
    }

    .site-footer--home-lean .site-footer__mini-links {
        justify-content: stretch !important;
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .site-footer--home-lean .site-footer__pill {
        min-height: 40px !important;
        padding: 0 8px !important;
        gap: 7px !important;
        font-size: 0.56rem !important;
    }

    .site-footer--home-lean .site-footer__pill::before {
        width: 24px !important;
        height: 24px !important;
        background-size: 13px 13px !important;
    }

    .site-footer--home-lean .site-footer__bottom {
        display: grid !important;
        justify-items: center !important;
        text-align: center !important;
        gap: 12px !important;
    }

    .site-footer--home-lean .site-footer__copy {
        text-align: center !important;
    }
}

@media (max-width: 560px) {
    .site-footer--home-lean .site-footer__inner {
        padding: 20px 14px 16px !important;
    }

    .site-footer--home-lean .site-footer__brandline {
        align-items: center !important;
    }

    .site-footer--home-lean .site-footer__brandmark {
        width: 82px !important;
        height: 50px !important;
    }

    .site-footer--home-lean .site-footer__kicker,
    .site-footer--home-lean .site-footer__lean-label {
        font-size: 0.58rem !important;
        letter-spacing: 0.18em !important;
    }

    .site-footer--home-lean .site-footer__booking-card {
        grid-template-columns: 1fr !important;
    }

    .site-footer--home-lean .site-footer__button,
    .site-footer--home-lean .site-footer__home-newsletter-address {
        min-height: 42px !important;
    }

    .site-footer--home-lean .site-footer__mini-links {
        grid-template-columns: 1fr 1fr !important;
    }

    .site-footer--home-lean .site-footer__pill[href="/noticias/"] {
        grid-column: 1 / -1 !important;
    }

    #ensaios .gallery-controls {
        inset: auto 16px 18px 16px !important;
        height: 42px !important;
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
    }

    #ensaios .gallery-frame-button {
        position: static !important;
        transform: none !important;
        min-height: 40px !important;
        width: 46px !important;
        padding: 0 !important;
    }

    #ensaios .gallery-frame-button:hover,
    #ensaios .gallery-frame-button:focus-visible {
        transform: translateY(-1px) !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__transport,
    .section--jukebox-inline .jukebox-inline-shell__footer {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .section--jukebox-inline .jukebox-display__button,
    .section--jukebox-inline .jukebox-inline-shell__search-toggle,
    .section--jukebox-inline .jukebox-inline-shell__link {
        min-height: 38px !important;
        border-radius: 14px !important;
        font-size: 0.56rem !important;
        letter-spacing: 0.12em !important;
    }

    #jukeboxDisplayTitle {
        font-size: clamp(1.24rem, 7vw, 1.72rem) !important;
        line-height: 1.04 !important;
        max-height: calc(2 * 1.04em) !important;
    }

    .jukebox-search__field {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 8px !important;
    }

.jukebox-search__submit {
        width: auto !important;
        min-width: 96px !important;
        min-height: 42px !important;
        padding: 0 14px !important;
    }
}

/* Audit hardening: final viewport guards. */
@media (max-width: 640px) {
    .top-header .top-header__inner,
    .top-header .site-brand,
    .top-header .site-brand__copy {
        min-width: 0 !important;
    }

    .top-header .site-brand {
        flex: 1 1 auto !important;
        max-width: calc(100% - 166px) !important;
    }

    .top-header .top-header__actions {
        flex: 0 0 auto !important;
        max-width: 150px !important;
    }
}

.news-card__media--banner,
.news-article-cover--banner,
.news-card__banner-track,
.news-card__banner-slide {
    overflow: hidden !important;
    max-width: 100% !important;
}

@media (max-width: 640px) {
    .news-card__banner-backdrop {
        inset: 0 !important;
    }

    .news-card__banner-backdrop img {
        transform: scale(1.08) !important;
    }
}

/* Final LP intro override: must win over older legacy-stage experiments. */
#legado .legacy-video-trigger--feature .legacy-video-trigger__media {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media {
    overflow: visible !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::before,
#legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
    content: '' !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    aspect-ratio: 1 !important;
    border-radius: 50% !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translate(-50%, -50%) scale(0.72) rotate(0deg) !important;
    z-index: 4 !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::before {
    width: min(76%, 420px) !important;
    background:
        radial-gradient(circle at center, rgba(245, 250, 255, 0.96) 0 4.5%, rgba(19, 74, 138, 0.96) 4.8% 11%, rgba(255, 255, 255, 0.18) 11.2% 11.8%, transparent 12.1%),
        repeating-radial-gradient(circle at center, transparent 0 8px, rgba(255, 255, 255, 0.16) 8px 9px, transparent 9px 14px),
        radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.16), transparent 18%) !important;
    box-shadow: none !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
    width: min(74%, 408px) !important;
    background:
        radial-gradient(circle at center, transparent 0 18%, rgba(255, 255, 255, 0.18) 18.4% 18.9%, transparent 19.2% 100%),
        conic-gradient(from 0deg, rgba(255, 255, 255, 0.22), transparent 18deg, transparent 82deg, rgba(255, 255, 255, 0.14) 112deg, transparent 154deg, transparent 360deg) !important;
    mix-blend-mode: screen !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media img {
    width: min(76%, 420px) !important;
    height: auto !important;
    aspect-ratio: 1 !important;
    margin: auto !important;
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
    object-fit: cover !important;
    filter: saturate(0.92) contrast(1.08) brightness(0.78) !important;
    animation: legacyBannerRecordSpin 5s linear forwards !important;
    z-index: 5 !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::before,
#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::after {
    opacity: 1 !important;
    animation: legacyRecordOverlaySpin 5s linear forwards !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__play {
    opacity: 0 !important;
    transform: translate(-50%, -50%) scale(0.65) !important;
    pointer-events: none !important;
}

/* Final fix: the LP must rotate and the needle must touch near the middle. */
#legado .legacy-video-trigger--feature .legacy-video-trigger__media::before {
    width: min(88%, 490px) !important;
}

#legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
    width: min(86%, 478px) !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media img {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: min(88%, 490px) !important;
    max-width: none !important;
    transform: translate(-50%, -50%) scale(0.9) !important;
    rotate: none;
    animation: none !important;
    z-index: 5 !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::before,
#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::after {
    rotate: none;
    animation: none !important;
}

#legado .legacy-video-trigger__needle {
    right: 6% !important;
    top: 23% !important;
    width: min(30%, 172px) !important;
    min-width: 128px !important;
    height: 3px !important;
}

#legado .legacy-video-trigger__needle::before {
    right: -9px !important;
    width: 17px !important;
    height: 17px !important;
}

#legado .legacy-video-trigger__needle::after {
    left: -15px !important;
    width: 23px !important;
    height: 2px !important;
    transform: translateY(-50%) rotate(-52deg) !important;
}

#legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__needle {
    opacity: 1 !important;
    animation: legacyNeedleDropFinal 5s ease-in-out forwards !important;
}

@keyframes legacyLpSpinFinal {
    to {
        rotate: 1800deg;
    }
}

@keyframes legacyNeedleDropFinal {
    0% {
        opacity: 0;
        transform: rotate(-8deg) translate3d(0, -16px, 0);
    }

    12% {
        opacity: 1;
        transform: rotate(-8deg) translate3d(0, -16px, 0);
    }

    30%,
    88% {
        opacity: 1;
        transform: rotate(-41deg) translate3d(-28px, 54px, 0);
    }

    100% {
        opacity: 0;
        transform: rotate(-41deg) translate3d(-28px, 54px, 0);
    }
}

@media (max-width: 720px) {
    #legado .legacy-video-trigger__needle {
        right: 5% !important;
        top: 22% !important;
        width: min(34%, 136px) !important;
        min-width: 96px !important;
    }

    #legado .legacy-video-trigger__needle::before {
        width: 14px !important;
        height: 14px !important;
    }

    #legado .legacy-video-trigger__needle::after {
        left: -13px !important;
        width: 20px !important;
    }
}

/* Unified site chrome and richer mobile spectacle section. */
.top-header .site-brand__mark {
    background-image: url("../logo3.png") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    color: transparent !important;
    text-indent: -999px !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

.top-header .top-header__inner {
    overflow: visible !important;
}

.top-header .top-header__actions {
    min-width: 0 !important;
}

.top-header .header-nav-shell {
    z-index: 260 !important;
}

.experience-mobile-notes {
    display: none;
}

@media (max-width: 720px) {
    body {
        --site-header-height: 78px;
        padding-top: var(--site-header-height) !important;
    }

    .top-header,
    .top-header.is-scrolled,
    .top-header.top-header--campaign,
    .top-header.top-header--campaign.is-scrolled {
        min-height: var(--site-header-height) !important;
        padding: 9px 12px !important;
        overflow: visible !important;
    }

    .top-header .top-header__inner,
    .top-header.top-header--campaign .top-header__inner {
        display: flex !important;
        min-height: 58px !important;
        width: 100% !important;
        gap: 8px !important;
        padding: 0 !important;
        align-items: center !important;
    }

    .top-header .site-brand,
    .top-header.top-header--campaign .site-brand,
    .top-header.top-header--campaign .site-brand--campaign {
        flex: 1 1 auto !important;
        max-width: calc(100% - 150px) !important;
        min-width: 0 !important;
        gap: 8px !important;
    }

    .top-header .site-brand__mark {
        width: 66px !important;
        height: 44px !important;
        flex: 0 0 66px !important;
    }

    .top-header .site-brand__copy {
        min-width: 0 !important;
        gap: 0 !important;
    }

    .top-header .site-brand__copy strong {
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        font-size: 0.72rem !important;
        letter-spacing: 0.1em !important;
    }

    .top-header .site-brand__copy span,
    .top-header .site-brand__signature,
    .top-header.top-header--campaign .top-header__lang,
    .top-header.top-header--campaign .top-header__quick-link {
        display: none !important;
    }

    .top-header .top-header__actions,
    .top-header.top-header--campaign .top-header__quick {
        position: static !important;
        transform: none !important;
        display: flex !important;
        flex: 0 0 auto !important;
        width: auto !important;
        height: auto !important;
        max-width: 142px !important;
        margin-left: auto !important;
        padding: 5px !important;
        gap: 6px !important;
        align-items: center !important;
        border-radius: 999px !important;
        border: 1px solid rgba(123, 231, 255, 0.12) !important;
        background: rgba(255, 255, 255, 0.045) !important;
    }

    .top-header.top-header--campaign::after,
    .top-header.top-header--campaign .top-header__quick::after {
        display: none !important;
    }

    .top-header .site-social--mobile,
    .top-header.top-header--campaign .top-header__social {
        display: flex !important;
        gap: 5px !important;
        margin: 0 !important;
    }

    .top-header .site-social--mobile .social-link,
    .top-header.top-header--campaign .top-header__social .social-link {
        width: 34px !important;
        height: 34px !important;
        flex: 0 0 34px !important;
    }

    .top-header .menu-toggle,
    .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign {
        position: relative !important;
        inset: auto !important;
        display: inline-flex !important;
        width: 38px !important;
        height: 38px !important;
        flex: 0 0 38px !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign span {
        display: block !important;
    }

    .top-header .header-nav-shell,
    .top-header .header-nav-shell--campaign {
        position: fixed !important;
        top: calc(var(--site-header-height) + 8px) !important;
        right: 10px !important;
        left: auto !important;
        width: min(316px, calc(100vw - 20px)) !important;
        max-height: calc(100dvh - var(--site-header-height) - 18px) !important;
        padding: 10px !important;
        border-radius: 18px !important;
    }

    #espetaculo.section--immersive {
        margin-inline: -12px !important;
        padding: 28px 14px 18px !important;
        border-radius: 0 !important;
        background:
            radial-gradient(circle at 50% 0%, rgba(82, 225, 255, 0.13), transparent 32%),
            linear-gradient(180deg, #071523 0%, #0e2740 52%, #071523 100%) !important;
        overflow: hidden !important;
    }

    #espetaculo .section-kicker,
    #espetaculo h2,
    #espetaculo > p {
        text-align: left !important;
    }

    #espetaculo h2 {
        max-width: 11ch !important;
        margin-inline: 0 !important;
        font-size: clamp(2.35rem, 11vw, 3.15rem) !important;
        line-height: 0.96 !important;
    }

    #espetaculo > p {
        max-width: 32rem !important;
        margin-inline: 0 !important;
        font-size: 0.98rem !important;
        line-height: 1.58 !important;
        color: rgba(232, 242, 250, 0.86) !important;
    }

    #espetaculo .experience-mobile-notes {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        margin: 18px 0 16px !important;
    }

    #espetaculo .experience-mobile-notes span {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center !important;
        gap: 4px !important;
        min-height: 58px !important;
        padding: 10px 14px !important;
        border-radius: 16px !important;
        border: 1px solid rgba(123, 231, 255, 0.14) !important;
        background: rgba(255, 255, 255, 0.06) !important;
        color: rgba(234, 246, 255, 0.84) !important;
        font-size: 0.92rem !important;
        line-height: 1.25 !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }

    #espetaculo .experience-mobile-notes strong {
        color: #ffffff !important;
        font-size: 0.68rem !important;
        letter-spacing: 0.18em !important;
        text-transform: uppercase !important;
    }

    #espetaculo .experience-showcase {
        margin-top: 16px !important;
        padding: 0 !important;
        border-radius: 22px !important;
        border: 1px solid rgba(123, 231, 255, 0.14) !important;
        background: rgba(255, 255, 255, 0.045) !important;
        box-shadow: 0 22px 48px rgba(0, 9, 20, 0.3) !important;
    }

    #espetaculo .experience-photo-strip,
    #espetaculo .experience-short {
        margin: 0 !important;
        border-radius: 22px !important;
        overflow: hidden !important;
    }

    #espetaculo .experience-short video {
        width: 100% !important;
        min-height: 360px !important;
        aspect-ratio: 4 / 5 !important;
        object-fit: cover !important;
    }

    #espetaculo .experience-recap {
        margin-top: 18px !important;
        padding: 0 !important;
    }

    #espetaculo .experience-recap__intro {
        padding: 14px !important;
        border: 1px solid rgba(123, 231, 255, 0.12) !important;
        border-radius: 18px !important;
        background: rgba(255, 255, 255, 0.055) !important;
    }

    #espetaculo .experience-recap__intro p {
        font-size: 0.9rem !important;
        line-height: 1.5 !important;
    }

    #espetaculo .show-shell {
        margin-top: 14px !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
    }

    #espetaculo .show-doodles {
        display: none !important;
    }

    #espetaculo .show-card {
        display: grid !important;
        grid-template-columns: 74px minmax(0, 1fr) !important;
        gap: 12px !important;
        padding: 14px !important;
        border-radius: 20px !important;
        border: 1px solid rgba(123, 231, 255, 0.16) !important;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.045)) !important;
    }

    #espetaculo .show-date {
        width: 74px !important;
        min-height: 92px !important;
        align-self: start !important;
        border-radius: 18px !important;
    }

    #espetaculo .show-date__day {
        font-size: 2.25rem !important;
        line-height: 0.9 !important;
    }

    #espetaculo .show-date__meta {
        font-size: 0.58rem !important;
        letter-spacing: 0.12em !important;
    }

    #espetaculo .show-content {
        min-width: 0 !important;
    }

    #espetaculo .show-content strong {
        font-size: 0.9rem !important;
        line-height: 1.35 !important;
    }

    #espetaculo .show-content p {
        margin-top: 8px !important;
        font-size: 0.88rem !important;
        line-height: 1.48 !important;
    }

    #espetaculo .show-tags {
        gap: 6px !important;
    }

    #espetaculo .show-tags span {
        min-height: 28px !important;
        padding: 0 9px !important;
        font-size: 0.55rem !important;
        letter-spacing: 0.12em !important;
    }

    #espetaculo .show-actions {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        margin-top: 2px !important;
    }

    #espetaculo .show-actions .btn {
        width: 100% !important;
        min-height: 44px !important;
        padding: 0 14px !important;
        font-size: 0.66rem !important;
        letter-spacing: 0.14em !important;
    }
}

@media (max-width: 720px) {
    .top-header .site-brand,
    .top-header.top-header--campaign .site-brand,
    .top-header.top-header--campaign .site-brand--campaign {
        max-width: calc(100% - 136px) !important;
    }

    .top-header .site-brand__mark {
        width: 58px !important;
        height: 40px !important;
        flex-basis: 58px !important;
    }

    .top-header .top-header__actions,
    .top-header.top-header--campaign .top-header__quick {
        max-width: 124px !important;
        padding: 4px !important;
        gap: 5px !important;
    }

    .top-header .site-social--mobile .social-link,
    .top-header.top-header--campaign .top-header__social .social-link {
        width: 30px !important;
        height: 30px !important;
        flex-basis: 30px !important;
    }

    .top-header .site-social--mobile .social-link svg,
    .top-header.top-header--campaign .top-header__social .social-link svg {
        width: 15px !important;
        height: 15px !important;
    }

    .top-header .menu-toggle,
    .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign {
        width: 36px !important;
        height: 36px !important;
        flex-basis: 36px !important;
    }
}

@media (max-width: 360px) {
    .top-header .site-social--mobile .social-link:first-child,
    .top-header.top-header--campaign .top-header__social .social-link:first-child {
        display: none !important;
    }

    .top-header .top-header__actions,
    .top-header.top-header--campaign .top-header__quick {
        max-width: 84px !important;
    }

    .top-header .site-brand,
    .top-header.top-header--campaign .site-brand,
    .top-header.top-header--campaign .site-brand--campaign {
        max-width: calc(100% - 96px) !important;
    }
}

@media (max-width: 720px) {
    .top-header .top-header__actions,
    .top-header.top-header--campaign .top-header__quick {
        position: static !important;
        width: 0 !important;
        max-width: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .top-header .menu-toggle,
    .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign {
        position: fixed !important;
        top: 19px !important;
        right: 14px !important;
        z-index: 500 !important;
        display: inline-flex !important;
        opacity: 1 !important;
        visibility: visible !important;
        width: 40px !important;
        height: 40px !important;
        border-radius: 0 !important;
        background: rgba(255, 255, 255, 0.08) !important;
    }

    button#menuToggle.menu-toggle {
        position: fixed !important;
        inset: 19px 14px auto auto !important;
        z-index: 1000 !important;
        display: inline-flex !important;
        opacity: 1 !important;
        visibility: visible !important;
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
        transform: none !important;
    }

    button#menuToggle.menu-toggle span {
        display: block !important;
        width: 20px !important;
        height: 2px !important;
        background: #6de9ff !important;
        opacity: 1 !important;
    }

    button#menuToggle.menu-toggle .menu-toggle__glyph {
        display: block !important;
        position: absolute !important;
        inset: 0 !important;
        color: #6de9ff !important;
        font-size: 1.45rem !important;
        font-weight: 700 !important;
        line-height: 40px !important;
        text-align: center !important;
    }

    button#menuToggle.menu-toggle .menu-toggle__glyph ~ span,
    button#menuToggle.menu-toggle span {
        background: transparent !important;
    }
}

.menu-toggle--fixed {
    position: fixed !important;
    top: 18px !important;
    right: 14px !important;
    z-index: 1000 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    height: 42px !important;
    padding: 0 !important;
    border: 1px solid rgba(123, 231, 255, 0.24) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: #6de9ff !important;
    box-shadow: 0 14px 30px rgba(0, 11, 22, 0.22) !important;
}

.menu-toggle--fixed .menu-toggle__glyph {
    display: block !important;
    color: #6de9ff !important;
    font-size: 1.45rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

@media (max-width: 720px) {
    .top-header .top-header__inner,
    .top-header.top-header--campaign .top-header__inner {
        padding-right: 96px !important;
    }

    .top-header .top-header__actions,
    .top-header.top-header--campaign .top-header__quick {
        position: fixed !important;
        top: 19px !important;
        right: 12px !important;
        transform: none !important;
        margin-left: 0 !important;
    }

    .top-header .site-brand,
    .top-header.top-header--campaign .site-brand,
    .top-header.top-header--campaign .site-brand--campaign {
        max-width: 100% !important;
    }
}

@media (max-width: 720px) {
    .top-header .site-social--mobile,
    .top-header.top-header--campaign .top-header__social {
        display: none !important;
    }

    .top-header .top-header__inner,
    .top-header.top-header--campaign .top-header__inner {
        padding-right: 52px !important;
        width: calc(100vw - 24px) !important;
        max-width: calc(100vw - 24px) !important;
    }

    .top-header .top-header__actions,
    .top-header.top-header--campaign .top-header__quick {
        width: 44px !important;
        max-width: 44px !important;
        padding: 3px !important;
        justify-content: center !important;
    }

    .top-header .menu-toggle,
    .top-header.top-header--campaign .menu-toggle.menu-toggle--campaign {
        display: inline-flex !important;
        opacity: 1 !important;
        visibility: visible !important;
        width: 38px !important;
        height: 38px !important;
        flex-basis: 38px !important;
    }
}

@media (max-width: 720px) {
    .top-header .site-social--mobile .social-link:first-child,
    .top-header.top-header--campaign .top-header__social .social-link:first-child {
        display: none !important;
    }

    .top-header .top-header__actions,
    .top-header.top-header--campaign .top-header__quick {
        max-width: 84px !important;
        width: 84px !important;
        justify-content: space-between !important;
    }

    .top-header .site-brand,
    .top-header.top-header--campaign .site-brand,
    .top-header.top-header--campaign .site-brand--campaign {
        max-width: calc(100% - 96px) !important;
    }
}

@media (max-width: 720px) {
    .top-header .top-header__actions,
    .top-header.top-header--campaign .top-header__quick {
        display: contents !important;
    }

    button#menuToggle.menu-toggle {
        position: fixed !important;
        inset: 18px 14px auto auto !important;
        z-index: 1000 !important;
        display: inline-flex !important;
        opacity: 1 !important;
        visibility: visible !important;
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
        padding: 0 !important;
        transform: none !important;
        background: rgba(255, 255, 255, 0.08) !important;
        border: 1px solid rgba(123, 231, 255, 0.24) !important;
        box-shadow: 0 14px 30px rgba(0, 11, 22, 0.22) !important;
    }

    button#menuToggle.menu-toggle span {
        display: block !important;
        width: 20px !important;
        height: 2px !important;
        background: #6de9ff !important;
        opacity: 1 !important;
    }
}

/* Mobile menu base placement. Later mobile polish keeps it aligned to the header. */
#menuToggle.menu-toggle--fixed {
    position: fixed !important;
    inset: auto !important;
    top: 18px !important;
    right: 24px !important;
    left: auto !important;
    bottom: auto !important;
    z-index: 1000 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    padding: 0 !important;
    transform: none !important;
    border: 1px solid rgba(123, 231, 255, 0.24) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: #6de9ff !important;
    box-shadow: 0 14px 30px rgba(0, 11, 22, 0.22) !important;
}

#menuToggle.menu-toggle--fixed .menu-toggle__glyph {
    display: block !important;
    color: #6de9ff !important;
    font-size: 1.45rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

/* Jukebox position, compact stage and live video panel. */
.section--jukebox-inline {
    margin-top: 18px !important;
    margin-bottom: 34px !important;
}

.section--jukebox-inline .jukebox-console {
    margin-top: 18px !important;
    padding: 18px !important;
}

.section--jukebox-inline .jukebox-inline-shell__stage {
    grid-template-columns: minmax(206px, 286px) minmax(0, 1fr) !important;
    min-height: clamp(248px, 25vw, 292px) !important;
    align-items: stretch !important;
}

.section--jukebox-inline .jukebox-inline-shell__record {
    width: min(100%, 286px) !important;
}

.section--jukebox-inline .jukebox-inline-shell__meta {
    max-height: clamp(248px, 25vw, 292px) !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    gap: 12px !important;
}

.section--jukebox-inline .jukebox-inline-shell__headline {
    width: min(100%, 28rem) !important;
}

#jukeboxDisplayTitle {
    font-size: clamp(1.86rem, 3.6vw, 2.72rem) !important;
}

#jukeboxDisplayMessage {
    font-size: 0.94rem !important;
    line-height: 1.4 !important;
}

.jukebox-inline-shell__video {
    min-height: 0;
    aspect-ratio: 16 / 9;
    width: 100%;
    overflow: hidden;
    align-self: stretch;
    border: 1px solid rgba(145, 205, 255, 0.18);
    border-radius: 18px;
    background:
        radial-gradient(circle at 18% 16%, rgba(126, 201, 255, 0.14), transparent 34%),
        #04111f;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.07),
        0 18px 34px rgba(0, 8, 18, 0.2);
}

.jukebox-inline-shell__video video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Keep the latest-show video cards in one horizontal carousel. */
.section--showcase .video-track--local {
    --video-card-width: clamp(280px, 34vw, 430px);
    display: grid;
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: var(--video-card-width);
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: max(2px, calc((100% - var(--video-card-width)) / 2));
    padding-inline: max(2px, calc((100% - var(--video-card-width)) / 2));
    scrollbar-width: none;
    touch-action: pan-x;
}

.section--showcase .video-track--local::-webkit-scrollbar {
    display: none;
}

.section--showcase .video-card--local {
    aspect-ratio: 16 / 9;
}

#videos .video-controls {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-top: 16px;
}

#videos .video-controls .video-nav {
    display: inline-grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border-radius: 999px;
    border-color: rgba(183, 225, 255, 0.22);
    background:
        radial-gradient(circle at 32% 20%, rgba(255, 255, 255, 0.18), transparent 36%),
        linear-gradient(180deg, rgba(17, 52, 84, 0.96), rgba(5, 19, 34, 0.98));
    color: #ffffff;
    box-shadow: 0 12px 24px rgba(0, 12, 24, 0.18);
}

@media (max-width: 760px) {
    .section--showcase .video-track--local {
        --video-card-width: min(90vw, 360px);
    }

    #videos .video-controls .video-nav {
        width: 42px;
        height: 42px;
    }
}

/* Narrow-screen containment: applies the safe stacked jukebox before desktop rules can crop it. */
@media (max-width: 1120px) {
    #jukebox.section--jukebox-inline {
        margin-bottom: 48px !important;
        padding: 28px 14px 48px !important;
        overflow: visible !important;
    }

    #jukebox.section--jukebox-inline .jukebox-console {
        padding: 14px !important;
        overflow: hidden !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 14px !important;
        padding: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock {
        position: relative !important;
        inset: auto !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        margin: 0 0 14px !important;
        padding: 5px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock__button,
    #jukebox.section--jukebox-inline .jukebox-voice-dock__button.is-active {
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 40px !important;
        padding: 0 8px !important;
        overflow: hidden !important;
        font-size: 0.66rem !important;
        letter-spacing: 0.03em !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 14px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
        position: relative !important;
        width: 100% !important;
        height: 300px !important;
        min-height: 300px !important;
        max-height: 300px !important;
        overflow: hidden !important;
        border-radius: 18px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
        position: absolute !important;
        inset: auto !important;
        left: 50% !important;
        top: 44px !important;
        width: 230px !important;
        height: 230px !important;
        transform: translateX(-50%) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        position: absolute !important;
        inset: auto !important;
        left: 50% !important;
        top: 54px !important;
        width: 210px !important;
        height: 210px !important;
        transform: translateX(-50%) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        position: absolute !important;
        inset: auto !important;
        left: 50% !important;
        top: 125px !important;
        width: 66px !important;
        height: 66px !important;
        transform: translateX(-50%) !important;
    }


    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        padding: 22px 16px 18px !important;
    }
}

html.jukebox-narrow #jukebox.section--jukebox-inline {
    margin-bottom: 48px !important;
    padding: 28px 14px 48px !important;
    overflow: visible !important;
}

html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-console {
    padding: 14px !important;
    overflow: hidden !important;
}

html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-inline-shell {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
    padding: 0 !important;
}

html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-voice-dock {
    position: relative !important;
    inset: auto !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    margin: 0 0 14px !important;
    padding: 5px !important;
}

html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-voice-dock__button,
html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-voice-dock__button.is-active {
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 40px !important;
    padding: 0 8px !important;
    overflow: hidden !important;
    font-size: 0.66rem !important;
    letter-spacing: 0.03em !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
}

html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
html.jukebox-narrow #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
html.jukebox-narrow #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
    display: none !important;
}

html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
    position: absolute !important;
    inset: auto !important;
    left: 50% !important;
    top: 44px !important;
    width: 230px !important;
    height: 230px !important;
    transform: translateX(-50%) !important;
}

html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
    position: absolute !important;
    inset: auto !important;
    left: 50% !important;
    top: 54px !important;
    width: 210px !important;
    height: 210px !important;
    transform: translateX(-50%) !important;
}

html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    position: absolute !important;
    inset: auto !important;
    left: 50% !important;
    top: 125px !important;
    width: 66px !important;
    height: 66px !important;
    transform: translateX(-50%) !important;
}


html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
    grid-column: 1 !important;
    grid-row: 1 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 22px 16px 18px !important;
}

html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-top-actions {
    display: none !important;
}

/* Premium Jukebox pass: turntable console inspired by the supplied reference. */
#jukebox.section--jukebox-inline {
    padding: clamp(28px, 4vw, 54px) max(18px, 3vw) !important;
    background:
        radial-gradient(circle at 50% 8%, rgba(8, 73, 168, 0.42), transparent 27%),
        radial-gradient(circle at 13% 42%, rgba(0, 151, 255, 0.12), transparent 31%),
        linear-gradient(145deg, #020611 0%, #061123 48%, #020611 100%) !important;
}

#jukebox.section--jukebox-inline .section-kicker {
    display: block !important;
    margin: 8px auto 0 !important;
    color: #31bdff !important;
    font-size: 0.74rem !important;
    letter-spacing: 0.45em !important;
    text-align: center !important;
    text-shadow: 0 0 22px rgba(49, 189, 255, 0.34) !important;
}

#jukebox.section--jukebox-inline h2 {
    margin: 0 auto !important;
    color: #f8fbff !important;
    font-size: clamp(2.35rem, 4vw, 3.65rem) !important;
    font-weight: 400 !important;
    letter-spacing: 0.24em !important;
    line-height: 1 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    text-shadow: 0 0 28px rgba(124, 202, 255, 0.26) !important;
}

#jukebox.section--jukebox-inline .section-lead {
    display: none !important;
}

#jukebox.section--jukebox-inline .jukebox-console {
    position: relative !important;
    width: min(100%, 1488px) !important;
    margin: 22px auto 0 !important;
    padding: clamp(18px, 2vw, 34px) !important;
    border: 1px solid rgba(42, 124, 205, 0.5) !important;
    border-radius: 24px !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(5, 69, 168, 0.28), transparent 24%),
        linear-gradient(145deg, rgba(2, 7, 18, 0.94), rgba(4, 12, 27, 0.98) 55%, rgba(1, 5, 14, 0.99)) !important;
    box-shadow:
        0 0 72px rgba(0, 118, 255, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
    overflow: hidden !important;
}

#jukebox.section--jukebox-inline .jukebox-console::before {
    display: none !important;
}

#jukebox.section--jukebox-inline .jukebox-console::after {
    background:
        radial-gradient(circle 230px at var(--jukebox-cursor-x, 50%) var(--jukebox-cursor-y, 50%), rgba(40, 161, 255, 0.12), transparent 72%) !important;
}

#jukebox.section--jukebox-inline .jukebox-top-actions {
    position: absolute;
    top: 34px;
    right: 34px;
    z-index: 4;
    display: flex;
    gap: 22px;
}

#jukebox.section--jukebox-inline .jukebox-top-action {
    display: grid;
    width: 56px;
    height: 56px;
    place-items: center;
    border: 1px solid rgba(74, 142, 215, 0.42);
    border-radius: 50%;
    background: rgba(5, 15, 31, 0.82);
    color: #f4f9ff;
    font-size: 1.65rem;
    line-height: 1;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 12px 24px rgba(0, 0, 0, 0.28);
}

#jukebox.section--jukebox-inline .jukebox-inline-shell {
    display: grid !important;
    grid-template-columns: minmax(420px, 0.96fr) minmax(460px, 1.04fr) !important;
    gap: clamp(18px, 2vw, 22px) !important;
    padding: 84px 0 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell::before,
#jukebox.section--jukebox-inline .jukebox-inline-shell::after,
#jukebox.section--jukebox-inline .jukebox-inline-shell__ambience {
    display: none !important;
}

#jukebox.section--jukebox-inline .jukebox-voice-dock {
    position: absolute !important;
    top: 110px !important;
    left: clamp(18px, 2vw, 34px) !important;
    z-index: 5 !important;
    display: inline-flex !important;
    width: min(424px, calc(100% - 68px)) !important;
    min-height: 52px !important;
    padding: 6px !important;
    border: 1px solid rgba(73, 126, 184, 0.36) !important;
    border-radius: 999px !important;
    background: rgba(3, 9, 20, 0.9) !important;
    box-shadow: inset 0 0 24px rgba(0, 0, 0, 0.8) !important;
}

#jukebox.section--jukebox-inline .jukebox-voice-dock__button {
    min-height: 42px !important;
    flex: 1 1 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #aeb9ca !important;
    font-size: 0.86rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}

#jukebox.section--jukebox-inline .jukebox-voice-dock__button.is-active {
    color: #fff !important;
    background: linear-gradient(#26b9ff, #0068d9 52%, #004fb8) !important;
    box-shadow:
        0 0 24px rgba(0, 145, 255, 0.62),
        inset 0 1px 0 rgba(255, 255, 255, 0.32) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
    display: contents !important;
    margin-top: 0 !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record,
#jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
#jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
    position: relative !important;
    grid-column: 1 !important;
    align-self: stretch !important;
    justify-self: stretch !important;
    width: 100% !important;
    max-width: none !important;
    max-height: none !important;
    min-height: 590px !important;
    aspect-ratio: auto !important;
    border: 1px solid rgba(83, 137, 190, 0.3) !important;
    border-radius: 24px !important;
    background:
        radial-gradient(circle at 18% 24%, rgba(42, 139, 220, 0.11), transparent 26%),
        linear-gradient(145deg, rgba(8, 17, 32, 0.95), rgba(2, 7, 16, 0.99)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 18px 48px rgba(0, 0, 0, 0.38) !important;
    overflow: hidden !important;
    filter: none !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record::before {
    content: "";
    position: absolute;
    left: 12.5%;
    top: 14%;
    width: min(74%, 500px);
    aspect-ratio: 1;
    border-radius: 50%;
    border: 9px solid #010204;
    background: #020306;
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.84);
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
    content: "";
    position: absolute;
    left: calc(12.5% + 16px);
    top: calc(14% + 16px);
    width: calc(min(74%, 500px) - 32px);
    aspect-ratio: 1;
    border-radius: 50%;
    border: 3px dotted rgba(215, 228, 246, 0.42);
    box-shadow: inset 0 0 0 1px rgba(64, 130, 195, 0.18);
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
    position: absolute !important;
    left: 12.5% !important;
    top: 14% !important;
    width: min(74%, 500px) !important;
    height: auto !important;
    aspect-ratio: 1 !important;
    border-radius: 50% !important;
    background:
        radial-gradient(ellipse at 33% 23%, rgba(255, 255, 255, 0.2), transparent 19%),
        radial-gradient(ellipse at 66% 78%, rgba(255, 255, 255, 0.09), transparent 18%),
        conic-gradient(from 18deg, rgba(255, 255, 255, 0.18) 0 8deg, transparent 8deg 84deg, rgba(255, 255, 255, 0.08) 84deg 98deg, transparent 98deg 176deg, rgba(0, 134, 255, 0.16) 176deg 190deg, transparent 190deg 360deg),
        repeating-radial-gradient(circle, #151720 0 2px, #05060b 3px 9px, #22242d 10px 11px, #05070d 12px 17px) !important;
    box-shadow:
        inset 0 0 118px rgba(0, 0, 0, 0.92),
        inset 0 0 34px rgba(255, 255, 255, 0.035) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    position: absolute !important;
    left: 37.5% !important;
    top: 39% !important;
    width: min(24%, 160px) !important;
    height: auto !important;
    aspect-ratio: 1 !important;
    border: 10px solid #071d39 !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    box-shadow:
        0 0 34px rgba(0, 145, 255, 0.36),
        0 0 0 4px rgba(16, 105, 170, 0.24) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before,
#jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::after {
    display: none !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}


#jukebox.section--jukebox-inline .jukebox-inline-shell__toggle {
    left: 34px !important;
    right: auto !important;
    bottom: 34px !important;
    width: 68px !important;
    height: 68px !important;
    min-height: 68px !important;
    padding: 0 !important;
    border: 1px solid #1a4a77 !important;
    border-radius: 50% !important;
    background: radial-gradient(circle, #1dafff 0 5%, #06101f 18%, #010308 72%) !important;
    color: transparent !important;
    box-shadow:
        0 0 20px rgba(0, 145, 255, 0.3),
        inset 0 0 18px rgba(0, 0, 0, 0.9) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__toggle #jukeboxToggleLabel {
    display: none !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
    grid-column: 2 !important;
    align-self: stretch !important;
    min-height: 590px !important;
    padding: clamp(28px, 3vw, 52px) clamp(24px, 3vw, 42px) !important;
    border: 1px solid rgba(85, 138, 190, 0.3) !important;
    border-radius: 24px !important;
    background:
        radial-gradient(circle at 28% 10%, rgba(9, 76, 170, 0.18), transparent 28%),
        linear-gradient(145deg, rgba(8, 17, 32, 0.95), rgba(2, 7, 16, 0.99)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 18px 48px rgba(0, 0, 0, 0.36) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__headline {
    max-width: none !important;
    gap: 12px !important;
}

#jukebox.section--jukebox-inline .jukebox-display__artist {
    color: #21bdff !important;
    font-size: 0.94rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.14em !important;
    text-shadow: none !important;
}

#jukeboxDisplayTitle {
    display: block !important;
    max-width: 100% !important;
    color: #f7fbff !important;
    font-size: clamp(2.5rem, 4vw, 4.05rem) !important;
    font-weight: 400 !important;
    letter-spacing: 0.1em !important;
    line-height: 0.96 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    text-shadow: 0 0 24px rgba(144, 204, 255, 0.22) !important;
}

#jukeboxDisplayMessage {
    max-width: 650px !important;
    color: #aeb9cc !important;
    font-size: 1.04rem !important;
    line-height: 1.45 !important;
}

#jukebox.section--jukebox-inline .jukebox-signal {
    height: 150px !important;
    margin-top: 8px !important;
    padding: 0 0 24px !important;
    align-items: end !important;
    justify-content: center !important;
    gap: 10px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(33, 116, 181, 0.28) !important;
    border-radius: 0 !important;
    background:
        linear-gradient(to top, rgba(0, 132, 255, 0.11), transparent 42%) !important;
    box-shadow: none !important;
}

#jukebox.section--jukebox-inline .jukebox-signal span {
    width: 12px !important;
    min-width: 12px !important;
    border-radius: 4px 4px 0 0 !important;
    background: linear-gradient(to top, #043563, #078ee0, #56d8ff) !important;
    box-shadow:
        0 0 10px rgba(0, 150, 255, 0.72),
        0 0 20px rgba(0, 150, 255, 0.42) !important;
    filter: blur(0.2px) !important;
}

#jukebox.section--jukebox-inline .jukebox-signal span:nth-child(1) { height: 54px !important; }
#jukebox.section--jukebox-inline .jukebox-signal span:nth-child(2) { height: 84px !important; }
#jukebox.section--jukebox-inline .jukebox-signal span:nth-child(3) { height: 116px !important; }
#jukebox.section--jukebox-inline .jukebox-signal span:nth-child(4) { height: 64px !important; }
#jukebox.section--jukebox-inline .jukebox-signal span:nth-child(5) { height: 78px !important; }
#jukebox.section--jukebox-inline .jukebox-signal span:nth-child(6) { height: 104px !important; }
#jukebox.section--jukebox-inline .jukebox-signal span:nth-child(7) { height: 58px !important; }
#jukebox.section--jukebox-inline .jukebox-signal span:nth-child(8) { height: 86px !important; }
#jukebox.section--jukebox-inline .jukebox-signal span:nth-child(9) { height: 98px !important; }
#jukebox.section--jukebox-inline .jukebox-signal span:nth-child(10) { height: 68px !important; }
#jukebox.section--jukebox-inline .jukebox-signal span:nth-child(11) { height: 124px !important; }
#jukebox.section--jukebox-inline .jukebox-signal span:nth-child(12) { height: 82px !important; }

#jukebox.is-playing.section--jukebox-inline .jukebox-signal span {
    animation: jukeboxPremiumEq 0.9s ease-in-out infinite;
    animation-delay: calc(var(--bar-index, 1) * 0.04s);
}

@keyframes jukeboxPremiumEq {
    0%, 100% { transform: scaleY(0.52); opacity: 0.62; }
    50% { transform: scaleY(1); opacity: 1; }
}

#jukebox.section--jukebox-inline .jukebox-progress {
    display: grid !important;
    grid-template-columns: auto 1fr auto !important;
    gap: 18px !important;
    min-height: 30px !important;
    margin-top: 16px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

#jukebox.section--jukebox-inline .jukebox-progress__track {
    height: 7px !important;
    border-radius: 999px !important;
    background: #121b2d !important;
    box-shadow: inset 0 0 7px rgba(0, 0, 0, 0.8) !important;
}

#jukebox.section--jukebox-inline .jukebox-progress__fill {
    background: #19baff !important;
    box-shadow: 0 0 17px #19baff !important;
}

#jukebox.section--jukebox-inline .jukebox-progress__time {
    color: #f4f8ff !important;
    font-size: 0.98rem !important;
    font-weight: 800 !important;
}

#jukebox.section--jukebox-inline .jukebox-control-ring {
    display: grid;
    grid-template-columns: 82px 116px 92px 116px 82px;
    gap: 28px;
    align-items: center;
    justify-content: center;
    margin-top: 28px;
}

#jukebox.section--jukebox-inline .jukebox-control-ring__button {
    display: grid;
    height: 56px;
    place-items: center;
    border: 1px solid #172d4a;
    border-radius: 30px;
    background: linear-gradient(180deg, #091222, #050b16);
    color: #f4f8ff;
    font-size: 1.62rem;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 12px 24px rgba(0, 0, 0, 0.26);
}

#jukebox.section--jukebox-inline .jukebox-control-ring__button--wide {
    height: 64px;
}

#jukebox.section--jukebox-inline .jukebox-control-ring__button--play {
    width: 92px;
    height: 92px;
    border-color: rgba(119, 207, 255, 0.44);
    border-radius: 50%;
    background: linear-gradient(#26bbff, #0874df 48%, #0048b8);
    font-size: 2.15rem;
    box-shadow:
        0 0 46px rgba(0, 145, 255, 0.88),
        0 0 82px rgba(0, 145, 255, 0.32),
        inset 0 2px 0 rgba(255, 255, 255, 0.35),
        inset 0 -10px 25px rgba(0, 0, 0, 0.4);
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__actions {
    margin-top: 28px !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__transport,
#jukebox.section--jukebox-inline .jukebox-inline-shell__footer {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__transport {
    display: none !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__footer {
    display: grid !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__search-toggle,
#jukebox.section--jukebox-inline .jukebox-inline-shell__link {
    min-height: 54px !important;
    border: 1px solid rgba(82, 119, 164, 0.18) !important;
    border-radius: 12px !important;
    background: linear-gradient(180deg, #0b1629, #060d19) !important;
    color: #c5d1e3 !important;
    font-weight: 800 !important;
    letter-spacing: 0.14em !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__link {
    background: linear-gradient(#0e9eff, #075fd0 55%, #034bb2) !important;
    color: #fff !important;
    box-shadow:
        0 0 22px rgba(0, 145, 255, 0.42),
        inset 0 1px 0 rgba(255, 255, 255, 0.23) !important;
}

#jukebox.section--jukebox-inline .jukebox-classics {
    position: relative;
    grid-column: 1 / -1;
    margin-top: 34px;
    padding-inline: 14px 42px;
}

#jukebox.section--jukebox-inline .jukebox-classics h3 {
    margin: 0 0 16px;
    color: #18baff;
    font-size: 0.92rem;
    font-weight: 900;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

#jukebox.section--jukebox-inline .jukebox-classics__track {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 16px;
}

#jukebox.section--jukebox-inline .jukebox-classic-card {
    display: flex;
    min-width: 0;
    min-height: 116px;
    align-items: center;
    gap: 12px;
    padding: 12px;
    border: 1px solid rgba(46, 82, 125, 0.34);
    border-radius: 12px;
    background: rgba(6, 14, 29, 0.82);
    color: #fff;
    text-align: left;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 10px 22px rgba(0, 0, 0, 0.24);
}

#jukebox.section--jukebox-inline .jukebox-classic-card:hover,
#jukebox.section--jukebox-inline .jukebox-classic-card:focus-visible {
    border-color: #00c3ff;
    box-shadow: 0 0 20px rgba(0, 145, 255, 0.3);
}

#jukebox.section--jukebox-inline .jukebox-classic-card.is-active {
    border-color: #02aaff;
    background: rgba(5, 27, 51, 0.92);
    box-shadow:
        0 0 24px rgba(0, 145, 255, 0.42),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

#jukebox.section--jukebox-inline .jukebox-classic-card img {
    width: 74px;
    height: 74px;
    flex: 0 0 74px;
    border-radius: 7px;
    object-fit: cover;
}

#jukebox.section--jukebox-inline .jukebox-classic-card__body {
    display: grid;
    min-width: 0;
    gap: 4px;
}

#jukebox.section--jukebox-inline .jukebox-classic-card__body strong,
#jukebox.section--jukebox-inline .jukebox-classic-card__body span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#jukebox.section--jukebox-inline .jukebox-classic-card__body strong {
    color: #fff;
    font-size: 0.94rem;
}

#jukebox.section--jukebox-inline .jukebox-classic-card__body span {
    color: #8795aa;
    font-size: 0.82rem;
}

#jukebox.section--jukebox-inline .jukebox-classic-card__meter {
    margin-left: auto;
    align-self: end;
    color: #18baff;
    font-size: 1.4rem;
    opacity: 0;
}

#jukebox.section--jukebox-inline .jukebox-classic-card.is-active .jukebox-classic-card__meter {
    opacity: 1;
}

#jukebox.section--jukebox-inline .jukebox-classics__arrow {
    position: absolute;
    right: -2px;
    bottom: 32px;
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    border: 1px solid #18375c;
    border-radius: 50%;
    background: rgba(5, 15, 31, 0.86);
    color: #c5d1e3;
    font-size: 2rem;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__discovery {
    grid-column: 1 / -1;
}

@media (max-width: 1120px) {
    #jukebox.section--jukebox-inline .jukebox-inline-shell {
        grid-template-columns: 1fr !important;
        padding-top: 74px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-top-actions {
        top: 24px;
        right: 24px;
        gap: 12px;
    }

    #jukebox.section--jukebox-inline .jukebox-top-action {
        width: 44px;
        height: 44px;
        font-size: 1.25rem;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock {
        top: 92px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics__track {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    #jukebox.section--jukebox-inline {
        max-height: none !important;
        padding: 28px 14px !important;
    }

    #jukebox.section--jukebox-inline h2 {
        font-size: clamp(2rem, 10vw, 2.7rem) !important;
        letter-spacing: 0.08em !important;
    }

    #jukebox.section--jukebox-inline .section-kicker {
        letter-spacing: 0.24em !important;
    }

    #jukebox.section--jukebox-inline .jukebox-console {
        padding: 16px !important;
        border-radius: 20px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-top-actions {
        display: none;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell {
        display: grid !important;
        grid-template-columns: 1fr !important;
        padding-top: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: 100% !important;
        margin: 0 0 14px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
        min-height: 420px !important;
        border-radius: 20px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before {
        left: 8% !important;
        top: 12% !important;
        width: 84% !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        left: calc(8% + 14px) !important;
        top: calc(12% + 14px) !important;
        width: calc(84% - 28px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        left: 34% !important;
        top: 38% !important;
        width: 32% !important;
    }


    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        min-height: 0 !important;
        max-height: none !important;
        padding: 22px 20px !important;
        border-radius: 20px !important;
        overflow: visible !important;
    }

    #jukeboxDisplayTitle {
        font-size: clamp(2rem, 11vw, 3rem) !important;
        white-space: normal !important;
    }

    #jukebox.section--jukebox-inline .jukebox-signal {
        height: 96px !important;
        gap: 7px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-signal span {
        width: 9px !important;
        min-width: 9px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring {
        grid-template-columns: 1fr 1fr 76px 1fr 1fr;
        gap: 8px;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button {
        height: 46px;
        font-size: 1.15rem;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button--play {
        width: 76px;
        height: 76px;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__footer {
        grid-template-columns: 1fr !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics {
        padding: 0 0 8px;
    }

    #jukebox.section--jukebox-inline .jukebox-classics__track {
        display: flex;
        gap: 12px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        padding-bottom: 8px;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card {
        min-width: 240px;
        scroll-snap-align: start;
    }

    #jukebox.section--jukebox-inline .jukebox-classics__arrow {
        display: none;
    }
}

#jukebox.has-performance-video .jukebox-inline-shell__actions {
    display: none !important;
}

#jukebox:not(.has-performance-video) .jukebox-inline-shell__video {
    display: none !important;
}

@media (max-width: 720px) {
    .section--jukebox-inline .jukebox-inline-shell__stage {
        grid-template-columns: 1fr !important;
        min-height: 0 !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__meta {
        max-height: none !important;
        grid-template-rows: auto auto !important;
    }

    .section--jukebox-inline .jukebox-inline-shell__record {
        width: min(100%, 236px) !important;
    }
}

@media (max-width: 720px) {
    #menuToggle.menu-toggle--fixed {
        left: auto !important;
        right: 28px !important;
        top: 32px !important;
    }

    .top-header {
        padding: 10px 14px !important;
        overflow: visible !important;
    }

    .top-header .top-header__inner {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 64px !important;
        padding-right: 72px !important;
        overflow: visible !important;
    }

    .top-header .site-brand {
        max-width: calc(100% - 8px) !important;
        gap: 10px !important;
    }

    .top-header .site-brand__mark {
        width: 58px !important;
        height: 44px !important;
        flex: 0 0 58px !important;
        background-size: 118% auto !important;
    }

    .top-header .site-brand__copy {
        display: flex !important;
        min-width: 0 !important;
    }

    .top-header .site-brand strong,
    .top-header .site-brand__copy span {
        white-space: normal !important;
        overflow-wrap: normal !important;
    }
}

/* Deployment QA: keep repeated navigation and article links comfortable to tap. */
.news-breadcrumbs a,
.news-card__category,
.news-card__title a,
.news-card__link,
.news-filter a,
.section--news-home .news-card__link,
.section--news-related .news-card__title a,
.site-footer .site-footer__nav-link,
.site-footer .site-footer__social-link,
.site-footer .site-footer__newsletter-address {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
}

.site-footer .site-footer__nav-link,
.site-footer .site-footer__social-link,
    .news-card__link,
    .section--news-home .news-card__link {
        padding-top: 8px;
        padding-bottom: 8px;
    }

/* Final logo visibility fix: crop the transparent padding inside the source PNG. */
.top-header .site-brand__mark {
    width: 116px !important;
    height: 68px !important;
    flex: 0 0 116px !important;
    background-image: url("../logo3.png") !important;
    background-repeat: no-repeat !important;
    background-position: center 56% !important;
    background-size: 172% auto !important;
    filter:
        drop-shadow(0 0 8px rgba(150, 220, 255, 0.42))
        drop-shadow(0 8px 14px rgba(0, 0, 0, 0.28)) !important;
    opacity: 1 !important;
}

@media (max-width: 720px) {
    .top-header .site-brand__mark {
        width: 104px !important;
        height: 58px !important;
        flex: 0 0 104px !important;
        background-size: 176% auto !important;
        background-position: center 56% !important;
    }

    .top-header .site-brand,
    .top-header.top-header--campaign .site-brand,
    .top-header.top-header--campaign .site-brand--campaign {
        max-width: calc(100% - 126px) !important;
    }
}

/* Header restoration and compact spectacle mobile pass. */
.top-header .site-brand__mark {
    width: 92px !important;
    height: 64px !important;
    flex: 0 0 92px !important;
    background-size: contain !important;
}

.top-header .top-header__actions {
    display: flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
}

.top-header .site-social--header {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.top-header .site-social--header .social-link {
    display: grid !important;
    width: 40px !important;
    height: 40px !important;
    place-items: center !important;
    color: #6de9ff !important;
}

.top-header .site-social--header .social-link svg {
    width: 18px !important;
    height: 18px !important;
    fill: currentColor !important;
}

@media (max-width: 720px) {
    body {
        --site-header-height: 88px;
    }

    .top-header .top-header__inner {
        min-height: 70px !important;
    }

    .top-header .site-brand,
    .top-header.top-header--campaign .site-brand,
    .top-header.top-header--campaign .site-brand--campaign {
        max-width: calc(100% - 132px) !important;
        gap: 10px !important;
    }

    .top-header .site-brand__mark {
        width: 86px !important;
        height: 56px !important;
        flex: 0 0 86px !important;
    }

    .top-header .site-brand__copy strong {
        font-size: 0.78rem !important;
    }

    .top-header .top-header__actions {
        display: flex !important;
        position: static !important;
        max-width: none !important;
        margin-left: auto !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .top-header .site-social--header {
        gap: 6px !important;
    }

    .top-header .site-social--header .social-link {
        width: 36px !important;
        height: 36px !important;
        flex: 0 0 36px !important;
    }

    .top-header .site-social--header .social-link svg {
        width: 17px !important;
        height: 17px !important;
    }

    #menuToggle.menu-toggle--fixed {
        top: 26px !important;
        right: 16px !important;
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        min-height: 38px !important;
    }

    #espetaculo.section--immersive {
        margin-inline: -16px !important;
        padding: 20px 14px 16px !important;
        background: linear-gradient(180deg, #071523 0%, #0b2136 100%) !important;
    }

    #espetaculo .section-kicker {
        margin-bottom: 8px !important;
        color: #8edcff !important;
        background: rgba(82, 225, 255, 0.08) !important;
        letter-spacing: 0.14em !important;
    }

    #espetaculo h2 {
        max-width: none !important;
        margin: 0 0 10px !important;
        color: #ffffff !important;
        font-family: 'Cormorant Garamond', serif !important;
        font-size: clamp(2.05rem, 10vw, 2.7rem) !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
        text-shadow: none !important;
        -webkit-text-stroke: 0 transparent !important;
    }

    #espetaculo > p {
        display: none !important;
    }

    #espetaculo .experience-mobile-notes {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 7px !important;
        margin: 12px 0 12px !important;
    }

    #espetaculo .experience-mobile-notes span {
        min-height: 50px !important;
        padding: 8px 9px !important;
        border-radius: 12px !important;
        font-size: 0.78rem !important;
        line-height: 1.16 !important;
    }

    #espetaculo .experience-mobile-notes strong {
        font-size: 0.54rem !important;
        letter-spacing: 0.12em !important;
    }

    #espetaculo .experience-showcase {
        margin-top: 10px !important;
        border-radius: 16px !important;
        box-shadow: 0 14px 30px rgba(0, 9, 20, 0.26) !important;
    }

    #espetaculo .experience-photo-strip,
    #espetaculo .experience-short {
        border-radius: 16px !important;
    }

    #espetaculo .experience-short video {
        min-height: 0 !important;
        height: min(58vh, 330px) !important;
        aspect-ratio: 16 / 10 !important;
        object-fit: cover !important;
    }

    #espetaculo .experience-recap {
        margin-top: 12px !important;
    }

    #espetaculo .experience-recap__intro {
        display: none !important;
    }

    #espetaculo .show-card {
        padding: 12px !important;
        border-radius: 16px !important;
    }

    #espetaculo .show-content p,
    #espetaculo .show-tags {
        display: none !important;
    }
}

.news-breadcrumbs a,
.news-card__category,
.news-filter a {
    padding-top: 7px;
    padding-bottom: 7px;
}

.btn,
.event-showcase-button,
.booking-guide__button,
.jukebox-search__reset,
.contact-card a,
.news-article-aside a,
.news-breadcrumbs a,
.news-card__category,
.news-card__title a,
.news-card__link,
.news-filter a,
.site-footer .site-footer__nav-link,
.site-footer .site-footer__social-link,
.site-footer .site-footer__newsletter-address {
    min-height: 40px !important;
}

.event-showcase-breadcrumbs a,
.event-showcase-meta a,
.event-showcase-card a,
.contact-compact__numbers a,
.site-footer__pill,
.site-footer__home-newsletter-address {
    display: inline-flex;
    align-items: center;
    min-height: 40px !important;
}

/* Absolute final logo override. Keep after every header block. */
.top-header .site-brand__mark,
.top-header.top-header--campaign .site-brand--campaign .site-brand__mark {
    display: block !important;
    width: 118px !important;
    height: 58px !important;
    flex: 0 0 118px !important;
    background-image: url("../logo3.png") !important;
    background-repeat: no-repeat !important;
    background-position: center 54% !important;
    background-size: 126% auto !important;
    color: transparent !important;
    text-indent: -9999px !important;
    border: 0 !important;
    opacity: 1 !important;
    filter: drop-shadow(0 7px 12px rgba(0, 0, 0, 0.34)) !important;
}

@media (max-width: 720px) {
    .top-header .site-brand__mark,
    .top-header.top-header--campaign .site-brand--campaign .site-brand__mark {
        width: 96px !important;
        height: 52px !important;
        flex: 0 0 96px !important;
        background-size: 132% auto !important;
        background-position: center 54% !important;
    }

    .top-header .site-brand,
    .top-header.top-header--campaign .site-brand,
    .top-header.top-header--campaign .site-brand--campaign {
        max-width: calc(100% - 116px) !important;
    }
}

/* Compact gallery pass: keep the whole gallery experience inside one viewport. */
#ensaios.section {
    min-height: auto !important;
    padding-top: clamp(24px, 3.2vw, 38px) !important;
    padding-bottom: clamp(22px, 3vw, 34px) !important;
    overflow: hidden !important;
}

#ensaios .section-kicker {
    margin-bottom: 8px !important;
    font-size: 0.68rem !important;
}

#ensaios h2 {
    margin-bottom: 10px !important;
    font-size: clamp(2rem, 3.1vw, 2.65rem) !important;
    line-height: 0.98 !important;
}

#ensaios > .section-lead {
    max-width: 46rem !important;
    margin-bottom: 18px !important;
    font-size: 0.95rem !important;
    line-height: 1.35 !important;
}

#ensaios .gallery-showcase--ensaios {
    width: min(100%, 1180px) !important;
    margin-inline: auto !important;
    padding: 18px 20px 16px !important;
    gap: 10px !important;
    border-radius: 20px !important;
}

#ensaios .showcase-copy {
    display: none !important;
}

#ensaios .ensaios-track-frame {
    padding: 14px 56px !important;
    border-radius: 18px !important;
}

#ensaios .ensaios-track {
    grid-auto-columns: clamp(230px, 25vw, 315px) !important;
    gap: 16px !important;
    align-items: center !important;
    padding: 0 !important;
    scroll-padding-inline: 0 !important;
}

#ensaios .ensaios-card {
    --ensaios-scale: 1 !important;
    --ensaios-offset: 0px !important;
    --ensaios-opacity: 1 !important;
    border-radius: 18px !important;
    transform: none !important;
    box-shadow: 0 14px 26px rgba(0, 12, 24, 0.2) !important;
}

#ensaios .ensaios-card img {
    aspect-ratio: 4 / 3 !important;
    height: clamp(180px, 28svh, 260px) !important;
    max-height: none !important;
}

#ensaios .ensaios-card__caption {
    gap: 4px !important;
    padding: 48px 14px 12px !important;
}

#ensaios .ensaios-card__tag {
    min-height: 20px !important;
    padding: 3px 8px !important;
    font-size: 0.56rem !important;
}

#ensaios .ensaios-card__caption strong {
    font-size: 0.96rem !important;
    line-height: 1.12 !important;
}

#ensaios .ensaios-card__text {
    display: -webkit-box !important;
    overflow: hidden !important;
    font-size: 0.76rem !important;
    line-height: 1.3 !important;
    -webkit-line-clamp: 1 !important;
    line-clamp: 1 !important;
    -webkit-box-orient: vertical !important;
}

#ensaios .gallery-frame-button {
    min-height: 40px !important;
    padding: 0 10px !important;
}

#ensaios .gallery-frame-button--prev {
    left: 18px !important;
}

#ensaios .gallery-frame-button--next {
    right: 18px !important;
}

#ensaios .gallery-frame-button__icon {
    width: 28px !important;
    height: 28px !important;
}

#ensaios .gallery-frame-button__text {
    font-size: 0.56rem !important;
}

@media (max-width: 720px) {
    #ensaios.section {
        padding-top: 18px !important;
        padding-bottom: 20px !important;
    }

    #ensaios > .section-lead {
        margin-bottom: 12px !important;
        font-size: 0.86rem !important;
    }

    #ensaios .gallery-showcase--ensaios {
        padding: 12px !important;
        border-radius: 14px !important;
    }

    #ensaios .ensaios-track-frame {
        padding: 10px 12px !important;
    }

    #ensaios .ensaios-track {
        grid-auto-columns: min(80vw, 300px) !important;
        padding-inline: 0 !important;
        scroll-padding-inline: 0 !important;
    }

    #ensaios .ensaios-card img {
        height: clamp(190px, 34svh, 250px) !important;
    }
}

/* Match latest-show video navigation to the gallery arrow model. */
#videos {
    position: relative !important;
}

#videos .video-track-frame--local {
    position: relative !important;
    padding-inline: clamp(54px, 6vw, 78px) !important;
}

#videos .video-controls--frame {
    position: absolute !important;
    inset: auto clamp(18px, 4vw, 42px) clamp(42px, 5vw, 62px) !important;
    z-index: 8 !important;
    display: block !important;
    margin: 0 !important;
    pointer-events: none !important;
}

#videos .video-controls--frame .gallery-frame-button {
    position: absolute !important;
    top: 50% !important;
    z-index: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 44px !important;
    width: auto !important;
    height: auto !important;
    padding: 0 12px !important;
    border: 1px solid rgba(198, 229, 255, 0.16) !important;
    border-radius: 999px !important;
    background:
        radial-gradient(circle at 25% 18%, rgba(255, 255, 255, 0.16), transparent 34%),
        rgba(6, 20, 35, 0.82) !important;
    color: rgba(238, 245, 255, 0.92) !important;
    box-shadow:
        0 18px 36px rgba(0, 9, 20, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    backdrop-filter: blur(14px) !important;
    pointer-events: auto !important;
    transform: translateY(-50%) !important;
}

#videos .video-controls--frame .gallery-frame-button:hover,
#videos .video-controls--frame .gallery-frame-button:focus-visible {
    border-color: rgba(208, 234, 255, 0.28) !important;
    background:
        radial-gradient(circle at 25% 18%, rgba(255, 255, 255, 0.18), transparent 34%),
        rgba(10, 39, 70, 0.94) !important;
    transform: translateY(calc(-50% - 1px)) !important;
    outline: none !important;
}

#videos .video-controls--frame .gallery-frame-button--prev {
    left: 0 !important;
}

#videos .video-controls--frame .gallery-frame-button--next {
    right: 0 !important;
}

#videos .video-controls--frame .gallery-frame-button__icon {
    display: grid !important;
    place-items: center !important;
    width: 30px !important;
    height: 30px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.05) !important;
}

#videos .video-controls--frame .gallery-frame-button__icon svg {
    width: 21px !important;
    height: 21px !important;
    display: block !important;
}

#videos .video-controls--frame .gallery-frame-button--prev .gallery-frame-button__icon svg {
    transform: scaleX(-1) !important;
}

#videos .video-controls--frame .gallery-frame-button__text {
    font-size: 0.58rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

@media (max-width: 720px) {
    #videos .video-track-frame--local {
        padding-inline: 10px !important;
    }

    #videos .video-controls--frame {
        position: static !important;
        display: flex !important;
        justify-content: center !important;
        gap: 10px !important;
        margin-top: 12px !important;
        pointer-events: auto !important;
    }

    #videos .video-controls--frame .gallery-frame-button {
        position: static !important;
        min-height: 40px !important;
        transform: none !important;
    }

    #videos .video-controls--frame .gallery-frame-button:hover,
    #videos .video-controls--frame .gallery-frame-button:focus-visible {
        transform: translateY(-1px) !important;
    }
}

.section--presskit {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 82% 16%, rgba(37, 147, 255, 0.22), transparent 30%),
        radial-gradient(circle at 12% 88%, rgba(24, 183, 255, 0.12), transparent 28%),
        linear-gradient(145deg, #06111f 0%, #0b2238 52%, #061321 100%);
    color: rgba(238, 247, 255, 0.94);
    border-color: rgba(137, 205, 255, 0.16);
}

.section--presskit::before {
    background:
        linear-gradient(118deg, transparent 0%, rgba(76, 194, 255, 0.08) 24%, rgba(255, 255, 255, 0.12) 34%, transparent 52%);
}

.presskit-shell {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
    gap: clamp(18px, 3vw, 32px);
    align-items: stretch;
}

.presskit-copy {
    display: grid;
    align-content: center;
    gap: 18px;
}

.presskit-copy h2 {
    max-width: 10ch;
    color: #ffffff;
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(3.2rem, 6vw, 6.1rem);
    line-height: 0.9;
    letter-spacing: 0;
}

.presskit-copy .section-lead {
    max-width: 42rem;
    margin: 0;
    color: rgba(226, 240, 252, 0.84);
    text-align: left;
}

.presskit-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.presskit-panel,
.presskit-formats {
    border: 1px solid rgba(185, 225, 255, 0.16);
    background:
        radial-gradient(circle at 18% 10%, rgba(45, 176, 255, 0.14), transparent 34%),
        rgba(3, 15, 28, 0.64);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.07),
        0 24px 54px rgba(0, 11, 24, 0.24);
    backdrop-filter: blur(12px);
}

.presskit-panel {
    display: grid;
    gap: 18px;
    align-content: center;
    padding: clamp(22px, 3vw, 34px);
}

.presskit-quote {
    display: grid;
    gap: 10px;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(185, 225, 255, 0.14);
}

.presskit-quote span {
    color: #18a8ff;
    font-family: 'Cormorant Garamond', serif;
    font-size: 4rem;
    line-height: 0.55;
}

.presskit-quote strong {
    max-width: 19rem;
    color: #ffffff;
    font-size: clamp(1.15rem, 2vw, 1.55rem);
    line-height: 1.18;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.presskit-grid {
    display: grid;
    gap: 12px;
}

.presskit-grid article {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 2px 14px;
    align-items: start;
    padding: 12px 0;
    border-bottom: 1px solid rgba(185, 225, 255, 0.1);
}

.presskit-grid article:last-child {
    border-bottom: 0;
}

.presskit-grid article span {
    grid-row: span 2;
    color: #1aa9ff;
    font-weight: 800;
    letter-spacing: 0.12em;
}

.presskit-grid article strong {
    color: #17b5ff;
    font-size: 0.78rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.presskit-grid article p {
    margin: 0;
    color: rgba(228, 241, 252, 0.8);
    font-size: 0.92rem;
    line-height: 1.45;
}

.presskit-formats {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
    gap: 0;
    overflow: hidden;
}

.presskit-photo {
    min-height: 280px;
    background: #061321;
}

.presskit-photo img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 280px;
    object-fit: cover;
    object-position: 50% 24%;
}

.presskit-list {
    display: grid;
    align-content: center;
    gap: 16px;
    padding: clamp(22px, 3vw, 36px);
}

.presskit-list h3 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(1.35rem, 2.2vw, 2rem);
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.presskit-list ul {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.presskit-list li {
    position: relative;
    padding-left: 22px;
    color: rgba(229, 242, 253, 0.84);
    line-height: 1.45;
}

.presskit-list li::before {
    content: '';
    position: absolute;
    top: 0.7em;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #18a8ff;
    box-shadow: 0 0 18px rgba(24, 168, 255, 0.5);
}

@media (max-width: 900px) {
    .presskit-shell,
    .presskit-formats {
        grid-template-columns: 1fr;
    }

    .presskit-copy h2 {
        max-width: 12ch;
    }

    .presskit-panel {
        padding: 22px;
    }
}

@media (max-width: 640px) {
    .section--presskit {
        padding-top: 34px;
        padding-bottom: 34px;
    }

    .presskit-copy h2 {
        font-size: clamp(2.7rem, 14vw, 4rem);
    }

    .presskit-actions .btn {
        width: 100%;
        justify-content: center;
    }

    .presskit-photo,
    .presskit-photo img {
        min-height: 220px;
    }
}

/* Compact Jukebox pass: keep the interactive player inside a normal viewport. */
#jukebox.section--jukebox-inline {
    padding-top: clamp(22px, 3vw, 34px) !important;
    padding-bottom: clamp(24px, 3vw, 38px) !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

#jukebox.section--jukebox-inline .section-kicker {
    margin-bottom: 4px !important;
    font-size: 0.72rem !important;
}

#jukebox.section--jukebox-inline h2 {
    margin-bottom: 8px !important;
    font-size: clamp(2.6rem, 5.2vw, 3.65rem) !important;
    line-height: 0.92 !important;
}

#jukebox.section--jukebox-inline .section-lead {
    max-width: 54rem !important;
    margin-bottom: 18px !important;
    font-size: clamp(0.95rem, 1.45vw, 1.18rem) !important;
    line-height: 1.35 !important;
}

#jukebox.section--jukebox-inline .jukebox-console {
    width: min(100%, 1320px) !important;
    margin-top: 0 !important;
    padding: 14px 22px !important;
    border-radius: 24px !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell {
    border-radius: 20px !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
    grid-template-columns: minmax(210px, 270px) minmax(0, 1fr) !important;
    gap: clamp(16px, 2.4vw, 26px) !important;
    min-height: 236px !important;
    padding: 0 !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record {
    width: min(100%, 268px) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    width: 62% !important;
    height: 62% !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__toggle {
    min-height: 48px !important;
    padding: 0 26px !important;
    bottom: 8px !important;
}


#jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
    min-height: 0 !important;
    max-height: 236px !important;
    padding: clamp(18px, 2.4vw, 28px) !important;
    gap: 10px !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__headline {
    max-width: 31rem !important;
    gap: 6px !important;
}

#jukebox.section--jukebox-inline .jukebox-display__artist {
    font-size: 0.84rem !important;
}

#jukeboxDisplayTitle {
    font-size: clamp(1.72rem, 3vw, 2.46rem) !important;
    line-height: 0.96 !important;
    min-height: auto !important;
    max-height: calc(2 * 0.96em + 0.1em) !important;
}

#jukeboxDisplayMessage {
    max-width: 24rem !important;
    font-size: 0.91rem !important;
    line-height: 1.32 !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__actions {
    align-self: start !important;
    gap: 10px !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__transport,
#jukebox.section--jukebox-inline .jukebox-inline-shell__footer {
    gap: 10px !important;
}

#jukebox.section--jukebox-inline .jukebox-display__button,
#jukebox.section--jukebox-inline .jukebox-inline-shell__search-toggle,
#jukebox.section--jukebox-inline .jukebox-inline-shell__link {
    min-height: 46px !important;
    padding: 0 18px !important;
    font-size: 0.72rem !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__discovery {
    margin-top: 12px !important;
    padding: 8px 0 0 !important;
}

#jukebox.section--jukebox-inline .jukebox-search__controls:has([data-jukebox-voice]) {
    min-height: 50px !important;
    padding: 8px !important;
    gap: 8px !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__mode,
#jukebox.section--jukebox-inline .jukebox-search__reset {
    min-height: 40px !important;
    padding: 0 16px !important;
    font-size: 0.68rem !important;
}

#jukebox.section--jukebox-inline .jukebox-search {
    gap: 8px !important;
    margin-top: 10px !important;
}

#jukebox.section--jukebox-inline .jukebox-search__field {
    min-height: 48px !important;
}

#jukebox.section--jukebox-inline .jukebox-search__field input {
    min-height: 48px !important;
    padding: 0 16px !important;
    font-size: 0.92rem !important;
}

#jukebox.section--jukebox-inline .jukebox-search__submit {
    min-height: 48px !important;
    padding: 0 20px !important;
    font-size: 0.72rem !important;
}

#jukebox.section--jukebox-inline .jukebox-search__meta {
    font-size: 0.78rem !important;
    line-height: 1.25 !important;
}

@media (min-width: 1024px) {
    #jukebox.section--jukebox-inline .jukebox-inline-shell__discovery:not([hidden]) {
        display: grid !important;
        grid-template-columns: minmax(300px, 0.45fr) minmax(0, 1fr) !important;
        gap: 10px 12px !important;
        align-items: center !important;
    }

    #jukebox.section--jukebox-inline .jukebox-search {
        margin-top: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-search__controls:last-child {
        min-height: 0 !important;
        margin-top: 4px !important;
    }
}

@media (max-width: 760px) {
    #jukebox.section--jukebox-inline {
        padding-top: 26px !important;
        padding-bottom: 28px !important;
    }

    #jukebox.section--jukebox-inline h2 {
        font-size: clamp(2.24rem, 13vw, 3.1rem) !important;
    }

    #jukebox.section--jukebox-inline .section-lead {
        margin-bottom: 14px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-console {
        padding: 12px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        min-height: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record {
        width: min(100%, 218px) !important;
        justify-self: center !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        max-height: none !important;
        padding: 16px !important;
    }
}

/* Header icon/menu color aligned with the Press kit cyan text. */
:root {
    --calhambeque-action-cyan: #17b5ff;
}

.top-header .site-menu a,
.top-header.top-header--campaign .site-menu.site-menu--campaign a,
.home-redesign .top-header.top-header--campaign .site-menu.site-menu--campaign a {
    color: var(--calhambeque-action-cyan) !important;
}

.top-header .site-menu a:hover,
.top-header .site-menu a:focus-visible,
.top-header .site-menu a.is-active,
.top-header.top-header--campaign .site-menu.site-menu--campaign a:hover,
.top-header.top-header--campaign .site-menu.site-menu--campaign a:focus-visible,
.top-header.top-header--campaign .site-menu.site-menu--campaign a.is-active {
    color: var(--calhambeque-action-cyan) !important;
    text-shadow: 0 0 18px rgba(23, 181, 255, 0.34) !important;
}

.top-header .social-link,
.top-header .site-social--header .social-link,
.top-header .site-social--mobile .social-link,
.top-header.top-header--campaign .top-header__social .social-link,
.menu-toggle,
.top-header .menu-toggle,
.top-header.top-header--campaign .menu-toggle.menu-toggle--campaign,
#menuToggle.menu-toggle--fixed,
#menuToggle.menu-toggle--fixed .menu-toggle__glyph,
button#menuToggle.menu-toggle .menu-toggle__glyph {
    color: var(--calhambeque-action-cyan) !important;
}

.top-header .social-link svg,
.top-header .site-social--header .social-link svg,
.top-header .site-social--mobile .social-link svg,
.top-header.top-header--campaign .top-header__social .social-link svg {
    fill: currentColor !important;
}

.menu-toggle span,
.top-header .menu-toggle span,
.top-header.top-header--campaign .menu-toggle.menu-toggle--campaign span,
button#menuToggle.menu-toggle span {
    background: var(--calhambeque-action-cyan) !important;
}

.site-footer--home-lean .site-footer__kicker,
.site-footer--home-lean .site-footer__lean-label,
.site-footer--home-lean .site-footer__pill,
.site-footer--home-lean .site-footer__nav-link {
    color: var(--calhambeque-action-cyan) !important;
}

.site-footer--home-lean .site-footer__pill::before,
.site-footer .site-footer__social-link::before {
    color: var(--calhambeque-action-cyan) !important;
    background-color: rgba(23, 181, 255, 0.14) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.16),
        0 0 18px rgba(23, 181, 255, 0.2) !important;
}

.site-footer--home-lean .site-footer__button::before {
    color: var(--calhambeque-action-cyan) !important;
    background-color: rgba(23, 181, 255, 0.14) !important;
}

.site-footer--home-lean .site-footer__pill[href*="instagram.com"]::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%2317b5ff' d='M7 2h10a5 5 0 0 1 5 5v10a5 5 0 0 1-5 5H7a5 5 0 0 1-5-5V7a5 5 0 0 1 5-5Zm0 2.2A2.8 2.8 0 0 0 4.2 7v10A2.8 2.8 0 0 0 7 19.8h10a2.8 2.8 0 0 0 2.8-2.8V7A2.8 2.8 0 0 0 17 4.2H7Zm10.35 1.65a1.1 1.1 0 1 1 0 2.2 1.1 1.1 0 0 1 0-2.2ZM12 7a5 5 0 1 1 0 10 5 5 0 0 1 0-10Zm0 2.2A2.8 2.8 0 1 0 12 14.8 2.8 2.8 0 0 0 12 9.2Z'/></svg>") !important;
}

.site-footer--home-lean .site-footer__pill[href*="youtube.com"]::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%2317b5ff' d='M23 12.01s0-3.07-.39-4.55a3 3 0 0 0-2.11-2.12C19.01 5 12 5 12 5s-7.01 0-8.5.34A3 3 0 0 0 1.39 7.46 19.5 19.5 0 0 0 1 12.01a19.5 19.5 0 0 0 .39 4.55 3 3 0 0 0 2.11 2.12C4.99 19 12 19 12 19s7.01 0 8.5-.34a3 3 0 0 0 2.11-2.12c.39-1.48.39-4.53.39-4.53ZM9.75 15.5v-7l6 3.5-6 3.5Z'/></svg>") !important;
}

.site-footer--home-lean .site-footer__pill[href="/noticias/"]::before,
.site-footer--home-lean .site-footer__pill[href*="noticias"]::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%2317b5ff' d='M5 3.5h14a1.5 1.5 0 0 1 1.5 1.5v14a1.5 1.5 0 0 1-1.5 1.5H5A1.5 1.5 0 0 1 3.5 19V5A1.5 1.5 0 0 1 5 3.5Zm1.5 4v2h11v-2h-11Zm0 4v1.7h11v-1.7h-11Zm0 3.7V17h7.5v-1.8H6.5Z'/></svg>") !important;
}

.quiz-entry__kicker,
#quiz .section-kicker,
#quiz .section-kicker:not(.section-kicker--light) {
    color: var(--calhambeque-action-cyan) !important;
    text-shadow: 0 0 18px rgba(23, 181, 255, 0.28) !important;
}

/* Mobile correction: keep the Jukebox handoff and O Espetaculo compact. */
@media (max-width: 760px) {
    #jukebox.section--jukebox-inline {
        padding-bottom: 14px !important;
        margin-bottom: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-console,
    #jukebox.section--jukebox-inline .jukebox-inline-shell {
        min-height: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
        align-items: start !important;
    }

    #jukebox.has-performance-video .jukebox-inline-shell__stage {
        display: block !important;
    }

    #jukebox.has-performance-video .jukebox-inline-shell__record,
    #jukebox.has-performance-video .jukebox-inline-shell__meta {
        display: none !important;
    }

    #jukebox.has-performance-video .jukebox-inline-shell__video {
        display: block !important;
        width: 100% !important;
        max-height: 260px !important;
        aspect-ratio: 16 / 9 !important;
        border-radius: 16px !important;
    }

    #jukebox.has-performance-video .jukebox-inline-shell__video video {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center 30% !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__discovery {
        margin-top: 8px !important;
        padding-top: 6px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-search__controls:last-child {
        min-height: 0 !important;
        margin-top: 0 !important;
    }

    #espetaculo.section--immersive {
        margin-top: 0 !important;
        margin-inline: -12px !important;
        padding: 28px 16px 22px !important;
        overflow: hidden !important;
    }

    #espetaculo .section-kicker {
        display: inline-flex !important;
        margin: 0 0 8px !important;
    }

    #espetaculo h2 {
        margin: 0 0 12px !important;
        font-size: clamp(2.3rem, 12vw, 3.15rem) !important;
        line-height: 0.95 !important;
    }

    #espetaculo .experience-mobile-notes {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
        margin: 0 0 14px !important;
    }

    #espetaculo .experience-mobile-notes span {
        min-width: 0 !important;
        min-height: 48px !important;
        padding: 8px 9px !important;
    }

    #espetaculo .experience-showcase {
        margin: 0 !important;
        padding: 0 !important;
        min-height: 0 !important;
        border-radius: 18px !important;
    }

    #espetaculo .experience-photo-strip,
    #espetaculo .experience-short {
        display: block !important;
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border-radius: 16px !important;
        aspect-ratio: 4 / 3 !important;
    }

    #espetaculo .experience-short::before,
    #espetaculo .experience-short::after {
        display: none !important;
    }

    #espetaculo .experience-short video {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        max-height: 360px !important;
        object-fit: cover !important;
        object-position: center top !important;
    }

    #espetaculo .experience-recap {
        margin-top: 14px !important;
    }

    #espetaculo .show-shell,
    #espetaculo .show-card {
        min-height: 0 !important;
    }
}

/* Wider mobile/tablet guard for the Jukebox-to-Espetaculo transition. */
@media (max-width: 900px) {
    #jukebox.section--jukebox-inline {
        max-height: 430px !important;
        overflow: hidden !important;
        padding-top: 18px !important;
        padding-bottom: 10px !important;
        margin-bottom: 0 !important;
    }

    #jukebox.section--jukebox-inline .section-kicker,
    #jukebox.section--jukebox-inline .section-lead {
        display: none !important;
    }

    #jukebox.section--jukebox-inline h2 {
        margin-bottom: 10px !important;
        font-size: clamp(2.25rem, 9vw, 3.25rem) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-console {
        margin-top: 0 !important;
        padding: 10px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__stage,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        min-height: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record {
        width: min(100%, 190px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        max-height: 150px !important;
        overflow: hidden !important;
        padding: 14px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__actions {
        display: none !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__discovery:not([hidden]) {
        display: block !important;
        max-height: 116px !important;
        overflow: hidden !important;
        margin-top: 8px !important;
        padding-top: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-search__controls:has([data-jukebox-voice]) {
        display: none !important;
    }

    #jukebox.section--jukebox-inline .jukebox-search {
        margin-top: 0 !important;
        gap: 6px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-search__field,
    #jukebox.section--jukebox-inline .jukebox-search__field input,
    #jukebox.section--jukebox-inline .jukebox-search__submit {
        min-height: 40px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-search__controls:last-child {
        justify-content: flex-start !important;
        gap: 10px !important;
        margin-top: 4px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-search__meta,
    #jukebox.section--jukebox-inline .jukebox-search-results {
        display: none !important;
    }

    #jukebox.section--jukebox-inline .jukebox-search__reset {
        min-height: 34px !important;
        padding: 0 12px !important;
    }

    #espetaculo.section--immersive {
        margin-top: 0 !important;
        padding-top: 24px !important;
    }

    #espetaculo h2 {
        font-size: clamp(2.35rem, 9vw, 3.45rem) !important;
        line-height: 0.94 !important;
    }

    #espetaculo .experience-showcase {
        margin-top: 12px !important;
    }

    #espetaculo .experience-short,
    #espetaculo .experience-photo-strip {
        max-height: 380px !important;
        overflow: hidden !important;
    }

    #espetaculo .experience-short video {
        max-height: 380px !important;
        object-fit: cover !important;
        object-position: center top !important;
    }
}

/* Hard mobile cap for O Espetaculo media: the video must not dominate the screen. */
@media (max-width: 900px) {
    #espetaculo.section--immersive {
        padding-top: 18px !important;
        padding-bottom: 18px !important;
    }

    #espetaculo h2 {
        margin-bottom: 10px !important;
    }

    #espetaculo .experience-mobile-notes {
        margin-bottom: 12px !important;
    }

    #espetaculo .experience-showcase,
    #espetaculo .experience-photo-strip,
    #espetaculo .experience-short {
        height: clamp(220px, 42vw, 300px) !important;
        min-height: 0 !important;
        max-height: 300px !important;
        aspect-ratio: auto !important;
    }

    #espetaculo .experience-short video {
        height: 100% !important;
        min-height: 0 !important;
        max-height: 300px !important;
        object-fit: cover !important;
        object-position: center 24% !important;
    }

    #espetaculo .experience-recap {
        margin-top: 10px !important;
    }
}

@media (max-width: 520px) {
    #espetaculo .experience-showcase,
    #espetaculo .experience-photo-strip,
    #espetaculo .experience-short {
        height: 218px !important;
        max-height: 218px !important;
    }

    #espetaculo .experience-short video {
        max-height: 218px !important;
    }
}

.site-footer--home-lean .site-footer__pill:hover,
.site-footer--home-lean .site-footer__pill:focus-visible,
.site-footer--home-lean .site-footer__nav-link:hover,
.site-footer--home-lean .site-footer__nav-link:focus-visible {
    color: var(--calhambeque-action-cyan) !important;
    text-shadow: 0 0 18px rgba(23, 181, 255, 0.34) !important;
}

/* Digital mission Jukebox: orbital console skin. */
#jukebox.section--jukebox-inline {
    position: relative !important;
    isolation: isolate !important;
    max-height: none !important;
    background:
        linear-gradient(180deg, rgba(3, 10, 22, 0.12), rgba(3, 10, 22, 0.74)),
        radial-gradient(circle at 18% 14%, rgba(35, 190, 255, 0.22), transparent 31%),
        radial-gradient(circle at 82% 12%, rgba(255, 207, 117, 0.14), transparent 25%),
        #04101e !important;
    overflow: hidden !important;
}

#jukebox.section--jukebox-inline::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(91, 194, 255, 0.07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(91, 194, 255, 0.07) 1px, transparent 1px);
    background-size: 44px 44px;
    mask-image: linear-gradient(180deg, transparent, #000 18%, #000 82%, transparent);
}

#jukebox.section--jukebox-inline h2 {
    color: #f8fbff !important;
    text-shadow:
        0 0 18px rgba(82, 192, 255, 0.46),
        0 12px 34px rgba(0, 0, 0, 0.32) !important;
}

#jukebox.section--jukebox-inline .section-kicker,
#jukebox.section--jukebox-inline .section-lead {
    display: block !important;
    color: rgba(231, 245, 255, 0.82) !important;
}

#jukebox.section--jukebox-inline .jukebox-console {
    position: relative !important;
    border: 1px solid rgba(116, 207, 255, 0.3) !important;
    background:
        linear-gradient(135deg, rgba(10, 31, 55, 0.94), rgba(2, 12, 24, 0.98)) !important;
    transform: none !important;
    transition: box-shadow 0.22s ease, border-color 0.22s ease !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        inset 0 -1px 0 rgba(79, 196, 255, 0.12),
        0 30px 90px rgba(0, 0, 0, 0.34),
        0 0 64px rgba(33, 181, 255, 0.16) !important;
}

#jukebox.section--jukebox-inline .jukebox-console::before {
    content: "";
    position: absolute;
    inset: 14px;
    pointer-events: none;
    border: 1px solid rgba(126, 213, 255, 0.14);
    border-radius: 18px;
}

#jukebox.section--jukebox-inline .jukebox-console::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    background:
        radial-gradient(circle 190px at var(--jukebox-cursor-x, 50%) var(--jukebox-cursor-y, 50%), rgba(105, 210, 255, 0.16), transparent 70%);
    opacity: 0;
    transition: opacity 0.2s ease;
}

#jukebox.section--jukebox-inline:hover .jukebox-console::after {
    opacity: 1;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell {
    position: relative !important;
    z-index: 1 !important;
    transform: none !important;
    padding: 18px !important;
    border: 1px solid rgba(126, 213, 255, 0.16) !important;
    background:
        linear-gradient(180deg, rgba(9, 31, 55, 0.88), rgba(2, 13, 25, 0.94)),
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.03) 0 1px, transparent 1px 9px) !important;
}

.jukebox-mission-bar {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}

.jukebox-mission-bar__item {
    min-width: 0;
    min-height: 52px;
    padding: 10px 12px;
    border: 1px solid rgba(117, 205, 255, 0.18);
    border-radius: 8px;
    background: linear-gradient(180deg, rgba(19, 54, 86, 0.7), rgba(4, 18, 33, 0.78));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.jukebox-mission-bar__item b,
.jukebox-mission-bar__item small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.jukebox-mission-bar__item b {
    color: #f7fbff;
    font-size: clamp(0.78rem, 1.1vw, 0.95rem);
    letter-spacing: 0;
}

.jukebox-mission-bar__item small {
    margin-top: 2px;
    color: #74d7ff;
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.jukebox-voice-dock {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: -2px 0 16px;
    padding: 8px;
    border: 1px solid rgba(117, 205, 255, 0.16);
    border-radius: 12px;
    background: rgba(3, 14, 26, 0.66);
}

.jukebox-voice-dock__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    min-width: min(100%, 170px);
    padding: 0 18px;
    border: 1px solid rgba(117, 211, 255, 0.24);
    border-radius: 8px;
    background: linear-gradient(180deg, rgba(26, 72, 110, 0.72), rgba(7, 26, 45, 0.82));
    color: rgba(232, 246, 255, 0.86);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    line-height: 1.1;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.jukebox-voice-dock__button::before {
    content: "";
    width: 10px;
    height: 10px;
    margin-right: 9px;
    border-radius: 50%;
    background: rgba(116, 215, 255, 0.42);
    box-shadow: 0 0 0 5px rgba(116, 215, 255, 0.08);
}

.jukebox-voice-dock__button:hover,
.jukebox-voice-dock__button:focus-visible {
    border-color: rgba(143, 211, 255, 0.48);
    color: #ffffff;
    outline: none;
}

.jukebox-voice-dock__button.is-active {
    border-color: rgba(255, 244, 225, 0.78);
    background: linear-gradient(180deg, #fff7e9, #d8cfc1);
    color: #06101c;
}

.jukebox-voice-dock__button.is-active::before {
    background: #1b78b8;
    box-shadow: 0 0 0 5px rgba(27, 120, 184, 0.15);
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
    grid-template-columns: minmax(240px, 330px) minmax(0, 1fr) !important;
    min-height: 300px !important;
    gap: clamp(18px, 3vw, 34px) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record {
    width: min(100%, 320px) !important;
    transform: translateY(0) scale(1) !important;
    transition: transform 0.22s ease, filter 0.22s ease !important;
    filter:
        drop-shadow(0 20px 38px rgba(0, 0, 0, 0.34))
        drop-shadow(0 0 0 rgba(62, 190, 255, 0));
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record:hover {
    transform: translateY(-3px) scale(1.012) !important;
    filter:
        drop-shadow(0 24px 42px rgba(0, 0, 0, 0.38))
        drop-shadow(0 0 26px rgba(62, 190, 255, 0.14));
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
    background:
        radial-gradient(circle at 50% 50%, transparent 0 16%, rgba(38, 154, 255, 0.35) 17% 19%, transparent 20% 27%, rgba(15, 55, 91, 0.78) 28% 34%, transparent 35%),
        repeating-radial-gradient(circle at 50% 50%, rgba(94, 192, 255, 0.12) 0 2px, transparent 2px 11px),
        conic-gradient(from 30deg, #020814, #113b64, #020814, #0e2e4c, #020814) !important;
    box-shadow:
        inset 0 0 0 1px rgba(112, 210, 255, 0.28),
        inset 0 0 50px rgba(36, 166, 255, 0.2),
        0 0 42px rgba(22, 171, 255, 0.18) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    border-color: rgba(117, 211, 255, 0.38) !important;
    transform: none !important;
    box-shadow:
        0 0 0 8px rgba(8, 22, 37, 0.72),
        0 0 34px rgba(61, 186, 255, 0.28) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__toggle,
#jukebox.section--jukebox-inline .jukebox-display__button,
#jukebox.section--jukebox-inline .jukebox-inline-shell__search-toggle,
#jukebox.section--jukebox-inline .jukebox-inline-shell__link,
#jukebox.section--jukebox-inline .jukebox-search__submit {
    border-radius: 8px !important;
    border: 1px solid rgba(117, 211, 255, 0.32) !important;
    background:
        linear-gradient(180deg, rgba(26, 72, 110, 0.96), rgba(7, 26, 45, 0.98)) !important;
    color: #f8fbff !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        0 12px 26px rgba(0, 0, 0, 0.22) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__toggle,
#jukebox.section--jukebox-inline .jukebox-inline-shell__link {
    background: linear-gradient(180deg, #fff7e9, #d8cfc1) !important;
    border-color: rgba(255, 244, 225, 0.78) !important;
    color: #06101c !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
    max-height: none !important;
    overflow: visible !important;
    transform: none !important;
    transition: border-color 0.22s ease, box-shadow 0.22s ease !important;
    padding: clamp(20px, 2.6vw, 32px) !important;
    border-radius: 14px !important;
    border: 1px solid rgba(117, 205, 255, 0.18) !important;
    background: linear-gradient(135deg, rgba(5, 18, 34, 0.94), rgba(4, 13, 25, 0.98)) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__headline {
    max-width: 38rem !important;
}

#jukebox.section--jukebox-inline .jukebox-display__artist {
    color: #ffdca2 !important;
}

#jukeboxDisplayTitle {
    color: #ffffff !important;
    font-size: clamp(2rem, 4vw, 3.25rem) !important;
    text-shadow: 0 0 22px rgba(111, 207, 255, 0.22) !important;
}

#jukeboxDisplayMessage {
    max-width: 32rem !important;
    color: rgba(224, 238, 248, 0.82) !important;
}

.jukebox-signal {
    display: grid;
    grid-template-columns: repeat(12, minmax(8px, 1fr));
    align-items: end;
    gap: 6px;
    height: 54px;
    margin-top: auto;
    padding: 12px;
    border: 1px solid rgba(117, 205, 255, 0.13);
    border-radius: 8px;
    background: rgba(3, 14, 26, 0.76);
}

.jukebox-signal span {
    height: 28%;
    border-radius: 999px 999px 2px 2px;
    background: linear-gradient(180deg, #ffe1a8, #2bd2ff);
    opacity: 0.42;
    transform-origin: bottom;
}

.jukebox-signal span:nth-child(2n) { height: 58%; }
.jukebox-signal span:nth-child(3n) { height: 86%; }
.jukebox-signal span:nth-child(5n) { height: 42%; }

#jukebox.is-playing .jukebox-signal span {
    animation: jukeboxSignalPulse 780ms ease-in-out infinite alternate;
    opacity: 0.95;
}

#jukebox.is-playing .jukebox-signal span:nth-child(2n) { animation-delay: -180ms; }
#jukebox.is-playing .jukebox-signal span:nth-child(3n) { animation-delay: -320ms; }
#jukebox.is-playing .jukebox-signal span:nth-child(5n) { animation-delay: -460ms; }

@keyframes jukeboxSignalPulse {
    from { transform: scaleY(0.38); filter: brightness(0.86); }
    to { transform: scaleY(1); filter: brightness(1.24); }
}

.jukebox-progress {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    width: min(100%, 470px);
    min-height: 32px;
    padding: 0 10px;
    border: 1px solid rgba(117, 205, 255, 0.13);
    border-radius: 8px;
    background: rgba(3, 14, 26, 0.58);
    color: rgba(225, 238, 248, 0.74);
    cursor: pointer;
}

.jukebox-progress:focus-visible {
    outline: 2px solid rgba(116, 215, 255, 0.55);
    outline-offset: 3px;
}

.jukebox-progress__time {
    min-width: 34px;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0;
    font-variant-numeric: tabular-nums;
}

.jukebox-progress__track {
    position: relative;
    display: block;
    height: 7px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(117, 205, 255, 0.12);
}

.jukebox-progress__fill {
    position: absolute;
    inset: 0 auto 0 0;
    width: 0%;
    border-radius: inherit;
    background: linear-gradient(90deg, #2bd2ff, #fff1c4);
    box-shadow: 0 0 16px rgba(43, 210, 255, 0.34);
    transition: width 0.16s linear;
}

.jukebox-progress[data-mode="external"] .jukebox-progress__fill {
    width: 100% !important;
    opacity: 0.34;
    background: linear-gradient(90deg, rgba(43, 210, 255, 0.15), rgba(255, 241, 196, 0.5), rgba(43, 210, 255, 0.15));
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__discovery {
    border-top: 1px solid rgba(117, 205, 255, 0.15) !important;
}

#jukebox.section--jukebox-inline .jukebox-search__field,
#jukebox.section--jukebox-inline .jukebox-search__controls:has([data-jukebox-voice]) {
    border-radius: 12px !important;
    border-color: rgba(117, 205, 255, 0.18) !important;
    background: rgba(3, 14, 26, 0.8) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__mode {
    border-radius: 8px !important;
    background: rgba(43, 184, 255, 0.16) !important;
    color: #dff6ff !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__discovery[hidden],
#jukebox.section--jukebox-inline .jukebox-inline-player[hidden] {
    display: none !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    align-content: center !important;
}

#jukebox.section--jukebox-inline .jukebox-signal {
    width: min(100%, 440px) !important;
    margin-top: 4px !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__actions {
    display: grid !important;
    width: min(100%, 590px) !important;
    gap: 12px !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__transport,
#jukebox.section--jukebox-inline .jukebox-inline-shell__footer {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    gap: 12px !important;
}

#jukebox.section--jukebox-inline .jukebox-display__button,
#jukebox.section--jukebox-inline .jukebox-inline-shell__search-toggle,
#jukebox.section--jukebox-inline .jukebox-inline-shell__link {
    width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__video,
#jukebox.section--jukebox-inline .jukebox-inline-shell__video[hidden],
#jukebox.has-performance-video .jukebox-inline-shell__video {
    display: none !important;
}

#jukebox.has-performance-video .jukebox-inline-shell__actions,
#jukebox.has-performance-video .jukebox-inline-shell__record,
#jukebox.has-performance-video .jukebox-inline-shell__meta {
    display: grid !important;
}

@media (max-width: 900px) {
    #jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
        grid-template-columns: 1fr !important;
        min-height: 0 !important;
    }

    .jukebox-mission-bar {
        grid-template-columns: 1fr 1fr;
    }

    .jukebox-mission-bar__item:last-child {
        grid-column: 1 / -1;
    }

    .jukebox-voice-dock {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .jukebox-voice-dock__button {
        min-width: 0;
        width: 100%;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record {
        width: min(100%, 246px) !important;
        justify-self: center !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__actions {
        display: grid !important;
    }
}

@media (max-width: 560px) {
    #jukebox.section--jukebox-inline .jukebox-console {
        padding: 10px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell {
        padding: 12px !important;
    }

    .jukebox-mission-bar {
        grid-template-columns: 1fr;
    }

    .jukebox-mission-bar__item:last-child {
        grid-column: auto;
    }

    .jukebox-voice-dock {
        grid-template-columns: 1fr;
    }

    .jukebox-signal {
        height: 42px;
        gap: 4px;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__transport,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__footer {
        grid-template-columns: 1fr !important;
    }
}

/* Legacy jukebox theme passes removed: the premium turntable skin below is now the single desktop source of truth. */

/* Mobile handoff: give O Espetaculo breathing room and keep its video vertical. */
@media (max-width: 760px) {
    #espetaculo.section--immersive {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        margin-top: 32px !important;
        padding: 34px 18px 22px !important;
        overflow: hidden !important;
    }

    #espetaculo .section-kicker {
        order: 1 !important;
        align-self: center !important;
        margin-bottom: 10px !important;
    }

    #espetaculo h2 {
        order: 2 !important;
        position: relative !important;
        z-index: 2 !important;
        max-width: none !important;
        margin-top: 0 !important;
        margin-bottom: 22px !important;
        text-align: left !important;
    }

    #espetaculo > p {
        display: none !important;
    }

    #espetaculo .experience-mobile-notes {
        order: 3 !important;
        position: relative !important;
        z-index: 2 !important;
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
        width: 100% !important;
        margin: 0 0 18px !important;
    }

    #espetaculo .experience-mobile-notes span {
        min-width: 0 !important;
        min-height: 58px !important;
        padding: 10px 9px !important;
        overflow: hidden !important;
    }

    #espetaculo .experience-showcase {
        order: 4 !important;
        position: relative !important;
        z-index: 1 !important;
        display: grid !important;
        place-items: center !important;
        width: 100% !important;
        max-width: 360px !important;
        height: min(450px, calc((100vw - 36px) * 1.25)) !important;
        min-height: 0 !important;
        max-height: 450px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        overflow: hidden !important;
        transform: none !important;
    }

    #espetaculo .experience-photo-strip,
    #espetaculo .experience-short {
        position: relative !important;
        inset: auto !important;
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        max-height: 450px !important;
        aspect-ratio: 4 / 5 !important;
        margin: 0 auto !important;
        border-radius: 18px !important;
        overflow: hidden !important;
        transform: none !important;
    }

    #espetaculo .experience-short video {
        position: relative !important;
        inset: auto !important;
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        max-height: 450px !important;
        aspect-ratio: 4 / 5 !important;
        object-fit: cover !important;
        object-position: center center !important;
    }

    #espetaculo .experience-recap {
        order: 5 !important;
        margin-top: 22px !important;
    }
}

/* Final premium lock: keep the new Jukebox skin above older accumulated passes. */
#jukebox.section--jukebox-inline {
    scroll-margin-top: calc(var(--site-header-height, 88px) + 28px) !important;
    max-height: none !important;
    padding: clamp(30px, 4vw, 58px) max(18px, 3vw) !important;
    background:
        radial-gradient(circle at 50% 7%, rgba(8, 73, 168, 0.42), transparent 28%),
        radial-gradient(circle at 14% 44%, rgba(0, 151, 255, 0.12), transparent 32%),
        linear-gradient(145deg, #020611 0%, #061123 48%, #020611 100%) !important;
    overflow: visible !important;
}

#jukebox.section--jukebox-inline .section-kicker {
    display: block !important;
    margin: 0 auto 8px !important;
    color: #31bdff !important;
    font-size: 0.74rem !important;
    letter-spacing: 0.44em !important;
    text-align: center !important;
}

#jukebox.section--jukebox-inline h2 {
    position: relative !important;
    z-index: 3 !important;
    margin: 0 auto 20px !important;
    color: #f8fbff !important;
    font-size: clamp(2.35rem, 4vw, 3.6rem) !important;
    font-weight: 400 !important;
    letter-spacing: 0.24em !important;
    line-height: 1 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    text-shadow: 0 0 28px rgba(124, 202, 255, 0.26) !important;
}

#jukebox.section--jukebox-inline .section-lead {
    display: none !important;
}

#jukebox.section--jukebox-inline .jukebox-console {
    position: relative !important;
    width: min(100%, 1488px) !important;
    margin: 0 auto !important;
    padding: clamp(18px, 2vw, 34px) !important;
    border: 1px solid rgba(42, 124, 205, 0.5) !important;
    border-radius: 24px !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(5, 69, 168, 0.28), transparent 24%),
        linear-gradient(145deg, rgba(2, 7, 18, 0.96), rgba(4, 12, 27, 0.99) 55%, rgba(1, 5, 14, 1)) !important;
    box-shadow:
        0 0 72px rgba(0, 118, 255, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
    overflow: hidden !important;
}

#jukebox.section--jukebox-inline .jukebox-console::before,
#jukebox.section--jukebox-inline .jukebox-inline-shell::before,
#jukebox.section--jukebox-inline .jukebox-inline-shell::after,
#jukebox.section--jukebox-inline .jukebox-inline-shell__ambience {
    display: none !important;
}

#jukebox.section--jukebox-inline .jukebox-top-actions {
    position: absolute !important;
    top: 34px !important;
    right: 34px !important;
    z-index: 7 !important;
    display: flex !important;
    gap: 22px !important;
}

#jukebox.section--jukebox-inline .jukebox-top-action {
    display: grid !important;
    width: 56px !important;
    height: 56px !important;
    place-items: center !important;
    border: 1px solid rgba(74, 142, 215, 0.42) !important;
    border-radius: 50% !important;
    background: rgba(5, 15, 31, 0.82) !important;
    color: #f4f9ff !important;
    font-size: 1.55rem !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell {
    display: grid !important;
    grid-template-columns: minmax(440px, 0.96fr) minmax(500px, 1.04fr) !important;
    gap: clamp(18px, 2vw, 22px) !important;
    padding: 84px 0 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

#jukebox.section--jukebox-inline .jukebox-voice-dock {
    position: absolute !important;
    top: 110px !important;
    left: clamp(18px, 2vw, 34px) !important;
    z-index: 8 !important;
    display: inline-flex !important;
    width: min(424px, calc(100% - 68px)) !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 6px !important;
    border: 1px solid rgba(73, 126, 184, 0.36) !important;
    border-radius: 999px !important;
    background: rgba(3, 9, 20, 0.92) !important;
    box-shadow: inset 0 0 24px rgba(0, 0, 0, 0.8) !important;
}

#jukebox.section--jukebox-inline .jukebox-voice-dock__button {
    flex: 1 1 0 !important;
    min-height: 42px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #aeb9ca !important;
    font-size: 0.86rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}

#jukebox.section--jukebox-inline .jukebox-voice-dock__button.is-active {
    color: #fff !important;
    background: linear-gradient(#26b9ff, #0068d9 52%, #004fb8) !important;
    box-shadow:
        0 0 24px rgba(0, 145, 255, 0.62),
        inset 0 1px 0 rgba(255, 255, 255, 0.32) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
    display: contents !important;
    margin: 0 !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record,
#jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
#jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
    position: relative !important;
    grid-column: 1 !important;
    align-self: stretch !important;
    justify-self: stretch !important;
    width: 100% !important;
    max-width: none !important;
    max-height: none !important;
    min-height: 592px !important;
    aspect-ratio: auto !important;
    border: 1px solid rgba(83, 137, 190, 0.3) !important;
    border-radius: 24px !important;
    background:
        radial-gradient(circle at 18% 24%, rgba(42, 139, 220, 0.11), transparent 26%),
        linear-gradient(145deg, rgba(8, 17, 32, 0.95), rgba(2, 7, 16, 0.99)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 18px 48px rgba(0, 0, 0, 0.38) !important;
    overflow: hidden !important;
    filter: none !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record::before {
    content: "" !important;
    position: absolute !important;
    left: 12.5% !important;
    top: 14% !important;
    width: min(74%, 500px) !important;
    height: auto !important;
    aspect-ratio: 1 !important;
    border: 9px solid #010204 !important;
    border-radius: 50% !important;
    background: #020306 !important;
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.84) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
    content: "" !important;
    position: absolute !important;
    left: calc(12.5% + 16px) !important;
    top: calc(14% + 16px) !important;
    width: calc(min(74%, 500px) - 32px) !important;
    height: auto !important;
    aspect-ratio: 1 !important;
    border: 3px dotted rgba(215, 228, 246, 0.42) !important;
    border-radius: 50% !important;
    box-shadow: inset 0 0 0 1px rgba(64, 130, 195, 0.18) !important;
    animation: none !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
    position: absolute !important;
    inset: auto !important;
    left: 12.5% !important;
    top: 14% !important;
    width: min(74%, 500px) !important;
    height: auto !important;
    aspect-ratio: 1 !important;
    border-radius: 50% !important;
    background:
        radial-gradient(ellipse at 33% 23%, rgba(255, 255, 255, 0.2), transparent 19%),
        radial-gradient(ellipse at 66% 78%, rgba(255, 255, 255, 0.09), transparent 18%),
        conic-gradient(from 18deg, rgba(255, 255, 255, 0.18) 0 8deg, transparent 8deg 84deg, rgba(255, 255, 255, 0.08) 84deg 98deg, transparent 98deg 176deg, rgba(0, 134, 255, 0.16) 176deg 190deg, transparent 190deg 360deg),
        repeating-radial-gradient(circle, #151720 0 2px, #05060b 3px 9px, #22242d 10px 11px, #05070d 12px 17px) !important;
    box-shadow:
        inset 0 0 118px rgba(0, 0, 0, 0.92),
        inset 0 0 34px rgba(255, 255, 255, 0.035) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    position: absolute !important;
    left: 37.5% !important;
    top: 39% !important;
    width: min(24%, 160px) !important;
    height: auto !important;
    aspect-ratio: 1 !important;
    border: 10px solid #071d39 !important;
    border-radius: 50% !important;
    transform: none !important;
    overflow: hidden !important;
    box-shadow:
        0 0 34px rgba(0, 145, 255, 0.36),
        0 0 0 4px rgba(16, 105, 170, 0.24) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before,
#jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::after {
    display: none !important;
}


#jukebox.section--jukebox-inline .jukebox-inline-shell__toggle {
    position: absolute !important;
    left: 34px !important;
    right: auto !important;
    bottom: 34px !important;
    width: 68px !important;
    height: 68px !important;
    min-height: 68px !important;
    padding: 0 !important;
    border: 1px solid #1a4a77 !important;
    border-radius: 50% !important;
    background: radial-gradient(circle, #1dafff 0 5%, #06101f 18%, #010308 72%) !important;
    color: transparent !important;
    box-shadow: 0 0 20px rgba(0, 145, 255, 0.3), inset 0 0 18px rgba(0, 0, 0, 0.9) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__toggle #jukeboxToggleLabel {
    display: none !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
    grid-column: 2 !important;
    align-self: stretch !important;
    min-height: 592px !important;
    max-height: none !important;
    padding: clamp(28px, 3vw, 52px) clamp(24px, 3vw, 42px) !important;
    border: 1px solid rgba(85, 138, 190, 0.3) !important;
    border-radius: 24px !important;
    background:
        radial-gradient(circle at 28% 10%, rgba(9, 76, 170, 0.18), transparent 28%),
        linear-gradient(145deg, rgba(8, 17, 32, 0.95), rgba(2, 7, 16, 0.99)) !important;
}

#jukebox.section--jukebox-inline .jukebox-display__artist {
    color: #21bdff !important;
    font-size: 0.94rem !important;
    letter-spacing: 0.14em !important;
}

#jukeboxDisplayTitle {
    font-size: clamp(2.5rem, 4vw, 4.05rem) !important;
    letter-spacing: 0.1em !important;
    line-height: 0.96 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

#jukeboxDisplayMessage {
    color: #aeb9cc !important;
    font-size: 1.04rem !important;
    line-height: 1.45 !important;
}

#jukebox.section--jukebox-inline .jukebox-signal {
    height: 150px !important;
    margin-top: 8px !important;
    padding: 0 0 24px !important;
    gap: 10px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(33, 116, 181, 0.28) !important;
    border-radius: 0 !important;
    background: linear-gradient(to top, rgba(0, 132, 255, 0.11), transparent 42%) !important;
}

#jukebox.section--jukebox-inline .jukebox-signal span {
    width: 12px !important;
    min-width: 12px !important;
    border-radius: 4px 4px 0 0 !important;
    background: linear-gradient(to top, #043563, #078ee0, #56d8ff) !important;
    box-shadow: 0 0 10px rgba(0, 150, 255, 0.72), 0 0 20px rgba(0, 150, 255, 0.42) !important;
}

#jukebox.section--jukebox-inline .jukebox-progress {
    display: grid !important;
    grid-template-columns: auto 1fr auto !important;
    gap: 18px !important;
    min-height: 30px !important;
    margin-top: 16px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

#jukebox.section--jukebox-inline .jukebox-progress__track {
    height: 7px !important;
    background: #121b2d !important;
}

#jukebox.section--jukebox-inline .jukebox-progress__fill {
    background: #19baff !important;
    box-shadow: 0 0 17px #19baff !important;
}

#jukebox.section--jukebox-inline .jukebox-control-ring {
    display: grid !important;
    grid-template-columns: 82px 116px 92px 116px 82px !important;
    gap: 28px !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 28px !important;
}

#jukebox.section--jukebox-inline .jukebox-control-ring__button {
    display: grid !important;
    height: 56px !important;
    place-items: center !important;
    border: 1px solid #172d4a !important;
    border-radius: 30px !important;
    background: linear-gradient(180deg, #091222, #050b16) !important;
    color: #f4f8ff !important;
    font-size: 1.62rem !important;
}

#jukebox.section--jukebox-inline .jukebox-control-ring__button--wide {
    height: 64px !important;
}

#jukebox.section--jukebox-inline .jukebox-control-ring__button--play {
    width: 92px !important;
    height: 92px !important;
    border-color: rgba(119, 207, 255, 0.44) !important;
    border-radius: 50% !important;
    background: linear-gradient(#26bbff, #0874df 48%, #0048b8) !important;
    font-size: 2.15rem !important;
    box-shadow: 0 0 46px rgba(0, 145, 255, 0.88), 0 0 82px rgba(0, 145, 255, 0.32) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__transport {
    display: none !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__footer {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__search-toggle,
#jukebox.section--jukebox-inline .jukebox-inline-shell__link {
    min-height: 54px !important;
    border-radius: 12px !important;
    letter-spacing: 0.14em !important;
}

#jukebox.section--jukebox-inline .jukebox-classics {
    position: relative !important;
    grid-column: 1 / -1 !important;
    margin-top: 34px !important;
    padding-inline: 14px 42px !important;
}

#jukebox.section--jukebox-inline .jukebox-classics__track {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

#jukebox.section--jukebox-inline .jukebox-classic-card {
    display: flex !important;
    min-height: 116px !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 12px !important;
    border-radius: 12px !important;
}

#jukebox.section--jukebox-inline .jukebox-classic-card img {
    width: 74px !important;
    height: 74px !important;
    flex: 0 0 74px !important;
    border-radius: 7px !important;
}

#jukebox.section--jukebox-inline .jukebox-classics__arrow {
    position: absolute !important;
    right: -2px !important;
    bottom: 32px !important;
}

@media (max-width: 1120px) {
    #jukebox.section--jukebox-inline .jukebox-inline-shell {
        grid-template-columns: 1fr !important;
        padding-top: 74px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock {
        top: 92px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics__track {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 760px) {
    #jukebox.section--jukebox-inline {
        padding: 28px 14px !important;
    }

    #jukebox.section--jukebox-inline h2 {
        font-size: clamp(2rem, 10vw, 2.7rem) !important;
        letter-spacing: 0.08em !important;
    }

    #jukebox.section--jukebox-inline .jukebox-top-actions {
        display: none !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell {
        grid-template-columns: 1fr !important;
        padding-top: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: 100% !important;
        margin-bottom: 14px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
        min-height: 420px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before {
        left: 8% !important;
        top: 12% !important;
        width: 84% !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        left: calc(8% + 14px) !important;
        top: calc(12% + 14px) !important;
        width: calc(84% - 28px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        left: 34% !important;
        top: 38% !important;
        width: 32% !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        min-height: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring {
        grid-template-columns: 1fr 1fr 76px 1fr 1fr !important;
        gap: 8px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button {
        height: 46px !important;
        font-size: 1.15rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button--play {
        width: 76px !important;
        height: 76px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics__track {
        display: flex !important;
        overflow-x: auto !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card {
        min-width: 240px !important;
    }
}

/* Premium fit refinement: keep the desktop console inside the visible stage. */
@media (min-width: 1121px) {
    #jukebox.section--jukebox-inline {
        scroll-margin-top: 0 !important;
        padding-top: 18px !important;
        padding-bottom: 32px !important;
    }

    #jukebox.section--jukebox-inline .section-kicker {
        margin-bottom: 5px !important;
    }

    #jukebox.section--jukebox-inline h2 {
        margin-bottom: 14px !important;
        font-size: clamp(2.15rem, 3.45vw, 3.25rem) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-console {
        padding: 24px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-top-actions {
        top: 24px !important;
        right: 26px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-top-action {
        width: 50px !important;
        height: 50px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell {
        grid-template-columns: minmax(430px, 0.94fr) minmax(480px, 1.06fr) !important;
        padding-top: 64px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock {
        top: 88px !important;
        width: min(442px, calc(100% - 54px)) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock__button {
        font-size: 0.78rem !important;
        letter-spacing: 0.08em !important;
        white-space: nowrap !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        height: 500px !important;
        min-height: 500px !important;
        max-height: 500px !important;
        overflow: hidden !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
        left: 11% !important;
        top: 15% !important;
        width: min(76%, 430px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        left: calc(11% + 14px) !important;
        top: calc(15% + 14px) !important;
        width: calc(min(76%, 430px) - 28px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        left: 36.5% !important;
        top: 39.5% !important;
        width: min(27%, 132px) !important;
    }


    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        padding: 24px 38px 20px !important;
    }

    #jukeboxDisplayTitle {
        font-size: clamp(2.4rem, 3.15vw, 3.25rem) !important;
    }

    #jukeboxDisplayMessage {
        font-size: 0.98rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-signal {
        height: 90px !important;
        margin-top: 6px !important;
        padding-bottom: 12px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring {
        grid-template-columns: 58px 88px 70px 88px 58px !important;
        gap: 14px !important;
        margin-top: 16px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button {
        height: 46px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button--wide {
        height: 50px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button--play {
        width: 70px !important;
        height: 70px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__actions {
        margin-top: 14px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__transport {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__footer {
        margin-top: 10px !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics {
        margin-top: 18px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card {
        min-height: 94px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card img {
        width: 64px !important;
        height: 64px !important;
        flex-basis: 64px !important;
    }
}

@media (max-width: 760px) {
    html.jukebox-narrow #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    html.jukebox-narrow #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
    html.jukebox-narrow #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
        display: none !important;
    }
}

@media (max-width: 760px) {
    #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
        display: block !important;
    }
}

/* Mockup match lock: desktop layout follows the premium reference image. */
@media (min-width: 1121px) {
    #jukebox.section--jukebox-inline {
        width: 100% !important;
        max-width: none !important;
        margin-right: auto !important;
        margin-left: auto !important;
        padding-top: 18px !important;
        padding-right: 26px !important;
        padding-bottom: 34px !important;
        padding-left: 26px !important;
    }

    #jukebox.section--jukebox-inline .section-kicker {
        display: none !important;
    }

    #jukebox.section--jukebox-inline h2 {
        margin-bottom: 6px !important;
        font-size: clamp(2.65rem, 3.15vw, 3.95rem) !important;
        letter-spacing: 0.18em !important;
        text-transform: uppercase !important;
    }

    #jukebox.section--jukebox-inline .section-lead {
        display: block !important;
        margin-bottom: 8px !important;
        color: #2fc2ff !important;
        font-size: 0.82rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.42em !important;
        text-transform: uppercase !important;
    }

    #jukebox.section--jukebox-inline .section-lead::before {
        content: "CL\00C1SSICOS DO REI";
    }

    #jukebox.section--jukebox-inline .section-lead {
        font-size: 0 !important;
    }

    #jukebox.section--jukebox-inline .section-lead::before {
        font-size: 0.82rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-console {
        width: 100% !important;
        max-width: none !important;
        min-height: 0 !important;
        padding: 20px 28px 26px !important;
        border-radius: 22px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-top-actions {
        top: 22px !important;
        right: 28px !important;
        gap: 22px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-top-action {
        width: 58px !important;
        height: 58px !important;
        font-size: 1.7rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell {
        grid-template-columns: minmax(0, 0.48fr) minmax(0, 0.52fr) !important;
        gap: 21px !important;
        padding-top: 54px !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock {
        top: 72px !important;
        left: 14px !important;
        width: min(400px, calc(48% - 34px)) !important;
        height: 58px !important;
        padding: 6px !important;
        border-radius: 999px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock__button {
        min-height: 44px !important;
        padding-inline: 34px !important;
        font-size: 0.9rem !important;
        letter-spacing: 0.08em !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
        #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
        height: 500px !important;
        min-height: 500px !important;
        max-height: 500px !important;
        border-radius: 24px !important;
        overflow: hidden !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        height: 500px !important;
        min-height: 500px !important;
        max-height: 500px !important;
        padding: 40px 38px 20px !important;
        border-radius: 24px !important;
        overflow: hidden !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
        left: 8.5% !important;
        top: 16% !important;
        width: min(80%, 360px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        left: calc(8.5% + 10px) !important;
        top: calc(16% + 10px) !important;
        width: calc(min(80%, 360px) - 20px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        left: 37.2% !important;
        top: 43.8% !important;
        width: min(28%, 104px) !important;
        border-width: 9px !important;
    }


    #jukebox.section--jukebox-inline .jukebox-inline-shell__toggle {
        left: 8.2% !important;
        bottom: 22.8% !important;
        min-width: 72px !important;
        min-height: 72px !important;
        padding: 0 !important;
        border-radius: 10px !important;
        font-size: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__toggle #jukeboxToggleLabel {
        display: none !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__headline {
        max-width: 100% !important;
    }

    #jukebox.section--jukebox-inline .jukebox-display__artist {
        margin-bottom: 16px !important;
        color: #19bfff !important;
        font-size: 0.95rem !important;
        letter-spacing: 0.11em !important;
    }

    #jukeboxDisplayTitle {
        margin-bottom: 12px !important;
        font-size: clamp(3.1rem, 3.65vw, 4.35rem) !important;
        letter-spacing: 0.08em !important;
        line-height: 0.94 !important;
        text-transform: uppercase !important;
    }

    #jukeboxDisplayMessage {
        max-width: 36rem !important;
        font-size: 1rem !important;
        line-height: 1.45 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-signal {
        width: 100% !important;
        height: 116px !important;
        margin-top: 14px !important;
        padding: 0 6px 22px !important;
        border-top: 0 !important;
        border-right: 0 !important;
        border-left: 0 !important;
        border-radius: 0 !important;
        background: linear-gradient(to top, rgba(0, 132, 255, 0.1), transparent 42%) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-signal span {
        width: 12px !important;
        min-width: 12px !important;
        border-radius: 2px 2px 0 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-progress {
        margin-top: 16px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring {
        grid-template-columns: 54px 88px 76px 88px 54px !important;
        gap: 14px !important;
        margin-top: 22px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button {
        height: 52px !important;
        border-radius: 30px !important;
        font-size: 1.55rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button--wide {
        height: 58px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button--play {
        width: 76px !important;
        height: 76px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__actions {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 14px !important;
        margin-top: 22px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__transport,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__footer {
        display: contents !important;
    }

    #songPrev {
        order: 1 !important;
    }

    #jukeboxSearchToggle {
        order: 2 !important;
    }

    #songNext {
        order: 3 !important;
    }

    #jukeboxSpotifyLink {
        display: none !important;
    }

    #jukebox.section--jukebox-inline .jukebox-display__button,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__search-toggle,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__link {
        min-height: 52px !important;
        border-radius: 10px !important;
        font-size: 0.86rem !important;
        letter-spacing: 0.13em !important;
    }

    #songNext {
        background: linear-gradient(#0e9eff, #075fd0 55%, #034bb2) !important;
        box-shadow: 0 0 22px rgba(0, 145, 255, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.23) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics {
        margin-top: 26px !important;
        padding-inline: 14px 42px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics h3 {
        margin-bottom: 14px !important;
        font-size: 0.88rem !important;
        letter-spacing: 0.12em !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics__track {
        display: grid !important;
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card {
        position: relative !important;
        min-width: 0 !important;
        min-height: 113px !important;
        gap: 9px !important;
        padding: 10px !important;
        overflow: hidden !important;
        text-align: left !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card img {
        width: 54px !important;
        height: 54px !important;
        flex: 0 0 54px !important;
        border-radius: 7px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card__body {
        display: block !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        width: auto !important;
        overflow: hidden !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card__body strong {
        display: block !important;
        overflow: hidden !important;
        color: #f5f8ff !important;
        font-size: 0.78rem !important;
        font-weight: 700 !important;
        letter-spacing: 0 !important;
        line-height: 1.24 !important;
        text-overflow: ellipsis !important;
        text-transform: none !important;
        white-space: nowrap !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card__body span {
        display: block !important;
        margin-top: 3px !important;
        overflow: hidden !important;
        color: #8795aa !important;
        font-size: 0.72rem !important;
        letter-spacing: 0 !important;
        line-height: 1.25 !important;
        text-overflow: ellipsis !important;
        text-transform: none !important;
        white-space: nowrap !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card__meter {
        position: absolute !important;
        right: 12px !important;
        bottom: 10px !important;
        color: #18baff !important;
        font-size: 1.35rem !important;
    }
}

/* Screen-fit lock: the premium jukebox must feel grand, but fit before O Espetaculo. */
@media (min-width: 1121px) {
    #jukebox.section--jukebox-inline {
        scroll-margin-top: 84px !important;
        padding-top: 28px !important;
        padding-bottom: 28px !important;
        margin-bottom: 64px !important;
    }

    #jukebox.section--jukebox-inline h2 {
        margin-bottom: 0 !important;
        font-size: clamp(1.95rem, 2.35vw, 2.75rem) !important;
        line-height: 0.95 !important;
    }

    #jukebox.section--jukebox-inline .section-lead::before {
        font-size: 0.74rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-console {
        padding: 14px 24px 18px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-top-actions {
        top: 18px !important;
        right: 24px !important;
        gap: 16px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-top-action {
        width: 50px !important;
        height: 50px !important;
        font-size: 1.45rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell {
        gap: 18px !important;
        padding-top: 38px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock {
        top: 52px !important;
        height: 50px !important;
        padding: 5px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock__button {
        min-height: 38px !important;
        padding-inline: 22px !important;
        font-size: 0.78rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        height: 318px !important;
        min-height: 318px !important;
        max-height: 318px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
        left: 13% !important;
        top: 18% !important;
        width: min(70%, 244px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        left: calc(13% + 8px) !important;
        top: calc(18% + 8px) !important;
        width: calc(min(70%, 244px) - 16px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        left: 38.5% !important;
        top: 44.5% !important;
        width: min(24%, 62px) !important;
        border-width: 7px !important;
    }


    #jukebox.section--jukebox-inline .jukebox-inline-shell__toggle {
        min-width: 56px !important;
        min-height: 56px !important;
        bottom: 25% !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        padding: 22px 32px 14px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-display__artist {
        margin-bottom: 8px !important;
        font-size: 0.76rem !important;
    }

    #jukeboxDisplayTitle {
        margin-bottom: 6px !important;
        font-size: clamp(1.9rem, 2.3vw, 2.45rem) !important;
    }

    #jukeboxDisplayMessage {
        max-width: 34rem !important;
        font-size: 0.78rem !important;
        line-height: 1.2 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-signal {
        height: 46px !important;
        margin-top: 6px !important;
        padding-bottom: 8px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-progress {
        margin-top: 8px !important;
        min-height: 24px !important;
        font-size: 0.9rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring {
        grid-template-columns: 42px 72px 60px 72px 42px !important;
        gap: 12px !important;
        margin-top: 9px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button {
        height: 34px !important;
        font-size: 1.2rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button--wide {
        height: 38px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button--play {
        width: 54px !important;
        height: 54px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__actions {
        gap: 12px !important;
        margin-top: 9px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-display__button,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__search-toggle {
        min-height: 34px !important;
        font-size: 0.68rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics {
        margin-top: 10px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics h3 {
        margin-bottom: 8px !important;
        font-size: 0.74rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card {
        min-height: 58px !important;
        padding: 7px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card img {
        width: 34px !important;
        height: 34px !important;
        flex-basis: 34px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics__arrow {
        bottom: 18px !important;
    }

    #espetaculo.section--immersive {
        margin-top: 42px !important;
    }
}

/* Mobile premium lock: keep the new skin usable instead of letting the LP spill away. */
@media (max-width: 760px) {
    #jukebox.section--jukebox-inline {
        margin-bottom: 42px !important;
        padding: 28px 14px 48px !important;
    }

    #jukebox.section--jukebox-inline .section-kicker {
        display: block !important;
        margin-bottom: 8px !important;
        color: #2fc2ff !important;
        letter-spacing: 0.42em !important;
    }

    #jukebox.section--jukebox-inline h2 {
        margin-bottom: 18px !important;
        font-size: clamp(2.15rem, 12vw, 3.1rem) !important;
        letter-spacing: 0.08em !important;
        line-height: 0.94 !important;
    }

    #jukebox.section--jukebox-inline .section-lead {
        display: none !important;
    }

    #jukebox.section--jukebox-inline .jukebox-console {
        padding: 14px 14px 22px !important;
        border-radius: 20px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        padding: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 0 14px !important;
        padding: 5px !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        border-radius: 999px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock__button {
        width: auto !important;
        max-width: 100% !important;
        flex: 1 1 0 !important;
        min-width: 0 !important;
        min-height: 40px !important;
        padding: 0 10px !important;
        overflow: hidden !important;
        font-size: 0.66rem !important;
        letter-spacing: 0.04em !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock__button.is-active {
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 0 10px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
    #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
        height: 310px !important;
        min-height: 310px !important;
        max-height: 310px !important;
        border-radius: 18px !important;
        overflow: hidden !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
        right: auto !important;
        bottom: auto !important;
        inset: auto !important;
        left: calc(50% - 122px) !important;
        top: 42px !important;
        width: 244px !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        transform: none !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        right: auto !important;
        bottom: auto !important;
        inset: auto !important;
        left: calc(50% - 112px) !important;
        top: 52px !important;
        width: 224px !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        transform: none !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        right: auto !important;
        bottom: auto !important;
        inset: auto !important;
        left: calc(50% - 36px) !important;
        top: 128px !important;
        width: 72px !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        transform: none !important;
        border-width: 6px !important;
    }


    #jukebox.section--jukebox-inline .jukebox-inline-shell__toggle {
        left: 18px !important;
        bottom: 18px !important;
        min-width: 56px !important;
        min-height: 56px !important;
        padding: 0 !important;
        font-size: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        padding: 24px 18px 18px !important;
        border-radius: 18px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-display__artist {
        margin-bottom: 10px !important;
        font-size: 0.74rem !important;
        letter-spacing: 0.08em !important;
    }

    #jukeboxDisplayTitle {
        margin-bottom: 8px !important;
        font-size: clamp(2.15rem, 12vw, 3rem) !important;
        letter-spacing: 0.05em !important;
        white-space: normal !important;
    }

    #jukeboxDisplayMessage {
        font-size: 0.9rem !important;
        line-height: 1.34 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-signal {
        height: 70px !important;
        margin-top: 10px !important;
        padding-bottom: 12px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-progress {
        margin-top: 10px !important;
        gap: 8px !important;
        font-size: 0.82rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring {
        grid-template-columns: 38px 54px 58px 54px 38px !important;
        gap: 7px !important;
        margin-top: 14px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button {
        height: 40px !important;
        font-size: 1rem !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button--wide {
        height: 44px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring__button--play {
        width: 58px !important;
        height: 58px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        margin-top: 14px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__transport,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__footer {
        display: contents !important;
    }

    #jukeboxSpotifyLink {
        display: none !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics {
        margin-top: 18px !important;
        padding-inline: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics__track {
        display: flex !important;
        gap: 10px !important;
        overflow-x: auto !important;
        padding-bottom: 6px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classic-card {
        min-width: 210px !important;
        min-height: 82px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-classics__arrow {
        display: none !important;
    }
}

/* Tonearm polish: SVG assembly for the approved turntable direction. */
@media (min-width: 761px) {
    #jukebox.section--jukebox-inline .jukebox-voice-dock {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: min(360px, calc(100% - 68px)) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-voice-dock__button,
    #jukebox.section--jukebox-inline .jukebox-voice-dock__button.is-active {
        width: auto !important;
        min-width: 0 !important;
        padding-inline: 10px !important;
        font-size: 0.72rem !important;
        white-space: nowrap !important;
    }


}

/* Reference-design finish: darker glass, larger LP, neon controls, same locked footprint. */
#jukebox.section--jukebox-inline {
    background:
        radial-gradient(circle at 50% 14%, rgba(0, 86, 190, 0.24), transparent 30%),
        linear-gradient(145deg, #010511 0%, #061225 48%, #01040c 100%) !important;
}

#jukebox.section--jukebox-inline h2 {
    font-family: "Cormorant Garamond", serif !important;
    font-weight: 500 !important;
    color: #fbfdff !important;
    text-shadow: 0 0 24px rgba(147, 205, 255, 0.25) !important;
}

#jukebox.section--jukebox-inline .jukebox-console {
    border-color: rgba(69, 124, 199, 0.42) !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(0, 91, 190, 0.22), transparent 28%),
        radial-gradient(circle at 10% 70%, rgba(0, 150, 255, 0.1), transparent 30%),
        linear-gradient(145deg, rgba(1, 5, 15, 0.98), rgba(4, 12, 27, 0.99) 56%, rgba(1, 4, 12, 1)) !important;
    box-shadow:
        0 28px 80px rgba(0, 0, 0, 0.38),
        0 0 82px rgba(0, 110, 255, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.07) !important;
}

#jukebox.section--jukebox-inline .jukebox-top-action {
    border-color: rgba(82, 137, 211, 0.42) !important;
    background: radial-gradient(circle at 50% 38%, rgba(23, 43, 76, 0.9), rgba(3, 9, 21, 0.96) 68%) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 12px 28px rgba(0, 0, 0, 0.24) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record,
#jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
#jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record,
#jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
    border-color: rgba(70, 126, 193, 0.34) !important;
    background:
        radial-gradient(circle at 24% 19%, rgba(18, 111, 210, 0.16), transparent 31%),
        linear-gradient(145deg, rgba(8, 16, 31, 0.97), rgba(1, 5, 14, 0.99) 72%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.055),
        inset 0 0 44px rgba(0, 0, 0, 0.28),
        0 20px 46px rgba(0, 0, 0, 0.3) !important;
}

#jukebox.section--jukebox-inline .jukebox-voice-dock {
    border-color: rgba(76, 135, 207, 0.38) !important;
    background: linear-gradient(180deg, rgba(8, 15, 30, 0.96), rgba(2, 6, 15, 0.96)) !important;
}

#jukebox.section--jukebox-inline .jukebox-voice-dock__button.is-active {
    background: linear-gradient(180deg, #23b9ff 0%, #0875df 54%, #0048b8 100%) !important;
    box-shadow:
        0 0 28px rgba(0, 145, 255, 0.58),
        inset 0 1px 0 rgba(255, 255, 255, 0.36) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
#jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
    background:
        radial-gradient(circle at 50% 50%, transparent 0 16%, rgba(0, 0, 0, 0.36) 16.6% 17.3%, transparent 18%),
        radial-gradient(ellipse at 31% 23%, rgba(255, 255, 255, 0.24), transparent 16%),
        radial-gradient(ellipse at 70% 78%, rgba(255, 255, 255, 0.08), transparent 18%),
        conic-gradient(from 24deg, rgba(255, 255, 255, 0.16) 0 8deg, transparent 8deg 83deg, rgba(255, 255, 255, 0.07) 83deg 96deg, transparent 96deg 202deg, rgba(12, 124, 255, 0.14) 202deg 214deg, transparent 214deg 360deg),
        repeating-radial-gradient(circle, #1d2029 0 1px, #05060a 2px 8px, #272a34 9px 10px, #03050a 11px 16px) !important;
    box-shadow:
        inset 0 0 90px rgba(0, 0, 0, 0.95),
        inset 0 0 18px rgba(255, 255, 255, 0.045),
        0 22px 46px rgba(0, 0, 0, 0.72) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
    border-color: rgba(230, 239, 255, 0.5) !important;
    box-shadow:
        inset 0 0 0 1px rgba(54, 120, 190, 0.18),
        0 0 18px rgba(90, 166, 255, 0.08) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    border-color: #061b35 !important;
    box-shadow:
        0 0 0 4px rgba(20, 111, 189, 0.24),
        0 0 30px rgba(0, 145, 255, 0.34),
        inset 0 0 10px rgba(0, 0, 0, 0.42) !important;
}

#jukebox.section--jukebox-inline .jukebox-inline-shell__toggle {
    border-radius: 12px !important;
    background:
        radial-gradient(circle at 50% 50%, #28c5ff 0 7%, #07172a 22%, #010409 72%),
        linear-gradient(180deg, #0d243f, #030712) !important;
}

#jukebox.section--jukebox-inline .jukebox-display__artist {
    color: #2ec3ff !important;
    font-weight: 800 !important;
    letter-spacing: 0.14em !important;
}

#jukeboxDisplayTitle {
    font-family: "Cormorant Garamond", serif !important;
    color: #fbfdff !important;
    font-weight: 600 !important;
    text-shadow: 0 0 24px rgba(255, 255, 255, 0.12) !important;
}

#jukeboxDisplayMessage {
    color: #b4bdcb !important;
}

#jukebox.section--jukebox-inline .jukebox-signal {
    align-items: end !important;
    background:
        linear-gradient(to top, rgba(0, 135, 255, 0.14), rgba(0, 135, 255, 0.02) 48%, transparent 74%) !important;
}

#jukebox.section--jukebox-inline .jukebox-signal span {
    background:
        repeating-linear-gradient(to top, #087fce 0 5px, transparent 5px 10px),
        linear-gradient(to top, #064f91, #00a7ff 60%, #72e6ff) !important;
    filter: drop-shadow(0 0 8px rgba(0, 174, 255, 0.74)) !important;
}

#jukebox.section--jukebox-inline .jukebox-progress__track {
    height: 5px !important;
    border-radius: 999px !important;
    background: rgba(16, 28, 48, 0.96) !important;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.75) !important;
}

#jukebox.section--jukebox-inline .jukebox-progress__fill {
    background: linear-gradient(90deg, #17b7ff, #18d5ff) !important;
    box-shadow: 0 0 16px rgba(0, 190, 255, 0.9) !important;
}

#jukebox.section--jukebox-inline .jukebox-control-ring__button,
#jukebox.section--jukebox-inline .jukebox-display__button,
#jukebox.section--jukebox-inline .jukebox-inline-shell__search-toggle {
    border-color: rgba(62, 111, 174, 0.44) !important;
    background: linear-gradient(180deg, rgba(14, 25, 45, 0.95), rgba(4, 10, 22, 0.98)) !important;
    color: #f4f8ff !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 12px 28px rgba(0, 0, 0, 0.22) !important;
}

#jukebox.section--jukebox-inline .jukebox-control-ring__button--play,
#jukebox.section--jukebox-inline #songNext {
    border-color: rgba(120, 208, 255, 0.54) !important;
    background: linear-gradient(180deg, #23b9ff 0%, #0874df 52%, #0047b8 100%) !important;
    box-shadow:
        0 0 34px rgba(0, 145, 255, 0.72),
        inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
}

#jukebox.section--jukebox-inline .jukebox-classics h3 {
    color: #28c5ff !important;
    font-weight: 900 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
}

#jukebox.section--jukebox-inline .jukebox-classic-card {
    border-color: rgba(58, 103, 163, 0.35) !important;
    background: linear-gradient(180deg, rgba(7, 16, 31, 0.95), rgba(3, 8, 18, 0.98)) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045) !important;
}

#jukebox.section--jukebox-inline .jukebox-classic-card.is-active,
#jukebox.section--jukebox-inline .jukebox-classic-card:hover,
#jukebox.section--jukebox-inline .jukebox-classic-card:focus-visible {
    border-color: rgba(35, 185, 255, 0.88) !important;
    box-shadow: 0 0 24px rgba(0, 145, 255, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

@media (min-width: 1121px) {
    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
        left: 7.4% !important;
        top: 13.5% !important;
        width: min(82%, 292px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        left: calc(7.4% + 9px) !important;
        top: calc(13.5% + 9px) !important;
        width: calc(min(82%, 292px) - 18px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        left: 36.4% !important;
        top: 40.8% !important;
        width: min(27%, 78px) !important;
    }


    #jukebox.section--jukebox-inline .jukebox-signal {
        padding-inline: 18px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(1) { height: 48% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(2) { height: 72% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(3) { height: 56% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(4) { height: 83% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(5) { height: 36% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(6) { height: 55% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(7) { height: 28% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(8) { height: 63% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(9) { height: 44% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(10) { height: 76% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(11) { height: 42% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(12) { height: 66% !important; }
}

/* Final fit correction after visual pass: no LP clipping, fuller reference equalizer. */
@media (min-width: 1121px) {
    #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
    #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
        left: 8.8% !important;
        top: 14.8% !important;
        width: min(78%, 270px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        left: calc(8.8% + 9px) !important;
        top: calc(14.8% + 9px) !important;
        width: calc(min(78%, 270px) - 18px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        left: 37.4% !important;
        top: 41.7% !important;
        width: min(26%, 70px) !important;
    }

    #jukebox.section--jukebox-inline .jukebox-signal {
        display: grid !important;
        grid-template-columns: repeat(24, minmax(0, 1fr)) !important;
        align-items: end !important;
        height: 78px !important;
        margin-top: 2px !important;
        padding: 0 10px 12px !important;
        gap: 8px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-signal span {
        width: 8px !important;
        min-width: 8px !important;
        opacity: 0.98 !important;
    }

    #jukebox.section--jukebox-inline .jukebox-progress {
        margin-top: 4px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-control-ring {
        margin-top: 8px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-inline-shell__actions {
        margin-top: 7px !important;
    }

    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(13) { height: 52% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(14) { height: 84% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(15) { height: 44% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(16) { height: 62% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(17) { height: 48% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(18) { height: 71% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(19) { height: 39% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(20) { height: 67% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(21) { height: 89% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(22) { height: 74% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(23) { height: 55% !important; }
    #jukebox.section--jukebox-inline .jukebox-signal span:nth-child(24) { height: 64% !important; }
}

/* Width override requested: match the other page sections, without viewport-height shrink. */
#jukebox.jukebox-reference {
    left: 50% !important;
    width: min(calc(100vw - 160px), 1160px) !important;
    max-width: min(calc(100vw - 160px), 1160px) !important;
    transform: translateX(-50%) !important;
}

main.container:has(#jukebox.jukebox-reference) {
    overflow: visible !important;
}

#jukebox.jukebox-reference .jukebox-reference__art {
    max-height: none !important;
}

@media (max-width: 760px) {
    #jukebox.jukebox-reference {
        width: calc(100vw - 20px) !important;
        max-width: calc(100vw - 20px) !important;
    }
}

/* Final reference-size lock: prevent the image skin from becoming oversized. */
#jukebox.jukebox-reference {
    left: auto !important;
    width: min(100%, 1080px) !important;
    max-width: 1080px !important;
    margin: 20px auto 42px !important;
    transform: none !important;
    overflow: visible !important;
    scroll-margin-top: calc(var(--site-header-height, 92px) + 34px) !important;
}

#jukebox.jukebox-reference .jukebox-reference__art {
    width: 100% !important;
    max-height: min(66vh, 720px) !important;
    aspect-ratio: 1536 / 1024 !important;
    background-size: contain !important;
}

@media (max-width: 760px) {
    #jukebox.jukebox-reference {
        width: calc(100vw - 24px) !important;
        max-width: calc(100vw - 24px) !important;
        margin-top: 18px !important;
    }

    #jukebox.jukebox-reference .jukebox-reference__art {
        max-height: none !important;
    }
}

/* Absolute final lock for the reference-art jukebox.
   Keep it section-sized: no full-viewport bleed, no oversized crop. */
body main.container #jukebox.jukebox-reference {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    width: min(calc(100vw - 48px), 980px) !important;
    min-width: 0 !important;
    max-width: 980px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 18px auto 40px !important;
    padding: 0 !important;
    transform: none !important;
    overflow: visible !important;
}

body main.container #jukebox.jukebox-reference .jukebox-reference__art {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 1536 / 1024 !important;
    background-image: url("../imagens/jukebox/jukebox-do-rei-reference.jpeg") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
}

body main.container #jukebox.jukebox-reference .jukebox-reference__hotspots {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

body main.container #jukebox.jukebox-reference #jukeboxPlayerShell,
body main.container #jukebox.jukebox-reference #spotifyEmbedHost,
body main.container #jukebox.jukebox-reference #spotifyEmbedHost iframe,
body main.container #jukebox.jukebox-reference #jukeboxAudioPlayer {
    position: fixed !important;
    left: -10000px !important;
    top: -10000px !important;
    width: 1px !important;
    min-width: 1px !important;
    max-width: 1px !important;
    height: 1px !important;
    min-height: 1px !important;
    max-height: 1px !important;
    opacity: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 760px) {
    body main.container #jukebox.jukebox-reference {
        width: calc(100vw - 20px) !important;
        max-width: calc(100vw - 20px) !important;
        margin-top: 16px !important;
    }
}

/* Hybrid coded jukebox: return to real HTML/CSS, with richer turntable details. */
body main.container #jukebox.section--jukebox-inline {
    width: min(calc(100vw - 48px), 1120px) !important;
    max-width: 1120px !important;
    margin: 28px auto 52px !important;
    padding: 18px 24px 30px !important;
    border-radius: 0 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-console {
    padding: 18px 24px 24px !important;
    border-radius: 18px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell {
    grid-template-columns: minmax(0, 0.48fr) minmax(0, 0.52fr) !important;
    gap: 18px !important;
    padding-top: 50px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
body main.container #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
body main.container #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
    height: 420px !important;
    min-height: 420px !important;
    max-height: 420px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-voice-dock {
    top: 64px !important;
    left: 12px !important;
    width: min(330px, calc(48% - 24px)) !important;
    height: 48px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
    left: 11.2% !important;
    top: 16.8% !important;
    width: min(76%, 318px) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
    left: calc(11.2% + 10px) !important;
    top: calc(16.8% + 10px) !important;
    width: calc(min(76%, 318px) - 20px) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    left: 38.4% !important;
    top: 42.7% !important;
    width: min(25%, 88px) !important;
}


body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record {
    overflow: hidden !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
    left: 14.5% !important;
    top: 15.6% !important;
    width: min(70.5%, 318px) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
    left: calc(14.5% + 10px) !important;
    top: calc(15.6% + 10px) !important;
    width: calc(min(70.5%, 318px) - 20px) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    left: calc(14.5% + (min(70.5%, 318px) / 2)) !important;
    top: calc(15.6% + (min(70.5%, 318px) / 2)) !important;
    width: 76px !important;
    height: 76px !important;
    min-width: 76px !important;
    min-height: 76px !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 50% !important;
    padding: 7px !important;
    border: 1px solid rgba(0, 169, 255, 0.36) !important;
    background:
        radial-gradient(circle at 50% 50%, rgba(0, 183, 255, 0.22) 0 45%, rgba(0, 119, 210, 0.16) 46% 60%, rgba(0, 0, 0, 0.62) 61% 100%) !important;
    box-shadow:
        0 0 0 8px rgba(0, 128, 255, 0.12),
        0 0 25px rgba(0, 170, 255, 0.22),
        inset 0 0 18px rgba(0, 0, 0, 0.72) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::after {
    content: none !important;
    display: none !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    transform: none !important;
    opacity: 1 !important;
}


body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__toggle {
    left: 5.8% !important;
    bottom: 24.4% !important;
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    min-height: 62px !important;
    border-radius: 12px !important;
    z-index: 11 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--top {
    left: 6.2% !important;
    top: 18.1% !important;
    width: 29px !important;
    height: 29px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed {
    left: 7.45% !important;
    bottom: 14.2% !important;
    width: 47px !important;
    height: 47px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::before,
body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::after {
    left: calc(100% + 13px) !important;
    font-size: 0.78rem !important;
    line-height: 1 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::before {
    top: 9px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::after {
    top: 31px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--volume {
    right: 7.6% !important;
    bottom: 13.4% !important;
    width: 56px !important;
    height: 56px !important;
    z-index: 11 !important;
}

@media (max-width: 760px) {
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell {
        display: block !important;
        padding-top: 0 !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-voice-dock {
        position: relative !important;
        inset: auto !important;
        width: 100% !important;
        height: 36px !important;
        margin: 0 0 12px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
        display: flex !important;
        flex-direction: column !important;
        gap: 14px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    body main.container #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
    body main.container #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
        order: 1 !important;
        height: 320px !important;
        min-height: 320px !important;
        max-height: 320px !important;
        width: 100% !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        order: 2 !important;
        height: auto !important;
        min-height: 390px !important;
        max-height: none !important;
        padding: 28px 14px 16px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
        left: 50% !important;
        top: 50% !important;
        width: 250px !important;
        transform: translate(-50%, -50%) !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        left: 50% !important;
        top: 50% !important;
        width: 232px !important;
        transform: translate(-50%, -50%) !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        left: 50% !important;
        top: 50% !important;
        width: 82px !important;
        height: 82px !important;
        min-width: 82px !important;
        min-height: 82px !important;
        max-width: 82px !important;
        max-height: 82px !important;
        padding: 3px !important;
        transform: translate(-50%, -50%) !important;
    }

}

/* Absolute final mobile jukebox lock. */
@media (max-width: 760px) {
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell {
        display: block !important;
        padding-top: 0 !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-voice-dock {
        position: relative !important;
        inset: auto !important;
        width: 100% !important;
        height: 36px !important;
        margin: 0 0 12px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__stage {
        display: flex !important;
        flex-direction: column !important;
        gap: 14px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record {
        order: 1 !important;
        height: 320px !important;
        min-height: 320px !important;
        max-height: 320px !important;
        width: 100% !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
        order: 2 !important;
        height: auto !important;
        min-height: 390px !important;
        max-height: none !important;
        padding: 28px 14px 16px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
        left: 50% !important;
        top: 50% !important;
        width: 250px !important;
        transform: translate(-50%, -50%) !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        left: 50% !important;
        top: 50% !important;
        width: 232px !important;
        transform: translate(-50%, -50%) !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        left: 50% !important;
        top: 50% !important;
        width: 82px !important;
        height: 82px !important;
        min-width: 82px !important;
        min-height: 82px !important;
        max-width: 82px !important;
        max-height: 82px !important;
        padding: 3px !important;
        transform: translate(-50%, -50%) !important;
    }


    body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--top {
        left: 7% !important;
        top: 17% !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--volume {
        right: 7% !important;
        bottom: 10% !important;
        width: 48px !important;
        height: 48px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-display strong {
        font-size: clamp(2rem, 13vw, 3.1rem) !important;
        line-height: 0.9 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
}

/* Local HTML enforcement: larger spinning record label. Keep as the last Jukebox block. */
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    left: calc(14.5% + (min(70.5%, 318px) / 2)) !important;
    top: calc(15.6% + (min(70.5%, 318px) / 2)) !important;
    width: 104px !important;
    height: 104px !important;
    min-width: 104px !important;
    min-height: 104px !important;
    max-width: 104px !important;
    max-height: 104px !important;
    aspect-ratio: 1 / 1 !important;
    transform: translate(-50%, -50%) !important;
    rotate: 0deg !important;
    transform-origin: 50% 50% !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    padding: 10px !important;
    border: 1px solid rgba(69, 189, 255, 0.58) !important;
    background:
        radial-gradient(circle at 50% 50%, rgba(0, 13, 30, 0.34) 0 34%, rgba(0, 158, 255, 0.24) 35% 48%, rgba(1, 9, 20, 0.94) 49% 100%) !important;
    box-shadow:
        0 0 0 7px rgba(0, 114, 255, 0.13),
        0 0 0 16px rgba(0, 144, 255, 0.055),
        0 0 34px rgba(0, 174, 255, 0.3),
        inset 0 0 22px rgba(0, 0, 0, 0.78) !important;
    z-index: 7 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    pointer-events: none !important;
    border-radius: 50% !important;
    z-index: 2 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before {
    inset: 8px !important;
    border: 1px solid rgba(198, 235, 255, 0.24) !important;
    box-shadow: inset 0 0 14px rgba(0, 0, 0, 0.62) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::after {
    left: 50% !important;
    top: 50% !important;
    width: 11px !important;
    height: 11px !important;
    transform: translate(-50%, -50%) !important;
    background: radial-gradient(circle, #eef8ff 0 22%, #72829a 24% 55%, #101827 56% 100%) !important;
    box-shadow: 0 0 11px rgba(0, 184, 255, 0.36) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    transform: none !important;
    opacity: 1 !important;
}

body main.container #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover,
body main.container #jukebox.is-changing.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    animation: jukeboxDiscSpin 6s linear infinite !important;
}

@keyframes jukeboxDiscSpin {
    to {
        rotate: 360deg;
    }
}

@media (max-width: 760px) {
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        width: 78px !important;
        height: 78px !important;
        min-width: 78px !important;
        min-height: 78px !important;
        max-width: 78px !important;
        max-height: 78px !important;
        padding: 8px !important;
    }
}

/* Hard final label sizing for local file previews. */
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    width: 126px !important;
    height: 126px !important;
    min-width: 126px !important;
    min-height: 126px !important;
    max-width: 126px !important;
    max-height: 126px !important;
    padding: 8px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before {
    inset: 7px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

@media (max-width: 760px) {
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        width: 88px !important;
        height: 88px !important;
        min-width: 88px !important;
        min-height: 88px !important;
        max-width: 88px !important;
        max-height: 88px !important;
        padding: 6px !important;
    }
}

/* Record label final visual correction. */
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    left: calc(14.5% + (min(70.5%, 318px) / 2) + 2px) !important;
    top: calc(15.6% + (min(70.5%, 318px) / 2) + 8px) !important;
    width: 114px !important;
    height: 114px !important;
    min-width: 114px !important;
    min-height: 114px !important;
    max-width: 114px !important;
    max-height: 114px !important;
    padding: 4px !important;
    border: 1px solid rgba(64, 190, 255, 0.68) !important;
    background:
        radial-gradient(circle at 50% 50%, rgba(8, 19, 35, 0.22) 0 66%, rgba(0, 162, 255, 0.42) 67% 75%, rgba(3, 9, 20, 0.96) 76% 100%) !important;
    box-shadow:
        0 0 0 5px rgba(0, 126, 255, 0.12),
        0 0 18px rgba(0, 179, 255, 0.24),
        inset 0 0 8px rgba(0, 0, 0, 0.42) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    inset: 4px !important;
    border-radius: 50% !important;
    border: 1px solid rgba(219, 245, 255, 0.22) !important;
    pointer-events: none !important;
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.46) !important;
    z-index: 2 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::after {
    content: none !important;
    display: none !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover img {
    object-position: 50% 50% !important;
}

/* Jukebox functional polish: fixed search tray, real carousel and quieter voice controls. */
body main.container #jukebox.section--jukebox-inline .jukebox-console {
    position: relative !important;
    overflow: hidden !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-voice-dock {
    width: min(290px, calc(48% - 24px)) !important;
    height: 38px !important;
    padding: 3px !important;
    border-radius: 999px !important;
    background: rgba(3, 10, 22, 0.76) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-voice-dock__button {
    min-height: 30px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    font-size: 0.67rem !important;
    letter-spacing: 0.08em !important;
    box-shadow: none !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-voice-dock__button.is-active {
    background: linear-gradient(180deg, rgba(0, 144, 255, 0.82), rgba(0, 82, 176, 0.82)) !important;
    box-shadow: 0 0 16px rgba(0, 154, 255, 0.22) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-classics {
    position: relative !important;
    overflow: visible !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-classics__track {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(158px, 1fr) !important;
    grid-template-columns: none !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-padding-inline: 8px 74px !important;
    padding: 4px 70px 8px 4px !important;
    scrollbar-width: none !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-classics__track::-webkit-scrollbar {
    display: none !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-classic-card {
    scroll-snap-align: start !important;
    width: 100% !important;
    min-width: 158px !important;
    max-width: none !important;
    overflow: hidden !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-classic-card__body {
    min-width: 0 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-classic-card__body strong,
body main.container #jukebox.section--jukebox-inline .jukebox-classic-card__body span {
    display: block !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-classics__arrow {
    z-index: 24 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__discovery {
    position: absolute !important;
    left: 24px !important;
    right: 24px !important;
    bottom: 20px !important;
    z-index: 22 !important;
    min-height: 0 !important;
    height: 184px !important;
    display: grid !important;
    grid-template-columns: minmax(150px, 210px) minmax(0, 1fr) !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    gap: 12px 16px !important;
    padding: 10px !important;
    border-radius: 14px !important;
    background: rgba(2, 8, 18, 0.96) !important;
    border: 1px solid rgba(60, 139, 218, 0.34) !important;
    box-shadow: 0 -16px 40px rgba(0, 0, 0, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
    overflow: hidden !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__discovery[hidden] {
    display: none !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__discovery > .jukebox-search__controls:first-child {
    grid-row: 1 / span 2 !important;
    grid-column: 1 !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 8px !important;
    border-radius: 12px !important;
    background: rgba(5, 18, 35, 0.74) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__mode {
    min-height: 32px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    font-size: 0.68rem !important;
    letter-spacing: 0.1em !important;
    white-space: nowrap !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-search__reset[data-jukebox-voice] {
    min-height: 32px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    font-size: 0.68rem !important;
    letter-spacing: 0.1em !important;
    white-space: nowrap !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-search {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-search__field {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 128px !important;
    gap: 10px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-search__field input {
    min-width: 0 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-search .jukebox-search__controls {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    min-height: 28px !important;
    margin-top: 8px !important;
    overflow: hidden !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-search__meta {
    display: block !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body main.container #jukebox.section--jukebox-inline #jukeboxSearchReset {
    flex: 0 0 auto !important;
    min-width: 112px !important;
    white-space: nowrap !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-search-results {
    grid-column: 2 !important;
    grid-row: 2 !important;
    min-height: 0 !important;
    max-height: 72px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(180px, 220px) !important;
    gap: 10px !important;
    padding: 2px 2px 8px !important;
    scrollbar-width: none !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-search-results[hidden] {
    display: none !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-search-results::-webkit-scrollbar {
    display: none !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-search-result {
    min-width: 0 !important;
    height: 62px !important;
    overflow: hidden !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-top-action.is-active,
body main.container #jukebox.section--jukebox-inline .jukebox-control-ring__button.is-active {
    color: #7fe4ff !important;
    border-color: rgba(48, 188, 255, 0.72) !important;
    box-shadow: 0 0 18px rgba(0, 174, 255, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-top-action.is-muted {
    color: #d7e6f4 !important;
    opacity: 0.78 !important;
}

@media (max-width: 760px) {
    body main.container #jukebox.section--jukebox-inline .jukebox-voice-dock {
        width: calc(100% - 28px) !important;
        height: 36px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-classics__track {
        grid-auto-columns: minmax(172px, 74vw) !important;
        padding-right: 58px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__discovery {
        left: 12px !important;
        right: 12px !important;
        bottom: 14px !important;
        height: 236px !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto auto minmax(0, 1fr) !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__discovery > .jukebox-search__controls:first-child,
    body main.container #jukebox.section--jukebox-inline .jukebox-search,
    body main.container #jukebox.section--jukebox-inline .jukebox-search-results {
        grid-column: 1 !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__discovery > .jukebox-search__controls:first-child {
        grid-row: 1 !important;
        flex-direction: row !important;
        justify-content: flex-start !important;
        overflow-x: auto !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-search {
        grid-row: 2 !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-search-results {
        grid-row: 3 !important;
        max-height: 72px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-search__field {
        grid-template-columns: minmax(0, 1fr) 94px !important;
    }
}


@media (max-width: 760px) {

}

/* Jukebox visual polish: spinning center label and refined deck finish. */
body main.container #jukebox.section--jukebox-inline .jukebox-console {
    background:
        radial-gradient(circle at 50% 4%, rgba(0, 144, 255, 0.2), transparent 32%),
        linear-gradient(180deg, rgba(4, 17, 37, 0.96), rgba(1, 7, 18, 0.98)) !important;
    box-shadow:
        inset 0 0 0 1px rgba(65, 133, 218, 0.4),
        inset 0 26px 80px rgba(0, 129, 255, 0.07),
        0 26px 58px rgba(0, 0, 0, 0.34) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__meta {
    background:
        radial-gradient(circle at 50% 22%, rgba(24, 99, 173, 0.18), transparent 34%),
        linear-gradient(145deg, rgba(5, 18, 39, 0.9), rgba(1, 6, 15, 0.98) 62%) !important;
    box-shadow:
        inset 0 0 0 1px rgba(73, 142, 219, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.04),
        0 18px 36px rgba(0, 0, 0, 0.34) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
    left: 14.5% !important;
    top: 15.6% !important;
    width: min(70.5%, 318px) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
    left: calc(14.5% + 10px) !important;
    top: calc(15.6% + 10px) !important;
    width: calc(min(70.5%, 318px) - 20px) !important;
    opacity: 0.74 !important;
    mix-blend-mode: screen !important;
}

body main.container #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__vinyl,
body main.container #jukebox.is-changing.section--jukebox-inline .jukebox-inline-shell__vinyl {
    animation: jukeboxDiscSpin 6s linear infinite !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    left: calc(14.5% + (min(70.5%, 318px) / 2)) !important;
    top: calc(15.6% + (min(70.5%, 318px) / 2)) !important;
    width: 78px !important;
    height: 78px !important;
    min-width: 78px !important;
    min-height: 78px !important;
    aspect-ratio: 1 / 1 !important;
    transform: translate(-50%, -50%) !important;
    rotate: 0deg;
    transform-origin: 50% 50% !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    padding: 8px !important;
    border: 1px solid rgba(68, 184, 255, 0.5) !important;
    background:
        radial-gradient(circle at 50% 50%, rgba(4, 25, 52, 0.35) 0 39%, rgba(0, 166, 255, 0.26) 40% 48%, rgba(2, 12, 25, 0.92) 49% 100%) !important;
    box-shadow:
        0 0 0 8px rgba(0, 124, 255, 0.12),
        0 0 0 15px rgba(0, 160, 255, 0.045),
        0 0 28px rgba(0, 176, 255, 0.26),
        inset 0 0 18px rgba(0, 0, 0, 0.75) !important;
    z-index: 6 !important;
}

body main.container #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover,
body main.container #jukebox.is-changing.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    animation: jukeboxDiscSpin 6s linear infinite !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    pointer-events: none !important;
    border-radius: 50% !important;
    z-index: 2 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before {
    inset: 6px !important;
    border: 1px solid rgba(194, 235, 255, 0.24) !important;
    box-shadow: inset 0 0 12px rgba(0, 0, 0, 0.56) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::after {
    left: 50% !important;
    top: 50% !important;
    width: 9px !important;
    height: 9px !important;
    transform: translate(-50%, -50%) !important;
    background: radial-gradient(circle, #eef8ff 0 22%, #6d7d96 24% 54%, #101827 56% 100%) !important;
    box-shadow: 0 0 10px rgba(0, 184, 255, 0.34) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    transform: none !important;
    opacity: 0.98 !important;
    filter: saturate(1.08) contrast(1.05) !important;
}


body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__toggle,
body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed {
    display: none !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--top {
    background:
        radial-gradient(circle at 34% 26%, rgba(255, 255, 255, 0.34), transparent 18%),
        radial-gradient(circle, #24304a 0 34%, #080d18 64%, #02050b 100%) !important;
    box-shadow:
        inset 0 0 10px rgba(255, 255, 255, 0.1),
        0 0 18px rgba(0, 153, 255, 0.12),
        0 8px 18px rgba(0, 0, 0, 0.62) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--volume {
    right: 7.6% !important;
    bottom: 13.4% !important;
    background:
        radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.24), transparent 16%),
        radial-gradient(circle, #22304b 0 36%, #07111f 66%, #02050d 100%) !important;
    box-shadow:
        0 0 0 1px rgba(42, 151, 242, 0.34),
        0 0 26px rgba(0, 149, 255, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.13) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-control-ring__button,
body main.container #jukebox.section--jukebox-inline .jukebox-display__button,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__search-toggle {
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 10px 24px rgba(0, 0, 0, 0.26) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-classic-card {
    background:
        linear-gradient(145deg, rgba(8, 20, 40, 0.92), rgba(3, 9, 20, 0.96)) !important;
    box-shadow:
        inset 0 0 0 1px rgba(75, 142, 219, 0.22),
        0 12px 22px rgba(0, 0, 0, 0.22) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-classic-card.is-active,
body main.container #jukebox.section--jukebox-inline .jukebox-classic-card:hover,
body main.container #jukebox.section--jukebox-inline .jukebox-classic-card:focus-visible {
    box-shadow:
        inset 0 0 0 1px rgba(30, 190, 255, 0.9),
        0 0 18px rgba(0, 170, 255, 0.26),
        0 12px 22px rgba(0, 0, 0, 0.24) !important;
}

@keyframes jukeboxDiscSpin {
    to {
        rotate: 360deg;
    }
}

@media (max-width: 760px) {
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        width: 64px !important;
        height: 64px !important;
        min-width: 64px !important;
        min-height: 64px !important;
        padding: 6px !important;
    }

}


body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__toggle,
body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed {
    display: none !important;
}

@media (max-width: 760px) {

}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record {
    overflow: hidden !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
    left: 14.5% !important;
    top: 15.6% !important;
    width: min(70.5%, 318px) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
    left: calc(14.5% + 10px) !important;
    top: calc(15.6% + 10px) !important;
    width: calc(min(70.5%, 318px) - 20px) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    left: calc(14.5% + (min(70.5%, 318px) / 2)) !important;
    top: calc(15.6% + (min(70.5%, 318px) / 2)) !important;
    width: 76px !important;
    height: 76px !important;
    min-width: 76px !important;
    min-height: 76px !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 50% !important;
    padding: 7px !important;
    border: 1px solid rgba(0, 169, 255, 0.36) !important;
    background:
        radial-gradient(circle at 50% 50%, rgba(0, 183, 255, 0.22) 0 45%, rgba(0, 119, 210, 0.16) 46% 60%, rgba(0, 0, 0, 0.62) 61% 100%) !important;
    box-shadow:
        0 0 0 8px rgba(0, 128, 255, 0.12),
        0 0 25px rgba(0, 170, 255, 0.22),
        inset 0 0 18px rgba(0, 0, 0, 0.72) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::after {
    content: none !important;
    display: none !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    transform: none !important;
    opacity: 1 !important;
}


body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__toggle {
    left: 5.8% !important;
    bottom: 24.4% !important;
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    min-height: 62px !important;
    border-radius: 12px !important;
    z-index: 11 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--top {
    left: 6.2% !important;
    top: 18.1% !important;
    width: 29px !important;
    height: 29px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed {
    left: 7.45% !important;
    bottom: 14.2% !important;
    width: 47px !important;
    height: 47px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::before,
body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::after {
    left: calc(100% + 13px) !important;
    font-size: 0.78rem !important;
    line-height: 1 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::before {
    top: 9px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::after {
    top: 31px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--volume {
    right: 7.6% !important;
    bottom: 13.4% !important;
    width: 56px !important;
    height: 56px !important;
    z-index: 11 !important;
}

@media (max-width: 760px) {
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
        left: 15% !important;
        top: 16% !important;
        width: min(70%, 238px) !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        left: calc(15% + 8px) !important;
        top: calc(16% + 8px) !important;
        width: calc(min(70%, 238px) - 16px) !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        left: calc(15% + (min(70%, 238px) / 2)) !important;
        top: calc(16% + (min(70%, 238px) / 2)) !important;
        width: 62px !important;
        height: 62px !important;
        min-width: 62px !important;
        min-height: 62px !important;
        padding: 6px !important;
    }

}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail {
    position: absolute;
    z-index: 9;
    pointer-events: none;
    display: block;
    border-radius: 50%;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--top {
    left: 5.3%;
    top: 17.2%;
    width: 28px;
    height: 28px;
    background:
        radial-gradient(circle at 35% 30%, rgba(255, 255, 255, 0.28), transparent 18%),
        radial-gradient(circle, #192237 0 36%, #080d18 62%, #02050b 100%);
    box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.08), 0 8px 18px rgba(0, 0, 0, 0.6);
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed {
    left: 5.8%;
    bottom: 12.5%;
    width: 50px;
    height: 50px;
    border: 1px solid rgba(74, 138, 211, 0.44);
    background:
        radial-gradient(circle at 50% 50%, #1cc8ff 0 7%, #071a2c 18%, #030710 68%),
        linear-gradient(180deg, #0b1d35, #02050d);
    box-shadow: 0 0 22px rgba(0, 145, 255, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::before,
body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::after {
    position: absolute;
    left: calc(100% + 14px);
    color: #aeb9cb;
    font-size: 0.78rem;
    font-weight: 700;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::before {
    content: "33";
    top: 10px;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::after {
    content: "45";
    top: 36px;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--volume {
    right: 5.8%;
    bottom: 10.8%;
    width: 56px;
    height: 56px;
    border: 1px solid rgba(87, 154, 231, 0.48);
    background:
        radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.22), transparent 16%),
        radial-gradient(circle, #1a263d 0 38%, #07101f 66%, #02050d 100%);
    box-shadow: 0 0 24px rgba(0, 145, 255, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--volume::before {
    content: "VOLUME";
    position: absolute;
    left: 50%;
    bottom: calc(100% + 7px);
    transform: translateX(-50%);
    color: #c7d1df;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--volume i {
    position: absolute;
    inset: -8px;
    border-radius: 50%;
    border-top: 4px solid #12b8ff;
    border-left: 4px solid #075fd0;
    border-right: 4px solid transparent;
    border-bottom: 4px solid transparent;
    transform: rotate(-18deg);
}


body main.container #jukebox.section--jukebox-inline .jukebox-panel-heart {
    position: absolute;
    top: 18px;
    right: 22px;
    width: 36px;
    height: 36px;
    border: 1px solid rgba(84, 137, 205, 0.32);
    border-radius: 50%;
    background: rgba(5, 12, 25, 0.45);
    color: #eef5ff;
    font-size: 1.2rem;
    cursor: pointer;
}

body main.container #jukebox.section--jukebox-inline .jukebox-signal {
    grid-template-columns: repeat(24, minmax(0, 1fr)) !important;
    height: 76px !important;
    margin-top: 8px !important;
    gap: 7px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__actions {
    margin-top: 12px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-classics {
    margin-top: 20px !important;
}

body main.container #jukebox.section--jukebox-inline #jukeboxPlayerShell,
body main.container #jukebox.section--jukebox-inline #spotifyEmbedHost,
body main.container #jukebox.section--jukebox-inline #spotifyEmbedHost iframe,
body main.container #jukebox.section--jukebox-inline #jukeboxAudioPlayer {
    position: fixed !important;
    left: -10000px !important;
    top: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

@media (max-width: 760px) {
    body main.container #jukebox.section--jukebox-inline {
        width: calc(100vw - 20px) !important;
        max-width: calc(100vw - 20px) !important;
        padding: 28px 14px 42px !important;
        margin-top: 20px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell {
        grid-template-columns: 1fr !important;
        padding-top: 0 !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record,
    body main.container #jukebox.has-performance-video.section--jukebox-inline .jukebox-inline-shell__record,
    body main.container #jukebox.is-playing.section--jukebox-inline .jukebox-inline-shell__record {
        height: 310px !important;
        min-height: 310px !important;
        max-height: 310px !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--top {
        left: 8%;
        top: 18%;
        width: 30px;
        height: 30px;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--volume {
        right: 7%;
        bottom: 8%;
        width: 52px;
        height: 52px;
    }
}


body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record {
    overflow: hidden !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
    left: 14.5% !important;
    top: 15.6% !important;
    width: min(70.5%, 318px) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
    left: calc(14.5% + 10px) !important;
    top: calc(15.6% + 10px) !important;
    width: calc(min(70.5%, 318px) - 20px) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
    left: calc(14.5% + (min(70.5%, 318px) / 2)) !important;
    top: calc(15.6% + (min(70.5%, 318px) / 2)) !important;
    width: 76px !important;
    height: 76px !important;
    min-width: 76px !important;
    min-height: 76px !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 50% !important;
    padding: 7px !important;
    border: 1px solid rgba(0, 169, 255, 0.36) !important;
    background:
        radial-gradient(circle at 50% 50%, rgba(0, 183, 255, 0.22) 0 45%, rgba(0, 119, 210, 0.16) 46% 60%, rgba(0, 0, 0, 0.62) 61% 100%) !important;
    box-shadow:
        0 0 0 8px rgba(0, 128, 255, 0.12),
        0 0 25px rgba(0, 170, 255, 0.22),
        inset 0 0 18px rgba(0, 0, 0, 0.72) !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::before,
body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover::after {
    content: none !important;
    display: none !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    transform: none !important;
    opacity: 1 !important;
}


body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__toggle {
    left: 5.8% !important;
    bottom: 24.4% !important;
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    min-height: 62px !important;
    border-radius: 12px !important;
    z-index: 11 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--top {
    left: 6.2% !important;
    top: 18.1% !important;
    width: 29px !important;
    height: 29px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed {
    left: 7.45% !important;
    bottom: 14.2% !important;
    width: 47px !important;
    height: 47px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::before,
body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::after {
    left: calc(100% + 13px) !important;
    font-size: 0.78rem !important;
    line-height: 1 !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::before {
    top: 9px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--speed::after {
    top: 31px !important;
}

body main.container #jukebox.section--jukebox-inline .jukebox-deck-detail--volume {
    right: 7.6% !important;
    bottom: 13.4% !important;
    width: 56px !important;
    height: 56px !important;
    z-index: 11 !important;
}

@media (max-width: 760px) {
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::before,
    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__vinyl {
        left: 15% !important;
        top: 16% !important;
        width: min(70%, 238px) !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record::after {
        left: calc(15% + 8px) !important;
        top: calc(16% + 8px) !important;
        width: calc(min(70%, 238px) - 16px) !important;
    }

    body main.container #jukebox.section--jukebox-inline .jukebox-inline-shell__record .jukebox-display__cover {
        left: calc(15% + (min(70%, 238px) / 2)) !important;
        top: calc(16% + (min(70%, 238px) / 2)) !important;
        width: 62px !important;
        height: 62px !important;
        min-width: 62px !important;
        min-height: 62px !important;
        padding: 6px !important;
    }

}

/* Acessibilidade: respeita prefers-reduced-motion globalmente.
   Para sweeps decorativos (buttonSheen, surfaceSweep, heroSpotlightLeft)
   neutralizamos a animacao para evitar uso continuo de GPU em desktops. */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
    }

    .hero-video-shell__embed {
        display: none !important;
    }
}

/* Rei jukebox skin lock: keep the reference layout isolated from older inline-jukebox passes. */
body main.container #jukebox.rei-jukebox {
    width: min(100%, 1080px) !important;
    max-width: 1080px !important;
    margin: 20px auto 42px !important;
    padding: 0 !important;
}

body main.container #jukebox.rei-jukebox .section-kicker {
    display: block !important;
    margin-top: 6px !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__frame {
    border-radius: 8px !important;
}

body main.container #jukebox.rei-jukebox .jukebox-voice-dock__button::before {
    content: none !important;
}

body main.container #jukebox.rei-jukebox .jukebox-progress__track {
    position: relative !important;
    display: block !important;
}

body main.container #jukebox.rei-jukebox .jukebox-progress__fill {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 0%;
    height: 100% !important;
}

body main.container #jukebox.rei-jukebox #jukeboxToggleLabel {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
}

/* Single Jukebox needle source. */
body main.container #jukebox.rei-jukebox .rei-jukebox__tonearm {
    position: absolute !important;
    right: 4.9% !important;
    top: 7.4% !important;
    z-index: 9 !important;
    width: 37.5% !important;
    aspect-ratio: 300 / 463 !important;
    pointer-events: none !important;
    transform: rotate(-7deg) !important;
    transform-origin: 62% 20.5% !important;
    filter: drop-shadow(7px 11px 11px rgba(0, 0, 0, 0.56)) !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__tonearm img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

body main.container #jukebox.rei-jukebox .jukebox-top-action.is-active,
body main.container #jukebox.rei-jukebox .jukebox-control-ring__button.is-active {
    color: #7fe4ff !important;
    border-color: rgba(48, 188, 255, 0.72) !important;
    box-shadow: 0 0 18px rgba(0, 174, 255, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

body main.container #jukebox.rei-jukebox .jukebox-top-action.is-muted,
body main.container #jukebox.rei-jukebox .rei-jukebox__volume.is-muted {
    opacity: 0.58 !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__volume:focus-visible,
body main.container #jukebox.rei-jukebox .jukebox-top-action:focus-visible {
    outline: 2px solid rgba(49, 189, 255, 0.74) !important;
    outline-offset: 3px !important;
}

body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__tonearm,
body main.container #jukebox.is-changing.rei-jukebox .rei-jukebox__tonearm {
    transform: rotate(0.5deg) !important;
}

body main.container #jukebox.is-changing.rei-jukebox .rei-jukebox__tonearm {
    transform: rotate(-2deg) !important;
}

/* Rich record motion and light passes. */
body main.container #jukebox.rei-jukebox .rei-jukebox__deck::before,
body main.container #jukebox.rei-jukebox .rei-jukebox__deck::after,
body main.container #jukebox.rei-jukebox .rei-jukebox__record::before,
body main.container #jukebox.rei-jukebox .rei-jukebox__record::after {
    content: '' !important;
    position: absolute !important;
    pointer-events: none !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__deck::before {
    inset: 0 !important;
    z-index: 1 !important;
    background:
        radial-gradient(circle at 22% 20%, rgba(42, 187, 255, 0.18), transparent 30%),
        radial-gradient(circle at 68% 76%, rgba(0, 102, 255, 0.1), transparent 32%) !important;
    opacity: 0.68 !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__deck::after {
    z-index: 7 !important;
    left: -42% !important;
    top: -18% !important;
    width: 34% !important;
    height: 142% !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, transparent, rgba(104, 217, 255, 0.18), rgba(255, 255, 255, 0.24), transparent) !important;
    filter: blur(10px) !important;
    opacity: 0 !important;
    transform: rotate(22deg) !important;
    mix-blend-mode: screen !important;
}

body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__deck::after {
    animation: reiJukeboxDeckLightSweep 5.8s ease-in-out infinite !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__record {
    z-index: 3 !important;
    overflow: hidden !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__vinyl,
body main.container #jukebox.rei-jukebox .rei-jukebox__dots,
body main.container #jukebox.rei-jukebox .rei-jukebox__cover {
    transform-origin: 50% 50% !important;
    will-change: transform !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__vinyl {
    z-index: 1 !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__record::before {
    inset: -1px !important;
    z-index: 2 !important;
    border-radius: inherit !important;
    background:
        conic-gradient(from 305deg, transparent 0 14deg, rgba(255, 255, 255, 0.22) 18deg, rgba(0, 174, 255, 0.14) 26deg, transparent 42deg 360deg),
        linear-gradient(116deg, transparent 0 42%, rgba(255, 255, 255, 0.14) 48%, transparent 56% 100%) !important;
    opacity: 0.54 !important;
    mix-blend-mode: screen !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__record::after {
    inset: 7% !important;
    z-index: 3 !important;
    border-radius: inherit !important;
    background:
        radial-gradient(ellipse at 32% 20%, rgba(255, 255, 255, 0.28), transparent 18%),
        radial-gradient(ellipse at 74% 64%, rgba(17, 154, 255, 0.18), transparent 28%),
        linear-gradient(130deg, transparent 0 38%, rgba(94, 203, 255, 0.14) 46%, transparent 56% 100%) !important;
    opacity: 0.44 !important;
    mix-blend-mode: screen !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__dots {
    z-index: 4 !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__cover {
    z-index: 5 !important;
    width: 34% !important;
    box-shadow:
        0 0 0 5px rgba(21, 114, 192, 0.3),
        0 0 42px rgba(0, 145, 255, 0.48),
        inset 0 0 18px rgba(255, 255, 255, 0.1) !important;
}

body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__vinyl,
body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__dots {
    animation: reiJukeboxDiscSpin 5.2s linear infinite !important;
}

body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__cover {
    animation: reiJukeboxCoverSpin 5.2s linear infinite !important;
}

body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__record::before {
    animation: reiJukeboxRecordLight 4.6s linear infinite !important;
}

body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__record::after {
    animation: reiJukeboxRecordPulse 3.8s ease-in-out infinite !important;
}

@keyframes reiJukeboxDiscSpin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes reiJukeboxCoverSpin {
    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

@keyframes reiJukeboxRecordLight {
    to {
        transform: rotate(360deg);
    }
}

@keyframes reiJukeboxRecordPulse {
    0%,
    100% {
        opacity: 0.34;
        transform: scale(0.98) rotate(0deg);
    }

    50% {
        opacity: 0.58;
        transform: scale(1.03) rotate(10deg);
    }
}

@keyframes reiJukeboxDeckLightSweep {
    0%,
    14% {
        opacity: 0;
        transform: translateX(0) rotate(22deg);
    }

    28%,
    48% {
        opacity: 0.9;
    }

    62%,
    100% {
        opacity: 0;
        transform: translateX(430%) rotate(22deg);
    }
}

@media (max-width: 760px) {
    body main.container #jukebox.rei-jukebox .rei-jukebox__tonearm {
        right: 2% !important;
        top: 7.8% !important;
        width: 43% !important;
    }
}

/* Desktop Jukebox alignment lock. Keeps the cleaned single-needle markup stable. */
@media (min-width: 761px) {
    body main.container #jukebox.rei-jukebox {
        width: min(100%, 1080px) !important;
        max-width: 1080px !important;
        margin: 20px auto 42px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__frame {
        padding: 20px 18px 26px !important;
        border-radius: 8px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__header {
        position: relative !important;
        display: flex !important;
        align-items: flex-start !important;
        justify-content: center !important;
        min-height: 58px !important;
        margin: 0 0 12px !important;
        text-align: center !important;
    }

    body main.container #jukebox.rei-jukebox h2 {
        margin: 0 !important;
        font-size: clamp(2.05rem, 3vw, 2.55rem) !important;
        line-height: 0.9 !important;
        letter-spacing: 0.22em !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .section-kicker {
        display: block !important;
        margin: 6px auto 0 !important;
        color: #35c9ff !important;
        font-size: 0.72rem !important;
        font-weight: 900 !important;
        letter-spacing: 0.28em !important;
        line-height: 1 !important;
        text-align: center !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__top-actions {
        position: absolute !important;
        top: -2px !important;
        right: 6px !important;
        z-index: 5 !important;
        display: flex !important;
        gap: 14px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__round {
        width: 40px !important;
        height: 40px !important;
        font-size: 1.05rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__main {
        display: grid !important;
        grid-template-columns: minmax(0, 0.47fr) minmax(0, 0.53fr) !important;
        gap: 18px !important;
        align-items: stretch !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__deck,
    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        min-height: 432px !important;
        border-radius: 16px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__voice {
        top: 14px !important;
        left: 16px !important;
        width: min(286px, calc(100% - 132px)) !important;
        min-width: 0 !important;
        height: 38px !important;
        padding: 4px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__voice button {
        min-height: 30px !important;
        padding: 0 10px !important;
        font-size: 0.64rem !important;
        letter-spacing: 0.07em !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__record {
        left: 8.2% !important;
        top: 12.8% !important;
        width: min(76%, 338px) !important;
        transform: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__cover {
        width: 35% !important;
        border-width: 7px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__tonearm {
        top: 7.4% !important;
        right: 4.9% !important;
        width: 37.5% !important;
        transform: rotate(-7deg) !important;
        transform-origin: 62% 20.5% !important;
    }

    body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__tonearm,
    body main.container #jukebox.is-changing.rei-jukebox .rei-jukebox__tonearm {
        transform: rotate(0.5deg) !important;
    }

    body main.container #jukebox.is-changing.rei-jukebox .rei-jukebox__tonearm {
        transform: rotate(-2deg) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__pilot--side {
        left: 22px !important;
        bottom: 32px !important;
        width: 48px !important;
        height: 48px !important;
        border-radius: 50% !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__speed {
        left: 74px !important;
        bottom: 28px !important;
        gap: 4px !important;
        font-size: 0.66rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__volume {
        right: 24px !important;
        bottom: 22px !important;
        font-size: 0.58rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__volume i {
        width: 46px !important;
        height: 46px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        padding: 34px 28px 18px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__heart {
        top: 26px !important;
        right: 24px !important;
        width: 36px !important;
        height: 36px !important;
        font-size: 1.05rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__artist {
        max-width: calc(100% - 52px) !important;
        margin-bottom: 10px !important;
        font-size: 0.68rem !important;
        letter-spacing: 0.12em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
        margin-bottom: 10px !important;
        font-size: clamp(2.45rem, 4vw, 3.25rem) !important;
        line-height: 0.92 !important;
        letter-spacing: 0.06em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayMessage {
        max-width: 28rem !important;
        font-size: 0.78rem !important;
        line-height: 1.36 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        height: 92px !important;
        margin: 14px 0 10px !important;
        padding: 0 10px 13px !important;
        gap: 7px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        gap: 12px !important;
        font-size: 0.72rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-template-columns: 52px 74px 62px 74px 52px !important;
        gap: 14px !important;
        margin-top: 16px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        height: 40px !important;
        font-size: 1.05rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button--play {
        width: 62px !important;
        height: 62px !important;
        font-size: 1.55rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr) minmax(0, 1.15fr) !important;
        gap: 10px !important;
        margin-top: 16px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions button,
    body main.container #jukebox.rei-jukebox .rei-jukebox__actions a {
        min-height: 38px !important;
        padding: 0 12px !important;
        font-size: 0.64rem !important;
        letter-spacing: 0.09em !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics {
        margin-top: 18px !important;
        padding: 0 42px 0 12px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics h3 {
        margin-bottom: 10px !important;
        font-size: 0.72rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-track {
        display: grid !important;
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card {
        min-height: 72px !important;
        padding: 8px !important;
        gap: 8px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card img {
        width: 48px !important;
        height: 48px !important;
        flex-basis: 48px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__body strong {
        font-size: 0.62rem !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__body span {
        font-size: 0.56rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-arrow {
        right: 0 !important;
        bottom: 14px !important;
        width: 34px !important;
        height: 34px !important;
        font-size: 1.35rem !important;
    }
}

/* Jukebox panel target lock: match the supplied compact stacked display. */
@media (min-width: 761px) {
    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: 90px 82px 28px 56px 34px !important;
        align-content: start !important;
        gap: 8px !important;
        padding: 22px 26px 14px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__heart {
        display: grid !important;
        top: 24px !important;
        right: 24px !important;
        width: 34px !important;
        height: 34px !important;
        z-index: 4 !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-inline-shell__headline {
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-self: start !important;
        max-width: calc(100% - 54px) !important;
        min-width: 0 !important;
        overflow: hidden !important;
        text-align: left !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__artist {
        max-width: 100% !important;
        margin: 0 0 8px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.08em !important;
        line-height: 1.15 !important;
        color: rgba(229, 238, 249, 0.84) !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
        max-width: 100% !important;
        margin: 0 0 8px !important;
        font-size: clamp(1.95rem, 2.75vw, 2.45rem) !important;
        line-height: 0.98 !important;
        letter-spacing: 0.045em !important;
        white-space: nowrap !important;
        text-overflow: ellipsis !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="long"] {
        font-size: clamp(1.08rem, 1.55vw, 1.25rem) !important;
        letter-spacing: 0.025em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="very-long"] {
        font-size: clamp(0.96rem, 1.35vw, 1.08rem) !important;
        letter-spacing: 0.015em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayMessage {
        max-width: 100% !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        overflow: hidden !important;
        color: rgba(219, 229, 242, 0.78) !important;
        font-size: 0.68rem !important;
        line-height: 1.28 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        grid-column: 1 !important;
        grid-row: 2 !important;
        align-self: stretch !important;
        width: 100% !important;
        height: 118px !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 16px 14px !important;
        gap: 7px !important;
        border: 1px solid rgba(60, 122, 191, 0.26) !important;
        border-radius: 8px !important;
        background:
            linear-gradient(180deg, rgba(6, 17, 34, 0.84), rgba(2, 8, 20, 0.96)),
            linear-gradient(to top, rgba(0, 140, 255, 0.13), transparent 72%) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq::before {
        left: 14px !important;
        right: 14px !important;
        bottom: 14px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span {
        min-height: 12px !important;
        border-radius: 3px 3px 1px 1px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        grid-column: 1 !important;
        grid-row: 3 !important;
        width: 100% !important;
        max-width: none !important;
        align-self: center !important;
        gap: 12px !important;
        font-size: 0.72rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-column: 1 !important;
        grid-row: 4 !important;
        grid-template-columns: 52px 72px 62px 72px 52px !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 16px !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        height: 40px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button--play {
        width: 62px !important;
        height: 62px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        grid-column: 1 !important;
        grid-row: 5 !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr) minmax(0, 1.08fr) !important;
        gap: 10px !important;
        align-self: end !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions button,
    body main.container #jukebox.rei-jukebox .rei-jukebox__actions a {
        height: 34px !important;
        min-height: 34px !important;
        padding: 0 10px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.06em !important;
    }
}

/* Jukebox viewport fit lock: the whole desktop player must fit inside one screen. */
@media (min-width: 761px) {
    html {
        scroll-padding-top: var(--site-header-height, 92px);
    }

    body main.container #jukebox.rei-jukebox {
        width: min(calc(100vw - 148px), 1080px) !important;
        max-width: min(calc(100vw - 148px), 1080px) !important;
        margin: 0 auto 16px !important;
        scroll-margin-top: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__frame {
        display: grid !important;
        grid-template-rows: auto minmax(0, 1fr) auto !important;
        gap: 10px !important;
        height: min(650px, calc(100svh - var(--site-header-height, 92px) - 34px)) !important;
        min-height: 0 !important;
        padding: 14px 18px 16px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__header {
        min-height: 48px !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox h2 {
        font-size: clamp(1.9rem, 2.75vw, 2.35rem) !important;
        letter-spacing: 0.2em !important;
    }

    body main.container #jukebox.rei-jukebox .section-kicker {
        margin-top: 5px !important;
        font-size: 0.62rem !important;
        letter-spacing: 0.24em !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__top-actions {
        top: -1px !important;
        right: 6px !important;
        gap: 10px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__round {
        width: 34px !important;
        height: 34px !important;
        font-size: 0.9rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__main {
        min-height: 0 !important;
        height: 100% !important;
        gap: 16px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__deck,
    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        height: 100% !important;
        min-height: 0 !important;
        border-radius: 14px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__voice {
        top: 14px !important;
        left: 16px !important;
        width: min(280px, calc(100% - 116px)) !important;
        height: 34px !important;
        padding: 3px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__voice button {
        min-height: 28px !important;
        padding: 0 8px !important;
        font-size: 0.6rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__record {
        left: 9.2% !important;
        top: 13.4% !important;
        width: min(72%, 304px) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__cover {
        width: 35% !important;
        border-width: 6px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__tonearm {
        top: 6.4% !important;
        right: 4.2% !important;
        width: 34.5% !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__pilot--side {
        left: 22px !important;
        bottom: 24px !important;
        width: 42px !important;
        height: 42px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__speed {
        left: 70px !important;
        bottom: 22px !important;
        font-size: 0.58rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__volume {
        right: 22px !important;
        bottom: 18px !important;
        gap: 4px !important;
        font-size: 0.5rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__volume i {
        width: 40px !important;
        height: 40px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        display: grid !important;
        grid-template-rows: auto 64px 24px 48px 34px !important;
        align-content: center !important;
        gap: 9px !important;
        padding: 28px 26px 16px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__heart {
        top: 18px !important;
        right: 22px !important;
        width: 30px !important;
        height: 30px !important;
        font-size: 0.86rem !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-inline-shell__headline {
        min-height: 0 !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__artist {
        max-width: calc(100% - 48px) !important;
        margin-bottom: 7px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.1em !important;
        line-height: 1.15 !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
        margin-bottom: 8px !important;
        font-size: clamp(2.05rem, 3.35vw, 2.75rem) !important;
        line-height: 0.9 !important;
        max-width: 48% !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayMessage {
        max-width: 45% !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 3 !important;
        overflow: hidden !important;
        font-size: 0.72rem !important;
        line-height: 1.3 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        position: absolute !important;
        top: 104px !important;
        right: 26px !important;
        width: min(46%, 370px) !important;
        height: 86px !important;
        margin: 0 !important;
        padding: 0 12px 12px !important;
        gap: 6px !important;
        border: 1px solid rgba(60, 122, 191, 0.25) !important;
        border-radius: 8px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        align-self: end !important;
        gap: 10px !important;
        font-size: 0.68rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-template-columns: 46px 66px 56px 66px 46px !important;
        gap: 12px !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        height: 38px !important;
        font-size: 0.96rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button--play {
        width: 56px !important;
        height: 56px !important;
        font-size: 1.35rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
        margin: 0 !important;
        align-self: end !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions button,
    body main.container #jukebox.rei-jukebox .rei-jukebox__actions a {
        min-height: 32px !important;
        height: 32px !important;
        padding: 0 8px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.06em !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics {
        min-height: 84px !important;
        margin: 0 !important;
        padding: 0 38px 0 12px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics h3 {
        margin: 0 0 8px !important;
        font-size: 0.66rem !important;
        line-height: 1 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-track {
        display: grid !important;
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
        gap: 8px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card {
        min-height: 58px !important;
        height: 58px !important;
        padding: 6px !important;
        gap: 7px !important;
        border-radius: 8px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card img {
        width: 42px !important;
        height: 42px !important;
        flex-basis: 42px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__body strong {
        font-size: 0.56rem !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__body span {
        font-size: 0.5rem !important;
        line-height: 1.15 !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__meter {
        right: 8px !important;
        bottom: 6px !important;
        font-size: 0.8rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-arrow {
        right: 0 !important;
        bottom: 16px !important;
        width: 30px !important;
        height: 30px !important;
        font-size: 1.15rem !important;
    }
}

/* Last word: approved stacked Jukebox panel after audit reset. */
@media (min-width: 761px) {
    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: 112px 118px 32px 70px 44px !important;
        align-content: start !important;
        gap: 10px !important;
        padding: 30px 26px 18px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__heart {
        display: grid !important;
        top: 24px !important;
        right: 24px !important;
        width: 34px !important;
        height: 34px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-inline-shell__headline {
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-self: start !important;
        max-width: calc(100% - 54px) !important;
        overflow: hidden !important;
        text-align: left !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__artist {
        max-width: 100% !important;
        margin: 0 0 8px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.08em !important;
        line-height: 1.15 !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
        max-width: 100% !important;
        margin: 0 0 8px !important;
        font-size: clamp(1.95rem, 2.75vw, 2.45rem) !important;
        line-height: 0.98 !important;
        letter-spacing: 0.045em !important;
        white-space: nowrap !important;
        text-overflow: ellipsis !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="long"] {
        font-size: clamp(1.38rem, 2.05vw, 1.8rem) !important;
        letter-spacing: 0.025em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="very-long"] {
        font-size: clamp(1.12rem, 1.7vw, 1.42rem) !important;
        letter-spacing: 0.015em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayMessage {
        max-width: 100% !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        overflow: hidden !important;
        font-size: 0.68rem !important;
        line-height: 1.28 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        grid-column: 1 !important;
        grid-row: 2 !important;
        width: 100% !important;
        height: 118px !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 16px 14px !important;
        gap: 7px !important;
        border: 1px solid rgba(60, 122, 191, 0.26) !important;
        border-radius: 8px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        grid-column: 1 !important;
        grid-row: 3 !important;
        width: 100% !important;
        max-width: none !important;
        gap: 12px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-column: 1 !important;
        grid-row: 4 !important;
        grid-template-columns: 52px 72px 62px 72px 52px !important;
        gap: 16px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        grid-column: 1 !important;
        grid-row: 5 !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr) minmax(0, 1.08fr) !important;
        gap: 10px !important;
    }
}

/* Final Jukebox panel target: stacked compact panel like the approved reference. */
@media (min-width: 761px) {
    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: 112px 118px 32px 70px 44px !important;
        align-content: start !important;
        gap: 10px !important;
        padding: 30px 26px 18px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__heart {
        display: grid !important;
        top: 24px !important;
        right: 24px !important;
        width: 34px !important;
        height: 34px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-inline-shell__headline {
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-self: start !important;
        max-width: calc(100% - 54px) !important;
        min-width: 0 !important;
        overflow: hidden !important;
        text-align: left !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__artist {
        max-width: 100% !important;
        margin: 0 0 8px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.08em !important;
        line-height: 1.15 !important;
        color: rgba(229, 238, 249, 0.84) !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
        max-width: 100% !important;
        margin: 0 0 8px !important;
        font-size: clamp(1.95rem, 2.75vw, 2.45rem) !important;
        line-height: 0.98 !important;
        letter-spacing: 0.045em !important;
        white-space: nowrap !important;
        text-overflow: ellipsis !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="long"] {
        font-size: clamp(1.38rem, 2.05vw, 1.8rem) !important;
        letter-spacing: 0.025em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="very-long"] {
        font-size: clamp(1.12rem, 1.7vw, 1.42rem) !important;
        letter-spacing: 0.015em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayMessage {
        max-width: 100% !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        overflow: hidden !important;
        color: rgba(219, 229, 242, 0.78) !important;
        font-size: 0.68rem !important;
        line-height: 1.28 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        grid-column: 1 !important;
        grid-row: 2 !important;
        align-self: stretch !important;
        width: 100% !important;
        height: 118px !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 16px 14px !important;
        gap: 7px !important;
        border: 1px solid rgba(60, 122, 191, 0.26) !important;
        border-radius: 8px !important;
        background:
            linear-gradient(180deg, rgba(6, 17, 34, 0.84), rgba(2, 8, 20, 0.96)),
            linear-gradient(to top, rgba(0, 140, 255, 0.13), transparent 72%) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        grid-column: 1 !important;
        grid-row: 3 !important;
        width: 100% !important;
        max-width: none !important;
        align-self: center !important;
        gap: 12px !important;
        font-size: 0.72rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-column: 1 !important;
        grid-row: 4 !important;
        grid-template-columns: 52px 72px 62px 72px 52px !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 16px !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        grid-column: 1 !important;
        grid-row: 5 !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr) minmax(0, 1.08fr) !important;
        gap: 10px !important;
        align-self: end !important;
        margin: 0 !important;
    }
}

/* Jukebox panel repair: keep the display controls in the natural flow. */
@media (min-width: 761px) {
    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: 112px 118px 32px 70px 44px !important;
        align-content: start !important;
        align-items: stretch !important;
        gap: 10px !important;
        padding: 30px 26px 18px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-inline-shell__headline {
        grid-column: 1 / 2 !important;
        grid-row: 1 !important;
        align-self: center !important;
        min-width: 0 !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__artist {
        max-width: calc(100% - 12px) !important;
        margin-bottom: 7px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.1em !important;
        line-height: 1.18 !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
        max-width: 100% !important;
        margin-bottom: 12px !important;
        font-size: clamp(2.35rem, 3.25vw, 2.95rem) !important;
        line-height: 0.92 !important;
        letter-spacing: 0.05em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayMessage {
        max-width: 100% !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 3 !important;
        overflow: hidden !important;
        font-size: 0.72rem !important;
        line-height: 1.32 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        grid-column: 2 / 3 !important;
        grid-row: 1 !important;
        align-self: end !important;
        width: 100% !important;
        height: 94px !important;
        margin: 0 !important;
        padding: 0 12px 12px !important;
        gap: 6px !important;
        border: 1px solid rgba(60, 122, 191, 0.25) !important;
        border-radius: 8px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
        align-self: center !important;
        gap: 12px !important;
        font-size: 0.72rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-column: 1 / -1 !important;
        grid-row: 3 !important;
        grid-template-columns: 52px 72px 62px 72px 52px !important;
        justify-content: center !important;
        align-self: center !important;
        gap: 14px !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        height: 40px !important;
        font-size: 1.02rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button--play {
        width: 62px !important;
        height: 62px !important;
        font-size: 1.48rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        grid-column: 1 / -1 !important;
        grid-row: 4 !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr) minmax(0, 1.08fr) !important;
        align-self: end !important;
        gap: 10px !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions button,
    body main.container #jukebox.rei-jukebox .rei-jukebox__actions a {
        min-height: 34px !important;
        height: 34px !important;
        padding: 0 10px !important;
        font-size: 0.6rem !important;
        letter-spacing: 0.07em !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }
}

/* Jukebox mobile rebuild: compact, touch-first layout instead of squeezed desktop. */
@media (max-width: 760px) {
    body main.container #jukebox.rei-jukebox {
        width: calc(100vw - 18px) !important;
        max-width: 430px !important;
        margin: 12px auto 34px !important;
        scroll-margin-top: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__frame {
        display: grid !important;
        gap: 10px !important;
        padding: 12px 10px 10px !important;
        border-radius: 14px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__header {
        display: grid !important;
        justify-items: center !important;
        min-height: 0 !important;
        margin: 0 !important;
        gap: 8px !important;
        text-align: center !important;
    }

    body main.container #jukebox.rei-jukebox h2 {
        max-width: 100% !important;
        margin: 0 !important;
        font-size: clamp(1.75rem, 8.6vw, 2.25rem) !important;
        line-height: 1.02 !important;
        letter-spacing: 0.14em !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .section-kicker {
        margin-top: 4px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.24em !important;
        line-height: 1 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__top-actions {
        position: static !important;
        display: flex !important;
        justify-content: center !important;
        gap: 10px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__round {
        width: 34px !important;
        height: 34px !important;
        font-size: 0.92rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__main {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        min-height: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__deck {
        height: 302px !important;
        min-height: 0 !important;
        border-radius: 14px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__voice {
        position: absolute !important;
        top: 12px !important;
        left: 12px !important;
        width: calc(100% - 24px) !important;
        min-width: 0 !important;
        height: 38px !important;
        margin: 0 !important;
        padding: 3px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__voice button {
        min-height: 32px !important;
        padding: 0 8px !important;
        font-size: 0.56rem !important;
        letter-spacing: 0.04em !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__record {
        left: 50% !important;
        top: 66px !important;
        width: min(66vw, 232px) !important;
        transform: translateX(-50%) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__cover {
        width: 36% !important;
        border-width: 5px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__tonearm {
        top: 58px !important;
        right: 1.5% !important;
        width: min(34%, 122px) !important;
    }

    body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__tonearm,
    body main.container #jukebox.is-changing.rei-jukebox .rei-jukebox__tonearm {
        transform: rotate(0.5deg) !important;
    }

    body main.container #jukebox.is-changing.rei-jukebox .rei-jukebox__tonearm {
        transform: rotate(-2deg) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__pilot--side,
    body main.container #jukebox.rei-jukebox .rei-jukebox__speed,
    body main.container #jukebox.rei-jukebox .rei-jukebox__volume {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto 72px 30px 58px 36px !important;
        gap: 10px !important;
        min-height: 0 !important;
        padding: 18px 14px 14px !important;
        border-radius: 14px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__heart {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-inline-shell__headline {
        display: block !important;
        min-height: 0 !important;
        overflow: hidden !important;
        text-align: left !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__artist {
        max-width: 100% !important;
        margin-bottom: 8px !important;
        font-size: 0.62rem !important;
        letter-spacing: 0.08em !important;
        line-height: 1.18 !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
        max-width: 100% !important;
        margin-bottom: 8px !important;
        font-size: clamp(2.1rem, 10vw, 2.8rem) !important;
        line-height: 1.02 !important;
        letter-spacing: 0.05em !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayMessage {
        max-width: 100% !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        overflow: hidden !important;
        font-size: 0.78rem !important;
        line-height: 1.32 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        display: grid !important;
        grid-template-columns: repeat(16, minmax(0, 1fr)) !important;
        align-items: end !important;
        height: 72px !important;
        margin: 0 !important;
        padding: 0 8px 10px !important;
        gap: 5px !important;
        border: 1px solid rgba(60, 122, 191, 0.24) !important;
        border-radius: 8px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(n + 17) {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        gap: 8px !important;
        font-size: 0.68rem !important;
        align-self: center !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-template-columns: 38px 50px 58px 50px 38px !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 8px !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        height: 38px !important;
        min-width: 0 !important;
        font-size: 0.98rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button--play {
        width: 58px !important;
        height: 58px !important;
        font-size: 1.35rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        display: grid !important;
        grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.2fr) minmax(0, 0.95fr) !important;
        gap: 8px !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions button,
    body main.container #jukebox.rei-jukebox .rei-jukebox__actions a {
        min-height: 36px !important;
        height: 36px !important;
        padding: 0 6px !important;
        border-radius: 8px !important;
        font-size: 0.52rem !important;
        letter-spacing: 0.04em !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics {
        min-height: 0 !important;
        margin: 2px 0 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics h3 {
        margin: 0 0 8px !important;
        font-size: 0.62rem !important;
        letter-spacing: 0.18em !important;
        text-align: left !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-track {
        display: flex !important;
        gap: 8px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding: 0 2px 6px !important;
        scroll-snap-type: x mandatory !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card {
        min-width: 174px !important;
        width: 174px !important;
        min-height: 64px !important;
        height: 64px !important;
        padding: 7px !important;
        gap: 7px !important;
        scroll-snap-align: start !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card img {
        width: 48px !important;
        height: 48px !important;
        flex-basis: 48px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__body strong {
        font-size: 0.56rem !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__body span {
        font-size: 0.5rem !important;
        line-height: 1.15 !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__meter,
    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-arrow {
        display: none !important;
    }
}

/* Jukebox panel finish: smaller long titles, richer EQ and centered controls. */
body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
    font-size: clamp(2rem, 2.85vw, 2.55rem) !important;
    letter-spacing: 0.045em !important;
    text-overflow: ellipsis !important;
}

body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="long"] {
    font-size: clamp(1.72rem, 2.35vw, 2.12rem) !important;
    letter-spacing: 0.035em !important;
}

body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="very-long"] {
    font-size: clamp(1.42rem, 1.95vw, 1.78rem) !important;
    letter-spacing: 0.025em !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
    position: relative !important;
    overflow: hidden !important;
    background:
        linear-gradient(180deg, rgba(7, 20, 38, 0.84), rgba(2, 7, 18, 0.96)),
        radial-gradient(circle at 50% 100%, rgba(0, 154, 255, 0.2), transparent 68%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        inset 0 -18px 34px rgba(0, 136, 255, 0.09),
        0 12px 24px rgba(0, 0, 0, 0.2) !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__eq::before {
    content: '' !important;
    position: absolute !important;
    left: 10px !important;
    right: 10px !important;
    bottom: 10px !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent, rgba(94, 207, 255, 0.42), transparent) !important;
    pointer-events: none !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__eq::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(115deg, transparent 0 36%, rgba(255, 255, 255, 0.08) 49%, transparent 62% 100%) !important;
    opacity: 0.62 !important;
    pointer-events: none !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__eq span {
    position: relative !important;
    z-index: 1 !important;
    align-self: end !important;
    min-height: 10px !important;
    border-radius: 999px 999px 3px 3px !important;
    background:
        linear-gradient(180deg, rgba(130, 231, 255, 0.95) 0%, rgba(14, 161, 239, 0.9) 38%, rgba(5, 83, 151, 0.86) 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.34),
        inset 0 -8px 10px rgba(0, 23, 50, 0.32),
        0 0 10px rgba(0, 169, 255, 0.4) !important;
    filter: none !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(2n) { height: 56% !important; }
body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(3n) { height: 78% !important; }
body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(4n) { height: 46% !important; }
body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(5n) { height: 88% !important; }
body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(7n) { height: 66% !important; }
body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(11n) { height: 94% !important; }

body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
    display: grid !important;
    place-items: center !important;
    padding: 0 !important;
    line-height: 1 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 800 !important;
    text-align: center !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button:not(#jukeboxToggle) {
    color: transparent !important;
    font-size: 0 !important;
}

body main.container #jukebox.rei-jukebox #jukeboxToggle {
    display: grid !important;
    place-items: center !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__actions button,
body main.container #jukebox.rei-jukebox .rei-jukebox__actions a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

body main.container #jukebox.rei-jukebox .rei-jukebox__actions #jukeboxSpotifyLink {
    display: none !important;
}

@media (max-width: 760px) {
    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        grid-template-rows: auto 78px 5px 52px 40px !important;
        gap: 7px !important;
        padding: 16px 14px 12px !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
        font-size: clamp(1.62rem, 7.2vw, 2.08rem) !important;
        letter-spacing: 0.035em !important;
        line-height: 1.04 !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="long"] {
        font-size: clamp(1.35rem, 6.05vw, 1.74rem) !important;
        letter-spacing: 0.025em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="very-long"] {
        font-size: clamp(1.08rem, 5.2vw, 1.38rem) !important;
        letter-spacing: 0.015em !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        grid-template-columns: repeat(24, minmax(0, 1fr)) !important;
        height: 78px !important;
        padding: 0 12px 13px !important;
        gap: 3px !important;
        border-color: rgba(48, 130, 204, 0.28) !important;
        background:
            linear-gradient(180deg, rgba(5, 18, 34, 0.82), rgba(2, 8, 19, 0.94)),
            radial-gradient(circle at 50% 100%, rgba(0, 158, 255, 0.18), transparent 68%) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq::before {
        left: 12px !important;
        right: 12px !important;
        bottom: 12px !important;
        height: 1px !important;
        background: linear-gradient(90deg, transparent, rgba(79, 189, 255, 0.36), transparent) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(n + 17) {
        display: block !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span {
        width: auto !important;
        min-height: 8px !important;
        border-radius: 4px 4px 1px 1px !important;
        background:
            repeating-linear-gradient(
                to top,
                rgba(102, 221, 255, 0.82) 0 4px,
                rgba(102, 221, 255, 0.82) 4px 6px,
                rgba(3, 26, 51, 0.08) 6px 10px
            ),
            linear-gradient(180deg, rgba(128, 232, 255, 0.88), rgba(5, 133, 225, 0.76) 62%, rgba(3, 61, 118, 0.78)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.28),
            inset 0 -7px 10px rgba(0, 18, 42, 0.28),
            0 0 9px rgba(0, 168, 255, 0.24) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(1) { height: 34% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(2) { height: 48% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(3) { height: 66% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(4) { height: 42% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(5) { height: 68% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(6) { height: 70% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(7) { height: 52% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(8) { height: 42% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(9) { height: 68% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(10) { height: 70% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(11) { height: 76% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(12) { height: 43% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(13) { height: 38% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(14) { height: 56% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(15) { height: 67% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(16) { height: 46% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(17) { height: 40% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(18) { height: 70% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(19) { height: 52% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(20) { height: 75% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(21) { height: 44% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(22) { height: 37% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(23) { height: 58% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(24) { height: 45% !important; }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        height: 5px !important;
        min-height: 5px !important;
        margin: -10px 0 0 !important;
        padding: 0 12px !important;
        gap: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        font-size: 0 !important;
        align-self: start !important;
        z-index: 2 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress .jukebox-progress__time {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0 0 0 0) !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress b {
        display: block !important;
        width: 100% !important;
        height: 2px !important;
        border: 0 !important;
        border-radius: 999px !important;
        background: rgba(42, 114, 170, 0.28) !important;
        box-shadow: 0 0 9px rgba(0, 166, 255, 0.16) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress i {
        display: block !important;
        height: 100% !important;
        border-radius: inherit !important;
        background: linear-gradient(90deg, #25d5ff, #087fff) !important;
        box-shadow: 0 0 10px rgba(0, 194, 255, 0.68) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-template-columns: 48px 56px 48px !important;
        gap: 14px !important;
        justify-content: center !important;
        align-self: center !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button:nth-child(1),
    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button:nth-child(5) {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button:nth-child(2),
    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button:nth-child(4) {
        width: 48px !important;
        height: 34px !important;
        border-color: rgba(64, 126, 205, 0.46) !important;
        background:
            radial-gradient(circle at 50% 34%, rgba(255, 255, 255, 0.1), transparent 34%),
            linear-gradient(180deg, rgba(19, 39, 70, 0.94), rgba(6, 15, 32, 0.96)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.06),
            0 7px 16px rgba(0, 0, 0, 0.16) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button--play {
        width: 56px !important;
        height: 56px !important;
        border-color: rgba(99, 193, 255, 0.72) !important;
        background:
            radial-gradient(circle at 42% 30%, rgba(255, 255, 255, 0.36), transparent 27%),
            linear-gradient(180deg, #22b9f4, #0562c9 78%) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.24),
            inset 0 -15px 20px rgba(0, 37, 102, 0.46),
            0 0 20px rgba(0, 144, 255, 0.34) !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxToggle {
        color: transparent !important;
        font-size: 0 !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxToggle #jukeboxToggleLabel {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions button,
    body main.container #jukebox.rei-jukebox .rei-jukebox__actions a {
        width: min(100%, 222px) !important;
        min-height: 36px !important;
        height: 36px !important;
        padding: 0 16px !important;
        border-radius: 10px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.075em !important;
    }
}

/* Desktop proposal lock: wide premium console matching the supplied target. */
@media (min-width: 761px) {
    body main.container:has(#jukebox.rei-jukebox) {
        overflow-x: visible !important;
    }

    body main.container #jukebox.rei-jukebox {
        left: 50% !important;
        width: min(calc(100vw - 64px), 1800px) !important;
        max-width: min(calc(100vw - 64px), 1800px) !important;
        margin: 0 auto 18px !important;
        padding: 0 !important;
        transform: translateX(-50%) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__frame {
        display: grid !important;
        grid-template-rows: minmax(0, 1fr) auto !important;
        gap: 20px !important;
        height: min(820px, calc(100svh - var(--site-header-height, 92px) - 12px)) !important;
        min-height: 650px !important;
        padding: 0 28px 16px !important;
        border-radius: 0 0 10px 10px !important;
        background:
            linear-gradient(90deg, rgba(4, 12, 25, 0.95), rgba(6, 18, 34, 0.98) 48%, rgba(3, 9, 19, 0.98)),
            radial-gradient(circle at 38% 14%, rgba(31, 112, 217, 0.2), transparent 36%) !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__header {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__main {
        display: grid !important;
        grid-template-columns: minmax(0, 0.49fr) minmax(0, 0.51fr) !important;
        gap: 26px !important;
        height: 100% !important;
        min-height: 0 !important;
        align-items: stretch !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__deck,
    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        height: 100% !important;
        min-height: 0 !important;
        border-radius: 0 0 18px 18px !important;
        background:
            radial-gradient(circle at 24% 16%, rgba(0, 127, 255, 0.1), transparent 32%),
            linear-gradient(145deg, rgba(7, 15, 29, 0.98), rgba(1, 5, 14, 0.995) 72%) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.06),
            inset 0 0 58px rgba(0, 0, 0, 0.32),
            0 22px 62px rgba(0, 0, 0, 0.34) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__deck {
        border-top-color: transparent !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__voice {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__record {
        left: 50% !important;
        top: -1.6% !important;
        width: min(76%, 650px) !important;
        max-width: none !important;
        transform: translateX(-50%) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__cover {
        width: 30% !important;
        border-width: 8px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__tonearm {
        top: -1.4% !important;
        right: 5.9% !important;
        width: min(31.5%, 285px) !important;
        transform: rotate(-7deg) !important;
        transform-origin: 62% 20.5% !important;
        filter: drop-shadow(8px 13px 13px rgba(0, 0, 0, 0.62)) !important;
    }

    body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__tonearm,
    body main.container #jukebox.is-changing.rei-jukebox .rei-jukebox__tonearm {
        transform: rotate(0.5deg) !important;
    }

    body main.container #jukebox.is-changing.rei-jukebox .rei-jukebox__tonearm {
        transform: rotate(-2deg) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__pilot--side {
        display: grid !important;
        left: 7.5% !important;
        bottom: 7.5% !important;
        width: 54px !important;
        height: 54px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__speed {
        display: grid !important;
        left: calc(7.5% + 72px) !important;
        bottom: 7.8% !important;
        font-size: 0.72rem !important;
        gap: 4px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__volume {
        display: grid !important;
        right: 6.2% !important;
        bottom: 7.2% !important;
        font-size: 0.62rem !important;
        letter-spacing: 0.04em !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__volume i {
        width: 56px !important;
        height: 56px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto minmax(150px, 1fr) 34px 96px 62px !important;
        gap: 18px !important;
        align-content: start !important;
        padding: clamp(28px, 3vw, 54px) clamp(28px, 3.6vw, 54px) 28px !important;
        border-top-color: transparent !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__heart {
        top: 24px !important;
        right: 28px !important;
        width: 42px !important;
        height: 42px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-inline-shell__headline {
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-self: start !important;
        max-width: calc(100% - 62px) !important;
        overflow: visible !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__artist {
        max-width: 100% !important;
        margin-bottom: 12px !important;
        color: rgba(245, 250, 255, 0.82) !important;
        font-size: clamp(0.66rem, 0.82vw, 0.84rem) !important;
        letter-spacing: 0.11em !important;
        line-height: 1.2 !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
        max-width: 100% !important;
        margin: 0 0 14px !important;
        color: #fff !important;
        font-size: clamp(2.75rem, 4.25vw, 4.1rem) !important;
        line-height: 0.9 !important;
        letter-spacing: 0.055em !important;
        white-space: nowrap !important;
        text-overflow: ellipsis !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="long"] {
        font-size: clamp(2.1rem, 3.35vw, 3.15rem) !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="very-long"] {
        font-size: clamp(1.72rem, 2.75vw, 2.48rem) !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayMessage {
        max-width: min(100%, 560px) !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        overflow: hidden !important;
        color: rgba(224, 234, 247, 0.78) !important;
        font-size: clamp(0.8rem, 1vw, 0.98rem) !important;
        line-height: 1.42 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        grid-column: 1 !important;
        grid-row: 2 !important;
        align-self: end !important;
        width: 100% !important;
        height: min(100%, 210px) !important;
        min-height: 148px !important;
        margin: 0 !important;
        padding: 0 28px 28px !important;
        gap: clamp(7px, 1vw, 12px) !important;
        border: 0 !important;
        border-radius: 0 !important;
        background:
            linear-gradient(180deg, transparent, rgba(0, 131, 255, 0.08) 58%, rgba(0, 131, 255, 0.13)) !important;
        box-shadow: inset 0 -1px 0 rgba(68, 155, 230, 0.24) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq::before {
        left: 0 !important;
        right: 0 !important;
        bottom: 26px !important;
        background: linear-gradient(90deg, transparent, rgba(82, 171, 238, 0.36), transparent) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq::after {
        opacity: 0.34 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span {
        min-height: 18px !important;
        border-radius: 4px 4px 1px 1px !important;
        background:
            repeating-linear-gradient(to top, rgba(93, 214, 255, 0.88) 0 5px, rgba(93, 214, 255, 0.88) 5px 8px, transparent 8px 13px),
            linear-gradient(180deg, rgba(121, 229, 255, 0.94), rgba(0, 160, 255, 0.88) 56%, rgba(4, 69, 132, 0.92)) !important;
        box-shadow: 0 0 16px rgba(0, 154, 255, 0.42) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        grid-column: 1 !important;
        grid-row: 3 !important;
        align-self: center !important;
        width: 100% !important;
        max-width: none !important;
        gap: 20px !important;
        font-size: clamp(0.82rem, 1vw, 1rem) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress b {
        height: 7px !important;
        background: rgba(14, 27, 48, 0.92) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-column: 1 !important;
        grid-row: 4 !important;
        grid-template-columns: 98px 142px 96px 142px 98px !important;
        justify-content: center !important;
        align-self: center !important;
        gap: clamp(16px, 2.2vw, 34px) !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        height: 60px !important;
        border-radius: 999px !important;
        background: linear-gradient(180deg, rgba(19, 32, 55, 0.96), rgba(4, 10, 23, 0.98)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.08),
            0 16px 34px rgba(0, 0, 0, 0.28) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button--play {
        width: 96px !important;
        height: 96px !important;
        border-radius: 50% !important;
        background: radial-gradient(circle at 42% 32%, #62d8ff, #0a82eb 46%, #073d92 100%) !important;
        box-shadow:
            0 0 42px rgba(0, 157, 255, 0.64),
            inset 0 1px 0 rgba(255, 255, 255, 0.28),
            inset 0 -16px 22px rgba(0, 21, 60, 0.34) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        grid-column: 1 !important;
        grid-row: 5 !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.04fr) minmax(0, 1.14fr) !important;
        gap: 18px !important;
        margin: 0 !important;
        align-self: end !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions button,
    body main.container #jukebox.rei-jukebox .rei-jukebox__actions a {
        height: 58px !important;
        min-height: 58px !important;
        border-radius: 10px !important;
        font-size: clamp(0.66rem, 0.88vw, 0.88rem) !important;
        letter-spacing: 0.11em !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics {
        min-height: 104px !important;
        margin: 0 !important;
        padding: 0 42px 0 64px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics h3 {
        margin: 0 0 12px !important;
        font-size: clamp(0.7rem, 0.9vw, 0.92rem) !important;
        letter-spacing: 0.14em !important;
        text-align: left !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-track {
        display: grid !important;
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
        gap: 14px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card {
        height: 74px !important;
        min-height: 74px !important;
        padding: 9px 12px !important;
        gap: 12px !important;
        border-radius: 8px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card img {
        width: 56px !important;
        height: 56px !important;
        flex-basis: 56px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__body strong {
        font-size: clamp(0.58rem, 0.72vw, 0.75rem) !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__body span {
        font-size: clamp(0.52rem, 0.66vw, 0.68rem) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-arrow {
        right: 4px !important;
        bottom: 18px !important;
        width: 42px !important;
        height: 42px !important;
    }
}

@media (min-width: 761px) and (max-width: 1320px) {
    body main.container #jukebox.rei-jukebox .rei-jukebox__frame {
        height: min(720px, calc(100svh - var(--site-header-height, 92px) - 12px)) !important;
        min-height: 620px !important;
        padding-inline: 18px !important;
        gap: 12px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__main {
        gap: 18px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__record {
        width: min(72%, 430px) !important;
        top: 8% !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__tonearm {
        top: 5% !important;
        width: min(34%, 210px) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        grid-template-rows: auto minmax(92px, 1fr) 28px 62px 36px !important;
        gap: 10px !important;
        padding: 28px 24px 18px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        min-height: 92px !important;
        height: min(100%, 126px) !important;
        padding-bottom: 16px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-template-columns: 52px 72px 62px 72px 52px !important;
        gap: 14px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        height: 40px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button--play {
        width: 62px !important;
        height: 62px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        gap: 10px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions button,
    body main.container #jukebox.rei-jukebox .rei-jukebox__actions a {
        height: 36px !important;
        min-height: 36px !important;
        font-size: 0.58rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics {
        min-height: 84px !important;
        padding-left: 16px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card {
        height: 58px !important;
        min-height: 58px !important;
        padding: 6px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card img {
        width: 42px !important;
        height: 42px !important;
        flex-basis: 42px !important;
    }
}

@media (min-width: 761px) and (max-width: 1680px) {
    body main.container #jukebox.rei-jukebox .rei-jukebox__frame {
        height: min(680px, calc(100svh - var(--site-header-height, 92px) - 12px)) !important;
        min-height: 620px !important;
        padding-inline: 18px !important;
        gap: 12px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__main {
        gap: 18px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__record {
        top: 6% !important;
        width: min(72%, 460px) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__tonearm {
        top: 4.2% !important;
        right: 5.2% !important;
        width: min(34%, 220px) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        grid-template-rows: auto minmax(94px, 1fr) 28px 62px 38px !important;
        gap: 10px !important;
        padding: 26px 24px 18px !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
        font-size: clamp(2.15rem, 3.4vw, 3.1rem) !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayMessage {
        -webkit-line-clamp: 2 !important;
        font-size: 0.78rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        height: min(100%, 128px) !important;
        min-height: 94px !important;
        padding: 0 18px 16px !important;
        gap: 7px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        width: 100% !important;
        max-width: none !important;
        gap: 12px !important;
        font-size: 0.72rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-template-columns: 52px 72px 62px 72px 52px !important;
        gap: 14px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        height: 40px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button--play {
        width: 62px !important;
        height: 62px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        gap: 10px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions button,
    body main.container #jukebox.rei-jukebox .rei-jukebox__actions a {
        height: 38px !important;
        min-height: 38px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.06em !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics {
        min-height: 86px !important;
        padding-left: 18px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card {
        height: 60px !important;
        min-height: 60px !important;
        padding: 6px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card img {
        width: 44px !important;
        height: 44px !important;
        flex-basis: 44px !important;
    }
}

/* Jukebox desktop audit reset: normal page width, no duplicated icons, stable fit. */
@media (min-width: 761px) {
    body main.container:has(#jukebox.rei-jukebox) {
        overflow-x: clip !important;
    }

    body main.container #jukebox.rei-jukebox {
        left: auto !important;
        width: min(calc(100vw - 148px), 1080px) !important;
        max-width: min(calc(100vw - 148px), 1080px) !important;
        margin: 0 auto 16px !important;
        padding: 0 !important;
        transform: none !important;
        scroll-margin-top: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__frame {
        display: grid !important;
        grid-template-rows: auto minmax(0, 1fr) auto !important;
        gap: 10px !important;
        height: min(650px, calc(100svh - var(--site-header-height, 92px) - 34px)) !important;
        min-height: 0 !important;
        padding: 14px 18px 16px !important;
        border-radius: 8px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__header {
        position: relative !important;
        display: flex !important;
        align-items: flex-start !important;
        justify-content: center !important;
        min-height: 48px !important;
        margin: 0 !important;
        text-align: center !important;
    }

    body main.container #jukebox.rei-jukebox h2 {
        margin: 0 !important;
        font-size: clamp(1.9rem, 2.75vw, 2.35rem) !important;
        line-height: 0.94 !important;
        letter-spacing: 0.2em !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .section-kicker {
        display: block !important;
        margin: 5px auto 0 !important;
        font-size: 0.62rem !important;
        letter-spacing: 0.24em !important;
        line-height: 1 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__top-actions {
        position: absolute !important;
        top: -1px !important;
        right: 6px !important;
        z-index: 5 !important;
        display: flex !important;
        gap: 10px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__round {
        width: 34px !important;
        height: 34px !important;
        font-size: 0.9rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__main {
        display: grid !important;
        grid-template-columns: minmax(0, 0.47fr) minmax(0, 0.53fr) !important;
        gap: 16px !important;
        height: 100% !important;
        min-height: 0 !important;
        align-items: stretch !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__deck,
    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        height: 100% !important;
        min-height: 0 !important;
        border-radius: 14px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__voice {
        display: grid !important;
        position: absolute !important;
        top: 14px !important;
        left: 16px !important;
        width: min(280px, calc(100% - 116px)) !important;
        min-width: 0 !important;
        height: 34px !important;
        margin: 0 !important;
        padding: 3px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__voice button {
        min-height: 28px !important;
        padding: 0 8px !important;
        font-size: 0.6rem !important;
        letter-spacing: 0.05em !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__record {
        left: 50% !important;
        top: 13.4% !important;
        width: min(72%, 304px) !important;
        max-width: 304px !important;
        transform: translateX(-50%) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__cover {
        width: 35% !important;
        border-width: 6px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__tonearm {
        top: 5.2% !important;
        right: 1.9% !important;
        width: 37.5% !important;
        transform: rotate(-7deg) !important;
        transform-origin: 62% 20.5% !important;
    }

    body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__tonearm,
    body main.container #jukebox.is-changing.rei-jukebox .rei-jukebox__tonearm {
        transform: rotate(0.5deg) !important;
    }

    body main.container #jukebox.is-changing.rei-jukebox .rei-jukebox__tonearm {
        transform: rotate(-2deg) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__pilot--side {
        display: grid !important;
        left: 22px !important;
        bottom: 24px !important;
        width: 42px !important;
        height: 42px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__speed {
        display: grid !important;
        left: 70px !important;
        bottom: 22px !important;
        font-size: 0.58rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__volume {
        display: grid !important;
        right: 22px !important;
        bottom: 18px !important;
        gap: 4px !important;
        font-size: 0.5rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__volume i {
        width: 40px !important;
        height: 40px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: 106px 120px 8px 58px 36px !important;
        align-content: start !important;
        align-items: stretch !important;
        gap: 8px !important;
        padding: 28px 26px 14px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__heart {
        display: grid !important;
        top: 22px !important;
        right: 22px !important;
        width: 32px !important;
        height: 32px !important;
        font-size: 0.95rem !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-inline-shell__headline {
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-self: start !important;
        max-width: calc(100% - 54px) !important;
        min-width: 0 !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__artist {
        max-width: calc(100% - 12px) !important;
        margin-bottom: 10px !important;
        font-size: 0.66rem !important;
        letter-spacing: 0.1em !important;
        line-height: 1.18 !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle {
        max-width: 100% !important;
        margin: 0 0 7px !important;
        font-size: clamp(1.72rem, 2.38vw, 2.1rem) !important;
        line-height: 1 !important;
        letter-spacing: 0.045em !important;
        white-space: nowrap !important;
        text-overflow: ellipsis !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="long"] {
        font-size: clamp(1.08rem, 1.55vw, 1.25rem) !important;
        letter-spacing: 0.025em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayTitle[data-title-size="very-long"] {
        font-size: clamp(0.96rem, 1.35vw, 1.08rem) !important;
        letter-spacing: 0.015em !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxDisplayMessage {
        max-width: 100% !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        overflow: hidden !important;
        font-size: 0.66rem !important;
        line-height: 1.24 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        grid-column: 1 !important;
        grid-row: 2 !important;
        align-self: stretch !important;
        width: 100% !important;
        max-width: none !important;
        height: 120px !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 18px 18px !important;
        gap: 7px !important;
        border: 1px solid rgba(60, 122, 191, 0.26) !important;
        border-radius: 8px !important;
        background:
            linear-gradient(180deg, rgba(8, 27, 48, 0.64), rgba(3, 12, 24, 0.24)),
            radial-gradient(circle at 50% 96%, rgba(0, 174, 255, 0.16), transparent 58%) !important;
        box-shadow: inset 0 -26px 36px rgba(0, 152, 255, 0.08) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span {
        width: clamp(8px, 1.65vw, 12px) !important;
        border-radius: 5px 5px 1px 1px !important;
        background:
            repeating-linear-gradient(
                to top,
                rgba(11, 132, 191, 0.72) 0 6px,
                rgba(4, 26, 48, 0.18) 6px 10px
            ),
            linear-gradient(180deg, rgba(107, 227, 255, 0.88), rgba(0, 118, 224, 0.76)) !important;
        box-shadow: 0 0 13px rgba(0, 160, 255, 0.36) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        grid-column: 1 !important;
        grid-row: 3 !important;
        width: 100% !important;
        max-width: none !important;
        align-self: start !important;
        height: 8px !important;
        min-height: 8px !important;
        margin: -10px 0 0 !important;
        padding: 0 18px !important;
        gap: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        font-size: 0 !important;
        z-index: 2 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress .jukebox-progress__time {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0 0 0 0) !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress b {
        display: block !important;
        width: 100% !important;
        height: 2px !important;
        border: 0 !important;
        border-radius: 999px !important;
        background: rgba(34, 104, 158, 0.28) !important;
        box-shadow: 0 0 10px rgba(0, 166, 255, 0.18) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress i {
        display: block !important;
        height: 100% !important;
        border-radius: inherit !important;
        background: linear-gradient(90deg, #1acbff, #098cff) !important;
        box-shadow: 0 0 10px rgba(0, 194, 255, 0.72) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        grid-column: 1 !important;
        grid-row: 4 !important;
        grid-template-columns: 42px 60px 54px 60px 42px !important;
        justify-content: center !important;
        align-self: center !important;
        gap: 16px !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        display: grid !important;
        place-items: center !important;
        height: 36px !important;
        min-width: 0 !important;
        padding: 0 !important;
        color: transparent !important;
        font-size: 0 !important;
        line-height: 1 !important;
        border: 1px solid rgba(71, 132, 211, 0.52) !important;
        border-radius: 999px !important;
        background:
            radial-gradient(circle at 50% 32%, rgba(255, 255, 255, 0.12), transparent 34%),
            linear-gradient(180deg, rgba(26, 48, 83, 0.95), rgba(8, 19, 38, 0.96)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.07),
            inset 0 -14px 20px rgba(0, 0, 0, 0.22),
            0 10px 22px rgba(0, 0, 0, 0.18) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button--play {
        width: 54px !important;
        height: 54px !important;
        color: transparent !important;
        font-size: 0 !important;
        background:
            radial-gradient(circle at 44% 34%, rgba(255, 255, 255, 0.42), transparent 28%),
            linear-gradient(180deg, #2fc6ff, #0060c6 78%) !important;
        border-color: rgba(105, 211, 255, 0.8) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.28),
            inset 0 -18px 24px rgba(0, 39, 108, 0.5),
            0 0 26px rgba(0, 154, 255, 0.42) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions {
        grid-column: 1 !important;
        grid-row: 5 !important;
        display: flex !important;
        justify-content: center !important;
        align-self: end !important;
        gap: 8px !important;
        margin: 0 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions button,
    body main.container #jukebox.rei-jukebox .rei-jukebox__actions a {
        width: min(100%, 260px) !important;
        min-height: 28px !important;
        height: 28px !important;
        padding: 0 18px !important;
        font-size: 0.56rem !important;
        letter-spacing: 0.08em !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__actions #jukeboxSpotifyLink {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics {
        min-height: 84px !important;
        margin: 0 !important;
        padding: 0 40px !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics h3 {
        margin: 0 0 8px !important;
        font-size: 0.66rem !important;
        line-height: 1 !important;
        text-align: center !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-track {
        display: flex !important;
        gap: 8px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-behavior: smooth !important;
        scroll-snap-type: x proximity !important;
        scrollbar-width: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-track::-webkit-scrollbar {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card {
        flex: 0 0 calc((100% - 40px) / 6) !important;
        scroll-snap-align: start !important;
        min-height: 58px !important;
        height: 58px !important;
        padding: 6px !important;
        gap: 7px !important;
        border-radius: 8px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card img {
        width: 42px !important;
        height: 42px !important;
        flex-basis: 42px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__body strong {
        font-size: 0.56rem !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__body span {
        font-size: 0.5rem !important;
        line-height: 1.15 !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classic-card__meter {
        right: 8px !important;
        bottom: 6px !important;
        font-size: 0.8rem !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-arrow {
        bottom: 16px !important;
        width: 30px !important;
        height: 30px !important;
        font-size: 1.15rem !important;
        z-index: 3 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-arrow--prev {
        left: 2px !important;
        right: auto !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__classics-arrow--next {
        left: auto !important;
        right: 2px !important;
    }
}

/* Final mobile lock: keep O Espetaculo centered and inside the viewport. */
@media (max-width: 760px) {
    html,
    body,
    body main.container {
        overflow-x: clip !important;
    }

    body main.container #espetaculo.section--immersive {
        box-sizing: border-box !important;
        left: auto !important;
        width: min(calc(100vw - 20px), 430px) !important;
        max-width: min(calc(100vw - 20px), 430px) !important;
        margin: 18px auto 24px !important;
        padding: 18px 14px 16px !important;
        transform: none !important;
        align-items: center !important;
        overflow: hidden !important;
    }

    body main.container #espetaculo .section-kicker {
        margin: 0 auto 8px !important;
        font-size: 0.62rem !important;
        letter-spacing: 0.14em !important;
        text-align: center !important;
    }

    body main.container #espetaculo h2 {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 14px !important;
        font-size: clamp(2.2rem, 11.5vw, 3rem) !important;
        line-height: 0.98 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
    }

    body main.container #espetaculo .experience-mobile-notes {
        width: 100% !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 7px !important;
        margin: 0 0 14px !important;
    }

    body main.container #espetaculo .experience-mobile-notes span {
        min-height: 50px !important;
        padding: 8px 7px !important;
        border-radius: 9px !important;
        font-size: 0.78rem !important;
        line-height: 1.15 !important;
    }

    body main.container #espetaculo .experience-mobile-notes strong {
        margin-bottom: 5px !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.08em !important;
    }

    body main.container #espetaculo .experience-showcase {
        width: min(100%, 300px) !important;
        max-width: 300px !important;
        height: min(348px, calc((100vw - 48px) * 1.12)) !important;
        max-height: 348px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        transform: none !important;
    }

    body main.container #espetaculo .experience-photo-strip,
    body main.container #espetaculo .experience-short {
        width: 100% !important;
        height: 100% !important;
        max-height: 348px !important;
        aspect-ratio: 5 / 6 !important;
        margin: 0 auto !important;
        border-radius: 14px !important;
        transform: none !important;
    }

    body main.container #espetaculo .experience-short video {
        width: 100% !important;
        height: 100% !important;
        max-height: 348px !important;
        object-fit: cover !important;
        object-position: center 32% !important;
        transform: none !important;
    }

    body main.container #espetaculo .experience-recap {
        width: 100% !important;
        margin-top: 14px !important;
    }
}

/* Final mobile lock: keep Uma Historia que Vira Palco compact. */
@media (max-width: 760px) {
    body main.container #legado.section {
        box-sizing: border-box !important;
        width: min(calc(100vw - 20px), 430px) !important;
        max-width: min(calc(100vw - 20px), 430px) !important;
        margin: 18px auto 24px !important;
        padding: 18px 14px 16px !important;
        overflow: hidden !important;
    }

    body main.container #legado .legacy-shell,
    body main.container #legado .legacy-shell--player-only {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
    }

    body main.container #legado .legacy-intro {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        text-align: left !important;
    }

    body main.container #legado .legacy-intro .section-kicker {
        margin: 0 0 8px !important;
        font-size: 0.62rem !important;
        letter-spacing: 0.16em !important;
        text-align: left !important;
    }

    body main.container #legado .legacy-intro h2 {
        max-width: 100% !important;
        margin: 0 0 9px !important;
        font-size: clamp(2rem, 10.2vw, 2.72rem) !important;
        line-height: 0.98 !important;
        letter-spacing: 0 !important;
    }

    body main.container #legado .legacy-intro .section-lead {
        max-width: 100% !important;
        margin: 0 !important;
        font-size: 0.82rem !important;
        line-height: 1.34 !important;
    }

    body main.container #legado .legacy-video-trigger--feature {
        width: min(100%, 360px) !important;
        max-width: 360px !important;
        min-height: 0 !important;
        height: 268px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        border-radius: 14px !important;
        overflow: hidden !important;
        background:
            radial-gradient(circle at 50% 45%, rgba(31, 117, 199, 0.2), transparent 58%),
            linear-gradient(145deg, rgba(18, 55, 91, 0.76), rgba(8, 29, 54, 0.92)) !important;
        transform: none !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media,
    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage {
        display: grid !important;
        place-items: center !important;
        width: 100% !important;
        max-width: 100% !important;
        height: 268px !important;
        min-height: 0 !important;
        max-height: 268px !important;
        aspect-ratio: auto !important;
        border-radius: 14px !important;
        overflow: hidden !important;
        transform: none !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media img {
        width: min(74%, 238px) !important;
        height: auto !important;
        max-width: 238px !important;
        max-height: 238px !important;
        object-fit: contain !important;
        object-position: center !important;
        transform: rotate(-16deg) !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__play {
        width: 48px !important;
        height: 48px !important;
        font-size: 1rem !important;
    }
}

/* Final repair: the legacy video cover is a card, not a tilted LP on mobile. */
@media (max-width: 760px) {
    body main.container #legado .legacy-video-trigger--feature {
        width: min(100%, 360px) !important;
        max-width: 360px !important;
        height: 250px !important;
        min-height: 250px !important;
        display: grid !important;
        place-items: center !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media,
    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media--stage {
        height: 250px !important;
        max-height: 250px !important;
        display: grid !important;
        place-items: center !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media img {
        width: min(82%, 258px) !important;
        max-width: 258px !important;
        height: auto !important;
        max-height: 220px !important;
        object-fit: contain !important;
        transform: none !important;
        filter: drop-shadow(0 18px 28px rgba(0, 0, 0, 0.32)) !important;
    }

    body main.container #legado .legacy-video-trigger__needle {
        display: none !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__play {
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        right: auto !important;
        bottom: auto !important;
        transform: translate(-50%, -50%) !important;
    }
}

/* Final mobile restore: legacy player is a contained turntable before opening video. */
@media (max-width: 760px) {
    body main.container #legado .legacy-video-trigger--feature {
        position: relative !important;
        display: grid !important;
        place-items: center !important;
        width: min(100%, 360px) !important;
        max-width: 360px !important;
        height: 286px !important;
        min-height: 286px !important;
        overflow: hidden !important;
        border-radius: 16px !important;
        background:
            radial-gradient(circle at 38% 38%, rgba(47, 136, 216, 0.2), transparent 42%),
            linear-gradient(145deg, rgba(18, 55, 91, 0.82), rgba(6, 23, 45, 0.96)) !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media {
        position: relative !important;
        display: grid !important;
        place-items: center !important;
        width: 100% !important;
        height: 100% !important;
        max-height: none !important;
        overflow: hidden !important;
        border-radius: 16px !important;
        isolation: isolate !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media::before,
    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
        content: '' !important;
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        width: min(70%, 222px) !important;
        aspect-ratio: 1 !important;
        border-radius: 50% !important;
        pointer-events: none !important;
        transform: translate(-50%, -50%) !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media::before {
        z-index: 1 !important;
        opacity: 0.58 !important;
        background:
            repeating-radial-gradient(circle at center, transparent 0 9px, rgba(255, 255, 255, 0.12) 10px, transparent 12px),
            radial-gradient(circle at 36% 26%, rgba(255, 255, 255, 0.18), transparent 22%) !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
        z-index: 3 !important;
        opacity: 0.28 !important;
        background:
            radial-gradient(circle at center, transparent 0 18%, rgba(255, 255, 255, 0.22) 18.5% 19%, transparent 19.5%),
            conic-gradient(from 18deg, rgba(255, 255, 255, 0.24), transparent 22deg, transparent 100deg, rgba(255, 255, 255, 0.12) 132deg, transparent 172deg, transparent) !important;
        mix-blend-mode: screen !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media img {
        position: relative !important;
        z-index: 2 !important;
        width: min(68%, 216px) !important;
        height: auto !important;
        max-width: 216px !important;
        max-height: 216px !important;
        aspect-ratio: 1 !important;
        border-radius: 50% !important;
        clip-path: circle(50% at 50% 50%) !important;
        object-fit: cover !important;
        object-position: center !important;
        transform: none !important;
        filter: saturate(0.92) contrast(1.08) brightness(0.82) drop-shadow(0 18px 26px rgba(0, 0, 0, 0.36)) !important;
    }

    body main.container #legado .legacy-video-trigger__needle {
        display: block !important;
        position: absolute !important;
        z-index: 5 !important;
        right: 16% !important;
        top: 24% !important;
        width: 104px !important;
        height: 4px !important;
        border-radius: 999px !important;
        background: linear-gradient(90deg, #05080e, #c8d6e6 10%, #05080e 22%, #05080e) !important;
        box-shadow: 0 7px 14px rgba(0, 0, 0, 0.38) !important;
        transform: rotate(132deg) !important;
        transform-origin: 88% 50% !important;
    }

    body main.container #legado .legacy-video-trigger__needle::before {
        content: '' !important;
        position: absolute !important;
        right: -8px !important;
        top: 50% !important;
        width: 18px !important;
        height: 18px !important;
        border-radius: 50% !important;
        background: #05080e !important;
        border: 1px solid rgba(222, 234, 245, 0.42) !important;
        transform: translateY(-50%) !important;
    }

    body main.container #legado .legacy-video-trigger__needle::after {
        content: '' !important;
        position: absolute !important;
        left: -13px !important;
        top: 50% !important;
        width: 17px !important;
        height: 2px !important;
        background: #05080e !important;
        transform: translateY(-50%) rotate(-34deg) !important;
        transform-origin: 100% 50% !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__play {
        position: absolute !important;
        z-index: 6 !important;
        left: 50% !important;
        top: 50% !important;
        right: auto !important;
        bottom: auto !important;
        width: 48px !important;
        height: 48px !important;
        border-radius: 50% !important;
        transform: translate(-50%, -50%) !important;
    }

    body main.container #legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media {
        overflow: hidden !important;
    }

    body main.container #legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media img,
    body main.container #legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::before,
    body main.container #legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::after {
        animation: legacyBannerRecordSpin 5s linear forwards !important;
    }

    body main.container #legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__needle {
        animation: legacyNeedleDropFinal 5s ease-in-out forwards !important;
    }
}

/* Final mobile geometry fix: center the turntable and keep every part inside the card. */
@media (max-width: 760px) {
    body main.container #legado.section {
        padding-top: 32px !important;
        overflow: hidden !important;
    }

    body main.container #legado .legacy-intro h2 {
        margin-top: 0 !important;
        margin-bottom: 12px !important;
        font-size: clamp(2rem, 9.8vw, 2.68rem) !important;
        line-height: 1 !important;
    }

    body main.container #legado .legacy-video-trigger--feature {
        height: 252px !important;
        min-height: 252px !important;
        max-height: 252px !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media {
        height: 252px !important;
        max-height: 252px !important;
        overflow: hidden !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media::before,
    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media::after {
        left: 50% !important;
        top: 52% !important;
        width: min(62%, 208px) !important;
        transform: translate(-50%, -50%) rotate(0deg) !important;
    }

    body main.container #legado .legacy-video-trigger--feature .legacy-video-trigger__media img {
        position: absolute !important;
        left: 50% !important;
        top: 52% !important;
        width: min(59%, 198px) !important;
        height: auto !important;
        max-width: 198px !important;
        max-height: 198px !important;
        transform: translate(-50%, -50%) rotate(-18deg) !important;
    }

    body main.container #legado .legacy-video-trigger__needle {
        right: 21% !important;
        top: 40% !important;
        width: 66px !important;
        transform: rotate(121deg) !important;
    }

    body main.container #legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media img,
    body main.container #legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::before,
    body main.container #legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__media::after {
        animation: legacyMobileRecordSpinCentered 5s linear forwards !important;
    }

    body main.container #legado .legacy-video-trigger--feature.is-opening .legacy-video-trigger__needle {
        animation: legacyMobileNeedleDropContained 5s ease-in-out forwards !important;
    }
}

@keyframes legacyMobileRecordSpinCentered {
    0% {
        transform: translate(-50%, -50%) scale(1) rotate(0deg);
    }

    14% {
        transform: translate(-50%, -50%) scale(0.98) rotate(90deg);
    }

    100% {
        transform: translate(-50%, -50%) scale(0.98) rotate(1800deg);
    }
}

@keyframes legacyMobileNeedleDropContained {
    0%,
    12% {
        opacity: 1;
        transform: rotate(112deg) translate3d(2px, -3px, 0);
    }

    30%,
    88% {
        opacity: 1;
        transform: rotate(122deg) translate3d(-3px, 4px, 0);
    }

    100% {
        opacity: 0;
        transform: rotate(122deg) translate3d(-3px, 4px, 0);
    }
}

/* Mobile visual polish pass: calmer section headers and readable copy. */
@media (max-width: 760px) {
    body main.container .section:not(#jukebox) {
        text-align: left !important;
    }

    body main.container .section:not(#jukebox) .section-kicker,
    body main.container .section:not(#jukebox) .section-kicker--light {
        display: inline-flex !important;
        width: auto !important;
        max-width: 100% !important;
        min-height: 0 !important;
        margin: 0 0 10px !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: #36caff !important;
        font-size: 0.72rem !important;
        line-height: 1.1 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
        text-transform: uppercase !important;
    }

    body main.container .section:not(#jukebox) .section-kicker::before,
    body main.container .section:not(#jukebox) .section-kicker::after,
    body main.container .section:not(#jukebox) .section-kicker--light::before,
    body main.container .section:not(#jukebox) .section-kicker--light::after {
        content: none !important;
        display: none !important;
    }

    body main.container .section:not(#jukebox) > h1,
    body main.container .section:not(#jukebox) > h2,
    body main.container .section:not(#jukebox) .legacy-intro h2,
    body main.container .section:not(#jukebox) .news-article-intro h1 {
        max-width: 100% !important;
        margin: 0 0 12px !important;
        color: #f8fbff !important;
        font-size: clamp(2.15rem, 9vw, 2.78rem) !important;
        line-height: 1.03 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    body main.container .section:not(#jukebox) > p,
    body main.container .section:not(#jukebox) .section-lead {
        max-width: 33rem !important;
        margin: 0 0 16px !important;
        color: rgba(224, 235, 250, 0.82) !important;
        font-size: 0.98rem !important;
        line-height: 1.48 !important;
        text-align: left !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    body main.container #espetaculo.section--immersive {
        width: min(calc(100vw - 24px), 430px) !important;
        max-width: min(calc(100vw - 24px), 430px) !important;
        margin: 18px auto 24px !important;
        padding: 22px 18px 18px !important;
        border-radius: 0 !important;
        background:
            radial-gradient(circle at 68% 12%, rgba(21, 105, 169, 0.18), transparent 42%),
            linear-gradient(180deg, rgba(5, 22, 39, 0.98), rgba(7, 29, 50, 0.98)) !important;
    }

    body main.container #espetaculo .section-kicker {
        color: #58d7ff !important;
        font-size: 0.72rem !important;
        font-weight: 800 !important;
    }

    body main.container #espetaculo h2 {
        font-size: clamp(2.35rem, 10.2vw, 3.05rem) !important;
        line-height: 0.98 !important;
        margin-bottom: 18px !important;
    }

    body main.container #espetaculo > p {
        display: block !important;
        margin: 0 0 16px !important;
        font-size: 0.96rem !important;
        line-height: 1.45 !important;
    }

    body main.container #espetaculo .experience-mobile-notes {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
        width: 100% !important;
        margin: 0 0 16px !important;
    }

    body main.container #espetaculo .experience-mobile-notes span {
        min-height: 58px !important;
        padding: 10px 9px !important;
        border: 1px solid rgba(86, 171, 226, 0.28) !important;
        border-radius: 10px !important;
        background: rgba(255, 255, 255, 0.045) !important;
        color: rgba(230, 238, 250, 0.86) !important;
        font-size: 0.82rem !important;
        line-height: 1.24 !important;
        box-shadow: none !important;
    }

    body main.container #espetaculo .experience-mobile-notes strong {
        display: block !important;
        margin: 0 0 6px !important;
        color: #f8fbff !important;
        font-size: 0.66rem !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
    }

    body.news-page .section--news-landing h1,
    body.news-page .section--news-featured h2,
    body.news-page .section--news-group h2 {
        color: #14345d !important;
        font-size: clamp(2.25rem, 9vw, 2.85rem) !important;
        line-height: 1.03 !important;
    }

    body.news-page .section--news-landing .section-lead,
    body.news-page .section--news-featured .section-lead,
    body.news-page .section--news-group .section-lead {
        max-width: 32rem !important;
        font-size: 1rem !important;
        line-height: 1.48 !important;
    }
}

/* Final mobile contrast repair for light editorial sections. */
@media (max-width: 760px) {
    body main.container #sobre.section,
    body main.container #daniel.section,
    body main.container #novidades.section--news-home {
        color: #17375d !important;
    }

    body main.container #sobre.section h1,
    body main.container #sobre.section h2,
    body main.container #daniel.section h1,
    body main.container #daniel.section h2,
    body main.container #novidades.section--news-home h1,
    body main.container #novidades.section--news-home h2 {
        color: #12345d !important;
        text-shadow: none !important;
    }

    body main.container #sobre.section > p,
    body main.container #sobre.section .section-lead,
    body main.container #daniel.section > p,
    body main.container #daniel.section .bio-intro,
    body main.container #daniel.section .section-lead,
    body main.container #novidades.section--news-home > p,
    body main.container #novidades.section--news-home .section-lead {
        color: rgba(24, 54, 88, 0.8) !important;
        text-shadow: none !important;
    }

    body main.container #sobre.section .section-kicker,
    body main.container #daniel.section .section-kicker,
    body main.container #novidades.section--news-home .section-kicker {
        color: #0aaee8 !important;
        text-shadow: none !important;
    }

    body main.container #daniel.section .bio-card,
    body main.container #daniel.section .bio-card p {
        color: #17375d !important;
        text-shadow: none !important;
    }

    body main.container #novidades.section--news-home .news-card--home .news-card__title,
    body main.container #novidades.section--news-home .news-card--home .news-card__title a {
        color: #f8fbff !important;
    }

    body main.container #novidades.section--news-home .news-card--home .news-card__excerpt,
    body main.container #novidades.section--news-home .news-card--home .news-card__meta {
        color: rgba(224, 235, 250, 0.74) !important;
    }
}

/* Absolute final override: O Espetaculo mobile hierarchy. */
@media (max-width: 760px) {
    body main.container #espetaculo.section--immersive {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0 !important;
        width: min(calc(100vw - 24px), 430px) !important;
        max-width: min(calc(100vw - 24px), 430px) !important;
        margin: 16px auto 24px !important;
        padding: 24px 18px 18px !important;
        text-align: left !important;
        overflow: hidden !important;
    }

    body main.container #espetaculo > .section-kicker {
        order: 1 !important;
        position: static !important;
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 0 8px !important;
        padding: 0 !important;
        transform: none !important;
        text-align: left !important;
        font-size: 0.72rem !important;
        line-height: 1.1 !important;
        letter-spacing: 0.08em !important;
        background: transparent !important;
    }

    body main.container #espetaculo > h2 {
        order: 2 !important;
        position: static !important;
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 12px !important;
        padding: 0 !important;
        transform: none !important;
        font-size: clamp(2.45rem, 10.4vw, 3.08rem) !important;
        line-height: 0.98 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
    }

    body main.container #espetaculo > p {
        order: 3 !important;
        position: static !important;
        display: block !important;
        width: 100% !important;
        max-width: 29rem !important;
        margin: 0 0 18px !important;
        padding: 0 !important;
        transform: none !important;
        font-size: 0.96rem !important;
        line-height: 1.45 !important;
        text-align: left !important;
    }

    body main.container #espetaculo .experience-mobile-notes {
        display: none !important;
    }

    body main.container #espetaculo .experience-showcase {
        order: 4 !important;
        margin-top: 0 !important;
    }

    body main.container #espetaculo .experience-recap {
        order: 5 !important;
    }
}

/* Absolute final news-page mobile guard. */
@media (max-width: 760px) {
    body.news-page {
        overflow-x: hidden !important;
        background: #f4f8fc !important;
    }

    body.news-page .container--news {
        width: 100% !important;
        max-width: 100% !important;
        padding: 14px 12px 28px !important;
        overflow: hidden !important;
    }

    body.news-page .section--news-landing,
    body.news-page .section--news-featured,
    body.news-page .section--news-group,
    body.news-page .section--news-related,
    body.news-page .section--news-article {
        box-sizing: border-box !important;
        width: min(100%, 540px) !important;
        max-width: 100% !important;
        margin: 0 auto 18px !important;
        padding: 28px 22px !important;
        overflow: hidden !important;
    }

    body.news-page .section--news-landing {
        background: linear-gradient(150deg, #082038 0%, #0f477a 100%) !important;
    }

    body.news-page .section--news-featured,
    body.news-page .section--news-group {
        background: linear-gradient(180deg, #06182b 0%, #08233b 100%) !important;
        border: 1px solid rgba(80, 157, 215, 0.18) !important;
    }

    body.news-page .section--news-featured::before,
    body.news-page .section--news-featured::after,
    body.news-page .section--news-group::before,
    body.news-page .section--news-group::after {
        display: none !important;
    }

    body.news-page .section--news-landing h1,
    body.news-page .section--news-featured h2,
    body.news-page .section--news-group h2,
    body.news-page .section--news-related h2,
    body.news-page .section--news-article h1 {
        color: #f8fbff !important;
        font-size: clamp(2.35rem, 10.5vw, 3.15rem) !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    body.news-page .section--news-featured h2,
    body.news-page .section--news-group h2,
    body.news-page .section--news-related h2 {
        font-size: clamp(2.05rem, 8.8vw, 2.65rem) !important;
    }

    body.news-page .section-kicker {
        color: #32d0ff !important;
        text-align: left !important;
        background: transparent !important;
    }

    body.news-page .section-lead,
    body.news-page .section--news-group p,
    body.news-page .section--news-related p {
        color: rgba(230, 240, 252, 0.8) !important;
        font-size: 0.98rem !important;
        line-height: 1.5 !important;
        text-align: left !important;
    }

    body.news-page .news-filter {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        gap: 10px !important;
        width: calc(100% + 22px) !important;
        max-width: calc(100% + 22px) !important;
        margin: 24px -22px 0 0 !important;
        padding: 0 22px 6px 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: none !important;
        -webkit-overflow-scrolling: touch !important;
    }

    body.news-page .news-filter::-webkit-scrollbar {
        display: none !important;
    }

    body.news-page .news-filter__chip {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: max-content !important;
        min-height: 42px !important;
        padding: 0 16px !important;
        border-radius: 0 !important;
        color: #f4f9ff !important;
        white-space: nowrap !important;
    }

    body.news-page .news-featured__intro,
    body.news-page .news-group__header,
    body.news-page .news-grid,
    body.news-page .news-grid--featured {
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 14px !important;
        text-align: left !important;
    }

    body.news-page .news-card,
    body.news-page .news-card--featured {
        width: 100% !important;
        max-width: 100% !important;
        grid-column: auto !important;
        overflow: hidden !important;
        background: rgba(5, 18, 32, 0.72) !important;
        color: #f8fbff !important;
    }

    body.news-page .news-card__title,
    body.news-page .news-card__title a {
        color: #f8fbff !important;
        font-size: 1.2rem !important;
        line-height: 1.18 !important;
        letter-spacing: 0 !important;
    }
}

/* Final word: news archive mobile layout and contrast. */
@media (max-width: 760px) {
    body.news-page {
        overflow-x: hidden !important;
        background: #f4f8fc !important;
    }

    body.news-page .container--news {
        width: 100% !important;
        max-width: 100% !important;
        padding: 14px 12px 28px !important;
        overflow: hidden !important;
    }

    body.news-page .section--news-landing,
    body.news-page .section--news-featured,
    body.news-page .section--news-group,
    body.news-page .section--news-related,
    body.news-page .section--news-article {
        box-sizing: border-box !important;
        width: min(100%, 540px) !important;
        max-width: 100% !important;
        margin: 0 auto 18px !important;
        padding: 28px 22px !important;
        overflow: hidden !important;
        border-radius: 0 !important;
    }

    body.news-page .section--news-landing {
        background:
            radial-gradient(circle at 88% 18%, rgba(47, 183, 255, 0.18), transparent 36%),
            linear-gradient(150deg, #082038 0%, #0f477a 100%) !important;
        color: #f7fbff !important;
    }

    body.news-page .section--news-featured,
    body.news-page .section--news-group {
        background:
            radial-gradient(circle at 12% 0%, rgba(71, 166, 220, 0.16), transparent 34%),
            linear-gradient(180deg, #06182b 0%, #08233b 100%) !important;
        color: #f7fbff !important;
        border: 1px solid rgba(80, 157, 215, 0.18) !important;
    }

    body.news-page .section--news-featured::before,
    body.news-page .section--news-featured::after,
    body.news-page .section--news-group::before,
    body.news-page .section--news-group::after {
        display: none !important;
    }

    body.news-page .section--news-landing .section-kicker,
    body.news-page .section--news-featured .section-kicker,
    body.news-page .section--news-group .section-kicker {
        display: block !important;
        margin: 0 0 12px !important;
        color: #32d0ff !important;
        font-size: 0.72rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.12em !important;
        line-height: 1.1 !important;
        text-align: left !important;
        text-transform: uppercase !important;
        background: transparent !important;
    }

    body.news-page .section--news-landing h1,
    body.news-page .section--news-featured h2,
    body.news-page .section--news-group h2,
    body.news-page .section--news-related h2,
    body.news-page .section--news-article h1 {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 16px !important;
        color: #f8fbff !important;
        font-family: 'Cormorant Garamond', serif !important;
        font-size: clamp(2.45rem, 11vw, 3.25rem) !important;
        font-weight: 600 !important;
        line-height: 0.98 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
        text-shadow: 0 18px 36px rgba(0, 0, 0, 0.18) !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    body.news-page .section--news-featured h2,
    body.news-page .section--news-group h2,
    body.news-page .section--news-related h2 {
        font-size: clamp(2.1rem, 9vw, 2.75rem) !important;
    }

    body.news-page .section--news-landing .section-lead,
    body.news-page .section--news-featured .section-lead,
    body.news-page .section--news-group p,
    body.news-page .section--news-related p,
    body.news-page .section--news-article .section-lead {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        color: rgba(230, 240, 252, 0.8) !important;
        font-size: 0.98rem !important;
        line-height: 1.5 !important;
        text-align: left !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    body.news-page .news-filter {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 10px !important;
        width: calc(100% + 22px) !important;
        max-width: calc(100% + 22px) !important;
        margin: 24px -22px 0 0 !important;
        padding: 0 22px 6px 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: none !important;
        -webkit-overflow-scrolling: touch !important;
    }

    body.news-page .news-filter::-webkit-scrollbar {
        display: none !important;
    }

    body.news-page .news-filter__chip {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: max-content !important;
        min-height: 42px !important;
        padding: 0 16px !important;
        border: 1px solid rgba(130, 197, 245, 0.28) !important;
        border-radius: 0 !important;
        background: rgba(255, 255, 255, 0.1) !important;
        color: #f4f9ff !important;
        box-shadow: none !important;
        font-size: 0.72rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.1em !important;
        white-space: nowrap !important;
        transform: none !important;
    }

    body.news-page .news-filter__chip.is-active,
    body.news-page .news-filter__chip:hover,
    body.news-page .news-filter__chip:focus-visible {
        background: rgba(49, 159, 232, 0.34) !important;
        border-color: rgba(129, 214, 255, 0.5) !important;
        color: #ffffff !important;
        outline: none !important;
    }

    body.news-page .news-featured__intro,
    body.news-page .news-group__header {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        justify-items: start !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 18px !important;
        text-align: left !important;
    }

    body.news-page .news-grid,
    body.news-page .news-grid--featured {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body.news-page .news-card,
    body.news-page .news-card--featured {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        grid-column: auto !important;
        overflow: hidden !important;
        border: 1px solid rgba(89, 165, 221, 0.18) !important;
        border-radius: 0 !important;
        background: rgba(5, 18, 32, 0.72) !important;
        color: #f8fbff !important;
        box-shadow: none !important;
    }

    body.news-page .news-card__media {
        min-height: 0 !important;
        aspect-ratio: 16 / 10 !important;
    }

    body.news-page .news-card__body {
        width: 100% !important;
        max-width: 100% !important;
        padding: 16px !important;
        text-align: left !important;
    }

    body.news-page .news-card__title,
    body.news-page .news-card__title a {
        color: #f8fbff !important;
        font-size: 1.2rem !important;
        line-height: 1.18 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
    }

    body.news-page .news-card__excerpt,
    body.news-page .news-card__meta {
        color: rgba(226, 237, 250, 0.72) !important;
        font-size: 0.88rem !important;
        line-height: 1.48 !important;
    }
}

/* Final mobile repair for the news archive page. */
@media (max-width: 760px) {
    body.news-page {
        overflow-x: hidden !important;
        background: #f4f8fc !important;
    }

    body.news-page .container--news {
        width: 100% !important;
        max-width: 100% !important;
        padding: 14px 12px 28px !important;
        overflow: hidden !important;
    }

    body.news-page .section--news-landing,
    body.news-page .section--news-featured,
    body.news-page .section--news-group,
    body.news-page .section--news-related,
    body.news-page .section--news-article {
        box-sizing: border-box !important;
        width: min(100%, 540px) !important;
        max-width: 100% !important;
        margin: 0 auto 18px !important;
        padding: 28px 22px !important;
        overflow: hidden !important;
        border-radius: 0 !important;
    }

    body.news-page .section--news-landing {
        background:
            radial-gradient(circle at 88% 18%, rgba(47, 183, 255, 0.18), transparent 36%),
            linear-gradient(150deg, #082038 0%, #0f477a 100%) !important;
        color: #f7fbff !important;
    }

    body.news-page .section--news-featured,
    body.news-page .section--news-group {
        background:
            radial-gradient(circle at 12% 0%, rgba(71, 166, 220, 0.16), transparent 34%),
            linear-gradient(180deg, #06182b 0%, #08233b 100%) !important;
        color: #f7fbff !important;
        border: 1px solid rgba(80, 157, 215, 0.18) !important;
    }

    body.news-page .section--news-featured::before,
    body.news-page .section--news-featured::after,
    body.news-page .section--news-group::before,
    body.news-page .section--news-group::after {
        display: none !important;
    }

    body.news-page .section--news-landing .section-kicker,
    body.news-page .section--news-featured .section-kicker,
    body.news-page .section--news-group .section-kicker {
        display: block !important;
        margin: 0 0 12px !important;
        color: #32d0ff !important;
        font-size: 0.72rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.12em !important;
        line-height: 1.1 !important;
        text-align: left !important;
        text-transform: uppercase !important;
        background: transparent !important;
    }

    body.news-page .section--news-landing h1,
    body.news-page .section--news-featured h2,
    body.news-page .section--news-group h2,
    body.news-page .section--news-related h2,
    body.news-page .section--news-article h1 {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 16px !important;
        color: #f8fbff !important;
        font-family: 'Cormorant Garamond', serif !important;
        font-size: clamp(2.45rem, 11vw, 3.25rem) !important;
        font-weight: 600 !important;
        line-height: 0.98 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
        text-shadow: 0 18px 36px rgba(0, 0, 0, 0.18) !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    body.news-page .section--news-featured h2,
    body.news-page .section--news-group h2,
    body.news-page .section--news-related h2 {
        font-size: clamp(2.1rem, 9vw, 2.75rem) !important;
    }

    body.news-page .section--news-landing .section-lead,
    body.news-page .section--news-featured .section-lead,
    body.news-page .section--news-group p,
    body.news-page .section--news-related p,
    body.news-page .section--news-article .section-lead {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        color: rgba(230, 240, 252, 0.8) !important;
        font-size: 0.98rem !important;
        line-height: 1.5 !important;
        text-align: left !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    body.news-page .news-filter {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 10px !important;
        width: calc(100% + 22px) !important;
        max-width: calc(100% + 22px) !important;
        margin: 24px -22px 0 0 !important;
        padding: 0 22px 6px 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: none !important;
        -webkit-overflow-scrolling: touch !important;
    }

    body.news-page .news-filter::-webkit-scrollbar {
        display: none !important;
    }

    body.news-page .news-filter__chip {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: max-content !important;
        min-height: 42px !important;
        padding: 0 16px !important;
        border: 1px solid rgba(130, 197, 245, 0.28) !important;
        border-radius: 0 !important;
        background: rgba(255, 255, 255, 0.1) !important;
        color: #f4f9ff !important;
        box-shadow: none !important;
        font-size: 0.72rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.1em !important;
        white-space: nowrap !important;
        transform: none !important;
    }

    body.news-page .news-filter__chip.is-active,
    body.news-page .news-filter__chip:hover,
    body.news-page .news-filter__chip:focus-visible {
        background: rgba(49, 159, 232, 0.34) !important;
        border-color: rgba(129, 214, 255, 0.5) !important;
        color: #ffffff !important;
        outline: none !important;
    }

    body.news-page .news-featured__intro,
    body.news-page .news-group__header {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        justify-items: start !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 18px !important;
        text-align: left !important;
    }

    body.news-page .news-grid,
    body.news-page .news-grid--featured {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body.news-page .news-card,
    body.news-page .news-card--featured {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        grid-column: auto !important;
        overflow: hidden !important;
        border: 1px solid rgba(89, 165, 221, 0.18) !important;
        border-radius: 0 !important;
        background: rgba(5, 18, 32, 0.72) !important;
        color: #f8fbff !important;
        box-shadow: none !important;
    }

    body.news-page .news-card__media {
        min-height: 0 !important;
        aspect-ratio: 16 / 10 !important;
    }

    body.news-page .news-card__body {
        width: 100% !important;
        max-width: 100% !important;
        padding: 16px !important;
        text-align: left !important;
    }

    body.news-page .news-card__title,
    body.news-page .news-card__title a {
        color: #f8fbff !important;
        font-size: 1.2rem !important;
        line-height: 1.18 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
    }

    body.news-page .news-card__excerpt,
    body.news-page .news-card__meta {
        color: rgba(226, 237, 250, 0.72) !important;
        font-size: 0.88rem !important;
        line-height: 1.48 !important;
    }
}

/* Absolute final override: O Espetaculo mobile hierarchy. */
@media (max-width: 760px) {
    body main.container #espetaculo.section--immersive {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0 !important;
        width: min(calc(100vw - 24px), 430px) !important;
        max-width: min(calc(100vw - 24px), 430px) !important;
        margin: 16px auto 24px !important;
        padding: 24px 18px 18px !important;
        text-align: left !important;
        overflow: hidden !important;
    }

    body main.container #espetaculo > .section-kicker {
        order: 1 !important;
        position: static !important;
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 0 8px !important;
        padding: 0 !important;
        transform: none !important;
        text-align: left !important;
        font-size: 0.72rem !important;
        line-height: 1.1 !important;
        letter-spacing: 0.08em !important;
        background: transparent !important;
    }

    body main.container #espetaculo > h2 {
        order: 2 !important;
        position: static !important;
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 12px !important;
        padding: 0 !important;
        transform: none !important;
        font-size: clamp(2.45rem, 10.4vw, 3.08rem) !important;
        line-height: 0.98 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
    }

    body main.container #espetaculo > p {
        order: 3 !important;
        position: static !important;
        display: block !important;
        width: 100% !important;
        max-width: 29rem !important;
        margin: 0 0 18px !important;
        padding: 0 !important;
        transform: none !important;
        font-size: 0.96rem !important;
        line-height: 1.45 !important;
        text-align: left !important;
    }

    body main.container #espetaculo .experience-mobile-notes {
        display: none !important;
    }

    body main.container #espetaculo .experience-showcase {
        order: 4 !important;
        margin-top: 0 !important;
    }

    body main.container #espetaculo .experience-recap {
        order: 5 !important;
    }
}

/* Mobile hard reset for O Espetaculo: no overlap, no mini cards, clear reading order. */
@media (max-width: 760px) {
    body main.container #espetaculo.section--immersive {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0 !important;
        width: min(calc(100vw - 24px), 430px) !important;
        max-width: min(calc(100vw - 24px), 430px) !important;
        margin: 16px auto 24px !important;
        padding: 24px 18px 18px !important;
        overflow: hidden !important;
        text-align: left !important;
    }

    body main.container #espetaculo > .section-kicker {
        order: 1 !important;
        position: static !important;
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 0 8px !important;
        padding: 0 !important;
        transform: none !important;
        text-align: left !important;
        color: #3bd2ff !important;
        font-size: 0.72rem !important;
        font-weight: 800 !important;
        line-height: 1.1 !important;
        letter-spacing: 0.08em !important;
        background: transparent !important;
    }

    body main.container #espetaculo > h2 {
        order: 2 !important;
        position: static !important;
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 12px !important;
        padding: 0 !important;
        transform: none !important;
        color: #f8fbff !important;
        font-size: clamp(2.45rem, 10.4vw, 3.08rem) !important;
        line-height: 0.98 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
    }

    body main.container #espetaculo > p {
        order: 3 !important;
        position: static !important;
        display: block !important;
        width: 100% !important;
        max-width: 29rem !important;
        margin: 0 0 18px !important;
        padding: 0 !important;
        transform: none !important;
        color: rgba(224, 235, 250, 0.78) !important;
        font-size: 0.96rem !important;
        line-height: 1.45 !important;
        text-align: left !important;
    }

    body main.container #espetaculo .experience-mobile-notes {
        display: none !important;
    }

    body main.container #espetaculo .experience-showcase {
        order: 4 !important;
        margin-top: 0 !important;
    }

    body main.container #espetaculo .experience-recap {
        order: 5 !important;
    }
}

/* Mobile text repair pass: keep headings, leads and news cards readable. */
@media (max-width: 760px) {
    body main.container .section:not(#jukebox) > .section-kicker,
    body main.container .section:not(#jukebox) .section-kicker,
    body main.container .section:not(#jukebox) > h1,
    body main.container .section:not(#jukebox) > h2,
    body main.container .section:not(#jukebox) .section-lead {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
        letter-spacing: 0 !important;
    }

    body main.container .section:not(#jukebox) > h1,
    body main.container .section:not(#jukebox) > h2 {
        line-height: 1.02 !important;
        text-wrap: balance !important;
    }

    body main.container .section:not(#jukebox) .section-lead,
    body main.container .section:not(#jukebox) p {
        line-height: 1.48 !important;
        text-wrap: pretty !important;
    }

    body.news-page,
    body.news-page .container--news {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: clip !important;
    }

    body.news-page .container--news {
        padding-inline: 10px !important;
    }

    body.news-page .section--news-landing,
    body.news-page .section--news-featured,
    body.news-page .section--news-group,
    body.news-page .section--news-related,
    body.news-page .section--news-article {
        box-sizing: border-box !important;
        width: min(calc(100vw - 20px), 430px) !important;
        max-width: min(calc(100vw - 20px), 430px) !important;
        margin-inline: auto !important;
        padding-inline: 18px !important;
        overflow: hidden !important;
    }

    body.news-page .section--news-landing h1,
    body.news-page .section--news-featured h2,
    body.news-page .section--news-group h2,
    body.news-page .section--news-related h2,
    body.news-page .section--news-article h1,
    body.news-page .news-article-body h2 {
        width: 100% !important;
        max-width: 100% !important;
        margin-inline: 0 !important;
        text-align: left !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        letter-spacing: 0 !important;
    }

    body.news-page .section--news-landing h1,
    body.news-page .section--news-article h1 {
        font-size: 2.45rem !important;
        line-height: 1.02 !important;
    }

    body.news-page .section--news-featured h2,
    body.news-page .section--news-group h2,
    body.news-page .section--news-related h2,
    body.news-page .news-article-body h2 {
        font-size: 2rem !important;
        line-height: 1.08 !important;
    }

    body.news-page .section-lead,
    body.news-page .news-article-lead,
    body.news-page .news-article-body p,
    body.news-page .news-card__excerpt {
        width: 100% !important;
        max-width: 100% !important;
        margin-inline: 0 !important;
        text-align: left !important;
        font-size: 1rem !important;
        line-height: 1.5 !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    body.news-page .news-filter {
        display: flex !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: auto !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
    }

    body.news-page .news-grid,
    body.news-page .news-grid--featured,
    body.news-page .news-grid--related,
    body.news-page .news-article-layout,
    body.news-page .news-article-hero {
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 16px !important;
    }

    body.news-page .news-card,
    body.news-page .news-card--featured {
        grid-column: auto !important;
        grid-row: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        text-align: left !important;
    }

    body.news-page .news-card__body {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 18px !important;
        text-align: left !important;
    }

    body.news-page .news-card__title,
    body.news-page .news-card__title a,
    body.news-page.news-page--listing .news-grid--featured > .news-card:nth-child(1) .news-card__title,
    body.news-page.news-page--listing .news-grid--featured > .news-card:nth-child(1) .news-card__title a,
    body.news-page.news-page--listing .news-grid--featured > .news-card:nth-child(n + 2) .news-card__title,
    body.news-page.news-page--listing .news-grid--featured > .news-card:nth-child(n + 2) .news-card__title a {
        width: 100% !important;
        max-width: 100% !important;
        font-size: 1.45rem !important;
        line-height: 1.12 !important;
        letter-spacing: 0 !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    #quiz.quiz-entry,
    .section--news-home,
    .site-footer--home-lean .site-footer__panel,
    .site-footer--home-lean .site-footer__headline {
        box-sizing: border-box !important;
        width: min(calc(100vw - 20px), 430px) !important;
        max-width: min(calc(100vw - 20px), 430px) !important;
        margin-inline: auto !important;
    }

    #quiz.quiz-entry {
        grid-template-columns: 1fr !important;
        padding-inline: 18px !important;
        text-align: left !important;
    }

    #quiz.quiz-entry .quiz-entry__content,
    #quiz.quiz-entry .quiz-entry__actions {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        text-align: left !important;
    }

    #quiz.quiz-entry h2 {
        width: 100% !important;
        max-width: 100% !important;
        font-size: 2rem !important;
        line-height: 1.08 !important;
        letter-spacing: 0 !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    .section--news-home .news-card--home,
    .section--news-home .news-card--home .news-card__body {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .section--news-home .news-card--home {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto 1fr !important;
    }

    .section--news-home .news-card--home .news-card__media {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .section--news-home .news-card--home .news-card__body {
        padding-inline: 18px !important;
    }

    .section--news-home .news-card--home .news-card__title,
    .section--news-home .news-card--home .news-card__title a,
    .section--news-home .news-card--home .news-card__excerpt {
        width: 100% !important;
        max-width: 100% !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    .site-footer--home-lean .site-footer__brandline,
    .site-footer--home-lean .site-footer__headline,
    .site-footer--home-lean .site-footer__title,
    .site-footer--home-lean .site-footer__lead,
    body.news-page .site-footer__location,
    body.news-page .site-footer--news .site-footer__location,
    .site-footer--news .site-footer__location {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        text-align: left !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    .site-footer--home-lean .site-footer__title {
        font-size: 1.45rem !important;
        line-height: 1.16 !important;
    }
}

/* Mobile polish: clean, lighter opening for O Espetaculo. */
@media (max-width: 760px) {
    body main.container #espetaculo.section--immersive {
        width: min(calc(100vw - 20px), 430px) !important;
        max-width: min(calc(100vw - 20px), 430px) !important;
        margin: 12px auto 22px !important;
        padding: 18px 16px 16px !important;
        background:
            radial-gradient(circle at 76% 8%, rgba(40, 145, 205, 0.12), transparent 38%),
            linear-gradient(180deg, rgba(5, 20, 36, 0.98), rgba(7, 28, 49, 0.98)) !important;
    }

    body main.container #espetaculo > p {
        max-width: 100% !important;
        margin: 0 0 12px !important;
        color: rgba(221, 232, 246, 0.72) !important;
        font-size: 0.9rem !important;
        line-height: 1.38 !important;
    }

    body main.container #espetaculo .section-kicker {
        display: block !important;
        width: 100% !important;
        margin: 0 0 7px !important;
        color: #39cfff !important;
        font-size: 0.66rem !important;
        font-weight: 800 !important;
        line-height: 1 !important;
        letter-spacing: 0.08em !important;
        text-align: center !important;
    }

    body main.container #espetaculo h2 {
        margin: 0 0 14px !important;
        font-size: clamp(2.12rem, 9.2vw, 2.75rem) !important;
        line-height: 1.02 !important;
    }

    body main.container #espetaculo .experience-mobile-notes {
        gap: 7px !important;
        margin: 0 0 14px !important;
    }

    body main.container #espetaculo .experience-mobile-notes span {
        min-height: 46px !important;
        padding: 8px 8px !important;
        border-color: rgba(87, 168, 220, 0.22) !important;
        border-radius: 9px !important;
        background: rgba(255, 255, 255, 0.035) !important;
        color: rgba(224, 234, 247, 0.78) !important;
        font-size: 0.72rem !important;
        line-height: 1.18 !important;
    }

    body main.container #espetaculo .experience-mobile-notes strong {
        margin: 0 0 4px !important;
        color: rgba(248, 251, 255, 0.92) !important;
        font-size: 0.58rem !important;
        letter-spacing: 0.02em !important;
    }
}

/* Final mobile header polish: softer hierarchy after all legacy overrides. */
@media (max-width: 760px) {
    body main.container .section:not(#jukebox) .section-kicker,
    body main.container .section:not(#jukebox) .section-kicker--light {
        display: inline-flex !important;
        width: auto !important;
        max-width: 100% !important;
        min-height: 0 !important;
        margin: 0 0 10px !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: #36caff !important;
        font-size: 0.72rem !important;
        line-height: 1.12 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
    }

    body main.container .section:not(#jukebox) .section-kicker::before,
    body main.container .section:not(#jukebox) .section-kicker::after,
    body main.container .section:not(#jukebox) .section-kicker--light::before,
    body main.container .section:not(#jukebox) .section-kicker--light::after {
        content: none !important;
        display: none !important;
    }

    body main.container #espetaculo.section--immersive {
        width: min(calc(100vw - 24px), 430px) !important;
        max-width: min(calc(100vw - 24px), 430px) !important;
        margin: 18px auto 24px !important;
        padding: 22px 18px 18px !important;
        border-radius: 0 !important;
        background:
            radial-gradient(circle at 68% 12%, rgba(21, 105, 169, 0.18), transparent 42%),
            linear-gradient(180deg, rgba(5, 22, 39, 0.98), rgba(7, 29, 50, 0.98)) !important;
    }

    body main.container #espetaculo h2 {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 16px !important;
        color: #f8fbff !important;
        font-size: clamp(2.28rem, 9.8vw, 3rem) !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
    }

    body main.container #espetaculo > p {
        display: block !important;
        max-width: 33rem !important;
        margin: 0 0 16px !important;
        color: rgba(224, 235, 250, 0.82) !important;
        font-size: 0.96rem !important;
        line-height: 1.45 !important;
        text-align: left !important;
    }

    body main.container #espetaculo .experience-mobile-notes {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
        margin: 0 0 16px !important;
    }

    body main.container #espetaculo .experience-mobile-notes span {
        min-height: 58px !important;
        padding: 10px 9px !important;
        border: 1px solid rgba(86, 171, 226, 0.28) !important;
        border-radius: 10px !important;
        background: rgba(255, 255, 255, 0.045) !important;
        color: rgba(230, 238, 250, 0.86) !important;
        font-size: 0.82rem !important;
        line-height: 1.24 !important;
        box-shadow: none !important;
    }

    body main.container #espetaculo .experience-mobile-notes strong {
        margin: 0 0 6px !important;
        color: #f8fbff !important;
        font-size: 0.66rem !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
    }

    body.news-page .section--news-landing h1,
    body.news-page .section--news-featured h2,
    body.news-page .section--news-group h2 {
        color: #14345d !important;
        font-size: clamp(2.25rem, 9vw, 2.85rem) !important;
        line-height: 1.03 !important;
        letter-spacing: 0 !important;
    }

    body.news-page .section--news-landing .section-lead,
    body.news-page .section--news-featured .section-lead,
    body.news-page .section--news-group .section-lead {
        max-width: 32rem !important;
        font-size: 1rem !important;
        line-height: 1.48 !important;
    }
}

/* Absolute final override: O Espetaculo mobile hierarchy. */
@media (max-width: 760px) {
    body main.container #espetaculo.section--immersive {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0 !important;
        width: min(calc(100vw - 24px), 430px) !important;
        max-width: min(calc(100vw - 24px), 430px) !important;
        margin: 16px auto 24px !important;
        padding: 24px 18px 18px !important;
        text-align: left !important;
        overflow: hidden !important;
    }

    body main.container #espetaculo > .section-kicker {
        order: 1 !important;
        position: static !important;
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 0 8px !important;
        padding: 0 !important;
        transform: none !important;
        text-align: left !important;
        font-size: 0.72rem !important;
        line-height: 1.1 !important;
        letter-spacing: 0.08em !important;
        background: transparent !important;
    }

    body main.container #espetaculo > h2 {
        order: 2 !important;
        position: static !important;
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 12px !important;
        padding: 0 !important;
        transform: none !important;
        font-size: clamp(2.45rem, 10.4vw, 3.08rem) !important;
        line-height: 0.98 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
    }

    body main.container #espetaculo > p {
        order: 3 !important;
        position: static !important;
        display: block !important;
        width: 100% !important;
        max-width: 29rem !important;
        margin: 0 0 18px !important;
        padding: 0 !important;
        transform: none !important;
        font-size: 0.96rem !important;
        line-height: 1.45 !important;
        text-align: left !important;
    }

    body main.container #espetaculo .experience-mobile-notes {
        display: none !important;
    }

    body main.container #espetaculo .experience-showcase {
        order: 4 !important;
        margin-top: 0 !important;
    }

    body main.container #espetaculo .experience-recap {
        order: 5 !important;
    }
}

/* EOF news-page mobile guard. */
@media (max-width: 760px) {
    body.news-page {
        overflow-x: hidden !important;
        background: #f4f8fc !important;
    }

    body.news-page .container--news {
        width: 100% !important;
        max-width: 100% !important;
        padding: 14px 12px 28px !important;
        overflow: hidden !important;
    }

    body.news-page .section--news-landing,
    body.news-page .section--news-featured,
    body.news-page .section--news-group,
    body.news-page .section--news-related,
    body.news-page .section--news-article {
        width: min(100%, 540px) !important;
        max-width: 100% !important;
        margin: 0 auto 18px !important;
        padding: 28px 22px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    body.news-page .section--news-landing {
        background: linear-gradient(150deg, #082038 0%, #0f477a 100%) !important;
    }

    body.news-page .section--news-featured,
    body.news-page .section--news-group {
        background: linear-gradient(180deg, #06182b 0%, #08233b 100%) !important;
        border: 1px solid rgba(80, 157, 215, 0.18) !important;
    }

    body.news-page .section--news-featured::before,
    body.news-page .section--news-featured::after,
    body.news-page .section--news-group::before,
    body.news-page .section--news-group::after {
        display: none !important;
    }

    body.news-page .section--news-landing h1,
    body.news-page .section--news-featured h2,
    body.news-page .section--news-group h2,
    body.news-page .section--news-related h2,
    body.news-page .section--news-article h1 {
        color: #f8fbff !important;
        font-size: clamp(2.35rem, 10.5vw, 3.15rem) !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    body.news-page .section--news-featured h2,
    body.news-page .section--news-group h2,
    body.news-page .section--news-related h2 {
        font-size: clamp(2.05rem, 8.8vw, 2.65rem) !important;
    }

    body.news-page .section-kicker {
        color: #32d0ff !important;
        text-align: left !important;
        background: transparent !important;
    }

    body.news-page .section-lead,
    body.news-page .section--news-group p,
    body.news-page .section--news-related p {
        color: rgba(230, 240, 252, 0.8) !important;
        font-size: 0.98rem !important;
        line-height: 1.5 !important;
        text-align: left !important;
    }

    body.news-page .news-filter {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        gap: 10px !important;
        width: calc(100% + 22px) !important;
        max-width: calc(100% + 22px) !important;
        margin: 24px -22px 0 0 !important;
        padding: 0 22px 6px 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: none !important;
        -webkit-overflow-scrolling: touch !important;
    }

    body.news-page .news-filter::-webkit-scrollbar {
        display: none !important;
    }

    body.news-page .news-filter__chip {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: max-content !important;
        min-height: 42px !important;
        padding: 0 16px !important;
        border-radius: 0 !important;
        color: #f4f9ff !important;
        white-space: nowrap !important;
    }

    body.news-page .news-featured__intro,
    body.news-page .news-group__header,
    body.news-page .news-grid,
    body.news-page .news-grid--featured {
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 14px !important;
        text-align: left !important;
    }

    body.news-page .news-card,
    body.news-page .news-card--featured {
        width: 100% !important;
        max-width: 100% !important;
        grid-column: auto !important;
        overflow: hidden !important;
        background: rgba(5, 18, 32, 0.72) !important;
        color: #f8fbff !important;
    }

    body.news-page .news-card__title,
    body.news-page .news-card__title a {
        color: #f8fbff !important;
        font-size: 1.2rem !important;
        line-height: 1.18 !important;
        letter-spacing: 0 !important;
    }
}

/* EOF home section contrast guard: prevent global mobile polish from washing out light sections. */
@media (max-width: 760px) {
    body main.container #bilhetes.section--tickets,
    body main.container #contactos.section--contacts-compact {
        background:
            radial-gradient(circle at 12% 8%, rgba(66, 172, 225, 0.08), transparent 34%),
            linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 249, 253, 0.96)) !important;
        color: #16365e !important;
    }

    body main.container #bilhetes > h2,
    body main.container #contactos > h2 {
        color: #113866 !important;
        text-shadow: none !important;
    }

    body main.container #bilhetes > .section-lead,
    body main.container #contactos > .section-lead {
        color: rgba(28, 58, 94, 0.76) !important;
        text-shadow: none !important;
    }

    body main.container #bilhetes .section-kicker,
    body main.container #contactos .section-kicker {
        color: #12b9ef !important;
    }

    body main.container #bilhetes .tickets-shell {
        border-color: rgba(22, 67, 111, 0.14) !important;
        background: rgba(255, 255, 255, 0.76) !important;
        box-shadow: 0 18px 42px rgba(14, 48, 82, 0.1) !important;
    }

    body main.container #bilhetes .tickets-copy strong {
        color: #123c6d !important;
    }

    body main.container #bilhetes .tickets-copy p {
        color: rgba(24, 58, 96, 0.82) !important;
    }

    body main.container #bilhetes .ticket-doodle {
        color: rgba(18, 67, 112, 0.22) !important;
    }

    body main.container #bilhetes .tickets-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        width: 100% !important;
    }

    body main.container #bilhetes .tickets-actions .btn {
        width: 100% !important;
        min-height: 54px !important;
        margin-top: 0 !important;
        color: #ffffff !important;
        background: #123f72 !important;
        border-color: #123f72 !important;
    }

    body main.container #bilhetes .tickets-actions .btn--ghost {
        color: #123f72 !important;
        background: rgba(255, 255, 255, 0.82) !important;
        border-color: rgba(18, 63, 114, 0.26) !important;
        box-shadow: 0 10px 24px rgba(14, 48, 82, 0.08) !important;
    }

    body main.container #contactos .contact-compact__primary {
        color: #f8fbff !important;
    }

    body main.container #contactos .contact-compact__primary strong {
        color: #ffffff !important;
    }

    body main.container #contactos .contact-compact__primary p {
        color: rgba(226, 241, 255, 0.82) !important;
    }

    body main.container #contactos .contact-compact__panel strong,
    body main.container #contactos .contact-compact__numbers a {
        color: #123c6d !important;
    }

    body main.container #presskit.section--presskit,
    body main.container #presskit.section--presskit > h2,
    body main.container #presskit.section--presskit .presskit-copy h2,
    body main.container #presskit.section--presskit .presskit-quote strong,
    body main.container #presskit.section--presskit .presskit-list h3 {
        color: #f8fbff !important;
        text-shadow: none !important;
    }

    body main.container #presskit.section--presskit .section-lead,
    body main.container #presskit.section--presskit .presskit-copy .section-lead,
    body main.container #presskit.section--presskit .presskit-grid article p,
    body main.container #presskit.section--presskit .presskit-list li {
        color: rgba(226, 241, 252, 0.84) !important;
    }

    body main.container #presskit .presskit-actions .btn {
        width: 100% !important;
        min-height: 54px !important;
        margin-top: 0 !important;
    }

    body main.container #presskit .presskit-actions .btn--ghost {
        color: #eaf7ff !important;
        background: rgba(255, 255, 255, 0.08) !important;
        border-color: rgba(145, 205, 255, 0.38) !important;
        box-shadow: inset 0 0 0 1px rgba(145, 205, 255, 0.08), 0 12px 28px rgba(0, 10, 22, 0.16) !important;
    }
}

/* EOF light-section contrast hard stop: keep pale sections readable in every viewport and DevTools split width. */
body main.container #bilhetes.section--tickets,
body main.container #contactos.section--contacts-compact {
    background:
        radial-gradient(circle at 12% 8%, rgba(66, 172, 225, 0.08), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 249, 253, 0.96)) !important;
    color: #16365e !important;
}

body main.container #bilhetes.section--tickets > h2,
body main.container #contactos.section--contacts-compact > h2 {
    color: #113866 !important;
    text-shadow: none !important;
    opacity: 1 !important;
}

body main.container #bilhetes.section--tickets > .section-lead,
body main.container #contactos.section--contacts-compact > .section-lead {
    color: rgba(28, 58, 94, 0.82) !important;
    text-shadow: none !important;
    opacity: 1 !important;
}

body main.container #bilhetes.section--tickets > .section-kicker,
body main.container #contactos.section--contacts-compact > .section-kicker {
    color: #12b9ef !important;
    text-shadow: none !important;
    opacity: 1 !important;
}

body main.container #bilhetes.section--tickets .tickets-copy strong {
    color: #123c6d !important;
}

body main.container #bilhetes.section--tickets .tickets-copy p {
    color: rgba(24, 58, 96, 0.84) !important;
}

body main.container #contactos.section--contacts-compact .contact-compact__primary {
    color: #f8fbff !important;
}

body main.container #contactos.section--contacts-compact .contact-compact__primary .contact-compact__label {
    color: rgba(226, 241, 255, 0.78) !important;
}

body main.container #contactos.section--contacts-compact .contact-compact__primary strong {
    color: #ffffff !important;
}

body main.container #contactos.section--contacts-compact .contact-compact__primary p {
    color: rgba(226, 241, 255, 0.84) !important;
}

body main.container #contactos.section--contacts-compact .contact-compact__action {
    color: #ffffff !important;
}

body main.container #contactos.section--contacts-compact .contact-compact__action--accent {
    color: #0f2a48 !important;
}

body main.container #contactos.section--contacts-compact .contact-compact__panel {
    color: #183a60 !important;
}

body main.container #contactos.section--contacts-compact .contact-compact__panel .contact-compact__label {
    color: rgba(18, 92, 148, 0.78) !important;
}

body main.container #contactos.section--contacts-compact .contact-compact__panel strong,
body main.container #contactos.section--contacts-compact .contact-compact__numbers a {
    color: #123c6d !important;
}

body main.container #contactos.section--contacts-compact .contact-compact__panel > span:last-child {
    color: rgba(34, 55, 79, 0.72) !important;
}

/* EOF mobile hero composition: tighter first screen, better video crop, cleaner CTAs. */
@media (max-width: 640px) {
    body .hero#hero {
        height: min(620px, calc(100svh - var(--site-header-height, 70px))) !important;
        min-height: 540px !important;
        margin-top: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        background: #061421 !important;
        border-top: 3px solid rgba(207, 226, 239, 0.86);
    }

    body .hero#hero::after {
        display: block !important;
        height: 52% !important;
        background:
            linear-gradient(180deg, rgba(3, 12, 25, 0) 0%, rgba(3, 12, 25, 0.18) 28%, rgba(3, 12, 25, 0.82) 100%) !important;
    }

    body .hero#hero .hero-media {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        padding: 0 !important;
        border-radius: 0 !important;
        overflow: hidden !important;
    }

    body .hero#hero .hero-media::after {
        display: block !important;
        z-index: 2 !important;
        background:
            linear-gradient(180deg, rgba(2, 9, 19, 0.18) 0%, rgba(2, 9, 19, 0.04) 34%, rgba(2, 9, 19, 0.58) 70%, rgba(2, 9, 19, 0.92) 100%),
            linear-gradient(90deg, rgba(2, 9, 19, 0.82) 0%, rgba(2, 9, 19, 0.42) 42%, rgba(2, 9, 19, 0.12) 100%) !important;
    }

    body .hero#hero .hero-video-shell {
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        margin: 0 !important;
        border-radius: 0 !important;
    }

    body .hero#hero .hero-video-shell__embed,
    body .hero#hero .hero-video-shell__poster img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: 59% 54% !important;
        filter: saturate(1.08) contrast(1.12) brightness(0.82) !important;
    }

    body .hero#hero .hero-content {
        position: relative !important;
        inset: auto !important;
        z-index: 4 !important;
        width: 100% !important;
        height: 100% !important;
        padding: 0 18px 36px !important;
        display: flex !important;
        align-items: flex-end !important;
    }

    body .hero#hero .hero-copy {
        width: 100% !important;
        max-width: 370px !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    body .hero#hero .hero-copy::before {
        content: "" !important;
        position: absolute !important;
        inset: -24px -18px -20px -18px !important;
        z-index: -1 !important;
        border: 0 !important;
        background:
            linear-gradient(180deg, rgba(2, 11, 22, 0) 0%, rgba(2, 11, 22, 0.52) 34%, rgba(2, 11, 22, 0.82) 100%) !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
    }

    body .hero#hero .eyebrow {
        margin: 0 0 7px !important;
        color: rgba(248, 251, 255, 0.94) !important;
        font-size: 0.78rem !important;
        line-height: 1.05 !important;
        letter-spacing: 0.13em !important;
    }

    body .hero#hero h1 {
        max-width: 7.3ch !important;
        margin: 0 !important;
        color: #ffffff !important;
        font-size: clamp(3.08rem, 15vw, 3.78rem) !important;
        line-height: 0.89 !important;
        letter-spacing: 0 !important;
        text-shadow: 0 18px 42px rgba(0, 0, 0, 0.42) !important;
    }

    body .hero#hero .hero-copy > p:not(.eyebrow):not(.hero-slogan) {
        max-width: 26ch !important;
        margin: 14px 0 0 !important;
        color: rgba(248, 251, 255, 0.9) !important;
        font-size: 0.96rem !important;
        line-height: 1.42 !important;
        text-shadow: 0 10px 26px rgba(0, 0, 0, 0.45) !important;
    }

    body .hero#hero .hero-slogan {
        display: none !important;
    }

    body .hero#hero .hero-actions {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
        width: 100% !important;
        margin-top: 16px !important;
    }

    body .hero#hero .hero-actions .btn {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 12px !important;
        border-radius: 0 !important;
        font-size: 0.72rem !important;
        font-weight: 900 !important;
        letter-spacing: 0.08em !important;
        line-height: 1.1 !important;
        text-align: center !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.14),
            0 14px 30px rgba(0, 8, 18, 0.24) !important;
    }

    body .hero#hero .hero-actions .btn:first-child {
        grid-column: 1 / -1 !important;
        min-height: 50px !important;
        background: linear-gradient(180deg, rgba(25, 101, 157, 0.96), rgba(15, 65, 112, 0.98)) !important;
        border-color: rgba(83, 202, 255, 0.34) !important;
        color: #ffffff !important;
    }

    body .hero#hero .hero-actions .btn--light {
        background: rgba(4, 18, 34, 0.42) !important;
        border-color: rgba(190, 226, 255, 0.26) !important;
        color: #f8fbff !important;
    }

    body .hero#hero .hero-actions .btn--quiz {
        background: rgba(255, 255, 255, 0.1) !important;
        border-color: rgba(243, 235, 223, 0.26) !important;
        color: #f8fbff !important;
    }

    body .hero#hero .hero-actions .btn--quiz::before {
        display: none !important;
    }

    body .hero#hero .scroll-cue {
        display: none !important;
    }
}

@media (max-width: 374px) {
    body .hero#hero {
        min-height: 510px !important;
    }

    body .hero#hero .hero-content {
        padding-inline: 14px !important;
        padding-bottom: 26px !important;
    }

    body .hero#hero h1 {
        font-size: clamp(2.84rem, 14.5vw, 3.3rem) !important;
    }

    body .hero#hero .hero-copy > p:not(.eyebrow):not(.hero-slogan) {
        font-size: 0.91rem !important;
    }
}
/* Jukebox mobile controls: single clean implementation. */
.jukebox-control-icon {
    display: block;
    width: 22px;
    height: 22px;
    margin: 0;
    overflow: visible;
    color: #f8fbff;
    fill: currentColor;
    stroke: currentColor;
    stroke-width: 2.05;
    stroke-linecap: round;
    stroke-linejoin: round;
    filter: drop-shadow(0 0 9px rgba(255, 255, 255, 0.34));
    transform: none;
    pointer-events: none;
}

.jukebox-control-ring__button--play .jukebox-control-icon {
    width: 26px;
    height: 26px;
}

.jukebox-control-icon--pause {
    display: none;
}

#jukeboxToggle.is-playing .jukebox-control-icon--play,
#jukebox.is-playing #jukeboxToggle .jukebox-control-icon--play {
    display: none;
}

#jukeboxToggle.is-playing .jukebox-control-icon--pause,
#jukebox.is-playing #jukeboxToggle .jukebox-control-icon--pause {
    display: block;
}

@media (max-width: 760px) {
    body main.container #jukebox.rei-jukebox .rei-jukebox__panel {
        grid-template-rows: auto 82px 4px 58px 38px !important;
        gap: 8px !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq {
        display: grid !important;
        grid-template-columns: repeat(20, minmax(0, 1fr)) !important;
        align-items: end !important;
        width: 100% !important;
        height: 82px !important;
        margin: 0 !important;
        padding: 0 16px 15px !important;
        gap: 4px !important;
        border: 1px solid rgba(53, 148, 220, 0.34) !important;
        border-radius: 8px !important;
        background:
            linear-gradient(180deg, rgba(6, 22, 40, 0.86), rgba(2, 8, 19, 0.98)),
            radial-gradient(circle at 50% 105%, rgba(20, 173, 255, 0.22), transparent 62%) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.08),
            inset 0 -22px 34px rgba(0, 134, 228, 0.09),
            0 12px 28px rgba(0, 7, 18, 0.18) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq::before {
        content: "" !important;
        position: absolute !important;
        left: 16px !important;
        right: 16px !important;
        bottom: 13px !important;
        height: 1px !important;
        background: linear-gradient(90deg, transparent, rgba(88, 205, 255, 0.44), transparent) !important;
        box-shadow: 0 0 12px rgba(0, 188, 255, 0.22) !important;
        pointer-events: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq::after {
        content: "" !important;
        position: absolute !important;
        inset: 0 !important;
        background:
            linear-gradient(90deg, rgba(255, 255, 255, 0.035), transparent 18%, transparent 82%, rgba(255, 255, 255, 0.025)),
            linear-gradient(115deg, transparent 0 41%, rgba(255, 255, 255, 0.055) 50%, transparent 60% 100%) !important;
        pointer-events: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span {
        display: block !important;
        align-self: end !important;
        width: 100% !important;
        min-height: 10px !important;
        border-radius: 5px 5px 1px 1px !important;
        background:
            repeating-linear-gradient(
                to top,
                rgba(105, 225, 255, 0.82) 0 5px,
                rgba(105, 225, 255, 0.82) 5px 7px,
                rgba(3, 22, 45, 0.38) 7px 10px
            ),
            linear-gradient(180deg, rgba(133, 237, 255, 0.95), rgba(2, 143, 230, 0.84) 62%, rgba(4, 63, 122, 0.9)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.36),
            inset 0 -9px 12px rgba(0, 18, 44, 0.3),
            0 0 12px rgba(0, 174, 255, 0.28) !important;
        opacity: 0.92 !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(n + 21) {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(1) { height: 34% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(2) { height: 46% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(3) { height: 68% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(4) { height: 54% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(5) { height: 72% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(6) { height: 74% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(7) { height: 58% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(8) { height: 45% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(9) { height: 70% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(10) { height: 73% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(11) { height: 80% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(12) { height: 47% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(13) { height: 44% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(14) { height: 66% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(15) { height: 54% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(16) { height: 76% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(17) { height: 42% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(18) { height: 62% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(19) { height: 48% !important; }
    body main.container #jukebox.rei-jukebox .rei-jukebox__eq span:nth-child(20) { height: 40% !important; }

    body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__eq span {
        animation: jukeboxBarDance 0.92s ease-in-out infinite alternate !important;
    }

    body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__eq span:nth-child(2n) {
        animation-delay: -0.18s !important;
    }

    body main.container #jukebox.is-playing.rei-jukebox .rei-jukebox__eq span:nth-child(3n) {
        animation-delay: -0.34s !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress {
        height: 4px !important;
        min-height: 4px !important;
        margin: -10px 0 0 !important;
        padding: 0 18px !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress .jukebox-progress__time {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0 0 0 0) !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress b {
        width: 100% !important;
        height: 2px !important;
        border: 0 !important;
        border-radius: 999px !important;
        background: rgba(42, 114, 170, 0.28) !important;
        box-shadow: 0 0 9px rgba(0, 166, 255, 0.16) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__progress i {
        height: 100% !important;
        border-radius: inherit !important;
        background: linear-gradient(90deg, #25d5ff, #087fff) !important;
        box-shadow: 0 0 10px rgba(0, 194, 255, 0.68) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls {
        display: grid !important;
        grid-template-columns: 56px 64px 56px !important;
        gap: 14px !important;
        width: 100% !important;
        margin: 2px 0 0 !important;
        justify-content: center !important;
        align-items: center !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button:nth-child(1),
    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button:nth-child(5) {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        display: grid !important;
        place-items: center !important;
        width: 56px !important;
        height: 40px !important;
        min-width: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        color: transparent !important;
        font-size: 0 !important;
        line-height: 0 !important;
        text-indent: 0 !important;
        border: 1px solid rgba(68, 130, 210, 0.54) !important;
        border-radius: 999px !important;
        background:
            radial-gradient(circle at 50% 28%, rgba(255, 255, 255, 0.12), transparent 35%),
            linear-gradient(180deg, rgba(21, 43, 76, 0.96), rgba(6, 15, 32, 0.98)) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.08),
            inset 0 -13px 18px rgba(0, 0, 0, 0.23),
            0 9px 20px rgba(0, 6, 16, 0.2) !important;
    }

    body main.container #jukebox.rei-jukebox .rei-jukebox__controls .jukebox-control-ring__button--play {
        width: 64px !important;
        height: 64px !important;
        border-color: rgba(112, 216, 255, 0.82) !important;
        background:
            radial-gradient(circle at 42% 30%, rgba(255, 255, 255, 0.44), transparent 28%),
            linear-gradient(180deg, #2fcaff, #0066d1 78%) !important;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.3),
            inset 0 -18px 24px rgba(0, 39, 108, 0.52),
            0 0 25px rgba(0, 156, 255, 0.42) !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-control-icon {
        display: block !important;
        width: 21px !important;
        height: 21px !important;
        margin: 0 !important;
        overflow: visible !important;
        color: #f8fbff !important;
        fill: currentColor !important;
        stroke: currentColor !important;
        stroke-width: 2.1 !important;
        stroke-linecap: round !important;
        stroke-linejoin: round !important;
        filter: drop-shadow(0 0 9px rgba(255, 255, 255, 0.38)) !important;
        transform: none !important;
        pointer-events: none !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-control-ring__button--play .jukebox-control-icon {
        width: 24px !important;
        height: 24px !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-control-icon--pause {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxToggle.is-playing .jukebox-control-icon--play,
    body main.container #jukebox.rei-jukebox.is-playing #jukeboxToggle .jukebox-control-icon--play {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxToggle.is-playing .jukebox-control-icon--pause,
    body main.container #jukebox.rei-jukebox.is-playing #jukeboxToggle .jukebox-control-icon--pause {
        display: block !important;
    }

    body main.container #jukebox.rei-jukebox #jukeboxToggleLabel {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        opacity: 0 !important;
        visibility: hidden !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .rei-jukebox__panel {
        grid-template-rows: minmax(0, 1fr) !important;
        gap: 0 !important;
        overflow: visible !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-inline-shell__headline,
    body main.container #jukebox.rei-jukebox.is-search-open .rei-jukebox__eq,
    body main.container #jukebox.rei-jukebox.is-search-open .rei-jukebox__progress,
    body main.container #jukebox.rei-jukebox.is-search-open .rei-jukebox__controls,
    body main.container #jukebox.rei-jukebox.is-search-open .rei-jukebox__actions {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .rei-jukebox__search {
        display: grid !important;
        align-self: start !important;
        gap: 9px !important;
        width: 100% !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 2px 0 0 !important;
        border-top: 0 !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .rei-jukebox__search[hidden] {
        display: none !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .rei-jukebox__search-modes {
        display: grid !important;
        grid-template-columns: auto 1fr 1fr !important;
        gap: 7px !important;
        align-items: center !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-inline-shell__mode,
    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search__reset[data-jukebox-voice] {
        min-height: 28px !important;
        height: 28px !important;
        padding: 0 9px !important;
        border-radius: 999px !important;
        font-size: 0.56rem !important;
        letter-spacing: 0.08em !important;
        white-space: nowrap !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search {
        gap: 8px !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search__field {
        grid-template-columns: minmax(0, 1fr) 96px !important;
        gap: 8px !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search__field input,
    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search__submit {
        min-height: 38px !important;
        height: 38px !important;
        border-radius: 10px !important;
        font-size: 0.78rem !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search__field input {
        padding: 0 12px !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search__submit {
        padding: 0 10px !important;
        font-size: 0.64rem !important;
        letter-spacing: 0.08em !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search__controls {
        gap: 7px !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search__meta {
        width: 100% !important;
        font-size: 0.72rem !important;
        line-height: 1.3 !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open #jukeboxSearchReset {
        min-height: 34px !important;
        height: 34px !important;
        width: min(100%, 230px) !important;
        padding: 0 12px !important;
        border: 1px solid rgba(70, 141, 220, 0.5) !important;
        border-radius: 10px !important;
        background: rgba(9, 26, 50, 0.82) !important;
        color: #f8fbff !important;
        font-size: 0.62rem !important;
        letter-spacing: 0.08em !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search-results {
        max-height: clamp(72px, 22vh, 132px) !important;
        gap: 6px !important;
        padding-right: 2px !important;
        overflow-y: auto !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search-result {
        grid-template-columns: 36px minmax(0, 1fr) !important;
        gap: 8px !important;
        min-height: 46px !important;
        padding: 6px 8px !important;
        border-radius: 10px !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search-result__media,
    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search-result__media img {
        width: 36px !important;
        height: 36px !important;
        border-radius: 8px !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search-result__body strong {
        font-size: 0.72rem !important;
        line-height: 1.1 !important;
    }

    body main.container #jukebox.rei-jukebox.is-search-open .jukebox-search-result__body span {
        font-size: 0.58rem !important;
        line-height: 1.15 !important;
    }
}

/* Final mobile production lock: must stay after every legacy override. */
@media (max-width: 720px) {
    html,
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        scroll-behavior: smooth !important;
    }

    body {
        background: #f5f8fb !important;
    }

    body .top-header,
    body .top-header.is-scrolled {
        width: 100% !important;
        min-height: 88px !important;
        height: 88px !important;
        overflow: hidden !important;
        background: radial-gradient(circle at 34% 18%, rgba(0, 145, 255, 0.12), transparent 32%), linear-gradient(180deg, rgba(5, 18, 32, 0.98), rgba(2, 12, 24, 0.99)) !important;
        box-shadow: 0 14px 34px rgba(0, 8, 18, 0.3) !important;
    }

    body .top-header .top-header__inner {
        width: 100% !important;
        height: 88px !important;
        max-width: none !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 10px !important;
        align-items: center !important;
        padding: 0 14px !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    body .top-header .site-brand {
        min-width: 0 !important;
        width: auto !important;
        max-width: 100% !important;
        gap: 9px !important;
        overflow: hidden !important;
    }

    body .top-header .site-brand__mark {
        flex: 0 0 96px !important;
        width: 96px !important;
        height: 52px !important;
        font-size: 0 !important;
        background-size: contain !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
    }

    body .top-header .site-brand__copy {
        min-width: 0 !important;
        width: auto !important;
        max-width: 92px !important;
        display: grid !important;
        gap: 2px !important;
        overflow: hidden !important;
    }

    body .top-header .site-brand__copy strong {
        display: block !important;
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        font-size: 0.78rem !important;
        line-height: 1.05 !important;
        letter-spacing: 0.08em !important;
    }

    body .top-header .site-brand__copy span {
        display: none !important;
    }

    body .top-header .top-header__actions {
        flex: 0 0 auto !important;
        width: auto !important;
        display: flex !important;
        gap: 8px !important;
        align-items: center !important;
        justify-content: flex-end !important;
    }

    body .top-header .social-link,
    body .top-header .menu-toggle {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        border-color: rgba(80, 145, 200, 0.38) !important;
        background: radial-gradient(circle at 45% 30%, rgba(60, 190, 255, 0.16), transparent 42%), rgba(13, 32, 51, 0.76) !important;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 0 22px rgba(0, 174, 255, 0.14) !important;
    }

    body .hero#hero {
        min-height: min(620px, calc(100svh - 88px)) !important;
        height: min(620px, calc(100svh - 88px)) !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    body .hero#hero .hero-content {
        min-height: 100% !important;
        height: 100% !important;
        align-items: end !important;
        padding: 132px 18px 34px !important;
    }

    body .hero#hero .hero-copy {
        width: 100% !important;
        max-width: 340px !important;
        padding: 0 !important;
        transform: none !important;
    }

    body .hero#hero h1 {
        font-size: clamp(3.25rem, 17vw, 4.55rem) !important;
        line-height: 0.92 !important;
    }

    body .hero#hero .hero-actions {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
        width: 100% !important;
    }

    body .hero#hero .hero-actions .btn:first-child {
        grid-column: 1 / -1 !important;
    }

    body .btn,
    body .hero#hero .hero-actions .btn,
    body .site-footer--home-lean .site-footer__button,
    body .site-footer--home-lean .site-footer__pill,
    body main.container #jukebox.rei-jukebox .rei-jukebox__controls button {
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14), 0 0 22px rgba(0, 168, 255, 0.2), 0 10px 24px rgba(0, 8, 20, 0.22) !important;
    }

    body .section,
    body main.container > section {
        width: calc(100vw - 28px) !important;
        max-width: calc(100vw - 28px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }

    body #ensaios.section--showcase {
        padding: 28px 14px 22px !important;
    }

    body #ensaios .gallery-showcase--ensaios {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 18px 16px 58px !important;
        overflow: hidden !important;
    }

    body #ensaios .gallery-controls {
        width: min(100%, 260px) !important;
        max-width: 100% !important;
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) !important;
    }

    body main.container #jukebox.rei-jukebox,
    body main.container #jukebox.rei-jukebox .rei-jukebox__frame {
        max-width: calc(100vw - 28px) !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classics {
        max-width: 100% !important;
        overflow: hidden !important;
    }

    body main.container #jukebox.rei-jukebox .jukebox-classics__track {
        overflow-x: auto !important;
        overscroll-behavior-x: contain !important;
        scrollbar-width: none !important;
    }

    body .site-footer.site-footer--home-lean {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
        padding: 0 !important;
    }

    body .site-footer--home-lean .site-footer__inner {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 26px 14px 30px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
        border-left: 0 !important;
        border-right: 0 !important;
    }

    body .site-footer--home-lean .site-footer__panel,
    body .site-footer--home-lean .site-footer__utility,
    body .site-footer--home-lean .site-footer__booking-card,
    body .site-footer--home-lean .site-footer__home-newsletter,
    body .site-footer--home-lean .site-footer__home-newsletter-address,
    body .site-footer--home-lean .site-footer__button,
    body .site-footer--home-lean .site-footer__lean-row,
    body .site-footer--home-lean .site-footer__mini-links,
    body .site-footer--home-lean .site-footer__bottom {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    body .site-footer--home-lean .site-footer__booking-card {
        padding: 22px 14px !important;
        border-radius: 22px !important;
    }

    body .site-footer--home-lean .site-footer__home-newsletter-address {
        justify-content: center !important;
        padding: 0 12px !important;
        font-size: clamp(0.82rem, 3.55vw, 0.98rem) !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    body .site-footer--home-lean .site-footer__mini-links {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    body .site-footer--home-lean .site-footer__pill {
        justify-content: center !important;
        height: 48px !important;
        font-size: 0.72rem !important;
    }

    body .site-footer--home-lean .site-footer__nav {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 18px !important;
    }

    body .site-footer--home-lean .site-footer__copy {
        max-width: 32ch !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
        line-height: 1.35 !important;
    }
}

