

/* ============================================
   ADOBE HOME — HERO
============================================ */

.adobe-hero {
    position: relative;

    min-height: 620px;

    display: flex;
    align-items: center;
    justify-content: center;

    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    overflow: hidden;
}

.adobe-hero-overlay {
    position: absolute;
    inset: 0;

    background: rgba(0, 0, 0, 0.28);
}

.adobe-hero-content {
    position: relative;
    z-index: 2;

    width: min(1200px, 92%);
    margin: 0 auto;

    text-align: center;
}

.adobe-hero h1 {
    margin: 0;

    color: #ffffff;

    font-size: clamp(42px, 5vw, 70px);
    line-height: 1.08;
    font-weight: 400;

    text-transform: uppercase;

    text-shadow: 0 3px 16px rgba(0, 0, 0, 0.28);
}

.adobe-hero h1 strong {
    font-weight: 700;
}

@media (max-width: 768px) {

    .adobe-hero {
        min-height: 480px;
        background-position: center;
    }

    .adobe-hero h1 {
        font-size: 38px;
        line-height: 1.12;
    }
}

/*==================================================
INTRODUCCIÓN
==================================================*/

.adobe-intro {
    padding: 75px 0 85px;
    background: #ffffff;
}

.adobe-intro .container {
    max-width: 1100px;
}

.adobe-intro-block {
    text-align: center;
    margin-bottom: 60px;
}

.adobe-intro-block h2 {
    color: #263746;
    font-size: 34px;
    font-weight: 300;
    line-height: 1.35;
    margin-bottom: 18px;
}

.adobe-intro-block h2 span {
    color: #810923;
    font-weight: 700;
}

.adobe-intro-block p {
    max-width: 820px;
    margin: 0 auto;

    color: #4d5966;
    font-size: 18px;
    line-height: 1.7;
}

.adobe-presentacion {
    text-align: center;
}

.adobe-presentacion h2 {
    color: #263746;
    font-size: 34px;
    font-weight: 300;
    line-height: 1.35;
    margin-bottom: 18px;
}

.adobe-presentacion h2 strong {
    color: #810923;
    font-weight: 700;
}

.adobe-presentacion p {
    max-width: 900px;
    margin: 0 auto 30px;

    color: #4d5966;
    font-size: 18px;
    line-height: 1.7;
}

.btn-adobe {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 14px 32px;

    background: #810923;
    color: #ffffff;

    text-transform: uppercase;
    font-size: 14px;
    font-weight: 700;

    transition: .25s;
}

.btn-adobe:hover {
    background: #2ba0a3;
    color: #ffffff;
}

/*==================================================
CIFRAS
==================================================*/

.adobe-cifras{

    background:url('../img/home/numeros-bg.jpg')
    center center/cover no-repeat;

    position:relative;

}

.adobe-cifras-overlay{

    background:rgba(0,0,0,.45);

    padding:120px 0;

}

.cifras-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:50px;

}

.cifra{

    text-align:center;

    color:#fff;

}

.cifra span{

    display:block;

    font-size:70px;

    font-weight:700;

    margin-bottom:15px;

}

.cifra p{

    font-size:22px;

    line-height:1.5;

}

/* ============================================
   IMPACTO ODS
============================================ */

.impacto-ods {
    padding: 85px 0;
    background: #ffffff;
}

.impacto-ods-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 65px;
    align-items: center;
}

.impacto-ods-texto h2 {
    margin: 0 0 24px;

    color: #810923;

    font-size: 36px;
    line-height: 1.2;
    font-weight: 700;
}

.impacto-ods-texto p {
    margin: 0 0 30px;

    color: #4d5966;

    font-size: 18px;
    line-height: 1.7;
}

.impacto-ods-imagen img {
    width: 100%;
    height: auto;
    display: block;
}

@media (max-width: 800px) {

    .impacto-ods {
        padding: 60px 0;
    }

    .impacto-ods-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .impacto-ods-texto h2 {
        font-size: 30px;
    }

}

/*==================================================
EJES
==================================================*/

.adobe-ejes{

    padding:110px 0;

    background:#f7f7f7;

}

.titulo-seccion{

    text-align:center;

    margin-bottom:60px;

}

.titulo-seccion span{

    color:#2ba0a3;

    font-weight:700;

    letter-spacing:2px;

    font-size:14px;

}

.titulo-seccion h2{

    margin-top:15px;

    color:#810923;

    font-size:40px;

}

.ejes-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:40px;

}

.eje-card{

    position:relative;

    overflow:hidden;

}

.eje-card img{

    width:100%;

    display:block;

    transition:.4s;

}

.eje-card:hover img{

    transform:scale(1.05);

}

.eje-overlay{

    position:absolute;

    inset:0;

    display:flex;

    justify-content:center;

    align-items:center;

    background:rgba(0,0,0,.35);

}

.eje-overlay h3{

    color:#fff;

    font-size:34px;

    font-weight:700;

}

/* ============================================
   ALIADOS
============================================ */

.adobe-aliados {
    padding: 90px 0;
    background:#810923;
}
.adobe-aliados .titulo-seccion span{

    color:#ffffff;

}

.adobe-aliados .titulo-seccion h2{

    color:#ffffff;

}

.aliados-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 45px;
    align-items: center;
}

.aliado-item {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 130px;
}

.aliado-item img {
    display: block;
    width: 100%;
    max-width: 190px;
    max-height: 110px;
    object-fit: contain;
}

@media (max-width: 900px) {
    .aliados-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 500px) {
    .aliados-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}

/* ============================================
   TESTIMONIOS
============================================ */

.adobe-testimonios {
    padding: 90px 0;
    background: #ffffff;
}

.testimonios-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

.testimonio-card {
    background: #f7f7f7;
    overflow: hidden;
}

.testimonio-card img {
    display: block;
    width: 100%;
      height: 320px;
    object-fit: contain;
    background: #f3f3f3;
}

.testimonio-card:first-child img {
    object-fit: cover;
    object-position: center;
}

.testimonio-card:last-child img {
    object-fit: contain;
    object-position: center;
    background: #e9e9e9;
}

.testimonio-contenido {
    padding: 28px 30px 32px;
}

.testimonio-contenido h3 {
    margin: 0 0 14px;

    color: #810923;
    font-size: 26px;
    font-weight: 700;
}

.testimonio-contenido p {
    margin: 0;

    color: #4d5966;
    font-size: 17px;
    line-height: 1.7;
}

@media (max-width: 800px) {

    .testimonios-grid {
        grid-template-columns: 1fr;
    }

    .testimonio-card img {
        height: auto;
    }
}

.testimonio-ubicacion {
    display: block;
    margin-bottom: 14px;
    color: #2ba0a3;
    font-size: 14px;
    font-weight: 700;
}

.testimonio-card{
    display:flex;
    flex-direction:column;
    height:100%;
}

.testimonio-contenido{
    flex:1;
    display:flex;
    flex-direction:column;
}

.testimonio-contenido p{
    margin-top:18px;
    line-height:1.8;
}

/* ============================================
   MATERIALES SUSTENTABLES
============================================ */

.adobe-materiales {
    padding:70px 0 90px;
    background: #ffffff;
}

.materiales-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: center;
}

.materiales-imagen{

    display:flex;
    justify-content:center;

}

.materiales-imagen img {
    width: 85%;
    display: block;
}

.materiales-texto h2 {
    margin: 12px 0 24px;
    color: #810923;
    font-size: 40px;
}

.materiales-texto p {
    margin-bottom: 32px;
    color: #4d5966;
    font-size: 18px;
    line-height: 1.8;
}

@media (max-width: 900px) {

    .materiales-grid {
        grid-template-columns: 1fr;
    }

}

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

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

.adobe-contacto {
    padding: 95px 0;

    background:
        linear-gradient(
            135deg,
            #c11f4a 0%,
            #840707 100%
        );
}

.adobe-contacto-grid {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 70px;
    align-items: center;
}

.adobe-contacto-texto {
    color: #ffffff;
}

.subtitulo-contacto {
    display: inline-block;
    margin-bottom: 18px;

    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 2px;
}

.adobe-contacto h2 {
    margin: 0 0 25px;

    color: #ffffff;
    font-size: 40px;
    line-height: 1.25;
    font-weight: 700;
}

.adobe-contacto p {
    margin: 0;

    color: rgba(255,255,255,.92);
    font-size: 18px;
    line-height: 1.8;
}

.adobe-contacto-form {
    background: #ffffff;
    padding: 40px;
    border-radius: 4px;
}

.campo-form {
    margin-bottom: 20px;
}

.campo-form label {
    display: block;
    margin-bottom: 7px;

    color: #263746;
    font-size: 14px;
    font-weight: 700;
}

.campo-form input,
.campo-form textarea {
    width: 100%;

    padding: 13px 14px;

    border: 1px solid #d8d8d8;
    background: #ffffff;

    color: #263746;
    font: inherit;
}

.campo-form input:focus,
.campo-form textarea:focus {
    outline: none;
    border-color: #810923;
}

.campo-form textarea {
    resize: vertical;
    min-height: 130px;
}

.btn-form-contacto {
    display: inline-block;

    padding: 14px 34px;

    border: 0;

    background: #810923;
    color: #ffffff;

    font-size: 14px;
    font-weight: 700;

    cursor: pointer;

    transition: .25s;
}

.btn-form-contacto:hover {
    background: #2ba0a3;
}

/* ============================================
   FOOTER
============================================ */

.site-footer {
    background: #ffffff;
    color: #5b2e2b;
}

.footer-top {
    padding: 50px 0;
    border-top: 1px solid #ececec;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.6fr 1fr 0.8fr;
    gap: 70px;
    align-items: start;
}

.footer-col {
    text-align: left;
}

.footer-logo {
    display: block;
    width: 120px;
    height: auto;
    margin: 0 0 20px;
}

.footer-col:first-child p {
    max-width: 480px;
}

.footer-col h4 {
    margin: 0 0 20px;

    color: #810923;

    font-size: 20px;
    font-weight: 700;
}

.footer-col p,
.footer-col li,
.footer-col a {
    color: #5b2e2b;
    font-size: 16px;
    line-height: 1.7;
}

.footer-col ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-col a {
    text-decoration: none;
    transition: .2s;
}

.footer-col a:hover {
    color: #2ba0a3;
}

.footer-bottom {
    padding: 20px 0;

    border-top: 1px solid #ececec;

    text-align: center;

    color: #5b2e2b;
    font-size: 14px;
}

@media (max-width: 800px) {

    .footer-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

}