/* ========== SECTION ============ */
.welcom-sec{
    position: relative;
    margin-bottom: 50px;
    
}

.servis-sec{
    position: relative;
    margin-bottom: 50px;
    
}

.partner-sec{
    position: relative;
    margin-top: 50px;
    margin-bottom: -60px;
    
}

.team-sec{
    position: relative;
    margin-top: 50px;
    margin-bottom: 50px;
    
}

.compro-sec{
    position: relative;
    margin-top: 50px;
    margin-bottom: -75px;
    
}

.no-padding-sc{
    position: relative;
    margin-top: -110px;
    margin-bottom: 50px;
}

.no-padding-th{
    position: relative;
    margin-top: -40px;
    margin-bottom: -60px;
}

.no-padding-hse{
    position: relative;
    margin-top: -110px;
    margin-bottom: -75px;
}

.no-padding-tp{
    position: relative;
    margin-top: -140px;
    margin-bottom: -60px;
}

.no-padding-ts{
    position: relative;
    margin-top: 50px;
    margin-bottom: -60px;
}

.gitouch-sec{    
    position: relative;
    margin-top: 50px;
    margin-bottom: -75px;
}

.contact-sec{    
    position: relative;
    margin-top: -75px;
    margin-bottom: -75px;
}

.contact-title{
    position: relative;
    margin-left: 25px;
}

.input-text {
  color: black;
}

.cr-h1{
    background-color: #000000;
}

/* Paksa sembunyikan pagination */
.owl-pagination,
.owl-page,
.owl-controls .owl-page {
    display: none !important;
}

.head-gen{
    color: #000;
    font-size: 28px;
    font-weight: bolder;
    margin-bottom: 15px;
    text-transform: uppercase;
}

.head-gen-v{
    color: #000;
    font-size: 28px;
    font-weight: bolder;
    margin-top: 50px;
    text-transform: uppercase;
}

.white-head-gen{
    color: #fff;
    font-size: 28px;
    font-weight: bolder;
    margin-bottom: 15px;
    text-transform: uppercase;
}

.wcu-det{
    position: absolute;
    margin-left: 20px;
}

.safety-det{
    position: relative;
    margin-left: 600px;
    margin-top: 50px;
    margin-bottom: 200px;
}

.mv-layout{
    position: absolute;
    margin-left: 20px;
    margin-bottom: 100px;
}

.bisnis-detail{
    position: relative;
    width: 100%;
    max-width: 800px;
    margin: 30px auto;
    text-align: center;
    line-height: 1.5;
}

.safety-detail{
    position: relative;
    width: 100%;
    max-width: 800px;
    margin: 50px auto;
    text-align: justify;
    line-height: 1.5;
}

.text-sub-jdl-white{
    color: #FFF;
    font-size: 16px;
    font-weight: 400;
    font-family: 'Raleway', sans-serif;
    line-height: 1.5;
}

.text-sub-jdl{
    color: #000000;
    font-size: 16px;
    font-family: 'Raleway', sans-serif;
    line-height: 1.5;
}

.text-sub-jdl-wcu{
    color: #FFF;
    font-size: 24px;
    font-weight: 400;
    font-family: 'Raleway', sans-serif;
    line-height: 1.6;
    padding-right: 100px;
}

.text-detail-white{
    color: #FFF;
    font-size: 14px;
    font-weight: 400;
    font-family: 'Raleway', sans-serif;
    line-height: 1.5;
}

.text-detail-black{
    color: #000000;
    font-size: 14px;
    font-weight: 400;
    font-family: 'Raleway', sans-serif;
    line-height: 1.5;
}

.whyus-warp-h2 .right-whyus-safety {
  width: 100%;
  display: inline-block;
  margin-top: 10px;
}

.dwcu {
  margin-top: 50px;
  margin-bottom: 35px;
  color: #000;
}

.body-team-r,
.footer-team-r{
    text-align: right;
    font-size: 14px;
}
.footer-team-r a:hover {
    color: #ffffff; /* warna putih saat hover */
}
.footer-team-rb{
    text-align: right;
    font-size: 14px;
    color: #000000;
}
.footer-team-rb a:hover {
    color: #C97626; /* warna putih saat hover */
}

.body-team-l,
.footer-team-l{
    text-align: left;
    font-size: 14px;
}
.footer-team-l a:hover {
    color: #ffffff; /* warna putih saat hover */
}
.footer-team-lb{
    text-align: left;
    font-size: 14px;
    color: #000000;
}
.footer-team-lb a:hover {
    color: #C97626; /* warna putih saat hover */
}


.team-name{
    color: #fff;
    font-size: 16px;
    font-weight: bolder;
    text-transform: uppercase;
}

.team-name-black{
    color: #000000;
    font-size: 16px;
    font-weight: bolder;
    text-transform: uppercase;
}

.team-jobtitle{
    color: #fff;
    font-size: 14px;
    text-transform: uppercase;
}

.team-jobtitle-black{
    color: #000000;
    font-size: 14px;
    text-transform: uppercase;
}

.cb-form textarea.form-control {
  border-radius: 0;
  border: 1px solid #dedede;
  transition: all 0.5s ease-in-out;
  box-shadow: none;
  background: transparent;
  margin-bottom: 30px;
  outline: 0;
  resize: vertical;
  color: #FFFFFF;
}

.cover-profile{
    position: relative;
    padding-bottom: 15px;
}

/*=================== IDENTITAS FOOTER ====================*/
.iden-al {
    display: flex;
    align-items: flex-start; /* ikon dan teks sejajar atas */
    gap: 15px;               /* jarak ikon dan teks */
    font-size:14px;
    font-family: 'Nunito Sans', sans-serif;
    color: #FFF;
    text-align: left;
    margin-left: 10px;
}

.iden-al .alamat {
    line-height: 1.4;
}

.iden-al-black{
    font-size:14px;
    font-family: 'Nunito Sans', sans-serif;
    color: #000;
    padding-bottom: 5px;
    padding-top: 5px;
}

.iden-op{
    font-size:14px;
    font-family: 'Nunito Sans', sans-serif;
    color: #FFF;
    text-align: left;
    margin-left: 10px;
}

.iden-op-black{
    font-size:14px;
    font-family: 'Nunito Sans', sans-serif;
    color: #000;
    padding-bottom: 5px;
    padding-top: 5px;
}

.icon-link-list-icon {
    list-style: none;
    padding: 0;
    margin: 0;
}

.icon-link-list-icon li {
    display: flex;
    align-items: flex-start; /* supaya teks panjang tetap rapi */
    gap: 10px; /* jarak icon dan teks */
    margin-bottom: 12px;
}

.icon-link-list-icon li i {
    min-width: 20px; /* supaya semua icon sejajar */
    text-align: center;
    margin-top: 3px; /* opsional, biar sejajar dengan teks */
}

.title-on-darks h4{
    color: #fff;
}

.tmargin{
    margin-bottom: 20px;
}

.menu-header{
    color: #fff;
    text-transform: uppercase;
}

.menu-name{
    color: #fff;
    font-size: 16px;
    font-weight: bolder;
    text-transform: uppercase;
}

.menu-name-na{
    color: #fff;
    font-size: 14px;
    text-transform: uppercase;
}

/*--- Cube Portfolio ---*/

.cbp-l-grid-mosaic-flat .cbp-caption-activeWrap {
    background-color: #0084ff;
    background-color: rgba(0, 16, 138, 0.75);
}

.cbp-l-filters-buttonCenter .cbp-filter-item.cbp-filter-item-active {
    color: #0084ff;
    border-color: #0084ff;
    cursor: default;
}

.cbp-l-filters-buttonCenter .cbp-filter-counter {
    background-color: #0084ff;
}

.cbp-l-filters-buttonCenter .cbp-filter-counter:after {
    border-top: 4px solid #0084ff;
}

.cbp-popup-lightbox .cbp-popup-next {
    background: url(../images/cbp-sprite.png) no-repeat scroll -46px 0 transparent;
}

.cbp-popup-lightbox .cbp-popup-prev {
    background: url(../images/cbp-sprite.png) no-repeat scroll 0 0 transparent;
}

.our-galeri{
    position: relative;
    width: 100%;
}

.our-galeri-right{
    margin-top: -125px;
}

.our-galeri-photo{
    position: relative;
    margin-top: 50px;
    margin-bottom: -50px;
    width: 100%;
}

.title-gallery{
    font-size:14px;
    font-weight:300;
    color: #FFF;
    text-align: center;
}

/* =========== MAPS ============*/
#map-sms { height: 50vh; width:100%; }

.maps-sec{    
    position: relative;
    margin-bottom: -150px;
}

.leaflet-container {
    background: #1c1c1c;
}

/* ===== MODAL ===== */
.map-modal {
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s ease;
    position: fixed;
    z-index: 9999;
    left: 0; top: 0;
    width: 100%; height: 100%;
    background: rgba(0,0,0,0.7);
    padding: 15px;
}

.map-modal.active {
    opacity: 1;
    visibility: visible;
}

.map-modal-content {
    background: #0f3554;
    color: #fff;
    max-width: 520px;
    width: 100%;
    border-radius: 12px;
    overflow: hidden;
    position: relative;
    margin: auto;
    top: 50%;
    transform: translateY(-50%) scale(0.9);
    transition: all 0.4s ease;
}

.map-modal.active .map-modal-content {
    transform: translateY(-50%) scale(1);
}

.map-close {
    position: absolute;
    right: 15px;
    top: 10px;
    cursor: pointer;
    font-size: 22px;
}

.modal-header img {
    width: 100%;
    height: 220px;
    object-fit: cover;
}

.modal-body {
    padding: 25px;
    text-align: center;
}

.modal-body h2 {
    margin-top: 0;
    text-align: center;
}

.btn-direction {
    display: inline-block;
    margin-top: 15px;
    padding: 10px 20px;
    background: #ffb400;
    color: #000;
    text-decoration: none;
    border-radius: 0px;
    font-weight: bold;
}