/* CSS for custom styling */
body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
}

main {
    min-height: 306px;
}

/* Navbar styles */
.navbar.navbar-desktop {
    display: block;
}

.navbar.navbar-offcanvas {
    display: none;
}

.navbar {
    background-color: #ffffff;
    /* White background color */
    color: #000000;
    /* Black text color */
    padding: 10px 0;
    /* Vertical and horizontal padding */
    /* Horizontal padding */
    display: flex;
    align-items: center;
    justify-content: center;
    /* Center content */
    margin: 0;
}

.navbar-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.navbar-logo {
    margin-right: 65px;
    /* Add space between logo and menus */
}

.navbar-logo>img {
    width: 235px;
}

.navbar-menu {
    display: flex;
}

.navbar-menu a {
    text-decoration: none;
    color: #000000;
    font-weight: 600;
    margin-right: 35px;
    font-size: 14px;
}

.navbar-submenu {
    position: relative;
    /* Create a positioning context for submenu */
    display: inline-block;
}

.navbar-submenu:hover .submenu {
    display: block;
    /* Show submenu on hover */
}

.submenu {
    display: none;
    /* Hide submenu by default */
    position: absolute;
    top: 100%;
    /* Position submenu below parent menu item */
    left: 0;
    background-color: #ffffff;
    /* Background color of submenu */
    padding: 10px;
    border-radius: 5px;
    border-top: 2px solid #BE3455;
}

.submenu a {
    display: block;
    color: #000000;
    /* Text color of submenu items */
    text-decoration: none;
    margin-bottom: 15px;
    /* Add spacing between submenu items */
    font-size: 14px;
    font-weight: 600;
    line-height: normal;
}

.search-column {
    display: flex;
    align-items: center;
    margin-left: auto;
    padding: 10px;
}

/* Slider styles */
.slider {
    height: 505px;
    background-color: #f1f3f7;
    color: #000;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.slider-title {
    font-size: 36px;
    margin-bottom: 10px;
}

.slider-subtitle {
    font-size: 24px;
}

/* List of services styles */
.services {
    margin: 20px 0;
}

.service-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 25px;
}

.service-item img {
    width: 150px;
    height: 150px;
    object-fit: cover;
    border-radius: 50%;
    border: 5px solid #005fad;
    padding: 5px;
}

.service-item h6 {
    font-size: 14px;
}

.service-item a {
    font-size: 12px;
}

/* Section titles */
.section-title {
    text-transform: uppercase;
    color: #003f7f;
    text-align: left;
    width: fit-content;
    font-weight: 600;
}

.section-title-decoration {
    display: block;
    width: 130px;
    height: 5px;
    background: linear-gradient(to right, #BE3455, white);
}

/* Section headers */
.section-header {
    margin-bottom: 20px;
}

.section-content {
    margin-top: 40px;
}

.bg-primary-cs {
    background-color: #003973;
}

.bg-secondary-cs {
    background-color: #005fad;
}

.bg-danger-cs {
    background-color: #BE3455;
}

.color-primary-cs {
    color: #003973;
}

.color-secondary-cs {
    color: #005fad;
}

.color-danger-cs {
    color: #BE3455;
}

.running-text {
    background-color: #000000;
    margin: 0;
    color: white;
    position: relative;
}

.running-text .left-box {
    background-color: #0040C8;
    display: block;
    width: 500px;
    height: 64px;
    position: absolute;
    z-index: 1;
}

.running-text .left-text {
    position: absolute;
    z-index: 1;
    text-align: right;
    margin: 15px 0 0 0;
    right: 30px;
}

.running-text .left-text h6 {
    font-size: 15px;
}

.running-text .left-text p {
    font-size: 13px;
}

.running-text .moving-text {
    margin-top: 25px;
}

.running-text .moving-text h6 {
    font-size: 15px;
}

.running-text .moving-text a {
    color: white;
}

/* Events and news styles */
.card-carousel {
    background-color: lightgrey;
}

.card-carousel .section-subtitle {
    background-color: #BE3455;
    color: white;
    padding: 5px 10px;
    border-radius: 20px;
    width: fit-content;
}

.card-carousel .section-title-decoration {
    display: block;
    width: 130px;
    height: 5px;
    background: linear-gradient(to right, #BE3455, lightgrey);
}

.card-carousel .owl-carousel {
    margin: 0 auto;
    padding-top: 25px;
    position: absolute;
    right: 177px;
}

.card-carousel .card-carousel-cover,
.card-carousel .card-carousel-cover-res {
    display: block;
    position: absolute;
    width: 460px;
    height: 440px;
    background-image: url('/img/pattern/rectangle.png');
    border-radius: 10px 0 0 10px;
}

.card-carousel .card-carousel-cover-res {
    display: none;
    margin: auto;
    width: 90%;
    height: 450px;
    border-radius: 10px 10px 0 0;
}

.card-carousel .card-carousel-cover .cover-content,
.card-carousel .card-carousel-cover-res .cover-content {
    margin-left: 55px;
}

.card-carousel .card-carousel-cover-res .cover-content {
    margin-top: 40px;
}

.card-carousel-content .owl-item .card-basic {
    margin-right: 10px;
}

.card-carousel .owl-nav .owl-prev {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%) translateX(-125%);
    border-radius: 0 10px 10px 0;
    padding: 10px;
}

.card-carousel .owl-nav .owl-next {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    border-radius: 0 10px 10px 0;
    padding: 10px;
}

.card-carousel .owl-nav .owl-prev i,
.card-carousel .owl-nav .owl-next i {
    color: black;
    background-color: white;
    border-radius: 50%;
    padding: 10px 12px;
    font-weight: bold;
    font-size: 20px;
}

.services .services-content-res .owl-nav .owl-prev {
    margin-right: 10px;
}

.services .services-content-res .owl-nav .owl-prev i,
.services .services-content-res .owl-nav .owl-next i {
    color: white;
    background-color: black;
    border-radius: 50%;
    padding: 5px 7px;
    font-weight: bold;
    font-size: 20px;
}

.event-preview .section-content,
.berita-preview .section-content {
    height: 470px;
    width: 1100px;
}

.event-preview .owl-carousel,
.berita-preview .owl-carousel {
    width: 590px;
}

.card-basic {
    width: 340px;
    height: 390px;
    background-color: #005fad;
    color: #fff;
    border-radius: 10px;
    margin-right: 100px;
    border: none;
}

.card-basic .image-item {
    display: block;
    width: 100%;
    height: 270px;
    background-size: cover;
    background-position: center 0;
    background-repeat: no-repeat;
    border-radius: 10px 10px 0 0;
}

.card-basic img {
    width: 100%;
    border-radius: 10px;
    margin-bottom: 10px;
}

.card-basic .content-item {
    height: 110px;
}

.card-basic .content-item .text-item {
    font-size: 12px;
    /* width: 300px; */
    padding-bottom: 10px;
}

.card-basic .content-item .text-item div {
    width: fit-content;
}

/* Gallery styles */
.gallery {}

.gallery-item {
    width: 280px;
    height: 280px;
    background-color: #f1f3f7;
    border-radius: 20px;
    margin-right: 20px;
    cursor: pointer;
    position: relative;
}

.gallery-item .gallery-image {
    width: 100%;
    height: 100%;
    border-radius: 20px;
    background-size: cover;
    background-position: center 0;
    background-repeat: no-repeat;
}

.gallery-popup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.8);
    z-index: 9999;
}

.gallery-popup img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 80%;
    max-height: 80%;
}

.social-media-item {
    display: block;
    width: 100%;
    height: 100px;
    background: linear-gradient(to right, #005fad, white);
}

.social-media-item .container {
    padding-top: 20px;
}

.social-media-item .container a {
    margin: 8px 0 0 -13px;
}

.social-media-item .container .medsos-intagram i:hover {
    color: white;
    background-color: red !important;
}

.social-media-item .container .medsos-twitter i:hover {
    color: white;
    background-color: #1DA1F2 !important;
}

.social-media-item .container .medsos-youtube i:hover {
    color: white;
    background-color: #FF0000 !important;
}

.social-media-item .container i {
    font-size: 30px;
    padding: 15px 18px;
    box-sizing: border-box;
}

.social-media-item .container div {
    height: fit-content;
    padding: 5px 35px;
    font-size: 12px;
    font-weight: bold;
    margin: auto 0;
}

.social-media-content .social-media-item-middle {
    background: linear-gradient(to right, #003973, white);
}

.social-media-card .card-basic {
    width: 300px;
    height: 450px;
    margin: auto;
    background-color: #fff;
    border-radius: 20px;
}

.social-media-card .card-basic .image-item {
    height: 300px;
    border-radius: 20px 20px 0 0;
}

.social-media-card .card-basic .content-item {
    width: 100%;
    height: 150px;
    color: black;
}

.social-media-card .card-basic .content-item .text-item {
    width: 240px;
}

.social-media-card .card-basic .content-item h6 {
    font-size: 15px;
}

.social-media-card .card-basic .content-item p {
    font-size: 12px;
}

/* Related links styles */
.related-links {
    background-color: #f1f3f7;
    padding: 30px;
}

.related-links ul {
    display: flex;
    justify-content: center;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.related-links li {
    margin: 0 25px;
}

.related-links a div {
    display: block;
    width: auto;
    height: 42px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* Footer styles */
.footer {
    background-color: #005fad;
    text-align: center;
    padding: 40px 0 0 0;
    font-size: 14px;
    color: white;
}

.footer .address,
.footer .contact,
.footer .email {
    font-size: 13px;
}

.footer .address {
    width: 500px;
    margin: auto;
}

.footer-bottom-decoration {
    display: block;
    width: 100%;
    height: 30px;
    /* background-color: #003973; */
    background: url('/img/pattern/rectangle.png');
    background-size: cover;
    margin-top: 30px;
}

header {
    position: relative;
    z-index: 999;
}

.slider .carousel,
.slider .carousel .carousel-inner,
.slider .carousel .carousel-inner .carousel-item .carousel-item-bg {
    width: 100%;
    height: 580px;
}

.slider .carousel .carousel-inner .carousel-item .carousel-item-bg {
    background-position: center 0;
    background-size: cover;
    background-repeat: no-repeat;
}

.sticky {
    position: fixed !important;
    display: block !important;
    z-index: 999;
    width: 100%;
}

#single-page-header {
    /* background-attachment: fixed !important;
    background-image: url(/img/pattern/26669.jpg);
    background-repeat: repeat;
    background-size: 1350px; */
    display: inline;
    float: left;
    width: 100%;
}

#page-content {
    clear: both;
}

.overlay {
    /* background-color: rgba(0, 0, 0, 0.6); */
    padding: 50px 0;
    float: left;
    width: 100%;
}

.single-page-header-left {
    display: inline;
    float: left;
    width: 100%;
}

.single-page-header-left h1 {
    font-size: 40px;
}

.single-page-header-right {
    display: inline;
    float: left;
    width: 100%;
}

.single-page-header-right .breadcrumb {
    background: transparent none repeat scroll 0 0;
    border-radius: 0;
    text-align: right;
}

.single-page-header-right .breadcrumb li {
    color: #bdbdbd;
}

.koperasi .card-basic {
    height: 350px;
}

.portfolio-container {
    display: inline;
    float: left;
    margin-top: 50px;
    width: 100%;
}

.single-portfolio {
    background-color: #ccc;
    display: inline;
    float: left;
    width: 25%;
}

.single-item {
    display: inline;
    float: left;
    position: relative;
    width: 100%;
}

.single-item>img {
    height: 300px;
    width: 100%;
    border: none;
}

.single-item-content {
    color: #fff;
    height: 100%;
    left: 0;
    opacity: 0;
    padding-top: 55px;
    position: absolute;
    text-align: center;
    top: 0;
    width: 100%;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-backface-visibility: hidden;
}

.view-icon {
    color: #fff;
    font-size: 30px;
}

.event .card {
    height: 460px;
    background-color: white;
}

.event .card .content-item {
    height: 175px;
}

.event-recomendation .card {
    width: 268px;
}

.pengumuman {
    background-color: #f5f5f5;
}

.pengumuman .section-title-decoration {
    background: linear-gradient(to right, #BE3455, #f5f5f5);
}

.pengumuman .card-basic {
    width: 285px;
    height: 222px;
    background-color: white;
}

.pengumuman .card-basic .content-item {
    height: 210px;
}

.people-item {
    display: flex;
    width: 458px;
    height: 275px;
    background-color: lightgrey;
    border-radius: 15px;
    margin: auto 0;
}

.people-item .photo {
    background-size: 285px;
    background-position: center -28px;
    width: 155px;
    height: 220px;
    border-radius: 0 15px 15px 0;
    margin-top: 25px;
}

.people-item .info {
    width: 315px;
    padding: 23px 20px;
}

.people-item .info h5 {
    font-weight: bold;
    color: black;
    font-size: 20px;
    margin-bottom: 8px;
}

.people-item .info h6 {
    font-size: 12px;
    font-weight: bold;
}

.people-item .description {
    margin-top: 13px;
    font-size: 11px;
    overflow-y: scroll;
    height: 180px;
}

.visi-misi {
    background: url(/img/pattern/rectangle.png);
    background-size: 1500px;
    background-repeat: repeat;
    color: white;
}

.visi-misi .description .title-decoration {
    display: block;
    width: 100%;
    height: 7px;
    border-radius: 10px;
}

.nav-pills .nav-link.active {
    background-color: #003973;
    color: white;
    border: 2px solid #003973;
}

.nav-link-have-sub {
    width: 140px;
    box-sizing: border-box;
}

.nav-item-have-sub .nav-link-have-sub.hovered,
.nav-item-have-sub:hover .nav-link-have-sub,
.nav-pills .nav-link-have-sub:hover {
    background-color: #003973;
    color: white;
    border: 2px solid #003973;
}

.nav-pills .nav-link,
.nav-btn {
    color: #003973;
    border: 2px solid #003973;
    font-size: 11px;
    padding: 7px 35px;
    margin-right: 18px;
    position: relative;
    background-color: white;
}

.nav-btn {
    border-radius: 5px;
    text-decoration: none;
}

.nav-btn.active {
    background-color: #003973;
    color: white;
    border: 2px solid #003973;
}

.next-page {
    display: block;
    width: 100px;
    font-size: 12px;
    margin: 60px 0;
}

.pengumuman-page .card {
    width: unset;
    height: 180px;
    background-color: unset;
    color: unset;
    border-radius: unset;
    margin-right: unset;
    border: unset;
    border-radius: 15px;
}

.pengumuman-page .card .content-item {
    height: 100%;
}

.pengumuman-page .card .content-item a {
    font-size: 13px;
    color: #005fad;
}

.pengumuman-page .card .content-item .text-item {
    color: #005fad;
    bottom: 15px !important;
    font-size: 13px;
}

.berita .people-item {
    display: flex;
    width: 100%;
    height: 210px;
    background-color: white;
    border-radius: 28px;
    margin-bottom: 20px;
}

.berita .people-item .photo {
    background-size: 170px;
    background-repeat: no-repeat;
    background-position: center;
    width: 210px;
    height: 160px;
    border-radius: 15px;
    margin: 23px;
}

.berita .people-item .info {
    width: 100%;
}

.berita .people-item .info .text-item,
.berita .people-item .info a {
    color: #005fad;
    font-size: 13px;
}

.infografis.infografis-real .card {
    border: unset;
    border-radius: 30px;
    height: 200px;
}

.infografis.infografis-real .card .content-item {
    height: 200px;
}

.infografis.infografis-real .card .content-item .text-item {
    margin-bottom: 10px;
}

.infografis .card-basic {
    width: unset;
    height: 390px;
    background-color: unset;
    color: unset;
    border-radius: unset;
    margin-right: unset;
    border: 1px solid lightgrey;
    border-radius: 15px;
}

.infografis .card-basic .image-item {
    display: block;
    width: 100%;
    height: 250px;
    background-size: cover;
    background-position: center 0;
    background-repeat: no-repeat;
    border-radius: 10px 10px 0 0;
}

.infografis .card-basic .content-item {
    height: 130px;
}

.infografis .card-basic .content-item .text-item,
.infografis .card-basic .content-item a {
    color: #005fad;
    font-size: 12px;
    width: 100%;
    padding-bottom: 10px;
}

.infografis .card-basic .content-item .text-body-secondary span,
.infografis .card-basic .content-item p small {
    font-size: 13px;
}

.infografis-preview .card-infografis {
    width: 100%;
    height: 433px;
    background-color: lightgrey;
    border-radius: 10px;
}

.infografis-preview .card-infografis .image-item {
    display: block;
    width: 100%;
    height: 295px;
    background-size: cover;
    background-position: center 0;
    background-repeat: no-repeat;
    border-radius: 10px 10px 0 0;
}

.infografis-preview .card-infografis .content-item {
    height: 120px;
    border-radius: 0px 0px 10px 10px;
}

.open-data-content {
    background: url(/img/pattern/rectangle.png);
    background-size: 1200px;
    color: white;
    margin-top: 20px;
}

.daftar-informasi-text {
    font-size: 13px;
}

.daftar-informasi-text a:hover {
    color: #005fad !important;
}

.subnav-data {
    display: none;
    position: absolute;
    width: 140px;
    border-radius: 0 0 7px 7px;
    padding-top: 10px;
    margin-top: -10px;
    border-color: #003973 !important;
}

.nav-item-have-sub {
    position: relative;
}

.nav-item-have-sub:hover .subnav-data {
    display: block;
}

#pills-tab-data .nav-link {
    height: 50px;
}

.subnav-data .subnav {
    height: unset !important;
}

.img-cover {
    width: 100%;
    background-size: cover;
    background-position: center 0;
    background-repeat: no-repeat;
}

.img-cover.img-cover-large {
    height: 525px;
}

.img-cover.img-cover-small {
    height: 250px;
}

.ppkukm-tv {
    margin-bottom: 156px;
}

.ppkukm-tv .img-cover.img-cover-small {
    width: 293px;
    height: 293px;
}

.hovering-card:hover {
    box-shadow: 1px 1px 2rem 6px rgb(0 0 0 / 63%);
    padding: 23px;
    background-color: white;
    box-sizing: border-box;
    border-radius: 23px;
    height: 360px;
    position: absolute;
}

.hovering-card:hover .img-cover.img-cover-small {
    width: 247px;
    height: 247px;
}

.hovering-card .hovering-card-title {
    display: none;
}

.hovering-card:hover .hovering-card-title {
    display: block;
}

.ppkukm-tv-detail .item p,
.ppkukm-tv-detail .item span {
    font-size: 13px;
}

.ppkukm-tv.ppkukm-tv-custom {
    margin: unset;
    padding: 50px 0px 120px 0px;
}

.modal.modal-transparent .modal-content {
    background-color: unset;
    border: unset;
    border-radius: unset;
    outline: unset;
}

.modal.modal-transparent .modal-header {
    border-bottom: unset;
    color: white;
}

.services-slide {
    width: 700px;
    height: auto;
}

@media(min-width: 4500px) {
    .slider-banner {
        height: 1800px !important;
    }

    .slider .carousel,
    .slider .carousel .carousel-inner,
    .slider .carousel .carousel-inner .carousel-item .carousel-item-bg {
        height: 1800px !important;
    }
}

@media screen and (max-width: 2560px),
(min-width: 2559px) {
    .slider-banner {
        height: 970px !important;
    }

    .slider .carousel,
    .slider .carousel .carousel-inner,
    .slider .carousel .carousel-inner .carousel-item .carousel-item-bg {
        height: 970px !important;
    }
}

@media(max-width: 1440px) {
    .slider-banner {
        height: 505px !important;
    }

    .slider .carousel,
    .slider .carousel .carousel-inner,
    .slider .carousel .carousel-inner .carousel-item .carousel-item-bg {
        height: 505px !important;
    }

    .running-text .left-text {
        margin: 15px 0 0 0;
    }
}

@media(max-width: 1024px) {
    .running-text .left-text {
        margin: 15px 0 0 60px;
    }
}

#detail-kbli {
    margin-top: 20px;
}

#search {
    width: 100%;
    padding: 8px;
}

#search-results {
    margin-top: 5px;
    border: 1px solid #ccc;
    max-height: 150px;
    overflow-y: auto;
}

.result {
    padding: 8px;
    cursor: pointer;
}

.result:hover {
    background-color: #f2f2f2;
}