/* Wider .container width and gutters (matches the mockup's 1440px / 1600px page) */
:root {
    --container-max-width: 90rem;
    --container-gutter: clamp(1.5rem, 4.45vw, 5rem);
}
@media (min-width: 1600px) {
    :root {
        --container-max-width: 100rem;
    }
}

@media (max-width: 1100px) {
    :root {
        --container-gutter: 2.5rem;
    }
}

@media (max-width: 800px) {
    :root {
        --container-gutter: 1.75rem;
    }
}

@media (max-width: 540px) {
    :root {
        --container-gutter: 1.5rem;
    }
}

@media (max-width: 360px) {
    :root {
        --container-gutter: 1.25rem;
    }
}

/* Hero height (mockup: 660px, 730px at 1600px+, with smaller-screen variants) */
.entry-content .block-hero.block-header-video {
    position: relative;
    height: 41.25rem;
    min-height: 37.5rem;
}

.entry-content .block-hero.block-header-video video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (min-width: 1600px) {
    .entry-content .block-hero.block-header-video {
        height: 45.625rem;
    }
}

@media (max-width: 800px) {
    .entry-content .block-hero.block-header-video {
        height: 39.375rem;
        min-height: 35rem;
    }
}

@media (max-width: 540px) {
    .entry-content .block-hero.block-header-video {
        height: 42.5rem;
        min-height: 38.75rem;
        max-height: 50.625rem;
    }
}

@media (max-width: 360px) {
    .entry-content .block-hero.block-header-video {
        height: 40rem;
        min-height: 37.5rem;
    }
}

.container .container {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

/* Contained top navigation: the row's columns add 0.9375rem of their own padding */
header.navbar-fixed-top {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

header .top-nav-container {
    max-width: var(--container-max-width);
    margin-left: auto;
    margin-right: auto;
    padding-left: calc(var(--container-gutter) - 0.9375rem);
    padding-right: calc(var(--container-gutter) - 0.9375rem);
}

@media screen and (max-width: 767px) {
    body .section-padding {
        padding-top: var(--section-margin-mobile);
        padding-bottom: var(--section-margin-mobile);
    }
    .block-header-video h1 {
        font-size: 2.5rem;
    }
}