/*==================================================
LANDING PAGE
SI-PENA BADAN
==================================================*/

.landing{

    position:relative;

    min-height:100vh;

    background:var(--background);

    overflow:hidden;

}

.landing::before{

    content:"";

    position:absolute;

    inset:0;

    background-image:

        linear-gradient(rgba(148,163,184,.10) 1px,transparent 1px),

        linear-gradient(90deg,rgba(148,163,184,.10) 1px,transparent 1px);

    background-size:48px 48px;

    opacity:.35;

    pointer-events:none;

}

.hero-aurora{

    position:absolute;

    border-radius:50%;

    filter:blur(120px);

    opacity:.22;

    pointer-events:none;

}

.hero-aurora-1{

    width:420px;

    height:420px;

    background:#60A5FA;

    top:-150px;

    right:-120px;

}

.hero-aurora-2{

    width:360px;

    height:360px;

    background:#C084FC;

    bottom:-120px;

    left:-100px;

}

.hero{

    min-height:100vh;

    display:flex;

    align-items:center;

    padding:90px 0;

    position:relative;

}

.hero-grid{

    display:grid;

    grid-template-columns:

    minmax(0,1.15fr)

    minmax(360px,.85fr);

    gap:80px;

    align-items:center;

}

.hero-government{

    display:block;

    margin-top:25px;

    color:var(--muted);

    font-size:15px;

    font-weight:600;

}

.hero-title{

    margin-top:20px;

    font-size:72px;

    font-weight:800;

    line-height:1.05;

    color:var(--dark);

}

.hero-title span{

    color:var(--primary);

}

.hero-description{

    max-width:560px;

    margin-top:28px;

    font-size:18px;

    color:var(--muted);

    line-height:1.9;

}

.hero-action{

    margin-top:40px;

}

.hero-stats{

    display:grid;
    grid-template-columns:repeat(3, 1fr);

    gap:20px;

    margin-top:30px;

    flex-wrap:wrap;

}

.hero-stat{

    flex:1;

    min-width:180px;

    display:flex;

    align-items:center;

    gap:16px;

    padding:20px;
    min-height:100px;

    border-radius:18px;

    background:rgba(255,255,255,.72);

    border:1px solid rgba(226,232,240,.8);

    backdrop-filter:blur(16px);

    transition:var(--transition);

}

.hero-stat-content{

    flex:1;

    min-width:0;

}

.hero-stat-content strong{

    white-space:nowrap;

}

.hero-stat-content span{

    display:block;

}

.hero-stat-text{

    flex:1;

    min-width:0;

}

.hero-stat-text strong{

    display:block;

    font-size:1.15rem;

    font-weight:700;

    color:var(--text);

    margin-bottom:4px;

}

.hero-stat-text span{

    display:block;

    font-size:.95rem;

    color:var(--text-soft);

    line-height:1.5;

}

.hero-stat:hover{

    transform:translateY(-4px);

    box-shadow:var(--shadow-md);

}

.hero-stat-icon{

    width:48px;

    height:48px;

    border-radius:14px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:linear-gradient(135deg,var(--primary),#4f46e5);

    color:#fff;

    font-size:20px;

    flex-shrink:0;

}

.hero-stat strong{

    display:block;

    font-size:14px;

    font-weight:700;

    color:var(--text);

    white-space:nowrap;

}

.hero-stat span{

    display:block;

    margin-top:3px;

    font-size:13px;

    color:var(--text-soft);

    line-height:1.4;

}

.hero-stats .stat-card{

    flex:1;

}

.hero-visual{

    display:flex;

    justify-content:center;

}

.preview-card{

    width:100%;

    max-width:420px;

    background:#fff;

    border-radius:30px;

    border:1px solid var(--border);

    box-shadow:var(--shadow-lg);

    overflow:hidden;

    transition:.35s;

}

.preview-card:hover{

    transform:translateY(-6px);

    box-shadow:

    0 30px 70px rgba(15,23,42,.12);

}

.preview-logo{

    padding:45px;

    display:flex;

    justify-content:center;

}

.preview-logo img{

    width:110px;

}

.preview-divider{

    height:1px;

    background:var(--border);

}

.preview-item{

    display:flex;

    align-items:center;

    gap:18px;

    padding:22px 28px;

    transition:.3s;

    border-bottom:1px solid var(--border);

}

.preview-item:hover{

    background:#F8FAFC;

}

.preview-item i{

    width:46px;

    height:46px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:14px;

    background:#EFF6FF;

    color:var(--primary);

    font-size:20px;

}

.preview-item strong{

    display:block;

    font-size:16px;

    color:var(--dark);

}

.preview-item small{

    color:var(--muted);

}

.landing-footer{

    padding:30px;

    text-align:center;

    color:var(--muted);

    font-size:14px;

}