/* GLOBAL STYLES
-------------------------------------------------- */
/* Padding below the footer and lighter body text */
/* width */
::-webkit-scrollbar {
    width: 15px;
    height: 13px;
    margin-top: 4vw;
    border-radius: 67px;
}

/* Track */
::-webkit-scrollbar-track {
    box-shadow: inset 0 0 4px grey;
    border-radius: 6px;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: #C1C1C1;
    border-radius: 6px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
    background: #696969;
}

body {
    padding-bottom: 40px;
    color: #5a5a5a;
}

a:link {
    text-decoration: none;
    color: black;
}

a {
    text-decoration: none;
    color: black;
}

/* CUSTOMIZE THE NAVBAR
-------------------------------------------------- */
/* Special class on .container surrounding .navbar, used for positioning it into place. */
.navbar-wrapper {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 20;
    margin-top: 20px;
}

/* Flip around the padding for proper display in narrow viewports */
.navbar-wrapper > .container {
    padding-right: 0;
    padding-left: 0;
}

.navbar-wrapper .navbar {
    padding-right: 15px;
    padding-left: 15px;
}

.navbar-wrapper .navbar .container {
    width: auto;
}

.nav .open > a:focus {
    background-color: transparent;
    border-color: #337ab7;
}

ul {
    list-style-type: ">";
}

/* Sets the marker to a emoji or character */
/* CUSTOMIZE THE CAROUSEL
-------------------------------------------------- */
/* Carousel base class */
.carousel {
    height: 500px;
    margin-bottom: 20px;
}

/* Since positioning the image, we need to help out the caption */
.carousel-caption {
    z-index: 10;
}

.carousel-caption p a {
    color: #000000;
    background-color: #FFE600;
}

/* Declare heights because of positioning of img element */
.carousel .item {
    background-color: #777;
}

.carousel-inner > .item > img {
    position: absolute;
    top: 0;
    left: 0;
    min-width: 100%;
    height: calc(100vw * 9 / 21);
}

/* MARKETING CONTENT
-------------------------------------------------- */
/* Center align the text within the three columns below the carousel */
.marketing .col-lg-4 {
    margin-bottom: 20px;
    text-align: center;
}

.marketing h2 {
    font-weight: normal;
}

.marketing .col-lg-4 p {
    margin-right: 10px;
    margin-left: 10px;
}

.div-iframe {
    border: 0px;
    padding: 0px;
    width: 100%;
}

/* Featurettes
------------------------- */
.featurette-divider {
    margin: 80px 0;

    /* Space out the Bootstrap <hr> more */
}

/* Thin out the marketing headings */
.featurette-heading {
    font-weight: 300;
    line-height: 1;
    letter-spacing: -1px;
}

.maps-footer {
    border: 0;
    width: 100%;
}

.image-slider {
    object-fit: cover;
    object-position: 50% 50%;
    min-height: 100%;
    min-width: 100%;
}

.container {
    width: 70vw;
}

navbar-jahos {
    background-color: #ffffff;
}

.tag {
    opacity: 0;
    transform: translate(0, 10vh);
    transition: all 1s;
}

tag.visible {
    opacity: 1;
    transform: translate(0, 0);
}

.scrolling-wrapper-flexbox {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
}

.card {
    flex: 0 0 auto;
    min-width: 25%;
    padding: 12px;
}

.card-display-hover {
    overflow: hidden;
    position: relative;
}

.card-display-link {
    position: relative;
    transition: animation 1.5s;
    background-color: #12f50e;
    border-radius: 15px;
}

.card-top-text {
    padding: 15px;
    position: absolute;
    display: none;
    unicode-bidi: isolate;
    height: 50px;
    min-height: 50px;

    /* top: 100%; */
    bottom: 0;
    height: 30%;
    width: 100%;
    z-index: 1;
    background-color: red;
    transition: all .3s ease-out;
    transition-delay: 1.3s;
}

.card-display-link:hover + .card-top-text {
    transition-delay: 1.3s;
    display: block;
    transform: translateY(-100%);
    animation: change 1s linear forwards;

    /* top: -50px; */
}

/* Styling dasar untuk card-v1 */
.card-v1 {
    overflow: hidden;
    position: relative;
    width: 100%;
    border-radius: 30px;
    transition: all 0.3s ease-out;
    box-shadow: 10px 10px 5px #D8D8D8;
}

.card-img-top-v1 {
    width: 100%;
    border-radius: 30px;
}

.card-v1 .top-layout-v1,
.card-v1 .bottom-layout-v1 {
    position: absolute;
    width: 100%;
    text-align: left;
    padding: 10px;
    transition: transform 0.4s ease, opacity 0.4s ease;
}

.top-layout-v1 {
    background-color: rgba(255, 255, 255, 0.9);
    transform: translateY(0);
    border-radius: 30px 30px 0 0;
    z-index: 1;
}

.bottom-layout-v1 {
    background-color: rgba(255, 255, 255, 0.9);
    transform: translateY(100%);
    border-radius: 0 0 30px 30px;
    opacity: 0;
    z-index: 0;
}

.card-v1:hover .top-layout-v1 {
    transform: translateY(-100%);
}

.card-v1:hover .bottom-layout-v1 {
    transform: translateY(0);
    opacity: 1;
}

.top-layout-v1 {
    background-color: #ffffff;
    opacity: 1;
    position: absolute;
    top: 0;
    text-align: center;
    width: 100%;
    border-radius: 30px 30px 0 0;
}

.bottom-layout-v1 {
    opacity: 0;
    position: absolute;
    bottom: 0;
    text-align: center;
    width: 100%;
    border-radius: 0 0 30px 30px;
}

.card-img-top-v1 {
    width: 100%;
    border-radius: 32px;
}

.link-nav:hover {
    background-color: rgba(255, 255, 0, 0);
}

.link-nav {
    text-shadow: 5px 5px 15px rgba(0, 0, 0, 0.437),-5px 5px 15px rgb(0, 0, 0.437),-5px -5px 15px rgb(0, 0, 0.437),5px -5px 15px rgb(0, 0, 0.437);
}

.hideme {
    opacity: 0;
}

.nav > li > a:hover {
    background-color: #12f50e00;
}

.text-card {
    font-family: 'Archivo Black', sans-serif;
    color: #424440;
    margin-top: 0;
}

.shadow-v1 {
    filter: drop-shadow(4px 4px 8px #787878);
}

.footer-list {
    padding-left: 5px;
}

.footer-list > li {
    padding-bottom: 0px;
    padding-top: 0px;
    list-style-type: none;
}

.slider-container {
    position: relative;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
}

.slider {
    display: flex;
    transition: transform 0.5s ease-in-out;
}

.individual-slide {
    min-width: 25%;

    /* 4 slides visible at a time */
    height: 100%;
    padding: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ccc;
    margin-right: 10px;
    font-size: 20px;
    text-align: center;
}

.individual-slideSm {
    min-width: 33.33%;
}

.sliderbutton {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    padding: 10px;
    cursor: pointer;
    font-size: 18px;
}

button:hover {
    background-color: rgba(0, 0, 0, 0.8);
}

.prev {
    left: 10px;
}

.next {
    right: 10px;
}

.thumbnail-slider {
    margin-bottom: 0px;
    border: none;
}

.parallax {
    background-image: url(https://demo.jababekagolf.co.id/assets/FIMI0009.jpg);
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.navbar-nav > .dropdown:hover > .dropdown-menu {
    display: block;
}

/* styles.css */
/* .menu-toggle {
    position: absolute;
    right: 20px;
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
} */
.menu-toggle {
    margin-left: 10px;
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
}

.navbar-bottom {
    background-color: transparent;
    padding: 10px 0;
    box-sizing: border-box;
}

.navbar-top {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #ffffff;
    padding: 5px 20px;
    position: relative;
    box-sizing: border-box;
}

.logo img {
    height: 2.5vw;
    min-height: 50px;
    margin-right: 15px;
}

.title {
    font-weight: bold;
    color: #333333;
}

.nav-links {
    list-style: none;
    display: flex;
    justify-content: center;
    gap: 10px;
    margin: 0;
    padding: 0;
}

.nav-links li {
    position: relative;
}

.nav-links a {
    text-decoration: none;
    color: #ffffff;
    transition: color 0.3s ease;
    line-height: 20px;
    font-family: 'Alexandria', sans-serif;
    text-shadow: 2px 2px 7px rgba(114, 114, 114, 0.69), -2px 2px 7px rgba(114, 114, 114, 0.69), -2px -2px 7px rgba(114, 114, 114, 0.69), 2px -2px 7px rgba(114, 114, 114, 0.69);
    font-size: 14px;
    font-weight: 50;
}

.nav-links a:hover {
    color: #FFA500;
}

.submenu {
    position: absolute;
    top: 100%;
    left: 0;
    list-style: none;
    background-color: #ffffff;
    border-radius: 5px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    padding: 0px;
    display: none;
    z-index: 10;
    white-space: nowrap;
}

.submenu li {
    padding: 5px 20px;
}

.submenu li a {
    color: #000000;
    font-size: 12px;
    text-shadow: none;
}

.submenu li a:hover {
    color: #FFA500;
}

.has-submenu:hover .submenu {
    display: block;
}

/* Sidebar */
.sidebar {
    position: fixed;
    top: 0;
    left: -250px;
    width: 250px;
    height: 100%;
    background-color: #ffffff;
    box-shadow: 2px 0 5px rgba(0, 0, 0, 0.2);
    overflow-y: auto;
    transition: left 0.3s ease;
    padding: 20px 0;
    z-index: 1000;
}

.sidebar-links {
    list-style: none;
    margin: 0;
    padding: 0;
}

.sidebar-links li {
    padding: 10px 20px;
}

.sidebar-links li a {
    text-decoration: none;
    color: black;
    display: block;
}

.sidebar-links li a:hover {
    color: #FFA500;
}

/* New Navbar Start */
.navbar-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    transform: translateX(0);
    border-radius: 0;
    width: 100%;
    transform: translateX(0);
    border-radius: 0;
}

.title-menu {
    font-family: 'Alexandria', sans-serif;
    font-size: 20px;
    color: #000000;
    height: 40px;
}

.display-menu {
    width: 100%;
    object-fit: fill;
}

.driving-text {
    font-family: 'Alexandria', sans-serif;
    font-size: 16px;
    color: #000000;
    text-align: center;
    padding: 10px;
}

.vertical-align {
    /* Use a flexbox layout */
    display: flex;

    /* Make a horizontal flexbox (the default) */
    flex-direction: row;

    /* The important part: vertically center the items */
    align-items: center;
    padding-left: 1;
}

.aligned-row {
    display: flex;
    flex-flow: row wrap;
}

.justify-content-center {
    -ms-flex-pack: center!important;
    justify-content: center!important;
}

.fcatw-heading {
    width: 70%;
    margin-bottom: 20px;
    margin-top: 120px;
}

/* Perapihan Footer */
.footer-logo-width {
    width: 50px;
}

.footer-icon-width {
    width: 8%;
    padding: 3px;
    max-width: 10vw;
    margin-bottom: 13px;
}

.footer-text-heading {
    font-size: 18px;
    margin-top: 0px;
    margin-bottom: 7px;
    color: black;
}

.footer-text-item {
    font-size: 14px;
}

/* RESPONSIVE CSS
-------------------------------------------------- */
@media (max-width: 767px) {
    .driving-text {
        font-size: 14px;
    }

    .display-menu {
        height: 200px;
    }

    .parallax {
        /* Full height */
        height: 200px;
    }

    .menu-toggle {
        display: block;
    }

    /* Perapihan Footer */
    .footer-logo-width {
        width: 30%;
    }

    .navbar-bottom {
        display: none;
    }

    .footer-icon-width {
        width: 7%;
        padding: 3px;
        max-width: 10vw;
        margin-bottom: 25px;
    }

    .navbar-top {
        border-radius: 0px;
    }

    /* New Navbar End */
    /* Carousel text position Start */
    .center-carousel-caption {
        top: 25vw;
        flex-wrap: nowrap;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .left-carousel-caption {
        top: 25vw;
        flex-wrap: nowrap;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .right-carousel-caption {
        top: 25vw;
        flex-wrap: nowrap;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .carousel-caption img {
        width: 70%;
        margin-bottom: 20px;
    }

    .carousel-caption p {
        width: 80%;
        font-size: 14px;
    }

    .carousel-caption p a {
        width: 100%;
        border-radius: 50px;
    }

    .carousel {
        top: 65px;
        height: calc(200vw * 9 / 21);
    }

    .carousel-item {
        height: calc(200vw * 9 / 21);
    }

    /* Carousel text position End */
    .marketing {
        width: 90%;
    }
}

@media (min-width: 768px) {
    .display-menu {
        height: 200px;
    }

    .driving-text {
        font-size: 16px;
    }

    .footer-icon-width {
        width: 10%;
        padding: 3px;
        max-width: 10vw;
        margin-bottom: 25px;
    }

    .text-m1 {
        font-family: 'Alexandria', sans-serif;
        font-size: 12px;
    }

    .text-l1 {
        font-family: 'Alexandria', sans-serif;
        font-size: 14px;
    }

    .text-l1b {
        font-family: 'Archivo Black', sans-serif;
        font-size: 14px;
    }

    .text-l2 {
        font-family: 'Alexandria', sans-serif;
        font-size: 16px;
        color: rgb(96, 96, 96);
    }

    .text-l2b {
        font-family: 'Archivo Black', sans-serif;
        font-size: 16px;
        color: rgb(96, 96, 96);
    }

    .text-l3 {
        font-family: 'Alexandria', sans-serif;
        font-size: 18px;
    }

    .text-l3b {
        font-family: 'Archivo Black', sans-serif;
        font-size: 18px;
    }

    .text-l4 {
        font-family: 'Alexandria', sans-serif;
        font-size: 22px;
    }

    .text-l4b {
        font-family: 'Archivo Black', sans-serif;
        font-size: 22px;
    }

    .text-l5 {
        font-family: 'Alexandria', sans-serif;
        font-size: 25px;
    }

    .text-l5b {
        font-family: 'Archivo Black', sans-serif;
        font-size: 25px;
    }

    .parallax {
        /* Full height */
        height: 200px;
    }

    /* New Navbar Start */
    .navbar-container {
        position: absolute;
        top: 20px;
        left: 50%;
        transform: translateX(-50%);
        text-align: center;
        padding: 0 10px;

        /* Padding 10px kiri dan kanan */
        display: inline-block;
        background-color: transparent;
        width: 600px;
        min-width: 45vw;
    }

    .menu-toggle {
        display: none;
    }

    .navbar-bottom {
        display: block;
    }

    .navbar-top {
        border-radius: 40px;
    }

    /* New Navbar End */
    /* Carousel text position Start */
    .center-carousel-caption {
        top: 200px;
        flex-wrap: nowrap;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .left-carousel-caption {
        top: 200px;
        left: 10%;
        max-width: 600px;
        width: 45%;
        min-width: 30%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .right-carousel-caption {
        top: 200px;
        left: 43%;
        max-width: 600px;
        min-width: 30%;
        width: 45%;
        flex-direction: column;
        align-items: center;
        display: flex;
    }

    .carousel-caption img {
        width: 100%;
        min-width: 300px;
        max-width: 450px;
        margin-bottom: 20px;
    }

    .carousel-caption p {
        width: 500px;
    }

    .carousel-caption p a {
        width: 450px;
        border-radius: 50px;
    }

    .carousel {
        height: calc(100vw * 9 / 21);
        min-height: 600px;
    }

    .carousel-item {
        height: calc(100vw * 9 / 21);
        min-height: 600px;
    }

    /* Carousel text position End */
    /* Bump up size of carousel content */
    .carousel-caption p {
        margin-bottom: 20px;
        line-height: 1.4;
    }

    .card {
        width: 33%;
    }

    .card-v1-padding {
        padding: 10px;
    }

    .maps-footer {
        height: 80vw;
    }

    .div-iframe {
        height: 8vw;
    }
}

@media (min-width: 992px) {
    .offside-top-wide {
        top: -46px;
        position: relative;
    }

    .offside-top-text {
        padding: 15px;
        top: -23px;
        position: relative;
    }

    .offside-bottom-text {
        padding: 15px;
        top: 23px;
        position: relative;
    }

    .driving-text {
        font-size: 12px;
    }

    .card {
        width: 25%;
    }

    .card-v1-padding {
        padding: 15px;
    }

    .div-iframe {
        height: 8vw;
    }

    .footer-icon-width {
        width: 24%;
        padding: 3px;
        max-width: 10vw;
        margin-bottom: 25px;
    }
}

@media (min-width: 1200px) {
    .display-menu {
        height: 300px;
    }

    .driving-text {
        font-size: 50px;
    }

    .text-m1 {
        font-family: 'Alexandria', sans-serif;
        font-size: 0.6vw;
    }

    .text-l1 {
        font-size: 0.7vw;
    }

    .text-l1b {
        font-family: 'Archivo Black', sans-serif;
        font-size: 0.7vw;
    }

    .text-l2 {
        font-size: 1.2vw;
        font-family: 'Alexandria', sans-serif;
        color: rgb(96, 96, 96);
    }

    .text-l2b {
        color: rgb(96, 96, 96);
    }

    .text-l3 {
        font-size: 1.5vw;
    }

    .text-l3b {
        font-size: 1.5vw;
    }

    .text-l4 {
        font-size: 2.8vw;
    }

    .text-l4b {
        font-size: 2.8vw;
    }

    .text-l5 {
    }

    .text-l5b {
    }

    .parallax {
        /* Full height */
        height: 400px;
    }

    .card {
        width: 25%;
    }

    .card-v1-padding {
        padding: 15px;
    }

    .div-iframe {
        height: 7vw;
    }

    /* Perapihan Footer */
    .footer-logo-width {
        width: 50px;
    }

    .footer-icon-width {
        width: 15%;
        padding: 3px;
        max-width: 10vw;
        margin-bottom: 25px;
    }

    .footer-text-heading {
        font-size: 18px;
        margin-top: 0px;
        margin-bottom: 10px;
    }

    .footer-text-item {
        font-size: 14px;
    }

    .div-iframe {
        height: 6vw;
    }
}

@media (min-width: 1910px) {
    .driving-text {
        font-size: 50px;
    }

    /* Carousel text position Start */
    .center-carousel-caption {
        top: 15vw;
        flex-wrap: nowrap;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .left-carousel-caption {
        top: 15vw;
        flex-wrap: nowrap;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .right-carousel-caption {
        top: 15vw;
        flex-wrap: nowrap;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .text-m1 {
        font-family: 'Alexandria', sans-serif;
        font-size: 14px;
    }

    .text-l1 {
        font-family: 'Alexandria', sans-serif;
        font-size: 18px;
    }

    .text-l1b {
        font-family: 'Archivo Black', sans-serif;
        font-size: 18px;
    }

    .text-l2 {
        font-family: 'Alexandria', sans-serif;
        font-size: 20px;
        color: rgb(96, 96, 96);
    }

    .text-l2b {
        font-family: 'Archivo Black', sans-serif;
        font-size: 20px;
        color: rgb(96, 96, 96);
    }

    .text-l3 {
        font-family: 'Alexandria', sans-serif;
        font-size: 23px;
    }

    .text-l3b {
        font-family: 'Archivo Black', sans-serif;
        font-size: 23px;
    }

    .text-l4 {
        font-size: 2.8vw;
    }

    .text-l4b {
        font-size: 2.8vw;
    }

    .text-l5 {
    }

    .text-l5b {
    }

    .container {
        width: 70vw;
    }

    .card {
        width: 25%;
    }

    .card-v1-padding {
        padding: 15px;
    }

    .div-iframe {
        height: 7vw;
    }

    /* Perapihan Footer */
    .footer-logo-width {
        width: 50px;
    }

    .footer-icon-width {
        width: 12%;
        padding: 3px;
        max-width: 10vw;
        margin-bottom: 25px;
    }

    .footer-text-heading {
        font-size: 18px;
        margin-top: 0px;
        margin-bottom: 10px;
    }

    .footer-text-item {
        font-size: 14px;
    }

    .div-iframe {
        height: 6vw;
    }
}

@media only screen and (max-device-width: 2566px) {
    .parallax {
        height: 300px;
    }

    .card {
        width: 20%;
    }

    .maps-footer {
        height: 1vw;
    }
}