:root {
    --hijau-tua: #1e3a8a;
    --hijau: #166534;
    --abu: #f8fafc;
    --coklat: #7a4a1d;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    height: 100%;
    font-family: 'Poppins', sans-serif;
}

body {
    display: flex;
    flex-direction: column;
}

/* =====================
   CONTAINER
===================== */
.container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

/* =====================
   NAVBAR
===================== */
.navbar {
    background: linear-gradient(90deg, #1e3a8a, #1e40af);
    padding: 18px 0;
}

.nav-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.logo {
    display: flex;
    align-items: center;
    gap: 12px;
}

.logo strong { 
    font-size: 18px; 
    font-weight: 700; 
    color: #ffffff; 
}

.logo img {
    height: 45px;
}

.logo span {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
}

.navbar a {
    color: white;
    text-decoration: none;
    margin-left: 22px;
    font-weight: 500;
}

.navbar a:hover {
    opacity: 0.85;
}

/* =====================
   CONTENT
===================== */
.content {
    flex: 1;
}

/* ===================== 
   HERO / HOME 
===================== */ 
.hero { 
    height: 70vh; 
    display: flex; 
    align-items: center; 
    background-image: 
        linear-gradient( 
            rgba(255,255,255,0.9), 
            rgba(255,255,255,0.75) 
            ), 
            url('../images/gedung.png'); 
    background-size: cover; 
    background-position: center; 
} 

.hero-text { 
    margin-left: 8%; 
    color: var(--hijau-tua); 
    max-width: 520px; 
} 

.hero h1 { 
    font-size: 44px; 
    font-weight: 700; 
} 

.hero p { 
    margin: 15px 0 25px; 
    font-size: 16px; 
    line-height: 1.7; 
} 


/* ===================== 
PROGRAM & EKSTRAKURIKULER 
===================== */ 
.program-section { 
    padding: 80px 0; 
    background-image: url('../images/gedung.png'); 
    background-size: cover; 
    background-position: center; 
    position: relative; 
} 

.program-section::before { 
    content: ""; 
    position: absolute; 
    inset: 0; 
    background:linear-gradient(rgba(255,255,255,0.9), 
            rgba(255,255,255,0.75)); 
} 

.program-section .container { 
    position: relative; 
    z-index: 1; 
} 

.jurusan-header { 
    text-align: center; 
    margin-bottom: 45px; 
} 

.jurusan-header h1 { 
    font-size: 32px; 
    color: var(--hijau-tua); 
    margin-bottom: 12px; 
} 

.jurusan-header p { 
    max-width: 620px; 
    margin: auto; 
    line-height: 1.7; 
    color: #555; 
} 

.program-grid { 
    display: grid; 
    grid-template-columns: repeat(2, 280px); 
    gap: 45px;              /* dari 30px → 45px */
    justify-content: center; 
}

.program-card { 
    width: 280px; 
    min-height: 275px; 
    background: #fff; 
    border-radius: 12px; 
    overflow: hidden; 
    box-shadow: 0 6px 15px rgba(0,0,0,0.12); 
    display: flex; 
    flex-direction: column; 
    transition: 
        transform 0.35s ease,
        box-shadow 0.35s ease;
} 

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

.program-card img { 
    width: 100%; 
    height: 170px; 
    object-fit: cover; 
    transition: transform 0.35s ease;
} 

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

.program-body { 
    padding: 16px 18px; 
    text-align: center; 
} 

.program-body h4 { 
    font-size: 16px; 
    font-weight: 600; 
    color: var(--hijau-tua); 
} 

.program-body span { 
    display: block; 
    margin-top: 6px; 
    font-size: 13px; 
    color: #666; 
}

/* =====================
    TENTANG KAMI 
===================== */ 
/* =====================
   PAGE HEADER
===================== */
.page-header {
    background: linear-gradient(
        90deg,
        #1e3a8a,
        #2563eb
    );
    padding: 90px 0;
    color: #ffffff;
}




.page-header h2 {
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 8px;
}

.page-header p {
    font-size: 15px;
    opacity: 0.95;
}

/* =====================
   SECTION GLOBAL
===================== */
.tentang-section {
    padding: 80px 0;
    background: #ffffff;
}

.tentang-section.bg-light {
    background: #f8fafc;
}

.section-title {
    font-size: 28px;
    color: var(--hijau-tua);
    margin-bottom: 22px;
    text-align: center;
}

/* =====================
   GRID AKREDITASI
===================== */
.tentang-grid {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 45px;
    align-items: center;
}

/* TEXT */
.tentang-section h3 {
    font-size: 26px;
    color: var(--hijau-tua);
    margin-bottom: 14px;
    margin-left: 60px;
}

.tentang-section p {
    font-size: 15px;
    line-height: 1.9;
    color: #555;
    margin-left: 60px;
}

/* LIST */
.tentang-list {
    margin-top: 15px;
    margin-left: 100px;
    margin-bottom: 50px;
}

.tentang-list li {
    font-size: 14px;
    color: #555;
    margin-bottom: 8px;
    line-height: 1.7;
}

/* IMAGE BOX */
.img-box {
    width: 480px;
    border-radius: 16px;
    box-shadow: 0 12px 28px rgba(0,0,0,0.1);
}

/* =====================
   TABEL PROFIL
===================== */
.profil-table {
    width: 100%;
    max-width: 850px;
    margin: auto;
    border-collapse: collapse;
    background: #fff7eb;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 12px 28px rgba(0,0,0,0.08);
}

.profil-table td {
    padding: 14px 18px;
    font-size: 14px;
    color: #555;
    border-bottom: 1px solid #e5e5e5;
}

.profil-table tr:last-child td {
    border-bottom: none;
}

.profil-table td:first-child {
    width: 35%;
    font-weight: 600;
    color: var(--coklat);
    background: rgba(122, 74, 29, 0.06);
}

/* =====================
   VISI MISI
===================== */
.visi {
    text-align: center;
    font-size: 18px;
    color: var(--coklat);
    margin-bottom: 30px;
}

/* =====================
   TUJUAN
===================== */
.tujuan {
    text-align: center;
    font-size: 18px;
    color: var(--coklat);
    margin-bottom: 30px;
}

/* =====================
   RESPONSIVE
===================== */
@media (max-width: 768px) {
    .page-header {
        padding: 70px 0;
    }

    .page-header h2 {
        font-size: 28px;
    }

    .tentang-grid {
        grid-template-columns: 1fr;
    }

    .profil-table td {
        font-size: 13px;
        padding: 12px;
    }

    .section-title {
        font-size: 24px;
    }
}

/* =====================
   BERITA
===================== */
.berita-page {
    padding: 60px 0;
    background-image: url('../images/gedung.png'); 
    background-size: cover; 
    background-position: center;
    position: relative;
}

.berita-page::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(rgba(255,255,255,0.9), 
            rgba(255,255,255,0.75));;
    z-index: 1;
}

.berita-page .container {
    position: relative;
    z-index: 2;
}

.berita-header {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 50px;
}

.berita-header h2 {
    font-size: 34px;
    color: var(--hijau-tua);
    margin-bottom: 10px;
}

.berita-header p {
    color: #555;
    font-size: 15px;
}

/* =====================
   LAYOUT
===================== */
.berita-layout {
    display: grid;
    grid-template-columns: 1.3fr 1fr;
    gap: 30px;
}

/* =====================
   BERITA UTAMA
===================== */
.berita-utama {
    background: #fff7eb;
    border-radius: 8px;
    overflow: hidden;
}

.berita-utama img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    border-radius: 4px;
    padding: 22px 22px 12px 22px;
}

.berita-utama-body {
    padding: 0px 22px 22px 22px;;
}

.berita-utama-body .tanggal {
    font-size: 12px;
    color: #999;
}

.berita-utama-body h3 {
    font-size: 22px;
    color: var(--coklat);
    margin: 10px 0;
}

.berita-utama-body p {
    font-size: 14px;
    color: #555;
    margin-bottom: 16px;
    line-height: 1.6;
}

.btn-berita {
    display: inline-block;
    background: var(--coklat);
    color: #fff;
    padding: 9px 16px;
    font-size: 13px;
    border-radius: 4px;
    text-decoration: none;
}

.btn-berita:hover {
    opacity: 0.9;
}

/* =====================
   LIST BERITA SAMPING
===================== */
.berita-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.berita-item {
    display: flex;
    gap: 15px;
    background: #fff7eb;
    padding: 12px;
    border-radius: 6px;
}

.berita-item img {
    width: 90px;
    height: 70px;
    object-fit: cover;
    border-radius: 4px;
}

.berita-item-body {
    flex: 1;
}

.berita-item-body .tanggal {
    font-size: 11px;
    color: #999;
}

.berita-item-body h4 {
    font-size: 14px;
    color: var(--coklat);
    margin: 4px 0;
}

.berita-item-body a {
    font-size: 12px;
    color: var(--coklat);
    text-decoration: none;
}

/* =====================
   TOMBOL BERITA SELENGKAPNYA
===================== */
.berita-more {
    font-size: 12px;
    color: var(--coklat);
    text-decoration: none;
}

.btn-more {
    display: inline-block;
    background: var(--coklat);
    color: #fff;
    padding: 9px 16px;
    font-size: 13px;
    border-radius: 4px;
    text-decoration: none;
}

.btn-more:hover {
    opacity: 0.9;
}

/* ===========================
   BERITA DETAIL CARD
=========================== */
.berita-detail {
    padding: 70px 0;
    background-image: url('../images/gedung-smk.png'); 
    background-size: cover; 
    background-position: center;
    position: relative;
}


.berita-detail::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255,255,255,0.9);
    z-index: 1;
}

.berita-detail .container {
    max-width: 900px;
    position: relative;
    z-index: 2;
}

/* CARD */
.berita-card {
    background: #fff7eb;
    border-radius: 16px;
    padding: 35px 38px;
    box-shadow: 0 12px 30px rgba(0,0,0,0.08);
}

/* HEADER */
.berita-detail-header h1 {
    font-size: 30px;
    font-weight: 700;
    color: var(--coklat);
    line-height: 1.35;
    margin-bottom: 8px;
}

.berita-meta {
    font-size: 13px;
    color: #999;
    margin-bottom: 28px;
}

/* GAMBAR UTAMA */
.berita-detail-image {
    margin-bottom: 28px;
}

.berita-detail-image img {
    width: 100%;
    max-height: 420px;
    object-fit: cover;
    border-radius: 14px;
}

/* ISI BERITA */
.berita-detail-content {
    font-size: 15px;
    line-height: 1.9;
    color: #555;
}

.berita-detail-content p {
    margin-bottom: 18px;
}

.berita-detail-content h1,
.berita-detail-content h2,
.berita-detail-content h3,
.berita-detail-content h4 {
    margin: 30px 0 14px;
    color: var(--coklat);
    font-weight: 600;
}

.berita-detail-content img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 26px auto;
    border-radius: 12px;
}

.berita-detail-content ul,
.berita-detail-content ol {
    margin-left: 22px;
    margin-bottom: 18px;
}

.berita-detail-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 22px 0;
}

.berita-detail-content table th,
.berita-detail-content table td {
    border: 1px solid #ddd;
    padding: 10px;
}

/* ======================
   GALERI GRID 4 KOLOM
====================== */
.galeri-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

/* RESPONSIVE */
@media (max-width: 1024px) {
    .galeri-grid-4 {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .galeri-grid-4 {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .galeri-grid-4 {
        grid-template-columns: 1fr;
    }
}

/* ======================
   CARD GALERI
====================== */
.galeri-card-small {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 6px 16px rgba(0,0,0,0.08);
    transition: 0.25s ease;
}

.galeri-card-small:hover {
    transform: translateY(-4px);
}

/* MEDIA (FOTO & VIDEO DISAMAIN) */
.galeri-card-small img,
.galeri-card-small iframe,
.galeri-card-small video {
    width: 100%;
    height: 160px;
    object-fit: cover;
    border: none;
    display: block;
}

/* BODY */
.galeri-body-small {
    padding: 10px 12px;
}

.galeri-body-small h4 {
    font-size: 14px;
    font-weight: 600;
    color: #333;
    margin-bottom: 4px;
}

.galeri-body-small p {
    font-size: 12px;
    color: #666;
    line-height: 1.4;
}


/* SUBTITLE */
.section-subtitle {
    font-size: 20px;
    font-weight: 700;
    color: #256675;
    margin: 40px 0 20px;
}

.mt-60 {
    margin-top: 60px;
}


/* TOMBOL KEMBALI (ELEGAN) */
.berita-back {
    margin-top: 40px;
}

.berita-back a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 22px;
    border-radius: 999px;

    background: #fff7eb;
    color: var(--coklat);

    border: 1.5px solid var(--coklat); /* ✅ BORDER COKLAT TUA */

    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.25s ease;
}

.berita-back a:hover {
    background: var(--coklat);
    color: #ffffff;
    border-color: var(--coklat); /* biar konsisten */
    transform: translateX(-3px);
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .berita-card {
        padding: 24px 20px;
    }

    .berita-detail-header h1 {
        font-size: 24px;
    }
}

/* =====================
   FOOTER
===================== */
.footer {
    background: linear-gradient(90deg, #1e3a8a, #1e40af);
    color: white;
    padding-top: 55px;
}

.footer-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    padding-bottom: 40px;
}

.footer h4 {
    margin-bottom: 15px;
}

.footer-bottom {
    text-align: center;
    padding: 15px 0;
    background: rgba(0,0,0,0.2);
}

.footer-link {
    color: #ffffff; /* kuning lembut */
    text-decoration: none;
    font-weight: 600;
}

.footer-link:hover {
    text-decoration: underline;
    color: #ffffff;
}
.social-icons {
    display: flex;
    gap: 12px;
    margin-top: 8px;
}

.social-icons a {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 18px;
    transition: 0.3s ease;
    text-decoration: none;
}

/* Warna khas tiap medsos */
.social-icons .tiktok { background: #000000; }
.social-icons .instagram { background: #e1306c; }
.social-icons .youtube { background: #ff0000; }
.social-icons .whatsapp { background: #25d366; }

.social-icons a:hover {
    transform: translateY(-4px);
    opacity: 0.85;
}

.footer a {
    color: #ffffff;
}

.footer a:hover {
    color: #00bfff;
}
