/* =========================================================
   SERVICE DETAIL PAGES
========================================================= */

/* HERO */

.detail-hero{
    position:relative;
    min-height:760px;

    display:flex;
    align-items:center;

    overflow:hidden;

    padding:160px 0 120px;

    color:#fff;
}

.estructuras-hero{
    background:
        linear-gradient(rgba(7,12,18,.58), rgba(7,12,18,.82)),
        url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?q=80&w=1800&auto=format&fit=crop')
        center/cover no-repeat;
}

.mobiliario-comercial-hero{
    background:
        linear-gradient(rgba(7,12,18,.58), rgba(7,12,18,.82)),
        url('https://images.unsplash.com/photo-1517502884422-41eaead166d4?q=80&w=1800&auto=format&fit=crop')
        center/cover no-repeat;
}

.mobiliario-hogar-hero{
    background:
        linear-gradient(rgba(7,12,18,.50), rgba(7,12,18,.78)),
        url('https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?q=80&w=1800&auto=format&fit=crop')
        center/cover no-repeat;
}

.diseno-medida-hero{
    background:
        linear-gradient(rgba(7,12,18,.55), rgba(7,12,18,.82)),
        url('https://images.unsplash.com/photo-1581092160562-40aa08e78837?q=80&w=1800&auto=format&fit=crop')
        center/cover no-repeat;
}

/* PROYECTOS */

.viviendas-hero{
    background:
        linear-gradient(rgba(7,12,18,.50), rgba(7,12,18,.80)),
        url('https://images.unsplash.com/photo-1494526585095-c41746248156?q=80&w=1800&auto=format&fit=crop')
        center/cover no-repeat;
}

.oficinas-hero{
    background:
        linear-gradient(rgba(7,12,18,.52), rgba(7,12,18,.82)),
        url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?q=80&w=1800&auto=format&fit=crop')
        center/cover no-repeat;
}

.detail-overlay{
    position:absolute;
    inset:0;

    background:
        radial-gradient(circle at 80% 20%, rgba(240,90,0,.18), transparent 24%),
        radial-gradient(circle at 10% 70%, rgba(255,255,255,.06), transparent 28%);
}

.locales-hero{
    background:
        linear-gradient(rgba(7,12,18,.52), rgba(7,12,18,.82)),
        url('https://images.unsplash.com/photo-1441986300917-64674bd600d8?q=80&w=1800&auto=format&fit=crop')
        center/cover no-repeat;
}

.industriales-hero{
    background:
        linear-gradient(rgba(7,12,18,.58), rgba(7,12,18,.84)),
        url('https://images.unsplash.com/photo-1581092160562-40aa08e78837?q=80&w=1800&auto=format&fit=crop')
        center/cover no-repeat;
}

.detail-hero-content{
    position:relative;
    z-index:2;

    width:min(100% - 56px, var(--container));
    margin:auto;
}

.detail-hero-content h1{
    max-width:980px;

    margin:24px 0;

    font-size:clamp(56px, 7vw, 104px);
    line-height:.94;
    letter-spacing:-3px;
}

.detail-hero-content p{
    max-width:780px;

    color:rgba(255,255,255,.78);

    font-size:20px;
    line-height:1.9;
}

/* DETAIL SECTION */

.detail-section{
    position:relative;

    padding:120px 0;

    background:#f7f7f4;
}

.detail-grid{
    width:min(100% - 56px, var(--container));
    margin:auto;

    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;

    align-items:center;
}

.detail-copy h2{
    margin:18px 0 24px;

    font-size:clamp(40px, 5vw, 72px);
    line-height:1.02;
    letter-spacing:-2px;

    color:var(--dark);
}

.detail-copy p{
    margin-bottom:20px;

    color:var(--muted);

    font-size:18px;
    line-height:1.95;
}

.detail-image{
    position:relative;
}

.detail-image img{
    width:100%;
    height:100%;

    min-height:640px;

    object-fit:cover;

    border-radius:34px;

    box-shadow:0 30px 80px rgba(0,0,0,.14);
}

/* DETAIL LIST */

.detail-list{
    display:grid;
    gap:18px;

    margin-top:38px;

    padding:0;
    list-style:none;
}

.detail-list li{
    display:flex;
    align-items:flex-start;
    gap:14px;

    color:var(--dark);

    font-size:17px;
    font-weight:700;
    line-height:1.7;
}

.detail-list li i{
    width:22px;
    height:22px;

    flex-shrink:0;

    color:var(--orange);

    margin-top:4px;
}

/* BENEFITS */

.detail-benefits{
    position:relative;

    padding:120px 0;

    background:#fff;
}

.benefits-grid{
    width:min(100% - 56px, var(--container));
    margin:auto;

    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}

.benefits-grid article{
    padding:38px;

    background:#fff;

    border:1px solid rgba(16,24,32,.07);
    border-radius:28px;

    box-shadow:0 10px 30px rgba(0,0,0,.03);

    transition:var(--transition);
}

.benefits-grid article:hover{
    transform:translateY(-10px);
    box-shadow:0 30px 60px rgba(0,0,0,.08);
}

.benefits-grid article i{
    width:34px;
    height:34px;

    color:var(--orange);

    margin-bottom:24px;
}

.benefits-grid article h3{
    margin-bottom:14px;

    color:var(--dark);

    font-size:24px;
}

.benefits-grid article p{
    color:var(--muted);
    line-height:1.85;
}

/* PROCESS */

.process-section{
    position:relative;

    padding:120px 0;

    background:
        radial-gradient(circle at 85% 20%, rgba(240,90,0,.08), transparent 24%),
        #f5f6f8;
}

.process-heading{
    width:min(100% - 56px, var(--container));
    margin:0 auto 70px;
}

.process-heading h2{
    margin-top:18px;

    color:var(--dark);

    font-size:clamp(42px, 5vw, 74px);
    line-height:1.02;
    letter-spacing:-2px;
}

.process-grid{
    width:min(100% - 56px, var(--container));
    margin:auto;

    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}

.process-grid article{
    position:relative;

    overflow:hidden;

    padding:40px;

    background:#fff;

    border-radius:28px;

    border:1px solid rgba(16,24,32,.07);

    transition:var(--transition);
}

.process-grid article:hover{
    transform:translateY(-8px);
    box-shadow:0 24px 60px rgba(0,0,0,.08);
}

.process-grid strong{
    display:inline-flex;

    margin-bottom:18px;

    color:var(--orange);

    font-size:14px;
    font-weight:900;
    letter-spacing:1px;
}

.process-grid h3{
    margin-bottom:14px;

    color:var(--dark);

    font-size:26px;
}

.process-grid p{
    color:var(--muted);
    line-height:1.85;
}

/* GALLERY */

.gallery-section{
    position:relative;

    padding:120px 0;

    background:#fff;
}

.gallery-section .split-heading{
    width:min(100% - 56px, var(--container));
    margin:0 auto 70px;
}

.gallery-grid{
    width:min(100% - 56px, var(--container));
    margin:auto;

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}

.gallery-item{
    position:relative;

    overflow:hidden;

    border-radius:30px;

    min-height:460px;

    box-shadow:0 24px 60px rgba(0,0,0,.08);
}

.gallery-item img{
    width:100%;
    height:100%;

    object-fit:cover;

    transition:transform .8s ease;
}

.gallery-item:hover img{
    transform:scale(1.08);
}

/* CONTACT */

.contact-premium{
    position:relative;

    overflow:hidden;
}

/* RESPONSIVE */

@media(max-width:1200px){

    .detail-grid{
        grid-template-columns:1fr;
    }

    .benefits-grid,
    .process-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .gallery-grid{
        grid-template-columns:1fr;
    }

    .detail-image img{
        min-height:520px;
    }
}

@media(max-width:768px){

    .detail-hero{
        min-height:auto;
        padding:130px 0 90px;
    }

    .detail-hero-content,
    .detail-grid,
    .benefits-grid,
    .process-grid,
    .gallery-grid,
    .process-heading{
        width:min(100% - 32px, var(--container));
    }

    .detail-hero-content h1{
        font-size:clamp(42px, 12vw, 58px);
        letter-spacing:-1.5px;
    }

    .detail-hero-content p{
        font-size:17px;
        line-height:1.8;
    }

    .detail-section,
    .detail-benefits,
    .process-section,
    .gallery-section{
        padding:84px 0;
    }

    .detail-grid{
        gap:44px;
    }

    .detail-copy h2,
    .process-heading h2{
        font-size:clamp(34px, 10vw, 48px);
        letter-spacing:-1px;
    }

    .detail-copy p,
    .benefits-grid article p,
    .process-grid p{
        font-size:16px;
    }

    .detail-image img{
        min-height:340px;
        border-radius:24px;
    }

    .benefits-grid,
    .process-grid{
        grid-template-columns:1fr;
    }

    .benefits-grid article,
    .process-grid article{
        padding:30px;
    }

    .gallery-item{
        min-height:320px;
        border-radius:24px;
    }
    
      .detail-benefits .split-heading{
        width:min(100% - 32px, var(--container));
        margin:0 auto 44px;
    }
}

@media(max-width:420px){

    .detail-hero-content h1{
        font-size:38px;
    }

    .detail-copy h2,
    .process-heading h2{
        font-size:34px;
    }

    .benefits-grid article h3,
    .process-grid h3{
        font-size:22px;
    }
}

.detail-benefits .split-heading{
    width:min(100% - 56px, var(--container));
    margin:0 auto 70px;
}


.input-icon > i,
.input-icon > svg{
    position:absolute;
    left:21px;
    top:50%;
    transform:translateY(-50%);

    width:19px;
    height:19px;

    color:var(--orange);

    stroke-width:2.2;

    pointer-events:none;

    z-index:5;
}

.textarea-icon > i,
.textarea-icon > svg{
    top:22px;
    transform:none;
}

.contact-form input,
.contact-form select{
    height:58px;
    padding:0 18px 0 58px;
}

.contact-form textarea{
    min-height:150px;
    padding:18px 18px 18px 58px;
}