.home-page{
    min-height:100vh;
    background:#f5f7fa;
}

.section-container{
    width:min(1500px, calc(100% - 80px));
    margin:0 auto;
}

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

.home-hero{
    position:relative;
    width:min(1920px, calc(100% - 0px));
    min-height:560px;
    padding:90px 70px 70px;
    height: 860px;
    display:flex;
    align-items:center;

    /*border-radius:34px;*/
    overflow:hidden;

    background:
        linear-gradient(
            90deg,
            rgba(4, 18, 30, 0.514) 0%,
            rgba(4, 25, 30, 0.253) 34%,
            rgba(4, 38, 30, 0) 68%,
            rgba(4, 38, 30, 0) 100%
        ),
        url("../../img/hero/hero2.28598f59c579.png");

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

    box-shadow:0 28px 80px rgba(15,23,42,.10);
}

.home-hero__content{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1050px;
    margin:0;
    transform:translate(25px, -10px);
}
.home-hero__eyebrow{
    display:inline-flex;
    margin-bottom:22px;
    color:#d9fff1;
    font-family:"Montserrat", sans-serif;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.16em;
}

.home-hero h1{
    max-width:970px;
    margin:0;

    color:#ffffff;

    font-family:"Montserrat", sans-serif;
    font-size:clamp(38px, 3.4vw, 56px);
    line-height:1.03;
    font-weight:800;
    letter-spacing:-.055em;
}

.home-hero p{
    max-width:650px;
    margin:28px 0 0;
    color:#ffffff;
    font-weight: 400;
    font-size:18px;
    line-height:1.85;
}

/* =========================
   BOTONES HERO HOME
========================= */

.home-hero-actions{
    display:flex;
    align-items:center;
    gap:18px;
    margin-top:20px;
}

.home-hero__button{
    min-height:50px;
    padding:0 25px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid transparent;
    font-size:12px;
    line-height:1;
    font-weight:900;
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:.04em;
    white-space:nowrap;
}

.home-hero__button:hover{
    background:#334155;
    transform:translateY(-2px);
}

.home-hero__button--primary{
    border-color:rgba(255,255,255,.72);
    background:#475569;
    color:#ffffff;
}
/* =========================================================
   UF HERO
========================================================= */

.home-uf-card{
    position:absolute;
    z-index:3;
    right:clamp(40px, 7vw, 129px);
    bottom:210px;
    width:max-content;
    max-width:420px;
    padding:18px 24px;
    display:flex;
    align-items:center;
    gap:24px;
}

.home-uf-card span{
    display:block;
    margin-bottom:5px;

    color:#d9fff1;

    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.12em;
}

.home-uf-card strong{
    display:block;

    color:#ffffff;

    font-size:24px;
    line-height:1;
    font-weight:900;
    letter-spacing:-.03em;
}

.home-uf-card small{
    color:#d9fff1;

    font-size:13px;
    font-weight:700;
    white-space:nowrap;
}
/* =========================
   HEADINGS
========================= */

.section-heading{
    margin-bottom:34px;
}

.section-heading span{
    display:inline-block;
    margin-bottom:10px;
    color:#047857;
    font-size:14px;
    font-weight:800;
}

.section-heading h2{
    font-size:clamp(2rem, 3vw, 3.4rem);
    line-height:1.1;
    letter-spacing:-.03em;
}
























/* =========================================================
   SERVICIOS FLOTANTES DEL HOME
   ESCRITORIO
========================================================= */

.home-services-summary-section{
    position:relative;
    z-index:20;

    width:min(1180px, calc(100% - 80px));
    margin:-88px auto 80px;
}

.home-services-summary{
    width:100%;
    min-height:170px;
    padding:45px 20px;
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    align-items:center;
    background:#ffffff;
    border-radius:0;
    box-shadow:
        0 28px 65px rgba(15, 23, 42, .13),
        0 8px 20px rgba(15, 23, 42, .05);
}


/* =========================================================
   SERVICIO
========================================================= */

.home-service-summary-item{
    position:relative;
    min-width:0;
    min-height:100px;
    padding:0 10px;
    display:grid;
    grid-template-columns:60px minmax(0, 1fr);
    align-items:center;
    gap:20px;
}

.home-service-summary-item:first-child{
    padding-left:12px;
}

.home-service-summary-item:last-child{
    padding-right:12px;
}

.home-service-summary-item:not(:last-child)::after{
    content:"";

    position:absolute;
    top:0;
    right:0;
    bottom:0;

    width:1px;

    background:#dfe5ea;
}


/* =========================================================
   ICONO
========================================================= */

.home-service-summary-item__icon{
    width:60px;
    height:60px;

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

    color:#475569;
}

.home-service-summary-item__icon svg{
    width:44px;
    height:44px;

    display:block;

    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}


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

.home-service-summary-item__content{
    min-width:0;
}

.home-service-summary-item h2{
    margin:0 0 9px;
    color:#071426;
    font-size:18px;
    line-height:1.25;
    font-weight:900;
    letter-spacing:-.02em;
}

.home-service-summary-item p{
    max-width:205px;
    margin:0;

    color:#64748b;

    font-size:12.5px;
    line-height:1.55;
    font-weight:500;
}
















/* =========================================================
   PROPIEDADES DESTACADAS
   El fondo negro sube detrás de la parte inferior del carrusel
========================================================= */

.featured-section{
    position:relative;
    z-index:2;
    isolation:isolate;

    margin:0;
    padding:0 0 58px;

    scroll-margin-top:120px;
    background:#f5f7fa;
}



.featured-section .section-container{
    position:relative;
    z-index:2;
}

.featured-header,
.featured-carousel,
.featured-carousel__viewport,
.featured-carousel__track{
    position:relative;
    z-index:2;
}

.featured-carousel__navigation{
    position:relative;
    z-index:3;

    margin-top:24px;
}

/* =========================================================
   ENCABEZADO
========================================================= */

.featured-header{
    width:min(1400px, 100%);
    margin:0 auto 48px;

    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:32px;
}

.featured-header__text{
    min-width:0;
}

.featured-header__eyebrow{
    margin-bottom:9px;

    display:flex;
    align-items:center;
    gap:11px;

    color:#475569;

    font-size:10px;
    line-height:1;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.featured-header__eyebrow::before{
    content:"";

    width:25px;
    height:2px;

    display:block;

    background:#071426;
}

.featured-header h2{
    margin:0;

    color:#071426;

    font-size:clamp(32px, 2.8vw, 36px);
    line-height:1.08;
    font-weight:900;
    letter-spacing:-.04em;
}

.featured-header__actions{
    display:flex;
    align-items:center;
    gap:20px;

    flex-shrink:0;
}

.featured-header__link{
    display:inline-flex;
    align-items:center;
    gap:9px;

    color:#071426;

    font-size:13px;
    line-height:1;
    font-weight:900;
    text-decoration:none;
    white-space:nowrap;

    transition:
        color .2s ease,
        gap .2s ease;
}

.featured-header__link:hover{
    gap:13px;
    color:#047857;
}

.featured-header__link span{
    font-size:18px;
    line-height:1;
}


/* =========================================================
   CONTROLES SUPERIORES
========================================================= */

.featured-carousel__controls{
    display:flex;
    align-items:center;
    gap:8px;
}

.featured-carousel__control{
    width:42px;
    height:42px;
    padding:0;

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

    border:1px solid #dce3e9;
    border-radius:4px;

    background:#ffffff;
    color:#071426;

    font-family:inherit;
    font-size:20px;
    line-height:1;

    cursor:pointer;

    box-shadow:0 8px 20px rgba(15,23,42,.06);

    transition:
        color .2s ease,
        background-color .2s ease,
        border-color .2s ease,
        transform .2s ease,
        box-shadow .2s ease;
}

.featured-carousel__control:hover{
    color:#ffffff;
    background:#0f3d34;
    border-color:#0f3d34;

    transform:translateY(-2px);

    box-shadow:0 12px 24px rgba(15,61,52,.18);
}

.featured-carousel__control:disabled{
    opacity:.38;
    cursor:not-allowed;
    transform:none;
    box-shadow:none;
}


/* =========================================================
   CONTENEDOR DEL CARRUSEL
========================================================= */

.featured-carousel{
    position:relative;
    width:min(1400px, 100%);
    margin:0 auto;
}

.featured-carousel__viewport{
    width:100%;
    overflow:hidden;
}

.featured-carousel__track{
    display:flex;
    align-items:stretch;
    gap:28px;
    transition:transform .55s cubic-bezier(.22, .8, .25, 1);
    will-change:transform;
}


/* Cada tarjeta ocupa exactamente un tercio */

.featured-property-card{
    flex:0 0 calc((100% - 56px) / 3);
    min-width:0;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border:1px solid #e1e7ed;
    background:#ffffff;


    transition:
        transform .24s ease,
        border-color .24s ease,
        box-shadow .24s ease;
}

.featured-property-card:hover{
    transform:translateY(-5px);

    border-color:#c8d1da;

}


/* =========================================================
   IMAGEN
========================================================= */

.featured-property-card__image{
    position:relative;

    width:100%;
    aspect-ratio:4 / 3;

    display:block;
    overflow:hidden;

    background:#e5e7eb;
}

.featured-property-card__image img{
    width:100%;
    height:100%;

    display:block;

    object-fit:cover;
    object-position:center;

}

.featured-property-card:hover .featured-property-card__image img{

}

.featured-property-card__placeholder{
    width:100%;
    height:100%;

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

    background:#e5e7eb;
    color:#64748b;

    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}


/* =========================================================
   ETIQUETAS SOBRE LA IMAGEN
========================================================= */

.featured-property-card__badges{
    position:absolute;
    top:15px;
    left:15px;
    right:15px;
    z-index:2;

    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.featured-property-card__badge{
    min-height:31px;
    padding:0 12px;

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

    border:1px solid rgba(255,255,255,.72);
    border-radius:999px;

    background:rgba(255,255,255,.94);
    backdrop-filter:blur(10px);

    color:#0f3d34;

    font-size:10px;
    line-height:1;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.065em;

    box-shadow:0 6px 15px rgba(15,23,42,.08);
}


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

.featured-property-card__content{
    flex:1;

    padding:17px 18px 18px;

    display:flex;
    flex-direction:column;
}


/* Ubicación */

.featured-property-card__location{
    min-width:0;

    display:flex;
    align-items:center;
    gap:7px;

    color:#0f172a;

    font-size:13px;
    line-height:1.35;
    font-weight:800;
}

.featured-property-card__location svg{
    width:15px;
    height:15px;

    flex-shrink:0;

    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.featured-property-card__location span{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}


/* =========================================================
   CARACTERÍSTICAS
========================================================= */

.featured-property-card__features{
    margin-top:14px;
    padding:13px 0;

    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:0;

    border-top:1px solid #edf0f3;
    border-bottom:1px solid #edf0f3;
}

.featured-property-card__feature{
    min-width:0;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;

    color:#64748b;

    font-size:10px;
    line-height:1;
    font-weight:700;
    white-space:nowrap;
}

.featured-property-card__feature:not(:last-child){
    border-right:1px solid #edf0f3;
}

.featured-property-card__feature svg{
    width:13px;
    height:13px;

    flex-shrink:0;

    fill:none;
    stroke:#334155;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}


/* =========================================================
   PRECIO
========================================================= */

.featured-property-card__price{
    width:100%;
    margin-top:16px;

    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:18px;

    color:#071426;
}

.featured-property-card__price strong{
    min-width:0;

    font-size:20px;
    line-height:1.1;
    font-weight:900;
    letter-spacing:-.025em;
    white-space:nowrap;
}

.featured-property-card__price small{
    margin-left:auto;

    color:#64748b;

    font-size:12px;
    line-height:1;
    font-weight:800;
    text-align:right;
    white-space:nowrap;
}

@media (max-width:430px){

    .featured-property-card__price{
        align-items:flex-start;
        flex-direction:column;
        gap:5px;
    }

    .featured-property-card__price small{
        margin-left:0;
        text-align:left;
    }

}
/* =========================================================
   ACCIONES
========================================================= */

.featured-property-card__actions{
    margin-top:16px;

    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
}

.featured-property-card__button{
    min-height:40px;
    padding:0 13px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid transparent;
    font-size:11px;
    line-height:1;
    font-weight:900;
    text-align:center;
    text-decoration:none;
    white-space:nowrap;
    transition:
        transform .2s ease,
        color .2s ease,
        background-color .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.featured-property-card__button:hover{
    transform:translateY(-1px);
}


/* Ver ficha */

.featured-property-card__button--primary{
    background:#475569;
    color:#ffffff;
}

.featured-property-card__button--primary:hover{
    background:#334155;
    box-shadow:0 8px 18px rgba(7,20,38,.18);
}


/* Consultar */

.featured-property-card__button--secondary{
    background:#ffffff;
    border-color: #475569;
    color:#475569;
}

.featured-property-card__button--secondary:hover{
    color:#020e04;
    box-shadow:0 8px 18px rgba(7,20,38,.18);
}


/* =========================================================
   NAVEGACIÓN INFERIOR
========================================================= */

.featured-carousel__navigation{
    margin-top:24px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
}

.featured-carousel__dot{
    width:8px;
    height:8px;
    padding:0;

    border:0;
    border-radius:999px;

    background:#cbd5e1;

    cursor:pointer;

    transition:
        width .25s ease,
        background-color .25s ease;
}

.featured-carousel__dot.is-active{
    width:28px;

    background:#475569;
}










/* =========================================================
   SERVICIOS PRINCIPALES
========================================================= */

.home-main-services{
    width:100%;
    padding:60px 0 120px;

    /*background:#041c09;*/
}


/* =========================================================
   ENCABEZADO
========================================================= */

.home-main-services__header{
    max-width:1400px;
    margin:0 auto 48px;

    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:70px;
}

.home-main-services__heading{
    max-width:800px;
}

.home-main-services__eyebrow{
    margin-bottom:15px;

    display:flex;
    align-items:center;
    gap:12px;

    color:#475569;

    font-size:11px;
    line-height:1;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.14em;
}

.home-main-services__eyebrow::before{
    content:"";

    width:32px;
    height:2px;

    display:block;

    background:currentColor;
}

.home-main-services__header h2{
    max-width:800px;
    margin:0;

    color:#071426;

    font-size:clamp(32px, 2.8vw, 36px);
    line-height:1.06;
    font-weight:900;
    letter-spacing:-.05em;
}

.home-main-services__introduction{
    max-width:420px;
    margin:0 0 5px;

    color:rgb(100, 116, 139);

    font-size:15px;
    line-height:1.75;
}

/* =========================================================
   GRID DE SERVICIOS
========================================================= */

.home-main-services__grid{
    max-width:1400px;
    margin:0 auto;

    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    align-items:stretch;
    gap:28px;
}


/* =========================================================
   TARJETA
========================================================= */

.home-service-card{
    min-width:0;
    min-height:660px;

    display:flex;
    flex-direction:column;

    border:1px solid #dce3e9;

    background:#f8fafc;
}


/* =========================================================
   IMAGEN
========================================================= */

.home-service-card__image{
    position:relative;

    width:100%;
    height:330px;

    overflow:hidden;

    background:#dce4e8;
}

.home-service-card__image::after{
    content:"";

    position:absolute;
    inset:0;

    background:
        linear-gradient(
            180deg,
            rgba(2, 6, 23, .02) 20%,
            rgba(2, 6, 23, .45) 100%
        );

    pointer-events:none;
}

.home-service-card__image img{
    width:100%;
    height:100%;
    
    display:block;

    object-fit:cover;
    object-position:center;
}


/* Número */

.home-service-card__number{
    position:absolute;
    top:22px;
    left:22px;
    z-index:2;

    min-width:42px;
    height:42px;
    padding:0 10px;

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

    border:1px solid rgba(255,255,255,.65);

    background:rgba(0,0,0,.38);
    color:#ffffff;

    font-size:11px;
    line-height:1;
    font-weight:900;
}


/* Icono */

.home-service-card__icon{
    position:absolute;
    right:24px;
    bottom:22px;
    z-index:2;

    width:58px;
    height:58px;

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

    background:#ffffff;
    color:#071426;
}

.home-service-card__icon svg{
    width:29px;
    height:29px;

    display:block;

    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}


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

.home-service-card__content{
    flex:1;
    padding:30px 30px 32px;

    display:flex;
    flex-direction:column;
}

.home-service-card__category{
    display:block;
    margin-bottom:11px;

    color:#475569;

    font-size:10px;
    line-height:1;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.13em;
}

.home-service-card h3{
    margin:0;

    color:#071426;

    font-size:26px;
    line-height:1.15;
    font-weight:900;
    letter-spacing:-.035em;
}

.home-service-card__content > p{
    margin:19px 0 0;

    color:#64748b;

    font-size:14px;
    line-height:1.75;
}


/* =========================================================
   LISTA
========================================================= */

.home-service-card__list{
    margin:26px 0 0;
    padding:22px 0 0;
    margin-bottom: 15px;
    display:grid;
    gap:12px;

    border-top:1px solid #dce3e9;

    list-style:none;
}

.home-service-card__list li{
    position:relative;

    padding-left:20px;

    color:#334155;

    font-size:13px;
    line-height:1.45;
    font-weight:700;
}

.home-service-card__list li::before{
    content:"";

    position:absolute;
    top:7px;
    left:0;

    width:7px;
    height:7px;

    border-radius:50%;

    background:#334155;
}


/* =========================================================
   ENLACE
========================================================= */

.home-service-card__link{
    margin-top:auto;
    padding-top:27px;

    display:inline-flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;

    border-top:1px solid #dce3e9;

    color:#071426;

    font-size:12px;
    line-height:1;
    font-weight:900;
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:.035em;
}

.home-service-card__link span{
    font-size:20px;
    line-height:1;
}












/* =========================================================
   HOME RESPONSIVE
   Agregar al final de home.css
========================================================= */


/* =========================================================
   NOTEBOOK
   1024px a 1799px
========================================================= */

@media (min-width:1024px) and (max-width:1799px){

    /* =====================================================
       CONTENEDORES
    ====================================================== */

    .section-container{
        width:min(1280px, calc(100% - 64px));
        margin:0 auto;
    }


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

    .home-hero{
        width:100%;
        height:670px;
        min-height:670px;
        padding:110px 48px 75px;
        background-position:center;
    }

    .home-hero__content{
        width:100%;
        max-width:760px;
        margin:0;
        transform:translate(25px, -30px);
    }

    .home-hero__eyebrow{
        margin-bottom:18px;
        font-size:11px;
    }

    .home-hero h1{
        max-width:760px;
        font-size:clamp(46px, 4.5vw, 50px);
        line-height:1.03;
    }

    .home-hero p{
        max-width:580px;
        margin-top:23px;
        font-size:16px;
        line-height:1.7;
    }

    .home-hero-actions{
        margin-top:28px;
    }

    .home-hero__button{
        min-height:46px;
        padding:0 21px;
        font-size:11px;
    }


    /* =====================================================
       UF
    ====================================================== */

    .home-uf-card{
    position:absolute;
    z-index:3;
    right:clamp(40px, 7vw, 50px);
    bottom:150px;
    width:max-content;
    max-width:420px;
    padding:18px 24px;
    display:flex;
    align-items:center;
    gap:24px;
    }

    .home-uf-card span{
        font-size:10px;
    }

    .home-uf-card strong{
        font-size:21px;
    }

    .home-uf-card small{
        font-size:11px;
    }


    /* =====================================================
       SERVICIOS FLOTANTES
    ====================================================== */

    .home-services-summary-section{
        width:min(1080px, calc(100% - 64px));

        margin:-68px auto 66px;
    }

    .home-services-summary{
        min-height:148px;

        padding:27px 12px;
    }

    .home-service-summary-item{
        min-height:90px;
        padding:0 12px;

        grid-template-columns:46px minmax(0, 1fr);
        gap:12px;
    }

    .home-service-summary-item:first-child{
        padding-left:8px;
    }

    .home-service-summary-item:last-child{
        padding-right:8px;
    }

    .home-service-summary-item__icon{
        width:46px;
        height:46px;
    }

    .home-service-summary-item__icon svg{
        width:34px;
        height:34px;
    }

    .home-service-summary-item h2{
        margin-bottom:6px;

        font-size:14px;
    }

    .home-service-summary-item p{
        max-width:175px;

        font-size:10.5px;
        line-height:1.45;
    }


    /* =====================================================
       PROPIEDADES DESTACADAS
    ====================================================== */

    .featured-section{
        padding-bottom:40px;
    }

    .featured-header{
        width:100%;
        margin-bottom:32px;
    }

    .featured-header h2{
        font-size:clamp(34px, 3vw, 33px);
    }

    .featured-header__actions{
        gap:14px;
    }

    .featured-header__link{
        font-size:12px;
    }

    .featured-carousel{
        width:100%;
    }

    .featured-carousel__track{
        gap:20px;
    }

    .featured-property-card{
        flex-basis:calc((100% - 40px) / 3);
    }

    .featured-property-card__content{
        padding:15px 15px 17px;
    }

    .featured-property-card__badges{
        top:12px;
        left:12px;
        right:12px;

        gap:6px;
    }

    .featured-property-card__badge{
        min-height:28px;
        padding:0 10px;

        font-size:9px;
    }

    .featured-property-card__location{
        font-size:12px;
    }

    .featured-property-card__features{
        margin-top:12px;
        padding:11px 0;
    }

    .featured-property-card__feature{
        gap:3px;

        font-size:9px;
    }

    .featured-property-card__feature svg{
        width:12px;
        height:12px;
    }

    .featured-property-card__price{
        margin-top:14px;
    }

    .featured-property-card__price strong{
        font-size:18px;
    }

    .featured-property-card__price small{
        font-size:11px;
    }

    .featured-property-card__actions{
        margin-top:14px;
        gap:7px;
    }

    .featured-property-card__button{
        min-height:38px;
        padding:0 9px;

        font-size:9.5px;
    }


    /* =====================================================
       SERVICIOS PRINCIPALES
    ====================================================== */

    .home-main-services{
        padding:45px 0 95px;
    }

    .home-main-services__header,
    .home-main-services__grid{
        width:100%;
        max-width:none;
    }

    .home-main-services__header{
        margin-bottom:38px;

        gap:45px;
    }

    .home-main-services__heading{
        max-width:690px;
    }

    .home-main-services__header h2{
        max-width:690px;
        font-size:clamp(34px, 3vw, 33px);
    }

    .home-main-services__introduction{
        max-width:370px;

        font-size:13px;
    }

    .home-main-services__grid{
        gap:20px;
    }

    .home-service-card{
        min-height:590px;
    }

    .home-service-card__image{
        height:270px;
    }

    .home-service-card__number{
        top:17px;
        left:17px;

        min-width:38px;
        height:38px;

        font-size:10px;
    }

    .home-service-card__icon{
        right:18px;
        bottom:18px;

        width:50px;
        height:50px;
    }

    .home-service-card__icon svg{
        width:25px;
        height:25px;
    }

    .home-service-card__content{
        padding:24px 23px 26px;
    }

    .home-service-card h3{
        font-size:21px;
    }

    .home-service-card__content > p{
        margin-top:15px;

        font-size:12px;
        line-height:1.65;
    }

    .home-service-card__list{
        margin-top:20px;
        padding-top:18px;

        gap:9px;
    }

    .home-service-card__list li{
        padding-left:17px;

        font-size:11px;
    }

    .home-service-card__link{
        padding-top:22px;

        font-size:10px;
    }

}



/* =========================================================
   TABLET
   768px a 1023px
========================================================= */

@media (min-width:768px) and (max-width:1023px){

    .section-container{
        width:calc(100% - 48px);
    }


    /* HERO */

    .home-hero{
        width:100%;
        height:720px;
        min-height:720px;

        padding:115px 36px 90px;

        background-position:58% center;
    }

    .home-hero__content{
        max-width:660px;

        transform:none;
    }

    .home-hero h1{
        max-width:650px;

        font-size:48px;
    }

    .home-hero p{
        max-width:530px;

        font-size:15px;
    }

    .home-uf-card{
        top:90px;
        right:28px;
        bottom:auto;

        padding:12px 14px;

        gap:12px;
    }

    .home-uf-card strong{
        font-size:19px;
    }

    .home-uf-card small{
        font-size:10px;
    }


    /* SERVICIOS FLOTANTES */

    .home-services-summary-section{
        width:calc(100% - 48px);

        margin:-55px auto 65px;
    }

    .home-services-summary{
        grid-template-columns:repeat(2, minmax(0, 1fr));

        padding:18px;
    }

    .home-service-summary-item{
        min-height:105px;
        padding:15px;

        grid-template-columns:48px minmax(0, 1fr);
    }

    .home-service-summary-item:nth-child(2)::after{
        display:none;
    }

    .home-service-summary-item:nth-child(-n+2){
        border-bottom:1px solid #dfe5ea;
    }

    .home-service-summary-item h2{
        font-size:15px;
    }


    /* DESTACADOS */

    .featured-header{
        margin-bottom:30px;
    }

    .featured-header h2{
        font-size:30px;
    }

    .featured-carousel__track{
        gap:18px;
    }

    .featured-property-card{
        flex:0 0 calc((100% - 18px) / 2);
    }


    /* SERVICIOS PRINCIPALES */

    .home-main-services{
        padding:75px 0 90px;
    }

    .home-main-services__header{
        align-items:flex-start;
        flex-direction:column;

        gap:18px;
    }

    .home-main-services__header h2{
        font-size:36px;
    }

    .home-main-services__grid{
        grid-template-columns:1fr;
        gap:24px;
    }

    .home-service-card{
        min-height:0;

        display:grid;
        grid-template-columns:minmax(280px, .85fr) minmax(0, 1.15fr);
    }

    .home-service-card__image{
        height:100%;
        min-height:410px;
    }

}



/* =========================================================
   MÓVIL
   Hasta 767px
========================================================= */

@media (max-width:767px){

    .home-page{
        width:100%;
        overflow-x:hidden;
    }

    .section-container{
        width:calc(100% - 32px);
        margin:0 auto;
    }


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

    .home-hero{
        width:100%;
        height:auto;
        min-height:760px;

        padding:115px 20px 145px;

        align-items:flex-start;

        background:
            linear-gradient(
                90deg,
                rgba(4, 18, 30, .78) 0%,
                rgba(4, 25, 30, .62) 55%,
                rgba(4, 38, 30, .34) 100%
            ),
            url("../../img/hero/hero2.28598f59c579.png");

        background-size:cover;
        background-position:62% center;
    }

    .home-hero__content{
        width:100%;
        max-width:none;
        top: 22px;
        margin:0;

        transform:none;
    }

    .home-hero__eyebrow{
        margin-bottom:17px;

        font-size:10px;
        line-height:1.4;
        letter-spacing:.13em;
    }

    .home-hero h1{
        max-width:100%;

        font-size:clamp(36px, 10.5vw, 44px);
        line-height:1.04;
        letter-spacing:-.05em;
    }

    /* Evita cortes forzados incómodos del título */
    .home-hero h1 br{
        display:none;
    }

    .home-hero p{
        max-width:100%;
        margin-top:22px;

        font-size:15px;
        line-height:1.65;
    }

    .home-hero-actions{
        width:100%;
        margin-top:30px;
    }

    .home-hero__button{
        width:100%;
        min-height:48px;
        padding:0 18px;

        font-size:11px;
    }


    /* =====================================================
       UF
    ====================================================== */

    .home-uf-card{
        top:auto;
        right:20px;
        bottom:54px;
        left:20px;

        width:auto;
        max-width:none;
        padding:12px 0;

        justify-content:space-between;
        gap:12px;
    }

    .home-uf-card span{
        font-size:9px;
    }

    .home-uf-card strong{
        font-size:19px;
    }

    .home-uf-card small{
        max-width:145px;

        font-size:9px;
        line-height:1.4;
        text-align:right;
        white-space:normal;
    }


    /* =====================================================
       SERVICIOS FLOTANTES
    ====================================================== */

    .home-services-summary-section{
        width:calc(100% - 32px);

        margin:-42px auto 58px;
    }

    .home-services-summary{
        min-height:0;
        padding:8px 20px;

        grid-template-columns:1fr;
    }

    .home-service-summary-item,
    .home-service-summary-item:first-child,
    .home-service-summary-item:last-child{
        min-height:102px;
        padding:18px 0;

        grid-template-columns:48px minmax(0, 1fr);
        gap:15px;
    }

    .home-service-summary-item:not(:last-child)::after{
        top:auto;
        right:0;
        bottom:0;
        left:0;

        width:auto;
        height:1px;
    }

    .home-service-summary-item__icon{
        width:48px;
        height:48px;
    }

    .home-service-summary-item__icon svg{
        width:34px;
        height:34px;
    }

    .home-service-summary-item h2{
        margin-bottom:5px;

        font-size:15px;
    }

    .home-service-summary-item p{
        max-width:100%;

        font-size:11px;
        line-height:1.5;
    }


    /* =====================================================
       PROPIEDADES DESTACADAS
    ====================================================== */

    .featured-section{
        padding-bottom:58px;
    }

    .featured-header{
        width:100%;
        margin-bottom:27px;

        align-items:flex-start;
        flex-direction:column;

        gap:20px;
    }

    .featured-header h2{
        max-width:300px;

        font-size:30px;
        line-height:1.08;
    }

    .featured-header__actions{
        width:100%;

        justify-content:space-between;
    }

    .featured-header__link{
        font-size:12px;
    }

    .featured-carousel__control{
        width:38px;
        height:38px;
    }

    .featured-carousel__track{
        gap:16px;
    }

    .featured-property-card{
        flex:0 0 100%;
    }

    .featured-property-card:hover{
        transform:none;
    }

    .featured-property-card__content{
        padding:16px;
    }

    .featured-property-card__badges{
        top:12px;
        left:12px;
        right:12px;
    }

    .featured-property-card__features{
        padding:12px 0;
    }

    .featured-property-card__feature{
        gap:3px;

        font-size:9px;
    }

    .featured-property-card__feature svg{
        width:12px;
        height:12px;
    }

    .featured-property-card__price{
        margin-top:14px;

        align-items:baseline;
        flex-direction:row;
        gap:10px;
    }

    .featured-property-card__price strong{
        font-size:18px;
    }

    .featured-property-card__price small{
        margin-left:auto;

        font-size:10px;
        text-align:right;
    }

    .featured-property-card__actions{
        margin-top:14px;

        gap:7px;
    }

    .featured-property-card__button{
        min-height:40px;
        padding:0 8px;

        font-size:9.5px;
    }


    /* =====================================================
       SERVICIOS PRINCIPALES
    ====================================================== */

    .home-main-services{
        padding:0px 0 75px;
    }

    .home-main-services__header{
        width:100%;
        margin-bottom:30px;

        align-items:flex-start;
        flex-direction:column;

        gap:17px;
    }

    .home-main-services__heading{
        max-width:100%;
    }

    .home-main-services__eyebrow{
        margin-bottom:12px;

        font-size:9px;
    }

    .home-main-services__header h2{
        max-width:100%;

        font-size:31px;
        line-height:1.08;
    }

    .home-main-services__introduction{
        max-width:100%;
        margin:0;

        font-size:13px;
        line-height:1.65;
    }

    .home-main-services__grid{
        width:100%;

        grid-template-columns:1fr;
        gap:22px;
    }

    .home-service-card{
        min-height:0;
    }

    .home-service-card__image{
        height:270px;
    }

    .home-service-card__number{
        top:16px;
        left:16px;

        min-width:38px;
        height:38px;
    }

    .home-service-card__icon{
        right:16px;
        bottom:16px;

        width:50px;
        height:50px;
    }

    .home-service-card__content{
        padding:24px 21px 26px;
    }

    .home-service-card h3{
        font-size:23px;
    }

    .home-service-card__content > p{
        margin-top:15px;

        font-size:13px;
        line-height:1.65;
    }

    .home-service-card__list{
        margin-top:20px;
        padding-top:18px;

        gap:10px;
    }

    .home-service-card__list li{
        font-size:12px;
    }

    .home-service-card__link{
        padding-top:22px;

        font-size:10px;
    }

}


/* =========================================================
   MÓVIL PEQUEÑO
   Hasta 420px
========================================================= */

@media (max-width:420px){

    .home-hero{
        min-height:740px;
        padding-right:18px;
        padding-left:18px;
    }

    .home-hero h1{
        font-size:36px;
    }

    .featured-property-card__features{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        row-gap:12px;
    }

    .featured-property-card__feature:nth-child(2){
        border-right:0;
    }

    .featured-property-card__feature:nth-child(3),
    .featured-property-card__feature:nth-child(4){
        padding-top:4px;
    }

    .featured-property-card__price{
        align-items:flex-start;
        flex-direction:column;
        gap:5px;
    }

    .featured-property-card__price small{
        margin-left:0;
        text-align:left;
    }

    .featured-property-card__actions{
        grid-template-columns:1fr;
    }

    .home-service-card__image{
        height:245px;
    }

}