/* =============================================================
   SMANJA WEB v4.0.0 — BERSERI Institutional Edition
   Public theme override for SMA Negeri 1 Jalaksana
   Scope: front-end only. No CMS data/CRUD logic is changed.
============================================================= */

:root{
    --sj-navy-950:#071d37;
    --sj-navy-900:#0b2f5b;
    --sj-navy-800:#123f73;
    --sj-blue-700:#155ca3;
    --sj-blue-600:#1d72c7;
    --sj-blue-100:#eaf3fb;
    --sj-blue-50:#f5f9fd;
    --sj-gold-600:#b9861c;
    --sj-gold-500:#d4aa45;
    --sj-gold-300:#ecd38d;
    --sj-ink:#17263a;
    --sj-body:#536579;
    --sj-muted:#7a8999;
    --sj-line:#dfe8f0;
    --sj-soft:#f4f7fa;
    --sj-white:#fff;
    --sj-success:#16845b;
    --sj-radius-sm:10px;
    --sj-radius:16px;
    --sj-radius-lg:24px;
    --sj-shadow-sm:0 8px 25px rgba(8,45,82,.07);
    --sj-shadow:0 18px 48px rgba(8,45,82,.11);
    --sj-shadow-lg:0 28px 74px rgba(8,45,82,.16);
    --sj-container:1200px;
}

html{
    scroll-behavior:smooth;
    background:#fff;
}

body.cms-datagoe{
    color:var(--sj-ink)!important;
    background:#f7f9fb!important;
    font-family:Aptos,"Segoe UI Variable","Segoe UI",Arial,sans-serif!important;
    font-size:15px;
    line-height:1.65;
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
}

body.cms-datagoe::before{
    display:none!important;
}

body.cms-datagoe a{
    text-decoration:none;
}

body.cms-datagoe a:hover{
    text-decoration:none;
}

body.cms-datagoe img{
    max-width:100%;
}

/* ---------- accessibility / focus ---------- */
body.cms-datagoe a:focus-visible,
body.cms-datagoe button:focus-visible,
body.cms-datagoe input:focus-visible,
body.cms-datagoe select:focus-visible,
body.cms-datagoe textarea:focus-visible{
    outline:3px solid rgba(29,114,199,.3)!important;
    outline-offset:3px;
}

/* =============================================================
   GLOBAL CONTAINERS & TYPOGRAPHY
============================================================= */
body.cms-datagoe .container,
body.cms-datagoe .container-lg{
    max-width:var(--sj-container);
}

body.cms-datagoe h1,
body.cms-datagoe h2,
body.cms-datagoe h3,
body.cms-datagoe h4,
body.cms-datagoe h5,
body.cms-datagoe h6{
    color:var(--sj-navy-950);
    font-family:Aptos,"Segoe UI Variable","Segoe UI",Arial,sans-serif!important;
    font-weight:750;
    letter-spacing:-.025em;
}

body.cms-datagoe p{
    color:var(--sj-body);
}

body.cms-datagoe .text-muted{
    color:var(--sj-muted)!important;
}

body.cms-datagoe .text-primary{
    color:var(--sj-blue-700)!important;
}

body.cms-datagoe .btn{
    border-radius:10px!important;
    font-weight:700;
    letter-spacing:0;
    box-shadow:none!important;
    transition:.2s ease;
}

body.cms-datagoe .btn-primary{
    border-color:var(--sj-navy-900)!important;
    background:var(--sj-navy-900)!important;
    color:#fff!important;
}

body.cms-datagoe .btn-primary:hover{
    border-color:var(--sj-blue-700)!important;
    background:var(--sj-blue-700)!important;
    transform:translateY(-1px);
}

body.cms-datagoe .btn-warning{
    border-color:var(--sj-gold-500)!important;
    background:var(--sj-gold-500)!important;
    color:var(--sj-navy-950)!important;
}

body.cms-datagoe .btn-outline-primary{
    border-color:var(--sj-blue-700)!important;
    color:var(--sj-blue-700)!important;
    background:#fff!important;
}

body.cms-datagoe .btn-outline-primary:hover{
    color:#fff!important;
    background:var(--sj-blue-700)!important;
}

/* =============================================================
   HEADER / NAVIGATION
============================================================= */
body.cms-datagoe nav.navbar.fixed-top{
    border:0!important;
    background:rgba(255,255,255,.98)!important;
    box-shadow:0 7px 30px rgba(7,29,55,.08)!important;
    backdrop-filter:saturate(140%) blur(12px);
}

body.cms-datagoe .navbar-primary.header-top{
    min-height:76px;
    padding:10px max(20px,calc((100vw - var(--sj-container))/2))!important;
    border-bottom:1px solid rgba(223,232,240,.9);
    background:#fff!important;
    overflow:visible!important;
}

body.cms-datagoe .navbar-primary.header-top::before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    left:0;
    height:4px;
    background:linear-gradient(90deg,var(--sj-navy-900) 0 37%,var(--sj-blue-600) 37% 69%,var(--sj-gold-500) 69% 86%,#be2e3a 86% 100%);
}

body.cms-datagoe .header-top .navbar-brand,
body.cms-datagoe .navbar-primary .navbar-brand{
    gap:12px!important;
    color:var(--sj-navy-950)!important;
}

body.cms-datagoe .header-top .logo,
body.cms-datagoe .navbar-primary .logo{
    width:52px!important;
    height:52px!important;
    padding:3px;
    border-radius:12px;
    object-fit:contain;
    background:#fff;
}

body.cms-datagoe .school-brand-inline{
    gap:11px!important;
}

body.cms-datagoe .school-name{
    color:var(--sj-navy-950)!important;
    font-size:1.28rem!important;
    font-weight:800!important;
    letter-spacing:.01em!important;
    text-transform:uppercase;
}

body.cms-datagoe .typing-cursor{
    display:none!important;
}

body.cms-datagoe .school-divider{
    height:28px!important;
    background:var(--sj-line)!important;
}

body.cms-datagoe .school-tagline{
    color:var(--sj-body)!important;
    font-size:.72rem!important;
    font-weight:700!important;
    letter-spacing:.08em!important;
}

body.cms-datagoe .header-right{
    gap:7px!important;
}

body.cms-datagoe .header-right .btn{
    width:35px!important;
    height:35px!important;
    border:1px solid var(--sj-line)!important;
    border-radius:10px!important;
    background:#fff!important;
    color:var(--sj-navy-900)!important;
}

body.cms-datagoe .header-right .btn:hover{
    border-color:var(--sj-blue-700)!important;
    color:#fff!important;
    background:var(--sj-blue-700)!important;
}

body.cms-datagoe .header-right .btn-warning{
    border-color:var(--sj-gold-500)!important;
    background:var(--sj-gold-500)!important;
    color:var(--sj-navy-950)!important;
}

body.cms-datagoe .navbar-secondary{
    min-height:48px;
    padding:0 max(20px,calc((100vw - var(--sj-container))/2))!important;
    border:0!important;
    border-bottom:1px solid var(--sj-line)!important;
    background:#fff!important;
}

body.cms-datagoe .navbar-secondary .navbar-nav{
    gap:2px!important;
}

body.cms-datagoe .navbar-secondary .nav-item{
    margin:0!important;
}

body.cms-datagoe .navbar-secondary .nav-link{
    min-height:47px;
    padding:0 12px!important;
    display:flex!important;
    align-items:center!important;
    gap:7px;
    border:0!important;
    border-radius:0!important;
    color:#33485d!important;
    background:transparent!important;
    font-size:.82rem!important;
    font-weight:700!important;
    position:relative;
}

body.cms-datagoe .navbar-secondary .nav-link::after{
    content:"";
    position:absolute;
    right:11px;
    bottom:0;
    left:11px;
    height:3px;
    border-radius:3px 3px 0 0;
    background:var(--sj-gold-500);
    transform:scaleX(0);
    transition:.2s ease;
}

body.cms-datagoe .navbar-secondary .dropdown-toggle::after{
    position:static;
    width:0;
    height:0;
    margin-left:2px;
    border-top:.28em solid;
    border-right:.28em solid transparent;
    border-left:.28em solid transparent;
    background:transparent!important;
    transform:none!important;
}

body.cms-datagoe .navbar-secondary .nav-link:hover,
body.cms-datagoe .navbar-secondary .nav-link:focus,
body.cms-datagoe .navbar-secondary .nav-item.active>.nav-link{
    color:var(--sj-navy-900)!important;
    background:var(--sj-blue-50)!important;
}

body.cms-datagoe .navbar-secondary .nav-link:hover::after,
body.cms-datagoe .navbar-secondary .nav-item.active>.nav-link::after{
    transform:scaleX(1);
}

body.cms-datagoe .navbar-secondary .nav-link i{
    color:var(--sj-blue-700)!important;
    font-size:.82rem;
}

body.cms-datagoe .navbar-secondary .dropdown-menu{
    min-width:220px;
    padding:8px;
    margin-top:0!important;
    border:1px solid var(--sj-line)!important;
    border-top:3px solid var(--sj-blue-700)!important;
    border-radius:0 0 14px 14px!important;
    background:#fff!important;
    box-shadow:var(--sj-shadow)!important;
}

body.cms-datagoe .navbar-secondary .dropdown-item{
    padding:9px 11px!important;
    border-radius:8px;
    color:#41566a!important;
    font-size:.8rem!important;
    font-weight:600;
}

body.cms-datagoe .navbar-secondary .dropdown-item:hover{
    color:var(--sj-navy-900)!important;
    background:var(--sj-blue-50)!important;
}

body.cms-datagoe .navbar-toggler{
    width:42px;
    height:42px;
    padding:0!important;
    border:1px solid var(--sj-line)!important;
    border-radius:10px!important;
    color:var(--sj-navy-900)!important;
    background:#fff!important;
}

/* navbar height offset */
body.home-page #content,
body.cms-datagoe #content{
    padding-top:125px!important;
}

/* =============================================================
   MAIN SLIDER
============================================================= */
body.cms-datagoe .home-main-slider{
    margin:0;
    background:var(--sj-navy-950)!important;
}

body.cms-datagoe .home-main-slider .glide__slide{
    height:clamp(420px,58vw,650px)!important;
}

body.cms-datagoe .home-main-slider .img-cover{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
}

body.cms-datagoe .home-main-slider .main-slider__overlay{
    background:
        linear-gradient(90deg,rgba(7,29,55,.58),rgba(7,29,55,.12) 58%,rgba(7,29,55,.06)),
        linear-gradient(0deg,rgba(7,29,55,.46),transparent 48%)!important;
}

body.cms-datagoe .home-main-slider::after{
    height:5px!important;
    background:linear-gradient(90deg,var(--sj-navy-900),var(--sj-blue-600),var(--sj-gold-500),#be2e3a)!important;
}

/* =============================================================
   RUNNING NEWS
============================================================= */
body.cms-datagoe #pengumumanx.pengumuman{
    min-height:54px!important;
    padding:0 max(20px,calc((100vw - var(--sj-container))/2))!important;
    border-radius:0!important;
    background:#fff!important;
    color:var(--sj-ink)!important;
    box-shadow:none!important;
    border-bottom:1px solid var(--sj-line)!important;
}

body.cms-datagoe #pengumumanx .re-info{
    min-width:35px!important;
    height:35px!important;
    margin-right:12px!important;
    border:0!important;
    border-radius:10px!important;
    background:var(--sj-navy-900)!important;
    color:#fff!important;
}

body.cms-datagoe #pengumumanx .marquee-berita,
body.cms-datagoe #pengumumanx .marquee-berita span.pointer{
    color:#3b5065!important;
    font-size:.8rem!important;
    font-weight:650!important;
}

body.cms-datagoe #pengumumanx .marquee-berita span.pointer::before{
    color:var(--sj-gold-600)!important;
}

body.cms-datagoe #pengumumanx .marquee-berita span.pointer:hover{
    color:var(--sj-blue-700)!important;
}

/* =============================================================
   TOP INFORMATION / SCHEDULE / FEATURED NEWS
============================================================= */
body.cms-datagoe section>.container.pb-3{
    padding-top:42px!important;
    padding-bottom:62px!important;
}

body.cms-datagoe .card.border-0.shadow-sm.mb-4.p-3.bg-light{
    padding:0!important;
    overflow:hidden;
    border:1px solid var(--sj-line)!important;
    border-radius:var(--sj-radius)!important;
    background:#fff!important;
    box-shadow:var(--sj-shadow-sm)!important;
}

body.cms-datagoe .jadwal-container{
    min-height:96px!important;
}

body.cms-datagoe .jadwal-container>.header-box{
    width:132px!important;
    min-width:132px!important;
    margin:0 14px 0 0!important;
    padding:18px!important;
    align-self:stretch;
    border-radius:0!important;
    background:linear-gradient(145deg,var(--sj-navy-950),var(--sj-navy-800))!important;
    color:#fff!important;
}

body.cms-datagoe .jadwal-container>.header-box::before{
    color:var(--sj-gold-300)!important;
}

body.cms-datagoe .jadwal-items>div{
    min-width:145px!important;
    padding:8px 15px!important;
    border-right:1px solid var(--sj-line)!important;
}

body.cms-datagoe .jadwal-items .icon-box{
    width:38px!important;
    height:38px!important;
    flex:0 0 38px!important;
    border-radius:10px!important;
    background:var(--sj-blue-50)!important;
    color:var(--sj-blue-700)!important;
}

body.cms-datagoe .jadwal-items small{
    color:var(--sj-muted)!important;
    font-size:.69rem!important;
}

body.cms-datagoe .jadwal-items strong{
    color:var(--sj-navy-950)!important;
    font-size:.88rem!important;
}

body.cms-datagoe #posts-slider.banner-elegant{
    border:1px solid var(--sj-line)!important;
    border-radius:var(--sj-radius-lg)!important;
    box-shadow:var(--sj-shadow)!important;
}

body.cms-datagoe #posts-slider .banner-img{
    height:500px!important;
}

body.cms-datagoe #posts-slider .banner-overlay{
    background:linear-gradient(to top,rgba(7,29,55,.95),rgba(7,29,55,.32) 55%,rgba(7,29,55,.02))!important;
}

body.cms-datagoe #posts-slider .banner-content{
    padding:32px 34px 34px!important;
}

body.cms-datagoe #posts-slider .banner-title{
    max-width:720px;
    font-size:clamp(1.35rem,2.1vw,2rem)!important;
    line-height:1.35!important;
}

body.cms-datagoe #posts-slider .banner-desc{
    color:rgba(255,255,255,.78)!important;
    font-size:.78rem!important;
}

body.cms-datagoe #posts-slider .btn-light{
    border:0!important;
    border-radius:10px!important;
    background:var(--sj-gold-500)!important;
    color:var(--sj-navy-950)!important;
    font-weight:800!important;
}

/* =============================================================
   HEADMASTER + CALENDAR
============================================================= */
body.cms-datagoe .headmaster-card,
body.cms-datagoe .kalender-card{
    border:1px solid var(--sj-line)!important;
    border-radius:var(--sj-radius)!important;
    background:#fff!important;
    box-shadow:var(--sj-shadow-sm)!important;
}

body.cms-datagoe .headmaster-card .card-header{
    min-height:56px!important;
    padding:0 18px!important;
    border-bottom:1px solid var(--sj-line)!important;
    background:linear-gradient(90deg,var(--sj-blue-50),#fff)!important;
    color:var(--sj-navy-900)!important;
}

body.cms-datagoe .headmaster-card .card-header small{
    color:var(--sj-gold-600)!important;
}

body.cms-datagoe .headmaster-card .card-body{
    padding:24px 20px!important;
}

body.cms-datagoe .headmaster-photo-wrapper{
    width:140px!important;
    height:140px!important;
    background:linear-gradient(135deg,var(--sj-blue-700),var(--sj-gold-500))!important;
}

body.cms-datagoe .headmaster-name{
    color:var(--sj-navy-950)!important;
    font-size:1rem!important;
}

body.cms-datagoe .headmaster-desc{
    color:var(--sj-body)!important;
    font-size:.78rem!important;
    line-height:1.75!important;
}

body.cms-datagoe .kalender-header{
    background:var(--sj-navy-900)!important;
    color:#fff!important;
}

body.cms-datagoe .kalender td.today{
    background:var(--sj-blue-700)!important;
    color:#fff!important;
}

/* =============================================================
   STUDENT INFOGRAPHICS
============================================================= */
body.cms-datagoe .counter-section{
    padding:66px 0!important;
    background:
        radial-gradient(circle at 90% 10%,rgba(212,170,69,.18),transparent 26%),
        linear-gradient(135deg,var(--sj-navy-950),var(--sj-navy-800))!important;
}

body.cms-datagoe .counter-title{
    color:#fff!important;
    font-size:1.5rem!important;
    font-weight:800!important;
}

body.cms-datagoe .counter-title span{
    color:var(--sj-gold-300)!important;
}

body.cms-datagoe .counter-box{
    min-height:145px!important;
    padding:20px!important;
    border:1px solid rgba(255,255,255,.16)!important;
    border-radius:var(--sj-radius)!important;
    background:rgba(255,255,255,.08)!important;
    box-shadow:none!important;
}

body.cms-datagoe .counter-box .icon{
    background:var(--sj-gold-500)!important;
    color:var(--sj-navy-950)!important;
}

body.cms-datagoe .counter-box h3,
body.cms-datagoe .counter-box p,
body.cms-datagoe .counter-box-footer{
    color:#fff!important;
}

body.cms-datagoe .counter-box p{
    color:rgba(255,255,255,.72)!important;
}

body.cms-datagoe .counter-box-footer{
    opacity:.78;
}

/* =============================================================
   EDITORIAL NEWS
============================================================= */
body.cms-datagoe .editorial-section{
    padding:78px 0!important;
    background:#fff!important;
}

body.cms-datagoe .editorial-container{
    max-width:var(--sj-container)!important;
    padding:0 15px!important;
}

body.cms-datagoe .editorial-header{
    margin-bottom:28px!important;
}

body.cms-datagoe .editorial-title{
    color:var(--sj-navy-950)!important;
    font-size:clamp(1.6rem,2.7vw,2.25rem)!important;
    font-weight:800!important;
    letter-spacing:-.035em!important;
}

body.cms-datagoe .editorial-title::before{
    content:"INFORMASI TERKINI";
    display:block;
    margin-bottom:7px;
    color:var(--sj-blue-700);
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.16em;
}

body.cms-datagoe .editorial-nav a{
    padding:9px 14px;
    border:1px solid var(--sj-line);
    border-radius:9px;
    color:var(--sj-blue-700)!important;
    background:#fff;
    font-size:.72rem;
    font-weight:800;
}

body.cms-datagoe .editorial-grid{
    gap:22px!important;
}

body.cms-datagoe .featured-news,
body.cms-datagoe .right-box{
    overflow:hidden;
    border:1px solid var(--sj-line)!important;
    border-radius:var(--sj-radius-lg)!important;
    background:#fff!important;
    box-shadow:var(--sj-shadow-sm)!important;
}

body.cms-datagoe .featured-thumb img{
    height:340px!important;
    object-fit:cover;
}

body.cms-datagoe .featured-body{
    padding:24px 25px 18px!important;
}

body.cms-datagoe .featured-body h2{
    margin-bottom:9px!important;
    color:var(--sj-navy-950)!important;
    font-size:1.42rem!important;
    line-height:1.35!important;
}

body.cms-datagoe .line-clamp{
    color:var(--sj-body)!important;
    font-size:.82rem!important;
    line-height:1.7;
}

body.cms-datagoe .sub-row{
    gap:12px!important;
    padding:0 20px 20px!important;
}

body.cms-datagoe .sub-card{
    padding:11px!important;
    border:1px solid var(--sj-line);
    border-radius:12px!important;
    background:var(--sj-blue-50)!important;
}

body.cms-datagoe .sub-card:hover{
    border-color:#c8d9e8;
    background:#fff!important;
    box-shadow:var(--sj-shadow-sm)!important;
}

body.cms-datagoe .sub-card h6{
    color:var(--sj-navy-950)!important;
    line-height:1.45;
}

body.cms-datagoe .right-box{
    padding:22px!important;
}

body.cms-datagoe .right-box h5{
    color:var(--sj-navy-950)!important;
    font-weight:800!important;
}

body.cms-datagoe .right-divider{
    height:3px!important;
    width:48px!important;
    background:linear-gradient(90deg,var(--sj-gold-500),var(--sj-blue-700))!important;
}

body.cms-datagoe .news-row{
    padding:11px!important;
    border:1px solid transparent;
    border-radius:12px!important;
}

body.cms-datagoe .news-row:hover{
    border-color:var(--sj-line);
    background:var(--sj-blue-50)!important;
}

body.cms-datagoe .news-row h6{
    color:var(--sj-ink)!important;
    line-height:1.45;
}

/* =============================================================
   SCHOOL PROFILE — second hero is deliberately compact in v4
============================================================= */
body.cms-datagoe .hero-section{
    min-height:auto!important;
    padding:86px 0!important;
    background:
        linear-gradient(90deg,rgba(7,29,55,.94),rgba(11,47,91,.82) 55%,rgba(11,47,91,.58)),
        url('../img/hero-sman1-jalaksana.jpg') center/cover no-repeat!important;
}

body.cms-datagoe .hero-section::before{
    background:
        radial-gradient(circle at 90% 20%,rgba(236,211,141,.2),transparent 35%),
        linear-gradient(180deg,transparent,rgba(7,29,55,.12))!important;
}

body.cms-datagoe .hero-container{
    max-width:var(--sj-container)!important;
    grid-template-columns:minmax(0,1.1fr) minmax(280px,.65fr)!important;
    gap:55px!important;
}

body.cms-datagoe .hero-badge{
    padding:7px 14px!important;
    margin-bottom:16px!important;
    border-color:rgba(236,211,141,.34)!important;
    background:rgba(236,211,141,.12)!important;
    color:var(--sj-gold-300)!important;
    font-size:.68rem!important;
}

body.cms-datagoe .hero-title{
    max-width:760px;
    margin-bottom:13px!important;
    color:#fff!important;
    font-size:clamp(2.15rem,4.1vw,3.6rem)!important;
    font-weight:820!important;
    line-height:1.02!important;
}

body.cms-datagoe .hero-title span{
    color:var(--sj-gold-300)!important;
}

body.cms-datagoe .hero-desc{
    max-width:650px!important;
    margin-bottom:27px!important;
    color:rgba(255,255,255,.82)!important;
    font-size:.96rem!important;
    line-height:1.75!important;
}

body.cms-datagoe .hero-desc strong{
    color:#fff!important;
}

body.cms-datagoe .hero-action{
    padding:12px 22px!important;
    border-radius:10px!important;
    background:var(--sj-gold-500)!important;
    color:var(--sj-navy-950)!important;
    box-shadow:none!important;
    font-size:.78rem;
}

body.cms-datagoe .hero-image-wrap{
    align-items:center;
}

body.cms-datagoe .hero-image{
    width:300px!important;
    max-width:100%!important;
    padding:14px!important;
    border:1px solid rgba(255,255,255,.22);
    border-radius:26px!important;
    background:rgba(255,255,255,.1)!important;
    box-shadow:0 18px 50px rgba(0,0,0,.26)!important;
    animation:none!important;
}

/* =============================================================
   JOURNEY / TIMELINE
============================================================= */
body.cms-datagoe .timeline-section{
    padding:86px 0!important;
    background:#f6f8fb!important;
}

body.cms-datagoe .premium-title-wrap{
    max-width:780px!important;
    margin:0 auto 55px!important;
}

body.cms-datagoe .premium-subtitle{
    color:var(--sj-blue-700)!important;
    font-size:.68rem!important;
    font-weight:800!important;
    letter-spacing:.16em!important;
}

body.cms-datagoe .premium-title{
    color:var(--sj-navy-950)!important;
    font-size:clamp(1.8rem,3.3vw,2.7rem)!important;
    line-height:1.2!important;
}

body.cms-datagoe .premium-divider{
    background:linear-gradient(90deg,var(--sj-blue-700),var(--sj-gold-500))!important;
}

body.cms-datagoe .premium-desc{
    color:var(--sj-body)!important;
    font-size:.88rem!important;
    line-height:1.75!important;
}

body.cms-datagoe .timeline-box::before{
    background:linear-gradient(to bottom,var(--sj-blue-700),var(--sj-gold-500))!important;
}

body.cms-datagoe .timeline-icon{
    background:var(--sj-navy-900)!important;
    color:var(--sj-gold-300)!important;
    box-shadow:0 12px 30px rgba(7,29,55,.18)!important;
}

body.cms-datagoe .timeline-icon::after{
    border-color:rgba(212,170,69,.45)!important;
}

body.cms-datagoe .timeline-left h5{
    color:var(--sj-navy-950)!important;
    font-size:.95rem!important;
}

body.cms-datagoe .timeline-left small{
    color:var(--sj-muted)!important;
}

body.cms-datagoe .timeline-right{
    padding:26px 30px!important;
    border:1px solid var(--sj-line);
    border-radius:var(--sj-radius)!important;
    box-shadow:var(--sj-shadow-sm)!important;
}

body.cms-datagoe .timeline-right p{
    color:var(--sj-body)!important;
    font-size:.84rem!important;
    line-height:1.75!important;
}

/* =============================================================
   BERSERI
============================================================= */
body.cms-datagoe .berseri-section{
    padding:78px 0!important;
    background:
        radial-gradient(circle at top right,rgba(212,170,69,.16),transparent 25%),
        linear-gradient(135deg,var(--sj-navy-950),var(--sj-navy-800))!important;
}

body.cms-datagoe .berseri-title{
    margin-bottom:34px!important;
    color:#fff!important;
    font-size:clamp(1.45rem,2.6vw,2rem)!important;
    letter-spacing:.04em!important;
}

body.cms-datagoe .berseri-title span{
    color:var(--sj-gold-300)!important;
}

body.cms-datagoe .berseri-row{
    gap:14px!important;
}

body.cms-datagoe .berseri-card{
    min-height:235px!important;
    padding:25px 17px!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:var(--sj-radius)!important;
    color:#fff!important;
    background:rgba(255,255,255,.075)!important;
    box-shadow:none!important;
    backdrop-filter:blur(8px);
}

body.cms-datagoe .berseri-card::before{
    height:4px!important;
    background:linear-gradient(90deg,var(--sj-blue-600),var(--sj-gold-500))!important;
}

body.cms-datagoe .berseri-card:hover{
    transform:translateY(-5px)!important;
    background:rgba(255,255,255,.11)!important;
    box-shadow:none!important;
}

body.cms-datagoe .berseri-icon{
    width:54px;
    height:54px;
    margin:0 auto 15px!important;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    color:var(--sj-navy-950)!important;
    background:var(--sj-gold-500)!important;
    font-size:1.35rem!important;
}

body.cms-datagoe .berseri-card h5{
    color:#fff!important;
    font-size:.92rem!important;
}

body.cms-datagoe .berseri-card p{
    color:rgba(255,255,255,.72)!important;
    font-size:.75rem!important;
    line-height:1.7!important;
}

/* =============================================================
   GALLERY / QUOTE / SERVICES
============================================================= */
body.cms-datagoe .galeri-ultra{
    padding:76px 0!important;
    background:#fff!important;
}

body.cms-datagoe .galeri-ultra .section-title h5{
    color:var(--sj-navy-950)!important;
    font-size:clamp(1.5rem,2.6vw,2.1rem)!important;
}

body.cms-datagoe .galeri-ultra .lihat-semua{
    color:var(--sj-blue-700)!important;
}

body.cms-datagoe .card-foto{
    border:1px solid var(--sj-line)!important;
    border-radius:var(--sj-radius)!important;
    box-shadow:var(--sj-shadow-sm)!important;
}

body.cms-datagoe .card-foto img{
    height:250px!important;
}

body.cms-datagoe .bg-white>.container.py-4{
    padding-top:60px!important;
    padding-bottom:68px!important;
}

body.cms-datagoe .bg-white h5.text-center{
    color:var(--sj-navy-950)!important;
    font-size:1rem!important;
}

body.cms-datagoe .bg-white h5.text-center .text-info{
    color:var(--sj-gold-600)!important;
}

body.cms-datagoe .bg-white .alert-info{
    border:1px solid var(--sj-line)!important;
    border-left:4px solid var(--sj-gold-500)!important;
    border-radius:0 13px 13px 0!important;
    color:var(--sj-body)!important;
    background:var(--sj-blue-50)!important;
}

body.cms-datagoe .home-services__item-col{
    min-height:145px!important;
}

body.cms-datagoe .home-services__item{
    min-height:135px!important;
    border:1px solid var(--sj-line)!important;
    border-radius:14px!important;
    color:var(--sj-ink)!important;
    background:#fff!important;
    box-shadow:none!important;
}

body.cms-datagoe .home-services__item:hover{
    border-color:#c5d9eb!important;
    color:var(--sj-blue-700)!important;
    background:var(--sj-blue-50)!important;
    transform:translateY(-3px)!important;
}

body.cms-datagoe .home-services__item span{
    font-size:.72rem!important;
}

/* =============================================================
   PUBLIC INNER PAGES
============================================================= */
body.cms-datagoe .page_main_wrapper,
body.cms-datagoe main.page_main_wrapper{
    padding:42px 0 70px;
}

body.cms-datagoe .page_main_wrapper .card,
body.cms-datagoe main .card{
    border:1px solid var(--sj-line);
    border-radius:var(--sj-radius);
    box-shadow:var(--sj-shadow-sm);
}

body.cms-datagoe .page_main_wrapper .card-header,
body.cms-datagoe main .card-header{
    border-bottom:1px solid var(--sj-line);
    background:#fff;
    color:var(--sj-navy-950);
    font-weight:750;
}

body.cms-datagoe .breadcrumb{
    padding:12px 15px;
    border:1px solid var(--sj-line);
    border-radius:12px;
    background:#fff;
    color:var(--sj-muted);
}

body.cms-datagoe .form-control,
body.cms-datagoe select.form-control,
body.cms-datagoe textarea.form-control{
    min-height:44px;
    border:1px solid #d7e1ea!important;
    border-radius:10px!important;
    color:var(--sj-ink)!important;
    background:#fff!important;
    box-shadow:none!important;
}

body.cms-datagoe .form-control:focus{
    border-color:var(--sj-blue-600)!important;
    box-shadow:0 0 0 3px rgba(29,114,199,.1)!important;
}

body.cms-datagoe .table{
    color:var(--sj-ink);
    background:#fff;
}

body.cms-datagoe .table thead th{
    border-bottom:1px solid var(--sj-line)!important;
    color:var(--sj-navy-900);
    background:#f5f8fb;
    font-size:.76rem;
    font-weight:800;
}

body.cms-datagoe .table td{
    border-top:1px solid #edf2f6!important;
    vertical-align:middle;
}

body.cms-datagoe .pagination .page-link{
    margin:0 2px;
    border:1px solid var(--sj-line);
    border-radius:8px!important;
    color:var(--sj-navy-900);
    background:#fff;
}

body.cms-datagoe .pagination .active .page-link{
    border-color:var(--sj-navy-900);
    background:var(--sj-navy-900);
    color:#fff;
}

/* =============================================================
   WELCOME MODAL
============================================================= */
body.cms-datagoe #welcomeModal{
    background:rgba(7,29,55,.78)!important;
    backdrop-filter:blur(8px)!important;
}

body.cms-datagoe .premium-modal{
    border-radius:22px!important;
}

body.cms-datagoe .premium-left{
    background:linear-gradient(145deg,var(--sj-navy-950),var(--sj-blue-700))!important;
}

body.cms-datagoe .premium-left::after{
    background:var(--sj-gold-500)!important;
}

body.cms-datagoe .premium-right h2{
    color:var(--sj-navy-950)!important;
}

body.cms-datagoe .premium-right p{
    color:var(--sj-body)!important;
}

body.cms-datagoe .btn-enter{
    background:var(--sj-navy-900)!important;
}

/* =============================================================
   HOME FOOTER CONTENT + GLOBAL FOOTER
============================================================= */
body.cms-datagoe footer[style]{
    color:rgba(255,255,255,.76)!important;
    background:
        radial-gradient(circle at 92% 12%,rgba(212,170,69,.15),transparent 22%),
        linear-gradient(145deg,var(--sj-navy-950),#041426)!important;
}

body.cms-datagoe footer[style] h4{
    color:#fff!important;
}

body.cms-datagoe footer[style] .media-left{
    color:var(--sj-gold-300)!important;
}

body.cms-datagoe footer[style] .text-primary{
    color:rgba(255,255,255,.76)!important;
}

body.cms-datagoe footer.bg-dark{
    margin-top:0!important;
    border-top:4px solid var(--sj-gold-500);
    background:#031527!important;
}

body.cms-datagoe footer.bg-dark .bg-darker{
    background:transparent!important;
}

body.cms-datagoe footer.bg-dark a{
    color:rgba(255,255,255,.72)!important;
}

body.cms-datagoe footer.bg-dark a:hover{
    color:var(--sj-gold-300)!important;
}

/* =============================================================
   SCROLL TOP / SEARCH MODAL
============================================================= */
body.cms-datagoe #myBtn{
    width:46px!important;
    height:46px!important;
    right:22px!important;
    bottom:22px!important;
    border-radius:12px!important;
    background:var(--sj-navy-900)!important;
    box-shadow:0 10px 24px rgba(7,29,55,.2)!important;
}

body.cms-datagoe #modalcari .modal-content,
body.cms-datagoe #modalViewsambutan .modal-content{
    border:1px solid var(--sj-line)!important;
    border-radius:18px!important;
    box-shadow:var(--sj-shadow-lg)!important;
}

body.cms-datagoe #modalcari .modal-header{
    background:var(--sj-navy-900)!important;
}

/* =============================================================
   RESPONSIVE
============================================================= */
@media(max-width:991.98px){
    body.home-page #content,
    body.cms-datagoe #content{
        padding-top:76px!important;
    }

    body.cms-datagoe .navbar-primary.header-top{
        min-height:76px;
        padding:9px 15px!important;
    }

    body.cms-datagoe .school-name{
        max-width:56vw;
        font-size:1rem!important;
    }

    body.cms-datagoe .school-divider,
    body.cms-datagoe .school-tagline{
        display:none!important;
    }

    body.cms-datagoe .navbar-secondary{
        padding:10px 14px!important;
        border-top:1px solid var(--sj-line)!important;
        box-shadow:0 14px 30px rgba(7,29,55,.08);
    }

    body.cms-datagoe .navbar-secondary .navbar-nav{
        width:100%;
    }

    body.cms-datagoe .navbar-secondary .nav-link{
        min-height:43px;
        width:100%;
        padding:0 11px!important;
        border-radius:9px!important;
    }

    body.cms-datagoe .navbar-secondary .nav-link::after{
        display:none;
    }

    body.cms-datagoe .navbar-secondary .dropdown-menu{
        border-top:0!important;
        border-radius:10px!important;
        box-shadow:none!important;
    }

    body.cms-datagoe .home-main-slider .glide__slide{
        height:500px!important;
    }

    body.cms-datagoe .hero-container{
        grid-template-columns:1fr!important;
        gap:34px!important;
        text-align:left!important;
    }

    body.cms-datagoe .hero-image-wrap{
        justify-content:flex-start!important;
    }

    body.cms-datagoe .hero-image{
        width:220px!important;
    }

    body.cms-datagoe .berseri-row{
        grid-template-columns:repeat(3,1fr)!important;
    }
}

@media(max-width:767.98px){
    body.cms-datagoe{
        font-size:14px;
    }

    body.cms-datagoe .home-main-slider .glide__slide{
        height:420px!important;
    }

    body.cms-datagoe #pengumumanx.pengumuman{
        min-height:50px!important;
        padding:0 13px!important;
    }

    body.cms-datagoe section>.container.pb-3{
        padding-top:28px!important;
        padding-bottom:42px!important;
    }

    body.cms-datagoe .jadwal-container>.header-box{
        width:104px!important;
        min-width:104px!important;
        padding:14px 10px!important;
    }

    body.cms-datagoe #posts-slider .banner-img{
        height:390px!important;
    }

    body.cms-datagoe .editorial-section{
        padding:58px 0!important;
    }

    body.cms-datagoe .hero-section{
        padding:64px 0!important;
    }

    body.cms-datagoe .hero-title{
        font-size:2.25rem!important;
    }

    body.cms-datagoe .hero-desc{
        font-size:.9rem!important;
    }

    body.cms-datagoe .timeline-section,
    body.cms-datagoe .berseri-section,
    body.cms-datagoe .galeri-ultra{
        padding:58px 0!important;
    }

    body.cms-datagoe .berseri-row{
        grid-template-columns:repeat(2,1fr)!important;
    }
}

@media(max-width:575.98px){
    body.cms-datagoe .header-top .logo,
    body.cms-datagoe .navbar-primary .logo{
        width:40px!important;
        height:40px!important;
    }

    body.cms-datagoe .school-name{
        max-width:62vw;
        font-size:.88rem!important;
    }

    body.cms-datagoe .home-main-slider .glide__slide{
        height:330px!important;
    }

    body.cms-datagoe .jadwal-container>.header-box{
        width:92px!important;
        min-width:92px!important;
    }

    body.cms-datagoe .jadwal-items>div{
        min-width:132px!important;
        padding:7px 11px!important;
    }

    body.cms-datagoe #posts-slider .banner-img{
        height:330px!important;
    }

    body.cms-datagoe #posts-slider .banner-content{
        padding:20px!important;
    }

    body.cms-datagoe .featured-thumb img{
        height:235px!important;
    }

    body.cms-datagoe .sub-row{
        grid-template-columns:1fr!important;
    }

    body.cms-datagoe .hero-title{
        font-size:2rem!important;
    }

    body.cms-datagoe .hero-image{
        width:180px!important;
    }

    body.cms-datagoe .berseri-row{
        grid-template-columns:1fr!important;
    }

    body.cms-datagoe .berseri-card{
        min-height:auto!important;
    }

    body.cms-datagoe .home-services__item-col{
        flex:0 0 50%!important;
        max-width:50%!important;
    }
}

@media(prefers-reduced-motion:reduce){
    *,*::before,*::after{
        scroll-behavior:auto!important;
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
        transition-duration:.01ms!important;
    }
}

body.cms-datagoe nav.navbar.fixed-top.scrolled{
    box-shadow:0 12px 34px rgba(7,29,55,.12)!important;
}

/* =============================================================
   SMANJA WEB v4.1.0 — PUBLIC POLISH HOTFIX
   - navbar and slider sit flush
   - main slider is more compact
   - student infographic cards gain line/shadow accents
============================================================= */

/* Front.css already adds body padding for the fixed navbar. v4 also added
   #content padding, which doubled the vertical offset. Keep only #content. */
body.home-page{
    padding-top:0!important;
}

body.home-page #content,
body.cms-datagoe #content{
    padding-top:124px!important;
}

/* Slider starts exactly after the fixed two-level navigation. */
body.cms-datagoe .home-main-slider,
body.cms-datagoe .home-main-slider .main-slider,
body.cms-datagoe .home-main-slider .main-slider__slider{
    margin-top:0!important;
    padding-top:0!important;
}

body.cms-datagoe .home-main-slider .main-slider__space{
    display:none!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
}

/* A calmer, more proportional institutional banner. */
body.cms-datagoe .home-main-slider .glide__slide{
    height:clamp(330px,39vw,500px)!important;
    min-height:0!important;
}

body.cms-datagoe .home-main-slider .img-cover{
    object-position:center center!important;
}

body.cms-datagoe .home-main-slider .main-slider__overlay{
    background:
        linear-gradient(90deg,rgba(7,29,55,.42),rgba(7,29,55,.10) 58%,rgba(7,29,55,.03)),
        linear-gradient(0deg,rgba(7,29,55,.28),transparent 48%)!important;
}

/* Student infographic section: subtle institutional glow and decorative line. */
body.cms-datagoe .counter-section{
    position:relative;
    isolation:isolate;
    padding:62px 0 68px!important;
    overflow:hidden!important;
    background:
        radial-gradient(circle at 8% 0%,rgba(42,120,203,.22),transparent 29%),
        radial-gradient(circle at 92% 100%,rgba(212,170,69,.20),transparent 31%),
        linear-gradient(135deg,#071d37 0%,#0a2b50 48%,#0b3761 100%)!important;
}

body.cms-datagoe .counter-section::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:-125px;
    width:460px;
    height:230px;
    transform:translateX(-50%);
    border:1px solid rgba(255,255,255,.08);
    border-radius:50%;
    box-shadow:
        0 0 0 38px rgba(255,255,255,.025),
        0 0 0 76px rgba(255,255,255,.018);
    pointer-events:none;
    z-index:-1;
}

body.cms-datagoe .counter-title{
    position:relative;
    width:max-content;
    max-width:100%;
    margin:0 auto 30px!important;
    padding:0 24px 13px;
    font-size:1.32rem!important;
    letter-spacing:.055em;
    text-transform:uppercase;
}

body.cms-datagoe .counter-title::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:0;
    width:92px;
    height:3px;
    transform:translateX(-50%);
    border-radius:99px;
    background:linear-gradient(90deg,#2a78cb,#21a6a1,#d4aa45,#c84b55);
    box-shadow:0 4px 14px rgba(212,170,69,.22);
}

body.cms-datagoe .counter-title span{
    display:none!important;
}

body.cms-datagoe .counter-box{
    position:relative;
    min-height:158px!important;
    padding:22px 18px 17px!important;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.16)!important;
    border-top:3px solid #3a86d7!important;
    border-radius:18px!important;
    background:
        linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.055))!important;
    box-shadow:
        0 16px 34px rgba(0,0,0,.18),
        inset 0 1px 0 rgba(255,255,255,.12)!important;
    backdrop-filter:blur(8px);
}

body.cms-datagoe .counter-section .row>div:nth-child(4n+1) .counter-box{
    border-top-color:#4d9ae8!important;
}
body.cms-datagoe .counter-section .row>div:nth-child(4n+2) .counter-box{
    border-top-color:#32b3a9!important;
}
body.cms-datagoe .counter-section .row>div:nth-child(4n+3) .counter-box{
    border-top-color:#e4bd59!important;
}
body.cms-datagoe .counter-section .row>div:nth-child(4n+4) .counter-box{
    border-top-color:#d86670!important;
}

body.cms-datagoe .counter-box::before{
    content:"";
    position:absolute;
    top:-50px;
    right:-48px;
    width:120px;
    height:120px;
    border-radius:50%;
    background:rgba(255,255,255,.055);
    pointer-events:none;
}

body.cms-datagoe .counter-box:hover{
    transform:translateY(-5px)!important;
    border-color:rgba(255,255,255,.28)!important;
    box-shadow:
        0 22px 46px rgba(0,0,0,.25),
        inset 0 1px 0 rgba(255,255,255,.16)!important;
}

body.cms-datagoe .counter-box .icon{
    display:inline-grid!important;
    place-items:center;
    width:42px!important;
    height:42px!important;
    margin:0 auto 9px!important;
    border:1px solid rgba(255,255,255,.20);
    border-radius:13px!important;
    background:rgba(255,255,255,.13)!important;
    color:#fff!important;
    box-shadow:0 8px 20px rgba(0,0,0,.12);
    font-size:1.02rem!important;
}

body.cms-datagoe .counter-section .row>div:nth-child(4n+1) .counter-box .icon{
    color:#8dc7ff!important;
}
body.cms-datagoe .counter-section .row>div:nth-child(4n+2) .counter-box .icon{
    color:#75ddd4!important;
}
body.cms-datagoe .counter-section .row>div:nth-child(4n+3) .counter-box .icon{
    color:#f4d981!important;
}
body.cms-datagoe .counter-section .row>div:nth-child(4n+4) .counter-box .icon{
    color:#f19aa2!important;
}

body.cms-datagoe .counter-box h3{
    margin:3px 0 4px!important;
    color:#fff!important;
    font-size:1.72rem!important;
    font-weight:800!important;
    line-height:1.1!important;
    letter-spacing:-.025em;
}

body.cms-datagoe .counter-box p{
    margin:0 0 9px!important;
    color:rgba(255,255,255,.83)!important;
    font-size:.8rem!important;
    font-weight:650!important;
}

body.cms-datagoe .counter-box-footer{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    min-height:25px;
    padding:4px 9px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:999px;
    color:rgba(255,255,255,.72)!important;
    background:rgba(255,255,255,.055);
    font-size:.67rem!important;
    text-decoration:none!important;
}

body.cms-datagoe .counter-box-footer:hover{
    color:#fff!important;
    background:rgba(255,255,255,.11)!important;
}

@media(max-width:991.98px){
    body.home-page #content,
    body.cms-datagoe #content{
        padding-top:76px!important;
    }

    body.cms-datagoe .home-main-slider .glide__slide{
        height:clamp(300px,48vw,390px)!important;
    }
}

@media(max-width:767.98px){
    body.cms-datagoe .home-main-slider .glide__slide{
        height:285px!important;
    }

    body.cms-datagoe .counter-section{
        padding:48px 0 52px!important;
    }

    body.cms-datagoe .counter-title{
        margin-bottom:22px!important;
        font-size:1.05rem!important;
    }

    body.cms-datagoe .counter-box{
        min-height:148px!important;
        padding:18px 13px 15px!important;
    }
}

@media(max-width:575.98px){
    body.cms-datagoe .home-main-slider .glide__slide{
        height:235px!important;
    }

    body.cms-datagoe .counter-box h3{
        font-size:1.38rem!important;
    }
}
