/*==================================================

PEMDI BAKAMLA

==================================================*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

*{

    margin:0;

    padding:0;

    box-sizing:border-box;

    font-family:Poppins,sans-serif;

}

body{

    background:#f5f8fd;

}



.top-action{
    display:flex;
    align-items:center;
    gap:16px;
}

.language-select{
    width:170px;
    height:46px;
    border-radius:14px;
}

.btn-login{
    display:flex;
    align-items:center;
    justify-content:center;
    height:46px;
    padding:0 30px;
    border-radius:14px;
    border:2px solid #0d6efd;
    color:#0d6efd;
    text-decoration:none;
    font-weight:600;
    transition:.3s;
}

.btn-login:hover{
    background:#0d6efd;
    color:#fff;
}



/*================================================

HERO

================================================*/

.hero-section{

    position:relative;

    min-height:80vh;

    padding-top:50px;

    overflow:hidden;

    background:

    linear-gradient(rgba(6,28,72,.75),rgba(6,28,72,.75)),

    url("../images/bannernew.png");

    background-size:cover;

    background-position:center;

}

.hero-overlay{

    position:absolute;

    inset:0;

    background:

    radial-gradient(circle at right,

    rgba(0,110,255,.25),

    transparent 45%);

}
.hero-title{

    font-size:72px;

    color:white;

    font-weight:800;

    line-height:1.1;

}

.hero-description{

    color:#d9e6ff;

    font-size:24px;

    margin:35px 0;

    max-width:600px;

}

.hero-badge{

    display:inline-block;

    padding:10px 22px;

    border-radius:40px;

    background:rgba(255,255,255,.12);

    color:white;

    backdrop-filter:blur(10px);

    margin-bottom:25px;

}

.hero-buttons{

    display:flex;

    gap:20px;

}

.hero-buttons .btn{

    padding:15px 35px;

    border-radius:14px;

}

.glass-panel{
    position:relative;
    z-index:10;
    background:rgba(15,32,72,.45);
    backdrop-filter:blur(20px);
    border:1px solid rgba(255,255,255,.15);
    border-radius:25px;
    padding:35px;
    color:#fff;
    box-shadow:0 30px 60px rgba(0,0,0,.25);
}

.stats-card{

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

    border-radius:24px;

    padding:40px;

    border:1px solid rgba(255,255,255,.10);

    box-shadow:0 20px 50px rgba(0,0,0,.20);

}

.stat-item{

    text-align:center;

    padding:30px 15px;

    border-radius:18px;

    transition:.35s;

}

.stat-item:hover{

    background:rgba(255,255,255,.08);

    transform:translateY(-5px);

}

.stat-item i{

    font-size:42px;

    color:#4da3ff;

}

.stat-item h2{

    color:white;

    margin-top:15px;

    font-weight:700;

}

.stat-item span{

    color:#d4d4d4;

}

/* ECOSYSTEM */
/*================================================*/

.ecosystem-section{

    background:#f6f8fc;

}

.section-title{

    font-size:38px;

    font-weight:700;

}

.section-subtitle{

    color:#666;

}

.btn-link-custom{

    color:#0d6efd;

    text-decoration:none;

    font-weight:600;

}

.eco-card{

    background:#fff;

    border-radius:18px;

    padding:35px 25px;

    text-align:center;

    transition:.35s;

    border:1px solid #edf1f8;

    height:100%;

}

.eco-card:hover{

    transform:translateY(-12px);

    box-shadow:0 25px 50px rgba(0,0,0,.08);

}

.eco-icon{

    width:80px;

    height:80px;

    margin:auto;

    border-radius:18px;

    display:flex;

    justify-content:center;

    align-items:center;

    background:#edf5ff;

    margin-bottom:25px;

}

.eco-icon i{

    font-size:40px;

    color:#0d6efd;

}

.eco-card h5{

    font-weight:700;

    margin-bottom:15px;

}

.eco-card p{

    color:#666;

    font-size:14px;

    line-height:1.7;

}

/* ICON COLOR */

.blue i{

    color:#2563eb;

}

.purple i{

    color:#7c3aed;

}

.red i{

    color:#ef4444;

}

.green i{

    color:#16a34a;

}

.orange i{

    color:#f97316;

}

.cyan i{

    color:#06b6d4;

}

.dark i{

    color:#1f2937;

}

/*=========================================

MONITORING

=========================================*/

.monitoring-section{

    background-image: url( '../images/background-dokumen-warta.png' );
}

.monitor-card{

    background:white;

    border-radius:18px;

    padding:30px;

    box-shadow:0 15px 35px rgba(0,0,0,.05);

    transition:.35s;

}

.monitor-card:hover{

    transform:translateY(-8px);

}

.monitor-icon{

    width:65px;

    height:65px;

    border-radius:15px;

    display:flex;

    justify-content:center;

    align-items:center;

    color:white;

    margin-bottom:20px;

}

.monitor-icon i{

    font-size:30px;

}

.monitor-card span{

    color:#888;

}

.monitor-card h2{

    margin-top:10px;

    font-weight:700;

}


.chart-card{

    background:white;

    border-radius:20px;

    padding:25px;

    box-shadow:0 15px 35px rgba(0,0,0,.06);

}

.card-header-custom{

    font-size:20px;

    font-weight:700;

    margin-bottom:20px;

}

/* NEWS */
.news-section{

background:#fff;

}

.headline-card{

background:#fff;

border-radius:18px;

overflow:hidden;

box-shadow:0 15px 35px rgba(0,0,0,.05);

}

.headline-card img{

width:100%;

height:280px;

object-fit:cover;

}

.headline-content{

padding:25px;

}

.news-list{

display:flex;

gap:15px;

margin-bottom:20px;

}

.news-list img{

width:120px;

height:90px;

border-radius:10px;

object-fit:cover;

}
/* AGENDA */
.agenda-card{

background:white;

padding:25px;

border-radius:18px;

box-shadow:0 15px 35px rgba(0,0,0,.05);

}

.agenda-item{

display:flex;

gap:20px;

margin-bottom:20px;

align-items:center;

}

.agenda-date{

width:70px;

height:70px;

border:1px solid #ddd;

border-radius:12px;

text-align:center;

padding-top:8px;

}

.agenda-date strong{

display:block;

font-size:26px;

}

.agenda-date span{

font-size:13px;

}

/* FOOTER */
footer{

background:#071d43;

color:white;

padding:70px 0 20px;

}

footer h5{

margin-bottom:20px;

}

footer ul{

list-style:none;

padding:0;

}

footer ul li{

margin-bottom:10px;

}

.social a{

width:42px;

height:42px;

display:inline-flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:#163a74;

margin-right:10px;

color:white;

}

/*======================================================
ABOUT PEMDI
======================================================*/

.pemdi-about-hero{

padding:260px 0 100px;
background:
linear-gradient(rgba(8,28,70,.85),rgba(8,28,70,.90)),url("../images/bannernew.png");
background-size:cover;
background-position:center;
color:#fff;

}

.pemdi-about-hero h1{

font-size:65px;

font-weight:800;

line-height:1.1;

margin:20px 0;

}

.pemdi-about-hero p{

font-size:20px;

color:#dce8ff;

max-width:650px;

}

.hero-badge{

display:inline-block;

padding:10px 20px;

background:rgba(255,255,255,.15);

border-radius:40px;

backdrop-filter:blur(15px);

}

.aspect-summary{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:20px;

}

.aspect-summary div{

background:rgba(255,255,255,.08);

padding:35px;

border-radius:20px;

text-align:center;

backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,.1);

}

.aspect-summary h2{

font-size:40px;

font-weight:700;

margin-bottom:8px;

}

.aspect-summary span{

color:#d9e7ff;

}

.section-title{

margin:20px 0;

}

.section-title h2{

font-size:28px;

font-weight:700;

}

.section-title p{

max-width:750px;

margin:auto;

color:#666;

text-align:justify;
font-size:20px;

}

.aspect-section{

padding:10px 0;

background:#f5f8fc;

}

.aspect-card{

background:#fff;

padding:40px;

border-radius:22px;

height:100%;

transition:.35s;

box-shadow:0 20px 40px rgba(0,0,0,.05);

}

.aspect-card:hover{

transform:translateY(-10px);

box-shadow:0 30px 60px rgba(0,0,0,.10);

}

.aspect-icon{

width:74px;

height:74px;

display:flex;

justify-content:center;

align-items:center;

background:linear-gradient(135deg,#2563eb,#1d4ed8);

border-radius:20px;

color:#fff;

font-size:34px;

}

.aspect-icon i{

font-size:36px;

color:#fff;

}

.aspect-card h4{

font-weight:700;

margin-bottom:18px;

min-height:60px;

}

.aspect-card p{

color:#666;

line-height:1.8;

}

.aspect-card a{

text-decoration:none;

font-weight:600;

color:#0d6efd;

}

.aspect-card:hover .aspect-icon{

background:#0d6efd;

}

.aspect-card:hover .aspect-icon i{

color:#fff;

}

/*==================================================
EKOSISTEM DIGITAL
==================================================*/

.ecosystem-hero{

padding:260px 0 100px;

background:

linear-gradient(rgba(8,30,72,.88),rgba(8,30,72,.92)),
url("../images/bannernew.png");

background-size:cover;

background-position:center;

color:#fff;

}

.ecosystem-hero h1{

font-size:60px;

font-weight:800;

margin:20px 0;

}

.ecosystem-hero p{

font-size:20px;

color:#dce8ff;

max-width:600px;

}

.ecosystem-counter{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:20px;

}

.ecosystem-counter div{

padding:35px;

border-radius:20px;

text-align:center;

background:rgba(255,255,255,.08);

backdrop-filter:blur(20px);

border:1px solid rgba(255,255,255,.12);

}

.ecosystem-counter h2{

font-size:38px;

font-weight:700;

margin-bottom:5px;

}

.ecosystem-counter span{

color:#dce8ff;

}

/* SEARCH */

.ecosystem-search{

margin-top:-45px;

position:relative;

z-index:10;

}

.search-box{

background:#fff;

padding:30px;

border-radius:20px;

box-shadow:0 20px 50px rgba(0,0,0,.08);

}

.search-box input,

.search-box select{

height:56px;

border-radius:14px;

}

/* CARD */

.ecosystem-list{

padding:90px 0;

background:#f5f8fc;

}

.app-card{

background:#fff;

padding:35px;

border-radius:22px;

height:100%;

transition:.35s;

box-shadow:0 15px 35px rgba(0,0,0,.05);

text-align:center;

}

.app-card:hover{

transform:translateY(-10px);

box-shadow:0 30px 60px rgba(0,0,0,.10);

}

.app-icon{

width:80px;

height:80px;

margin:auto;

border-radius:20px;

display:flex;

justify-content:center;

align-items:center;

background:#edf5ff;

margin-bottom:25px;

transition:.3s;

}

.app-icon i{

font-size:38px;

color:#0d6efd;

}

.app-card:hover .app-icon{

background:#0d6efd;

}

.app-card:hover .app-icon i{

color:#fff;

}

.app-card h4{

font-weight:700;

margin-bottom:15px;

}

.app-card p{

font-size:14px;

color:#666;

min-height:60px;

}

.status{

display:flex;

justify-content:center;

align-items:center;

gap:8px;

font-weight:600;

color:#16a34a;

margin-top:15px;

}

.online{

width:10px;

height:10px;

background:#16a34a;

border-radius:50%;

}

/* CTA */

.ecosystem-cta{

padding:90px 0;

background:linear-gradient(135deg,#0d6efd,#003b8e);

color:#fff;

}

.ecosystem-cta h2{

font-size:42px;

font-weight:700;

margin-bottom:20px;

}

.ecosystem-cta p{

font-size:18px;

margin-bottom:35px;

color:#dbeafe;

}

/* Responsive */

@media(max-width:992px){

.ecosystem-hero{

padding:150px 0 90px;

text-align:center;

}

.ecosystem-hero h1{

font-size:42px;

}

.ecosystem-counter{

margin-top:40px;

}

}

@media(max-width:768px){

.ecosystem-counter{

grid-template-columns:1fr;

}

.search-box{

padding:20px;

}

}

/*======================================
INNOVATION HERO
======================================*/

.innovation-hero{

padding:260px 0 100px;

background:

linear-gradient(rgba(8,30,78,.88),

rgba(8,30,78,.88)),

url("../images/bannernew.png");

background-size:cover;

background-position:center;

color:white;

}

.hero-tag{

display:inline-flex;

align-items:center;

gap:8px;

padding:10px 20px;

background:rgba(255,255,255,.12);

border-radius:40px;

margin-bottom:25px;

backdrop-filter:blur(15px);

}

.innovation-hero h1{

font-size:64px;

font-weight:800;

line-height:1.1;

margin-bottom:25px;

}

.innovation-hero p{

font-size:20px;

opacity:.9;

margin-bottom:35px;

max-width:550px;

}

.hero-btn{

display:flex;

gap:20px;

}

/*=====================================
INNOVATION CARD
=====================================*/

.innovation-section{

background:#f7f9fc;

}

.innovation-card{

background:white;

padding:35px;

border-radius:24px;

text-align:center;

height:100%;

transition:.35s;

box-shadow:0 15px 40px rgba(0,0,0,.05);

}

.innovation-card:hover{

transform:translateY(-10px);

box-shadow:0 30px 60px rgba(0,0,0,.12);

}

.innovation-icon{

width:90px;

height:90px;

margin:auto;

margin-bottom:25px;

border-radius:22px;

display:flex;

align-items:center;

justify-content:center;

background:#eef5ff;

}

.innovation-icon i{

font-size:42px;

color:#1967ff;

}

.innovation-card h5{

font-weight:700;

margin-bottom:15px;

}

.innovation-card p{

color:#64748b;

margin-bottom:25px;

}

.innovation-card a{

text-decoration:none;

font-weight:600;

}

.roadmap{

background:white;

}

.roadmap-line{

display:flex;

justify-content:space-between;

position:relative;

margin-top:60px;

}

.roadmap-line::before{

content:"";

position:absolute;

left:0;

top:35px;

width:100%;

height:4px;

background:#dbeafe;

}

.step{

position:relative;

text-align:center;

z-index:2;

}

.circle{

width:70px;

height:70px;

margin:auto;

border-radius:50%;

background:#1967ff;

color:white;

display:flex;

align-items:center;

justify-content:center;

font-weight:700;

margin-bottom:15px;

}

.completed .circle{

background:#16a34a;

}

.active .circle{

background:#f59e0b;

}

.innovation-stats{
background:#f7f9fd;
}

.innovation-stat-card{

background:#fff;

padding:40px 30px;

border-radius:22px;

text-align:center;

transition:.35s;

box-shadow:0 15px 35px rgba(0,0,0,.05);

height:100%;

}

.innovation-stat-card:hover{

transform:translateY(-8px);

}

.innovation-stat-card i{

font-size:45px;

color:#2563eb;

margin-bottom:20px;

}

.innovation-stat-card h2{

font-weight:700;

font-size:42px;

}

.innovation-stat-card p{

color:#64748b;

margin:0;

}

.filter-btn{

border:none;

padding:12px 28px;

margin:8px;

border-radius:50px;

background:#eef3ff;

color:#1e3a8a;

font-weight:600;

transition:.3s;

}

.filter-btn:hover{

background:#2563eb;

color:white;

}

.filter-btn.active{

background:#2563eb;

color:white;

}

.innovation-card{

overflow:hidden;

background:white;

border-radius:24px;

box-shadow:0 20px 40px rgba(0,0,0,.08);

transition:.35s;

}

.innovation-card:hover{

transform:translateY(-10px);

}

.innovation-card img{

width:100%;

height:240px;

object-fit:cover;

}

.innovation-content{

padding:25px;

}

.innovation-content h4{

margin-top:15px;

font-weight:700;

}

.timeline{

position:relative;

padding-left:40px;

border-left:4px solid #2563eb;

}

.timeline-item{

margin-bottom:40px;

position:relative;

}

.timeline-item::before{

content:"";

width:20px;

height:20px;

background:#2563eb;

border-radius:50%;

position:absolute;

left:-52px;

top:5px;

}

.timeline-item h5{

font-weight:700;

color:#2563eb;

}

.timeline-image{
    overflow:hidden;

    border-radius:50px;

    box-shadow: 0 4px 6px hsla(0, 22%, 92%, 0.37);

}

.video-frame{

overflow:hidden;

border-radius:25px;

box-shadow:0 20px 40px rgba(0,0,0,.12);

}

/*==================================================
WARTA PEMDI
==================================================*/

/* HERO */

.news-hero{

    position:relative;

    padding:260px 0 100px;

    background:
    linear-gradient(rgba(7,28,73,.88),rgba(7,28,73,.88)),
    url("../images/bannernew.png");

    background-size:cover;
    background-position:center;
    overflow:hidden;

}

.news-hero::before{

    content:"";

    position:absolute;

    inset:0;

    background:
    radial-gradient(circle at right,
    rgba(20,120,255,.35),
    transparent 55%);

}

.news-hero .container{

    position:relative;

    z-index:2;

}

.hero-tag{

    display:inline-block;

    padding:10px 20px;

    background:rgba(255,255,255,.12);

    color:#fff;

    border-radius:30px;

    backdrop-filter:blur(10px);

    margin-bottom:20px;

    font-weight:600;

}

.news-hero h1{

    color:#fff;

    font-size:58px;

    font-weight:800;

    line-height:1.15;

}

.news-hero p{

    color:#dbe7ff;

    font-size:20px;

    margin:25px 0;

}

/* SEARCH */

.news-search{

    display:flex;

    overflow:hidden;

    background:#fff;

    border-radius:60px;

    max-width:600px;

    box-shadow:0 15px 40px rgba(0,0,0,.12);

}

.news-search input{

    flex:1;

    border:none;

    padding:18px 25px;

    outline:none;

}

.news-search button{

    width:70px;

    border:none;

    background:#0d6efd;

    color:white;

    font-size:20px;

}

/*==================================================
HEADLINE
==================================================*/

.headline-news{

    background:#f5f8fd;

}

.headline-card{

    position:relative;

    overflow:hidden;

    border-radius:25px;

    height:520px;

}

.headline-card img{

    width:100%;

    height:100%;

    object-fit:cover;

}

.headline-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(transparent,
    rgba(0,0,0,.85));

    display:flex;

    justify-content:flex-end;

    flex-direction:column;

    padding:40px;

}

.headline-overlay h2{

    color:white;

    font-size:36px;

    font-weight:700;

}

.headline-overlay p{

    color:#ddd;

    margin:20px 0;

}

.headline-overlay a{

    color:#5fb4ff;

    text-decoration:none;

    font-weight:700;

}

/*==================================================
MINI NEWS
==================================================*/

.mini-news{

    display:flex;

    flex-direction:column;

    gap:20px;

}

.mini-item{

    display:flex;

    gap:18px;

    background:#fff;

    border-radius:18px;

    padding:15px;

    transition:.35s;

    box-shadow:0 10px 25px rgba(0,0,0,.05);

}

.mini-item:hover{

    transform:translateY(-5px);

}

.mini-item img{

    width:110px;

    height:90px;

    object-fit:cover;

    border-radius:12px;

}

.mini-item h5{

    font-size:18px;

    font-weight:700;

}

.mini-item span{

    color:#777;

}

/*==================================================
CATEGORY
==================================================*/

.category-news{

    padding-bottom:20px;

}

.category-filter{

    display:flex;

    flex-wrap:wrap;

    justify-content:center;

    gap:12px;

}

.category-filter button{

    border:none;

    padding:12px 25px;

    border-radius:40px;

    background:white;

    box-shadow:0 10px 25px rgba(0,0,0,.05);

    transition:.3s;

    font-weight:600;

}

.category-filter button:hover{

    background:#0d6efd;

    color:white;

}

.category-filter .active{

    background:#0d6efd;

    color:white;

}

/*==================================================
NEWS GRID
==================================================*/

.news-grid{

    background:#f5f8fd;

}

.news-card{

    background:white;

    border-radius:22px;

    overflow:hidden;

    transition:.35s;

    box-shadow:0 15px 35px rgba(0,0,0,.06);

    height:100%;

}

.news-card:hover{

    transform:translateY(-8px);

}

.news-card img{

    width:100%;

    height:240px;

    object-fit:cover;

}

.news-body{

    padding:25px;

}

.news-body span{

    color:#999;

}

.news-body h5{

    margin:15px 0;

    font-size:22px;

    font-weight:700;

}

.news-body p{

    color:#666;

    line-height:1.7;

}

.news-body a{

    color:#0d6efd;

    text-decoration:none;

    font-weight:700;

}

/*==================================================
VIDEO
==================================================*/

.video-section{

    background:white;

}

.video-section iframe{

    border-radius:20px;

}

/*==================================================
TIMELINE
==================================================*/

.timeline{

    border-left:4px solid #0d6efd;

    margin-left:40px;

}

.timeline-item{

    position:relative;

    margin-bottom:40px;

    padding-left:40px;

}

.timeline-item::before{

    content:"";

    position:absolute;

    left:-12px;

    top:10px;

    width:20px;

    height:20px;

    border-radius:50%;

    background:#0d6efd;

}

.timeline-date{

    display:inline-block;

    background:#0d6efd;

    color:white;

    padding:8px 15px;

    border-radius:30px;

    margin-bottom:10px;

}

/*==================================================
GALERI
==================================================*/

.gallery-section{

    background:#ffffff;

}

.gallery-img{

    width:100%;

    border-radius:20px;

    transition:.35s;

    cursor:pointer;

}

.gallery-img:hover{

    transform:scale(1.05);

}

/*==================================================
NEWSLETTER
==================================================*/

.newsletter{

    padding:80px 0;

}

.newsletter-box{

    background:
    linear-gradient(135deg,#0d6efd,#0b4db7);

    border-radius:30px;

    padding:60px;

    color:white;

    text-align:center;

}

.newsletter-box h2{

    font-size:40px;

    font-weight:800;

}

.newsletter-box p{

    margin:20px auto;

    max-width:650px;

}

.newsletter-box form{

    display:flex;

    justify-content:center;

    max-width:650px;

    margin:auto;

    overflow:hidden;

    border-radius:60px;

    background:white;

}

.newsletter-box input{

    flex:1;

    border:none;

    padding:18px 25px;

    outline:none;

}

.newsletter-box button{

    width:180px;

    border:none;

    background:#071d43;

    color:white;

    font-weight:700;

}

/*==================================================
SECTION TITLE
==================================================*/

.section-title{

    text-align:center;

    margin-bottom:45px;

    font-size:42px;

    font-weight:800;

    color:#071d43;

}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:991px){

.news-hero{

padding-top:140px;

text-align:center;

}

.news-hero h1{

font-size:42px;

}

.headline-card{

height:420px;

margin-bottom:30px;

}

.news-search{

margin:auto;

}

.newsletter-box{

padding:40px 25px;

}

.newsletter-box form{

flex-direction:column;

border-radius:20px;

}

.newsletter-box button{

width:100%;

padding:18px;

}

}

@media(max-width:768px){

.news-hero h1{

font-size:34px;

}

.section-title{

font-size:30px;

}

.headline-overlay h2{

font-size:26px;

}

.news-body h5{

font-size:20px;

}

}

/*======================================
PREMIUM CARD
======================================*/

.news-card,
.mini-item,
.headline-card,
.gallery-img,
.timeline-content{

    transition:all .35s ease;

}

.news-card:hover,
.mini-item:hover{

    transform:translateY(-12px);

    box-shadow:
    0 25px 60px rgba(0,0,0,.12);

}

.news-card:hover img{

    transform:scale(1.08);

}

.news-card img{

    transition:.5s;

}

.news-card{

    position:relative;

    overflow:hidden;

}

.news-card::before{

    content:"";

    position:absolute;

    inset:0;

    padding:2px;

    border-radius:22px;

    background:

    linear-gradient(
    135deg,
    #4db6ff,
    transparent,
    #0d6efd);

    -webkit-mask:

    linear-gradient(#fff 0 0)
    content-box,

    linear-gradient(#fff 0 0);

    -webkit-mask-composite:xor;

            mask-composite:exclude;

    opacity:0;

    transition:.4s;

}

.news-card:hover::before{

    opacity:1;

}

.news-card::after{

    content:"";

    position:absolute;

    top:-150%;

    left:-70%;

    width:50%;

    height:300%;

    transform:rotate(25deg);

    background:

    rgba(255,255,255,.18);

    transition:.8s;

}

.news-card:hover::after{

    left:160%;

}

.news-hero::after{

content:"";

position:absolute;

width:700px;

height:700px;

border-radius:50%;

right:-200px;

top:-200px;

background:

radial-gradient(

rgba(77,182,255,.35),

transparent 70%

);

filter:blur(40px);

animation:glowHero 8s infinite alternate;

}

@keyframes glowHero{

0%{

transform:scale(.9);

}

100%{

transform:scale(1.2);

}

}

.news-search button{

transition:.35s;

}

.news-search button:hover{

background:#0047d5;

box-shadow:

0 10px 30px

rgba(13,110,253,.45);

}

.hero-tag{

position:relative;

overflow:hidden;

}

.hero-tag::after{

content:"";

position:absolute;

left:-40%;

top:0;

width:35%;

height:100%;

background:

rgba(255,255,255,.25);

transform:skew(-25deg);

animation:badge 3s infinite;

}

@keyframes badge{

100%{

left:150%;

}

}

.category-filter button{

position:relative;

overflow:hidden;

}

.category-filter button::before{

content:"";

position:absolute;

inset:0;

background:

linear-gradient(

135deg,

#4db6ff,

#0d6efd

);

opacity:0;

transition:.35s;

z-index:-1;

}

.category-filter button:hover{

color:white;

}

.category-filter button:hover::before{

opacity:1;

}

.gallery-img{

overflow:hidden;

}

.gallery-img:hover{

transform:scale(1.08);

filter:

brightness(1.08)

contrast(1.05);

}

.timeline-item{

opacity:0;

transform:translateX(-50px);

animation:

fadeTimeline .8s forwards;

}

.timeline-item:nth-child(2){

animation-delay:.2s;

}

.timeline-item:nth-child(3){

animation-delay:.4s;

}

.timeline-item:nth-child(4){

animation-delay:.6s;

}

.timeline-item:nth-child(5){

animation-delay:.8s;

}

@keyframes fadeTimeline{

to{

opacity:1;

transform:none;

}

}

.headline-card{

overflow:hidden;

}

.headline-card img{

transition:.6s;

}

.headline-card:hover img{

transform:scale(1.12);

}

.headline-overlay{

transition:.35s;

}

.headline-card:hover .headline-overlay{

background:

linear-gradient(

transparent,

rgba(0,0,0,.92)

);

}

.news-card,
.mini-item,
.newsletter-box{

box-shadow:

0 10px 30px rgba(0,0,0,.05),

0 1px 3px rgba(255,255,255,.4) inset;

}

.news-grid{

position:relative;

overflow:hidden;

}

.news-grid::before{

content:"";

position:absolute;

width:700px;

height:700px;

border-radius:50%;

background:

radial-gradient(

rgba(0,123,255,.06),

transparent

);

left:-200px;

top:-250px;

animation:rotatebg 20s linear infinite;

}

.news-grid::after{

content:"";

position:absolute;

width:600px;

height:600px;

border-radius:50%;

background:

radial-gradient(

rgba(255,0,0,.04),

transparent

);

right:-200px;

bottom:-250px;

animation:rotatebg2 25s linear infinite;

}

@keyframes rotatebg{

to{

transform:rotate(360deg);

}

}

@keyframes rotatebg2{

to{

transform:rotate(-360deg);

}

}

/*======================================
ASPEK PEMDI
======================================*/
.aspect-hero{
padding:200px 0 100px;
background: linear-gradient(rgba(8, 28, 70, .85), rgba(8, 28, 70, .90)), url(../images/bannernew.png);
color:#fff;
position:relative;
overflow:hidden;
}

.aspect-badge{
display:inline-flex;
align-items:center;
gap:10px;
padding:10px 18px;
background:rgba(255,255,255,.15);
border-radius:30px;
margin-bottom:25px;
backdrop-filter:blur(12px);
}

.aspect-hero h1{
font-size:58px;
font-weight:800;
line-height:1.1;
margin-bottom:20px;
}

.aspect-hero p{
font-size:18px;
opacity:.9;
max-width:650px;
}

.aspect-stat{
margin-top:-70px;
position:relative;
z-index:20;
}

.stat-box{
background:#fff;
border-radius:22px;
padding:35px;
text-align:center;
box-shadow:0 20px 50px rgba(0,0,0,.08);
transition:.35s;
height:100%;
}

.stat-box:hover{
transform:translateY(-10px);
}

.stat-box i{
font-size:45px;
color:#0d6efd;
margin-bottom:15px;
}

.stat-box h2{
font-size:42px;
font-weight:800;
}

.indicator-card{
display:flex;
align-items:center;
padding:30px;
background:#fff;
border-radius:22px;
margin-bottom:25px;
box-shadow:0 15px 35px rgba(0,0,0,.05);
transition:.35s;
}

.indicator-card:hover{
transform:translateX(10px);
}

.indicator-icon{
width:75px;
height:75px;
border-radius:20px;
background:#0d6efd;
color:#fff;
display:flex;
justify-content:center;
align-items:center;
font-size:28px;
font-weight:700;
margin-right:25px;
}

.indicator-content{
flex:1;
}

.indicator-status{
padding:10px 20px;
border-radius:30px;
font-weight:600;
}

.success{
background:#e8f9ef;
color:#0f9d58;
}

.warning{
background:#fff5db;
color:#f59e0b;
}

.timeline{
border-left:4px solid #0d6efd;
padding-left:40px;
}

.timeline-item{
position:relative;
margin-bottom:40px;
}

.timeline-item::before{
content:'';
width:18px;
height:18px;
background:#0d6efd;
border-radius:50%;
position:absolute;
left:-50px;
top:8px;
}

.year{
font-size:24px;
font-weight:700;
color:#0d6efd;
}

.timeline-content{
background:#fff;
padding:25px;
margin-top:10px;
border-radius:18px;
box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.doc-card{
background:#fff;
padding:35px;
border-radius:20px;
text-align:center;
box-shadow:0 15px 35px rgba(0,0,0,.05);
transition:.35s;
}

.doc-card:hover{
transform:translateY(-8px);
}

.doc-card i{
font-size:55px;
color:#dc3545;
margin-bottom:15px;
}

.doc-card a{
display:inline-block;
margin-top:20px;
padding:10px 24px;
background:#0d6efd;
color:#fff;
border-radius:10px;
text-decoration:none;
}

.sidebar-dropdown{

margin-bottom:8px;

}

.dropdown-btn{

width:100%;

display:flex;

justify-content:space-between;

align-items:center;

padding:16px 18px;

border:none;

background:#fff;

border-radius:16px;

font-size:16px;

font-weight:600;

cursor:pointer;

transition:.35s;

}

.dropdown-btn>div{

display:flex;

gap:14px;

align-items:center;

}

.dropdown-btn:hover{

background:#edf4ff;

color:#2563eb;

}

.arrow{

transition:.35s;

}

.sidebar-dropdown.active .arrow{

transform:rotate(180deg);

}

.dropdown-content{

max-height:0;

overflow:hidden;

transition:.35s;

padding-left:22px;

}

.sidebar-dropdown.active .dropdown-content{

max-height:300px;

margin-top:8px;

}

.dropdown-content a{

display:block;

padding:12px 16px;

text-decoration:none;

color:#666;

border-left:2px solid #e8eefc;

margin-left:14px;

transition:.3s;

}

.dropdown-content a:hover{

color:#2563eb;

border-color:#2563eb;

padding-left:24px;

}

/*=====================================
    BACK TO TOP BUTTON
=====================================*/

.scroll-top{

    position:fixed;

    right:28px;

    bottom:28px;

    width:62px;

    height:62px;

    border:none;

    border-radius:50%;

    background:rgba(255,255,255,.92);

    backdrop-filter:blur(18px);

    box-shadow:0 15px 40px rgba(0,0,0,.15);

    cursor:pointer;

    display:flex;

    justify-content:center;

    align-items:center;

    opacity:0;

    visibility:hidden;

    transform:translateY(20px);

    transition:.35s ease;

    z-index:999;

}

.scroll-top.show{

    opacity:1;

    visibility:visible;

    transform:translateY(0);

}

.scroll-top:hover{

    transform:translateY(-6px);

    box-shadow:0 18px 45px rgba(37,99,235,.28);

}

.scroll-top i{

    position:absolute;

    font-size:22px;

    color:#2563eb;

    transition:.3s;

}

.scroll-top:hover i{

    transform:translateY(-3px);

}

/* Progress Circle */

.scroll-top svg{

    position:absolute;

    width:62px;

    height:62px;

    transform:rotate(-90deg);

}

.progress-bg{

    fill:none;

    stroke:#e5e7eb;

    stroke-width:5;

}

.progress-bar{

    fill:none;

    stroke:#2563eb;

    stroke-width:5;

    stroke-linecap:round;

    stroke-dasharray:289;

    stroke-dashoffset:289;

    transition:stroke-dashoffset .15s linear;

}

@media(max-width:768px){

.scroll-top{

    width:54px;

    height:54px;

    right:18px;

    bottom:18px;

}

.scroll-top svg{

    width:54px;

    height:54px;

}

.scroll-top i{

    font-size:20px;

}

}