/*==================================================
                    CONTACTO
==================================================*/

.goshala-contacto{
    background:#0B0B0B;
    color:#fff;
}

/*==================================================
                    HERO
==================================================*/

.contacto-hero{
    min-height:480px;
    position:relative;
    display:flex;
    align-items:flex-end;
    background:
        linear-gradient(
            90deg,
            rgba(8,8,8,.94) 0%,
            rgba(8,8,8,.78) 45%,
            rgba(8,8,8,.35) 100%
        ),
        url("../img/nosotros/hero.jpg");
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}

.contacto-hero-overlay{
    width:100%;
    padding:170px 0 75px;
}

.contacto-hero-content{
    max-width:900px;
}

.contacto-kicker,
.contacto-subtitulo{
    display:inline-block;
    color:var(--color-dorado);
    text-transform:uppercase;
    letter-spacing:4px;
    font-size:.82rem;
    font-weight:600;
}

.contacto-hero h1{
    color:#fff;
    font-size:5.5rem;
    line-height:.95;
    margin:20px 0 25px;
}

.contacto-hero h1::after{
    content:"";
    display:block;
    width:110px;
    height:2px;
    background:var(--color-dorado);
    margin-top:25px;
}

.contacto-hero p{
    max-width:650px;
    color:#e5e5e5;
    font-size:1.15rem;
    line-height:1.8;
}

/*==================================================
                CONTENIDO PRINCIPAL
==================================================*/

.contacto-main{
    padding:110px 0;
    background:#0B0B0B;
}

.contacto-grid{
    display:grid;
    grid-template-columns:minmax(300px,.85fr) minmax(450px,1.15fr);
    gap:90px;
    align-items:start;
}

.contacto-info h2,
.contacto-form-header h2{
    font-family:var(--fuente-titulo);
    color:#fff;
}

.contacto-info h2{
    font-size:4rem;
    line-height:1;
    margin:25px 0 30px;
}

.contacto-intro{
    max-width:500px;
    color:#cfcfcf;
    font-size:1.05rem;
    line-height:1.9;
}

.contacto-datos{
    margin-top:45px;
    display:flex;
    flex-direction:column;
    gap:22px;
}

.contacto-dato{
    display:flex;
    align-items:center;
    gap:18px;
    color:#fff;
    text-decoration:none;
}

.contacto-icono{
    width:52px;
    height:52px;
    flex:0 0 52px;
    border:1px solid rgba(200,164,77,.45);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--color-dorado);
    font-size:18px;
    transition:.3s ease;
}

.contacto-dato:hover .contacto-icono{
    background:var(--color-dorado);
    color:#111;
}

.contacto-dato strong{
    display:block;
    color:#fff;
    font-size:.9rem;
    margin-bottom:4px;
}

.contacto-dato small{
    display:block;
    color:#aaa;
    font-size:.88rem;
}

.contacto-social{
    margin-top:50px;
    padding-top:28px;
    border-top:1px solid rgba(255,255,255,.1);
}

.contacto-social > span{
    display:block;
    color:#aaa;
    text-transform:uppercase;
    letter-spacing:2px;
    font-size:.75rem;
    margin-bottom:15px;
}

.contacto-social div{
    display:flex;
    gap:12px;
}

.contacto-social a{
    width:40px;
    height:40px;
    border:1px solid rgba(200,164,77,.4);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    transition:.3s ease;
}

.contacto-social a:hover{
    background:var(--color-dorado);
    color:#111;
}

/*==================================================
                    FORMULARIO
==================================================*/

.contacto-formulario{
    padding:50px;
    background:#111;
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 20px 60px rgba(0,0,0,.25);
}

.contacto-form-header h2{
    font-size:2.8rem;
    line-height:1.05;
    margin:18px 0 12px;
}

.contacto-form-header p{
    color:#aaa;
    line-height:1.7;
    margin-bottom:35px;
}

.goshala-contact-form{
    display:flex;
    flex-direction:column;
    gap:22px;
}

.form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
}

.form-group{
    display:flex;
    flex-direction:column;
    gap:8px;
}

.form-group label{
    color:#ddd;
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:1px;
    font-weight:600;
}

.form-group input,
.form-group textarea{
    width:100%;
    border:1px solid rgba(255,255,255,.14);
    background:#0B0B0B;
    color:#fff;
    padding:16px 17px;
    font-family:var(--fuente-texto);
    font-size:.9rem;
    outline:none;
    transition:.3s ease;
}

.form-group textarea{
    resize:vertical;
    min-height:150px;
}

.form-group input::placeholder,
.form-group textarea::placeholder{
    color:#666;
}

.form-group input:focus,
.form-group textarea:focus{
    border-color:var(--color-dorado);
    box-shadow:0 0 0 1px rgba(200,164,77,.15);
}

.goshala-contact-form .btn{
    align-self:flex-start;
    border:none;
    cursor:pointer;
}

.form-nota{
    margin:0;
    color:#666;
    font-size:.72rem;
    line-height:1.6;
}

/*==================================================
                    CTA
==================================================*/

.contacto-cta{
    padding:110px 0;
    background:
        linear-gradient(
            90deg,
            rgba(11,11,11,.96),
            rgba(11,11,11,.70)
        ),
        url("../img/nosotros/esencia.png");
    background-size:cover;
    background-position:center;
}

.contacto-cta-content{
    max-width:800px;
}

.contacto-cta h2{
    font-family:var(--fuente-titulo);
    color:#fff;
    font-size:4rem;
    line-height:1;
    margin:22px 0 35px;
}

/*==================================================
                    RESPONSIVE
==================================================*/

@media(max-width:992px){

    .contacto-grid{
        grid-template-columns:1fr;
        gap:65px;
    }

    .contacto-info h2{
        font-size:3.5rem;
    }

    .contacto-formulario{
        max-width:760px;
    }
}

@media(max-width:768px){

    .contacto-hero{
        min-height:430px;
    }

    .contacto-hero-overlay{
        padding:150px 0 60px;
    }

    .contacto-hero h1{
        font-size:4rem;
    }

    .contacto-main{
        padding:75px 0;
    }

    .contacto-formulario{
        padding:32px 24px;
    }

    .form-row{
        grid-template-columns:1fr;
    }

    .contacto-cta{
        padding:80px 0;
    }

    .contacto-cta h2{
        font-size:3rem;
    }
}

@media(max-width:520px){

    .contacto-hero h1{
        font-size:3.3rem;
    }

    .contacto-info h2{
        font-size:3rem;
    }

    .contacto-form-header h2{
        font-size:2.35rem;
    }

    .contacto-cta h2{
        font-size:2.5rem;
    }
}
