/* HERO */

.contact-hero{

    padding:100px 0;

    text-align:center;

    background:
    linear-gradient(
        135deg,
        #EAFBF8,
        #FFFFFF
    );
}

.contact-badge{

    display:inline-block;

    padding:8px 18px;

    border-radius:999px;

    background:#0E9F8D;

    color:#fff;

    font-size:12px;

    font-weight:700;
}

.contact-hero h1{

    margin-top:20px;

    font-size:56px;

    font-weight:800;
}

.contact-hero p{

    max-width:800px;

    margin:20px auto 0;

    color:#6B7280;

    line-height:1.9;
}


/* KONTAK */

.contact-section{

    padding:80px 0;
}

.contact-grid{

    display:grid;

    grid-template-columns:420px 1fr;

    gap:30px;
}

.contact-info{

    background:#fff;

    padding:35px;

    border-radius:24px;

    box-shadow:
    0 10px 25px rgba(0,0,0,.05);
}

.contact-info h2{

    margin-bottom:25px;
}

.contact-item{

    display:flex;

    gap:18px;

    margin-bottom:25px;
}

.contact-item i{

    width:50px;

    height:50px;

    border-radius:50%;

    background:#EAFBF8;

    color:#0E9F8D;

    display:flex;

    align-items:center;

    justify-content:center;
}

.contact-item h5{

    margin-bottom:5px;
}

.contact-item p{

    margin:0;

    color:#6B7280;

    line-height:1.7;
}


/* MAP */

.contact-map{

    overflow:hidden;

    border-radius:24px;

    box-shadow:
    0 10px 25px rgba(0,0,0,.05);
}

.contact-map iframe{

    width:100%;

    height:100%;

    min-height:500px;

    border:none;
}


/* BUTTON */

.btn-location{

    display:inline-flex;

    align-items:center;

    gap:10px;

    margin-top:10px;

    background:#0E9F8D;

    color:#fff;

    padding:14px 24px;

    border-radius:999px;

    text-decoration:none;
}


/* JAM */

.service-hour-section{

    padding-bottom:100px;
}

.hour-card{

    background:
    linear-gradient(
        135deg,
        #0E9F8D,
        #18B8A3
    );

    color:#fff;

    padding:60px;

    border-radius:30px;
}

.hour-card h2{

    text-align:center;

    margin-bottom:30px;
}

.hour-grid{

    display:grid;

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

    gap:20px;
}

.hour-grid div{

    background:
    rgba(255,255,255,.15);

    padding:24px;

    border-radius:20px;

    text-align:center;
}

.hour-grid span{

    display:block;

    font-size:13px;

    opacity:.9;
}

.hour-grid strong{

    display:block;

    margin:10px 0;
}


/* MOBILE */

@media(max-width:768px){

    .contact-hero{

        padding:70px 0;
    }

    .contact-hero h1{

        font-size:34px;
    }

    .contact-grid{

        grid-template-columns:1fr;
    }

    .contact-map iframe{

        min-height:350px;
    }

    .hour-grid{

        grid-template-columns:1fr;
    }

    .hour-card{

        padding:35px 24px;
    }

}
