/* ================================================================
   ROYAL THEME v2 — Ganti SELURUH isi royal-theme.css
================================================================ */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Sora:wght@400;600;700;800&display=swap');

*, *::before, *::after { box-sizing: border-box !important; }

html {
    overflow-x: hidden !important;
}
html, body {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    color: #1e293b !important;
}
/* KUNCI: body tidak boleh overflow:hidden agar fixed bisa jalan */
body, body.mean-container {
    overflow-x: visible !important;
    background-color: #f5f7fa !important;
    padding-top: 132px !important;
}

/* ════════════════════════════
   1. NAVBAR — fixed top:0
════════════════════════════ */
.menu-area,
#strickymenu,
#strickymenu.sticky {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 64px !important;
    z-index: 9999 !important;
    background-color: #1e3a8a !important;
    box-shadow: 0 2px 12px rgba(30,58,138,.40) !important;
    padding: 0 !important;
    margin: 0 !important;
}
.menu-area .container,
#strickymenu .container {
    height: 64px !important;
    max-width: 1200px !important;
}
.menu-area .container > .row,
#strickymenu .container > .row {
    display: flex !important;
    align-items: center !important;
    height: 64px !important;
    margin: 0 !important;
    flex-wrap: nowrap !important;
}

/* Logo */
.menu-area .logo,
.menu-area .logo.flex,
#strickymenu .logo,
#strickymenu.sticky .logo {
    display: flex !important;
    align-items: center !important;
    height: 64px !important;
    min-height: unset !important;
    padding: 0 !important;
    flex-direction: row !important;
}
.menu-area .logo img,
#strickymenu .logo img,
#strickymenu.sticky .logo img {
    height: 44px !important;
    width: auto !important;
    max-height: 44px !important;
    filter: brightness(0) invert(1) !important;
    display: block !important;
}

/* Menu wrapper */
.menu-area .main-menu,
#strickymenu .main-menu {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    height: 64px !important;
    width: 100% !important;
    float: none !important;
    margin-right: 0 !important;
}
.menu-area .main-menu-item,
#strickymenu .main-menu-item {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    height: 64px !important;
    float: none !important;
    margin-right: 0 !important;
    flex: 1 !important;
}

/* Nav list */
.menu-area ul.nav-menu,
#strickymenu ul.nav-menu {
    display: flex !important;
    align-items: center !important;
    height: 64px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

/* Nav item */
.menu-area ul.nav-menu > li,
#strickymenu ul.nav-menu > li {
    position: relative !important;
    float: none !important;
    display: flex !important;
    align-items: center !important;
    height: 64px !important;
}

/* Nav link — CENTER SEMPURNA */
.menu-area ul.nav-menu > li > a,
#strickymenu ul.nav-menu > li > a,
#strickymenu.sticky ul.nav-menu > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 38px !important;
    min-height: unset !important;
    padding: 0 10px !important;
    margin: 0 !important;
    color: rgba(255,255,255,.92) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .3px !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    border-radius: 6px !important;
    background: transparent !important;
    border: none !important;
    line-height: 1 !important;
    transition: background .2s !important;
}
.menu-area ul.nav-menu > li > a:hover,
.menu-area ul.nav-menu > li:hover > a,
#strickymenu ul.nav-menu > li > a:hover,
#strickymenu ul.nav-menu > li:hover > a {
    background: rgba(255,255,255,.15) !important;
    color: #fff !important;
}

/* Dropdown */
.menu-area ul.nav-menu li ul,
#strickymenu ul.nav-menu li ul {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    width: 230px !important;
    background: #fff !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 36px rgba(30,58,138,.20) !important;
    border: 1px solid #dde8f8 !important;
    padding: 6px 0 !important;
    z-index: 999999 !important;
    display: none !important;
    list-style: none !important;
    margin: 0 !important;
}
.menu-area ul.nav-menu li:hover > ul,
#strickymenu ul.nav-menu li:hover > ul { display: block !important; }
.menu-area ul.nav-menu li ul li,
#strickymenu ul.nav-menu li ul li {
    height: auto !important;
    display: block !important;
    float: none !important;
}
.menu-area ul.nav-menu li ul li a,
#strickymenu ul.nav-menu li ul li a {
    display: flex !important;
    align-items: center !important;
    height: auto !important;
    min-height: unset !important;
    padding: 10px 16px !important;
    color: #1e293b !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    background: transparent !important;
    border: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.2) !important;
    transition: background .15s, padding-left .15s !important;
}
.menu-area ul.nav-menu li ul li a:hover,
#strickymenu ul.nav-menu li ul li a:hover {
    background: #eff6ff !important;
    color: #1e3a8a !important;
    padding-left: 22px !important;
}
.menu-area ul.nav-menu li ul li ul,
#strickymenu ul.nav-menu li ul li ul {
    top: 0 !important; left: 100% !important;
}

/* Search */
.menu-area .searchbar,
#strickymenu .searchbar {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    height: 64px !important;
    margin-left: 6px !important;
    flex-shrink: 0 !important;
}
.menu-area .searchbar .search-button,
#strickymenu .searchbar .search-button {
    position: static !important;
    top: auto !important; right: auto !important; margin-top: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important; height: 34px !important;
    color: rgba(255,255,255,.85) !important;
    font-size: 14px !important;
    cursor: pointer !important;
    border-radius: 6px !important;
    transition: background .2s !important;
}
.menu-area .searchbar .search-button:hover,
#strickymenu .searchbar .search-button:hover {
    background: rgba(255,255,255,.15) !important; color: #fff !important;
}
.menu-area .searchbar .input-search,
#strickymenu .searchbar .input-search {
    position: absolute !important;
    top: 64px !important; right: 0 !important;
    width: 280px !important;
    background: #1e3a8a !important;
    border: 1px solid rgba(255,255,255,.25) !important;
    border-radius: 0 0 8px 8px !important;
    padding: 10px !important;
    z-index: 9999 !important;
}

/* ════════════════════════════
   2. TOPBAR — fixed top:64px
════════════════════════════ */
.header-area {
    position: fixed !important;
    top: 64px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 36px !important;
    z-index: 9998 !important;
    background-color: #152d72 !important;
    border-bottom: 1px solid rgba(255,255,255,.10) !important;
    padding: 0 !important;
    margin: 0 !important;
}
.header-area .container { height: 36px !important; }
.header-area .row {
    display: flex !important;
    align-items: center !important;
    height: 36px !important;
    margin: 0 !important;
    flex-wrap: nowrap !important;
}
/* Sosmed kiri */
.header-area .header-social,
.header-area .social-bar {
    display: flex !important; align-items: center !important; height: 36px !important;
}
.header-area .social-bar ul,
.header-area .header-social ul {
    display: flex !important; align-items: center !important;
    gap: 4px !important; list-style: none !important;
    margin: 0 !important; padding: 0 !important;
}
.header-area .social-bar ul li,
.header-area .header-social ul li {
    display: flex !important; align-items: center !important;
    margin: 0 !important; padding: 0 !important;
}
.header-area .social-bar ul li::before,
.header-area .header-social ul li::before { display: none !important; }
.header-area .social-bar ul li a,
.header-area .header-social ul li a {
    width: 22px !important; height: 22px !important;
    border-radius: 4px !important;
    background: rgba(255,255,255,.12) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    color: rgba(255,255,255,.80) !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    font-size: 10px !important;
    transition: all .2s !important; text-decoration: none !important;
}
.header-area .social-bar ul li a:hover,
.header-area .header-social ul li a:hover {
    background: #f5c518 !important; color: #0a1f5c !important; border-color: #f5c518 !important;
}
/* Kontak kanan */
.header-area .header-info {
    display: flex !important; align-items: center !important;
    justify-content: flex-end !important; height: 36px !important; width: 100% !important;
}
.header-area .header-info ul {
    display: flex !important; align-items: center !important;
    gap: 20px !important; list-style: none !important;
    margin: 0 !important; padding: 0 !important;
}
.header-area .header-info ul li {
    display: flex !important; align-items: center !important;
    gap: 5px !important;
    color: rgba(255,255,255,.85) !important;
    font-size: 11.5px !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    margin: 0 !important; padding: 0 !important;
    background: none !important; white-space: nowrap !important;
}
.header-area .header-info ul li::before { display: none !important; }
.header-area .header-info ul li i { color: #f5c518 !important; font-size: 11px !important; }
.header-area .header-info ul li span { color: rgba(255,255,255,.85) !important; }

/* ════════════════════════════
   3. PENGUMUMAN — fixed top:100px
════════════════════════════ */
div.sitewidth,
.sitewidth {
    position: fixed !important;
    top: 100px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 32px !important;
    min-height: 32px !important;
    max-height: 32px !important;
    z-index: 9997 !important;
    display: flex !important;
    align-items: center !important;
    background-color: #fff !important;
    border-bottom: 2px solid #e8edf8 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    flex-wrap: nowrap !important;
}
.br-title {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    height: 32px !important;
    min-width: 130px !important;
    padding: 0 14px !important;
    background-color: #e11d48 !important;
    color: #fff !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .3px !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    position: static !important;
    float: none !important;
    text-transform: uppercase !important;
}
.sitewidth marquee {
    display: block !important;
    flex: 1 !important;
    height: 32px !important;
    line-height: 32px !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #475569 !important;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 8px !important;
    position: static !important;
    float: none !important;
    min-width: 0 !important;
}

/* ════════════════════════════
   SLIDER
════════════════════════════ */
.slider {
    position: relative !important;
    z-index: 3 !important;
    background: radial-gradient(ellipse 90% 70% at 50% 45%, #1a3f9c 0%, #071332 100%) !important;
    padding: 50px 0 60px !important;
    margin-top: 0 !important;
    min-height: 300px !important;
    overflow: visible !important;
    clear: both !important;
}
.slider::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background-image: radial-gradient(circle, rgba(255,255,255,.09) 1.5px, transparent 1.5px) !important;
    background-size: 28px 28px !important;
    pointer-events: none !important;
    z-index: 0 !important;
}
.slider-item {
    min-height: 380px !important;
    max-height: 430px !important;
    height: 410px !important;
    background-size: cover !important;
    background-position: center !important;
    display: flex !important;
    align-items: center !important;
    position: relative !important;
    overflow: hidden !important;
}
.bg-slider {
    position: absolute !important; inset: 0 !important;
    background: linear-gradient(110deg, rgba(5,20,80,.86) 0%, rgba(20,50,150,.62) 55%, rgba(5,20,80,.25) 100%) !important;
    z-index: 1 !important;
}
.slider-text { position: relative !important; z-index: 3 !important; padding: 10px 0 !important; }
.slider-text h1 {
    font-family: 'Sora', sans-serif !important;
    font-size: 30px !important; font-weight: 800 !important; color: #fff !important; margin-bottom: 12px !important;
}
.slider-text p { font-size: 14px !important; color: rgba(255,255,255,.85) !important; margin-bottom: 20px !important; }
.text-animated ul { list-style: none !important; padding: 0 !important; margin: 0 !important; display: flex !important; gap: 10px !important; flex-wrap: wrap !important; }
.text-animated ul li a {
    display: inline-flex !important; align-items: center !important;
    padding: 9px 22px !important; border-radius: 8px !important;
    font-weight: 700 !important; font-size: 13px !important;
    border: 2px solid rgba(255,255,255,.40) !important;
    color: #fff !important; background-color: rgba(255,255,255,.12) !important;
    transition: all .25s !important;
}
.text-animated ul li:first-child a { background-color: #f5c518 !important; border-color: #f5c518 !important; color: #0a1f5c !important; }

/* Carousel */
.slider .slide-carousel.owl-carousel,
.slider .slider-one.owl-carousel {
    position: relative !important; z-index: 10 !important;
    max-width: 1080px !important;
    margin-left: auto !important; margin-right: auto !important;
    margin-bottom: -180px !important;
    border-radius: 18px !important; overflow: visible !important;
}
.slider .slider-one.owl-carousel .owl-stage-outer {
    border-radius: 18px !important; overflow: hidden !important;
    box-shadow: 0 24px 70px rgba(0,0,0,.65) !important;
}
.slider-one .owl-nav .owl-prev,
.slider-one .owl-nav .owl-next {
    position: absolute !important; top: 45% !important;
    transform: translateY(-50%) !important;
    width: 46px !important; height: 46px !important;
    border-radius: 50% !important;
    background-color: rgba(255,255,255,.18) !important;
    border: 2px solid rgba(255,255,255,.45) !important;
    color: #fff !important; font-size: 18px !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    z-index: 20 !important; bottom: auto !important; line-height: 1 !important;
}
.slider-one .owl-nav .owl-prev { left: -60px !important; }
.slider-one .owl-nav .owl-next { right: -60px !important; }
.slider-one .owl-nav .owl-prev:hover,
.slider-one .owl-nav .owl-next:hover { background-color: #f5c518 !important; border-color: #f5c518 !important; color: #0a1f5c !important; }

/* ════════════════════════════
   ABOUT
════════════════════════════ */
.about-area {
    background-color: #fff !important;
    padding-top: 240px !important;
    padding-bottom: 80px !important;
    position: relative !important; z-index: 2 !important;
}

/* ════════════════════════════
   HEADLINES
════════════════════════════ */
.headline { text-align: center !important; margin-bottom: 44px !important; padding-bottom: 0 !important; }
.headline h2 {
    font-family: 'Sora', sans-serif !important;
    font-size: 28px !important; font-weight: 800 !important; color: #0f172a !important;
    display: inline-block !important; position: relative !important;
    padding-bottom: 14px !important; margin-bottom: 6px !important; text-transform: none !important;
}
.headline h2::after {
    content: '' !important; display: block !important;
    width: 52px !important; height: 4px !important;
    background: linear-gradient(90deg,#1e3a8a,#3b82f6) !important;
    border-radius: 2px !important; margin: 10px auto 0 !important;
}
.headline h3 { font-family: 'Plus Jakarta Sans', sans-serif !important; font-size: 15px !important; color: #64748b !important; font-weight: 500 !important; margin: 0 !important; }
.headline.hl-white h2 { color: #fff !important; }
.headline.hl-white h2::after { background: rgba(255,255,255,.40) !important; }
.headline.hl-white h3 { color: rgba(255,255,255,.65) !important; }
.hl-left h2::after { margin-left: 0 !important; }

/* ════════════════════════════
   BLOG
════════════════════════════ */
.blog-item {
    background-color: #fff !important; border-radius: 16px !important; overflow: hidden !important;
    box-shadow: 0 2px 16px rgba(30,58,138,.07) !important; border: 1px solid #e8edf8 !important;
    transition: transform .3s, box-shadow .3s !important; margin: 6px 4px 16px !important;
}
.blog-item:hover { transform: translateY(-5px) !important; box-shadow: 0 12px 36px rgba(30,58,138,.14) !important; }
.blog-image { height: 200px !important; background-size: cover !important; background-position: center !important; }
.blog-text { padding: 20px 20px 10px !important; background: transparent !important; }
.blog-text h4 { font-family: 'Sora', sans-serif !important; font-size: 15.5px !important; font-weight: 700 !important; line-height: 1.45 !important; margin-bottom: 10px !important; }
.blog-text h4 a { color: #1e293b !important; }
.blog-text h4 a:hover { color: #1e3a8a !important; }
.blog-author { padding: 12px 20px 18px !important; border-top: 1px solid #f1f5f9 !important; background: transparent !important; }
.blog-author ul { list-style: none !important; padding: 0 !important; margin: 0 !important; display: flex !important; justify-content: space-between !important; align-items: center !important; }
.blog-author ul li a { font-size: 12.5px !important; font-weight: 600 !important; color: #1e3a8a !important; padding: 0 !important; min-height: unset !important; display: flex !important; align-items: center !important; gap: 5px !important; }
.blog-author li.blog-button { background: none !important; float: none !important; }
.blog-author li.blog-button a { width: 36px !important; height: 36px !important; border-radius: 50% !important; background-color: #1e3a8a !important; color: #fff !important; justify-content: center !important; padding: 0 !important; }

/* ════════════════════════════
   SERVICES
════════════════════════════ */
.services-item {
    border-radius: 14px !important; overflow: hidden !important;
    background-color: #fff !important; box-shadow: 0 2px 14px rgba(30,58,138,.07) !important;
    border: 1px solid #e8edf8 !important; margin-bottom: 28px !important;
    transition: transform .3s, box-shadow .3s !important;
}
.services-item:hover { transform: translateY(-5px) !important; box-shadow: 0 12px 36px rgba(30,58,138,.14) !important; }
.services-photo { height: 215px !important; background-size: cover !important; background-position: center !important; }
.services-text { padding: 22px !important; background: transparent !important; }
.services-item:hover .services-text { background: transparent !important; }
.services-text h3 { font-family: 'Sora', sans-serif !important; font-size: 16px !important; font-weight: 700 !important; margin-bottom: 10px !important; }
.services-text h3 a { color: #0f172a !important; }
.services-text h3 a:hover { color: #1e3a8a !important; }
.button-bn a {
    display: inline-flex !important; align-items: center !important;
    padding: 10px 22px !important; border-radius: 8px !important;
    background-color: #1e3a8a !important; color: #fff !important;
    font-size: 13px !important; font-weight: 700 !important;
}
.button-bn a:hover { background-color: #0f172a !important; color: #fff !important; }

/* ════════════════════════════
   COUNTER
════════════════════════════ */
.counterup-area { background-size: cover !important; background-position: center !important; padding: 70px 0 !important; position: relative !important; }
.bg-counterup { position: absolute !important; inset: 0 !important; background: linear-gradient(135deg,rgba(10,31,92,.92),rgba(30,58,138,.84)) !important; }
.counter-item { position: relative !important; text-align: center !important; color: #fff !important; border: 1px solid rgba(255,255,255,.20) !important; margin-top: 30px !important; padding: 28px 16px !important; background-color: rgba(255,255,255,.07) !important; border-radius: 14px !important; min-height: unset !important; }
.counter-item::before, .counter-item::after { display: none !important; }
.counter-item i { font-size: 36px !important; color: #f5c518 !important; display: block !important; margin-bottom: 10px !important; }
.counter-item h2.counter { font-family: 'Sora', sans-serif !important; font-size: 44px !important; font-weight: 800 !important; color: #fff !important; margin: 0 0 8px !important; }
.counter-item h4 { font-size: 14px !important; color: rgba(255,255,255,.70) !important; margin: 0 !important; }

/* ════════════════════════════
   TESTIMONIAL
════════════════════════════ */
.testimonial-area { background-size: cover !important; background-position: center !important; padding: 80px 0 !important; position: relative !important; }
.bg-testimonial { position: absolute !important; inset: 0 !important; background: linear-gradient(135deg,rgba(10,31,92,.93),rgba(30,58,138,.84)) !important; }
.testimonial-item { background-color: rgba(255,255,255,.10) !important; border: 1px solid rgba(255,255,255,.15) !important; border-radius: 16px !important; padding: 28px 24px !important; margin: 8px 4px !important; position: relative !important; z-index: 2 !important; text-align: center !important; color: #fff !important; }
.testimonial-photo img { width: 100% !important; border-radius: 50% !important; border: 3px solid rgba(255,255,255,.30) !important; }
.testimonial-name h4 { font-family: 'Sora', sans-serif !important; font-size: 15px !important; font-weight: 700 !important; color: #fff !important; }
.testimonial-name p { font-size: 12.5px !important; color: rgba(255,255,255,.55) !important; margin: 0 !important; }

/* ════════════════════════════
   FOOTER
════════════════════════════ */
.footer-area { background-color: #0f172a !important; padding-top: 60px !important; padding-bottom: 40px !important; }
.footer-item h3 { font-family: 'Sora', sans-serif !important; font-size: 14px !important; font-weight: 700 !important; color: #f5c518 !important; text-transform: uppercase !important; letter-spacing: .8px !important; margin-bottom: 20px !important; padding-bottom: 12px !important; border-bottom: 2px solid rgba(245,197,24,.22) !important; display: block !important; }
.footer-item h3::before, .footer-item h3::after { display: none !important; }
.footer-item > p { font-size: 13px !important; color: rgba(255,255,255,.60) !important; line-height: 1.75 !important; }
.footer-item ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.footer-item ul li { border-bottom: 1px solid rgba(255,255,255,.07) !important; padding: 8px 0 !important; display: block !important; }
.footer-item ul li a { color: rgba(255,255,255,.65) !important; font-size: 13px !important; font-weight: 500 !important; display: flex !important; gap: 8px !important; transition: color .2s !important; text-decoration: none !important; }
.footer-item ul li a::before { content: '›' !important; color: #3b82f6 !important; font-size: 16px !important; position: static !important; }
.footer-item ul li a:hover { color: #fff !important; }
.footer-bottom { background-color: #060f30 !important; padding: 18px 0 !important; text-align: center !important; }
.footer-menu { border-bottom: none !important; }
.copy-text p { margin: 0 !important; color: rgba(255,255,255,.40) !important; font-size: 12.5px !important; }
.copy-text p a { color: #3b82f6 !important; font-family: 'Plus Jakarta Sans', sans-serif !important; }

/* CTA */
.call-us { background-size: cover !important; background-position: center !important; padding: 52px 0 !important; position: relative !important; }
.call-us::before { content: '' !important; position: absolute !important; inset: 0 !important; background: linear-gradient(110deg,rgba(10,31,92,.90),rgba(30,58,138,.80)) !important; }
.call-us .container { position: relative !important; z-index: 2 !important; }
.call-text h3 { font-family: 'Sora', sans-serif !important; font-size: 24px !important; font-weight: 700 !important; color: #fff !important; margin: 0 !important; }
.call-us .button a { display: inline-flex !important; align-items: center !important; padding: 13px 28px !important; border-radius: 8px !important; background-color: #f5c518 !important; color: #0f172a !important; font-weight: 700 !important; border: none !important; }
.call-us .button a:hover { background-color: #fff !important; color: #1e3a8a !important; }

/* SCROLL TOP */
.scroll-top { position: fixed !important; bottom: 28px !important; right: 28px !important; width: 44px !important; height: 44px !important; line-height: 44px !important; border-radius: 50% !important; background-color: #1e3a8a !important; color: #fff !important; font-size: 18px !important; text-align: center !important; z-index: 9999 !important; cursor: pointer !important; }
.scroll-top:hover { background-color: #0f172a !important; color: #fff !important; }

/* BANNER */
.banner-slider { background: linear-gradient(135deg,#0f172a,#1e3a8a) !important; height: 220px !important; position: relative !important; }
.banner-text h1 { font-family: 'Sora', sans-serif !important; font-size: 30px !important; font-weight: 800 !important; color: #fff !important; margin: 0 !important; }

/* FORM */
.form-control { border-radius: 8px !important; border: 1px solid #dce8ff !important; font-family: 'Plus Jakarta Sans', sans-serif !important; font-size: 13.5px !important; }
.form-control:focus { border-color: #3b82f6 !important; box-shadow: 0 0 0 3px rgba(59,130,246,.15) !important; outline: none !important; }

/* ════════════════════════════
   MOBILE
════════════════════════════ */
@media (max-width: 991px) {
    .menu-area .main-menu-item { display: none !important; }
    .mean-container .mean-bar {
        position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important;
        z-index: 999999 !important; background: #1e3a8a !important;
    }
    body { padding-top: 116px !important; }
    .header-area { top: 48px !important; }
    div.sitewidth, .sitewidth { top: 84px !important; }
}
@media (max-width: 480px) {
    body { padding-top: 100px !important; }
}