* {
    box-sizing: border-box;
}

:root {
    --main: #12558f;
    --main75: #022645c8;
    --main50: #12558f7c;
    --ntwo: #0968bb;
    --nthree: #e0d20f;
    --nthree50: #e0cb0f9d;
    --nfour: #2C3E50;
    --nfive: #fff;
    --nsix: #A1C4E7;
    --nsix50: #a1c4e72a;
    --grad1: #0968bb;
    --grad2: #0D3A5D;
    --nocolor: transparent;
}

body {
    background-color: var(--nocolor);
    font-family: 'Raleway', sans-serif;
}

header {
    min-height: 10vh;
    transition: .3s step-end;
}

.header-logo {
    max-height: 50px;
}

.scrolled {
    background-color: var(--main50); 
    backdrop-filter: blur(4px);
    transition: .3s ease-in-out;
 }

footer {
    min-height: 5vh;
    background-color: var(--main);
    color: var(--nfive);
}

footer a { 
    color: var(--nfive);
}

footer a:hover {
    color: var(--nthree);
}

footer ul {
    list-style-type: none;
}

footer ul li a {
    text-decoration: none;
    font-size: 1.15em;
}

footer button {
    background: transparent;
    border: none;
}

svg {
    font-size: 20px;
    color: var(--nfive);
}

svg:hover{
    color: var(--nthree);
}

section:not(.cta-section, .portada-container, .doble), main {
    margin-top: 4em;
    margin-bottom: 4em;
    padding-top: 3em;
    padding-bottom: 3em;
}

h1, h2, h3, h4, h5 {
    font-family: "Cinzel", serif;
}

h2 {
    font-weight: 700;
    font-size: 2.35rem;
}

h3 {
    color: var(--ntwo);
    font-weight: 600;
}

h4, h5 {
    color: var(--ntwo);
}

p {
    font-size: 1.15rem;
}

.light-text {
    color: var(--nfive);
}

.blue-text {
    color: var(--ntwo);
}

.colored-back {
    background-color: var(--nsix50);
}

.nav-link {
    color: black!important;
}

.nav-link:hover, .nav-link:focus {
    font-weight: 600;
}

.nav-link.active {
    font-weight: 700;
}

.nav-item {
    font-size: 1.1em;
}

.container-container {
    /*background-color: var(--main);*/
    /*background: linear-gradient(to right, var(--main75), var(--main75)), url(../imgs/background1.jpg);*/
    /**/
    /*VAR1 --- background: linear-gradient(to bottom, #ebbf3c75, var(--main75)), url(../imgs/background2.jpg):*/
    /*VAR2 --- background: linear-gradient(to right, #ffffff73, var(--main75)), url(../imgs/background3.jpg);*/
    /*VAR3 --- background: linear-gradient(to top, #36af8b96, var(--main75)), url(../imgs/background4.jpg);*/
    /*VAR4 ---*/ background: linear-gradient(to top, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.7)), url(../imgs/cleaning-service-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom;
    padding: 8em 0;
}

.container-doble {
    margin-left: 1.5em;
    max-width: 750px;
}

.portada-container {
    min-height: 50vh;
}

#portada {
    background-repeat: no-repeat;
    background-position: left;
    width: 100%;
}

#portada-text {
    background-color: var(--nocolor); 
    text-align: center;
}

#portada-text h1 {
    font-size: 5.5em;
    font-weight: 700;
}

.container-doble h2 {
    font-size: 4em;
}

.img-portada {
    width: 100%;
    min-width: 250px;
    max-width: 450px;
}

#cta-section-container {
    max-width: 950px;
}

.cta-container {
    width: fit-content;
}

.btn-cta {
    background-color: var(--main);
    border: solid 2px var(--nocolor)!important;
    color: var(--nfive);
    font-weight: 600;
}

.btn-cta:hover {
    background-color: var(--nthree)!important;
    color: var(--main)!important;
}

.cta-section h2 {
    color: var(--nfive)!important;
}

.cta-section {
    min-height: 25vh;
    padding: 3rem 0;
    background: var(--main);
    background: linear-gradient(90deg, var(--grad2) 0%, var(--grad1) 70%);
    /*
    background: rgb(70,58,255);
    background: linear-gradient(90deg, rgba(70,58,255,1) 0%, rgba(108,99,255,1) 49%, rgba(248,164,216,1) 100%);
    background: linear-gradient(90deg, rgba(70,58,255,1) 0%, rgba(248,164,216,1) 100%);
    */
    color: var(--nfive)!important;
}

.col {
    padding: 0;
}

.card {
    border: 2px solid transparent;
    border-radius: 8px;
    padding: 1em 0;
    height: 100%;
    transition-duration: .3s;
}

.card:hover:not(.card-group>.card) {
    background-color: var(--nsix50);
}

.card-body h5 {
    padding: .5em 0 .2em 0;
    font-size: 1.5rem;
    font-weight: 700;
}

.cita {
    font-weight: 300;
    font-style: italic;
}

.mx-750 {
    max-width: 750px;
    margin: 2em auto;
}

.input-group-text {
    background-color: var(--main);
    color: var(--nfive);
}

span.input-group-text > svg {
    height: 20px;
    fill: var(--nfive);
}

form button {
    background-color: var(--main);
    color: var(--nfive);
    padding: .5em 1em;
    margin: 1em 0;
    border: 2px solid transparent;
    border-radius: 10px;
    font-weight: 700;
}


form button:hover {
    background-color: var(--nthree);
    transition: all .2s;
    color: var(--main);
}

textarea {
    min-height: 200px;
}

.form-container {
    padding-top: 4rem;
}

main h2 {
    font-size: 3.5rem;
    font-weight: 700;
}

/*
.main-text {
    background-color: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(4px);
}
*/
.img-cover {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.card > img {
    max-height: 200px;
}

.card > .card-img-top {
    max-height: 485px;
}

.horizontal-img {
    max-height: 400px;
}

.img-doble {
    max-height: 70vh;
}


@media screen and (max-width: 750px) {

    #portada-text h1 {
        font-size: 2.75em;
    }

    .container-doble h2 { 
        font-size: 3.5em;
    }

}

    .main-container {
        background-image: url(../imgs/suelo.jpg);
        background-repeat: no-repeat;
        background-size: cover;
       /* background-attachment: fixed;*/
        padding: 3em 1em;
    }

.author-rights {
    position: absolute;
    width: 100%;
    background-color: var(--grad1);
    color: black;
    text-align: center;
    font-size: .75rem;
    font-weight: 700;
    padding-bottom: .5em;
}