/* =====================================
   HERO
===================================== */

.contacto-hero{

    min-height:45vh;

    display:flex;
    justify-content:center;
    align-items:center;

    text-align:center;

    padding:120px 20px 80px;

    background:
    linear-gradient(
        rgba(0,0,0,.75),
        rgba(0,0,0,.55)
    ),
    url('../imagenes/banners/banner-contact.png')
    center center/cover no-repeat;
}

.contacto-hero-content{

    max-width:850px;

    color:white;
}

.contacto-hero-content span{

    display:inline-block;

    background:rgba(255,255,255,.15);

    padding:8px 18px;

    border-radius:30px;

    margin-bottom:20px;
}

.contacto-hero-content h1{

    font-size:clamp(2.5rem,5vw,4.5rem);

    font-weight:800;

    margin-bottom:20px;
}

.contacto-hero-content p{

    font-size:1.1rem;

    line-height:1.8;
}

/* =====================================
   CONTENEDOR
===================================== */

.contact-container{

    display:grid;

    grid-template-columns:
    1fr 1.3fr;

    gap:50px;

    padding:90px 8%;

    background:#f8f9fa;
}

/* =====================================
   INFO
===================================== */

.contact-info h2{

    margin-bottom:30px;

    font-size:2rem;
}

.info-card{

    display:flex;

    align-items:center;

    gap:20px;

    background:white;

    padding:25px;

    border-radius:20px;

    margin-bottom:20px;

    box-shadow:
    0 10px 25px rgba(0,0,0,.05);
}

.info-card span{

    font-size:2rem;
}

.info-card h3{

    margin-bottom:5px;
}

.info-card p{

    color:#666;
}

/* =====================================
   FORMULARIO
===================================== */

.contact-form{

    background:white;

    padding:40px;

    border-radius:25px;

    box-shadow:
    0 10px 30px rgba(0,0,0,.06);
}

.contact-form h2{

    margin-bottom:30px;
}

.form-group{

    margin-bottom:20px;
}

.form-group label{

    display:block;

    margin-bottom:8px;

    font-weight:600;
}

.form-group input,
.form-group textarea{

    width:100%;

    padding:15px;

    border:1px solid #ddd;

    border-radius:12px;

    outline:none;

    transition:.3s;
}

.form-group input:focus,
.form-group textarea:focus{

    border-color:#e60012;

    box-shadow:
    0 0 0 3px rgba(230,0,18,.1);
}

/* =====================================
   BOTON
===================================== */

.contact-btn{

    width:100%;

    border:none;

    background:#00a63f;

    color:white;

    padding:16px;

    border-radius:50px;

    cursor:pointer;

    font-size:1rem;

    font-weight:700;

    transition:.3s;
}

.contact-btn:hover{

    background:#008535;

    transform:translateY(-2px);
}

/* =====================================
   WHATSAPP
===================================== */

.whatsapp-btn{

    position:fixed;

    right:25px;

    bottom:25px;

    width:65px;

    height:65px;

    border-radius:50%;

    background:#25D366;

    color:white;

    display:flex;

    justify-content:center;
    align-items:center;

    font-size:2rem;

    text-decoration:none;

    box-shadow:
    0 8px 25px rgba(0,0,0,.2);

    z-index:999;
}

.whatsapp-btn:hover{

    transform:scale(1.1);
}

/* =====================================
   TABLET
===================================== */

@media(max-width:992px){

    .contact-container{

        grid-template-columns:1fr;
    }
}

/* =====================================
   MOBILE
===================================== */

@media(max-width:768px){

    .contacto-hero{

        min-height:40vh;
    }

    .contacto-hero-content h1{

        font-size:2.2rem;
    }

    .contact-container{

        padding:70px 6%;
    }

    .contact-form{

        padding:30px;
    }
}

/* =====================================
   SMALL MOBILE
===================================== */

@media(max-width:480px){

    .contacto-hero-content h1{

        font-size:1.8rem;
    }

    .contact-form{

        padding:25px 20px;
    }
}