/* Shared site shell: the header and first hero should read as one composition. */

html[data-design="2"] body #masthead,
html[data-design="2"] body #masthead .ast-main-header-wrap,
html[data-design="2"] body #masthead .main-header-bar-wrap,
html[data-design="2"] body #masthead .main-header-bar,
html[data-design="2"] body #masthead .ast-primary-header-bar,
html[data-design="2"] body #masthead .ast-primary-header {
    background: #fffdf8 !important;
    background-color: #fffdf8 !important;
}

/* Astra adds 4px on both nested header bars. Together they look like a thin
   cream gap before every full-width hero. The 100px inner row already gives
   the logo and navigation enough breathing room. */
html[data-design="2"] body #masthead .ast-main-header-wrap,
html[data-design="2"] body #masthead .main-header-bar-wrap,
html[data-design="2"] body #masthead .ast-primary-header-bar,
html[data-design="2"] body #masthead .ast-primary-header {
    padding-block: 0 !important;
}

/* Astra's separate-container layout adds 4em above and below #primary.
   Pages in this redesign begin with a full-width hero, so that spacing reads
   as an accidental white band rather than breathing room. */
html[data-design="2"] body.page #primary,
html[data-design="2"] body.home #primary,
html[data-design="2"] body.blog #primary {
    margin-top: 0 !important;
}

/* The same Astra spacing appears after the final section on only some
   templates (60px on /vydy-vplyvu/), producing a white band before footer. */
html[data-design="2"] body #primary,
html[data-design="2"] body #main,
html[data-design="2"] body #content {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

html[data-design="2"] body.page-slug-kontakty .contacts-hero,
html[data-design="2"] body.page-slug-kontakty .contacts-hero h1,
html[data-design="2"] body.page-slug-kontakty .contacts-hero .subtitle,
html[data-design="2"] body.page-slug-kontakty .contacts-hero .lead {
    color: #2a1345 !important;
}

html[data-design="2"] body.page-slug-kontakty .contacts-hero .subtitle {
    color: var(--gold-ink, #8c6a22) !important;
}

/* Keep the mobile brand and controls away from the viewport edges, and undo
   the desktop no-wrap navigation treatment inside Astra's mobile drawer. */
@media (max-width: 921px) {
    html[data-design="2"] body #masthead .ast-mobile-header-wrap .ast-builder-grid-row {
        box-sizing: border-box;
        padding-inline: 16px !important;
    }

    html[data-design="2"] body #masthead #ast-mobile-site-navigation,
    html[data-design="2"] body #masthead #ast-mobile-site-navigation .main-navigation,
    html[data-design="2"] body #masthead #ast-mobile-site-navigation .main-header-menu {
        width: 100% !important;
    }

    html[data-design="2"] body #masthead #ast-mobile-site-navigation .main-header-menu {
        display: block !important;
        flex-wrap: wrap !important;
    }

    html[data-design="2"] body #masthead #ast-mobile-site-navigation .main-header-menu > .menu-item {
        display: block !important;
        width: 100% !important;
    }

    html[data-design="2"] body #masthead #ast-mobile-site-navigation .menu-link {
        box-sizing: border-box;
        width: 100% !important;
        white-space: normal !important;
    }

    html[data-design="2"] body #masthead .ast-mobile-header-wrap .menu-toggle,
    html[data-design="2"] body #masthead .ast-mobile-header-wrap .ast-menu-toggle,
    html[data-design="2"] body #masthead .ast-mobile-header-wrap .dropdown-menu-toggle {
        color: var(--emerald-deep, #064635) !important;
        border-color: transparent !important;
    }

    html[data-design="2"] body #masthead .ast-mobile-header-wrap .ast-mobile-svg,
    html[data-design="2"] body #masthead .ast-mobile-header-wrap .ast-arrow-svg {
        color: var(--emerald-deep, #064635) !important;
        fill: currentColor !important;
    }
}
