
/* Custom Css For: Neeon */
/* Name : OneWebApi SaaS */
/* Version : 1.9.3 */
/* Owner : By Direktorat IKC */
/* @09-03-2026 14:19:05 */

/* General */
.topbar {
    background-color:#01347c
}

.footer {
    background-color:#01347c
}

.banner-page {
    height: 100px !important;
}

.main-menu__nav ul li ul {
    width: 300px
}


/* Kurs-Halaman */
.kurs-section {
        min-height: 100vh; /* 1 halaman penuh */
        padding: 40px; /* margin dalam */
        box-sizing: border-box;
        background-color: #f5f6fa;
    }

    .kurs-container {
        max-width: 900px;
        margin: auto;
        background: #ffffff;
        padding: 25px;
        border-radius: 8px;
        box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    }

    .kurs-title {
        padding: 8px;
        background-color: #02275d;
        color: #ffffff;
        border-radius: 4px;
        margin-bottom: 15px;
    }

/* Hero Beranda 2 */
.video-slider-style-1 {
  position: relative;
  width: 100%;
  height: 500px;
}

.swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
}

.video-slide {
  width: 100%;
  height: 500px;
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Overlay gelap */
.video-slide::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.4);
}

/* Konten tengah */
.post-content {
  position: relative;
  z-index: 2;
  color: #fff;
  text-align: center;
}

.post-title {
  font-size: 32px;
  margin: 0;
}

/* ===============================
   NAVIGATION STYLE
================================ */

.video-slider-nav {
  position: absolute;
  inset: 0;
  z-index: 10;
  pointer-events: none;
}

.video-slider-nav .swiper-button-prev,
.video-slider-nav .swiper-button-next {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #0b2a5a;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  box-shadow: 0 8px 20px rgba(11, 42, 90, 0.45);
  transition: all .3s ease;
  cursor: pointer;
}

.video-slider-nav .swiper-button-prev::after,
.video-slider-nav .swiper-button-next::after {
  display: none;
}

.video-slider-nav .swiper-button-prev:hover,
.video-slider-nav .swiper-button-next:hover {
  background: #143d8c;
}

.video-prev { left: 30px; }
.video-next { right: 30px; }

@media (max-width: 768px) {
  .video-prev { left: 10px; }
  .video-next { right: 10px; }
}

/* Hero - Beranda */
.container {
  display: block !important;
  max-width: 1320px !important;
}

/* ===== HOME STYLES ===== */
        .home-hero {
            padding: 40px 0 60px;
            background: var(--color-body-bg);
        }

        /* Radio Box */
        .home-radio-box {
            background: linear-gradient(135deg, #01347c 0%, #012a63 40%, #000d24 100%);
            border-radius: var(--border-radius-xl);
            padding: 40px;
            height: 100%;
            min-height: 420px;
            position: relative;
            overflow: hidden;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .home-radio-box::before {
            content: '';
            position: absolute;
            inset: 0;
            background: radial-gradient(ellipse 70% 60% at 20% 50%, rgba(0, 100, 255, .18) 0%, transparent 70%),
                radial-gradient(ellipse 50% 80% at 80% 60%, rgba(0, 200, 255, .10) 0%, transparent 70%);
            z-index: 0;
        }

        .home-radio-box>* {
            position: relative;
            z-index: 1;
        }

        /* Reuse Radio Styles from radio.html */
        .radio-live-badge {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            background: rgba(255, 255, 255, .10);
            border: 1px solid rgba(255, 255, 255, .20);
            border-radius: 50px;
            padding: 5px 14px;
            font-size: 12px;
            font-weight: 700;
            letter-spacing: 2px;
            text-transform: uppercase;
            color: #fff;
            margin-bottom: 18px;
            backdrop-filter: blur(8px);
            align-self: flex-start;
        }

        .radio-live-badge .dot {
            width: 8px;
            height: 8px;
            background: #e74c3c;
            border-radius: 50%;
            animation: livePulse 1.4s ease-in-out infinite;
        }

        @keyframes livePulse {

            0%,
            100% {
                opacity: 1;
                transform: scale(1);
            }

            50% {
                opacity: .4;
                transform: scale(.85);
            }
        }

        .radio-hero-title {
            font-family: var(--font-title);
            font-size: clamp(24px, 3vw, 36px);
            font-weight: 800;
            color: #fff;
            line-height: 1.15;
            margin-bottom: 12px;
            letter-spacing: -.5px;
        }

        .radio-hero-title span {
            color: #4da9ff;
        }

        .radio-hero-subtitle {
            font-family: var(--font-body);
            font-size: 14px;
            color: rgba(255, 255, 255, .65);
            margin-bottom: 32px;
            line-height: 1.6;
        }

        .radio-player-controls {
            display: flex;
            align-items: center;
            gap: 20px;
            flex-wrap: wrap;
        }

        .radio-play-btn {
            position: relative;
            width: 64px;
            height: 64px;
            border-radius: 50%;
            background: linear-gradient(135deg, #4da9ff, #0066cc);
            border: none;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #fff;
            font-size: 22px;
            flex-shrink: 0;
            transition: transform .2s ease, box-shadow .3s ease;
            box-shadow: 0 8px 30px rgba(77, 169, 255, .45);
        }

        .radio-play-btn:hover {
            transform: scale(1.07);
            box-shadow: 0 12px 40px rgba(77, 169, 255, .60);
        }

        .radio-play-btn::before,
        .radio-play-btn::after {
            content: '';
            position: absolute;
            border-radius: 50%;
            background: rgba(77, 169, 255, .25);
            animation: rippleWave 2.2s ease-out infinite;
        }

        .radio-play-btn::before {
            inset: -10px;
        }

        .radio-play-btn::after {
            inset: -20px;
            background: rgba(77, 169, 255, .12);
            animation-delay: .7s;
        }

        .radio-play-btn.is-playing::before,
        .radio-play-btn.is-playing::after {
            animation: rippleWave 1.6s ease-out infinite;
        }

        @keyframes rippleWave {
            0% {
                transform: scale(.9);
                opacity: .8;
            }

            100% {
                transform: scale(1.3);
                opacity: 0;
            }
        }

        .radio-player-info {
            color: #fff;
        }

        .radio-player-info .now-label {
            font-family: var(--font-body);
            font-size: 11px;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 1.5px;
            color: rgba(255, 255, 255, .50);
            margin-bottom: 4px;
        }

        .radio-player-info .now-program {
            font-family: var(--font-title);
            font-size: 16px;
            font-weight: 700;
            color: #fff;
            margin-bottom: 2px;
        }

        .radio-player-info .now-host {
            font-family: var(--font-body);
            font-size: 12px;
            color: rgba(255, 255, 255, .55);
        }

        .radio-volume-wrap {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-top: 22px;
        }

        .radio-volume-wrap i {
            color: rgba(255, 255, 255, .60);
            font-size: 14px;
            width: 18px;
            text-align: center;
        }

        .radio-volume-slider {
            -webkit-appearance: none;
            appearance: none;
            width: 120px;
            height: 4px;
            border-radius: var(--border-radius-md);
            background: rgba(255, 255, 255, .20);
            outline: none;
            cursor: pointer;
            background-image: linear-gradient(#4da9ff, #4da9ff);
            background-size: 70% 100%;
            background-repeat: no-repeat;
        }

        .radio-volume-slider::-webkit-slider-thumb {
            -webkit-appearance: none;
            width: 14px;
            height: 14px;
            border-radius: 50%;
            background: #4da9ff;
            cursor: pointer;
            border: 2px solid var(--color-white);
            box-shadow: 0 0 6px rgba(77, 169, 255, .60);
        }

        /* Headline News Box & Swiper */
        .headline-swiper {
            border-radius: var(--border-radius-xl);
            overflow: hidden;
            height: 100%;
            min-height: 420px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
            position: relative;
        }

        .headline-slide {
            position: relative;
            display: flex;
            align-items: flex-end;
            height: 100%;
            width: 100%;
        }

        .headline-slide img {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.6s ease;
        }

        .headline-swiper:hover .swiper-slide-active img,
        .headline-slide:hover img {
            transform: scale(1.05);
        }

        .headline-slide::after {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.3) 50%, transparent 100%);
            pointer-events: none;
        }

        /* Swiper Pagination */
        .headline-swiper .swiper-pagination {
            bottom: 20px;
            text-align: right;
            padding-right: 40px;
            z-index: 10;
        }

        .headline-swiper .swiper-pagination-bullet {
            width: 10px;
            height: 10px;
            background: rgba(255, 255, 255, 0.5);
            opacity: 1;
            transition: all 0.3s ease;
        }

        .headline-swiper .swiper-pagination-bullet-active {
            background: #4da9ff;
            width: 25px;
            border-radius: 5px;
        }

        .headline-content {
            position: relative;
            z-index: 2;
            padding: 40px;
            width: 100%;
        }

        .headline-category {
            background: #01347c;
            color: #fff;
            padding: 6px 14px;
            border-radius: 50px;
            font-family: var(--font-body);
            font-size: 12px;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 1px;
            margin-bottom: 15px;
            display: inline-block;
            box-shadow: 0 4px 10px rgba(1, 52, 124, 0.4);
        }

        .headline-title {
            color: #fff;
            font-family: var(--font-title);
            font-size: clamp(22px, 3vw, 32px);
            font-weight: 800;
            margin-bottom: 15px;
            line-height: 1.3;
            text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
        }

        .headline-title a {
            color: #fff;
            text-decoration: none;
            transition: color 0.3s;
        }

        .headline-title a:hover {
            color: #4da9ff;
        }

        .headline-meta {
            color: rgba(255, 255, 255, 0.8);
            font-family: var(--font-body);
            font-size: 13px;
            display: flex;
            gap: 15px;
            align-items: center;
        }

        .headline-meta i {
            margin-right: 5px;
            color: #4da9ff;
        }

        /* Section Titles */
        .section-heading {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 30px;
            border-bottom: 2px solid var(--color-border);
            padding-bottom: 15px;
        }

        .section-heading h2 {
            font-family: var(--font-title);
            font-size: 24px;
            font-weight: 800;
            color: var(--color-black);
            margin: 0;
            position: relative;
        }

        .section-heading h2::after {
            content: '';
            position: absolute;
            left: 0;
            bottom: -17px;
            width: 60px;
            height: 4px;
            background: #01347c;
            border-radius: 2px;
        }

        .section-heading .view-all {
            font-family: var(--font-body);
            font-size: 14px;
            font-weight: 600;
            color: #01347c;
            text-decoration: none;
            transition: color 0.3s;
        }

        .section-heading .view-all:hover {
            color: #4da9ff;
        }

        /* News Grid Section */
        .news-section {
            padding: 60px 0;
            background: var(--color-white);
        }

        .news-card {
            background: var(--color-body-bg);
            border-radius: var(--border-radius-lg);
            overflow: hidden;
            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
            transition: transform 0.3s, box-shadow 0.3s;
            height: 100%;
            display: flex;
            flex-direction: column;
            border: 1px solid var(--color-border);
        }

        .news-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
        }

        .news-card-img {
            position: relative;
            padding-top: 60%;
            overflow: hidden;
        }

        .news-card-img img {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s;
        }

        .news-card:hover .news-card-img img {
            transform: scale(1.08);
        }

        .news-card-cat {
            position: absolute;
            top: 15px;
            left: 15px;
            background: #01347c;
            color: #fff;
            padding: 4px 10px;
            border-radius: 4px;
            font-family: var(--font-body);
            font-size: 11px;
            font-weight: 700;
            text-transform: uppercase;
            z-index: 2;
        }

        .news-card-content {
            padding: 20px;
            flex-grow: 1;
            display: flex;
            flex-direction: column;
        }

        .news-card-title {
            font-family: var(--font-title);
            font-size: 18px;
            font-weight: 700;
            color: var(--color-black);
            margin-bottom: 10px;
            line-height: 1.4;
        }

        .news-card-title a {
            color: inherit;
            text-decoration: none;
            transition: color 0.3s;
        }

        .news-card-title a:hover {
            color: #01347c;
        }

        .news-card-excerpt {
            font-family: var(--font-body);
            font-size: 14px;
            color: var(--color-body);
            margin-bottom: 15px;
            line-height: 1.6;
            flex-grow: 1;
        }

        .news-card-meta {
            display: flex;
            align-items: center;
            justify-content: space-between;
            font-family: var(--font-body);
            font-size: 12px;
            color: var(--color-body);
            border-top: 1px solid var(--color-border);
            padding-top: 15px;
            margin-top: auto;
        }

        .news-card-meta i {
            color: #01347c;
            margin-right: 5px;
        }

        /* Interactive Categories */
        .category-section {
            padding: 60px 0;
            background: var(--color-body-bg);
        }

        .cat-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
            gap: 20px;
        }

        .cat-item {
            background: var(--color-white);
            border-radius: var(--border-radius-lg);
            padding: 30px 20px;
            text-align: center;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
            transition: all 0.3s;
            border: 1px solid var(--color-border);
            text-decoration: none;
            display: block;
        }

        .cat-item:hover {
            transform: translateY(-5px);
            background: #01347c;
            border-color: #01347c;
        }

        .cat-icon {
            font-size: 36px;
            color: #01347c;
            margin-bottom: 15px;
            transition: color 0.3s;
        }

        .cat-item:hover .cat-icon {
            color: #fff;
        }

        .cat-name {
            font-family: var(--font-title);
            font-size: 15px;
            font-weight: 700;
            color: var(--color-black);
            transition: color 0.3s;
        }

        .cat-item:hover .cat-name {
            color: #fff;
        }

        /* Video Section */
        .video-section {
            padding: 60px 0;
            background: var(--color-white);
        }

        .video-card {
            position: relative;
            border-radius: var(--border-radius-xl);
            overflow: hidden;
            padding-top: 56.25%;
            /* 16:9 */
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
            display: block;
        }

        .video-card img {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s;
        }

        .video-card:hover img {
            transform: scale(1.05);
        }

        .video-overlay {
            position: absolute;
            inset: 0;
            background: rgba(0, 0, 0, 0.4);
            display: flex;
            align-items: center;
            justify-content: center;
            transition: background 0.3s;
        }

        .video-card:hover .video-overlay {
            background: rgba(0, 0, 0, 0.5);
        }

        .play-btn {
            width: 70px;
            height: 70px;
            background: #e74c3c;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #fff;
            font-size: 24px;
            padding-left: 5px;
            box-shadow: 0 0 0 0 rgba(231, 76, 60, 0.7);
            animation: pulse-red 2s infinite;
            transition: transform 0.3s;
        }

        .video-card:hover .play-btn {
            transform: scale(1.1);
        }

        @keyframes pulse-red {
            0% {
                transform: scale(0.95);
                box-shadow: 0 0 0 0 rgba(231, 76, 60, 0.7);
            }

            70% {
                transform: scale(1);
                box-shadow: 0 0 0 15px rgba(231, 76, 60, 0);
            }

            100% {
                transform: scale(0.95);
                box-shadow: 0 0 0 0 rgba(231, 76, 60, 0);
            }
        }

        .video-title {
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            padding: 30px 20px 20px;
            background: linear-gradient(to top, rgba(0, 0, 0, 0.9), transparent);
            color: #fff;
            font-family: var(--font-title);
            font-size: 18px;
            font-weight: 700;
            margin: 0;
        }

        /* Dark Mode Overrides */
        :root[data-theme="dark"] .section-heading h2::after {
            background: #4da9ff;
        }

        :root[data-theme="dark"] .section-heading .view-all {
            color: #4da9ff;
        }

        :root[data-theme="dark"] .news-card-cat {
            background: #4da9ff;
            color: #000;
        }

        :root[data-theme="dark"] .news-card-title a:hover {
            color: #4da9ff;
        }

        :root[data-theme="dark"] .news-card-meta i {
            color: #4da9ff;
        }

        :root[data-theme="dark"] .cat-item:hover {
            background: #1a1c1e;
            border-color: #4da9ff;
        }

        :root[data-theme="dark"] .cat-icon {
            color: #4da9ff;
        }

        :root[data-theme="dark"] .cat-item:hover .cat-icon {
            color: #4da9ff;
        }

        :root[data-theme="dark"] .cat-item:hover .cat-name {
            color: #4da9ff;
        }

        /* Responsive */
        @media (max-width: 991px) {
            .home-radio-box {
                min-height: 350px;
                margin-bottom: 30px;
            }

            .headline-swiper {
                min-height: 350px;
            }
        }

        @media (max-width: 767px) {
            .headline-title {
                font-size: 20px;
            }

            .headline-content {
                padding: 20px;
            }
        }

/* Hero Radio Streaming */
/* ===== RADIO HERO ===== */
        .radio-hero {
            position: relative;
            background: linear-gradient(135deg, #01347c 0%, #012a63 40%, #000d24 100%);
            overflow: hidden;
            padding: 80px 0 70px;
            isolation: isolate;
        }

        .radio-hero::before {
            content: '';
            position: absolute;
            inset: 0;
            background:
                radial-gradient(ellipse 70% 60% at 20% 50%, rgba(0, 100, 255, .18) 0%, transparent 70%),
                radial-gradient(ellipse 50% 80% at 80% 60%, rgba(0, 200, 255, .10) 0%, transparent 70%);
            z-index: 0;
        }

        .radio-hero-grid {
            position: relative;
            z-index: 1;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 0 48px;
            align-items: stretch;
        }

        .radio-hero-left {
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        /* Live badge */
        .radio-live-badge {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            background: rgba(255, 255, 255, .10);
            border: 1px solid rgba(255, 255, 255, .20);
            border-radius: 50px;
            padding: 5px 14px;
            font-size: 12px;
            font-weight: 700;
            letter-spacing: 2px;
            text-transform: uppercase;
            color: #fff;
            margin-bottom: 18px;
            backdrop-filter: blur(8px);
        }

        .radio-live-badge .dot {
            width: 8px;
            height: 8px;
            background: #e74c3c;
            border-radius: 50%;
            animation: livePulse 1.4s ease-in-out infinite;
        }

        @keyframes livePulse {

            0%,
            100% {
                opacity: 1;
                transform: scale(1);
            }

            50% {
                opacity: .4;
                transform: scale(.85);
            }
        }

        .radio-hero-title {
            font-size: clamp(28px, 4vw, 46px);
            font-weight: 800;
            color: #fff;
            line-height: 1.15;
            margin-bottom: 12px;
            letter-spacing: -.5px;
        }

        .radio-hero-title span {
            color: #4da9ff;
        }

        .radio-hero-subtitle {
            font-size: 15px;
            color: rgba(255, 255, 255, .65);
            margin-bottom: 32px;
            line-height: 1.7;
            max-width: 460px;
        }

        /* Player Controls */
        .radio-player-controls {
            display: flex;
            align-items: center;
            gap: 20px;
            flex-wrap: wrap;
        }

        .radio-play-btn {
            position: relative;
            width: 74px;
            height: 74px;
            border-radius: 50%;
            background: linear-gradient(135deg, #4da9ff, #0066cc);
            border: none;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #fff;
            font-size: 26px;
            flex-shrink: 0;
            transition: transform .2s ease, box-shadow .3s ease;
            box-shadow: 0 8px 30px rgba(77, 169, 255, .45);
        }

        .radio-play-btn:hover {
            transform: scale(1.07);
            box-shadow: 0 12px 40px rgba(77, 169, 255, .60);
        }

        .radio-play-btn::before,
        .radio-play-btn::after {
            content: '';
            position: absolute;
            border-radius: 50%;
            background: rgba(77, 169, 255, .25);
            animation: rippleWave 2.2s ease-out infinite;
        }

        .radio-play-btn::before {
            inset: -14px;
        }

        .radio-play-btn::after {
            inset: -28px;
            background: rgba(77, 169, 255, .12);
            animation-delay: .7s;
        }

        .radio-play-btn.is-playing::before,
        .radio-play-btn.is-playing::after {
            animation: rippleWave 1.6s ease-out infinite;
        }

        @keyframes rippleWave {
            0% {
                transform: scale(.9);
                opacity: .8;
            }

            100% {
                transform: scale(1.3);
                opacity: 0;
            }
        }

        .radio-player-info {
            color: #fff;
        }

        .radio-player-info .now-label {
            font-size: 11px;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 1.5px;
            color: rgba(255, 255, 255, .50);
            margin-bottom: 4px;
        }

        .radio-player-info .now-program {
            font-size: 17px;
            font-weight: 700;
            color: #fff;
            margin-bottom: 2px;
        }

        .radio-player-info .now-host {
            font-size: 13px;
            color: rgba(255, 255, 255, .55);
        }

        /* Volume */
        .radio-volume-wrap {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-top: 22px;
        }

        .radio-volume-wrap i {
            color: rgba(255, 255, 255, .60);
            font-size: 14px;
            width: 18px;
            text-align: center;
        }

        .radio-volume-slider {
            -webkit-appearance: none;
            appearance: none;
            width: 140px;
            height: 4px;
            border-radius: 10px;
            background: rgba(255, 255, 255, .20);
            outline: none;
            cursor: pointer;
            background-image: linear-gradient(#4da9ff, #4da9ff);
            background-size: 70% 100%;
            background-repeat: no-repeat;
        }

        .radio-volume-slider::-webkit-slider-thumb {
            -webkit-appearance: none;
            width: 14px;
            height: 14px;
            border-radius: 50%;
            background: #4da9ff;
            cursor: pointer;
            border: 2px solid #fff;
            box-shadow: 0 0 6px rgba(77, 169, 255, .60);
        }

        .radio-volume-slider::-moz-range-thumb {
            width: 14px;
            height: 14px;
            border-radius: 50%;
            background: #4da9ff;
            cursor: pointer;
            border: 2px solid #fff;
        }

        /* ===== IMAGE SLIDESHOW (right) ===== */
        .radio-slideshow {
            position: relative;
            width: 100%;
            height: 100%;
            min-height: 420px;
            border-radius: 18px;
            overflow: hidden;
        }

        .radio-slide {
            position: absolute;
            inset: 0;
            background-size: cover;
            background-position: center;
            opacity: 0;
            transition: opacity 1s ease;
        }

        .radio-slide.active {
            opacity: 1;
        }

        .radio-slide-caption {
            position: absolute;
            bottom: 20px;
            right: 18px;
            z-index: 3;
            background: rgba(0, 0, 0, .45);
            backdrop-filter: blur(8px);
            -webkit-backdrop-filter: blur(8px);
            border: 1px solid rgba(255, 255, 255, .15);
            border-radius: 50px;
            padding: 6px 14px;
            font-size: 12px;
            color: rgba(255, 255, 255, .85);
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            max-width: calc(100% - 36px);
            transition: opacity .4s ease;
        }

        .radio-slide-dots {
            position: absolute;
            bottom: 20px;
            left: 50%;
            transform: translateX(-50%);
            z-index: 3;
            display: flex;
            gap: 6px;
        }

        .radio-slide-dot {
            width: 7px;
            height: 7px;
            border-radius: 50%;
            background: rgba(255, 255, 255, .35);
            transition: background .3s, transform .3s;
            cursor: pointer;
        }

        .radio-slide-dot.active {
            background: #fff;
            transform: scale(1.3);
        }

/* Jadwal Siaran Program Acara */
/* ===== PROGRAM SECTION ===== */
        .radio-program-section {
            padding: 60px 0 70px;
            /* --color-body-bg: #fff (light) / #101213 (dark) ? auto switch */
            background: var(--color-body-bg);
            transition: background .3s, color .3s;
        }
        
        .radio-program-section .container {
            display: flex;
            flex-direction: column;
        }


        .section-header {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            margin-bottom: 36px;
            flex-wrap: wrap;
            gap: 16px;
        }

        .section-label {
            font-family: var(--font-body);
            font-size: 12px;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 2px;
            color: #01347c;
            margin-bottom: 6px;
        }

        .section-title {
            /* --font-title = Spartan; --color-black: #000 (light) / #fff (dark) */
            font-family: var(--font-title);
            font-size: clamp(22px, 3vw, 32px);
            font-weight: 800;
            color: var(--color-black);
            margin: 0;
            line-height: 1.2;
        }

        /* Day tabs */
        .day-tabs {
            display: flex;
            gap: 6px;
            flex-wrap: wrap;
        }

        .day-tab {
            font-family: var(--font-body);
            padding: 8px 18px;
            border-radius: 50px;
            font-size: 13px;
            font-weight: 600;
            cursor: pointer;
            /* --color-border auto switches: #e5e5e5 (light) / #222121 (dark) */
            border: 2px solid var(--color-border);
            transition: all .2s ease;
            /* --color-white: #fff (light) / #000 (dark ? overridden below) */
            background: var(--color-white);
            /* --color-body: #6c6f72 (light) / #d7d7d7 (dark) */
            color: var(--color-body);
            box-shadow: 0 2px 8px rgba(0, 0, 0, .07);
        }

        .day-tab:hover {
            border-color: #01347c;
            color: #01347c;
        }

        .day-tab.active {
            background: #01347c;
            border-color: #01347c;
            color: #fff;
            box-shadow: 0 4px 16px rgba(1, 52, 124, .30);
        }

        /* Program Grid */
        .program-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(155px, 1fr));
            gap: 14px;
        }

        .program-card {
            /* --border-radius-xl = 20px */
            border-radius: var(--border-radius-xl);
            overflow: hidden;
            background: #c8d4e8;
            aspect-ratio: 3 / 4;
            cursor: pointer;
            position: relative;
            box-shadow: 0 4px 18px rgba(0, 0, 0, .10);
            transition: transform .28s ease, box-shadow .28s ease;
        }

        .program-card:hover {
            transform: translateY(-5px) scale(1.025);
            box-shadow: 0 14px 40px rgba(1, 52, 124, .20);
        }

        .program-card img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            transition: transform .4s ease;
        }

        .program-card:hover img {
            transform: scale(1.06);
        }

        .on-air-badge {
            position: absolute;
            top: 10px;
            left: 10px;
            display: inline-flex;
            align-items: center;
            gap: 5px;
            background: rgba(1, 52, 124, .92);
            color: #fff;
            font-family: var(--font-body);
            font-size: 10px;
            font-weight: 700;
            letter-spacing: 1px;
            text-transform: uppercase;
            padding: 4px 10px;
            border-radius: 50px;
            backdrop-filter: blur(4px);
            -webkit-backdrop-filter: blur(4px);
            box-shadow: 0 2px 8px rgba(0, 0, 0, .30);
        }

        .on-air-badge .dot {
            width: 6px;
            height: 6px;
            background: #4da9ff;
            border-radius: 50%;
            animation: livePulse 1.2s ease-in-out infinite;
        }
        
        /* section-label: warna #01347c terlalu gelap di dark mode */
        :root[data-theme="dark"] .section-label {
            color: #4da9ff;
        }

        /* day-tab: --color-white di dark = #000 (terlalu gelap), override eksplisit */
        :root[data-theme="dark"] .day-tab {
            background: var(--color-dark-bg_2, #171818);
            color: var(--color-body);
            box-shadow: none;
        }

        :root[data-theme="dark"] .day-tab:hover {
            border-color: #4da9ff;
            color: #4da9ff;
        }

        :root[data-theme="dark"] .day-tab.active {
            background: #01347c;
            color: #fff;
            border-color: #01347c;
        }

        /* program-card: #c8d4e8 (light blue) terlalu terang di dark mode */
        :root[data-theme="dark"] .program-card {
            background: var(--color-dark-bg_2, #171818);
            box-shadow: 0 4px 18px rgba(0, 0, 0, .40);
        }

/* App Download */
/* ===== APP DOWNLOAD SECTION ===== */
        .app-download-section {
            padding: 52px 0;
            background: linear-gradient(135deg, #01347c 0%, #012558 100%);
        }

        .app-download-inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 32px;
            flex-wrap: wrap;
        }

        .app-download-text h3 {
            font-size: clamp(18px, 2.5vw, 26px);
            font-weight: 800;
            color: #fff;
            margin-bottom: 8px;
            line-height: 1.3;
        }

        .app-download-text p {
            color: rgba(255, 255, 255, .62);
            font-size: 15px;
            margin: 0;
        }

        .app-download-btns {
            display: flex;
            gap: 14px;
            align-items: center;
            flex-wrap: wrap;
        }

        .app-store-link {
            display: block;
            transition: transform .22s ease, opacity .22s ease;
        }

        .app-store-link:hover {
            transform: translateY(-3px);
            opacity: .88;
        }

        .app-store-link img {
            height: 52px;
            width: auto;
            display: block;
        }

/* Last News */


/* Visi Misi */


/* Update - Info Prima */


/* Update - Pengumuman - Kurs - Lelang */


/* Hati-hati penipuan */
.poster-instagram {
  max-width: 100%;
  height: 220px;
  object-fit: cover;
  border-radius: 8px;
}

/* YouTube responsive + center */
.video-wrapper {
  max-width: 350px;
  width: 100%;
}

.video-wrapper iframe {
  width: 100%;
  height: 220px;
  border-radius: 8px;
}


/* Statistik Beranda */


/* Layanan Bea Cukai Index */


/* Layanan Priok Index */
.card img {
    height: 150px;
    object-fit: cover;
}

.card-title a {
    text-decoration: none;
    color: #FFFFFF;
}
.h5 {
    text-decoration: none;
    color: #FFFFFF;
}
.card-title a:hover {
    color: #007bff;
}
.card-link {
    text-decoration: none;
    color: inherit;
}
.card-link:hover {
    color: inherit;
}
card {
    height: 600px;           
    display: flex;
    flex-direction: column;
}

.card-img-top {
    height: 150px;          
    object-fit: cover;       
}

.card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between; 
}



/* FAQ */
.content-text p {
    text-align: justify;
}

.section-ribbon {
        background-color: #0A3A75;       /* Warna baru */
        color: #fff;
        padding: 12px 18px;
        font-weight: bold;
        cursor: pointer;
        border-radius: 6px;
        margin-top: 15px;
        transition: background 0.3s;
    }

  

/* Disclaimer */


/* Terms and Conditions */
.section-ribbon {
        background: #0A2A43; /* biru tua elegan */
        color: #fff;
        width: 100%;
        padding: 12px 18px;
        border-radius: 6px;
        font-weight: 600;
        font-size: 17px;
        margin-top: 35px;
        margin-bottom: 10px;
    }

    .content-text p {
        text-align: justify;
        margin-bottom: 18px;
        line-height: 1.6;
    }

/* Privacy Policy */


/* Pengumuman */


/* Lelang Header */


/* Lelang List Lot Barang */
.lot-card-link {
    display: block;
    text-decoration: none;
    color: inherit;
}

.lot-card-link:hover .shop-box-style-1 {
    transform: translateY(-4px);
    box-shadow: 0 6px 16px rgba(6,46,111,0.25);
    transition: 0.3s;
    cursor: pointer;
}
.related-post-box-area {
    padding-left: 40px;
    padding-right: 40px;
}


/* Struktur Organisasi */


/* Tugas dan Fungsi */
/* Judul */
.judul-page {
    font-size: 32px;
    font-weight: 800;
    color: #062E6F;
    margin-bottom: 5px;
}

.tanggal-publish {
    font-size: 14px;
    color: #555;
    margin-bottom: 25px;
}

/* CARD UTAMA */
.content-card {
    background: #ffffff;
    border-radius: 12px;
    padding: 25px 30px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    margin-bottom: 25px;
    border-left: 6px solid #062E6F;
}

.content-card h3 {
    font-weight: 700;
    margin-bottom: 12px;
    color: #062E6F;
}

.content-card p {
    line-height: 1.7;
}

/* CARD Fungsi (sama seperti card atas) */
.fungsi-card {
    padding-bottom: 30px;
}

/* LIST STYLE BARU */
.fungsi-ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.fungsi-ul li {
    background: #062E6F;
    margin-bottom: 10px;
    padding: 12px 15px 12px 50px;
    border-radius: 10px;
    color: #fff;
    position: relative;
    font-size: 15px;
    line-height: 1.5;
    transition: 0.25s;
}

/* Ikon bulat ala button */
.fungsi-ul li::before {
    content: "?";
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    background: #00C8FF;
    color: #062E6F;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    font-size: 14px;
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Hover */
.fungsi-ul li:hover {
    background: #08448E;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
}

/* Banner Container */
.banner-djbc {
    position: relative;
    width: 100%;
    height: 400px; /* bisa diubah */
    overflow: hidden;
    border-radius: 12px;
    margin-bottom: 35px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.20);
}

/* Gambar Header */
.banner-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.75); /* sedikit gelap agar lebih estetik */
}

/* Overlay Teks */
.banner-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
}

.banner-title {
    color: white;
    font-size: 36px;
    font-weight: 800;
    text-shadow: 0 4px 10px rgba(0,0,0,0.5);
    letter-spacing: 1px;
    text-transform: uppercase;
}

/* Sekilas Tentang 2 */


/* Pengaduan */
    .pengaduan-card-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2 kolom */
    grid-template-rows: repeat(2, auto);  /* 2 baris */
    gap: 20px;
    margin-top: 25px;
    font-family: Arial, sans-serif;
}


.pengaduan-card {
    background: #ffffff;
    border-radius: 10px;
    padding: 22px;
    border: 2px solid #062E6F; /* biru tua */
    box-shadow: 0px 2px 6px rgba(0,0,0,0.06);
    transition: 0.3s;
    text-align: center;
}


.pengaduan-card:hover {
    transform: translateY(-4px);
    box-shadow: 0px 4px 12px rgba(6, 46, 111, 0.3);
}


    .pengaduan-card h4 {
        margin: 0 0 10px;
        font-size: 18px;
        color: #062E6F;
        font-weight: bold;
    }

    .pengaduan-card p {
        margin: 0 0 14px;
        font-size: 14px;
        color: #333;
        line-height: 1.4;
    }

    .pengaduan-card a {
        color: #064a9f;
        font-weight: bold;
        text-decoration: none;
        border: 1px solid #064a9f;
        padding: 7px 16px;
        border-radius: 6px;
        transition: 0.2s;
        display: inline-block;
    }

    .pengaduan-card a:hover {
        background: #064a9f;
        color: white;
    }

@media (max-width: 768px) {
    .pengaduan-card-container {
        grid-template-columns: 1fr;
    }
}

/* Informasi Publik Serta Merta */


/* Informasi Publik Tersedia Setiap Saat */


/* Informasi Publik Wajib Berkala */
    .ppid-table {
        width: 100%;
        border-collapse: collapse;
        font-family: Arial, sans-serif;
        background: #ffffff;
    }

    /* Section Header */
    .ppid-section {
        background: #062E6F;
        color: white;
        padding: 12px 10px;
        font-size: 16px;
        font-weight: bold;
    }

    /* Row styles */
    .ppid-table td, 
    .ppid-table th {
        padding: 10px 12px;
        border-bottom: 1px solid #e5e5e5;
        font-size: 14px;
    }

    .ppid-table tr:nth-child(even) {
        background: #f8f9fc;
    }

    /* First empty column */
    .ppid-table td:first-child,
    .ppid-table th:first-child {
        width: 3%;
    }

    /* Link column */
    .ppid-table td:last-child a {
        color: #064a9f;
        font-weight: bold;
        text-decoration: none;
        border: 1px solid #064a9f;
        padding: 4px 10px;
        border-radius: 5px;
        transition: 0.2s;
        display: inline-block;
    }

    .ppid-table td:last-child a:hover {
        background: #064a9f;
        color: white;
    }

/* Detail Berita */


/* Detail Berita */
.post-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;         /* crop */
    object-position: center center; /* rata tengah vertikal */
    display: block;
}


/* Profil Pejabat */
.profile-card {
    width: 310px;
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0,0,0,0.15);
    font-family: "Segoe UI", Arial, sans-serif;
    transition: 0.3s;

    display: flex;            /* ? supaya bisa dorong tombol ke bawah */
    flex-direction: column;
}


.profile-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.18);
}

.profile-card img {
    width: 80%;
    height: 300px;      /* sesuaikan tinggi */
    padding: 15px;
    object-fit: cover;
    display: block;
    margin: 0 auto;
    border-radius: 50px;

}



.profile-row {
    display: grid;
    justify-content: center;
    margin-bottom: 30px;
    gap: 20px;
}

/* Baris 1: 1 card di tengah */
.row-1 {
    grid-template-columns: repeat(1, 310px);
}

/* Baris 2: 5 card */
.row-2 {
    grid-template-columns: repeat(5, 310px);
}

/* Baris 3: 5 card */
.row-3 {
    grid-template-columns: repeat(5, 310px);
}

/* Responsive */
@media (max-width: 1400px) {
    .row-2, .row-3 {
        grid-template-columns: repeat(3, 310px);
    }
}

@media (max-width: 992px) {
    .row-2, .row-3 {
        grid-template-columns: repeat(2, 310px);
    }
}

@media (max-width: 600px) {
    .row-1, .row-2, .row-3 {
        grid-template-columns: repeat(1, 1fr);
    }

    .profile-card {
        width: 100%;
    }
}


.profile-content {
    padding: 18px 20px;

    display: flex;
    flex-direction: column;
    height: 100%;
}


.profile-title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 5px;
    color: #042E66;
}

.profile-jabatan {
    font-size: 15px;
    font-weight: 500;
    color: #555;
    margin-bottom: 15px;
}

.profile-desc {
    font-size: 14px;
    text-align: justify;
    line-height: 1.5;
    margin-bottom: 18px;
    color: #333;
}

.btn-group {
    margin-top: auto;       /* ? dorong tombol ke bawah */
    display: flex;
    gap: 10px;
}


.profile-btn {
    flex: 1;
    text-align: center;
    padding: 10px 0;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    border-radius: 8px;
    background: #042E66;
    color: #fff;
    transition: 0.2s;
}

.profile-btn:hover {
    background: #063c82;
}

/* Sikap Dasar DJBC */


    h2 {
        text-align: center;
        color: #0b2a47;
        font-size: 32px;
        margin-bottom: 30px;
        text-transform: uppercase;
        font-weight: 700;
    }

    h3 {
       
        color: #FFFFFF ;
       
    }

    .container {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
        gap: 25px;
        max-width: 1200px;
        margin: auto;
    }

    .card {
        background: #042E66; /* biru tua */
        padding: 25px;
        border-radius: 12px;
        color: white;
        box-shadow: 0 4px 10px rgba(0,0,0,0.15);
        transition: 0.3s;
    }

    .card:hover {
        transform: translateY(-6px);
        box-shadow: 0 8px 16px rgba(0,0,0,0.18);
    }

    .card h3 {
        margin-top: 0;
        font-size: 22px;
        border-bottom: 2px solid rgba(255,255,255,0.4);
        padding-bottom: 8px;
        margin-bottom: 15px;
        text-transform: uppercase;
    }

    .card p {
        text-align: justify;
        font-size: 15px;
        line-height: 1.6;
    }

/* Banner Container */
.banner-djbc {
    position: relative;
    width: 100%;
    height: 400px; /* bisa diubah */
    overflow: hidden;
    border-radius: 12px;
    margin-bottom: 35px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.20);
}

/* Gambar Header */
.banner-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.75); /* sedikit gelap agar lebih estetik */
}

/* Overlay Teks */
.banner-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
}

.banner-title {
    color: white;
    font-size: 36px;
    font-weight: 800;
    text-shadow: 0 4px 10px rgba(0,0,0,0.5);
    letter-spacing: 1px;
    text-transform: uppercase;
}


/* Nilai Kementerian Keuangan */

    h2 {
        text-align: center;
        color: #0b2a47;
        font-size: 32px;
        margin-bottom: 30px;
        text-transform: uppercase;
        font-weight: 700;
    }

    h3 {
       
        color: #FFFFFF ;
       
    }

    .container {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
        gap: 25px;
        max-width: 1200px;
        margin: auto;
    }

    .card {
        background: #042E66; /* biru tua */
        padding: 25px;
        border-radius: 12px;
        color: white;
        box-shadow: 0 4px 10px rgba(0,0,0,0.15);
        transition: 0.3s;
    }

    .card:hover {
        transform: translateY(-6px);
        box-shadow: 0 8px 16px rgba(0,0,0,0.18);
    }

    .card h3 {
        margin-top: 0;
        font-size: 22px;
        border-bottom: 2px solid rgba(255,255,255,0.4);
        padding-bottom: 8px;
        margin-bottom: 15px;
        text-transform: uppercase;
    }

    .card p {
        text-align: justify;
        font-size: 15px;
        line-height: 1.6;
    }

/* Banner Container */
.banner-djbc {
    position: relative;
    width: 100%;
    height: 400px; /* bisa diubah */
    overflow: hidden;
    border-radius: 12px;
    margin-bottom: 35px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.20);
}

/* Gambar Header */
.banner-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.75); /* sedikit gelap agar lebih estetik */
}

/* Overlay Teks */
.banner-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
}

.banner-title {
    color: white;
    font-size: 36px;
    font-weight: 800;
    text-shadow: 0 4px 10px rgba(0,0,0,0.5);
    letter-spacing: 1px;
    text-transform: uppercase;
}

/* Sambutan Kepala Kantor */


/* Sejarah */


/* Hero Beranda */
.video-slider-style-1 { position: relative; } .video-slide::before { pointer-events: none; /* overlay tidak blok klik */ } /* Wrapper nav */ .video-slider-nav { position: absolute; inset: 0; z-index: 50; pointer-events: none; } /* Tombol */ .video-slider-nav .swiper-button-prev, .video-slider-nav .swiper-button-next { width: 50px; height: 50px; border-radius: 50%; background: #0b2a5a; /* biru tua */ color: #ffffff; display: flex; align-items: center; justify-content: center; pointer-events: auto; position: absolute; top: 50%; transform: translateY(-50%); box-shadow: 0 8px 20px rgba(11, 42, 90, 0.45); transition: all .3s ease; } .video-slider-nav .swiper-button-prev::after, .video-slider-nav .swiper-button-next::after { display: none; } /* Hover */ .video-slider-nav .swiper-button-prev:hover, .video-slider-nav .swiper-button-next:hover { background: #143d8c; /* biru tua lebih terang */ box-shadow: 0 12px 28px rgba(20, 61, 140, 0.55); } /* Posisi */ .video-prev { left: 30px; } .video-next { right: 30px; } @media (max-width: 768px) { .video-prev { left: 10px; } .video-next { right: 10px; } }

/* Sekilas Tentang */


/* Hubungi Kami */


/* Footer */
.footer-link-list {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.footer-link-item {
    margin-bottom: 8px;
}

.footer-widget h6,
.footer-widget p {
    color: #ffffff !important;
}
.footer-link-item a {
    color: #ffffff !important;
    text-decoration: none;
    font-size: 15px;
    transition: 0.3s;
}

.footer-link-item a:hover {
    color: #d5d5d5 !important;
    padding-left: 4px;
}


/* Header */


/* Footer NEW */


/* Majalah */


/* Tentang Beacukai */


/* Detail Berita */


/* Berita */


/* Video Section */


/* Tentang Bea Cukai Bekasi */


/* Hero Section Dengan Video */


/* 404 Not Found */


/* Berita Utama */


/* Resume Berita */
.post-banner-style-1::before {
    background-image:url('https://onewebfile.beacukai.go.id/cdn/download/file/68748f49521d4c403052b59d') !important
}

/* Skema FTA */


/* Daftar Artikel */


/* Disclaimer */


/* Kebijakan Privasi */


/* Page Syarat dan Ketentuan */


/* 404 Not Found */


/* Menu Cepat */


/* Search */


/* Header Zoom In */


/* Back to top */


/* Tombol change dark white */


/* Footer */


/* Navbar White */


/* Header */


/* Footer */


/* Hidden menu left */


/* Layout search hidden */


/* Tombol change dark white */


/* Tombol Back To Top */


/* Slide Show 3 Feature Berita */
      .bg-fitur {
         background-color:#01347c
      }
      @media (min-width: 768px) {
         .carousel-caption {
            top: 60%;
            left: 10%;
            right: auto;
            transform: translateY(-50%);
            text-align: left;
            padding-left: 2rem;
            max-width: 400px; /* biar teks tidak terlalu panjang */
         }
      }

/* Footer */


/* Header */




