/* Only the first hero identified by header-overlay.js participates.
 * Specificity also overrides imported .site-header + .hero-* rules. */
.lxsz-pilot-body .page-shell-site > :is(.hero-banner, .hero-carousel).lxsz-header-overlay-hero {
    margin-top: calc(-1 * var(--lxsz-header-height)) !important;
    padding-top: calc(40px + var(--lxsz-header-height)) !important;
}

.lxsz-pilot-body .page-shell-site > .hero-carousel.lxsz-header-overlay-hero {
    padding-top: calc(28px + var(--lxsz-header-height)) !important;
}

/* Custom English home: move the content wrapper behind the header and add
 * the same space inside the hero, preserving its existing copy spacing. */
.lxsz-pilot-body .page-shell-site > .lv-v2.lxsz-header-overlay-wrapper {
    margin-top: calc(-1 * var(--lxsz-header-height)) !important;
}

.lxsz-pilot-body .page-shell-site > .lv-v2.lxsz-header-overlay-wrapper > .lv-hero.lxsz-header-overlay-hero {
    padding-top: var(--lxsz-header-height) !important;
}

@media (max-width: 782px) {
    .lxsz-pilot-body .page-shell-site > :is(.hero-banner, .hero-carousel).lxsz-header-overlay-hero {
        padding-top: calc(32px + var(--lxsz-header-height)) !important;
    }

    .lxsz-pilot-body .page-shell-site > .hero-carousel.lxsz-header-overlay-hero {
        padding-top: calc(20px + var(--lxsz-header-height)) !important;
    }
}
