/* ==========================================================
   CSS ASLI WEBSITE SMKN 1 KUPANG - AMAN
   File ini memakai CSS asli yang abang kirim, lalu ditambah
   patch final di bagian paling bawah supaya tidak merusak
   layout lama. Cari: PATCH FINAL AMAN.
   ========================================================== */

:root{
--blue:#0b4ea2;
--gold:#ffb703;
--dark:#0f172a;
--muted:#64748b;
--bg:#f8fafc
}

*{
box-sizing:border-box
}

body{
margin:0;
font-family:Inter,Segoe UI,Arial,sans-serif;
color:var(--dark);
background:var(--bg)
}

a{
text-decoration:none;
color:inherit
}

.container{
max-width:1180px;
margin:auto;
padding:0 18px
}

.topbar{
background:#073b7a;
color:#fff;
font-size:14px;
padding:9px 0
}

.navbar{
position:sticky;
top:0;
z-index:50;
background:#fff;
box-shadow:0 8px 30px #0001
}

.navwrap{
display:flex;
align-items:center;
justify-content:space-between;
padding:13px 0
}

.brand{
display:flex;
gap:12px;
align-items:center;
font-weight:800;
color:var(--blue)
}

.brand img{
width:52px;
height:52px;
object-fit:contain
}

.menu{
display:flex;
gap:18px;
align-items:center;
font-weight:700
}

.menu a{
color:#243044
}

.menu a:hover{
color:var(--blue)
}

.btn{
background:linear-gradient(135deg,var(--blue),#0ea5e9);
color:#fff;
padding:11px 18px;
border-radius:14px;
display:inline-block;
border:0;
font-weight:800;
cursor:pointer
}

.hero{
position:relative;
height:620px;
overflow:hidden;
background:#061c3a
}

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

.slide.active{
opacity:1
}

.slide:after{
content:'';
position:absolute;
inset:0;
background:linear-gradient(90deg,#061c3add,#061c3a80,#061c3a20)
}

.hero-content{
position:relative;
z-index:2;
color:#fff;
padding-top:135px;
max-width:720px
}

.tag{
display:inline-block;
background:#ffffff24;
border:1px solid #ffffff40;
border-radius:99px;
padding:8px 14px;
margin-bottom:18px
}

.hero h1{
font-size:58px;
line-height:1.05;
margin:0 0 16px
}

.hero p{
font-size:19px;
line-height:1.7;
color:#e2e8f0
}

.section{
padding:80px 0
}

.title{
display:flex;
justify-content:space-between;
gap:20px;
align-items:end;
margin-bottom:28px
}

.title h2{
font-size:38px;
margin:0;
color:#0b2245
}

.title p{
max-width:620px;
color:var(--muted);
line-height:1.7
}

.grid{
display:grid;
gap:22px
}

.grid-3{
grid-template-columns:repeat(3,1fr)
}

.grid-4{
grid-template-columns:repeat(4,1fr)
}

.card{
background:#fff;
border-radius:22px;
box-shadow:0 16px 45px #0f172a12;
overflow:hidden;
border:1px solid #e5e7eb
}

.card-body{
padding:22px
}

.card img{
width:100%;
height:210px;
object-fit:cover
}

.badge{
color:#0b4ea2;
background:#dbeafe;
border-radius:99px;
padding:7px 12px;
display:inline-block;
font-size:13px;
font-weight:800
}

.stats{
background:linear-gradient(135deg,#0b4ea2,#082f66);
color:#fff
}

.stat{
padding:30px;
text-align:center
}

.stat b{
font-size:42px;
color:var(--gold)
}

.profile{
display:grid;
grid-template-columns:1.1fr .9fr;
gap:35px;
align-items:center
}

.profile-box{
background:#fff;
padding:34px;
border-radius:28px;
box-shadow:0 16px 45px #0f172a12
}

.profile-box p{
line-height:1.8;
color:#475569
}

.footer{
background:#07172d;
color:#cbd5e1;
padding:55px 0 18px
}

.footer h3{
color:#fff
}

.form{
background:#fff;
padding:28px;
border-radius:24px;
box-shadow:0 16px 45px #0f172a12
}

.input,select,textarea{
width:100%;
padding:13px 14px;
border:1px solid #cbd5e1;
border-radius:13px;
margin:8px 0 14px;
font:inherit
}

.mobile{
display:none
}

@media(max-width:900px){
.menu{
display:none
}

.mobile{
display:inline-block
}

.hero{
height:560px
}

.hero h1{
font-size:39px
}

.grid-3,.grid-4,.profile{
grid-template-columns:1fr
}

.title{
display:block
}

.card img{
height:190px
}

}

.white{
background:#fff
}

.topflex{
display:flex;
justify-content:space-between;
gap:18px;
flex-wrap:wrap
}

.breaking{
background:#fff;
border-bottom:1px solid #e5e7eb
}

.news-ticker{
display:flex;
gap:15px;
align-items:center;
padding:12px 18px
}

.news-ticker b{
background:#ef4444;
color:#fff;
border-radius:10px;
padding:7px 12px
}

.news-layout{
display:grid;
grid-template-columns:1.7fr .8fr;
gap:26px;
align-items:start
}

.news-headline img{
height:360px
}

.news-list{
display:flex;
flex-direction:column;
gap:14px
}

.mini-news{
display:grid;
grid-template-columns:120px 1fr;
gap:14px;
background:#fff;
border:1px solid #e5e7eb;
border-radius:18px;
padding:10px;
box-shadow:0 10px 25px #0f172a0d
}

.mini-news img{
width:120px;
height:86px;
object-fit:cover;
border-radius:13px
}

.mini-news small,.side-link small{
display:block;
color:var(--muted);
margin-top:6px
}

.sidebar{
background:#f8fafc;
border:1px solid #e5e7eb;
border-radius:22px;
padding:20px;
position:sticky;
top:95px
}

.side-link{
display:block;
padding:14px 0;
border-bottom:1px solid #e5e7eb;
font-weight:800
}

.article-wrap{
display:grid;
grid-template-columns:1.7fr .7fr;
gap:30px
}

.article{
background:#fff;
border-radius:26px;
padding:30px;
box-shadow:0 16px 45px #0f172a12
}

.article h1{
font-size:44px;
margin:14px 0
}

.article img{
width:100%;
max-height:520px;
object-fit:cover;
border-radius:22px;
margin:22px 0
}

.article p{
font-size:18px;
line-height:1.85;
color:#334155
}

.footer-grid{
display:grid;
grid-template-columns:2fr 1fr 1fr 1.2fr;
gap:28px
}

.footer a{
display:block;
color:#cbd5e1;
margin:10px 0
}

.footer h4{
color:#fff;
margin-top:0
}

.social{
letter-spacing:8px;
color:var(--gold)
}

.copyright{
border-top:1px solid #ffffff18;
margin-top:28px;
padding-top:18px;
text-align:center
}

.form button{
min-width:140px
}

table{
border-collapse:collapse
}

th,td{
border-bottom:1px solid #e5e7eb
}

@media(max-width:900px){
.news-layout,.article-wrap,.footer-grid{
grid-template-columns:1fr
}

.news-headline img{
height:230px
}

.article h1{
font-size:32px
}

.sidebar{
position:static
}

.mini-news{
grid-template-columns:95px 1fr
}

.mini-news img{
width:95px;
height:75px
}

.topflex{
font-size:12px
}

}

/* === SMKN 1 Kupang Enterprise Blue Gradient Upgrade === */
:root{
--blue2:#0758c9;
--cyan:#23c7ff;
--navy:#061a3d;
--soft:#eaf4ff
}

.blue-luxury{
background:radial-gradient(circle at 15% 10%,#1fb6ff55,transparent 35%),linear-gradient(135deg,#031633,#0758c9 55%,#23c7ff)
}

.navbar{
backdrop-filter:blur(14px);
background:rgba(255,255,255,.92)
}

.brand span{
letter-spacing:.2px
}

.btn{
box-shadow:0 14px 35px rgba(14,116,255,.28);
transition:.25s
}

.btn:hover{
transform:translateY(-3px);
box-shadow:0 20px 45px rgba(14,116,255,.35)
}

.btn-light{
background:#fff;
color:#0758c9
}

.profile-gradient{
background:linear-gradient(135deg,#eaf4ff,#ffffff 45%,#dff7ff)
}

.glass{
background:rgba(255,255,255,.72);
border:1px solid rgba(255,255,255,.8);
backdrop-filter:blur(16px)
}

.principal-section{
background:linear-gradient(135deg,#031633,#0758c9 58%,#23c7ff);
position:relative;
overflow:hidden
}

.principal-section:before{
content:'';
position:absolute;
width:520px;
height:520px;
border-radius:50%;
background:#ffffff18;
right:-180px;
top:-180px
}

.principal-section:after{
content:'';
position:absolute;
width:360px;
height:360px;
border-radius:50%;
background:#23c7ff30;
left:-120px;
bottom:-120px
}

.principal-card{
position:relative;
z-index:2;
display:grid;
grid-template-columns:360px 1fr;
gap:36px;
align-items:center;
background:rgba(255,255,255,.12);
border:1px solid rgba(255,255,255,.25);
border-radius:34px;
padding:34px;
box-shadow:0 30px 90px rgba(0,0,0,.25);
backdrop-filter:blur(18px);
color:#fff
}

.principal-photo img{
width:100%;
height:430px;
object-fit:cover;
border-radius:28px;
border:8px solid rgba(255,255,255,.25);
box-shadow:0 24px 60px rgba(0,0,0,.28)
}

.principal-text h2{
font-size:42px;
line-height:1.1;
margin:16px 0
}

.principal-text p{
font-size:18px;
line-height:1.85;
color:#eaf4ff
}

.principal-mini{
display:grid;
grid-template-columns:220px 1fr;
gap:26px;
align-items:start;
margin:30px 0;
padding:24px;
border-radius:26px;
background:linear-gradient(135deg,#eaf4ff,#fff);
border:1px solid #dbeafe
}

.principal-mini img{
width:220px;
height:260px;
object-fit:cover;
border-radius:22px
}

.wa-float{
position:fixed;
right:22px;
bottom:22px;
z-index:80;
background:linear-gradient(135deg,#16a34a,#22c55e);
color:#fff;
padding:14px 18px;
border-radius:999px;
box-shadow:0 20px 45px rgba(22,163,74,.35);
font-weight:900;
display:flex;
gap:9px;
align-items:center
}

.alert-ok{
background:#dcfce7;
color:#166534;
padding:12px 14px;
border-radius:14px;
font-weight:800
}

.card{
transition:.28s
}

.card:hover{
transform:translateY(-6px);
box-shadow:0 24px 60px #0758c926
}

.footer{
background:radial-gradient(circle at 10% 20%,#0758c955,transparent 25%),linear-gradient(135deg,#020b1d,#061a3d 55%,#073b7a)
}

@media(max-width:900px){
.principal-card,.principal-mini{
grid-template-columns:1fr;
padding:22px
}

.principal-photo img{
height:360px
}

.principal-text h2{
font-size:31px
}

.principal-text p{
font-size:16px
}

.wa-float span{
display:none
}

.wa-float{
padding:15px;
border-radius:50%
}

.hero-content{
padding-top:105px
}

}

/* ===== V4 ENTERPRISE PREMIUM ===== */
:root{
--blue1:#052f7c;
--blue2:#0a4d9d;
--blue3:#1e88e5;
--gold:#ffd36b;
--soft:#f5f9ff;
--dark:#082044
}

.profile-menu{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
gap:16px;
margin:24px 0
}

.profile-menu a{
padding:18px;
border-radius:22px;
background:linear-gradient(135deg,#fff,#eef6ff);
box-shadow:0 16px 45px rgba(10,77,157,.13);
font-weight:800;
color:var(--dark);
border:1px solid rgba(30,136,229,.14)
}

.identity-list{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:14px
}

.identity-item{
background:#fff;
border-radius:18px;
padding:18px;
box-shadow:0 12px 36px rgba(8,32,68,.08);
border-left:5px solid var(--blue3)
}

.lux-card{
border-radius:26px;
background:rgba(255,255,255,.88);
box-shadow:0 25px 70px rgba(8,32,68,.13);
border:1px solid rgba(255,255,255,.7);
overflow:hidden;
transition:.35s
}

.lux-card:hover{
transform:translateY(-9px);
box-shadow:0 32px 90px rgba(10,77,157,.22)
}

.gradient-title{
background:linear-gradient(135deg,var(--blue1),var(--blue3));
color:#fff;
border-radius:28px;
padding:34px;
position:relative;
overflow:hidden
}

.gradient-title:after{
content:"";
position:absolute;
right:-60px;
top:-60px;
width:180px;
height:180px;
background:rgba(255,211,107,.28);
border-radius:50%
}

.timeline{
position:relative;
margin-top:25px
}

.timeline .item{
background:#fff;
border-radius:22px;
padding:20px;
margin:15px 0 15px 25px;
box-shadow:0 12px 35px rgba(8,32,68,.08);
border-left:5px solid var(--gold)
}

.org-chart{
display:flex;
flex-direction:column;
gap:16px;
align-items:center
}

.org-node{
padding:16px 24px;
border-radius:20px;
background:linear-gradient(135deg,#0a4d9d,#42a5f5);
color:#fff;
font-weight:800;
box-shadow:0 16px 40px rgba(10,77,157,.3);
text-align:center
}

.org-row{
display:flex;
gap:14px;
flex-wrap:wrap;
justify-content:center
}

.gallery-link{
cursor:pointer;
display:block
}

.lightbox{
position:fixed;
inset:0;
background:rgba(0,13,37,.92);
display:none;
align-items:center;
justify-content:center;
z-index:9999;
padding:25px
}

.lightbox.active{
display:flex
}

.lightbox img{
max-width:94vw;
max-height:86vh;
border-radius:18px;
box-shadow:0 25px 80px rgba(0,0,0,.45)
}

.lightbox .close,.lightbox .prev,.lightbox .next{
position:absolute;
background:#fff;
color:#0a4d9d;
border:0;
border-radius:999px;
width:46px;
height:46px;
font-size:24px;
cursor:pointer
}

.lightbox .close{
right:25px;
top:25px
}

.lightbox .prev{
left:25px
}

.lightbox .next{
right:25px
}

.alumni-hero{
background:linear-gradient(135deg,#052f7c,#0a4d9d,#42a5f5);
color:#fff;
border-radius:32px;
padding:42px;
margin-bottom:25px
}

.alumni-stats{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
gap:16px
}

.alumni-stat{
background:rgba(255,255,255,.16);
border:1px solid rgba(255,255,255,.25);
border-radius:22px;
padding:20px;
text-align:center
}

.alumni-stat b{
font-size:32px;
color:var(--gold)
}

.auth-box{
max-width:620px;
margin:auto
}

.status-pill{
display:inline-block;
padding:6px 12px;
border-radius:99px;
background:#e6f4ff;
color:#07509e;
font-weight:700
}

.btn-gold{
background:linear-gradient(135deg,#ffd36b,#ffb300)!important;
color:#10233f!important
}

.mega-footer-brand{
font-size:24px;
font-weight:900
}

.footer a{
display:block;
color:#dcecff;
text-decoration:none;
margin:7px 0
}

.footer{
background:linear-gradient(135deg,#06265e,#0a4d9d,#092b6d)!important;
color:#fff
}

.footer p,.footer small{
color:#dcecff
}

.social-btns a{
display:inline-flex!important;
width:36px;
height:36px;
align-items:center;
justify-content:center;
border-radius:50%;
background:rgba(255,255,255,.14);
margin-right:8px
}

.mobile-menu-button{
display:none
}

@media(max-width:900px){
.menu{
display:none
}

.menu.open{
display:flex;
position:absolute;
top:76px;
left:15px;
right:15px;
flex-direction:column;
background:#fff;
padding:18px;
border-radius:18px;
box-shadow:0 24px 80px rgba(0,0,0,.2);
z-index:1000
}

.mobile,.mobile-menu-button{
display:block
}

.principal-card,.profile{
grid-template-columns:1fr!important
}

.hero-content h1{
font-size:34px!important
}

.section{
padding:45px 0
}

.org-row{
flex-direction:column;
width:100%
}

.org-node{
width:100%
}

}

/* =========================================================
   V5 PREMIUM RESPONSIVE UI - SMKN 1 KUPANG
   Modern enterprise blue-gradient, luxury cards, mobile first
   ========================================================= */
html{
scroll-behavior:smooth
}

body{
background:linear-gradient(180deg,#f7fbff 0%,#eef6ff 42%,#ffffff 100%);
overflow-x:hidden
}

.container{
width:min(1180px,calc(100% - 32px));
margin-inline:auto
}

.topbar{
background:linear-gradient(90deg,#031633,#0a4d9d,#1e88e5);
color:#eaf6ff;
font-size:13px
}

.navbar{
position:sticky;
top:0;
z-index:900;
border-bottom:1px solid rgba(10,77,157,.12);
box-shadow:0 14px 45px rgba(8,32,68,.08)
}

.navwrap{
min-height:78px
}

.brand{
display:flex;
align-items:center;
gap:12px;
text-decoration:none;
color:#082044;
font-weight:900
}

.brand img{
width:54px;
height:54px;
object-fit:contain;
filter:drop-shadow(0 8px 14px rgba(10,77,157,.22))
}

.brand small{
font-weight:700;
color:#1e88e5
}

.menu{
align-items:center;
gap:6px
}

.menu a{
padding:10px 12px;
border-radius:999px;
font-weight:800;
color:#082044;
text-decoration:none;
transition:.25s
}

.menu a:hover{
background:#eaf4ff;
color:#0a4d9d;
transform:translateY(-2px)
}

.menu .btn{
color:#fff!important;
padding:11px 18px
}

.mobile{
font-size:30px;
background:linear-gradient(135deg,#0a4d9d,#42a5f5);
color:#fff;
border-radius:14px;
padding:6px 12px;
box-shadow:0 14px 35px rgba(10,77,157,.25)
}

.hero{
position:relative;
min-height:calc(100vh - 108px);
height:720px;
display:flex;
align-items:center;
isolation:isolate;
overflow:hidden
}

.hero:before{
content:"";
position:absolute;
inset:0;
background:linear-gradient(90deg,rgba(3,22,51,.92),rgba(10,77,157,.62),rgba(35,199,255,.24));
z-index:1
}

.hero:after{
content:"";
position:absolute;
right:-160px;
top:90px;
width:470px;
height:470px;
border-radius:50%;
background:radial-gradient(circle,rgba(255,211,107,.35),transparent 65%);
z-index:2
}

.slide{
position:absolute;
inset:0;
background-size:cover;
background-position:center;
opacity:0;
transform:scale(1.05);
transition:opacity 1s ease, transform 6s ease
}

.slide.active{
opacity:1;
transform:scale(1)
}

.hero-content{
position:relative;
z-index:4;
max-width:780px;
color:#fff
}

.hero-content .tag,.tag{
display:inline-flex;
align-items:center;
gap:8px;
background:rgba(255,255,255,.16);
border:1px solid rgba(255,255,255,.28);
backdrop-filter:blur(14px);
color:#fff;
border-radius:999px;
padding:10px 16px;
font-weight:900
}

.hero h1{
font-size:clamp(38px,6vw,76px);
line-height:1.02;
margin:18px 0 16px;
letter-spacing:-1.8px
}

.hero p{
font-size:clamp(16px,2vw,22px);
line-height:1.75;
color:#eaf6ff;
max-width:720px
}

.btn{
border:0;
border-radius:999px;
background:linear-gradient(135deg,#0a4d9d,#1e88e5,#42a5f5);
color:#fff!important;
text-decoration:none;
display:inline-flex;
align-items:center;
justify-content:center;
gap:9px;
padding:13px 22px;
font-weight:900;
cursor:pointer
}

.btn-gold{
background:linear-gradient(135deg,#ffdf85,#ffbf21)!important;
color:#10233f!important
}

.section{
padding:76px 0
}

.title{
display:flex;
justify-content:space-between;
align-items:end;
gap:22px;
margin-bottom:28px
}

.title h2,.gradient-title h1{
letter-spacing:-.8px
}

.title h2{
font-size:clamp(28px,4vw,46px);
color:#082044;
margin:0
}

.title p{
color:#64748b;
font-size:17px;
line-height:1.7
}

.grid{
display:grid;
gap:24px
}

.grid-2{
grid-template-columns:repeat(2,minmax(0,1fr))
}

.grid-3{
grid-template-columns:repeat(3,minmax(0,1fr))
}

.grid-4{
grid-template-columns:repeat(4,minmax(0,1fr))
}

.card,.lux-card,.form,.article,.sidebar,.identity-item,.profile-menu a{
border:1px solid rgba(30,136,229,.13);
box-shadow:0 22px 70px rgba(8,32,68,.10);
background:rgba(255,255,255,.9);
backdrop-filter:blur(10px)
}

.card,.lux-card{
border-radius:28px;
overflow:hidden
}

.card img,.lux-card img{
transition:transform .45s ease
}

.card:hover img,.lux-card:hover img{
transform:scale(1.045)
}

.card-body{
padding:24px
}

.card-body h3{
font-size:22px;
color:#082044;
margin:12px 0 8px
}

.card-body p{
color:#64748b;
line-height:1.7
}

.badge{
background:linear-gradient(135deg,#dbeafe,#eef8ff);
color:#0758c9;
border:1px solid #bfdbfe;
font-weight:900
}

.profile-box{
border-radius:34px;
padding:38px;
background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(234,244,255,.72));
border:1px solid rgba(255,255,255,.9)
}

.stat{
border-radius:28px;
background:linear-gradient(135deg,#fff,#edf7ff);
position:relative;
overflow:hidden
}

.stat:after{
content:"";
position:absolute;
right:-30px;
bottom:-30px;
width:110px;
height:110px;
border-radius:50%;
background:rgba(30,136,229,.12)
}

.principal-card{
box-shadow:0 35px 100px rgba(0,0,0,.28)
}

.principal-photo img{
object-position:center top
}

.news-ticker{
border-radius:0 0 22px 22px;
background:#fff;
box-shadow:0 14px 35px rgba(8,32,68,.06)
}

.news-layout{
display:grid;
grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);
gap:26px
}

.mini-news{
text-decoration:none;
color:#082044
}

.mini-news:hover{
transform:translateY(-4px);
box-shadow:0 22px 60px rgba(10,77,157,.16)
}

.gallery-link img{
height:240px;
width:100%;
object-fit:cover
}

.lightbox{
animation:fadeIn .22s ease
}

.lightbox img{
animation:zoomIn .25s ease
}

.lightbox .close,.lightbox .prev,.lightbox .next{
box-shadow:0 18px 45px rgba(0,0,0,.25);
font-weight:900
}

.alumni-hero{
position:relative;
overflow:hidden;
box-shadow:0 30px 90px rgba(10,77,157,.28)
}

.alumni-hero:after{
content:"";
position:absolute;
right:-95px;
top:-95px;
width:260px;
height:260px;
border-radius:50%;
background:rgba(255,211,107,.22)
}

.alumni-hero>*{
position:relative;
z-index:1
}

.alumni-stat{
backdrop-filter:blur(14px);
box-shadow:inset 0 1px 0 rgba(255,255,255,.2)
}

.profile-menu a:hover,.identity-item:hover{
transform:translateY(-5px);
box-shadow:0 24px 70px rgba(10,77,157,.18)
}

.org-chart{
padding:28px;
border-radius:30px;
background:linear-gradient(135deg,#f8fbff,#eaf4ff);
border:1px solid #dbeafe
}

.footer{
position:relative;
overflow:hidden
}

.footer:before{
content:"";
position:absolute;
right:-120px;
top:-120px;
width:360px;
height:360px;
border-radius:50%;
background:rgba(255,211,107,.15)
}

.footer-grid,.copyright{
position:relative;
z-index:1
}

.wa-float{
animation:waPulse 2s infinite
}

.auth-box{
background:linear-gradient(135deg,#ffffff,#eff7ff)
}

.input:focus,select:focus,textarea:focus{
outline:none;
border-color:#1e88e5;
box-shadow:0 0 0 4px rgba(30,136,229,.14)
}

@keyframes waPulse{
0%,100%{
transform:translateY(0);
box-shadow:0 20px 45px rgba(22,163,74,.35)
}

50%{
transform:translateY(-4px);
box-shadow:0 28px 65px rgba(22,163,74,.48)
}

}

@keyframes fadeIn{
from{
opacity:0
}

to{
opacity:1
}

}

@keyframes zoomIn{
from{
transform:scale(.92);
opacity:.75
}

to{
transform:scale(1);
opacity:1
}

}

@media(max-width:1100px){
.menu a{
font-size:14px;
padding:9px
}

.hero{
height:640px
}

.grid-4{
grid-template-columns:repeat(2,1fr)
}

}

@media(max-width:900px){
.container{
width:min(100% - 24px,1180px)
}

.topbar{
display:none
}

.navwrap{
min-height:70px
}

.brand img{
width:46px;
height:46px
}

.brand span{
font-size:14px
}

.brand small{
font-size:11px
}

.menu.open{
top:78px;
max-height:calc(100vh - 96px);
overflow:auto
}

.menu.open a{
width:100%;
border-radius:14px
}

.hero{
min-height:620px;
height:auto;
padding:80px 0
}

.hero h1{
letter-spacing:-.8px
}

.hero p{
font-size:16px
}

.title{
display:block
}

.grid-2,.grid-3,.grid-4,.profile,.news-layout,.article-wrap,.footer-grid{
grid-template-columns:1fr!important
}

.section{
padding:54px 0
}

.card img{
height:205px
}

.news-headline img{
height:240px
}

.principal-photo img{
height:340px
}

.principal-card{
border-radius:26px
}

.principal-text h2{
font-size:30px
}

.profile-menu{
grid-template-columns:1fr
}

.mini-news{
grid-template-columns:96px 1fr
}

.mini-news img{
width:96px;
height:80px
}

.alumni-hero{
padding:28px;
border-radius:26px
}

.alumni-stats{
grid-template-columns:repeat(2,1fr)
}

.gradient-title{
padding:26px
}

.gradient-title h1{
font-size:30px
}

.org-chart{
padding:18px
}

.wa-float{
right:16px;
bottom:16px
}

}

@media(max-width:520px){
.container{
width:min(100% - 18px,1180px)
}

.hero{
min-height:560px;
padding:64px 0
}

.hero-content .btn{
width:100%;
margin:6px 0
}

.hero h1{
font-size:34px
}

.section{
padding:42px 0
}

.card-body{
padding:18px
}

.card img{
height:185px
}

.alumni-stats{
grid-template-columns:1fr
}

.principal-photo img{
height:300px
}

.principal-card{
padding:18px
}

.lightbox .prev{
left:10px
}

.lightbox .next{
right:10px
}

.lightbox .close{
right:12px;
top:12px
}

.footer-grid{
gap:18px
}

.copyright{
text-align:left
}

.profile-box{
padding:24px
}

.identity-list{
grid-template-columns:1fr
}

.article{
padding:20px
}

.article h1{
font-size:28px
}

.news-ticker{
margin-inline:0;
border-radius:0
}

.news-ticker marquee{
font-size:13px
}

}

/* ================= ADMIN ENTERPRISE V7 ================= */
.admin-premium{
margin:0;
background:#eef5ff;
color:#0b1f3f;
font-family:Poppins,Arial,sans-serif;
min-height:100vh
}

.admin-shell{
display:flex;
min-height:100vh
}

.admin-sidebar{
width:286px;
position:fixed;
left:0;
top:0;
bottom:0;
background:linear-gradient(165deg,#071b45,#0a4d9d 55%,#1e88e5);
color:#fff;
padding:22px;
overflow:auto;
box-shadow:22px 0 55px rgba(10,77,157,.23);
z-index:20
}

.admin-brand{
display:flex;
align-items:center;
gap:14px;
color:#fff;
text-decoration:none;
background:rgba(255,255,255,.12);
border:1px solid rgba(255,255,255,.18);
border-radius:24px;
padding:14px;
margin-bottom:22px;
backdrop-filter:blur(18px)
}

.admin-brand img{
width:54px;
height:54px;
object-fit:contain;
background:#fff;
border-radius:16px;
padding:6px
}

.admin-brand small{
display:block;
color:#dbeafe;
font-weight:500
}

.admin-nav{
display:flex;
flex-direction:column;
gap:7px
}

.admin-nav a{
color:#eaf4ff;
text-decoration:none;
padding:12px 14px;
border-radius:16px;
display:block;
font-weight:700;
transition:.25s
}

.admin-nav a:hover,.admin-nav a.active{
background:rgba(255,255,255,.18);
transform:translateX(5px);
box-shadow:0 12px 22px rgba(0,0,0,.12)
}

.admin-nav a.danger{
background:rgba(255,215,0,.18);
color:#fff
}

.nav-title{
margin:18px 10px 6px;
color:#bfe0ff;
font-size:11px;
font-weight:900;
letter-spacing:.13em
}

.admin-main{
margin-left:286px;
width:calc(100% - 286px);
padding:26px
}

.admin-topbar{
background:linear-gradient(135deg,rgba(10,77,157,.98),rgba(30,136,229,.92)),radial-gradient(circle at top right,rgba(255,215,0,.5),transparent 38%);
color:#fff;
border-radius:30px;
padding:28px;
display:flex;
justify-content:space-between;
gap:20px;
align-items:center;
box-shadow:0 28px 70px rgba(10,77,157,.27);
margin-bottom:24px
}

.admin-topbar h1{
margin:8px 0 8px;
font-size:clamp(26px,4vw,42px)
}

.admin-topbar p{
margin:0;
color:#e6f2ff;
max-width:760px
}

.top-actions{
display:flex;
gap:10px;
flex-wrap:wrap
}

.admin-stats{
display:grid;
grid-template-columns:repeat(4,minmax(0,1fr));
gap:18px;
margin-bottom:22px
}

.admin-stat-card{
background:rgba(255,255,255,.88);
border:1px solid rgba(10,77,157,.1);
border-radius:24px;
padding:20px;
display:flex;
gap:15px;
text-decoration:none;
color:#09244f;
box-shadow:0 18px 45px rgba(20,70,140,.1);
transition:.25s;
overflow:hidden;
position:relative
}

.admin-stat-card:before{
content:"";
position:absolute;
inset:auto -30px -45px auto;
width:110px;
height:110px;
border-radius:50%;
background:linear-gradient(135deg,rgba(30,136,229,.18),rgba(255,215,0,.16))
}

.admin-stat-card:hover{
transform:translateY(-7px);
box-shadow:0 24px 60px rgba(10,77,157,.18)
}

.admin-stat-card span{
font-size:34px
}

.admin-stat-card b{
font-size:34px;
display:block
}

.admin-stat-card small{
display:block;
font-weight:900;
text-transform:uppercase;
letter-spacing:.04em
}

.admin-stat-card em{
font-style:normal;
color:#64748b;
font-size:13px
}

.admin-grid-2{
display:grid;
grid-template-columns:1.1fr .9fr;
gap:20px;
margin-bottom:22px
}

.admin-panel{
background:rgba(255,255,255,.9);
border:1px solid rgba(10,77,157,.11);
border-radius:26px;
padding:22px;
box-shadow:0 18px 45px rgba(15,54,110,.09);
overflow:auto
}

.panel-head{
display:flex;
justify-content:space-between;
align-items:center;
gap:14px;
margin-bottom:16px
}

.panel-head h2{
margin:0
}

.panel-head span,.panel-head a{
color:#64748b;
font-weight:800
}

.quick-actions{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:13px
}

.quick-card{
padding:18px;
border-radius:19px;
background:linear-gradient(135deg,#f8fbff,#e7f1ff);
text-decoration:none;
color:#0b3f83;
font-weight:900;
border:1px solid #d9e9ff;
transition:.22s
}

.quick-card:hover{
transform:translateY(-4px);
background:linear-gradient(135deg,#0a4d9d,#42a5f5);
color:#fff
}

.security-list{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:10px;
padding:0;
list-style:none
}

.security-list li{
background:#f0f7ff;
border-radius:14px;
padding:10px;
font-weight:800
}

.admin-table{
width:100%;
border-collapse:separate;
border-spacing:0 9px
}

.admin-table th{
text-align:left;
color:#64748b;
font-size:13px
}

.admin-table td{
background:#f8fbff;
padding:12px;
border-top:1px solid #e1edff;
border-bottom:1px solid #e1edff
}

.admin-table td:first-child{
border-left:1px solid #e1edff;
border-radius:14px 0 0 14px;
font-weight:800
}

.admin-table td:last-child{
border-right:1px solid #e1edff;
border-radius:0 14px 14px 0
}

.admin-footer{
text-align:center;
color:#64748b;
font-weight:800;
padding:25px
}

.admin-dark{
background:#07111f;
color:#e5eefc
}

.admin-dark .admin-panel,.admin-dark .admin-stat-card{
background:#0d1b2f;
color:#e5eefc;
border-color:#1e3a5f
}

.admin-dark .admin-table td,.admin-dark .quick-card,.admin-dark .security-list li{
background:#10233d;
color:#e5eefc;
border-color:#1f3b60
}

.admin-premium .form label{
font-weight:900;
margin:10px 0 6px;
display:block
}

.admin-premium .form textarea,.admin-premium .form select{
width:100%;
border:1px solid #cfe0f5;
border-radius:16px;
padding:14px;
margin-bottom:10px;
background:#f8fbff;
color:#10284e
}

.menu-item{
position:relative;
display:inline-block
}

.dropdown-menu{
display:none;
position:absolute;
top:100%;
left:0;
min-width:230px;
background:#fff;
border-radius:18px;
padding:10px;
box-shadow:0 20px 45px rgba(0,0,0,.18);
z-index:50
}

.dropdown-menu a{
display:block!important;
color:#0b2d5f!important;
padding:10px 12px!important;
border-radius:12px
}

.dropdown-menu a:hover{
background:#eaf4ff
}

.menu-item:hover .dropdown-menu{
display:block
}

.article.lux-card{
padding:24px
}

.article.lux-card img{
border-radius:22px;
margin-bottom:18px;
max-height:420px;
object-fit:cover
}

.sidebar .side-link{
display:block;
background:#fff;
border:1px solid #e1edff;
border-radius:16px;
padding:14px;
margin-bottom:10px;
text-decoration:none;
color:#0b2d5f;
font-weight:800
}

.sidebar .side-link small{
display:block;
color:#64748b;
font-weight:600;
margin-top:4px
}

@media(max-width:1050px){
.admin-sidebar{
position:relative;
width:auto;
border-radius:0 0 24px 24px
}

.admin-shell{
display:block
}

.admin-main{
margin-left:0;
width:auto;
padding:14px
}

.admin-stats{
grid-template-columns:repeat(2,1fr)
}

.admin-grid-2{
grid-template-columns:1fr
}

.admin-topbar{
display:block
}

.quick-actions{
grid-template-columns:repeat(2,1fr)
}

}

@media(max-width:620px){
.admin-stats,.quick-actions,.security-list{
grid-template-columns:1fr
}

.admin-sidebar{
padding:14px
}

.admin-nav{
max-height:70vh
}

.admin-topbar{
padding:20px;
border-radius:22px
}

.admin-panel{
padding:16px;
border-radius:20px
}

.admin-table{
font-size:13px
}

.dropdown-menu{
position:static;
display:block;
box-shadow:none;
background:#eef6ff;
margin:6px 0
}

.menu-item{
display:block
}

}

/* =========================================================
   V14 ENTERPRISE UI - SMKN 1 KUPANG
   Premium blue-gold theme, precise spacing, WhatsApp icon,
   responsive polish, and stronger visual hierarchy.
   ========================================================= */
:root{

  --v14-navy:#061735;

  --v14-blue:#0A4D9D;

  --v14-blue-2:#1565C0;

  --v14-sky:#42A5F5;

  --v14-gold:#FFD36B;

  --v14-ink:#071B3A;

  --v14-soft:#F3F8FF;

  --v14-border:#DCEBFF;

  --v14-shadow:0 24px 70px rgba(10,77,157,.16);

}

body{
background:linear-gradient(180deg,#f7fbff,#eef7ff 42%,#ffffff);
letter-spacing:.01em
}

.container{
max-width:1220px
}

.topbar{
background:linear-gradient(90deg,#061735,#0A4D9D,#1565C0);
box-shadow:0 10px 30px rgba(10,77,157,.18)
}

.navbar{
background:rgba(255,255,255,.94)!important;
border-bottom:1px solid rgba(10,77,157,.10);
box-shadow:0 18px 45px rgba(8,32,68,.08)!important
}

.navwrap{
padding:15px 0
}

.brand img{
width:62px!important;
height:62px!important;
border-radius:18px;
background:#fff;
padding:6px;
border:2px solid rgba(66,165,245,.35);
box-shadow:0 14px 34px rgba(10,77,157,.16)
}

.brand span{
font-size:20px;
line-height:1.16;
color:#071B3A;
font-weight:950
}

.brand small{
font-size:14px;
color:#1E88E5;
font-weight:850
}

.menu{
gap:8px
}

.menu a,.menu-item>a{
padding:11px 14px;
border-radius:14px;
color:#071B3A!important;
transition:.22s
}

.menu a:hover,.menu-item>a:hover{
background:linear-gradient(135deg,#eaf4ff,#fff5d8);
color:#0A4D9D!important
}

.dropdown-menu{
border:1px solid var(--v14-border);
box-shadow:0 24px 70px rgba(8,32,68,.18)!important
}

.hero{
border-bottom-left-radius:42px;
border-bottom-right-radius:42px;
box-shadow:inset 0 -1px 0 rgba(255,255,255,.25),0 30px 90px rgba(10,77,157,.18)
}

.hero:before{
background:linear-gradient(90deg,rgba(6,23,53,.95),rgba(10,77,157,.74),rgba(66,165,245,.22))!important
}

.hero h1{
text-shadow:0 8px 26px rgba(0,0,0,.24)
}

.tag,.badge{
box-shadow:inset 0 1px 0 rgba(255,255,255,.35)
}

.hero .btn{
margin-top:8px;
margin-right:8px
}

.breaking{
margin-top:-1px;
background:transparent
}

.news-ticker{
background:#fff;
border:1px solid var(--v14-border);
border-radius:24px;
transform:translateY(-26px);
box-shadow:var(--v14-shadow)
}

.section{
position:relative
}

.title h2,.gradient-title h1{
color:#071B3A;
font-weight:950
}

.title p{
color:#53687f
}

.card,.lux-card,.profile-box,.admin-panel,.article{
border:1px solid rgba(10,77,157,.10)!important;
border-radius:28px!important;
box-shadow:0 18px 55px rgba(8,32,68,.10)!important
}

.card:hover,.lux-card:hover{
transform:translateY(-8px) scale(1.01);
box-shadow:0 32px 85px rgba(10,77,157,.20)!important
}

.card img,.lux-card img{
transition:transform .5s ease
}

.card:hover img,.lux-card:hover img{
transform:scale(1.045)
}

.profile-gradient{
background:radial-gradient(circle at 12% 15%,rgba(66,165,245,.20),transparent 30%),linear-gradient(135deg,#f7fbff,#fff 46%,#eaf4ff)
}

.profile-box.glass{
background:rgba(255,255,255,.78);
box-shadow:0 30px 90px rgba(10,77,157,.18)!important
}

.stat{
background:linear-gradient(135deg,#fff,#eef7ff);
border:1px solid rgba(10,77,157,.08)
}

.stat b{
background:linear-gradient(135deg,#0A4D9D,#42A5F5);
-webkit-background-clip:text;
background-clip:text;
color:transparent
}

.principal-section{
background:radial-gradient(circle at 15% 10%,rgba(255,211,107,.24),transparent 28%),linear-gradient(135deg,#061735,#0A4D9D 58%,#42A5F5)!important
}

.principal-card{
border-radius:38px!important
}

.principal-photo img{
object-position:center top
}

.alumni-hero{
border-radius:34px!important;
background:radial-gradient(circle at 15% 20%,rgba(255,211,107,.25),transparent 34%),linear-gradient(135deg,#071B3A,#0A4D9D,#1E88E5)!important
}

.alumni-stat{
border-radius:20px!important;
border:1px solid rgba(255,255,255,.18)!important
}

.mini-news{
border-radius:24px!important;
box-shadow:0 18px 45px rgba(8,32,68,.09)!important
}

.sidebar{
background:rgba(255,255,255,.82);
backdrop-filter:blur(16px);
box-shadow:0 18px 45px rgba(8,32,68,.08)
}

.footer{
border-top-left-radius:42px;
border-top-right-radius:42px;
margin-top:36px
}

.footer a:hover{
color:#FFD36B
}

.wa-float{
gap:10px!important;
background:linear-gradient(135deg,#128C7E,#25D366)!important;
padding:13px 22px!important;
border:1px solid rgba(255,255,255,.26);
box-shadow:0 20px 55px rgba(37,211,102,.42)!important
}

.wa-float img{
width:28px;
height:28px;
display:block;
filter:drop-shadow(0 4px 8px rgba(0,0,0,.18))
}

.wa-float span{
font-weight:950;
letter-spacing:.01em
}

.wa-float:hover{
transform:translateY(-5px) scale(1.02)!important
}

.lightbox.active{
display:flex!important;
align-items:center;
justify-content:center
}

.lightbox img{
max-width:min(92vw,1100px);
max-height:84vh;
border-radius:24px
}

.input,select,textarea{
border-radius:18px!important;
background:#f7fbff!important;
border:1px solid #cfe1f7!important
}

.input:focus,select:focus,textarea:focus{
background:#fff!important;
border-color:#42A5F5!important;
box-shadow:0 0 0 5px rgba(66,165,245,.16)!important
}

.admin-sidebar{
background:radial-gradient(circle at top left,rgba(255,211,107,.20),transparent 30%),linear-gradient(180deg,#061735,#0A4D9D 58%,#1E88E5)!important
}

.admin-topbar{
border-radius:34px!important
}

.admin-stat-card{
border-radius:28px!important
}

.admin-brand img{
border-radius:18px!important
}

.admin-table td{
vertical-align:middle
}

@media(max-width:900px){
.brand img{
width:52px!important;
height:52px!important
}

.brand span{
font-size:16px
}

.brand small{
font-size:12px
}

.navbar{
border-radius:0
}

.menu.open{
left:12px!important;
right:12px!important;
width:auto!important;
border:1px solid var(--v14-border);
box-shadow:0 28px 80px rgba(8,32,68,.20)
}

.news-ticker{
transform:none;
margin-top:12px
}

.hero{
border-bottom-left-radius:28px;
border-bottom-right-radius:28px
}

.wa-float{
padding:14px!important
}

.wa-float img{
width:30px;
height:30px
}

.wa-float span{
display:none!important
}

.footer{
border-top-left-radius:28px;
border-top-right-radius:28px
}

}

@media(max-width:520px){
.navwrap{
padding:10px 0
}

.brand img{
width:48px!important;
height:48px!important
}

.brand span{
font-size:14px
}

.hero{
min-height:590px
}

.hero .btn{
width:100%;
margin-right:0
}

.title h2{
font-size:30px
}

.wa-float{
right:14px!important;
bottom:14px!important
}

}

/* =========================================================
   V21 TEFA PREMIUM SECTION
   Teaching Factory cards for KBM Merdeka Belajar
   ========================================================= */
.tefa-section{
background:radial-gradient(circle at 14% 12%,rgba(255,211,107,.22),transparent 28%),linear-gradient(180deg,#f7fbff,#eef7ff 54%,#fff);

}

.tefa-head{
display:flex;
justify-content:space-between;
align-items:flex-end;
gap:24px;
margin-bottom:28px
}

.tefa-head h2{
font-size:clamp(30px,4vw,52px);
line-height:1.05;
margin:0;
color:#071B3A;
font-weight:950;
letter-spacing:-1px
}

.tefa-head p{
max-width:660px;
color:#58708f;
line-height:1.75;
font-size:17px
}

.tefa-grid{
display:grid;
grid-template-columns:repeat(5,minmax(0,1fr));
gap:20px
}

.tefa-card{
position:relative;
overflow:hidden;
border-radius:30px;
background:#fff;
border:1px solid rgba(10,77,157,.12);
box-shadow:0 24px 70px rgba(10,77,157,.12);
transition:.28s
}

.tefa-card:hover{
transform:translateY(-10px);
box-shadow:0 34px 90px rgba(10,77,157,.22)
}

.tefa-card .tefa-img{
height:190px;
background:#eef7ff;
display:flex;
align-items:center;
justify-content:center;
overflow:hidden
}

.tefa-card .tefa-img img{
width:100%;
height:100%;
object-fit:cover;
transition:.45s
}

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

.tefa-card .tefa-body{
padding:20px
}

.tefa-card h3{
margin:0 0 6px;
color:#071B3A;
font-size:21px;
font-weight:950
}

.tefa-card .tefa-sub{
display:inline-flex;
padding:7px 12px;
border-radius:999px;
background:linear-gradient(135deg,#eaf4ff,#fff6d8);
color:#0A4D9D;
font-weight:900;
font-size:12px;
margin-bottom:12px
}

.tefa-card p{
color:#5c708a;
line-height:1.65;
margin:0
}

.tefa-mini-grid{
display:grid;
grid-template-columns:repeat(5,minmax(0,1fr));
gap:18px;
margin-top:18px
}

.tefa-mini-card{
min-height:210px;
border-radius:28px;
background:#fff;
border:1px solid rgba(10,77,157,.12);
box-shadow:0 20px 60px rgba(10,77,157,.10);
overflow:hidden;
transition:.25s
}

.tefa-mini-card:hover{
transform:translateY(-8px)
}

.tefa-mini-card img{
width:100%;
height:118px;
object-fit:cover;
background:#eef7ff
}

.tefa-mini-card div{
padding:15px
}

.tefa-mini-card b{
display:block;
color:#071B3A;
font-size:18px
}

.tefa-mini-card small{
color:#0A4D9D;
font-weight:900
}

.tefa-note{
margin-top:26px;
padding:24px;
border-radius:28px;
background:linear-gradient(135deg,#071B3A,#0A4D9D,#1E88E5);
color:#fff;
box-shadow:0 24px 70px rgba(10,77,157,.20)
}

.tefa-note b{
color:#FFD36B
}

@media(max-width:1180px){
.tefa-grid,.tefa-mini-grid{
grid-template-columns:repeat(3,1fr)
}

}

@media(max-width:760px){
.tefa-head{
display:block
}

.tefa-grid,.tefa-mini-grid{
grid-template-columns:1fr
}

.tefa-card .tefa-img{
height:auto
}

.tefa-card .tefa-img img{
height:auto;
object-fit:contain
}

.tefa-mini-card img{
height:auto;
object-fit:contain
}

}

/* V22 - Pengumuman Premium */
.announcement-strip{
background:linear-gradient(135deg,#071B3A,#0A4D9D,#1E88E5);
color:#fff;
padding:12px 0;
box-shadow:0 16px 35px rgba(10,77,157,.18)
}

.announcement-strip-inner{
display:flex;
align-items:center;
gap:16px;
overflow:hidden
}

.announcement-strip b{
white-space:nowrap;
background:rgba(255,255,255,.14);
padding:8px 14px;
border-radius:999px
}

.announcement-strip marquee{
font-weight:800;
color:#fff
}

.announcements-home{
background:linear-gradient(180deg,#f7fbff,#ffffff)
}

.announcement-grid{
align-items:stretch
}

.announcement-card{
overflow:hidden;
height:100%;
display:flex;
flex-direction:column
}

.announcement-card img{
width:100%;
height:auto;
max-height:240px;
object-fit:contain;
background:#eef7ff;
display:block
}

.announcement-card .card-body{
flex:1
}

.announcement-card h3{
line-height:1.28
}

.news-action-bar{
display:flex;
gap:10px;
flex-wrap:wrap;
align-items:center;
margin-top:22px
}

.btn-wa{
background:linear-gradient(135deg,#25D366,#128C7E)!important;
color:#fff!important
}

.btn-fb{
background:linear-gradient(135deg,#1877F2,#0F4FA8)!important;
color:#fff!important
}

@media(max-width:700px){
.announcement-strip-inner{
display:block
}

.announcement-strip b{
display:inline-block;
margin-bottom:8px
}

.announcement-card img{
max-height:none
}

.news-action-bar .btn{
width:100%;
text-align:center
}

}

/* V23 - Kelas Unggulan & Kelas Industri Premium */
.kelas-industri-section{
background:radial-gradient(circle at 80% 15%,rgba(255,211,107,.20),transparent 28%),linear-gradient(180deg,#ffffff,#f3f8ff 62%,#fff)
}

.kelas-industri-head{
display:flex;
justify-content:space-between;
align-items:flex-end;
gap:28px;
margin-bottom:30px
}

.kelas-industri-head h2{
font-size:clamp(30px,4vw,50px);
line-height:1.05;
margin:0;
color:#071B3A;
font-weight:950
}

.kelas-industri-head p{
max-width:670px;
color:#58708f;
line-height:1.75;
font-size:17px
}

.kelas-industri-grid{
display:grid;
grid-template-columns:repeat(5,minmax(0,1fr));
gap:20px
}

.kelas-industri-card{
border-radius:30px;
background:#fff;
border:1px solid rgba(10,77,157,.12);
box-shadow:0 24px 70px rgba(10,77,157,.12);
overflow:hidden;
transition:.3s
}

.kelas-industri-card:hover{
transform:translateY(-10px);
box-shadow:0 34px 90px rgba(10,77,157,.22)
}

.kelas-industri-img{
background:#eef7ff;
min-height:180px;
display:flex;
align-items:center;
justify-content:center;
overflow:hidden
}

.kelas-industri-img img{
width:100%;
height:auto;
max-height:230px;
object-fit:contain;
display:block;
transition:.45s
}

.kelas-industri-card:hover .kelas-industri-img img{
transform:scale(1.04)
}

.kelas-industri-body{
padding:20px
}

.kelas-industri-body span{
display:inline-flex;
padding:7px 12px;
border-radius:999px;
background:linear-gradient(135deg,#eaf4ff,#fff6d8);
color:#0A4D9D;
font-weight:900;
font-size:12px;
margin-bottom:12px
}

.kelas-industri-body h3{
margin:0 0 8px;
color:#071B3A;
font-size:21px;
font-weight:950
}

.kelas-industri-body p{
color:#5c708a;
line-height:1.65;
margin:0 0 12px
}

.kelas-industri-body a{
color:#0A4D9D;
font-weight:950
}

.kelas-industri-page-hero{
border-radius:36px;
padding:38px;
margin-bottom:30px;
background:radial-gradient(circle at 15% 20%,rgba(255,211,107,.25),transparent 32%),linear-gradient(135deg,#061735,#0A4D9D,#42A5F5);
color:#fff;
box-shadow:0 30px 90px rgba(10,77,157,.22)
}

.kelas-industri-page-hero h1{
font-size:clamp(34px,5vw,62px);
line-height:1.05;
margin:14px 0
}

.kelas-industri-page-hero p{
max-width:850px;
line-height:1.8;
color:#eaf4ff;
font-size:18px
}

.kelas-industri-detail-grid{
display:grid;
gap:28px
}

.kelas-industri-detail{
overflow:hidden
}

.ki-detail-banner{
background:#eef7ff;
display:flex;
align-items:center;
justify-content:center
}

.ki-detail-banner img{
width:100%;
height:auto;
max-height:460px;
object-fit:contain;
display:block
}

.ki-detail-body{
padding:28px
}

.ki-title-row{
display:flex;
gap:18px;
align-items:center;
margin-bottom:18px
}

.ki-title-row img{
width:86px;
height:86px;
object-fit:contain;
border-radius:22px;
background:#eef7ff;
border:1px solid #dcecff;
padding:8px
}

.ki-title-row h2{
margin:8px 0 0;
font-size:34px;
color:#071B3A
}

.ki-detail-body p{
line-height:1.8;
color:#44556b
}

.ki-photo-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:18px;
margin:24px 0
}

.ki-photo-grid div{
background:#f7fbff;
border:1px solid #dcecff;
border-radius:24px;
padding:16px
}

.ki-photo-grid b{
display:block;
margin-bottom:12px;
color:#071B3A
}

.ki-photo-grid img{
width:100%;
height:auto;
max-height:330px;
object-fit:contain;
border-radius:18px;
background:#fff
}

.ki-info-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:18px
}

.ki-info-grid>div{
border-radius:24px;
background:linear-gradient(135deg,#f7fbff,#fff);
border:1px solid #dcecff;
padding:20px
}

.ki-info-grid h3{
margin-top:0;
color:#0A4D9D
}

@media(max-width:1180px){
.kelas-industri-grid{
grid-template-columns:repeat(3,1fr)
}

}

@media(max-width:760px){
.kelas-industri-head{
display:block
}

.kelas-industri-grid,.ki-photo-grid,.ki-info-grid{
grid-template-columns:1fr
}

.kelas-industri-page-hero{
padding:26px
}

.ki-title-row{
align-items:flex-start
}

.ki-title-row h2{
font-size:26px
}

}

/* ===== FINAL V26 NAVBAR + LSP + BERITA INTERACTION ===== */
.navbar{
position:sticky;
top:0;
z-index:999;
background:rgba(255,255,255,.96)!important;
border-bottom:1px solid rgba(10,77,157,.10);
box-shadow:0 12px 36px rgba(8,32,68,.08)
}

.navwrap{
display:flex;
align-items:center;
justify-content:space-between;
gap:18px;
min-height:82px
}

.brand{
display:flex;
align-items:center;
gap:13px;
text-decoration:none;
min-width:245px
}

.brand img{
width:62px!important;
height:62px!important;
object-fit:contain;
border-radius:18px;
background:#fff;
padding:6px;
box-shadow:0 12px 28px rgba(10,77,157,.13)
}

.brand span{
font-weight:950;
color:#071B3A;
line-height:1.16
}

.brand small{
font-weight:800;
color:#0A4D9D
}

.menu{
display:flex;
align-items:center;
gap:4px;
flex-wrap:nowrap
}

.menu>a,.menu-item>a{
display:inline-flex;
align-items:center;
min-height:46px;
padding:10px 12px;
border-radius:999px;
color:#071B3A;
text-decoration:none;
font-weight:900;
font-size:14px;
transition:.22s;
white-space:nowrap
}

.menu>a:hover,.menu-item>a:hover{
background:#eef7ff;
color:#0A4D9D;
transform:translateY(-2px)
}

.nav-ppdb{
padding:11px 17px!important;
color:#fff!important;
background:linear-gradient(135deg,#0A4D9D,#42A5F5)!important
}

.menu-item{
position:relative
}

.dropdown-menu{
position:absolute;
top:100%;
left:0;
min-width:245px;
background:#fff;
border:1px solid #dcecff;
border-radius:20px;
box-shadow:0 22px 60px rgba(8,32,68,.16);
padding:10px;
display:none;
z-index:1000
}

.menu-item:hover .dropdown-menu{
display:block
}

.dropdown-menu a{
display:block;
padding:12px 14px;
border-radius:14px;
text-decoration:none;
color:#071B3A;
font-weight:850
}

.dropdown-menu a:hover{
background:#eef7ff;
color:#0A4D9D
}

.mobile{
display:none;
border:0;
background:linear-gradient(135deg,#0A4D9D,#42A5F5);
color:#fff;
border-radius:14px;
padding:10px 13px;
font-size:22px;
cursor:pointer
}

.lsp-feature-card{
display:grid;
grid-template-columns:240px 1fr;
gap:22px;
align-items:center;
background:#fff;
border:1px solid #dcecff;
border-radius:32px;
box-shadow:0 26px 70px rgba(10,77,157,.13);
overflow:hidden;
padding:18px
}

.lsp-feature-img img{
width:100%;
height:230px;
object-fit:contain;
background:#eef7ff;
border-radius:24px
}

.lsp-feature-body h2{
font-size:32px;
line-height:1.08;
margin:12px 0;
color:#071B3A
}

.lsp-feature-body p{
color:#58708f;
line-height:1.75
}

.lsp-profile-section{
padding:34px 0
}

.lsp-profile-card{
display:grid;
grid-template-columns:360px 1fr;
gap:30px;
align-items:center;
padding:26px
}

.lsp-profile-photo img{
width:100%;
max-height:360px;
object-fit:contain;
background:#eef7ff;
border-radius:26px
}

.lsp-profile-content h2{
font-size:40px;
line-height:1.08;
margin:12px 0;
color:#071B3A
}

.lsp-profile-content h3{
color:#0A4D9D;
margin:0 0 14px
}

.lsp-profile-content p{
line-height:1.85;
color:#44556b
}

.lsp-page-hero{
display:grid;
grid-template-columns:1.05fr .95fr;
gap:34px;
align-items:center;
border-radius:38px;
padding:38px;
background:radial-gradient(circle at 80% 15%,rgba(255,211,107,.22),transparent 28%),linear-gradient(135deg,#061735,#0A4D9D,#42A5F5);
color:#fff;
box-shadow:0 34px 90px rgba(10,77,157,.24)
}

.lsp-page-hero h1{
font-size:clamp(36px,5vw,62px);
line-height:1.05;
margin:14px 0
}

.lsp-page-hero h3{
color:#FFD36B;
margin:0 0 16px
}

.lsp-page-hero p{
line-height:1.85;
color:#eaf4ff;
font-size:18px
}

.lsp-page-hero img{
width:100%;
max-height:430px;
object-fit:contain;
background:rgba(255,255,255,.12);
border-radius:28px;
border:1px solid rgba(255,255,255,.22)
}

.lsp-scheme-grid{
display:grid;
grid-template-columns:repeat(5,1fr);
gap:16px;
margin-top:24px
}

.lsp-scheme{
border-radius:24px;
background:#fff;
border:1px solid #dcecff;
padding:20px;
box-shadow:0 16px 45px rgba(10,77,157,.10);
text-align:center
}

.lsp-scheme b{
display:block;
font-size:24px;
color:#0A4D9D
}

.lsp-scheme span{
font-weight:800;
color:#58708f
}

.news-action-bar{
display:flex;
flex-wrap:wrap;
gap:10px;
align-items:center;
margin:24px 0
}

.news-action-bar form{
margin:0
}

.btn-like{
background:linear-gradient(135deg,#FFD36B,#f59e0b)!important;
color:#071B3A!important;
border:0
}

.news-stat{
display:inline-flex;
align-items:center;
min-height:44px;
padding:0 14px;
border-radius:999px;
background:#eef7ff;
color:#071B3A;
font-weight:900;
border:1px solid #dcecff
}

.comment-box{
margin-top:30px;
padding:24px;
border-radius:28px;
background:#f7fbff;
border:1px solid #dcecff
}

.comment-form{
background:#fff;
border-radius:22px;
padding:18px;
margin-bottom:20px
}

.comment-list{
display:grid;
gap:14px
}

.comment-item{
background:#fff;
border-radius:18px;
border:1px solid #dcecff;
padding:16px
}

.comment-item b{
display:block;
color:#071B3A
}

.comment-item small{
color:#71839b
}

.comment-item p{
margin:8px 0 0;
color:#44556b;
line-height:1.7
}

.hint{
color:#71839b
}

.wa-float img{
width:24px;
height:24px;
object-fit:contain
}

@media(max-width:1180px){
.menu{
position:absolute;
left:18px;
right:18px;
top:92px;
background:#fff;
border:1px solid #dcecff;
border-radius:24px;
box-shadow:0 24px 70px rgba(8,32,68,.18);
padding:14px;
display:none;
flex-direction:column;
align-items:stretch
}

.menu.open{
display:flex
}

.menu>a,.menu-item>a{
justify-content:space-between;
border-radius:16px
}

.dropdown-menu{
position:static;
display:block;
box-shadow:none;
border:0;
padding:4px 0 4px 12px;
background:#f7fbff
}

.mobile{
display:block
}

.navwrap{
position:relative
}

.brand{
min-width:auto
}

.lsp-feature-card,.lsp-profile-card,.lsp-page-hero{
grid-template-columns:1fr
}

.lsp-scheme-grid{
grid-template-columns:repeat(2,1fr)
}

}

@media(max-width:640px){
.brand img{
width:50px!important;
height:50px!important
}

.brand span{
font-size:14px
}

.lsp-scheme-grid{
grid-template-columns:1fr
}

.lsp-feature-card,.lsp-profile-card,.lsp-page-hero{
padding:20px;
border-radius:26px
}

.lsp-feature-img img{
height:auto
}

.news-action-bar .btn,.news-action-bar form,.news-action-bar button,.news-stat{
width:100%;
justify-content:center;
text-align:center
}

}

/* ==========================================================
   FINAL PREMIUM UI SYSTEM - SMKN 1 KUPANG
   Fokus: presisi judul section, hero/tagline, card, responsive.
   ========================================================== */
:root{

  --brand-navy:#061A3A;

  --brand-blue:#0758C9;

  --brand-sky:#24B8FF;

  --brand-gold:#F6B834;

  --brand-ink:#081B3A;

  --brand-muted:#607089;

  --brand-soft:#F4F8FF;

  --brand-line:#DCEAFF;

  --shadow-soft:0 18px 48px rgba(6,26,58,.10);

  --shadow-card:0 24px 70px rgba(7,88,201,.14);

  --shadow-hover:0 34px 90px rgba(7,88,201,.22);

  --radius-xl:34px;

  --radius-lg:26px;

  --radius-md:18px;

}

html{
scroll-behavior:smooth
}

body{
background:linear-gradient(180deg,#f8fbff 0%,#ffffff 44%,#f7fbff 100%);
color:var(--brand-ink);
-webkit-font-smoothing:antialiased;
text-rendering:optimizeLegibility
}

.container{
max-width:1220px!important;
padding-left:24px!important;
padding-right:24px!important
}

.topbar{
background:linear-gradient(90deg,#061A3A,#0758C9)!important;
font-size:12px!important;
padding:7px 0!important
}

.navbar{
top:0!important;
background:rgba(255,255,255,.94)!important;
backdrop-filter:blur(18px);
box-shadow:0 12px 38px rgba(6,26,58,.08)!important
}

.navwrap{
min-height:78px!important;
padding:0!important
}

.brand img{
width:56px!important;
height:56px!important;
border-radius:16px!important
}

.brand span{
font-size:15px!important;
letter-spacing:.1px
}

.brand small{
display:block;
margin-top:3px;
font-size:11px!important;
color:var(--brand-blue)!important
}

.menu{
gap:3px!important
}

.menu>a,.menu-item>a{
font-size:13px!important;
padding:10px 12px!important;
border-radius:999px!important
}

.btn,.btnu{
border-radius:999px!important;
font-weight:900!important;
letter-spacing:.1px!important;
background:linear-gradient(135deg,var(--brand-blue),var(--brand-sky))!important;
color:#fff!important;
border:0!important;
box-shadow:0 15px 36px rgba(7,88,201,.24)!important
}

.btn-gold,.btn-like{
background:linear-gradient(135deg,#FFE08A,var(--brand-gold))!important;
color:#07172d!important
}

.btn-light{
background:#fff!important;
color:var(--brand-blue)!important
}

.btn:hover{
transform:translateY(-3px);
box-shadow:0 24px 55px rgba(7,88,201,.32)!important
}

.hero{
min-height:640px!important;
height:auto!important;
display:flex!important;
align-items:center!important;
position:relative!important;
padding:110px 0 94px!important;
background:radial-gradient(circle at 18% 18%,rgba(36,184,255,.34),transparent 32%),linear-gradient(135deg,#061A3A 0%,#0A4D9D 56%,#168FE8 100%)!important
}

.hero .slide{
opacity:.18!important;
filter:saturate(1.06) contrast(1.08);
background-size:cover!important;
background-position:center!important
}

.hero .slide.active{
opacity:.24!important
}

.slide:after{
background:linear-gradient(90deg,rgba(6,26,58,.94),rgba(6,26,58,.74),rgba(6,26,58,.35))!important
}

.hero-content{
padding-top:0!important;
max-width:760px!important;
margin:0!important
}

.hero .tag{
margin-bottom:34px!important;
padding:10px 18px!important;
background:rgba(255,255,255,.15)!important;
border:1px solid rgba(255,255,255,.38)!important;
box-shadow:0 14px 35px rgba(0,0,0,.14);
font-weight:900!important;
letter-spacing:.3px!important;
color:#fff!important
}

.hero h1{
font-size:clamp(42px,6vw,76px)!important;
line-height:.98!important;
letter-spacing:-2.2px!important;
margin:0 0 24px!important;
text-wrap:balance;
text-shadow:0 18px 50px rgba(0,0,0,.30)
}

.hero p{
max-width:620px!important;
font-size:18px!important;
line-height:1.85!important;
margin:0 0 36px!important;
color:#EAF4FF!important
}

.hero .btn{
margin-right:12px;
margin-bottom:10px;
padding:14px 22px!important
}

.section{
padding:96px 0!important;
position:relative
}

.section.white{
background:#fff
}

.title,.tefa-head,.kelas-industri-head{
display:grid!important;
grid-template-columns:minmax(0,1fr) minmax(280px,560px)!important;
align-items:end!important;
gap:34px!important;
margin:0 0 46px!important
}

.title h2,.tefa-head h2,.kelas-industri-head h2{
font-size:clamp(34px,4.5vw,56px)!important;
line-height:1.02!important;
letter-spacing:-1.8px!important;
margin:10px 0 0!important;
color:var(--brand-ink)!important;
font-weight:950!important;
text-wrap:balance
}

.title p,.tefa-head p,.kelas-industri-head p{
margin:0!important;
color:var(--brand-muted)!important;
line-height:1.82!important;
font-size:16.5px!important
}

.title .btn{
justify-self:start;
margin-top:14px!important
}

.badge,.tefa-sub,.kelas-industri-body span{
display:inline-flex!important;
align-items:center!important;
width:max-content!important;
max-width:100%!important;
min-height:28px!important;
padding:7px 13px!important;
border-radius:999px!important;
background:linear-gradient(135deg,#EAF4FF,#FFFFFF)!important;
border:1px solid #CFE2FF!important;
color:var(--brand-blue)!important;
font-size:11px!important;
font-weight:950!important;
text-transform:uppercase!important;
letter-spacing:.45px!important
}

.announcement-strip{
margin-top:0!important;
background:#fff!important;
border:0!important;
box-shadow:0 16px 45px rgba(6,26,58,.06)!important
}

.announcement-strip-inner,.news-ticker{
min-height:54px!important;
border:1px solid var(--brand-line)!important;
border-radius:18px!important;
background:#fff!important;
box-shadow:var(--shadow-soft);
transform:translateY(-28px)
}

.announcements-home{
padding-top:62px!important;
background:linear-gradient(180deg,#fff,#f6faff)!important
}

.grid{
gap:26px!important
}

.grid-3{
grid-template-columns:repeat(3,minmax(0,1fr))!important
}

.grid-4{
grid-template-columns:repeat(4,minmax(0,1fr))!important
}

.card,.lux-card,.announcement-card,.tefa-card,.kelas-industri-card,.profile-box,.lsp-feature-card,.admin-panel,.admin-stat-card{
border-radius:var(--radius-lg)!important;
border:1px solid rgba(207,226,255,.9)!important;
box-shadow:var(--shadow-card)!important;
background:rgba(255,255,255,.94)!important
}

.card:hover,.lux-card:hover,.announcement-card:hover,.tefa-card:hover,.kelas-industri-card:hover{
transform:translateY(-8px)!important;
box-shadow:var(--shadow-hover)!important
}

.card,.announcement-card,.tefa-card,.kelas-industri-card{
height:100%!important;
display:flex!important;
flex-direction:column!important;
overflow:hidden!important
}

.card img,.announcement-card img{
height:220px!important;
width:100%!important;
object-fit:cover!important;
background:#eef7ff!important
}

.announcement-card img{
object-fit:contain!important;
padding:10px!important
}

.card-body,.tefa-body,.kelas-industri-body{
padding:24px!important;
display:flex!important;
flex-direction:column!important;
gap:12px!important;
flex:1!important
}

.card-body h3,.tefa-body h3,.kelas-industri-body h3{
margin:0!important;
font-size:22px!important;
line-height:1.22!important;
color:var(--brand-ink)!important;
font-weight:950!important
}

.card-body p,.tefa-body p,.kelas-industri-body p{
margin:0!important;
color:var(--brand-muted)!important;
line-height:1.72!important
}

.card-body a,.kelas-industri-body a{
margin-top:auto!important;
color:var(--brand-blue)!important;
font-weight:950!important
}

.profile-gradient{
background:radial-gradient(circle at 82% 18%,rgba(246,184,52,.18),transparent 28%),linear-gradient(180deg,#F5F9FF,#FFFFFF)!important
}

.profile{
grid-template-columns:1fr 1fr!important;
gap:34px!important;
align-items:stretch!important
}

.profile-box,.lsp-feature-card{
min-height:330px!important
}

.profile-box{
padding:34px!important;
display:flex!important;
flex-direction:column!important;
justify-content:center!important
}

.profile-box h2,.lsp-feature-body h2{
font-size:clamp(28px,3vw,40px)!important;
line-height:1.08!important;
margin:12px 0!important
}

.lsp-feature-card{
grid-template-columns:220px 1fr!important;
padding:18px!important;
align-items:center!important
}

.lsp-feature-img img{
height:250px!important;
border-radius:22px!important;
object-fit:contain!important
}

.tefa-section,.kelas-industri-section{
background:radial-gradient(circle at 14% 18%,rgba(36,184,255,.12),transparent 30%),linear-gradient(180deg,#ffffff,#f6faff 72%,#ffffff)!important
}

.tefa-grid,.kelas-industri-grid{
display:grid!important;
grid-template-columns:repeat(5,minmax(0,1fr))!important;
gap:22px!important;
align-items:stretch!important
}

.tefa-img,.kelas-industri-img{
height:190px!important;
min-height:190px!important;
background:linear-gradient(135deg,#EAF4FF,#FFFFFF)!important;
display:flex!important;
align-items:center!important;
justify-content:center!important;
padding:12px!important
}

.tefa-img img,.kelas-industri-img img{
width:100%!important;
height:100%!important;
max-height:none!important;
object-fit:contain!important
}

.tefa-card,.kelas-industri-card{
min-height:430px!important
}

.principal-section{
background:radial-gradient(circle at 80% 14%,rgba(246,184,52,.23),transparent 30%),linear-gradient(135deg,#061A3A,#0758C9 58%,#1BA7F2)!important
}

.principal-card{
border-radius:38px!important;
border:1px solid rgba(255,255,255,.25)!important;
box-shadow:0 36px 100px rgba(0,0,0,.24)!important
}

.news-layout{
align-items:stretch!important
}

.mini-news{
box-shadow:var(--shadow-soft)!important;
border-color:var(--brand-line)!important
}

.form,.article,.sidebar{
border-radius:var(--radius-lg)!important;
border:1px solid var(--brand-line)!important;
box-shadow:var(--shadow-card)!important
}

.input,select,textarea,input[type=file]{
border-radius:16px!important;
border:1px solid #CADCF4!important;
background:#fff!important;
min-height:48px!important
}

.footer{
background:radial-gradient(circle at 12% 16%,rgba(36,184,255,.22),transparent 30%),linear-gradient(135deg,#020A1A,#061A3A 55%,#073B7A)!important
}

.mega-footer-brand{
font-size:24px!important;
font-weight:950!important;
color:#fff!important
}

.admin-premium{
background:#f4f8ff!important
}

.admin-sidebar{
background:linear-gradient(180deg,#061A3A,#083A7D)!important
}

.admin-topbar,.admin-panel{
border-radius:28px!important
}

.admin-stat-card{
transition:.25s!important
}

.admin-stat-card:hover{
transform:translateY(-5px)!important
}

.admin-table{
width:100%!important
}

.admin-table th{
background:#eef6ff!important;
color:#0758C9!important
}

.admin-table th,.admin-table td{
padding:14px!important
}

@media(max-width:1180px){
.tefa-grid,.kelas-industri-grid{
grid-template-columns:repeat(3,minmax(0,1fr))!important
}

.grid-4{
grid-template-columns:repeat(2,minmax(0,1fr))!important
}

.menu{
top:88px!important
}

.hero{
min-height:590px!important
}

.title,.tefa-head,.kelas-industri-head{
grid-template-columns:1fr!important;
gap:14px!important;
text-align:left!important
}

.profile,.lsp-feature-card{
grid-template-columns:1fr!important
}

.lsp-feature-img img{
height:220px!important
}

.navwrap{
min-height:74px!important
}

}

@media(max-width:760px){
.container{
padding-left:18px!important;
padding-right:18px!important
}

.topbar{
display:none!important
}

.hero{
min-height:620px!important;
padding:96px 0 72px!important;
text-align:left!important
}

.hero .tag{
margin-bottom:28px!important;
font-size:10px!important;
white-space:normal!important
}

.hero h1{
font-size:clamp(38px,12vw,52px)!important;
letter-spacing:-1.4px!important;
margin-bottom:22px!important
}

.hero p{
font-size:16px!important;
margin-bottom:30px!important
}

.hero .btn{
width:100%!important;
text-align:center!important;
margin-right:0!important
}

.section{
padding:74px 0!important
}

.title h2,.tefa-head h2,.kelas-industri-head h2{
font-size:34px!important;
letter-spacing:-1px!important
}

.title p,.tefa-head p,.kelas-industri-head p{
font-size:15.5px!important
}

.grid-3,.grid-4,.tefa-grid,.kelas-industri-grid,.news-layout,.article-wrap,.footer-grid{
grid-template-columns:1fr!important
}

.card img,.announcement-card img{
height:205px!important
}

.tefa-card,.kelas-industri-card{
min-height:0!important
}

.tefa-img,.kelas-industri-img{
height:210px!important
}

.profile-box,.lsp-feature-card{
min-height:0!important;
padding:24px!important
}

.announcement-strip-inner,.news-ticker{
transform:none!important;
margin:0 0 16px!important
}

.brand span{
font-size:13px!important
}

.brand img{
width:48px!important;
height:48px!important
}

.principal-card{
grid-template-columns:1fr!important;
padding:22px!important
}

.principal-photo img{
height:320px!important
}

.wa-float{
right:16px!important;
bottom:16px!important
}

.footer{
padding-top:42px!important
}

}

@media(max-width:420px){
.hero h1{
font-size:36px!important
}

.title h2,.tefa-head h2,.kelas-industri-head h2{
font-size:30px!important
}

.card-body,.tefa-body,.kelas-industri-body{
padding:20px!important
}

.section{
padding:62px 0!important
}

}

/* === FINAL PRESISI SMKN 1 KUPANG - UI, URUTAN HOME, RESPONSIVE, UPLOAD FRIENDLY === */
:root{
--final-blue:#0758c9;
--final-blue2:#0b4ea2;
--final-ink:#071b42;
--final-gold:#ffd33d;
--final-soft:#f5f9ff;
--final-line:#cfe2ff;
--final-muted:#5d7193;
--final-shadow:0 26px 80px rgba(7,88,201,.14)
}

body{
background:linear-gradient(180deg,#ffffff,#f7fbff 38%,#ffffff)!important;
color:var(--final-ink)!important;
overflow-x:hidden!important
}

.container{
max-width:1200px!important
}

.navbar{
border-bottom:1px solid rgba(207,226,255,.75)!important
}

.hero{
min-height:650px!important;
padding:100px 0 88px!important;
border-radius:0 0 34px 34px!important;
background:#061a3a!important
}

.hero .slide{
opacity:.82!important;
filter:saturate(1.08) contrast(1.03) brightness(.98)!important
}

.hero .slide.active{
opacity:.9!important
}

.slide:after{
background:linear-gradient(90deg,rgba(4,20,50,.88) 0%,rgba(6,42,96,.64) 38%,rgba(8,64,130,.18) 72%,rgba(8,64,130,.06) 100%)!important
}

.hero .tag{
margin-bottom:30px!important;
background:rgba(255,255,255,.16)!important;
color:#fff!important;
border-color:rgba(255,255,255,.42)!important
}

.hero h1{
max-width:760px!important
}

.hero h1,.hero p{
color:#fff!important
}

.section{
padding:84px 0!important
}

.principal-premium{
padding:78px 0 72px!important;
background:radial-gradient(circle at 8% 70%,rgba(35,199,255,.12),transparent 22%),radial-gradient(circle at 92% 20%,rgba(255,211,61,.16),transparent 25%),linear-gradient(180deg,#ffffff,#f5f9ff)!important;
overflow:hidden!important
}

.principal-premium:before{
content:""!important;
position:absolute!important;
left:-120px!important;
bottom:30px!important;
width:360px!important;
height:360px!important;
border-radius:48% 52% 62% 38%!important;
background:linear-gradient(135deg,rgba(35,199,255,.18),rgba(7,88,201,.08))!important;
filter:blur(.2px)!important
}

.principal-premium:after{
content:""!important;
position:absolute!important;
right:-90px!important;
top:34px!important;
width:290px!important;
height:290px!important;
border-radius:54% 46% 41% 59%!important;
background:linear-gradient(135deg,rgba(255,211,61,.22),rgba(255,255,255,.08))!important
}

.principal-card{
display:grid!important;
grid-template-columns:minmax(310px,410px) 1fr!important;
gap:46px!important;
align-items:center!important;
padding:34px!important;
border-radius:36px!important;
background:rgba(255,255,255,.9)!important;
border:1px solid rgba(207,226,255,.95)!important;
box-shadow:0 34px 100px rgba(7,88,201,.16)!important;
color:var(--final-ink)!important;
position:relative!important;
overflow:hidden!important
}

.principal-card:before{
content:"";
position:absolute;
left:32px;
top:32px;
width:250px;
height:250px;
background:linear-gradient(135deg,var(--final-blue),#20b7ff);
border-radius:34px;
z-index:0
}

.principal-card:after{
content:"";
position:absolute;
left:58px;
top:68px;
width:260px;
height:260px;
background:linear-gradient(135deg,var(--final-gold),#ffe47a);
border-radius:34px;
z-index:0;
opacity:.92
}

.principal-photo{
position:relative!important;
z-index:1!important
}

.principal-photo img{
width:100%!important;
height:430px!important;
object-fit:cover!important;
border-radius:26px!important;
border:8px solid #fff!important;
box-shadow:0 24px 65px rgba(7,27,66,.2)!important;
background:#eaf4ff!important
}

.principal-text{
position:relative!important;
z-index:1!important
}

.principal-text h2{
font-size:clamp(36px,4.6vw,58px)!important;
line-height:1.02!important;
letter-spacing:-1.8px!important;
margin:18px 0 6px!important;
color:var(--final-ink)!important;
font-weight:950!important
}

.principal-text h3{
margin:0 0 22px!important;
color:var(--final-blue)!important;
font-size:18px!important;
font-weight:900!important
}

.principal-text p{
font-size:17px!important;
line-height:1.9!important;
color:var(--final-muted)!important;
max-width:760px!important
}

.principal-actions{
display:flex!important;
gap:14px!important;
flex-wrap:wrap!important;
margin-top:28px!important
}

.announcement-strip{
padding:0 0 28px!important;
background:linear-gradient(180deg,#fff,#f7fbff)!important
}

.announcement-strip-inner,.news-ticker{
transform:none!important;
display:flex!important;
align-items:center!important;
gap:18px!important;
min-height:58px!important;
border-radius:18px!important;
border:1px solid var(--final-line)!important;
background:#fff!important;
box-shadow:0 16px 50px rgba(7,88,201,.09)!important;
color:var(--final-ink)!important;
overflow:hidden!important
}

.announcement-strip-inner b,.news-ticker b{
flex:0 0 auto!important;
display:inline-flex!important;
align-items:center!important;
min-height:34px!important;
padding:8px 14px!important;
border-radius:999px!important;
background:linear-gradient(135deg,#eaf4ff,#fff)!important;
color:var(--final-blue)!important;
font-weight:950!important;
letter-spacing:.45px!important
}

.announcement-strip marquee,.news-ticker marquee{
color:var(--final-ink)!important;
font-weight:800!important;
line-height:1.4!important
}

.tefa-section{
padding-top:88px!important;
background:radial-gradient(circle at 15% 10%,rgba(35,199,255,.13),transparent 30%),linear-gradient(180deg,#fff,#f6faff 76%,#fff)!important
}

.tefa-grid{
grid-template-columns:repeat(5,minmax(0,1fr))!important
}

.tefa-card{
min-height:440px!important;
border:1px solid rgba(207,226,255,.95)!important;
box-shadow:var(--final-shadow)!important
}

.tefa-img{
height:190px!important
}

.announcements-home{
padding-top:78px!important;
background:linear-gradient(180deg,#f7fbff,#fff)!important
}

.title,.tefa-head,.kelas-industri-head{
display:grid!important;
grid-template-columns:minmax(0,1fr) minmax(260px,520px)!important;
align-items:end!important;
gap:34px!important
}

.title h2,.tefa-head h2,.kelas-industri-head h2{
font-size:clamp(34px,4.2vw,54px)!important;
line-height:1.04!important;
color:var(--final-ink)!important
}

.title p,.tefa-head p,.kelas-industri-head p{
color:var(--final-muted)!important
}

.card,.lux-card,.announcement-card,.tefa-card,.kelas-industri-card{
border-color:rgba(207,226,255,.95)!important;
box-shadow:var(--final-shadow)!important
}

.card-body h3,.tefa-body h3,.kelas-industri-body h3{
color:var(--final-ink)!important
}

.breaking{
background:#fff!important;
border:0!important;
padding:0 0 22px!important
}

.profile-gradient{
background:linear-gradient(180deg,#fff,#f7fbff)!important
}

.wa-float{
box-shadow:0 18px 55px rgba(22,163,74,.32)!important
}

@media(max-width:1180px){
.principal-card{
grid-template-columns:1fr!important
}

.principal-card:before,.principal-card:after{
display:none!important
}

.principal-photo img{
max-width:420px!important;
display:block!important;
margin:auto!important
}

.tefa-grid{
grid-template-columns:repeat(3,minmax(0,1fr))!important
}

}

@media(max-width:760px){
.hero{
min-height:590px!important;
padding:84px 0 64px!important;
border-radius:0 0 24px 24px!important
}

.principal-premium{
padding:58px 0!important
}

.principal-card{
padding:20px!important;
border-radius:28px!important;
gap:24px!important
}

.principal-photo img{
height:340px!important
}

.principal-text h2{
font-size:34px!important;
letter-spacing:-1px!important
}

.principal-text p{
font-size:15.5px!important
}

.principal-actions .btn{
width:100%!important;
text-align:center!important
}

.announcement-strip-inner,.news-ticker{
align-items:flex-start!important;
flex-direction:column!important;
padding:14px 16px!important;
gap:10px!important
}

.tefa-grid,.grid-3,.grid-4,.news-layout,.profile{
grid-template-columns:1fr!important
}

.title,.tefa-head,.kelas-industri-head{
grid-template-columns:1fr!important;
gap:14px!important
}

.section{
padding:66px 0!important
}

.tefa-section,.announcements-home{
padding-top:64px!important
}

}

/* === FINAL TERAKHIR: HOME ORDER + HOSTING SAFE + RESPONSIVE PREMIUM === */
.hero .slide{
background-repeat:no-repeat!important;
background-size:cover!important;
background-position:center!important
}

.hero .slide:after{
content:"";
position:absolute;
inset:0;
background:linear-gradient(90deg,rgba(4,18,46,.78),rgba(7,58,130,.46),rgba(7,58,130,.10))!important
}

.hero .tag{
max-width:100%;
white-space:normal!important;
color:#fff!important
}

.principal-text .kepsek-name{
font-size:clamp(32px,4.2vw,52px)!important;
line-height:1.05!important;
max-width:100%!important;
overflow-wrap:normal!important;
word-break:normal!important;
text-wrap:balance!important
}

.principal-card{
isolation:isolate
}

.principal-card:before,.principal-card:after{
pointer-events:none
}

.profile-gradient{
padding-top:84px!important
}

.lsp-feature-card{
display:grid;
grid-template-columns:320px 1fr;
gap:28px;
align-items:center;
border-radius:34px;
overflow:hidden;
background:#fff;
border:1px solid rgba(207,226,255,.95);
box-shadow:var(--final-shadow)
}

.lsp-feature-img img{
width:100%;
height:100%;
min-height:260px;
object-fit:cover
}

.lsp-feature-body{
padding:30px
}

.gallery-card{
position:relative;
min-height:250px
}

.gallery-card img{
width:100%;
height:245px;
object-fit:cover
}

.gallery-caption{
position:absolute;
left:14px;
right:14px;
bottom:14px;
padding:12px 14px;
border-radius:18px;
background:rgba(255,255,255,.88);
backdrop-filter:blur(12px);
color:#071b42;
box-shadow:0 12px 35px rgba(0,0,0,.12)
}

.achievements-home{
background:linear-gradient(180deg,#fff,#f7fbff)
}

.news-info-layout{
display:grid;
grid-template-columns:minmax(0,1fr) 360px;
gap:28px;
align-items:start
}

.news-main-col{
display:grid;
gap:22px
}

.news-headline img{
width:100%;
height:360px;
object-fit:cover
}

.news-list{
display:grid;
gap:14px
}

.mini-news{
display:grid;
grid-template-columns:140px 1fr;
gap:14px;
align-items:center;
padding:12px;
border-radius:22px
}

.mini-news img{
width:140px;
height:100px;
object-fit:cover;
border-radius:16px
}

.mini-news b{
display:block;
color:#071b42;
line-height:1.35
}

.mini-news small{
display:block;
color:#64748b;
margin-top:6px
}

.info-sidebar{
padding:22px;
border-radius:28px;
position:sticky;
top:98px;
background:linear-gradient(180deg,#fff,#f3f8ff)
}

.info-sidebar-head{
display:flex;
gap:12px;
align-items:center;
padding:16px;
border-radius:22px;
background:linear-gradient(135deg,#0758c9,#20b7ff);
color:#fff;
margin-bottom:14px
}

.info-sidebar-head span{
font-size:26px
}

.info-sidebar-head b{
display:block;
font-size:22px
}

.info-sidebar-head small{
color:#eaf6ff
}

.info-item{
display:block;
text-decoration:none;
color:#071b42;
padding:15px 6px;
border-bottom:1px solid #dbeafe
}

.info-item b{
display:block;
line-height:1.4
}

.info-item small{
color:#0758c9;
font-weight:800
}

.info-btn{
width:100%;
margin-top:16px
}

.announcement-strip,.announcements-home,.breaking{
display:none!important
}

.card img{
object-fit:cover
}

.title{
align-items:center!important
}

.title>.btn{
justify-self:end
}

@media(max-width:980px){
.news-info-layout,.lsp-feature-card{
grid-template-columns:1fr!important
}

.info-sidebar{
position:relative;
top:0
}

.news-headline img{
height:260px
}

.lsp-feature-img img{
height:260px
}

.title>.btn{
justify-self:start
}

.principal-text .kepsek-name{
font-size:clamp(28px,7vw,40px)!important
}

}

@media(max-width:560px){
.hero{
min-height:560px!important;
padding:78px 0 56px!important
}

.hero h1{
font-size:clamp(34px,10.5vw,42px)!important
}

.hero p{
font-size:15.5px!important
}

.principal-photo img{
height:310px!important
}

.principal-text .kepsek-name{
font-size:31px!important;
line-height:1.12!important;
text-wrap:auto!important
}

.gallery-card img{
height:220px
}

.news-headline img{
height:220px
}

.mini-news{
grid-template-columns:92px 1fr
}

.mini-news img{
width:92px;
height:78px
}

.info-sidebar{
padding:16px
}

.info-sidebar-head b{
font-size:19px
}

.section{
padding:58px 0!important
}

}

/* === FINAL ELEGANT 3D SECTION ICONS + INFO TOP (2026-06-07) === */
.section-icon{

  width:48px!important;
height:48px!important;
min-width:48px!important;

  display:inline-flex!important;
align-items:center!important;
justify-content:center!important;

  border-radius:16px!important;
color:#fff!important;
font-size:21px!important;

  background:linear-gradient(145deg,#f8fbff 0%,#0b5ed7 42%,#063d91 100%)!important;

  box-shadow:inset 3px 3px 8px rgba(255,255,255,.42),inset -8px -10px 18px rgba(4,22,56,.35),0 14px 28px rgba(7,88,201,.28)!important;

  position:relative!important;
overflow:hidden!important;
vertical-align:middle!important;

}

.section-icon:before{
content:"";
position:absolute;
left:8px;
top:6px;
width:58%;
height:38%;
border-radius:999px;
background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(255,255,255,0));
filter:blur(.2px)
}

.section-icon i{
position:relative;
z-index:2;
text-shadow:0 2px 6px rgba(0,0,0,.26)
}

.badge-icon{
display:inline-flex!important;
align-items:center!important;
gap:10px!important;
padding:7px 14px 7px 7px!important;
background:linear-gradient(135deg,#eef6ff,#fff)!important;
border:1px solid #d7e8ff!important;
box-shadow:0 12px 28px rgba(7,88,201,.10)!important;
color:#073b7a!important
}

.badge-icon .section-icon{
width:34px!important;
height:34px!important;
min-width:34px!important;
border-radius:12px!important;
font-size:15px!important;
box-shadow:inset 2px 2px 6px rgba(255,255,255,.45),inset -6px -8px 14px rgba(4,22,56,.32),0 10px 20px rgba(7,88,201,.22)!important
}

.icon-info{
background:linear-gradient(145deg,#fff4bf 0%,#f59e0b 45%,#b45309 100%)!important;
box-shadow:inset 3px 3px 8px rgba(255,255,255,.45),inset -8px -10px 18px rgba(82,45,5,.35),0 14px 28px rgba(245,158,11,.30)!important
}

.icon-principal{
background:linear-gradient(145deg,#dbeafe 0%,#2563eb 45%,#0b2b6a 100%)!important
}

.icon-school{
background:linear-gradient(145deg,#e0f2fe 0%,#0284c7 45%,#075985 100%)!important
}

.icon-certificate{
background:linear-gradient(145deg,#fff7cc 0%,#eab308 45%,#92400e 100%)!important
}

.icon-factory{
background:linear-gradient(145deg,#e5e7eb 0%,#475569 45%,#0f172a 100%)!important
}

.icon-laptop{
background:linear-gradient(145deg,#dcfce7 0%,#16a34a 45%,#065f46 100%)!important
}

.icon-medal{
background:linear-gradient(145deg,#ffedd5 0%,#f97316 45%,#9a3412 100%)!important
}

.icon-alumni{
background:linear-gradient(145deg,#ede9fe 0%,#7c3aed 45%,#3b0764 100%)!important
}

.icon-gallery{
background:linear-gradient(145deg,#fce7f3 0%,#db2777 45%,#831843 100%)!important
}

.icon-news{
background:linear-gradient(145deg,#cffafe 0%,#0891b2 45%,#164e63 100%)!important
}

.premium-info-top{
padding:32px 0 0!important;
background:linear-gradient(180deg,#fff,#f7fbff)!important;
position:relative;
z-index:4!important
}

.premium-info-card{
display:grid!important;
grid-template-columns:72px minmax(0,1fr) auto!important;
gap:20px!important;
align-items:center!important;
padding:24px 26px!important;
border-radius:30px!important;
background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(236,246,255,.96))!important;
border:1px solid #cfe2ff!important;
box-shadow:0 24px 70px rgba(7,88,201,.14)!important;
position:relative!important;
overflow:hidden!important
}

.premium-info-card:before{
content:"";
position:absolute;
right:-80px;
top:-90px;
width:240px;
height:240px;
border-radius:50%;
background:radial-gradient(circle,rgba(255,211,61,.34),rgba(255,211,61,0) 70%)
}

.premium-info-card:after{
content:"";
position:absolute;
left:12%;
bottom:-80px;
width:220px;
height:160px;
border-radius:50%;
background:radial-gradient(circle,rgba(32,183,255,.20),rgba(32,183,255,0) 70%)
}

.premium-info-card>*{
position:relative;
z-index:2
}

.premium-info-icon{
width:64px!important;
height:64px!important;
min-width:64px!important;
border-radius:22px!important;
font-size:28px!important
}

.premium-kicker{
display:block!important;
font-size:13px!important;
text-transform:uppercase!important;
letter-spacing:.8px!important;
font-weight:950!important;
color:#0758c9!important;
margin-bottom:4px!important
}

.premium-info-content h2{
margin:0 0 4px!important;
color:#071b42!important;
font-size:clamp(22px,2.5vw,34px)!important;
line-height:1.16!important;
font-weight:950!important;
letter-spacing:-.7px!important
}

.premium-info-content p{
margin:0!important;
color:#475569!important;
font-weight:700!important;
line-height:1.55!important
}

.premium-info-btn{
white-space:nowrap!important
}

.principal-premium{
padding-top:56px!important
}

.principal-text .kepsek-name{
font-size:clamp(30px,3.6vw,48px)!important;
line-height:1.08!important;
letter-spacing:-1.2px!important;
text-wrap:balance!important
}

.info-sidebar-head .section-icon{
width:48px!important;
height:48px!important;
min-width:48px!important
}

@media(max-width:760px){
.premium-info-card{
grid-template-columns:54px 1fr!important;
padding:18px!important;
border-radius:24px!important;
gap:14px!important
}

.premium-info-icon{
width:50px!important;
height:50px!important;
min-width:50px!important;
border-radius:17px!important;
font-size:22px!important
}

.premium-info-btn{
grid-column:1/-1!important;
width:100%!important;
text-align:center!important
}

.premium-info-content h2{
font-size:22px!important
}

.premium-info-content p{
font-size:14.5px!important
}

.badge-icon{
gap:8px!important
}

.badge-icon .section-icon{
width:30px!important;
height:30px!important;
min-width:30px!important;
font-size:13px!important
}

.section-icon{
width:42px!important;
height:42px!important;
min-width:42px!important
}

.principal-text .kepsek-name{
font-size:30px!important;
line-height:1.12!important
}

}

/* FINAL FIX: tagline topbar restored + profile duplicate button removed spacing */
.topbar-premium{
display:block!important;
background:linear-gradient(90deg,#031633,#0758c9,#1e88e5)!important;
color:#fff!important;
border-bottom:1px solid rgba(255,255,255,.12)!important;
box-shadow:0 8px 24px rgba(3,22,51,.12)!important;

}

.topbar-premium .topflex{
display:flex!important;
align-items:center!important;
justify-content:space-between!important;
gap:18px!important;
min-height:34px!important;
font-size:13px!important;
font-weight:800!important;
letter-spacing:.15px!important;
white-space:nowrap!important;
overflow:hidden!important;

}

.topbar-premium .top-tagline{
display:inline-flex!important;
align-items:center!important;
gap:8px!important;
color:#fff!important;
text-transform:uppercase!important;

}

.topbar-premium .top-address{
color:#eaf6ff!important;
overflow:hidden!important;
text-overflow:ellipsis!important;

}

.topbar-premium .top-contact{
color:#fff!important;

}

.profile-box .btn[href="?page=profil"]{
display:none!important;

}

.profile-box{
justify-content:center!important;

}

@media(max-width:900px){
.topbar-premium .topflex{
justify-content:center!important;
text-align:center!important;
white-space:normal!important;
line-height:1.35!important;
padding:6px 0!important
}

.topbar-premium .top-address,.topbar-premium .top-contact{
display:none!important
}

}

@media(max-width:760px){
.topbar-premium{
display:block!important
}

.topbar-premium .topflex{
font-size:11px!important;
min-height:30px!important
}

}

/* FINAL HOME ELEGAN - info atas kepsek, icon 3D, responsive kepsek */
.premium-info-strip{
padding:34px 0 0!important;
background:linear-gradient(180deg,#f7fbff,#ffffff)!important;
position:relative!important;
z-index:3!important
}

.premium-info-card{
display:grid!important;
grid-template-columns:74px minmax(0,1fr) auto!important;
gap:20px!important;
align-items:center!important;
padding:22px 26px!important;
border-radius:30px!important;
background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(239,247,255,.94))!important;
border:1px solid rgba(180,210,255,.95)!important;
box-shadow:0 28px 80px rgba(7,88,201,.15)!important;
position:relative!important;
overflow:hidden!important
}

.premium-info-card:before{
content:"";
position:absolute;
inset:0;
background:radial-gradient(circle at 8% 0%,rgba(35,199,255,.22),transparent 34%),radial-gradient(circle at 96% 30%,rgba(255,211,107,.24),transparent 30%);
pointer-events:none!important
}

.premium-info-card>*{
position:relative!important;
z-index:2!important
}

.premium-info-icon{
width:74px!important;
height:74px!important;
min-width:74px!important;
border-radius:24px!important;
font-size:30px!important;
box-shadow:inset 0 2px 8px rgba(255,255,255,.75),0 18px 40px rgba(7,88,201,.28)!important
}

.premium-kicker{
display:block!important;
font-size:13px!important;
text-transform:uppercase!important;
letter-spacing:.9px!important;
font-weight:950!important;
color:#0758c9!important;
margin-bottom:6px!important
}

.premium-info-content h2{
margin:0 0 4px!important;
color:#071b42!important;
font-size:clamp(22px,2.7vw,34px)!important;
line-height:1.15!important;
font-weight:950!important;
letter-spacing:-.8px!important
}

.premium-info-content p{
margin:0!important;
color:#475569!important;
font-weight:750!important;
line-height:1.55!important
}

.premium-info-btn{
white-space:nowrap!important
}

.principal-premium{
padding-top:58px!important
}

.principal-text .kepsek-name{
font-size:clamp(28px,3.25vw,44px)!important;
line-height:1.08!important;
letter-spacing:-1px!important;
word-break:keep-all!important;
overflow-wrap:normal!important
}

.section-icon{
box-shadow:inset 0 2px 7px rgba(255,255,255,.78),0 12px 26px rgba(7,88,201,.22)!important;
text-shadow:0 2px 8px rgba(0,0,0,.18)!important
}

.badge-icon{
display:inline-flex!important;
align-items:center!important;
gap:10px!important
}

.icon-school{
background:linear-gradient(145deg,#e0f2fe 0%,#38bdf8 45%,#075985 100%)!important
}

.icon-certificate{
background:linear-gradient(145deg,#fef3c7 0%,#f59e0b 45%,#92400e 100%)!important
}

.icon-factory{
background:linear-gradient(145deg,#e5e7eb 0%,#64748b 45%,#0f172a 100%)!important
}

.icon-laptop{
background:linear-gradient(145deg,#dbeafe 0%,#3b82f6 45%,#1e3a8a 100%)!important
}

.icon-medal{
background:linear-gradient(145deg,#fef9c3 0%,#eab308 45%,#854d0e 100%)!important
}

.icon-graduate{
background:linear-gradient(145deg,#ede9fe 0%,#8b5cf6 45%,#3b0764 100%)!important
}

.icon-gallery{
background:linear-gradient(145deg,#fce7f3 0%,#ec4899 45%,#831843 100%)!important
}

.icon-news{
background:linear-gradient(145deg,#e0f2fe 0%,#0ea5e9 45%,#075985 100%)!important
}

.icon-info{
background:linear-gradient(145deg,#dbeafe 0%,#0758c9 48%,#061a3d 100%)!important
}

.profile-box .btn[href*="profil"], .profile-box a.btn{
display:none!important
}

@media(max-width:900px){
.premium-info-card{
grid-template-columns:58px 1fr!important;
padding:18px!important;
border-radius:24px!important;
gap:14px!important
}

.premium-info-icon{
width:58px!important;
height:58px!important;
min-width:58px!important;
border-radius:19px!important;
font-size:24px!important
}

.premium-info-btn{
grid-column:1/-1!important;
width:100%!important;
text-align:center!important
}

.principal-text .kepsek-name{
font-size:clamp(27px,6.2vw,38px)!important;
line-height:1.12!important
}

}

@media(max-width:560px){
.premium-info-strip{
padding-top:24px!important
}

.premium-info-content h2{
font-size:21px!important
}

.premium-info-content p{
font-size:14px!important
}

.premium-kicker{
font-size:11px!important
}

.principal-text .kepsek-name{
font-size:28px!important;
letter-spacing:-.5px!important
}

}

/* FINAL: Profil Sekolah duplicate box removed from homepage */
.lsp-home-only{
padding-top:70px!important;
background:linear-gradient(180deg,#fff,#f7fbff)!important;

}

.lsp-home-only .container{
max-width:980px!important;

}

.lsp-home-only .lsp-feature-card{
grid-template-columns:330px 1fr!important;

}

@media(max-width:980px){
.lsp-home-only .lsp-feature-card{
grid-template-columns:1fr!important;

}

}

/* ===== FINAL MODERN PROFIL PAGE - PRESISI HOSTING ===== */
.profile-action-grid{
display:grid;
grid-template-columns:repeat(4,minmax(0,1fr));
gap:20px;
margin:34px 0 42px
}

.profile-action-card{
position:relative;
min-height:188px;
padding:24px;
border-radius:30px;
text-decoration:none;
color:#082044;
background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(239,248,255,.9));
border:1px solid rgba(30,136,229,.18);
box-shadow:0 24px 70px rgba(8,32,68,.11);
display:flex;
flex-direction:column;
justify-content:space-between;
overflow:hidden;
transition:.35s ease
}

.profile-action-card:before{
content:"";
position:absolute;
right:-40px;
top:-40px;
width:132px;
height:132px;
border-radius:50%;
background:radial-gradient(circle,rgba(30,136,229,.20),transparent 68%)
}

.profile-action-card:after{
content:"";
position:absolute;
inset:auto 0 0 0;
height:5px;
background:linear-gradient(90deg,#0b5ed7,#23c7ff,#ffd36b);
opacity:.85
}

.profile-action-card:hover{
transform:translateY(-8px);
box-shadow:0 34px 95px rgba(10,77,157,.22);
border-color:rgba(30,136,229,.38)
}

.profile-action-card span{
position:relative;
z-index:2
}

.profile-action-card b{
display:block;
font-size:20px;
line-height:1.25;
margin-top:10px
}

.profile-action-card small{
display:block;
color:#61718a;
font-weight:700;
margin-top:7px;
line-height:1.45
}

.profile-action-card em{
position:relative;
z-index:2;
font-style:normal;
color:#0b63ce;
font-weight:900;
display:inline-flex;
align-items:center;
gap:8px;
margin-top:18px
}

.profile-action-icon{
width:54px;
height:54px;
display:inline-flex;
align-items:center;
justify-content:center;
border-radius:18px;
background:linear-gradient(145deg,#0b5ed7,#23c7ff);
box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 16px 34px rgba(10,77,157,.28);
color:#fff;
font-size:23px;
text-shadow:0 2px 8px rgba(0,0,0,.22)
}

.profile-action-icon.small{
width:42px;
height:42px;
border-radius:15px;
font-size:18px;
margin-right:10px
}

.modern-identity-section{
padding:36px;
margin:12px 0 38px;
border-radius:36px;
background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(239,248,255,.82));
border:1px solid rgba(30,136,229,.18);
box-shadow:0 28px 85px rgba(8,32,68,.10);
overflow:hidden;
position:relative
}

.modern-identity-section:before{
content:"";
position:absolute;
right:-95px;
top:-95px;
width:260px;
height:260px;
border-radius:50%;
background:radial-gradient(circle,rgba(255,211,107,.22),transparent 70%)
}

.modern-section-head{
position:relative;
z-index:1;
display:flex;
align-items:flex-start;
justify-content:space-between;
gap:28px;
margin-bottom:26px
}

.modern-section-badge{
display:inline-flex;
align-items:center;
padding:8px 18px 8px 8px;
border-radius:999px;
background:#fff;
border:1px solid #bfdbfe;
color:#0758c9;
font-weight:950;
box-shadow:0 14px 36px rgba(10,77,157,.10);
white-space:nowrap
}

.modern-section-head h2{
font-size:clamp(30px,4vw,48px);
line-height:1.08;
margin:8px 0 0;
color:#082044;
letter-spacing:-1px
}

.modern-section-head p{
max-width:520px;
margin:14px 0 0;
color:#64748b;
line-height:1.75;
font-size:17px
}

.identity-modern-grid{
position:relative;
z-index:1;
display:grid;
grid-template-columns:repeat(4,minmax(0,1fr));
gap:18px
}

.identity-modern-card{
min-height:138px;
border-radius:26px;
background:#fff;
border:1px solid rgba(30,136,229,.14);
box-shadow:0 16px 45px rgba(8,32,68,.08);
padding:22px;
display:flex;
flex-direction:column;
justify-content:center;
transition:.3s ease
}

.identity-modern-card:hover{
transform:translateY(-5px);
box-shadow:0 26px 70px rgba(10,77,157,.16)
}

.identity-modern-card i{
width:44px;
height:44px;
border-radius:15px;
display:inline-flex;
align-items:center;
justify-content:center;
background:linear-gradient(145deg,#eaf5ff,#fff);
color:#0b63ce;
box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 12px 28px rgba(10,77,157,.12);
font-size:19px;
margin-bottom:14px
}

.identity-modern-card small{
font-weight:900;
color:#0b63ce;
text-transform:uppercase;
letter-spacing:.5px
}

.identity-modern-card strong{
font-size:19px;
line-height:1.45;
color:#102348;
margin-top:7px;
word-break:break-word
}

.identity-modern-card.wide{
grid-column:span 2
}

@media(max-width:1100px){
.profile-action-grid,.identity-modern-grid{
grid-template-columns:repeat(2,minmax(0,1fr))
}

.modern-section-head{
display:block
}

.modern-section-head p{
max-width:100%
}

}

@media(max-width:620px){
.profile-action-grid,.identity-modern-grid{
grid-template-columns:1fr
}

.profile-action-card{
min-height:160px;
padding:20px
}

.modern-identity-section{
padding:22px;
border-radius:28px
}

.identity-modern-card.wide{
grid-column:span 1
}

.modern-section-badge{
white-space:normal
}

.modern-section-head h2{
font-size:30px
}

.identity-modern-card{
min-height:122px
}

}

/* =========================================================
   HERO SLIDER FINAL PROFESIONAL - TERANG, AUTOPLAY, RESPONSIVE
   ========================================================= */
.home-hero-final{

    min-height:720px!important;

    height:calc(100vh - 112px)!important;

    max-height:860px!important;

    background:#eaf6ff!important;

    border-radius:0 0 34px 34px!important;

    overflow:hidden!important;

    position:relative!important;

}

.home-hero-final .slide:after{
display:none!important;
content:none!important
}

.home-hero-final:before{

    content:""!important;

    position:absolute!important;

    inset:0!important;

    z-index:2!important;

    background:linear-gradient(90deg,rgba(4,18,43,.78) 0%,rgba(5,37,83,.54) 31%,rgba(255,255,255,.12) 62%,rgba(255,255,255,.03) 100%)!important;

    pointer-events:none!important;

}

.home-hero-final:after{

    content:""!important;

    position:absolute!important;

    left:-8%;
right:-8%;
bottom:-92px!important;

    height:210px!important;

    z-index:3!important;

    background:radial-gradient(ellipse at center,rgba(255,193,7,.55) 0%,rgba(255,193,7,.20) 35%,transparent 67%)!important;

    border-radius:50% 50% 0 0!important;

    pointer-events:none!important;

}

.home-hero-final .slide{

    background-position:center center!important;

    background-size:cover!important;

    filter:saturate(1.08) brightness(1.09) contrast(1.03)!important;

    transform:scale(1.035)!important;

    transition:opacity 1s ease,transform 7.5s ease!important;

}

.home-hero-final .slide.active{
transform:scale(1)!important
}

.home-hero-final .hero-content{

    z-index:5!important;

    padding-top:0!important;

    max-width:760px!important;

    text-shadow:0 4px 18px rgba(0,0,0,.24)!important;

}

.home-hero-final .hero-copy{
display:none!important;
animation:heroTextIn .72s ease both!important
}

.home-hero-final .hero-copy.active{
display:block!important
}

.home-hero-final .tag{

    background:rgba(255,255,255,.20)!important;

    border:1px solid rgba(255,255,255,.38)!important;

    box-shadow:0 18px 45px rgba(2,8,23,.16)!important;

    backdrop-filter:blur(14px)!important;

}

.home-hero-final h1{

    color:#fff!important;

    font-size:clamp(42px,5.5vw,74px)!important;

    line-height:1.02!important;

    margin:18px 0 14px!important;

    max-width:760px!important;

}

.home-hero-final p{

    color:#f3f8ff!important;

    font-weight:700!important;

    max-width:690px!important;

    text-shadow:0 3px 12px rgba(0,0,0,.35)!important;

}

.hero-actions{
display:flex!important;
gap:16px!important;
flex-wrap:wrap!important;
margin-top:28px!important
}

.hero-feature-row{
display:flex!important;
gap:12px!important;
flex-wrap:wrap!important;
margin-top:26px!important
}

.hero-feature-row span{
display:inline-flex!important;
align-items:center!important;
gap:9px!important;
padding:12px 15px!important;
border-radius:999px!important;
background:rgba(255,255,255,.88)!important;
color:#082044!important;
font-weight:900!important;
box-shadow:0 18px 40px rgba(8,32,68,.16)!important;
text-shadow:none!important
}

.hero-feature-row i{
color:#0758c9!important
}

.hero-nav{
position:absolute!important;
top:50%!important;
z-index:7!important;
transform:translateY(-50%)!important;
width:50px!important;
height:50px!important;
border:0!important;
border-radius:50%!important;
background:rgba(255,255,255,.86)!important;
color:#0758c9!important;
font-size:38px!important;
line-height:1!important;
cursor:pointer!important;
box-shadow:0 18px 45px rgba(8,32,68,.22)!important;
transition:.25s!important
}

.hero-nav:hover{
background:#fff!important;
transform:translateY(-50%) scale(1.08)!important
}

.hero-prev{
left:24px!important
}

.hero-next{
right:24px!important
}

.hero-dots{
position:absolute!important;
left:50%!important;
bottom:28px!important;
transform:translateX(-50%)!important;
z-index:7!important;
display:flex!important;
gap:10px!important;
padding:10px 14px!important;
border-radius:999px!important;
background:rgba(255,255,255,.58)!important;
backdrop-filter:blur(12px)!important;
box-shadow:0 16px 40px rgba(8,32,68,.16)!important
}

.hero-dot{
width:12px!important;
height:12px!important;
border-radius:50%!important;
border:0!important;
background:rgba(7,88,201,.36)!important;
cursor:pointer!important;
transition:.25s!important
}

.hero-dot.active{
width:36px!important;
border-radius:999px!important;
background:linear-gradient(135deg,#0758c9,#23c7ff)!important
}

@keyframes heroTextIn{
from{
opacity:0;
transform:translateY(18px)
}

to{
opacity:1;
transform:translateY(0)
}

}

@media(max-width:900px){
.home-hero-final{
height:auto!important;
min-height:650px!important;
padding:84px 0 86px!important;
border-radius:0 0 24px 24px!important
}

.home-hero-final:before{
background:linear-gradient(90deg,rgba(4,18,43,.86),rgba(5,37,83,.62),rgba(255,255,255,.12))!important
}

.home-hero-final h1{
font-size:clamp(36px,9vw,52px)!important
}

.hero-feature-row{
gap:8px!important
}

.hero-feature-row span{
font-size:13px!important;
padding:10px 12px!important
}

.hero-nav{
display:none!important
}

.hero-dots{
bottom:18px!important
}

.hero-actions .btn{
width:auto!important
}

}

@media(max-width:520px){
.home-hero-final{
min-height:610px!important;
padding:70px 0 76px!important
}

.home-hero-final .tag{
font-size:12px!important
}

.home-hero-final p{
font-size:15px!important;
line-height:1.6!important
}

.hero-actions{
gap:10px!important
}

.hero-actions .btn{
width:100%!important
}

.hero-feature-row span{
width:100%!important;
justify-content:center!important
}

.hero-dots{
transform:translateX(-50%) scale(.9)!important
}

}

/* SPMB tagline + ticker final */
.ppdb-title h2{
font-size:clamp(32px,4vw,48px);
color:#071B3A;
margin:10px 0 6px
}

.ppdb-tagline{
font-size:17px;
line-height:1.7;
color:#52657d;
max-width:820px
}

.ppdb-ticker{
display:flex;
align-items:center;
gap:14px;
background:#fff;
border:1px solid #dcecff;
border-left:6px solid #0A4D9D;
border-radius:18px;
padding:14px 16px;
margin:-12px 0 24px;
box-shadow:0 16px 45px rgba(10,77,157,.10);
overflow:hidden
}

.ppdb-ticker b{
white-space:nowrap;
background:linear-gradient(135deg,#0A4D9D,#42A5F5);
color:#fff;
padding:8px 14px;
border-radius:999px
}

.ppdb-ticker marquee{
font-weight:850;
color:#071B3A
}

@media(max-width:640px){
.ppdb-ticker{
display:block
}

.ppdb-ticker b{
display:inline-block;
margin-bottom:10px
}

}

/* === UPDATE PRESISI 2026-06-07: berita sidebar, profil berurutan, navbar/slider responsif === */
.home-hero-final{
height:420px!important;
min-height:420px!important;
max-height:420px!important
}

.home-hero-final .hero-content{
padding-top:54px!important
}

@media(max-width:760px){
.home-hero-final{
height:auto!important;
min-height:390px!important;
max-height:none!important;
padding-bottom:48px!important
}

.home-hero-final .hero-content{
padding-top:40px!important
}

.home-hero-final h1{
font-size:clamp(26px,7vw,36px)!important
}

.home-hero-final p{
font-size:14px!important
}

.home-hero-final .hero-actions .btn{
padding:10px 15px!important;
font-size:13px!important
}

}

.profile-modern-page{
background:linear-gradient(180deg,#f8fbff,#fff)!important
}

.profile-feature-block{
margin-top:28px!important
}

.profile-action-grid-ordered{
grid-template-columns:repeat(4,minmax(0,1fr))!important
}

.former-head-grid{
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:18px;
margin-top:20px
}

.former-head-card{
padding:14px;
display:flex;
gap:14px;
align-items:center;
border-radius:24px;
background:linear-gradient(135deg,#fff,#f4f9ff)
}

.former-head-card img{
width:86px;
height:86px;
border-radius:20px;
object-fit:cover
}

.former-head-card b{
display:block;
color:#071b42
}

.former-head-card small{
display:block;
color:#64748b;
font-weight:800
}

.kurikulum-block{
padding:28px;
border-radius:30px;
background:linear-gradient(135deg,#ffffff,#eef7ff)
}

.kurikulum-points{
display:flex;
flex-wrap:wrap;
gap:10px;
margin-top:18px
}

.kurikulum-points span{
padding:10px 14px;
border-radius:999px;
background:#eaf4ff;
color:#0758c9;
font-weight:900
}

.profile-tefa-grid{
margin-top:12px
}

.article-wrap{
display:grid;
grid-template-columns:minmax(0,1fr) 340px;
gap:28px;
align-items:start
}

.sidebar{
position:sticky;
top:100px;
border:1px solid #dbeafe;
border-radius:28px;
background:linear-gradient(180deg,#fff,#f3f8ff);
box-shadow:0 18px 50px rgba(8,32,68,.08);
padding:22px
}

.side-link{
display:block;
text-decoration:none;
color:#071b42;
padding:14px 6px;
border-bottom:1px solid #dbeafe;
font-weight:900
}

.side-link small{
display:block;
color:#0758c9;
margin-top:5px
}

.news-action-bar{
display:flex;
flex-wrap:wrap;
gap:10px;
margin:22px 0
}

.news-stat{
display:inline-flex;
align-items:center;
gap:6px;
border:1px solid #dbeafe;
background:#f5faff;
color:#071b42;
border-radius:999px;
padding:11px 16px;
font-weight:900
}

.comment-box{
margin-top:28px;
padding:28px;
border:1px solid #dbeafe;
border-radius:30px;
background:linear-gradient(180deg,#fff,#f7fbff)
}

.comment-item{
padding:16px 0;
border-bottom:1px solid #e2e8f0
}

.comment-item b{
display:block;
color:#071b42
}

.comment-item small{
color:#64748b;
font-weight:800
}

.navbar .mobile{
display:none
}

.navbar .menu{
align-items:center
}

.dropdown-menu{
z-index:1000
}

@media(max-width:1080px){
.profile-action-grid-ordered{
grid-template-columns:repeat(2,minmax(0,1fr))!important
}

.article-wrap,.news-layout,.news-info-layout{
grid-template-columns:1fr!important
}

.sidebar{
position:relative;
top:0
}

.navbar .mobile{
display:inline-flex!important;
align-items:center;
justify-content:center
}

.navbar .menu{
display:none;
position:absolute;
left:16px;
right:16px;
top:100%;
padding:16px;
border-radius:24px;
background:#fff;
box-shadow:0 25px 60px rgba(8,32,68,.18);
border:1px solid #dbeafe;
flex-direction:column;
align-items:stretch;
gap:6px
}

.navbar .menu.open{
display:flex!important
}

.navbar .menu a,.navbar .menu-item>a{
padding:12px 14px;
border-radius:16px
}

.navbar .menu-item{
display:block
}

.navbar .dropdown-menu{
position:static!important;
display:block!important;
opacity:1!important;
visibility:visible!important;
transform:none!important;
box-shadow:none!important;
border:0!important;
background:#f4f9ff!important;
margin:5px 0 0!important
}

.navbar .navwrap{
position:relative
}

.topflex{
gap:8px;
flex-wrap:wrap
}

}

@media(max-width:640px){
.profile-action-grid-ordered,.former-head-grid{
grid-template-columns:1fr!important
}

.principal-mini{
grid-template-columns:1fr!important
}

.principal-mini img{
width:100%!important;
height:300px!important;
object-fit:cover
}

.former-head-card img{
width:76px;
height:76px
}

.comment-box{
padding:18px
}

.news-action-bar .btn,.news-stat{
width:100%;
justify-content:center
}

.brand span{
font-size:14px
}

.brand small{
font-size:10.5px
}

.navbar .brand img{
width:48px!important;
height:48px!important
}

}

/* === UPDATE 2026-06-07: slider dinaikkan + tagline animasi 4 detik === */
.home-hero-final{
height:520px!important;
min-height:520px!important;
max-height:520px!important
}

.home-hero-final .hero-content{
padding-top:86px!important
}

.home-hero-final .hero-single-tagline.hero-word-rotator{
min-width:290px!important;
justify-content:flex-start!important;
overflow:hidden!important;
background:rgba(255,255,255,.92)!important
}

.home-hero-final .rotator-text{
display:inline-block!important;
animation:rotatorEnter .55s ease both!important;
white-space:nowrap!important
}

.home-hero-final .rotator-text.is-hide{
animation:rotatorExit .26s ease both!important
}

.home-hero-final .rotator-text.is-show{
animation:rotatorEnter .55s ease both!important
}

@keyframes rotatorEnter{
from{
opacity:0;
transform:translateY(16px) scale(.96)
}

to{
opacity:1;
transform:translateY(0) scale(1)
}

}

@keyframes rotatorExit{
from{
opacity:1;
transform:translateY(0) scale(1)
}

to{
opacity:0;
transform:translateY(-14px) scale(.96)
}

}

@media(max-width:900px){
.home-hero-final{
height:500px!important;
min-height:500px!important;
max-height:500px!important
}

.home-hero-final .hero-content{
padding-top:72px!important
}

}

@media(max-width:520px){
.home-hero-final{
height:auto!important;
min-height:500px!important;
max-height:none!important;
padding-bottom:64px!important
}

.home-hero-final .hero-content{
padding-top:58px!important
}

.home-hero-final .hero-single-tagline.hero-word-rotator{
min-width:100%!important;
justify-content:center!important
}

}

/* === FINAL PROFIL, BERITA, SLIDER RESPONSIVE UPDATE === */
.school-building-banner{
position:relative;
overflow:hidden;
border-radius:28px;
margin:22px 0 26px;
min-height:280px;
background:#063c83
}

.school-building-banner img{
width:100%;
height:360px;
object-fit:cover;
display:block;
filter:brightness(.72)
}

.school-building-banner div{
position:absolute;
left:28px;
bottom:24px;
color:#fff;
text-shadow:0 10px 25px rgba(0,0,0,.35)
}

.school-building-banner b{
display:block;
font-size:clamp(24px,3vw,42px);
font-weight:950;
letter-spacing:-.8px
}

.school-building-banner span{
font-weight:800;
font-size:16px
}

.former-head-title{
margin:26px 0 18px;
text-align:center
}

.former-head-title h3{
font-size:clamp(24px,2.4vw,34px);
margin-bottom:8px
}

.former-head-title p{
color:#52677f;
font-weight:700
}

.final-four-grid{
display:grid!important;
grid-template-columns:repeat(4,minmax(0,1fr))!important;
gap:22px!important;
align-items:stretch!important
}

.final-head-card{
overflow:hidden!important;
border-radius:24px!important;
background:#fff!important;
transition:.28s ease!important;
display:flex!important;
flex-direction:column!important
}

.final-head-card:hover{
transform:translateY(-7px);
box-shadow:0 22px 46px rgba(7,56,130,.18)!important
}

.head-photo-wrap{
height:310px;
overflow:hidden;
background:linear-gradient(135deg,#084998,#1599df)
}

.final-head-card img{
width:100%!important;
height:100%!important;
object-fit:cover!important;
display:block!important;
transition:.35s!important
}

.final-head-card:hover img{
transform:scale(1.055)
}

.head-info{
padding:18px 16px 20px;
text-align:center
}

.head-info b{
display:block;
font-size:17px;
color:#07224c
}

.head-info small{
display:block;
margin:7px 0;
color:#0b78d0;
font-weight:900
}

.head-info span{
display:inline-flex;
padding:6px 12px;
border-radius:999px;
background:#eef7ff;
color:#294967;
font-weight:800;
font-size:12px
}

.news-gallery-slider{
position:relative;
overflow:hidden;
border-radius:24px;
margin:20px 0;
background:#eef7ff;
border:1px solid #d8eaff
}

.news-gallery-slide{
display:none;
margin:0
}

.news-gallery-slide.active{
display:block
}

.news-gallery-slide img{
width:100%;
height:min(560px,60vw);
min-height:300px;
object-fit:cover;
display:block
}

.news-gal-prev,.news-gal-next{
position:absolute;
top:50%;
transform:translateY(-50%);
width:48px;
height:48px;
border:0;
border-radius:999px;
background:rgba(255,255,255,.92);
color:#0867cf;
font-size:34px;
font-weight:900;
cursor:pointer;
box-shadow:0 12px 30px rgba(5,38,85,.22)
}

.news-gal-prev{
left:16px
}

.news-gal-next{
right:16px
}

.news-gal-counter{
position:absolute;
right:18px;
bottom:16px;
background:rgba(3,20,48,.72);
color:#fff;
border-radius:999px;
padding:8px 14px;
font-weight:900
}

.final-news-layout{
display:grid!important;
grid-template-columns:minmax(0,1fr) 330px!important;
gap:28px!important
}

.final-news-card>img{
width:100%;
height:245px;
object-fit:cover;
display:block
}

.final-news-sidebar{
position:sticky;
top:105px;
align-self:start
}

.final-news-sidebar h4{
margin:18px 0 8px;
color:#092351
}

.side-cats{
display:flex;
gap:8px;
flex-wrap:wrap
}

.side-cats span{
background:#eef7ff;
border:1px solid #d9ecff;
border-radius:999px;
padding:7px 11px;
font-size:12px;
font-weight:900;
color:#0758c9
}

@media(max-width:1100px){
.final-four-grid{
grid-template-columns:repeat(2,minmax(0,1fr))!important
}

.final-news-layout{
grid-template-columns:1fr!important
}

.final-news-sidebar{
position:relative;
top:auto
}

.school-building-banner img{
height:300px
}

}

@media(max-width:620px){
.final-four-grid{
grid-template-columns:1fr!important
}

.head-photo-wrap{
height:330px
}

.school-building-banner img{
height:240px
}

.school-building-banner div{
left:18px;
right:18px;
bottom:18px
}

.news-gallery-slide img{
height:300px;
min-height:260px
}

.news-gal-prev,.news-gal-next{
width:40px;
height:40px;
font-size:28px
}

.final-news-card>img{
height:210px
}

}

/* =====================================================
   SECTION : PROFIL - IDENTITAS SEKOLAH 1 CARD BESAR
   Catatan: mengganti grid banyak card menjadi satu card besar
   supaya data dari admin tetap rapi walaupun jumlah field bertambah.
===================================================== */
.identity-single-card{

  position:relative;

  z-index:1;

  padding:30px;

  border-radius:30px;

  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(239,248,255,.88));

  border:1px solid rgba(30,136,229,.18);

  box-shadow:0 28px 85px rgba(8,32,68,.10);

  overflow:hidden;

}

.identity-single-card:before{

  content:"";

  position:absolute;

  right:-70px;

  top:-80px;

  width:220px;

  height:220px;

  border-radius:50%;

  background:radial-gradient(circle,rgba(30,136,229,.16),transparent 70%);

  pointer-events:none;

}

.identity-card-title{

  position:relative;

  z-index:1;

  display:flex;

  align-items:center;

  gap:18px;

  padding-bottom:22px;

  margin-bottom:8px;

  border-bottom:1px solid rgba(30,136,229,.14);

}

.identity-card-icon{

  width:62px;

  height:62px;

  min-width:62px;

  display:inline-flex;

  align-items:center;

  justify-content:center;

  border-radius:20px;

  color:#fff;

  font-size:25px;

  background:linear-gradient(145deg,#0b5ed7,#23c7ff);

  box-shadow:0 18px 36px rgba(10,77,157,.24);

}

.identity-card-title h3{

  margin:0;

  color:#082044;

  font-size:clamp(24px,3vw,34px);

  letter-spacing:-.5px;

}

.identity-card-title p{

  margin:7px 0 0;

  color:#64748b;

  line-height:1.65;

}

.identity-info-list{

  position:relative;

  z-index:1;

  display:grid;

  grid-template-columns:repeat(2,minmax(0,1fr));

  gap:0 28px;

  padding-top:12px;

}

.identity-info-row{

  display:grid;

  grid-template-columns:210px minmax(0,1fr);

  gap:18px;

  align-items:start;

  padding:18px 0;

  border-bottom:1px dashed rgba(30,136,229,.18);

}

.identity-info-row:last-child,
.identity-info-row:nth-last-child(2){

  border-bottom:0;

}

.identity-row-label{

  display:flex;

  align-items:center;

  gap:10px;

  color:#0b63ce;

  font-weight:950;

  text-transform:uppercase;

  letter-spacing:.45px;

  font-size:13px;

}

.identity-row-label i{

  width:34px;

  height:34px;

  min-width:34px;

  display:inline-flex;

  align-items:center;

  justify-content:center;

  border-radius:12px;

  color:#0b63ce;

  background:#eef7ff;

}

.identity-info-row strong{

  color:#102348;

  font-size:18px;

  line-height:1.55;

  word-break:break-word;

}

@media(max-width:1100px){

  .identity-info-list{
grid-template-columns:1fr;

}

  .identity-info-row:nth-last-child(2){
border-bottom:1px dashed rgba(30,136,229,.18);

}

}

@media(max-width:640px){

  .identity-single-card{
padding:22px;
border-radius:24px;

}

  .identity-card-title{
align-items:flex-start;
gap:14px;

}

  .identity-card-icon{
width:52px;
height:52px;
min-width:52px;
border-radius:17px;
font-size:21px;

}

  .identity-info-row{
grid-template-columns:1fr;
gap:8px;
padding:16px 0;

}

  .identity-info-row strong{
font-size:16px;

}

}

/* ==========================================================
   PATCH FINAL AMAN - SMKN 1 KUPANG
   Catatan: CSS asli di atas TIDAK dihapus agar tampilan lama
   tidak rusak. Bagian ini hanya memperbaiki layout utama.
   Mudah dicari dengan kata kunci: PATCH FINAL AMAN.
   ========================================================== */

/* ==========================================================
   SECTION : JUDUL HALAMAN / PAGE HERO
   Fungsi: membuat judul seperti "Guru & Tenaga Kependidikan"
   tetap 1 baris di desktop dan turun rapi di HP.
   ========================================================== */
.page-title,
.page-hero-title,
.hero-page-title,
.guru-title,
.guru-hero-title,
.gradient-title h1,
.page-hero h1,
.inner-hero h1,
.breadcrumb-hero h1,
.section-hero h1{

  max-width:100% !important;

  width:100% !important;

  display:block !important;

  white-space:nowrap !important;

  overflow-wrap:normal !important;

  word-break:normal !important;

  text-wrap:nowrap !important;

  font-size:clamp(42px,5vw,72px) !important;

  line-height:1.08 !important;

  letter-spacing:-1.6px !important;

}

/* Judul halaman umum agar tidak terlalu sempit */
.page-hero,
.inner-hero,
.breadcrumb-hero,
.section-hero{

  width:100% !important;

  max-width:none !important;

  overflow:hidden !important;

}

/* Khusus teks Guru & Tenaga Kependidikan jika memakai h1 biasa */
.guru-page h1,
.guru-section h1,
body.guru h1{

  white-space:nowrap !important;

  max-width:100% !important;

}

/* ==========================================================
   SECTION : IDENTITAS SEKOLAH - 1 CARD BESAR
   Fungsi: jika data identitas banyak dari admin, tetap masuk
   dalam satu card rapi, bukan pecah menjadi banyak kotak kecil.
   ========================================================== */
.identity-list,
.identitas-list,
.school-identity-list{

  display:grid !important;

  grid-template-columns:1fr !important;

  gap:0 !important;

  background:rgba(255,255,255,.94) !important;

  border:1px solid #dcecff !important;

  border-radius:28px !important;

  box-shadow:0 24px 70px rgba(7,88,201,.12) !important;

  padding:10px 26px !important;

  overflow:hidden !important;

}

.identity-item,
.identitas-item,
.school-identity-item{

  display:grid !important;

  grid-template-columns:220px 1fr !important;

  align-items:start !important;

  gap:18px !important;

  width:100% !important;

  background:transparent !important;

  border:0 !important;

  border-left:0 !important;

  border-radius:0 !important;

  box-shadow:none !important;

  padding:18px 0 !important;

  border-bottom:1px solid #e7f0ff !important;

}

.identity-item:last-child,
.identitas-item:last-child,
.school-identity-item:last-child{

  border-bottom:0 !important;

}

.identity-item b,
.identity-item strong,
.identitas-item b,
.identitas-item strong,
.school-identity-item b,
.school-identity-item strong{

  color:#0758c9 !important;

  font-weight:950 !important;

  text-transform:uppercase !important;

  letter-spacing:.5px !important;

  font-size:13px !important;

}

.identity-item span,
.identity-item p,
.identitas-item span,
.identitas-item p,
.school-identity-item span,
.school-identity-item p{

  margin:0 !important;

  color:#081b3a !important;

  font-weight:850 !important;

  line-height:1.6 !important;

  word-break:break-word !important;

}

/* ==========================================================
   SECTION : HERO SLIDER FULL WIDTH
   Fungsi: slider presisi dari kiri sampai kanan dan tidak pecah.
   ========================================================== */
.hero,
.hero-slider,
.main-slider{

  width:100% !important;

  max-width:100% !important;

  overflow:hidden !important;

}

.hero-content,
.slider-content{

  max-width:780px !important;

}

/* Tombol di slider tetap rapi */
.hero .btn,
.hero-content .btn,
.slider-content .btn{

  white-space:nowrap !important;

}

/* ==========================================================
   SECTION : RUNNING TEXT DI BAWAH SLIDER
   Fungsi: teks berjalan satu baris, tidak turun ke bawah.
   ========================================================== */
.running-text-section,
.section-running-text,
.announcement-strip{

  width:100% !important;

  overflow:hidden !important;

}

.running-text,
.running-box,
.announcement-strip marquee,
.news-ticker marquee{

  white-space:nowrap !important;

  overflow:hidden !important;

}

/* ==========================================================
   SECTION : RESPONSIVE TABLET
   ========================================================== */
@media(max-width:900px){

  .page-title,
  .page-hero-title,
  .hero-page-title,
  .guru-title,
  .guru-hero-title,
  .gradient-title h1,
  .page-hero h1,
  .inner-hero h1,
  .breadcrumb-hero h1,
  .section-hero h1,
  .guru-page h1,
  .guru-section h1,
  body.guru h1{

    white-space:normal !important;

    text-wrap:balance !important;

    font-size:clamp(34px,8vw,48px) !important;

    line-height:1.14 !important;

  
}

  .identity-item,
  .identitas-item,
  .school-identity-item{

    grid-template-columns:1fr !important;

    gap:8px !important;

  
}

}

/* ==========================================================
   SECTION : RESPONSIVE MOBILE
   ========================================================== */
@media(max-width:520px){

  .identity-list,
  .identitas-list,
  .school-identity-list{

    padding:8px 18px !important;

    border-radius:22px !important;

  
}

  .page-title,
  .page-hero-title,
  .hero-page-title,
  .guru-title,
  .guru-hero-title,
  .gradient-title h1,
  .page-hero h1,
  .inner-hero h1,
  .breadcrumb-hero h1,
  .section-hero h1{

    font-size:34px !important;

  
}

}

/* =========================================================
   FIX PROFILE HERO TITLE
========================================================= */

.gradient-title h1{
    color:#FFFFFF !important;
    font-size:clamp(42px,5vw,72px);
    font-weight:900;
    line-height:1.05;
    letter-spacing:-2px;
    text-shadow:
        0 4px 12px rgba(0,0,0,.18),
        0 8px 30px rgba(0,0,0,.12);
}

/* =========================================================
   SECTION : STATISTIK SEKOLAH + FOOTER MAP FINAL
   Card jumlah rombel, siswa, guru, pegawai dan Google Maps
========================================================= */
.school-stats-section{
    padding:58px 0 42px;
    background:linear-gradient(180deg,#ffffff,#eef7ff);
}
.school-stats-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}
.school-stat-card{
    position:relative;
    overflow:hidden;
    min-height:168px;
    padding:24px;
    border-radius:28px;
    background:rgba(255,255,255,.92);
    border:1px solid #dcecff;
    box-shadow:0 22px 60px rgba(10,77,157,.12);
    transition:.28s ease;
}
.school-stat-card:after{
    content:"";
    position:absolute;
    right:-35px;
    bottom:-45px;
    width:130px;
    height:130px;
    border-radius:50%;
    background:linear-gradient(135deg,rgba(10,77,157,.12),rgba(255,211,107,.18));
}
.school-stat-card:hover{
    transform:translateY(-7px);
    box-shadow:0 30px 80px rgba(10,77,157,.20);
}
.school-stat-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
    border-radius:18px;
    color:#fff;
    background:linear-gradient(135deg,#0A4D9D,#42A5F5);
    box-shadow:0 14px 30px rgba(10,77,157,.25);
    margin-bottom:16px;
}
.school-stat-card b{
    display:block;
    position:relative;
    z-index:1;
    font-size:clamp(34px,4vw,48px);
    line-height:1;
    font-weight:950;
    color:#071B3A;
    letter-spacing:-1px;
}
.school-stat-card small{
    display:block;
    position:relative;
    z-index:1;
    margin-top:8px;
    color:#0A4D9D;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.footer-map-wrap{
    margin-top:30px;
}
.footer-map-card{
    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:24px;
    align-items:center;
    padding:24px;
    border-radius:28px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.14);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.footer-map-card h4{
    margin:0 0 10px;
    color:#fff;
    font-size:22px;
}
.footer-map-card p{
    margin:0;
    color:#dcecff;
    line-height:1.8;
}
.footer-map-frame{
    overflow:hidden;
    border-radius:22px;
    border:1px solid rgba(255,255,255,.18);
    min-height:260px;
    background:rgba(255,255,255,.08);
}
.footer-map-frame iframe{
    display:block;
    width:100%;
    height:260px;
    border:0;
}
@media(max-width:900px){
    .school-stats-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .footer-map-card{
        grid-template-columns:1fr;
    }
}
@media(max-width:520px){
    .school-stats-section{
        padding:38px 0 28px;
    }
    .school-stats-grid{
        grid-template-columns:1fr;
    }
    .school-stat-card{
        min-height:145px;
    }
    .footer-map-card{
        padding:18px;
        border-radius:22px;
    }
    .footer-map-frame,
    .footer-map-frame iframe{
        min-height:220px;
        height:220px;
    }
}

/* =========================================================
   FINAL FIX : POSISI STATISTIK DI BAWAH SAMBUTAN KEPALA SEKOLAH
========================================================= */
.school-stats-after-principal{
    padding:64px 0 74px !important;
    background:
        radial-gradient(circle at 12% 10%,rgba(36,184,255,.18),transparent 30%),
        linear-gradient(180deg,#eef7ff 0%,#ffffff 70%);
}
.school-stats-heading{
    max-width:820px;
    margin:0 auto 26px;
    text-align:center;
}
.school-stats-heading h2{
    margin:18px 0 10px;
    color:#071B3A;
    font-size:clamp(34px,4vw,54px);
    font-weight:950;
    line-height:1.08;
    letter-spacing:-1.4px;
}
.school-stats-heading p{
    margin:0;
    color:#607089;
    font-size:17px;
    line-height:1.8;
}
.school-stats-after-principal .school-stats-grid{
    margin-top:12px;
}
.school-stats-after-principal .school-stat-card{
    background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(247,251,255,.92));
    border:1px solid #cfe2ff;
    box-shadow:0 24px 70px rgba(10,77,157,.13);
}
@media(max-width:760px){
    .school-stats-heading{
        text-align:left;
    }
    .school-stats-heading h2{
        font-size:32px;
    }
    .school-stats-heading p{
        font-size:16px;
    }
}

/* ===== PATCH STATISTIK SEKOLAH ===== */

.school-stats-section{
    padding:70px 0;
    background:linear-gradient(135deg,#f7fbff,#eef7ff,#ffffff);
}

.school-stats-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}

.school-stat-card{
    background:#fff;
    border-radius:24px;
    padding:30px 20px;
    text-align:center;
    border:1px solid #dcecff;
    box-shadow:0 20px 50px rgba(10,77,157,.10);
    transition:.3s;
}

.school-stat-card:hover{
    transform:translateY(-8px);
    box-shadow:0 30px 70px rgba(10,77,157,.20);
}

.school-stat-icon{
    font-size:48px;
    margin-bottom:15px;
    display:block;
}

.school-stat-number{
    font-size:42px;
    font-weight:900;
    color:#0A4D9D;
    display:block;
}

.school-stat-label{
    font-size:16px;
    font-weight:700;
    color:#5c708a;
}

@media(max-width:900px){
    .school-stats-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:600px){
    .school-stats-grid{
        grid-template-columns:1fr;
    }
}

/* =========================================================
   PATCH FINAL AMAN HOSTING : STATISTIK SEKOLAH
   Catatan:
   - Hanya mengunci tampilan statistik sekolah.
   - Tidak menyentuh navbar, slider, berita, profil, TEFA, admin, footer.
   - Dipasang paling bawah agar menang dari CSS lama/cache.
========================================================= */

.school-stats-section.school-stats-after-principal{
    display:block !important;
    width:100% !important;
    padding:64px 0 74px !important;
    margin:0 !important;
    background:
        radial-gradient(circle at 12% 10%,rgba(36,184,255,.16),transparent 30%),
        linear-gradient(180deg,#eef7ff 0%,#ffffff 72%) !important;
}

.school-stats-section .container{
    max-width:1220px !important;
    margin:0 auto !important;
}

.school-stats-section .school-stats-heading{
    display:block !important;
    max-width:820px !important;
    margin:0 auto 30px !important;
    text-align:center !important;
}

.school-stats-section .school-stats-heading h2{
    display:block !important;
    margin:18px 0 10px !important;
    color:#071B3A !important;
    font-size:clamp(32px,4vw,52px) !important;
    font-weight:950 !important;
    line-height:1.08 !important;
    letter-spacing:-1.2px !important;
}

.school-stats-section .school-stats-heading p{
    display:block !important;
    margin:0 !important;
    color:#607089 !important;
    font-size:17px !important;
    line-height:1.8 !important;
}

.school-stats-section .school-stats-grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:24px !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}

.school-stats-section .school-stat-card{
    display:block !important;
    position:relative !important;
    overflow:hidden !important;
    min-height:178px !important;
    padding:28px 24px !important;
    margin:0 !important;
    border-radius:30px !important;
    background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(247,251,255,.94)) !important;
    border:1px solid #cfe2ff !important;
    box-shadow:0 24px 70px rgba(10,77,157,.13) !important;
    text-align:left !important;
    transition:.28s ease !important;
}

.school-stats-section .school-stat-card::after{
    content:"" !important;
    position:absolute !important;
    right:-38px !important;
    bottom:-46px !important;
    width:140px !important;
    height:140px !important;
    border-radius:50% !important;
    background:linear-gradient(135deg,rgba(10,77,157,.12),rgba(255,211,107,.20)) !important;
    pointer-events:none !important;
}

.school-stats-section .school-stat-card:hover{
    transform:translateY(-7px) !important;
    box-shadow:0 32px 85px rgba(10,77,157,.20) !important;
}

.school-stats-section .school-stat-icon{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:56px !important;
    height:56px !important;
    margin:0 0 18px !important;
    border-radius:18px !important;
    background:linear-gradient(135deg,#0A4D9D,#42A5F5) !important;
    color:#ffffff !important;
    font-size:22px !important;
    line-height:1 !important;
    box-shadow:0 14px 30px rgba(10,77,157,.25) !important;
}

.school-stats-section .school-stat-icon i{
    color:#ffffff !important;
    font-size:22px !important;
    line-height:1 !important;
}

.school-stats-section .school-stat-card b{
    display:block !important;
    position:relative !important;
    z-index:1 !important;
    margin:0 !important;
    color:#071B3A !important;
    font-size:clamp(34px,4vw,50px) !important;
    line-height:1 !important;
    font-weight:950 !important;
    letter-spacing:-1px !important;
}

.school-stats-section .school-stat-card small{
    display:block !important;
    position:relative !important;
    z-index:1 !important;
    margin-top:10px !important;
    color:#0A4D9D !important;
    font-size:14px !important;
    font-weight:950 !important;
    line-height:1.35 !important;
    text-transform:uppercase !important;
    letter-spacing:.04em !important;
}

@media(max-width:991px){
    .school-stats-section .school-stats-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

@media(max-width:576px){
    .school-stats-section.school-stats-after-principal{
        padding:42px 0 48px !important;
    }

    .school-stats-section .school-stats-heading{
        text-align:left !important;
        margin-bottom:22px !important;
    }

    .school-stats-section .school-stats-heading h2{
        font-size:30px !important;
    }

    .school-stats-section .school-stats-heading p{
        font-size:15px !important;
    }

    .school-stats-section .school-stats-grid{
        grid-template-columns:1fr !important;
        gap:16px !important;
    }

    .school-stats-section .school-stat-card{
        min-height:150px !important;
        padding:24px !important;
        border-radius:24px !important;
    }
}


/* === FIX REQUEST 2026-06-08: foto slider murni, box sambutan bersih, mobile responsive === */
.home-hero-final .slide:after,
.hero:before,
.hero:after{background:transparent!important;display:none!important;content:none!important}
.home-hero-final .slide{background-size:cover!important;background-position:center center!important;filter:none!important}
.principal-section{background:#fff!important;position:relative!important;overflow:hidden!important}
.principal-section:before,.principal-section:after{display:none!important;content:none!important;background:none!important}
.principal-card{background:#fff!important;border:1px solid #d9e9ff!important;box-shadow:0 18px 45px rgba(10,77,157,.10)!important}
.principal-card:before,.principal-card:after,.principal-photo:before,.principal-photo:after{display:none!important;content:none!important;background:none!important}
.principal-photo{background:none!important;box-shadow:none!important;border-radius:28px!important;overflow:hidden!important}
.principal-photo img{width:100%!important;height:auto!important;max-height:560px!important;object-fit:cover!important;border-radius:24px!important}
.principal-text h3,.principal-mini h3{margin:0 0 18px!important;color:#0A4D9D!important;font-weight:900!important}
.school-building-banner img{object-fit:cover!important}
@media(max-width:768px){
  .topbar,.header,.navbar,.nav{max-width:100%!important;overflow-x:hidden!important}
  .home-hero-final{height:auto!important;min-height:430px!important;border-radius:0 0 24px 24px!important}
  .home-hero-final .hero-content{width:calc(100% - 28px)!important;padding-top:54px!important;align-items:center!important;text-align:center!important}
  .home-hero-final .hero-actions{display:flex!important;flex-direction:column!important;width:100%!important;max-width:310px!important;gap:12px!important;margin:auto auto 55px!important}
  .home-hero-final .hero-actions .btn{width:100%!important;justify-content:center!important;font-size:13px!important;padding:13px 14px!important}
  .principal-card,.principal-mini{display:grid!important;grid-template-columns:1fr!important;gap:22px!important;padding:18px!important;border-radius:24px!important}
  .principal-text h2,.kepsek-name{font-size:clamp(30px,9vw,42px)!important;line-height:1.05!important;word-break:normal!important}
  .principal-text p{font-size:15px!important;line-height:1.75!important;text-align:left!important}
  .principal-photo img{max-height:none!important}
  .school-building-banner{display:grid!important;grid-template-columns:1fr!important}
}

/* =====================================================
   FINAL FIX PROFESIONAL: NAVBAR MOBILE + SURVEI HOME
===================================================== */
@media(max-width:1080px){
  html,body{width:100%;max-width:100%;overflow-x:hidden!important}
  body.mobile-nav-open{overflow:hidden!important;touch-action:none}
  .topbar{position:relative;z-index:7000}
  .navbar{position:sticky!important;top:0!important;z-index:8000!important;overflow:visible!important;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 18px 45px rgba(7,27,66,.12)!important}
  .navbar .navwrap{position:relative!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;padding:12px 14px!important;display:flex!important;align-items:center!important;gap:10px!important;overflow:visible!important}
  .navbar .brand{min-width:0!important;max-width:calc(100% - 70px)!important;display:flex!important;align-items:center!important;gap:10px!important}
  .navbar .brand img{width:52px!important;height:52px!important;flex:0 0 52px!important;border-radius:17px!important}
  .navbar .brand span{font-size:14px!important;line-height:1.18!important;white-space:normal!important;overflow:hidden!important;text-overflow:ellipsis!important;color:#071b42!important}
  .navbar .brand small{font-size:10.5px!important;line-height:1.15!important;display:block!important;color:#0a66c2!important}
  .navbar .mobile{display:inline-flex!important;align-items:center!important;justify-content:center!important;margin-left:auto!important;width:54px!important;height:54px!important;flex:0 0 54px!important;border:0!important;border-radius:18px!important;background:linear-gradient(135deg,#0756b7,#22aaf8)!important;color:#fff!important;box-shadow:0 16px 34px rgba(8,89,190,.34)!important;cursor:pointer!important;position:relative!important;z-index:9002!important;font-size:0!important;pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important}
  .navbar .mobile:before{content:'☰';font-size:26px;font-weight:900;line-height:1}
  .navbar .mobile.active:before{content:'×';font-size:36px;line-height:.8}
  .navbar .menu{display:flex!important;position:fixed!important;left:14px!important;right:14px!important;top:calc(var(--nav-top, 110px) + env(safe-area-inset-top))!important;width:auto!important;max-width:calc(100vw - 28px)!important;max-height:calc(100dvh - 128px)!important;overflow-y:auto!important;box-sizing:border-box!important;padding:14px!important;border-radius:28px!important;flex-direction:column!important;align-items:stretch!important;gap:9px!important;background:rgba(255,255,255,.985)!important;border:1px solid rgba(8,89,190,.18)!important;box-shadow:0 34px 95px rgba(7,27,66,.32)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(-16px) scale(.97)!important;transition:opacity .23s ease,transform .23s ease,visibility .23s ease!important;z-index:9001!important}
  .navbar .menu.open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(0) scale(1)!important}
  .navbar .menu a,.navbar .menu-item>a{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;box-sizing:border-box!important;padding:14px 16px!important;border-radius:18px!important;color:#071b42!important;font-weight:900!important;text-decoration:none!important;background:#f5f9ff!important;border:1px solid #e0efff!important;min-height:50px!important}
  .navbar .menu a.active,.navbar .menu a:hover{background:linear-gradient(135deg,#0756b7,#22aaf8)!important;color:#fff!important;box-shadow:0 14px 28px rgba(8,89,190,.24)!important}
  .navbar .nav-ppdb{background:linear-gradient(135deg,#0756b7,#22aaf8)!important;color:#fff!important;justify-content:center!important;text-align:center!important;border:0!important}
  .navbar .menu-item{display:block!important;width:100%!important}
  .navbar .dropdown-menu{position:static!important;display:none!important;grid-template-columns:1fr!important;gap:7px!important;opacity:1!important;visibility:visible!important;transform:none!important;box-shadow:none!important;border:0!important;background:transparent!important;margin:8px 0 0!important;padding:0!important;min-width:0!important;width:100%!important}
  .navbar .menu-item.drop-open .dropdown-menu{display:grid!important}
  .navbar .dropdown-menu a{padding:12px 14px!important;background:#eef7ff!important;color:#0756b7!important;margin:0!important;min-height:44px!important}
  .home-hero-final{z-index:1!important}
}
@media(max-width:390px){.navbar .brand span{font-size:12.6px!important}.navbar .brand small{font-size:9.8px!important}.navbar .brand img{width:47px!important;height:47px!important;flex-basis:47px!important}.navbar .mobile{width:49px!important;height:49px!important;flex-basis:49px!important;border-radius:16px!important}}

.survey-home-section{background:linear-gradient(180deg,#f7fbff 0%,#ffffff 100%);position:relative;overflow:hidden}
.survey-home-section:before{content:'';position:absolute;inset:auto -120px -180px auto;width:360px;height:360px;border-radius:50%;background:rgba(32,168,247,.12);filter:blur(4px)}
.survey-home-wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:stretch}
.survey-panel{border-radius:34px;background:rgba(255,255,255,.94);border:1px solid rgba(10,77,157,.12);box-shadow:0 28px 80px rgba(7,27,66,.10);padding:30px;position:relative;overflow:hidden}
.survey-form-panel h2{font-size:clamp(28px,4vw,46px);line-height:1.05;margin:14px 0 12px;color:#071b42}.survey-form-panel p,.survey-result-panel p{color:#64779a;line-height:1.75}
.survey-alert{display:flex;align-items:center;gap:10px;background:#ecfff4;color:#08733f;border:1px solid #bff0d2;border-radius:16px;padding:12px 14px;font-weight:800;margin:12px 0}
.survey-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.survey-form-modern .input,.survey-form-modern textarea{width:100%;box-sizing:border-box;border:1px solid #dcecff;border-radius:18px;background:#f8fbff;padding:15px 16px;font-weight:700;color:#071b42;outline:none}.survey-form-modern textarea{min-height:118px;resize:vertical;margin-top:12px}.survey-form-modern .input:focus,.survey-form-modern textarea:focus{border-color:#1e88e5;box-shadow:0 0 0 4px rgba(30,136,229,.12);background:#fff}
.survey-rating-box{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:14px 0}.survey-rating-box input{position:absolute;opacity:0}.survey-rating-box span{display:flex;align-items:center;justify-content:center;text-align:center;min-height:58px;padding:10px;border-radius:18px;background:#f5f9ff;border:1px solid #dcecff;color:#071b42;font-weight:900;cursor:pointer;transition:.2s}.survey-rating-box input:checked+span{background:linear-gradient(135deg,#ffcf52,#ffb42c);border-color:#ffbd2e;box-shadow:0 14px 30px rgba(255,180,44,.22)}
.survey-submit{margin-top:14px;width:100%;justify-content:center}.survey-result-panel{background:linear-gradient(135deg,#073b86,#0e83dc);color:#fff}.survey-result-panel p{color:rgba(255,255,255,.82)}.survey-mini-label{display:inline-flex;padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.16);font-weight:900}.survey-score{margin:16px 0 4px}.survey-score b{font-size:74px;line-height:1}.survey-score span{font-size:22px;font-weight:900;opacity:.85}.survey-bars{display:grid;gap:10px;margin:20px 0}.survey-bar-row{display:grid;grid-template-columns:42px 1fr 44px;gap:10px;align-items:center;font-weight:900}.survey-bar-row div{height:12px;border-radius:999px;background:rgba(255,255,255,.22);overflow:hidden}.survey-bar-row i{display:block;height:100%;border-radius:999px;background:#ffcf52}.survey-latest{display:grid;gap:10px;margin-top:20px}.survey-latest>b{font-size:18px}.survey-latest article{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);border-radius:20px;padding:14px}.survey-latest article span{color:#ffcf52;letter-spacing:1px}.survey-latest article p{margin:7px 0;color:#fff}.survey-latest article small{opacity:.78;font-weight:800}
@media(max-width:900px){.survey-home-wrap{grid-template-columns:1fr}.survey-panel{padding:22px;border-radius:26px}.survey-field-grid{grid-template-columns:1fr}.survey-rating-box{grid-template-columns:1fr 1fr}.survey-score b{font-size:58px}}
@media(max-width:430px){.survey-home-section{padding-top:34px!important}.survey-rating-box{grid-template-columns:1fr}.survey-rating-box span{justify-content:flex-start;min-height:50px}.survey-bar-row{grid-template-columns:38px 1fr 38px}.survey-panel{padding:18px;border-radius:22px}.survey-form-panel h2{font-size:30px}}

/* ===== SMKN 1 Kupang Professional CMS Update ===== */
.modern-section-head.center{text-align:center;max-width:860px;margin:0 auto 28px}.modern-section-badge{display:inline-flex;align-items:center;gap:9px;background:#eef7ff;color:#0a4d9d;border:1px solid #cfe8ff;border-radius:999px;padding:9px 16px;font-weight:900;letter-spacing:.02em}.modern-section-head h2{font-size:clamp(28px,4vw,44px);margin:13px 0 8px;color:#071b3a}.modern-section-head p{color:#58708f;line-height:1.75}.principal-compact{grid-template-columns:minmax(240px,360px) 1fr!important;gap:clamp(24px,5vw,60px);align-items:center}.principal-compact .principal-text p{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.share-actions{flex-wrap:wrap}.share-btn{display:inline-flex!important;align-items:center;gap:8px}.btn-fb{background:#1877f2!important;color:#fff!important;border-color:#1877f2!important}.btn-wa{background:#25d366!important;color:#fff!important;border-color:#25d366!important}.baliho-section{background:linear-gradient(180deg,#f7fbff,#fff)}.baliho-slider{position:relative;overflow:hidden;border-radius:34px;box-shadow:0 28px 80px rgba(10,77,157,.18);min-height:390px;background:#071b3a}.baliho-slide{position:absolute;inset:0;opacity:0;transform:scale(1.03);transition:opacity .8s ease,transform 1s ease;background-size:cover;background-position:center;display:flex;align-items:center}.baliho-slide.active{opacity:1;transform:scale(1)}.baliho-content{max-width:620px;padding:clamp(28px,7vw,76px);color:#fff}.baliho-content span{display:inline-block;background:rgba(255,255,255,.16);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.26);border-radius:999px;padding:8px 14px;font-weight:900}.baliho-content h3{font-size:clamp(28px,5vw,54px);line-height:1.05;margin:18px 0 12px}.baliho-content p{font-size:clamp(15px,2vw,19px);line-height:1.75;color:#eaf4ff}.baliho-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.38);background:rgba(255,255,255,.18);color:#fff;font-size:32px;cursor:pointer}.baliho-nav.prev{left:18px}.baliho-nav.next{right:18px}.media-center-section{background:#fff}.media-center-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:24px;align-items:start}.media-pdf-list,.media-video-sidebar{padding:24px;border-radius:30px}.media-panel-head{display:flex;gap:14px;align-items:center;margin-bottom:18px}.media-panel-head>i{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:#eef7ff;color:#0a4d9d;font-size:22px}.media-panel-head b{display:block;color:#071b3a}.media-panel-head small{display:block;color:#58708f}.media-file-item{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid #dcecff;border-radius:18px;text-decoration:none;margin-bottom:12px;background:#f9fcff;transition:.25s}.media-file-item:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(10,77,157,.1)}.media-file-item span{width:44px;height:44px;border-radius:14px;background:#fff;display:grid;place-items:center;color:#e53935}.media-file-item b{color:#071b3a}.media-file-item small{color:#58708f}.media-file-item em{font-style:normal;color:#0a4d9d;font-weight:900;font-size:12px}.yt-card{margin-bottom:16px}.yt-card iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:20px;background:#eef7ff}.yt-card b{display:block;margin-top:10px;color:#071b3a}.yt-empty{padding:24px;border-radius:20px;background:#f7fbff;color:#58708f}.gallery-track-wrap{position:relative}.gallery-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 6px 24px;scrollbar-width:thin}.gallery-track .gallery-card{flex:0 0 min(310px,82vw);scroll-snap-align:start}.gallery-slide-btn{position:absolute;top:42%;z-index:4;width:46px;height:46px;border-radius:50%;border:1px solid #cfe8ff;background:#fff;color:#0a4d9d;box-shadow:0 14px 30px rgba(10,77,157,.14);font-size:30px;cursor:pointer}.gallery-slide-btn.gprev{left:-12px}.gallery-slide-btn.gnext{right:-12px}.gallery-modern-section .gallery-card img{height:230px;object-fit:cover}.pdf-viewer-box{margin:22px 0;border:1px solid #dcecff;border-radius:24px;overflow:hidden;background:#f7fbff}.pdf-viewer-box iframe{display:block;width:100%;height:680px;border:0}.article .news-action-bar .btn{margin:4px}.admin-nav .nav-title{margin-top:16px}@media(max-width:980px){.principal-compact{grid-template-columns:1fr!important}.principal-photo{max-width:360px;margin:auto}.media-center-layout{grid-template-columns:1fr}.baliho-slider{min-height:330px}.baliho-nav{display:none}}@media(max-width:620px){.baliho-content{padding:28px 22px}.media-file-item{grid-template-columns:42px 1fr}.media-file-item em{grid-column:2}.pdf-viewer-box iframe{height:520px}.gallery-slide-btn{display:none}.principal-actions .btn{width:100%;justify-content:center}}

/* =====================================================
   UPDATE FINAL: Galeri Grid Modern + Mitra Industri PKL
   ===================================================== */
.gallery-modern-section{background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%)}
.gallery-premium-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.gallery-premium-card{position:relative;border-radius:28px;overflow:hidden;min-height:235px;background:#eaf4ff;box-shadow:0 20px 55px rgba(10,77,157,.11);border:1px solid rgba(207,225,247,.9)}
.gallery-premium-card:nth-child(1),.gallery-premium-card:nth-child(6){grid-column:span 2;min-height:310px}
.gallery-premium-card a,.gallery-premium-card img{display:block;width:100%;height:100%}
.gallery-premium-card img{object-fit:cover;transition:transform .55s ease,filter .55s ease}
.gallery-premium-card:hover img{transform:scale(1.08);filter:saturate(1.08) contrast(1.03)}
.gallery-premium-overlay{position:absolute;left:16px;right:16px;bottom:16px;border-radius:22px;padding:15px 17px;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);box-shadow:0 12px 35px rgba(7,27,58,.13);color:#071b3a}
.gallery-premium-overlay b{display:block;font-weight:950;line-height:1.25}.gallery-premium-overlay small{display:block;color:#64748b;margin-top:4px;font-weight:800}
.mitra-pkl-section,.mitra-page-section{background:radial-gradient(circle at top left,rgba(30,136,229,.12),transparent 28%),linear-gradient(180deg,#ffffff,#f4f9ff)}
.mitra-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:4px 0 24px}
.mitra-summary-grid article{background:#fff;border:1px solid #dcecff;border-radius:24px;padding:20px;text-align:center;box-shadow:0 18px 45px rgba(8,32,68,.08)}
.mitra-summary-grid b{display:block;font-size:34px;color:#0a4d9d;font-weight:1000;line-height:1}.mitra-summary-grid small{display:block;color:#64748b;font-weight:850;margin-top:8px}
.mitra-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.mitra-card{background:#fff;border:1px solid #dcecff;border-radius:28px;overflow:hidden;box-shadow:0 20px 55px rgba(8,32,68,.09);transition:transform .25s ease,box-shadow .25s ease}.mitra-card:hover{transform:translateY(-6px);box-shadow:0 28px 70px rgba(10,77,157,.16)}
.mitra-logo-box{height:145px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f8fbff,#eef7ff);padding:24px}.mitra-logo-box img{max-width:100%;max-height:92px;object-fit:contain;border-radius:16px}
.mitra-body{padding:18px}.mitra-body h3{margin:0 0 8px;font-size:18px;line-height:1.25;color:#071b3a}.mitra-body p{margin:0 0 12px;color:#64748b;line-height:1.55}.mitra-body span{display:inline-flex;padding:8px 12px;border-radius:999px;background:#eaf4ff;color:#0a4d9d;font-weight:900;font-size:12px}.mitra-body ul{padding-left:18px;color:#475569;line-height:1.8;margin:12px 0}.mitra-empty{grid-column:1/-1;padding:26px;text-align:center;font-weight:900;color:#64748b}.mitra-page-grid{margin-top:28px}.mitra-detail-card .mitra-logo-box{height:170px}
.admin-nav a.mitra-active{background:rgba(255,255,255,.16)}
@media(max-width:1100px){.gallery-premium-grid,.mitra-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-premium-card:nth-child(1),.gallery-premium-card:nth-child(6){grid-column:span 1}.mitra-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.gallery-premium-grid,.mitra-logo-grid,.mitra-summary-grid{grid-template-columns:1fr}.gallery-premium-card{min-height:235px}.gallery-premium-card:nth-child(1),.gallery-premium-card:nth-child(6){min-height:235px}.mitra-logo-box{height:125px}}

/* =====================================================
   FINAL FIX UI PRESISI - SECTION CENTER + DUDI TABLE
   ===================================================== */
.section{padding:clamp(54px,7vw,86px) 0!important;overflow:hidden!important;}
.section .container{max-width:1180px!important;margin-left:auto!important;margin-right:auto!important;}
.title,.modern-section-head,.gradient-title,.kelas-industri-head,.tefa-head{
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:12px!important;margin:0 auto 34px!important;max-width:900px!important;
}
.title>div,.kelas-industri-head>div,.tefa-head>div{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;}
.title h1,.title h2,.modern-section-head h2,.gradient-title h1,.kelas-industri-head h2,.tefa-head h2{
  text-align:center!important;margin:8px auto 6px!important;line-height:1.12!important;letter-spacing:-.03em!important;color:#06183a!important;max-width:760px!important;
}
.title p,.modern-section-head p,.gradient-title p,.kelas-industri-head p,.tefa-head p{
  text-align:center!important;margin:0 auto!important;max-width:760px!important;line-height:1.72!important;color:#58708f!important;
}
.title .btn{margin-top:8px!important;align-self:center!important;}
.badge,.modern-section-badge{align-self:center!important;}

/* Banner/Baliho dibuat proporsional, lebar, dan responsive */
.baliho-section{padding-top:clamp(42px,6vw,70px)!important;background:linear-gradient(180deg,#f7fbff 0%,#fff 100%)!important;}
.baliho-slider{
  width:min(100%,1180px)!important;margin:0 auto!important;border-radius:34px!important;
  min-height:auto!important;aspect-ratio:16/6!important;max-height:520px!important;background:#062452!important;
  box-shadow:0 30px 80px rgba(7,27,58,.18)!important;
}
.baliho-slide{background-size:cover!important;background-position:center!important;}
.baliho-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,23,55,.82),rgba(3,23,55,.38),rgba(3,23,55,.18));z-index:0;}
.baliho-content{position:relative;z-index:1;max-width:620px!important;padding:clamp(34px,6vw,72px)!important;}
.baliho-content h3{max-width:560px!important;}
.baliho-content p{max-width:570px!important;}

/* Tabel DU/DI / Mitra Industri PKL */
.dudi-table-wrap{margin:28px auto 30px!important;padding:24px!important;border-radius:28px!important;background:#fff!important;border:1px solid rgba(10,77,157,.14)!important;box-shadow:0 24px 70px rgba(7,27,58,.08)!important;}
.dudi-table-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;margin-bottom:18px!important;}
.dudi-table-head h3{margin:4px 0 0!important;font-size:clamp(22px,2.4vw,32px)!important;color:#071b3a!important;}
.mini-label{display:inline-flex!important;align-items:center!important;gap:8px!important;background:#eef7ff!important;color:#0a4d9d!important;border:1px solid #cfe8ff!important;border-radius:999px!important;padding:7px 13px!important;font-size:12px!important;font-weight:900!important;letter-spacing:.04em!important;text-transform:uppercase!important;}
.table-responsive{width:100%!important;overflow-x:auto!important;border-radius:20px!important;border:1px solid #e2efff!important;}
.dudi-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;min-width:820px!important;background:#fff!important;}
.dudi-table th{background:linear-gradient(135deg,#073b8e,#0f7dd9)!important;color:#fff!important;padding:15px 14px!important;text-align:left!important;font-size:13px!important;letter-spacing:.02em!important;white-space:nowrap!important;}
.dudi-table th:first-child{border-top-left-radius:18px!important;text-align:center!important;width:58px!important;}
.dudi-table th:last-child{border-top-right-radius:18px!important;}
.dudi-table td{padding:14px!important;border-bottom:1px solid #eef5ff!important;color:#213a5d!important;vertical-align:middle!important;font-size:14px!important;}
.dudi-table tbody tr:nth-child(even){background:#f8fbff!important;}
.dudi-table tbody tr:hover{background:#eef7ff!important;}
.dudi-table td:first-child{text-align:center!important;font-weight:900!important;color:#0a4d9d!important;}
.status-pill{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:72px!important;padding:7px 12px!important;border-radius:999px!important;background:#e9fbf1!important;color:#087a3b!important;font-size:12px!important;font-weight:900!important;}
.empty-cell{text-align:center!important;padding:28px!important;color:#58708f!important;font-weight:700!important;}
.dudi-page-table{margin-bottom:32px!important;}

/* Logo card mitra tetap rapi setelah tabel */
.mitra-logo-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;gap:18px!important;margin-top:24px!important;}
.mitra-card{height:100%!important;border-radius:24px!important;background:#fff!important;border:1px solid rgba(10,77,157,.12)!important;box-shadow:0 18px 48px rgba(7,27,58,.08)!important;overflow:hidden!important;}
.mitra-logo-box{height:138px!important;display:grid!important;place-items:center!important;background:linear-gradient(180deg,#f8fbff,#eef7ff)!important;padding:18px!important;}
.mitra-logo-box img{max-width:100%!important;max-height:96px!important;object-fit:contain!important;}
.mitra-body{padding:18px!important;text-align:center!important;}
.mitra-body h3{font-size:18px!important;line-height:1.25!important;margin:0 0 8px!important;color:#071b3a!important;}
.mitra-body p{margin:0 0 10px!important;color:#58708f!important;line-height:1.55!important;}
.mitra-body span{display:inline-flex!important;padding:7px 12px!important;border-radius:999px!important;background:#fff7dd!important;color:#8a5a00!important;font-weight:800!important;font-size:12px!important;}

/* PDF embed tetap presisi */
.pro-media-layout{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)!important;gap:26px!important;align-items:start!important;}
.pdf-frame-wrap{height:clamp(460px,55vw,760px)!important;}

@media(max-width:980px){
  .baliho-slider{aspect-ratio:16/8!important;border-radius:26px!important;}
  .pro-media-layout{grid-template-columns:1fr!important;}
  .dudi-table-head{align-items:flex-start!important;flex-direction:column!important;}
}
@media(max-width:640px){
  .section{padding:44px 0!important;}
  .baliho-slider{aspect-ratio:1.05/1!important;border-radius:22px!important;}
  .baliho-content{padding:28px 22px!important;}
  .dudi-table-wrap{padding:14px!important;border-radius:22px!important;}
  .dudi-table{min-width:760px!important;}
  .title,.modern-section-head,.gradient-title,.kelas-industri-head,.tefa-head{margin-bottom:24px!important;}
}

/* =====================================================
FINAL SPMB + UI SATU TEMA PROFESIONAL
===================================================== */
:root{--smk-primary:#082a60;--smk-blue:#1976d2;--smk-gold:#ffd34d;--smk-bg:#f6faff;--smk-text:#071f49;--smk-border:rgba(25,118,210,.18);--smk-shadow:0 22px 60px rgba(8,42,96,.12)}
.modern-section-head.center,.title{max-width:980px;margin-left:auto!important;margin-right:auto!important;text-align:center!important;display:block!important}.modern-section-head.center h2,.title h2{font-size:clamp(30px,4vw,54px)!important;line-height:1.08!important;margin:12px auto 12px!important;color:var(--smk-text)!important}.modern-section-head.center p,.title p{max-width:820px!important;margin:0 auto!important;color:#526b95!important;font-size:clamp(15px,1.3vw,18px)!important;line-height:1.75!important}.modern-section-badge,.badge{display:inline-flex!important;align-items:center!important;gap:8px!important;border:1px solid var(--smk-border)!important;background:linear-gradient(180deg,#fff,#eef6ff)!important;color:#0755b0!important;border-radius:999px!important;padding:8px 16px!important;font-weight:800!important;letter-spacing:.03em!important}
.baliho-pro-section .container,.hero-baliho-section .container{max-width:1280px!important}.baliho-carousel{width:min(1180px,92vw)!important;margin:34px auto 0!important;border-radius:30px!important;overflow:hidden!important;box-shadow:var(--smk-shadow)!important}.baliho-slide{min-height:clamp(330px,36vw,520px)!important;background-size:cover!important;background-position:center!important}.baliho-content{max-width:590px!important;padding:clamp(28px,5vw,66px)!important}.baliho-content h3{font-size:clamp(30px,4.4vw,58px)!important;line-height:1.04!important;color:#fff!important}.baliho-content p{font-size:clamp(15px,1.35vw,19px)!important;line-height:1.7!important;color:#fff!important}.school-stats-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important;max-width:1120px!important;margin:34px auto 0!important}.school-stat-card{background:#fff!important;border:1px solid var(--smk-border)!important;border-radius:26px!important;padding:28px 20px!important;text-align:center!important;box-shadow:var(--smk-shadow)!important}.school-stat-card b{display:block!important;font-size:clamp(28px,3.8vw,48px)!important;color:var(--smk-text)!important}.school-stat-card small{font-weight:800!important;color:#526b95!important}.school-stat-icon{width:58px!important;height:58px!important;margin:0 auto 12px!important;border-radius:18px!important;background:linear-gradient(135deg,#0b5cc5,#23a7f6)!important;color:#fff!important;display:grid!important;place-items:center!important;font-size:24px!important;box-shadow:0 14px 28px rgba(25,118,210,.25)!important}
.news-media-home{background:linear-gradient(180deg,#ffffff,#f6faff)!important}.news-media-layout{display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(340px,.75fr)!important;gap:28px!important;align-items:start!important;margin-top:36px!important}.news-headline{overflow:hidden!important;border-radius:28px!important}.news-headline>img{width:100%!important;height:clamp(260px,28vw,420px)!important;object-fit:cover!important}.news-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;margin-top:18px!important}.mini-news{display:flex!important;align-items:center!important;gap:14px!important;padding:12px!important;text-decoration:none!important;border:1px solid var(--smk-border)!important;border-radius:20px!important;background:#fff!important}.mini-news img{width:94px!important;height:74px!important;border-radius:14px!important;object-fit:cover!important}.mini-news b{display:block!important;color:var(--smk-text)!important;line-height:1.25!important}.mini-news small{display:block!important;color:#6680a8!important;margin-top:5px!important}.media-video-sidebar{border:1px solid var(--smk-border)!important;border-radius:28px!important;background:#fff!important;padding:22px!important;box-shadow:var(--smk-shadow)!important}.media-panel-head{display:flex!important;align-items:center!important;gap:12px!important;margin-bottom:18px!important}.media-panel-head>i{width:46px!important;height:46px!important;display:grid!important;place-items:center!important;border-radius:16px!important;background:#eef6ff!important;color:#0b63c9!important}.media-panel-head b{display:block!important;color:var(--smk-text)!important;font-size:18px!important}.media-panel-head small{display:block!important;color:#627aa1!important}.yt-card{display:block!important;background:#f7fbff!important;border:1px solid var(--smk-border)!important;border-radius:22px!important;padding:12px!important;margin-bottom:14px!important}.yt-card iframe{width:100%!important;aspect-ratio:16/9!important;height:auto!important;border:0!important;border-radius:16px!important}.yt-card b{display:block!important;margin-top:10px!important;color:var(--smk-text)!important}.yt-empty,.pdf-empty-state{border:1px dashed var(--smk-border)!important;border-radius:22px!important;background:#f8fbff!important;color:#526b95!important}.pdf-embed-section{background:#fff!important}.pro-media-layout{display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)!important;gap:28px!important;align-items:start!important}.info-only-sidebar .pdf-list-mini{margin-top:0!important}.media-file-item{display:grid!important;grid-template-columns:42px 1fr auto!important;align-items:center!important;gap:12px!important;padding:13px!important;border:1px solid var(--smk-border)!important;border-radius:18px!important;text-decoration:none!important;color:var(--smk-text)!important;background:#fff!important;margin-bottom:10px!important}.media-file-item span{width:42px!important;height:42px!important;border-radius:14px!important;display:grid!important;place-items:center!important;background:#fff4f4!important;color:#e53935!important}.media-file-item small{color:#6680a8!important}.media-file-item em{font-style:normal!important;font-size:12px!important;background:#eaf4ff!important;color:#0b63c9!important;border-radius:999px!important;padding:4px 10px!important}.dudi-table-wrap{border:1px solid var(--smk-border)!important;border-radius:28px!important;background:#fff!important;box-shadow:var(--smk-shadow)!important;overflow:hidden!important}.dudi-table-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:22px 24px!important;border-bottom:1px solid var(--smk-border)!important}.dudi-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important}.dudi-table th{background:#eef6ff!important;color:#0b3b7d!important;text-transform:uppercase!important;font-size:12px!important;letter-spacing:.05em!important;padding:15px!important;text-align:left!important}.dudi-table td{padding:15px!important;border-top:1px solid rgba(8,42,96,.08)!important;color:#17335f!important}.dudi-status{display:inline-flex!important;align-items:center!important;border-radius:999px!important;padding:6px 12px!important;background:#eaf8ef!important;color:#087c39!important;font-weight:800!important;font-size:12px!important}.dudi-status.danger{background:#fff0f0!important;color:#c62828!important}.dudi-status.warn{background:#fff8de!important;color:#9a6a00!important}.dudi-status.wait{background:#eef6ff!important;color:#0b63c9!important}.spmb-actions{display:flex!important;gap:8px!important;flex-wrap:wrap!important}.spmb-actions a{padding:7px 10px!important;border-radius:999px!important;background:#eef6ff!important;color:#0b63c9!important;text-decoration:none!important;font-weight:800!important;font-size:12px!important}.admin-theme-body{background:var(--smk-bg)!important;color:var(--smk-text)!important}.admin-modern-top{background:linear-gradient(135deg,#082a60,#1976d2)!important;color:#fff!important;padding:18px 0!important;box-shadow:0 16px 40px rgba(8,42,96,.18)!important}.admin-modern-top b{display:block!important;font-size:20px!important}.admin-modern-top small{color:rgba(255,255,255,.78)!important}.admin-form-section .container{max-width:1180px!important}.form,.admin-panel,.card,.lux-card{border-radius:26px}.form input,.form select,.form textarea,.input,select,textarea{border-radius:16px!important;border:1px solid var(--smk-border)!important;background:#fff!important;padding:14px 16px!important;outline:none!important}.form input:focus,.form select:focus,.form textarea:focus,.input:focus,select:focus,textarea:focus{border-color:#1976d2!important;box-shadow:0 0 0 4px rgba(25,118,210,.12)!important}.btn{border-radius:999px!important;font-weight:900!important}.nav-ppdb{background:linear-gradient(135deg,#0b63c9,#24a9f6)!important;color:#fff!important;border:0!important}
@media(max-width:980px){.school-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.news-media-layout,.pro-media-layout{grid-template-columns:1fr!important}.news-list{grid-template-columns:1fr!important}.baliho-carousel{width:94vw!important}.dudi-table-head{display:block!important}.table-responsive{overflow-x:auto!important}.dudi-table{min-width:820px!important}}
@media(max-width:560px){.school-stats-grid{grid-template-columns:1fr!important}.baliho-slide{min-height:360px!important}.baliho-content{padding:28px!important}.mini-news img{width:84px!important;height:68px!important}.media-file-item{grid-template-columns:38px 1fr!important}.media-file-item em{grid-column:2!important;width:max-content!important}.section{padding-left:14px!important;padding-right:14px!important}}

/* =====================================================
   UI/UX PREMIUM FINAL 2026 - SMKN 1 KUPANG
   Fokus: keterbacaan teks, form rapi, admin/publik responsif HP,
   logo/icon jelas, tombol konsisten, tabel aman dibaca.
   ===================================================== */
:root{
  --ui-primary:#0756b6;
  --ui-primary-2:#0ea5e9;
  --ui-navy:#062553;
  --ui-gold:#fbbf24;
  --ui-green:#16a34a;
  --ui-red:#dc2626;
  --ui-orange:#ea580c;
  --ui-text:#0b1f3a;
  --ui-soft-text:#475569;
  --ui-muted:#64748b;
  --ui-bg:#f3f7fc;
  --ui-card:#ffffff;
  --ui-border:#d9e6f5;
  --ui-shadow:0 18px 55px rgba(6,37,83,.11);
  --ui-radius:22px;
}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--ui-bg)!important;color:var(--ui-text)!important;font-size:16px;line-height:1.65;text-rendering:optimizeLegibility}
body,input,select,textarea,button{font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif!important}
a{color:#0756b6} a:hover{color:#043f86}.container{width:min(1180px,100%);padding-left:20px!important;padding-right:20px!important}.topbar{background:linear-gradient(90deg,#062553,#0756b6)!important;color:#fff!important}.topbar *{color:#fff!important}.navbar{backdrop-filter:blur(14px);background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(217,230,245,.9)!important}.navwrap{gap:18px}.brand{min-width:0}.brand img,.admin-brand img{background:#fff;border-radius:18px;padding:5px;border:1px solid #dbeafe;box-shadow:0 10px 24px rgba(7,86,182,.12)}.brand span,.brand b{color:var(--ui-navy)!important}.menu a{position:relative;padding:10px 8px;border-radius:12px;color:#18345c!important}.menu a:hover,.menu a.active{background:#eef6ff;color:#0756b6!important}.btn,button.btn,input[type=submit],.button{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:999px!important;border:0!important;background:linear-gradient(135deg,var(--ui-primary),var(--ui-primary-2))!important;color:#fff!important;font-weight:900!important;letter-spacing:.01em;box-shadow:0 12px 28px rgba(7,86,182,.22);transition:.2s ease}.btn:hover,button.btn:hover,input[type=submit]:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(7,86,182,.28);color:#fff!important}.btn-light{background:#fff!important;color:#0756b6!important;border:1px solid #dbeafe!important;box-shadow:0 10px 24px rgba(7,86,182,.1)}.btn-danger,.danger{background:#fff1f2!important;color:#be123c!important;border:1px solid #fecdd3!important}.badge,.status-pill,.ann-badge{font-weight:900!important;letter-spacing:.02em}.section{padding:72px 0}.title h2,.modern-section-head h2,.gradient-title h2{color:var(--ui-navy)!important;letter-spacing:-.03em}.title p,.modern-section-head p,.card p,.lux-card p{color:var(--ui-soft-text)!important}.card,.lux-card,.profile-box,.announcement-card,.tefa-card,.kelas-industri-card{background:var(--ui-card)!important;border:1px solid var(--ui-border)!important;border-radius:var(--ui-radius)!important;box-shadow:var(--ui-shadow)!important;color:var(--ui-text)!important}.card img,.lux-card img{border-top-left-radius:var(--ui-radius);border-top-right-radius:var(--ui-radius)}.card-body h3,.card-body h4,.lux-card h3,.lux-card h4{color:var(--ui-navy)!important}.hero h1,.hero-content h1{color:#fff!important;text-shadow:0 4px 20px rgba(0,0,0,.25)}.hero p,.hero-content p{color:#eaf3ff!important}.tag{background:rgba(255,255,255,.16)!important;color:#fff!important;border-color:rgba(255,255,255,.35)!important}

/* FORM PREMIUM */
form{color:var(--ui-text)}
label{display:block;margin:14px 0 7px;color:#12345d!important;font-weight:900!important;font-size:14px;letter-spacing:.01em}.form label small,label small{display:block;color:#64748b!important;font-weight:700;margin-top:2px}.input,input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{width:100%;min-height:46px;background:#fff!important;color:#0b1f3a!important;border:1px solid #cbdff4!important;border-radius:16px!important;padding:13px 15px!important;font-size:15.5px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 1px 2px rgba(15,23,42,.04);transition:border .18s ease,box-shadow .18s ease,background .18s ease}textarea{min-height:130px;resize:vertical;line-height:1.65}select{appearance:auto;background:#fff!important}input::placeholder,textarea::placeholder{color:#8aa1bd!important;opacity:1}.input:focus,input:focus,select:focus,textarea:focus{outline:none!important;border-color:#0756b6!important;box-shadow:0 0 0 4px rgba(7,86,182,.13)!important}.form .btn,form .btn{margin-top:16px}.form h2,.admin-panel h2{color:var(--ui-navy)!important;margin-top:0}.help,.form-help,.muted,small{color:#64748b}.notice-ok,.alert-success{background:#ecfdf5!important;color:#065f46!important;border:1px solid #bbf7d0!important;border-radius:16px!important;padding:13px 16px!important;font-weight:800}.notice-err,.alert-danger,.error{background:#fff1f2!important;color:#991b1b!important;border:1px solid #fecdd3!important;border-radius:16px!important;padding:13px 16px!important;font-weight:800}

/* ADMIN PREMIUM READABILITY */
.admin-premium{background:linear-gradient(180deg,#f8fbff,#eef5ff)!important;color:var(--ui-text)!important}.admin-shell{min-height:100vh;background:transparent!important}.admin-sidebar{background:linear-gradient(180deg,#062553,#073b7a 52%,#052047)!important;color:#eaf3ff!important;border-right:1px solid rgba(255,255,255,.12)!important;box-shadow:16px 0 44px rgba(6,37,83,.16);scrollbar-width:thin}.admin-brand{border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:16px;margin-bottom:10px}.admin-brand span b{color:#fff!important}.admin-brand small{color:#b9d7ff!important}.admin-nav a{color:#eaf3ff!important;border:1px solid transparent;border-radius:14px!important;margin:3px 0;display:flex!important;align-items:center;gap:10px}.admin-nav a:hover,.admin-nav a.active{background:rgba(255,255,255,.13)!important;border-color:rgba(255,255,255,.18)!important;color:#fff!important;transform:translateX(2px)}.admin-nav .danger{background:rgba(220,38,38,.16)!important;color:#fecaca!important}.nav-title{color:#9fc7ff!important;font-size:11px!important;letter-spacing:.12em!important;margin:18px 0 8px!important;font-weight:900!important}.admin-main{background:transparent!important}.admin-topbar{background:linear-gradient(135deg,#ffffff,#eef6ff)!important;border:1px solid var(--ui-border)!important;box-shadow:var(--ui-shadow)!important;border-radius:28px!important;color:var(--ui-text)!important}.admin-topbar h1{color:var(--ui-navy)!important;font-size:clamp(26px,3vw,42px)!important;letter-spacing:-.035em;margin:8px 0 4px!important}.admin-topbar p{color:#4b6387!important;max-width:820px}.top-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-panel{background:rgba(255,255,255,.96)!important;border:1px solid var(--ui-border)!important;border-radius:26px!important;box-shadow:var(--ui-shadow)!important;color:var(--ui-text)!important;overflow:hidden}.admin-panel.form{padding:24px!important}.panel-head{border-bottom:1px solid #e5effa;padding-bottom:12px;margin-bottom:16px}.panel-head h2{font-size:22px!important}.panel-head a{font-weight:900;color:#0756b6!important}.admin-stats{gap:16px!important}.admin-stat-card{background:#fff!important;border:1px solid var(--ui-border)!important;border-radius:24px!important;box-shadow:0 12px 35px rgba(6,37,83,.08)!important;color:var(--ui-text)!important;transition:.2s ease}.admin-stat-card:hover{transform:translateY(-3px);box-shadow:0 20px 48px rgba(6,37,83,.13)!important}.admin-stat-card span{background:linear-gradient(135deg,#eaf4ff,#fff7df)!important;color:#0756b6!important;border-radius:18px!important}.admin-stat-card b{color:var(--ui-navy)!important}.admin-stat-card small{color:#12345d!important;font-weight:900!important}.admin-stat-card em{color:#64748b!important}.quick-card{background:#f7fbff!important;color:#12345d!important;border:1px solid #d9e6f5!important;border-radius:18px!important;font-weight:900!important}.quick-card:hover{background:#eaf4ff!important;color:#0756b6!important}.security-list li{background:#f7fbff!important;color:#12345d!important;border:1px solid #d9e6f5!important;border-radius:16px!important}.admin-footer{color:#64748b!important;text-align:center;margin:28px 0 8px}.admin-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;background:#fff!important;border-radius:18px!important;overflow:hidden}.admin-table th{background:linear-gradient(180deg,#eaf4ff,#dceeff)!important;color:#082a60!important;font-size:12px!important;text-transform:uppercase;letter-spacing:.05em;font-weight:900!important;padding:14px!important;text-align:left!important;border-bottom:1px solid #cfe2f8!important}.admin-table td{color:#17345f!important;padding:14px!important;border-bottom:1px solid #eef4fb!important;vertical-align:top}.admin-table tr:hover td{background:#f8fbff!important}.admin-table small{color:#64748b!important}.admin-table a{display:inline-flex;align-items:center;margin:2px;padding:6px 9px;border-radius:999px;background:#eef6ff;color:#0756b6!important;font-weight:900;font-size:12px}.admin-table a:hover{background:#dbeafe}.status-pill,.ann-on{background:#dcfce7!important;color:#166534!important;border-radius:999px;padding:6px 10px;font-size:12px}.ann-off{background:#fee2e2!important;color:#991b1b!important;border-radius:999px;padding:6px 10px;font-size:12px}.ann-preview,.ban-preview{background:#f8fbff!important;border:1px solid #d9e6f5!important;box-shadow:0 8px 20px rgba(6,37,83,.08)}

/* LOGIN & PUBLIC SERVICE */
.login-card,.auth-card{background:#fff!important;border:1px solid var(--ui-border)!important;border-radius:28px!important;box-shadow:var(--ui-shadow)!important}.alumni-card,.ppdb-card{background:#fff!important;border:1px solid var(--ui-border)!important;border-radius:26px!important;box-shadow:var(--ui-shadow)!important}.table-responsive,.admin-panel:has(table){overflow-x:auto}.table-responsive table{min-width:760px}

/* MOBILE RESPONSIVE */
@media(max-width:1080px){
  .navwrap{position:relative}.navbar .mobile,#mobileMenuBtn{display:inline-flex!important;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid #dbeafe;border-radius:16px;background:#eef6ff;color:#0756b6;font-size:24px;font-weight:900;z-index:1002}.navbar .menu{position:fixed!important;left:14px!important;right:14px!important;top:var(--nav-top,82px)!important;display:none!important;flex-direction:column!important;align-items:stretch!important;gap:6px!important;background:#fff!important;border:1px solid #d9e6f5!important;border-radius:24px!important;padding:14px!important;box-shadow:0 24px 70px rgba(6,37,83,.22)!important;z-index:1000!important;max-height:calc(100vh - 105px)!important;overflow:auto!important}.navbar .menu.open,.navbar .menu.navbar-mobile-open{display:flex!important}.navbar .menu a{padding:13px 14px!important;width:100%!important}.hero{height:auto!important;min-height:520px!important}.hero-content{padding:95px 0 70px!important}.hero h1{font-size:clamp(34px,9vw,54px)!important}.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))!important}.admin-shell{display:block!important}.admin-sidebar{position:relative!important;width:100%!important;max-height:none!important;border-radius:0 0 26px 26px;padding:16px!important}.admin-nav{display:flex!important;gap:8px!important;overflow-x:auto!important;padding-bottom:6px!important;scroll-snap-type:x mandatory}.admin-nav a{white-space:nowrap;scroll-snap-align:start;min-height:42px}.admin-nav .nav-title{display:none!important}.admin-main{margin-left:0!important;padding:18px!important}.admin-topbar{display:block!important;padding:22px!important}.top-actions{margin-top:14px}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.admin-grid-2{grid-template-columns:1fr!important}.admin-panel{border-radius:22px!important}.admin-table{min-width:760px!important}.admin-panel:has(.admin-table){padding-bottom:8px!important}
}
@media(max-width:640px){
  body{font-size:15px}.container{padding-left:14px!important;padding-right:14px!important}.topbar{font-size:12.5px}.brand img{width:44px!important;height:44px!important}.brand span,.brand b{font-size:15px!important}.section{padding:48px 0!important}.title h2,.modern-section-head h2{font-size:clamp(28px,8vw,38px)!important}.grid-3,.grid-4,.news-list,.school-stats-grid{grid-template-columns:1fr!important}.card img{height:190px!important}.btn{width:100%;min-height:46px}.btn-light{width:auto}.admin-main{padding:14px!important}.admin-sidebar{padding:12px!important}.admin-brand img{width:42px!important;height:42px!important}.admin-brand span b{font-size:15px!important}.admin-topbar{border-radius:22px!important;padding:18px!important}.admin-topbar h1{font-size:26px!important}.admin-stats{grid-template-columns:1fr!important}.admin-stat-card{padding:16px!important}.quick-actions{grid-template-columns:1fr!important}.form,.admin-panel.form{padding:18px!important}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{font-size:16px!important}.admin-table th,.admin-table td{padding:12px!important}.hero-content{padding-top:82px!important}.baliho-content h3{font-size:30px!important}.media-file-item{grid-template-columns:40px 1fr!important}.top-actions .btn{width:100%}
}

/* =====================================================
   FINAL PATCH 2026-06-30: RAPKAN WARNA TEKS, FORM, LOGIN, PROFIL
   Fokus dari screenshot: teks banner profil harus jelas, form login tidak tumpang tindih,
   tombol/card lebih kontras, dan responsive HP tetap rapi.
===================================================== */
:root{
  --fix-ink:#071b3a;
  --fix-blue:#0758c9;
  --fix-sky:#24b8ff;
  --fix-soft:#f6faff;
  --fix-border:#d8e9ff;
  --fix-muted:#52657f;
}
body{color:var(--fix-ink)!important;background:linear-gradient(180deg,#f7fbff,#ffffff 48%,#f7fbff)!important;}
/* Banner judul halaman seperti Profil Lengkap */
.gradient-title,
.section .container > .gradient-title{
  width:min(100%,980px)!important;
  margin:52px auto 34px!important;
  padding:46px 34px!important;
  border-radius:32px!important;
  background:radial-gradient(circle at 92% 12%,rgba(255,211,61,.30),transparent 26%),linear-gradient(135deg,#06306f 0%,#0758c9 58%,#23a8f2 100%)!important;
  box-shadow:0 28px 85px rgba(7,88,201,.22)!important;
  border:1px solid rgba(255,255,255,.28)!important;
  overflow:hidden!important;
  text-align:center!important;
  position:relative!important;
}
.gradient-title:before{
  content:""!important;position:absolute!important;inset:auto -80px -90px auto!important;width:260px!important;height:260px!important;border-radius:50%!important;background:rgba(255,255,255,.15)!important;pointer-events:none!important;
}
.gradient-title h1,.gradient-title h2,
.section .container > .gradient-title h1,
.section .container > .gradient-title h2{
  position:relative!important;z-index:1!important;
  max-width:900px!important;margin:0 auto 14px!important;
  color:#ffffff!important;text-shadow:0 10px 26px rgba(0,0,0,.20)!important;
  font-size:clamp(30px,4.2vw,56px)!important;line-height:1.08!important;
  letter-spacing:-1.2px!important;word-break:normal!important;overflow-wrap:break-word!important;
}
.gradient-title p,
.section .container > .gradient-title p{
  position:relative!important;z-index:1!important;
  max-width:760px!important;margin:0 auto!important;
  color:#eef7ff!important;font-size:clamp(15px,1.4vw,18px)!important;line-height:1.75!important;font-weight:700!important;
}
/* Card menu profil agar teks jelas */
.profile-action-card,.identity-modern-card,.modern-identity-section,.card,.lux-card{
  color:var(--fix-ink)!important;border-color:var(--fix-border)!important;
}
.profile-action-card b,.identity-modern-card strong,.card h3,.card-body h3{color:var(--fix-ink)!important;}
.profile-action-card small,.identity-modern-card small,.card p,.card-body p{color:var(--fix-muted)!important;}
.profile-action-card em,.card-body a{color:#0758c9!important;}
/* Form umum: teks dan placeholder lebih kontras */
label{color:#102a55!important;font-weight:900!important;}
.input,input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{
  color:#071b3a!important;background:#ffffff!important;border:1px solid #c8def7!important;border-radius:16px!important;
}
input::placeholder,textarea::placeholder{color:#8296b3!important;opacity:1!important;}
.input:focus,input:focus,select:focus,textarea:focus{border-color:#0758c9!important;box-shadow:0 0 0 4px rgba(7,88,201,.14)!important;}
/* Topbar/navbar agar teks tidak kabur */
.topbar,.topbar-premium{color:#fff!important;}
.topbar *,.topbar-premium *{color:#fff!important;}
.navbar .menu a,.navbar .menu-item>a{color:#071b3a!important;}
.navbar .menu a.active,.navbar .menu a:hover{color:#fff!important;background:linear-gradient(135deg,#0758c9,#23a8f2)!important;}
.brand span{color:#071b3a!important}.brand small{color:#0758c9!important;}
/* Login page jika class terbaca dari stylesheet */
.login-shell .brand-content h1,.login-shell .brand-content p,.login-shell .brand-bottom{color:#fff!important;}
.login-shell .feature b,.login-shell .feature span{color:#fff!important;}
.login-shell .login-card h2{color:#071b3a!important;}
.login-shell .login-card .sub{color:#52657f!important;}
.login-shell .input-wrap input{padding-left:60px!important;padding-right:58px!important;color:#071b3a!important;background:#fff!important;}
.login-shell .input-wrap .ico{z-index:3!important;left:20px!important;color:#0758c9!important;pointer-events:none!important;}
.login-shell .toggle-pass{z-index:4!important;color:#0758c9!important;}
.login-shell .secure-row,.login-shell .copy{color:#60738f!important;}
.login-shell .login-note{color:#425a78!important;background:#f7fbff!important;border-color:#d8e9ff!important;}
/* Tabel admin/public mudah dibaca */
table th{color:#082a60!important;background:#eef6ff!important;font-weight:950!important;}
table td{color:#17345f!important;background:#fff!important;}
.admin-table tr:hover td,.dudi-table tbody tr:hover td{background:#f8fbff!important;}
/* Button konsisten */
.btn,.btn-login,.nav-ppdb{background:linear-gradient(135deg,#0758c9,#23a8f2)!important;color:#fff!important;text-shadow:none!important;}
.btn-light{background:#ffffff!important;color:#0758c9!important;border:1px solid #cfe2ff!important;}
.btn-gold{background:linear-gradient(135deg,#ffdf7e,#f6b834)!important;color:#071b3a!important;}
/* Mobile polish */
@media(max-width:760px){
  .gradient-title,.section .container > .gradient-title{margin:28px auto 26px!important;padding:30px 20px!important;border-radius:24px!important;}
  .gradient-title h1,.gradient-title h2,.section .container > .gradient-title h1,.section .container > .gradient-title h2{font-size:clamp(26px,8vw,36px)!important;letter-spacing:-.6px!important;}
  .gradient-title p,.section .container > .gradient-title p{font-size:14.5px!important;}
  .profile-action-grid,.identity-modern-grid{grid-template-columns:1fr!important;gap:16px!important;}
  .login-shell .input-wrap input{padding-left:56px!important;padding-right:54px!important;}
}

/* =====================================================
   PATCH FINAL: RAPKAN BOX TEACHING FACTORY
   Tujuan: teks di dalam card TEFA tidak terpotong, spacing rapi,
   tinggi card menyesuaikan isi, gambar konsisten, dan responsive HP.
===================================================== */
.tefa-grid,
.profile-tefa-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
}
.tefa-card,
.profile-tefa-grid .tefa-card{
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
  display:flex!important;
  flex-direction:column!important;
  border-radius:26px!important;
  background:#ffffff!important;
  border:1px solid #cfe2ff!important;
  box-shadow:0 18px 48px rgba(7,27,58,.10)!important;
}
.tefa-card .tefa-img,
.profile-tefa-grid .tefa-card > img{
  width:100%!important;
  height:170px!important;
  min-height:170px!important;
  max-height:170px!important;
  display:block!important;
  overflow:hidden!important;
  border-radius:26px 26px 0 0!important;
  background:#eef7ff!important;
}
.tefa-card .tefa-img img,
.profile-tefa-grid .tefa-card > img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
.tefa-card .tefa-body,
.profile-tefa-grid .tefa-card > div{
  flex:1 1 auto!important;
  display:flex!important;
  flex-direction:column!important;
  padding:20px 20px 24px!important;
  min-height:0!important;
  overflow:visible!important;
}
.tefa-card .tefa-sub,
.profile-tefa-grid .tefa-card span{
  display:block!important;
  width:100%!important;
  padding:0!important;
  margin:0 0 8px!important;
  border-radius:0!important;
  background:transparent!important;
  color:#405a7d!important;
  font-size:15px!important;
  line-height:1.45!important;
  font-weight:700!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.tefa-card h3,
.profile-tefa-grid .tefa-card h3{
  margin:0 0 12px!important;
  color:#071b3a!important;
  font-size:clamp(21px,1.7vw,26px)!important;
  line-height:1.18!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}
.tefa-card p,
.profile-tefa-grid .tefa-card p{
  margin:0!important;
  color:#52657f!important;
  font-size:16px!important;
  line-height:1.78!important;
  font-weight:600!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  display:block!important;
  max-height:none!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:unset!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
.tefa-card:hover,
.profile-tefa-grid .tefa-card:hover{
  transform:translateY(-5px)!important;
  box-shadow:0 26px 70px rgba(7,88,201,.18)!important;
}
@media(max-width:1200px){
  .tefa-grid,.profile-tefa-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:820px){
  .tefa-grid,.profile-tefa-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;}
}
@media(max-width:560px){
  .tefa-grid,.profile-tefa-grid{grid-template-columns:1fr!important;}
  .tefa-card .tefa-img,.profile-tefa-grid .tefa-card > img{height:190px!important;min-height:190px!important;max-height:190px!important;}
  .tefa-card .tefa-body,.profile-tefa-grid .tefa-card > div{padding:18px!important;}
  .tefa-card p,.profile-tefa-grid .tefa-card p{font-size:15.5px!important;line-height:1.75!important;}
}


/* FINAL PATCH PDF MOBILE 2026-07-02 */
.pdf-responsive-viewer{width:100%!important;max-width:100%!important;overflow:hidden!important;background:#f7fbff!important;border-radius:22px!important;}
.pdf-responsive-viewer object,.pdf-responsive-viewer iframe{display:block!important;width:100%!important;min-height:680px!important;height:min(78vh,760px)!important;border:0!important;background:#fff!important;border-radius:18px!important;}
.pdf-viewer-box.pdf-responsive-viewer{padding:12px!important;border:1px solid #d7e8ff!important;box-shadow:0 18px 45px rgba(10,77,157,.08)!important;}
.pdf-mobile-helper{display:flex!important;gap:10px!important;align-items:flex-start!important;margin:0 0 12px!important;padding:12px 14px!important;border-radius:16px!important;background:#eef7ff!important;color:#0a4d9d!important;font-weight:800!important;line-height:1.5!important;}
.pdf-mobile-helper i{margin-top:3px!important;}
.pdf-fallback-panel{min-height:260px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:10px!important;padding:28px!important;color:#0f2749!important;background:#fff!important;}
.pdf-fallback-panel i{font-size:48px!important;color:#d32f2f!important;}
.pdf-title-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;flex-wrap:wrap!important;margin-bottom:14px!important;}
@media(max-width:768px){.pdf-embed-card,.info-only-sidebar{padding:16px!important;border-radius:22px!important}.pdf-responsive-viewer object,.pdf-responsive-viewer iframe{min-height:74vh!important;height:74vh!important;border-radius:14px!important}.pdf-viewer-box.pdf-responsive-viewer{padding:8px!important;margin-left:-4px!important;margin-right:-4px!important}.pdf-mobile-helper{font-size:13px!important;padding:10px 12px!important}.pdf-title-row .btn{width:100%!important;justify-content:center!important}.article-wrap{grid-template-columns:1fr!important}.article{padding-left:14px!important;padding-right:14px!important}}
@media(max-width:420px){.pdf-responsive-viewer object,.pdf-responsive-viewer iframe{min-height:70vh!important;height:70vh!important}.pdf-mobile-helper{font-size:12.5px!important}.pdf-fallback-panel{padding:22px 14px!important}}


/* =====================================================
   FINAL PATCH 2026-07-02: Sidebar Video YouTube + Tagline Info/Berita Terbaru + Mobile Hostinger Ready
   ===================================================== */
.latest-ticker-wrap{position:relative;z-index:20;background:linear-gradient(135deg,#082a60,#0b63c9);color:#fff;border-bottom:1px solid rgba(255,255,255,.16);box-shadow:0 14px 38px rgba(8,42,96,.16)}
.latest-ticker{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;min-height:46px;overflow:hidden}
.latest-ticker>b{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.ticker-track{overflow:hidden;white-space:nowrap;min-width:0}
.ticker-track span{display:inline-flex;align-items:center;gap:18px;animation:smkTickerMove 42s linear infinite;padding-left:100%}
.ticker-track a{color:#fff;text-decoration:none;font-weight:800;font-size:13px;opacity:.95}
.ticker-track a:hover{text-decoration:underline}.ticker-track em{font-style:normal;opacity:.55}.ticker-all{color:#082a60!important;background:#fff;text-decoration:none;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:900;white-space:nowrap}
@keyframes smkTickerMove{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}
.section-tagline-row{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin:18px 0 0}.section-tagline-row.left{justify-content:flex-start}.section-tagline-row span{display:inline-flex;align-items:center;gap:8px;border:1px solid #dcecff;background:#fff;border-radius:999px;padding:9px 14px;color:#0b3b7d;font-weight:900;box-shadow:0 10px 24px rgba(10,77,157,.08)}
.youtube-info-sidebar{border:1px solid var(--smk-border,#dcecff)!important;border-radius:30px!important;background:#fff!important;padding:22px!important;box-shadow:var(--smk-shadow,0 24px 70px rgba(8,42,96,.12))!important;position:sticky;top:96px;align-self:start;overflow:hidden}.youtube-info-sidebar:before,.media-video-sidebar:before{content:"";display:block;height:5px;margin:-22px -22px 18px;background:linear-gradient(90deg,#e53935,#ffb300,#0b63c9)}.youtube-side-head>i{background:#fff1f1!important;color:#e53935!important}.sidebar-yt-card{padding:12px!important;border-radius:22px!important;border:1px solid #dcecff!important;background:#f8fbff!important}.sidebar-yt-card iframe{width:100%!important;aspect-ratio:16/9!important;height:auto!important;border:0!important;border-radius:16px!important}.latest-side-block{margin-top:20px;padding-top:16px;border-top:1px solid #e6f0fb}.latest-side-block h4{margin:0 0 12px;color:#082a60;font-size:16px;display:flex;align-items:center;gap:8px}.side-link-modern{border:1px solid #e1efff!important;background:#fff!important;border-radius:16px!important;margin-bottom:10px!important;padding:12px 14px!important;transition:.22s ease!important}.side-link-modern:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(10,77,157,.1)}.side-empty{margin:0;color:#6680a8;background:#f8fbff;border:1px dashed #dcecff;border-radius:16px;padding:12px}.media-video-sidebar .info-btn{width:100%;justify-content:center;margin-top:6px}.media-video-sidebar .yt-card{border:1px solid #dcecff!important}.final-news-layout{grid-template-columns:minmax(0,1fr) minmax(320px,.36fr)!important;align-items:start!important}
@media(max-width:980px){.latest-ticker{grid-template-columns:1fr;gap:8px;padding:10px 16px}.ticker-all{justify-self:start}.ticker-track span{padding-left:30%;animation-duration:32s}.youtube-info-sidebar{position:relative;top:auto}.final-news-layout{grid-template-columns:1fr!important}.media-video-sidebar{position:relative!important;top:auto!important}}
@media(max-width:640px){.latest-ticker-wrap{margin-top:0}.latest-ticker>b{font-size:12px}.ticker-track a{font-size:12px}.ticker-track span{gap:14px;padding-left:12%;animation-duration:26s}.section-tagline-row{justify-content:flex-start}.section-tagline-row span{width:100%;justify-content:center}.youtube-info-sidebar,.media-video-sidebar{padding:16px!important;border-radius:22px!important}.youtube-info-sidebar:before,.media-video-sidebar:before{margin:-16px -16px 16px}.yt-card b,.sidebar-yt-card b{font-size:14px}.latest-side-block h4{font-size:15px}.side-link-modern{padding:11px 12px!important}.news-media-layout,.pro-media-layout,.final-news-layout{gap:18px!important}}

/* ================================================================
   LEVEL 4 FRONTEND PRECISION + PUBLIC COMMENT MODERATION UI
   Menjaga tampilan halaman depan tetap rapi, presisi, dan responsive.
   ================================================================ */
.public-form-alert{width:100%;box-sizing:border-box;margin:0 0 16px;padding:14px 16px;border-radius:16px;font-weight:800;line-height:1.55;border:1px solid transparent}
.public-form-alert.error{background:#fff1f2;color:#be123c;border-color:#fecdd3}
.public-form-alert.success{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}
.comment-box,.form,.lux-card,.card,.sidebar-card,.news-card,.program-card,.service-card,.info-card,.article,.article-wrap{box-sizing:border-box;max-width:100%}
.comment-form textarea,.form textarea,.form input,.form select{width:100%;max-width:100%;box-sizing:border-box}
.article-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:24px;align-items:start}
.article-wrap .article{min-width:0;overflow-wrap:anywhere}
.front-video-sidebar,.sidebar-video,.sidebar-card{min-width:0;overflow:hidden}
.sidebar-card iframe,.sidebar-card object,.sidebar-card embed,.video-frame iframe{max-width:100%;border:0;border-radius:18px}
img,video,iframe,object,embed{max-width:100%}
.section .container{box-sizing:border-box}
@media(max-width:1024px){
  .article-wrap{grid-template-columns:1fr!important}
  .front-video-sidebar,.sidebar-video{width:100%!important;max-width:100%!important}
}
@media(max-width:768px){
  .section{padding-left:0!important;padding-right:0!important}
  .container{width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box!important}
  .title h2,.section h2{font-size:clamp(24px,7vw,34px)!important;line-height:1.15!important;overflow-wrap:anywhere}
  .title p,.section p,.article p{font-size:15px!important;line-height:1.72!important}
  .grid,.news-grid,.program-grid,.services-grid,.gallery-grid,.stats-grid{grid-template-columns:1fr!important;gap:16px!important}
  .card,.lux-card,.news-card,.program-card,.service-card,.info-card,.article{border-radius:22px!important;padding-left:18px!important;padding-right:18px!important}
  .btn,.form button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;text-align:center;white-space:normal}
  .form .btn,.form button{width:100%}
  .comment-item{overflow-wrap:anywhere}
}

/* === FINAL PATCH LEVEL 6.1: FOOTER ICON PRESISI RESPONSIVE 2026-07-02 === */
.footer{
  overflow:hidden!important;
}
.footer-grid{
  align-items:flex-start!important;
}
.footer-contact-card{
  min-width:0!important;
  padding:0!important;
}
.footer-contact-card h4{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.footer-contact-card h4:before{
  content:"\f2bb";
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  width:34px;
  height:34px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#082a60;
  background:linear-gradient(135deg,#ffd36b,#ffb300);
  box-shadow:0 10px 24px rgba(255,179,0,.22);
}
.footer-contact-lines{
  display:grid!important;
  gap:10px!important;
  margin:10px 0 16px!important;
}
.footer-contact-lines span{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
  color:#dcecff!important;
  line-height:1.5!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
.footer-contact-lines i{
  flex:0 0 34px!important;
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
  background:rgba(255,255,255,.14)!important;
  border:1px solid rgba(255,255,255,.18)!important;
}
.footer-social-links{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin:14px 0 16px!important;
  max-width:320px!important;
}
.footer-social-links a{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:0!important;
  margin:0!important;
  padding:11px 12px!important;
  border-radius:16px!important;
  color:#eaf4ff!important;
  text-decoration:none!important;
  background:rgba(255,255,255,.105)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 10px 26px rgba(0,0,0,.08)!important;
  transition:.22s ease!important;
}
.footer-social-links a:hover{
  transform:translateY(-2px)!important;
  color:#082a60!important;
  background:linear-gradient(135deg,#fff,#dff0ff)!important;
}
.footer-social-links a i{
  flex:0 0 28px!important;
  width:28px!important;
  height:28px!important;
  border-radius:10px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#082a60!important;
  background:linear-gradient(135deg,#ffd36b,#ffb300)!important;
}
.footer-social-links a span{
  display:block!important;
  min-width:0!important;
  font-weight:800!important;
  font-size:13px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.footer-admin-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  width:min(100%,320px)!important;
  min-height:48px!important;
  border-radius:999px!important;
  margin-top:2px!important;
  box-shadow:0 16px 34px rgba(255,179,0,.20)!important;
}
.footer .social-btns{display:none!important;}
@media(max-width:1100px){
  .footer-grid{
    grid-template-columns:1.5fr 1fr 1fr!important;
  }
  .footer-contact-card{
    grid-column:1 / -1!important;
  }
  .footer-social-links{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    max-width:100%!important;
  }
}
@media(max-width:720px){
  .footer-grid{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
  .footer-social-links{
    grid-template-columns:1fr 1fr!important;
  }
  .footer-social-links a{
    border-radius:14px!important;
  }
}
@media(max-width:420px){
  .footer-social-links{
    grid-template-columns:1fr!important;
  }
  .footer-contact-lines span{
    font-size:13px!important;
  }
  .footer-admin-btn{
    width:100%!important;
  }
}


/* =========================================================
   LEVEL 6.2 FINAL - STICKY NAVBAR + BACK TO TOP 2026-07-02
   Tujuan: Navbar tetap terlihat saat scroll dan tombol naik ke atas responsif.
   Aman untuk XAMPP dan Hostinger. Tidak mengubah logika PHP/database.
   ========================================================= */
:root{
  --sticky-nav-height: 82px;
}
html{
  scroll-behavior:smooth!important;
  scroll-padding-top:calc(var(--sticky-nav-height) + 18px)!important;
}
body{
  overflow-x:hidden!important;
}
.navbar{
  position:sticky!important;
  top:0!important;
  z-index:2147482000!important;
  width:100%!important;
  isolation:isolate!important;
  background:rgba(255,255,255,.975)!important;
  border-bottom:1px solid rgba(10,77,157,.10)!important;
  box-shadow:0 12px 30px rgba(7,27,66,.08)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  transition:box-shadow .22s ease, background .22s ease, transform .22s ease!important;
}
body.scrolled .navbar{
  background:rgba(255,255,255,.985)!important;
  box-shadow:0 18px 48px rgba(7,27,66,.16)!important;
}
.navbar .navwrap{
  min-height:78px!important;
}
.navbar .menu a.active,
.navbar .menu a:hover,
.navbar .menu-item>a:hover{
  transform:translateY(-1px)!important;
}
.topbar-premium,
.info-ticker,
.tagline-info-bar{
  position:relative!important;
  z-index:1000!important;
}
.scroll-top-btn{
  position:fixed!important;
  right:22px!important;
  bottom:92px!important;
  width:54px!important;
  height:54px!important;
  border:0!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  color:#fff!important;
  font-size:20px!important;
  line-height:1!important;
  background:linear-gradient(135deg,#0A4D9D,#1E88E5 62%,#20A8F7)!important;
  box-shadow:0 18px 42px rgba(10,77,157,.34)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(14px) scale(.94)!important;
  transition:opacity .22s ease,visibility .22s ease,transform .22s ease,box-shadow .22s ease!important;
  z-index:2147482600!important;
}
.scroll-top-btn.is-visible{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateY(0) scale(1)!important;
}
.scroll-top-btn:hover{
  transform:translateY(-4px) scale(1.03)!important;
  box-shadow:0 24px 54px rgba(10,77,157,.44)!important;
}
.scroll-top-btn:active{
  transform:translateY(-1px) scale(.98)!important;
}
.scroll-top-btn i{
  pointer-events:none!important;
}
.scroll-top-btn .scroll-top-text{
  position:absolute!important;
  right:64px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  background:#071B42!important;
  color:#fff!important;
  border-radius:999px!important;
  padding:8px 12px!important;
  font-size:12px!important;
  font-weight:900!important;
  white-space:nowrap!important;
  box-shadow:0 14px 28px rgba(7,27,66,.18)!important;
  opacity:0!important;
  visibility:hidden!important;
  transition:.18s ease!important;
}
.scroll-top-btn:hover .scroll-top-text{
  opacity:1!important;
  visibility:visible!important;
}
@media(max-width:1080px){
  :root{--sticky-nav-height:74px;}
  .navbar{top:0!important;}
  .navbar .navwrap{min-height:74px!important;}
}
@media(max-width:700px){
  :root{--sticky-nav-height:68px;}
  .navbar .navwrap{min-height:68px!important;}
  .scroll-top-btn{
    right:14px!important;
    bottom:82px!important;
    width:50px!important;
    height:50px!important;
    border-radius:16px!important;
    font-size:18px!important;
  }
  .scroll-top-btn .scroll-top-text{display:none!important;}
}
@media(max-width:420px){
  .scroll-top-btn{right:12px!important;bottom:76px!important;width:48px!important;height:48px!important;}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important;}
  .navbar,.scroll-top-btn{transition:none!important;}
}

/* =========================================================
   LEVEL 6.4 FINAL - STICKY FULL HEADER + SHARE ICON 2026-07-02
   Header atas + navbar + ticker tetap menempel saat scroll.
   Tambahan tombol share Facebook dan WhatsApp global.
   ========================================================= */
.header-sticky-stack{
  position:sticky!important;
  top:0!important;
  z-index:2147482500!important;
  width:100%!important;
  isolation:isolate!important;
  box-shadow:0 12px 30px rgba(7,27,66,.08)!important;
  background:#fff!important;
}
.header-sticky-stack .topbar-premium,
.header-sticky-stack .navbar,
.header-sticky-stack .latest-ticker-wrap{
  position:relative!important;
  top:auto!important;
  z-index:auto!important;
}
.header-sticky-stack .navbar{
  box-shadow:none!important;
  border-bottom:1px solid rgba(10,77,157,.08)!important;
}
body.scrolled .header-sticky-stack{
  box-shadow:0 20px 54px rgba(7,27,66,.18)!important;
}
body.scrolled .header-sticky-stack .navbar{
  background:rgba(255,255,255,.985)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
body.scrolled .header-sticky-stack .topbar-premium{
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.08)!important;
}
.floating-share-panel{
  position:fixed!important;
  right:22px!important;
  bottom:158px!important;
  z-index:2147482550!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:8px!important;
  padding:10px 8px!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(207,232,255,.95)!important;
  box-shadow:0 18px 42px rgba(10,77,157,.18)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
.floating-share-title{
  writing-mode:vertical-rl!important;
  transform:rotate(180deg)!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  color:#64748b!important;
  line-height:1!important;
  margin:2px 0!important;
}
.floating-share-btn{
  width:46px!important;
  height:46px!important;
  border-radius:16px!important;
  display:grid!important;
  place-items:center!important;
  color:#fff!important;
  text-decoration:none!important;
  font-size:20px!important;
  box-shadow:0 14px 30px rgba(7,27,66,.18)!important;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease!important;
}
.floating-share-btn:hover{
  transform:translateY(-3px) scale(1.04)!important;
  box-shadow:0 18px 38px rgba(7,27,66,.24)!important;
  filter:saturate(1.08)!important;
}
.floating-share-btn.share-facebook{background:#1877F2!important;}
.floating-share-btn.share-whatsapp{background:#25D366!important;}
@media(max-width:1080px){
  .header-sticky-stack .topbar-premium{display:none!important;}
  .header-sticky-stack{box-shadow:0 12px 32px rgba(7,27,66,.12)!important;}
}
@media(max-width:760px){
  .header-sticky-stack .latest-ticker-wrap{display:none!important;}
  .floating-share-panel{
    right:14px!important;
    bottom:138px!important;
    padding:8px 7px!important;
    gap:7px!important;
    border-radius:19px!important;
  }
  .floating-share-title{display:none!important;}
  .floating-share-btn{width:44px!important;height:44px!important;border-radius:15px!important;font-size:19px!important;}
  #mainMenu,.navbar .menu{top:calc(var(--sticky-nav-height, 72px) + env(safe-area-inset-top))!important;}
}
@media(max-width:420px){
  .floating-share-panel{right:12px!important;bottom:130px!important;}
  .floating-share-btn{width:42px!important;height:42px!important;font-size:18px!important;}
}

/* FINAL PATCH V27 - Pengumuman Super Responsive, PDF/Excel Attachment Center */
.announcement-detail-article{
  overflow:visible!important;
  border-radius:30px!important;
}
.announcement-detail-image{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  background:linear-gradient(180deg,#f8fbff,#eef6ff)!important;
  border-radius:24px!important;
  border:1px solid #dbeaff!important;
  box-shadow:0 18px 48px rgba(7,42,94,.10)!important;
  margin:22px 0!important;
}
.announcement-attachment-center{
  margin:28px 0!important;
  padding:22px!important;
  border-radius:26px!important;
  background:linear-gradient(135deg,#f8fbff,#eef7ff)!important;
  border:1px solid #cfe3ff!important;
  box-shadow:0 18px 55px rgba(10,77,157,.09)!important;
}
.attachment-center-title{
  display:flex!important;
  align-items:flex-start!important;
  gap:14px!important;
  margin-bottom:18px!important;
}
.attachment-center-title>span{
  width:48px!important;height:48px!important;display:grid!important;place-items:center!important;
  border-radius:18px!important;background:linear-gradient(135deg,#0b63c9,#1e88e5)!important;color:#fff!important;
  box-shadow:0 14px 30px rgba(10,77,157,.20)!important;
}
.attachment-center-title b{display:block!important;color:#071b3a!important;font-size:20px!important;font-weight:950!important;letter-spacing:-.02em!important;}
.attachment-center-title small{display:block!important;color:#557097!important;line-height:1.55!important;font-weight:700!important;margin-top:3px!important;}
.attachment-stat-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin-bottom:16px!important;}
.attachment-stat-grid>div{padding:15px!important;border-radius:20px!important;background:#fff!important;border:1px solid #dcecff!important;text-align:center!important;}
.attachment-stat-grid strong{display:block!important;color:#0a4d9d!important;font-size:24px!important;font-weight:950!important;}
.attachment-stat-grid small{display:block!important;color:#667d9d!important;font-weight:800!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.04em!important;}
.attachment-quick-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important;}
.attachment-quick-actions .btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;}
.pdf-list-preview-box,.excel-preview-box{scroll-margin-top:100px!important;}
.pdf-file-preview-card,.excel-file-card{
  border-radius:24px!important;
  border:1px solid #d8e9ff!important;
  background:#fff!important;
  box-shadow:0 16px 45px rgba(7,42,94,.07)!important;
  overflow:hidden!important;
}
.pdf-file-preview-card{padding:18px!important;margin:18px 0!important;}
.excel-file-card{padding:18px!important;}
.excel-table-wrap{max-width:100%!important;overflow:auto!important;border-radius:16px!important;-webkit-overflow-scrolling:touch!important;}
.excel-preview-table{min-width:720px!important;}
.btn-print{background:linear-gradient(135deg,#13294b,#071b3a)!important;color:#fff!important;}
@media(max-width:900px){
  .article-wrap{grid-template-columns:1fr!important;gap:22px!important;}
  .sidebar{position:static!important;width:100%!important;}
  .announcement-detail-article{padding:18px!important;border-radius:24px!important;}
  .announcement-detail-article h1{font-size:clamp(30px,8vw,44px)!important;line-height:1.08!important;}
  .attachment-stat-grid{grid-template-columns:1fr!important;}
  .attachment-quick-actions .btn{width:100%!important;}
  .announcement-detail-image{border-radius:18px!important;margin:18px 0!important;}
  .pdf-list-head,.excel-preview-head{display:block!important;}
}
@media(max-width:520px){
  .announcement-detail-article{padding:14px!important;margin-left:-6px!important;margin-right:-6px!important;}
  .announcement-attachment-center{padding:16px!important;border-radius:20px!important;}
  .attachment-center-title{gap:10px!important;}
  .attachment-center-title>span{width:42px!important;height:42px!important;border-radius:15px!important;}
  .attachment-center-title b{font-size:18px!important;}
  .pdf-title-row h3,.pdf-title-row h4{font-size:18px!important;line-height:1.25!important;}
  .news-action-bar .btn,.news-action-bar button{width:100%!important;}
}
@media print{
  header,.navbar,.sidebar,.footer,.mobile-bottom-nav,.news-action-bar,.announcement-strip,.latest-ticker-wrap{display:none!important;}
  body{background:#fff!important;color:#000!important;}
  .section,.container,.article-wrap,.article{display:block!important;width:100%!important;max-width:100%!important;padding:0!important;margin:0!important;box-shadow:none!important;border:0!important;}
  .announcement-detail-image{max-height:none!important;box-shadow:none!important;border:1px solid #ddd!important;}
  .pdf-responsive-viewer,.excel-preview-box,.announcement-attachment-center{break-inside:avoid!important;box-shadow:none!important;}
}

/* ================================================================
   V28 PENGUMUMAN PRO CENTER - SEARCH, FILTER, FILE MANIFEST, MOBILE FIX
   ================================================================ */
.pengumuman-portal-page{background:linear-gradient(180deg,#f8fbff 0%,#ffffff 55%,#f8fbff 100%)!important;}
.pengumuman-portal-hero{padding:28px!important;margin-bottom:18px!important;display:grid;grid-template-columns:1.6fr .9fr;gap:22px;align-items:center;overflow:hidden;position:relative;}
.pengumuman-portal-hero:before{content:"";position:absolute;right:-80px;top:-80px;width:220px;height:220px;background:radial-gradient(circle,rgba(37,99,235,.18),transparent 65%);pointer-events:none;}
.pengumuman-portal-hero h2{margin:12px 0 8px!important;font-size:clamp(30px,4vw,52px)!important;line-height:1.05!important;color:#062553!important;letter-spacing:-.04em;}
.pengumuman-portal-hero p{max-width:760px!important;color:#526781!important;font-size:clamp(15px,1.6vw,18px)!important;line-height:1.7!important;}
.pengumuman-counter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.pengumuman-counter-grid span{background:linear-gradient(180deg,#ffffff,#eef6ff);border:1px solid #dbeafe;border-radius:22px;padding:18px 10px;text-align:center;box-shadow:0 14px 34px rgba(7,86,182,.10);}
.pengumuman-counter-grid b{display:block;color:#0756b6;font-size:clamp(24px,3vw,38px);line-height:1;font-weight:950;}
.pengumuman-counter-grid small{display:block;margin-top:7px;color:#526781;font-weight:850;font-size:12px;}
.pengumuman-toolbar{padding:14px!important;margin-bottom:24px!important;display:flex;align-items:center;justify-content:space-between;gap:14px;position:sticky;top:82px;z-index:10;background:rgba(255,255,255,.88)!important;backdrop-filter:blur(16px);}
.pengumuman-search{flex:1;display:flex;align-items:center;gap:10px;background:#f7fbff;border:1px solid #dbeafe;border-radius:999px;padding:0 16px;min-height:50px;}
.pengumuman-search i{color:#0756b6;}
.pengumuman-search input{width:100%;border:0!important;outline:0!important;background:transparent!important;color:#0b2243!important;font-weight:750;min-height:48px;}
.pengumuman-filter-pills{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.pengumuman-filter-pills button{border:1px solid #dbeafe;background:#fff;color:#0756b6;border-radius:999px;padding:12px 14px;font-weight:900;cursor:pointer;box-shadow:0 8px 18px rgba(7,86,182,.08);}
.pengumuman-filter-pills button.active,.pengumuman-filter-pills button:hover{background:linear-gradient(135deg,#0756b6,#1d75e8);color:#fff;border-color:transparent;}
.pengumuman-smart-grid{align-items:stretch;}
.pengumuman-smart-card{display:flex;flex-direction:column;overflow:hidden;}
.pengumuman-smart-card .announcement-card-media{height:245px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f7fbff,#eef6ff);border-bottom:1px solid #dbeafe;overflow:hidden;}
.pengumuman-smart-card .announcement-card-media img{width:100%!important;height:100%!important;object-fit:contain!important;padding:10px!important;background:#fff!important;border-radius:0!important;}
.pengumuman-card-badges{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px;}
.pengumuman-smart-card h3{min-height:3.1em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.pengumuman-smart-card p{min-height:4.8em;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.pengumuman-card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto;}
.pengumuman-card-actions .btn{min-height:40px!important;padding:10px 14px!important;font-size:13px!important;}
.pengumuman-empty{margin-top:18px!important;}
.announcement-file-manifest{margin-top:18px;border:1px solid #dbeafe;background:linear-gradient(180deg,#fff,#f8fbff);border-radius:22px;padding:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.9);}
.manifest-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px;color:#0b2243;}
.manifest-head b{font-size:16px;}
.manifest-head small{color:#64748b;font-weight:850;}
.manifest-file-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;text-decoration:none!important;color:#0b2243!important;background:#fff;border:1px solid #e5eefb;border-radius:18px;padding:12px;margin-top:8px;transition:.18s ease;}
.manifest-file-row:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(7,86,182,.12);border-color:#bfdbfe;}
.manifest-file-row b{display:block;color:#0b2243!important;font-size:14px;word-break:break-word;}
.manifest-file-row small{display:block;color:#64748b;margin-top:3px;font-weight:750;}
.manifest-ext{min-width:58px;text-align:center;border-radius:14px;padding:9px 8px;background:#eef6ff;color:#0756b6;font-weight:950;font-size:11px;border:1px solid #dbeafe;}
.manifest-ext.pdf{background:#fff1f2;color:#be123c;border-color:#fecdd3;}
.manifest-ext.xls,.manifest-ext.xlsx,.manifest-ext.csv{background:#ecfdf5;color:#047857;border-color:#bbf7d0;}
.announcement-detail-article > p{font-size:17px!important;line-height:1.85!important;color:#526781!important;}
@media(max-width:900px){
  .pengumuman-portal-hero{grid-template-columns:1fr;padding:20px!important;}
  .pengumuman-counter-grid{grid-template-columns:repeat(3,1fr);}
  .pengumuman-toolbar{position:relative;top:auto;flex-direction:column;align-items:stretch;border-radius:22px!important;}
  .pengumuman-filter-pills{justify-content:flex-start;}
  .pengumuman-filter-pills button{flex:1;min-width:105px;}
  .pengumuman-smart-card .announcement-card-media{height:220px;}
}
@media(max-width:560px){
  .pengumuman-portal-page .container{padding-left:14px!important;padding-right:14px!important;}
  .pengumuman-portal-hero{border-radius:22px!important;padding:16px!important;}
  .pengumuman-counter-grid{gap:7px;}
  .pengumuman-counter-grid span{padding:13px 6px;border-radius:16px;}
  .pengumuman-counter-grid small{font-size:10px;}
  .pengumuman-filter-pills{display:grid;grid-template-columns:1fr;}
  .pengumuman-filter-pills button{width:100%;}
  .pengumuman-smart-card .announcement-card-media{height:190px;}
  .pengumuman-card-actions .btn{width:100%;}
  .manifest-file-row{grid-template-columns:1fr;align-items:flex-start;}
  .manifest-ext{min-width:0;width:max-content;}
}
@media print{
  .pengumuman-toolbar,.pengumuman-card-actions,.attachment-quick-actions,.news-action-bar{display:none!important;}
  .announcement-file-manifest{border-color:#ccc!important;background:#fff!important;}
  .manifest-file-row{break-inside:avoid!important;box-shadow:none!important;}
}
