/*
 Theme Name:   GP Default
 Theme URI:    https://ensata.id
 Description:  GeneratePress Child Theme
 Author:       Endang Nurdin
 Author URI:   https://ensata.id
 Template:     generatepress
 Version:      0.1
*/

a {text-decoration: none;}

/*=============HEADER==============*/

/* Search */
div.search-modal-fields {
    padding: 10px 0 0 10px;
}
/* Size Toggle Menu*/
 button.menu-toggle {
    padding-right: 0;
    padding-left: 0;
    font-size: 23px !important;
    background-color: white !important;
 }
/* Header Shadow Bottom */
header.site-header, nav#mobile-header {
   box-shadow: 0px 4px 25px rgba(0, 0, 0, 0.1);
}
/* Off Canvas */
.slideout-navigation:not(.do-overlay) .main-nav {
    width: 100%;
    box-sizing: border-box;
    padding-top: 30px;
}

/* Slide Nav */
    .owl-dots {
        text-align: center;
        margin: 10px auto 20px;
        position: static;
        bottom: 20px;
        right: 20px;
    }
    .owl-dots button {
        width: 10px;
        height: 10px;
        opacity: 0.3;
        border-radius: 100px;
        margin: 0 2px;
        background: var(--contrast-3)!important;
    }
    .owl-dots button.active {
        opacity: 0.75;
        width: 30px;
    }
    .owl-stage {
        display: flex;       
    }

/* Owl Nav */
div.owl-stage-outer {padding-left: 2px;}
/* --- Base Style (Untuk Semua Slider) --- */
.owl-nav button {
    position: absolute;
    top: 50%; /* Menggunakan 50% agar lebih center secara vertikal */
    transform: translateY(-50%); /* Menengahkannya dengan sempurna */
    width: 35px;
    height: 35px;
    opacity: 1;
    transition: all .2s ease-in-out;
    background-repeat: no-repeat;
    background-position: center center !important;
    background-size: contain;
    border-radius: 50%;
}

.owl-nav button span {
    display: none;
}

/* --- UI KHUSUS HEROSLIDER (Navigasi di DALAM) --- */
.heroslider .owl-nav button.owl-prev {
    left: 110px; /* Posisi positif agar masuk ke dalam gambar */
    background-image: url(images/arrow-left.svg) !important; /* Contoh jika ingin beda warna */
}

.heroslider .owl-nav button.owl-next {
    right: 110px; /* Posisi positif agar masuk ke dalam gambar */
    background-image: url(images/arrow-right.svg) !important;
}

/* --- UI KHUSUS SLIDER BIASA (Navigasi di LUAR) --- */
.slider .owl-nav button.owl-prev {
    left: -20px; /* Lebih jauh ke kiri keluar container */
    background-image: url(images/arrow-left.svg) !important;
}

.slider .owl-nav button.owl-next {
    right: -20px; /* Lebih jauh ke kanan keluar container */
    background-image: url(images/arrow-right.svg) !important;
}

/* --- UI KHUSUS SLIDER 2 --- */
.slider2 .owl-nav button.owl-prev {
    left: -15px; /* Lebih jauh ke kiri keluar container */
    background-image: url(images/arrow-left.svg) !important;
}

.slider2 .owl-nav button.owl-next {
    right: -15px; /* Lebih jauh ke kanan keluar container */
    background-image: url(images/arrow-right.svg) !important;
}

/* --- Mobile Responsiveness --- */
@media (max-width: 1024px) {
    /* Pada mobile, navigasi biasanya lebih baik di dalam agar tidak memakan space layar */
    .slider .owl-nav button.owl-prev { left: -15px; }
    .slider .owl-nav button.owl-next { right: -15px; }
    
    .heroslider .owl-nav button.owl-prev { left: 10px; }
    .heroslider .owl-nav button.owl-next { right: 10px; }
}

/* Ribbon utama */
#ribbon {
    position: absolute;
    top: 30px;
    right: -40px;
    z-index: 10;

    background-color: var(--xlbright);
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;

    padding: 6px 48px;
    transform: rotate(45deg);
    box-shadow: 0 2px 6px rgba(0,0,0,0.25);
    pointer-events: none;
}

/* Paragraf GenerateBlocks */
.gb-text-3fa3dfa9 {
    line-height: 1.6;
}

/* Gambar inline di dalam teks */
.gb-text-3fa3dfa9 #xl-majo {
    display: inline-block;
    vertical-align: middle;
    margin: 0 4px;
    max-height: 1.4em;
    width: auto;
}

/* Tabel Paket */
@media (max-width: 1024px) {
    .gb-element-42f4557c {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 1024px) {
    .gb-element-42f4557c > .gb-element-67f4a7a8,
    .gb-element-42f4557c > .gb-element-5620810e,
    .gb-element-42f4557c > .gb-element-3f3d940a,
    .gb-element-42f4557c > .gb-element-842cc6f1,
    .gb-element-42f4557c > .gb-element-80c833bc,
    .gb-element-42f4557c > .gb-element-7b189a95,
    .gb-element-42f4557c > .gb-element-4eddc3b3,
    .gb-element-42f4557c > .gb-element-6112e68c {
        min-width: 900px; 
        flex-wrap: nowrap; 
    }
}

@media (max-width: 1024px) { #tabel-paket > div { flex: 0 0 auto; } .gb-element-42f4557c { padding-left: 15px; padding-right: 15px; overflow-x: auto; -webkit-overflow-scrolling: touch; } }

/* WA Floating */

.wa-floating img {
  animation: wa-bounce 1s infinite;
}

@keyframes wa-bounce {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
}


/* Custom Social Share */
.custom-social-share {
    margin: 0;
    display: flex;
}

.custom-social-share a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px !important;
    height: 30px !important;
    border-radius: 5px;
    font-size: 20px !important;
    text-decoration: none;
    color: #fff; 
    transition: background 0.3s ease-in-out;
}

/* Warna khusus untuk tiap platform */
.share-facebook { background: #3b5998; }
.share-twitter { background: #1da1f2; }
.share-linkedin { background: #0077b5; }
.share-whatsapp { background: #25d366; }
.share-telegram { background: #0088cc; }

.custom-social-share a:hover {
    opacity: 0.8;
}

/* Container Width */
.container .grid-container {
  width: auto !important;
}
