﻿
header.masthead {
    position: relative;
    margin-top: 6rem;
    margin-bottom: 5.9rem;
    padding-top: calc(4rem + 57px);
    padding-bottom: 8rem;
    background: no-repeat center center;
    background-color: #6c757d;
    background-size: cover;
    background-attachment: scroll;
    position: relative;
    min-height: 30rem !important;
}

    header.masthead:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: #212529;
        opacity: 0.5;
    }

    header.masthead .page-heading,
    header.masthead .post-heading,
    header.masthead .site-heading {
        color: #fff;
    }

    header.masthead .page-heading,
    header.masthead .site-heading {
        text-align: center;
    }

        header.masthead .page-heading h1, header.masthead .page-heading .h1,
        header.masthead .site-heading h1,
        header.masthead .site-heading .h1 {
            font-size: 3rem;
        }

        header.masthead .page-heading .subheading,
        header.masthead .site-heading .subheading {
            font-size: 1.5rem;
            font-weight: 300;
            line-height: 1.1;
            display: block;
            margin-top: 0.625rem;
        }

    header.masthead .post-heading h1, header.masthead .post-heading .h1 {
        font-size: 2.25rem;
    }

    header.masthead .post-heading .meta,
    header.masthead .post-heading .subheading {
        line-height: 1.1;
        display: block;
    }

    header.masthead .post-heading .subheading {
        font-size: 1.5rem;
        font-weight: 600;
        margin: 0.75rem 0 2rem;
    }

    header.masthead .post-heading .meta {
        font-size: 1.25rem;
        font-weight: 300;
        font-style: italic;
    }

        header.masthead .post-heading .meta a {
            color: #fff;
        }

@media (min-width: 992px) {
    header.masthead {
        padding-top: 5.9rem;
        padding-bottom: 12.5rem;
        height: 0vh !important;
        min-height: 30rem !important;
    }


        header.masthead .page-heading h1, header.masthead .page-heading .h1,
        header.masthead .site-heading h1,
        header.masthead .site-heading .h1 {
            font-size: 4.5rem;
        }

        header.masthead .post-heading h1, header.masthead .post-heading .h1 {
            font-size: 3.5rem;
        }

        header.masthead .post-heading .subheading {
            font-size: 1.875rem;
        }
}

header.masthead {
    position: relative;
}
    /* Quitamos el padding inferior grande del header para que el input quede justo abajo */
    header.masthead.has-search {
        padding-bottom: 0;
    }

/* Capa del buscador, pegada al fondo del header */
.masthead-search {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -50px; /* separa 20px del borde inferior */
    z-index: 2; /* por encima del overlay ::before */
}

.content-search {
    background-color: #fff;
    padding: 2rem;
    border-radius: .5rem;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

/* Centrar y limitar ancho del input */
.masthead-search .form-control {
    max-width: 600px;
    margin: 0 auto;
}

/* Asegurar que el overlay quede detrás */
header.masthead::before {
    z-index: 0;
}




@media (min-width: 576px) {
    header.masthead {
        margin-top: 6rem;
        min-height: 30rem !important;
        padding-top: calc(6rem + 57px);
    }
}

@media (min-width: 768px) {
    header.masthead {
        margin-top: 6rem;
        min-height: 30rem !important;
        padding-top: calc(8rem + 57px);
    }
}

@media (min-width: 992px) {
    header.masthead {
        margin-top: 6rem;
        padding-top: calc(4rem + 57px);
    }
}


@media (min-width: 1200px) {
    header.masthead {
        margin-top: 6rem;
        padding-top: calc(4rem + 57px);
    }
}

@media (min-width: 1400px) {
    header.masthead {
        margin-top: 6rem;
        padding-top: calc(8rem + 57px);
    }
}