/* === CUSTOM HEADER MENU STYLES === */

#header {
    background-color: #ffffff !important;
    border-bottom: 1px solid #f3f4f6 !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.02) !important;
}

.header-main {
    background-color: #ffffff !important;
}

/* Adjust top bar if any */
#top-bar {
    border-bottom: 1px solid #f3f4f6 !important;
}

/* Desktop Menu Layout (Stacked: icon above, text below) */
.header-nav.header-nav-main {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.header-nav .menu-item > a {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    color: #4b5563 !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    padding: 12px 14px !important;
    gap: 6px !important;
    transition: all 0.2s ease !important;
    border-bottom: 3px solid transparent !important;
    text-transform: uppercase !important;
    height: auto !important;
}

.header-nav .menu-item > a:hover {
    color: #065F46 !important;
}

/* Active item state (with green underline) */
.header-nav .menu-item.current-menu-item > a,
.header-nav .menu-item.current_page_item > a {
    color: #065F46 !important;
    border-bottom-color: #065F46 !important;
}

/* Nav icon wrap styling */
.nav-icon-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #9CA3AF;
    transition: color 0.2s ease;
}

.header-nav .menu-item > a:hover .nav-icon-wrap,
.header-nav .menu-item.current-menu-item > a .nav-icon-wrap {
    color: #065F46 !important;
}

/* Hide Flatsome standard dropdown arrow to match photo 2 */
.header-nav .menu-item-has-children > a i.icon-angle-down {
    display: none !important;
}

/* Adjust dropdown menu styling */
.nav-dropdown {
    border-top: 3px solid #065F46 !important;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05) !important;
    border-radius: 0 0 8px 8px !important;
    padding: 8px 0 !important;
}

.nav-dropdown > li > a {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #374151 !important;
    padding: 8px 20px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.nav-dropdown > li > a:hover {
    color: #065F46 !important;
    background-color: #f9fafb !important;
}

/* Logo and text layout next to it */
#logo a {
    display: flex !important;
    align-items: center !important;
    text-decoration: none !important;
}

#logo img {
    max-height: 48px !important;
    width: auto !important;
    object-fit: contain !important;
}

/* Mobile Sidebar Styles */
.mobile-sidebar {
    background-color: #ffffff !important;
    max-width: 290px !important;
}

.sidebar-menu {
    background-color: #ffffff !important;
}

.nav-sidebar {
    padding-top: 10px !important;
    background-color: #ffffff !important;
}

.nav-sidebar > li > a {
    display: flex !important;
    align-items: center !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #1f2937 !important;
    padding: 12px 20px !important;
    border-bottom: 1px solid #f3f4f6 !important;
    text-transform: none !important; /* Force mixed case */
    letter-spacing: normal !important;
    transition: all 0.2s ease !important;
}

.nav-sidebar > li > a:hover {
    background-color: #f9fafb !important;
    color: #065F46 !important;
}

.nav-sidebar > li.current-menu-item > a {
    color: #065F46 !important;
    background-color: #ecfdf5 !important;
}

.nav-sidebar-ul.children > li > a {
    padding-left: 50px !important;
    font-size: 14px !important;
    color: #4b5563 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

/* Mobile Bottom Navigation Bar */
.mobile-bottom-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60px;
    background-color: #ffffff;
    border-top: 1px solid #e5e7eb;
    display: none; /* Hidden on desktop */
    grid-template-columns: repeat(5, 1fr);
    align-items: center;
    justify-items: center;
    z-index: 9999;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.05);
}

.bottom-nav-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    color: #9CA3AF !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    width: 100%;
    height: 100%;
    gap: 3px;
    position: relative;
}

.bottom-nav-item.active {
    color: #065F46 !important;
}

.bottom-icon {
    width: 20px;
    height: 20px;
    transition: transform 0.2s ease;
}

.bottom-nav-item:active .bottom-icon {
    transform: scale(0.9);
}

/* Center prominent green button styling */
.bottom-nav-tools-center {
    color: #9CA3AF !important;
}
.bottom-nav-tools-center.active {
    color: #065F46 !important;
}
.center-btn-wrap {
    width: 50px;
    height: 50px;
    background-color: #065F46;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    box-shadow: 0 4px 12px rgba(6, 95, 70, 0.3);
    position: absolute;
    top: -20px; /* Raise it above the bar! */
    border: 4px solid #ffffff;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.bottom-nav-tools-center:active .center-btn-wrap {
    transform: scale(0.9) translateY(-10px);
}
.bottom-icon-center {
    width: 22px;
    height: 22px;
}
.bottom-nav-tools-center span {
    margin-top: 25px; /* Offset the text to sit below the raised button */
}

/* Media Query to show bottom nav on mobile, and add padding to body */
@media (max-width: 768px) {
    .mobile-bottom-nav {
        display: grid;
    }
    body {
        padding-bottom: 60px !important; /* Prevent content from being hidden behind the bottom bar */
    }
}


/* ==========================================================================
   ACADEMY PORTAL HOMEPAGE STYLES (MOVED FROM PAGE CONTENT TO AVOID WPAUTOP)
   ========================================================================== */

/* --- Stylesheet Block 1 --- */
/* Hide Bazi form widget on homepage */
.home .ttmb-dev-preview, .home .ttmb-wrap, .home .ttmb-form-card { display: none !important; }


/* Fix WordPress wpautop injecting empty p/br into grid containers */

.hoc-cat-grid > p, .hoc-cat-grid > br,

.hoc-mag-grid > p, .hoc-mag-grid > br,

.hoc-topic-grid > p, .hoc-topic-grid > br,

.hoc-topic-list > p, .hoc-topic-list > br,

.hoc-hero-carousel > p, .hoc-hero-carousel > br,

.hoc-hero-inner > p, .hoc-hero-inner > br,

.hoc-content-sidebar > p, .hoc-content-sidebar > br,

.hoc-main-col > p:empty, .hoc-main-col > br,

.hoc-sidebar > p:empty, .hoc-sidebar > br,

.hoc-topic-sec > p:empty, .hoc-topic-sec > br,

.hoc-widget-body > p:empty { display:none!important; height:0!important; margin:0!important; padding:0!important; }



/* Hide Flatsome page heading */

.page-title-inner,.page-title,.feature-image-outer { display:none!important }



/* Hide WooCommerce Cart & Unused Header elements */

.cart-item, .header-cart, .widget_shopping_cart, .header-cart-icon { display:none!important; }



/* === HOC.BATTUTAMAN.VN HOMEPAGE === */

.hoc-topbar{background:#1B2D72;color:#fff;font-size:12px;padding:7px 20px;text-align:center}

.hoc-topbar a{color:#a5b4fc;margin:0 10px;text-decoration:none}

.hoc-topbar a:hover{color:#fff}

.hoc-hero{background:linear-gradient(135deg,#1B2D72 0%,#2E4DA1 50%,#0D9488 100%);padding:10px 0 0}

.hoc-hero-inner{max-width:1200px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}

.hoc-slide{display:none;background:rgba(255,255,255,.09);overflow:hidden}

.hoc-slide.active{display:block}



.hoc-slide-content{padding:18px 24px 14px}

.hoc-hero-tag{display:inline-block;background:rgba(255,255,255,.2);color:#fff;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:3px 10px;border-radius:12px;margin-bottom:10px}

.hoc-hero-title{font-family:'Playfair Display',Georgia,serif!important;font-size:21px;font-weight:700;color:#fff!important;line-height:1.35;margin:0 0 10px!important}

.hoc-hero-excerpt{font-size:13px;color:rgba(255,255,255,.82);margin:0 0 14px;line-height:1.65}

.hoc-hero-readmore{display:inline-flex;align-items:center;background:#fff;color:#1B2D72!important;padding:9px 22px;border-radius:22px;font-size:13px;font-weight:700;text-decoration:none!important;transition:all .2s}

.hoc-hero-readmore:hover{transform:translateX(3px)}

.hoc-dots{display:flex;gap:6px;padding:8px 24px 8px}

.hoc-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.4);border:none;cursor:pointer;padding:0;transition:all .2s}

.hoc-dot.active{background:#fff;width:24px;border-radius:4px}

.hoc-hero-sidebar{padding-top:16px}

.hoc-sidebar-title{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.65);padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.15);margin-bottom:14px}

.hoc-mini-post{display:flex;gap:12px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.1);align-items:flex-start}

.hoc-mini-post:last-child{border-bottom:none;margin-bottom:0}

.hoc-mini-cat{font-size:10px;font-weight:600;color:rgba(255,255,255,.5);text-transform:uppercase;margin-bottom:4px;letter-spacing:.06em}

.hoc-mini-title{font-size:13px;font-weight:600;color:#fff;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-decoration:none!important}

.hoc-mini-title:hover{color:#a5b4fc}

.hoc-main{max-width:1200px;margin:0 auto;padding:0 20px}

.hoc-cat-section{padding:40px 0 32px;text-align:center}

.hoc-cat-heading{font-family:'Playfair Display',Georgia,serif!important;font-size:26px;font-weight:700;color:#1B2D72;margin:0 0 8px!important}

.hoc-cat-sub{font-size:14px;color:#4A5568;margin:0 0 28px}

.hoc-cat-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}

.hoc-tile{border-radius:12px;padding:20px 8px;text-align:center;transition:all .25s;display:flex;flex-direction:column;align-items:center;gap:8px;color:#fff!important;text-decoration:none!important}

.hoc-tile:hover{transform:translateY(-6px);box-shadow:0 8px 32px rgba(0,0,0,.22);color:#fff!important}

.hoc-tile-bat-tu{background:linear-gradient(145deg,#1B2D72,#2E4DA1)}

.hoc-tile-kinh-dich{background:linear-gradient(145deg,#065F46,#059669)}

.hoc-tile-tu-vi{background:linear-gradient(145deg,#6B21A8,#9333EA)}

.hoc-tile-dong-phuong{background:linear-gradient(145deg,#92400E,#D97706)}

.hoc-tile-tay-phuong{background:linear-gradient(145deg,#1D4ED8,#3B82F6)}

.hoc-tile-truong-phai{background:linear-gradient(145deg,#9D174D,#DB2777)}

.hoc-tile-cong-cu{background:linear-gradient(145deg,#0F766E,#14B8A6)}

.hoc-tile-icon{display:none}.hoc-tile-icon-hidden{width:42px;height:42px;border-radius:8px;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;color:#fff;line-height:1}

.hoc-tile-name{font-size:12px;font-weight:700;line-height:1.3}

.hoc-tile-count{font-size:10.5px;opacity:.75}

.hoc-content-sidebar{display:grid;grid-template-columns:1fr 290px;gap:28px;padding-bottom:40px}

.hoc-main-col,.hoc-sidebar{min-width:0}

.hoc-section-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;padding-bottom:10px;border-bottom:2px solid #CBD5E1}

.hoc-sec-title{font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#1B2D72;display:flex;align-items:center;gap:10px}

.hoc-sec-title::before{content:'';width:4px;height:22px;border-radius:2px;display:inline-block;flex-shrink:0}

.hoc-sec-title-bat-tu::before{background:#1B2D72}

.hoc-sec-title-kinh-dich::before{background:#065F46}

.hoc-sec-title-tu-vi::before{background:#6B21A8}

.hoc-sec-title-dong-phuong::before{background:#92400E}

.hoc-viewall{font-size:13px;font-weight:600;color:#1B2D72;text-decoration:none!important;white-space:nowrap}

.hoc-viewall:hover{text-decoration:underline!important}

.hoc-mag-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:36px}

.hoc-post-featured{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;background:#fff;border:1px solid #CBD5E1;border-radius:12px;overflow:hidden;box-shadow:0 2px 16px rgba(27,45,114,.1);transition:all .2s;text-decoration:none!important;color:#1a1a2e!important}

.hoc-post-featured:hover{transform:translateY(-3px);box-shadow:0 8px 32px rgba(27,45,114,.18)}

.hoc-feat-img{height:230px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:900;color:rgba(255,255,255,.7);letter-spacing:1px}

.hoc-feat-img-bat-tu{background:linear-gradient(135deg,#1B2D72,#2E4DA1)}

.hoc-feat-img-kinh-dich{background:linear-gradient(135deg,#065F46,#059669)}

.hoc-feat-img-tu-vi{background:linear-gradient(135deg,#6B21A8,#9333EA)}

.hoc-feat-body{padding:22px 20px;display:flex;flex-direction:column;justify-content:center}

.hoc-tags{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}

.hoc-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}

.hoc-tag-navy{background:#EEF2FF;color:#1B2D72}

.hoc-tag-green{background:#DCFCE7;color:#065F46}

.hoc-tag-purple{background:#F3E8FF;color:#6B21A8}

.hoc-tag-amber{background:#FEF3C7;color:#92400E}

.hoc-post-title{font-family:'Playfair Display',Georgia,serif!important;font-size:17px;font-weight:700;line-height:1.4;color:#1a1a2e!important;margin:0 0 10px!important}

.hoc-post-ex{font-size:13.5px;color:#4A5568;margin:0 0 12px;line-height:1.65}

.hoc-post-meta{font-size:11.5px;color:#64748B}

.hoc-card{background:#fff;border:1px solid #CBD5E1;border-radius:10px;overflow:hidden;box-shadow:0 2px 16px rgba(27,45,114,.1);transition:all .22s;display:block;text-decoration:none!important;color:#1a1a2e!important}

.hoc-card:hover{transform:translateY(-4px);box-shadow:0 8px 32px rgba(27,45,114,.16)}

.hoc-card-img{height:140px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:900;color:rgba(255,255,255,.7)}

.hoc-card-img-kinh-dich{background:linear-gradient(135deg,#065F46,#059669)}

.hoc-card-img-tu-vi{background:linear-gradient(135deg,#6B21A8,#9333EA)}

.hoc-card-img-dong-phuong{background:linear-gradient(135deg,#92400E,#D97706)}

.hoc-card-body{padding:14px 16px}

.hoc-card-title{font-family:'Playfair Display',Georgia,serif!important;font-size:14px;font-weight:700;line-height:1.4;color:#1a1a2e;margin:8px 0 6px}

.hoc-topic-sec{margin-bottom:40px}

.hoc-topic-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}

.hoc-topic-feat{background:#fff;border:1px solid #CBD5E1;border-radius:12px;overflow:hidden;box-shadow:0 2px 16px rgba(27,45,114,.1);transition:all .22s;display:block;text-decoration:none!important;color:#1a1a2e!important}

.hoc-topic-feat:hover{transform:translateY(-3px);box-shadow:0 8px 32px rgba(27,45,114,.16)}

.hoc-topic-img{height:190px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:900;color:rgba(255,255,255,.7)}

.hoc-topic-img-bat-tu{background:linear-gradient(135deg,#1B2D72,#2E4DA1)}

.hoc-topic-img-kinh-dich{background:linear-gradient(135deg,#065F46,#059669)}

.hoc-topic-img-tu-vi{background:linear-gradient(135deg,#6B21A8,#9333EA)}

.hoc-topic-img-dong-phuong{background:linear-gradient(135deg,#92400E,#D97706)}

.hoc-topic-body{padding:16px 18px}

.hoc-topic-title{font-family:'Playfair Display',Georgia,serif!important;font-size:16px;font-weight:700;line-height:1.4;color:#1a1a2e!important;margin:0 0 8px!important}

.hoc-topic-ex{font-size:13px;color:#4A5568;line-height:1.65}

.hoc-topic-list{display:flex;flex-direction:column;gap:12px}

.hoc-list-item{display:flex;gap:12px;background:#fff;border:1px solid #CBD5E1;border-radius:10px;padding:12px;box-shadow:0 2px 16px rgba(27,45,114,.08);transition:all .2s;color:#1a1a2e!important;text-decoration:none!important;align-items:flex-start}

.hoc-list-item:hover{transform:translateX(4px);box-shadow:0 8px 24px rgba(27,45,114,.14)}

.hoc-list-thumb{width:10px;height:10px;border-radius:50%;flex-shrink:0;margin-top:5px}

.hoc-list-title{font-size:13px;font-weight:600;color:#1a1a2e;line-height:1.4;margin-bottom:4px}

.hoc-list-meta{font-size:11px;color:#64748B}

.hoc-cta-banner{border-radius:16px;padding:30px 36px;text-align:center;margin:10px 0 36px}

.hoc-cta-navy{background:linear-gradient(135deg,#1B2D72 0%,#2E4DA1 60%,#0D9488 100%)}

.hoc-cta-purple{background:linear-gradient(135deg,#6B21A8,#9333EA,#0D9488)}

.hoc-cta-label{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:8px}

.hoc-cta-title{font-family:'Playfair Display',Georgia,serif!important;font-size:20px;font-weight:700;color:#fff!important;margin:0 0 8px;line-height:1.35}

.hoc-cta-sub{font-size:13px;color:rgba(255,255,255,.75);margin:0 0 20px}

.hoc-btn-white{display:inline-flex;align-items:center;gap:8px;background:#fff;color:#1B2D72!important;padding:10px 28px;border-radius:22px;font-size:14px;font-weight:700;box-shadow:0 4px 16px rgba(0,0,0,.2);text-decoration:none!important;transition:all .2s}

.hoc-btn-white:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.25);color:#1B2D72!important}

.hoc-sidebar-cta{background:linear-gradient(145deg,#1B2D72,#2E4DA1);border-radius:12px;padding:20px 16px;text-align:center;color:#fff;margin-bottom:18px}

.hoc-prod-banner a{padding:36px 16px!important}

.hoc-scta-icon{display:none}

.hoc-scta-title{font-family:'Playfair Display',Georgia,serif!important;font-size:15px;font-weight:700;margin:0 0 6px;line-height:1.35;color:#fff}

.hoc-scta-sub{font-size:12px;color:rgba(255,255,255,.75);margin:0 0 14px}

.hoc-btn-scta{display:block;background:#fff;color:#1B2D72!important;padding:9px 16px;border-radius:20px;font-size:13px;font-weight:700;text-decoration:none!important;transition:all .2s}

.hoc-btn-scta:hover{background:#EEF2FF}

.hoc-widget{background:#fff;border:1px solid #CBD5E1;border-radius:12px;margin-bottom:18px;overflow:hidden;box-shadow:0 2px 16px rgba(27,45,114,.08)}

.hoc-feat-text-only{display:block;background:#fff;border:1px solid #CBD5E1;border-radius:12px;padding:18px 22px;text-decoration:none!important;color:#1a1a2e!important;box-shadow:0 2px 16px rgba(27,45,114,.08);transition:all .22s;margin-bottom:4px}.hoc-feat-text-only:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(27,45,114,.14)}

.hoc-widget-hdr{background:#1B2D72;color:#fff;padding:12px 16px;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

.hoc-widget-body{padding:16px}

.hoc-top-item{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid #f0f4ff;align-items:flex-start}

.hoc-top-item:last-child{border-bottom:none}

.hoc-top-num{width:24px;height:24px;min-width:24px;background:#EEF2FF;color:#1B2D72;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}

.hoc-top-num-1{background:#1B2D72;color:#fff}

.hoc-top-title{font-size:13px;font-weight:600;color:#1a1a2e;line-height:1.4;text-decoration:none!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.hoc-top-title:hover{color:#1B2D72}

.hoc-tool-link{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #CBD5E1;border-radius:8px;margin-bottom:8px;font-size:13px;color:#1a1a2e!important;font-weight:500;transition:all .2s;text-decoration:none!important}

.hoc-tool-link:hover{border-color:#1B2D72;color:#1B2D72!important;transform:translateX(3px)}

.hoc-tool-link:last-child{margin-bottom:0}

.hoc-tool-dot{width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:900;color:#fff;flex-shrink:0}

/* Kill empty p/br injected by WP between our section elements */

.hoc-topic-sec > p,.hoc-topic-sec > br,

.hoc-topic-sec > p:empty,.hoc-topic-sec > br,

.hoc-section-hdr + p:empty,.hoc-section-hdr + br,

.hoc-feat-text-only + p:empty,

.hoc-section-hdr ~ p:empty{display:none!important;height:0!important;margin:0!important}

.hoc-slide-extra{display:block;background:rgba(255,255,255,.09);border-radius:12px;padding:14px 22px 16px;margin-top:2px;text-decoration:none!important;color:#fff!important;transition:background .2s}.hoc-slide-extra:hover{background:rgba(255,255,255,.15)}



@media(max-width:1024px){.hoc-cat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hoc-content-sidebar{grid-template-columns:1fr 250px}}

@media(max-width:768px){.hoc-hero{padding-bottom:20px}.hoc-hero-inner,.hoc-content-sidebar,.hoc-topic-grid,.hoc-mag-grid{grid-template-columns:1fr!important}.hoc-sidebar{display:none!important}.hoc-post-featured{grid-template-columns:1fr!important}.hoc-cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.hoc-cta-banner{padding:24px 20px}.hoc-feat-img{height:180px}}

/* --- Stylesheet Block 2 --- */
.hoc-hero-banner:hover { background:rgba(255,255,255,0.15)!important; border-color:rgba(245,158,11,0.5)!important; box-shadow:0 12px 40px rgba(0,0,0,0.25)!important; }
        .hoc-hero-banner:hover span { transform:translateY(-2px); box-shadow:0 8px 20px rgba(255,255,255,0.3)!important; }
        @media(max-width:768px){
            .hoc-banner-img-col { display:none!important; }
            .hoc-hero-banner h2 { font-size:21px!important; }
            .hoc-hero-banner { padding: 10px 0; }
        }

/* --- Hover Transitions and Sticky Sidebar --- */
.hoc-prod-banner a {
    transition: transform 0.22s ease, box-shadow 0.22s ease !important;
}
.bottom-icon-center {
    width: 22px;
    height: 22px;
}
.bottom-nav-tools-center span {
    margin-top: 25px; /* Offset the text to sit below the raised button */
}

/* Media Query to show bottom nav on mobile, and add padding to body */
@media (max-width: 768px) {
    .mobile-bottom-nav {
        display: grid;
    }
    body {
        padding-bottom: 60px !important; /* Prevent content from being hidden behind the bottom bar */
    }
}


/* ==========================================================================
   ACADEMY PORTAL HOMEPAGE STYLES (MOVED FROM PAGE CONTENT TO AVOID WPAUTOP)
   ========================================================================== */

/* --- Stylesheet Block 1 --- */
/* Hide Bazi form widget on homepage */
.home .ttmb-dev-preview, .home .ttmb-wrap, .home .ttmb-form-card { display: none !important; }

/* Fix WordPress wpautop injecting empty p/br into grid containers */
.hoc-cat-grid > p, .hoc-cat-grid > br,
.hoc-mag-grid > p, .hoc-mag-grid > br,
.hoc-topic-grid > p, .hoc-topic-grid > br,
.hoc-topic-list > p, .hoc-topic-list > br,
.hoc-hero-carousel > p, .hoc-hero-carousel > br,
.hoc-hero-inner > p, .hoc-hero-inner > br,
.hoc-content-sidebar > p, .hoc-content-sidebar > br,
.hoc-main-col > p:empty, .hoc-main-col > br,
.hoc-sidebar > p:empty, .hoc-sidebar > br,
.hoc-topic-sec > p:empty, .hoc-topic-sec > br,
.hoc-widget-body > p:empty { display:none!important; height:0!important; margin:0!important; padding:0!important; }

/* Hide Flatsome page heading */
.page-title-inner,.page-title,.feature-image-outer { display:none!important }

/* Hide WooCommerce Cart & Unused Header elements */
.cart-item, .header-cart, .widget_shopping_cart, .header-cart-icon { display:none!important; }

/* === HOC.BATTUTAMAN.VN HOMEPAGE === */
.hoc-topbar{background:#1B2D72;color:#fff;font-size:12px;padding:7px 20px;text-align:center}
.hoc-topbar a{color:#a5b4fc;margin:0 10px;text-decoration:none}
.hoc-topbar a:hover{color:#fff}
.hoc-hero{background:linear-gradient(135deg,#1B2D72 0%,#2E4DA1 50%,#0D9488 100%);padding:10px 0 0}
.hoc-hero-inner{max-width:1200px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}
.hoc-slide{display:none;background:rgba(255,255,255,.09);overflow:hidden}
.hoc-slide.active{display:block}

.hoc-slide-content{padding:18px 24px 14px}
.hoc-hero-tag{display:inline-block;background:rgba(255,255,255,.2);color:#fff;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:3px 10px;border-radius:12px;margin-bottom:10px}
.hoc-hero-title{font-family:'Playfair Display',Georgia,serif!important;font-size:21px;font-weight:700;color:#fff!important;line-height:1.35;margin:0 0 10px!important}
.hoc-hero-excerpt{font-size:13px;color:rgba(255,255,255,.82);margin:0 0 14px;line-height:1.65}
.hoc-hero-readmore{display:inline-flex;align-items:center;background:#fff;color:#1B2D72!important;padding:9px 22px;border-radius:22px;font-size:13px;font-weight:700;text-decoration:none!important;transition:all .2s}
.hoc-hero-readmore:hover{transform:translateX(3px)}
.hoc-dots{display:flex;gap:6px;padding:8px 24px 8px}
.hoc-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.4);border:none;cursor:pointer;padding:0;transition:all .2s}
.hoc-dot.active{background:#fff;width:24px;border-radius:4px}
.hoc-hero-sidebar{padding-top:16px}
.hoc-sidebar-title{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.65);padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.15);margin-bottom:14px}
.hoc-mini-post{display:flex;gap:12px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.1);align-items:flex-start}
.hoc-mini-post:last-child{border-bottom:none;margin-bottom:0}
.hoc-mini-cat{font-size:10px;font-weight:600;color:rgba(255,255,255,.5);text-transform:uppercase;margin-bottom:4px;letter-spacing:.06em}
.hoc-mini-title{font-size:13px;font-weight:600;color:#fff;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-decoration:none!important}
.hoc-mini-title:hover{color:#a5b4fc}
.hoc-main{max-width:1200px;margin:0 auto;padding:0 20px}
.hoc-cat-section{padding:40px 0 32px;text-align:center}
.hoc-cat-heading{font-family:'Playfair Display',Georgia,serif!important;font-size:26px;font-weight:700;color:#1B2D72;margin:0 0 8px!important}
.hoc-cat-sub{font-size:14px;color:#4A5568;margin:0 0 28px}
.hoc-cat-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
.hoc-tile{border-radius:12px;padding:20px 8px;text-align:center;transition:all .25s;display:flex;flex-direction:column;align-items:center;gap:8px;color:#fff!important;text-decoration:none!important}
.hoc-tile:hover{transform:translateY(-6px);box-shadow:0 8px 32px rgba(0,0,0,.22);color:#fff!important}
.hoc-tile-bat-tu{background:linear-gradient(145deg,#1B2D72,#2E4DA1)}
.hoc-tile-kinh-dich{background:linear-gradient(145deg,#065F46,#059669)}
.hoc-tile-tu-vi{background:linear-gradient(145deg,#6B21A8,#9333EA)}
.hoc-tile-dong-phuong{background:linear-gradient(145deg,#92400E,#D97706)}
.hoc-tile-tay-phuong{background:linear-gradient(145deg,#1D4ED8,#3B82F6)}
.hoc-tile-truong-phai{background:linear-gradient(145deg,#9D174D,#DB2777)}
.hoc-tile-cong-cu{background:linear-gradient(145deg,#0F766E,#14B8A6)}
.hoc-tile-icon{display:none}.hoc-tile-icon-hidden{width:42px;height:42px;border-radius:8px;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;color:#fff;line-height:1}
.hoc-tile-name{font-size:12px;font-weight:700;line-height:1.3}
.hoc-tile-count{font-size:10.5px;opacity:.75}
.hoc-content-sidebar{display:grid;grid-template-columns:1fr 290px;gap:28px;padding-bottom:40px}
.hoc-main-col,.hoc-sidebar{min-width:0}
.hoc-section-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;padding-bottom:10px;border-bottom:2px solid #CBD5E1}
.hoc-sec-title{font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#1B2D72;display:flex;align-items:center;gap:10px}
.hoc-sec-title::before{content:'';width:4px;height:22px;border-radius:2px;display:inline-block;flex-shrink:0}
.hoc-sec-title-bat-tu::before{background:#1B2D72}
.hoc-sec-title-kinh-dich::before{background:#065F46}
.hoc-sec-title-tu-vi::before{background:#6B21A8}
.hoc-sec-title-dong-phuong::before{background:#92400E}
.hoc-viewall{font-size:13px;font-weight:600;color:#1B2D72;text-decoration:none!important;white-space:nowrap}
.hoc-viewall:hover{text-decoration:underline!important}
.hoc-mag-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:36px}
.hoc-post-featured{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;background:#fff;border:1px solid #CBD5E1;border-radius:12px;overflow:hidden;box-shadow:0 2px 16px rgba(27,45,114,.1);transition:all .2s;text-decoration:none!important;color:#1a1a2e!important}
.hoc-post-featured:hover{transform:translateY(-3px);box-shadow:0 8px 32px rgba(27,45,114,.18)}
.hoc-feat-img{height:230px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:900;color:rgba(255,255,255,.7);letter-spacing:1px}
.hoc-feat-img-bat-tu{background:linear-gradient(135deg,#1B2D72,#2E4DA1)}
.hoc-feat-img-kinh-dich{background:linear-gradient(135deg,#065F46,#059669)}
.hoc-feat-img-tu-vi{background:linear-gradient(135deg,#6B21A8,#9333EA)}
.hoc-feat-body{padding:22px 20px;display:flex;flex-direction:column;justify-content:center}
.hoc-tags{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}
.hoc-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.hoc-tag-navy{background:#EEF2FF;color:#1B2D72}
.hoc-tag-green{background:#DCFCE7;color:#065F46}
.hoc-tag-purple{background:#F3E8FF;color:#6B21A8}
.hoc-tag-amber{background:#FEF3C7;color:#92400E}
.hoc-post-title{font-family:'Playfair Display',Georgia,serif!important;font-size:17px;font-weight:700;line-height:1.4;color:#1a1a2e!important;margin:0 0 10px!important}
.hoc-post-ex{font-size:13.5px;color:#4A5568;margin:0 0 12px;line-height:1.65}
.hoc-post-meta{font-size:11.5px;color:#64748B}
.hoc-card{background:#fff;border:1px solid #CBD5E1;border-radius:10px;overflow:hidden;box-shadow:0 2px 16px rgba(27,45,114,.1);transition:all .22s;display:block;text-decoration:none!important;color:#1a1a2e!important}
.hoc-card:hover{transform:translateY(-4px);box-shadow:0 8px 32px rgba(27,45,114,.16)}
.hoc-card-img{height:140px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:900;color:rgba(255,255,255,.7)}
.hoc-card-img-kinh-dich{background:linear-gradient(135deg,#065F46,#059669)}
.hoc-card-img-tu-vi{background:linear-gradient(135deg,#6B21A8,#9333EA)}
.hoc-card-img-dong-phuong{background:linear-gradient(135deg,#92400E,#D97706)}
.hoc-card-body{padding:14px 16px}
.hoc-card-title{font-family:'Playfair Display',Georgia,serif!important;font-size:14px;font-weight:700;line-height:1.4;color:#1a1a2e;margin:8px 0 6px}
.hoc-topic-sec{margin-bottom:40px}
.hoc-topic-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}
.hoc-topic-feat{background:#fff;border:1px solid #CBD5E1;border-radius:12px;overflow:hidden;box-shadow:0 2px 16px rgba(27,45,114,.1);transition:all .22s;display:block;text-decoration:none!important;color:#1a1a2e!important}
.hoc-topic-feat:hover{transform:translateY(-3px);box-shadow:0 8px 32px rgba(27,45,114,.16)}
.hoc-topic-img{height:190px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:900;color:rgba(255,255,255,.7)}
.hoc-topic-img-bat-tu{background:linear-gradient(135deg,#1B2D72,#2E4DA1)}
.hoc-topic-img-kinh-dich{background:linear-gradient(135deg,#065F46,#059669)}
.hoc-topic-img-tu-vi{background:linear-gradient(135deg,#6B21A8,#9333EA)}
.hoc-topic-img-dong-phuong{background:linear-gradient(135deg,#92400E,#D97706)}
.hoc-topic-body{padding:16px 18px}
.hoc-topic-title{font-family:'Playfair Display',Georgia,serif!important;font-size:16px;font-weight:700;line-height:1.4;color:#1a1a2e!important;margin:0 0 8px!important}
.hoc-topic-ex{font-size:13px;color:#4A5568;line-height:1.65}
.hoc-topic-list{display:flex;flex-direction:column;gap:12px}
.hoc-list-item{display:flex;gap:12px;background:#fff;border:1px solid #CBD5E1;border-radius:10px;padding:12px;box-shadow:0 2px 16px rgba(27,45,114,.08);transition:all .2s;color:#1a1a2e!important;text-decoration:none!important;align-items:flex-start}
.hoc-list-item:hover{transform:translateX(4px);box-shadow:0 8px 24px rgba(27,45,114,.14)}
.hoc-list-thumb{width:10px;height:10px;border-radius:50%;flex-shrink:0;margin-top:5px}
.hoc-list-title{font-size:13px;font-weight:600;color:#1a1a2e;line-height:1.4;margin-bottom:4px}
.hoc-list-meta{font-size:11px;color:#64748B}
.hoc-cta-banner{border-radius:16px;padding:30px 36px;text-align:center;margin:10px 0 36px}
.hoc-cta-navy{background:linear-gradient(135deg,#1B2D72 0%,#2E4DA1 60%,#0D9488 100%)}
.hoc-cta-purple{background:linear-gradient(135deg,#6B21A8,#9333EA,#0D9488)}
.hoc-cta-label{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:8px}
.hoc-cta-title{font-family:'Playfair Display',Georgia,serif!important;font-size:20px;font-weight:700;color:#fff!important;margin:0 0 8px;line-height:1.35}
.hoc-cta-sub{font-size:13px;color:rgba(255,255,255,.75);margin:0 0 20px}
.hoc-btn-white{display:inline-flex;align-items:center;gap:8px;background:#fff;color:#1B2D72!important;padding:10px 28px;border-radius:22px;font-size:14px;font-weight:700;box-shadow:0 4px 16px rgba(0,0,0,.2);text-decoration:none!important;transition:all .2s}
.hoc-btn-white:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.25);color:#1B2D72!important}
.hoc-sidebar-cta{background:linear-gradient(145deg,#1B2D72,#2E4DA1);border-radius:12px;padding:20px 16px;text-align:center;color:#fff;margin-bottom:18px}
.hoc-prod-banner a{padding:36px 16px!important}
.hoc-scta-icon{display:none}
.hoc-scta-title{font-family:'Playfair Display',Georgia,serif!important;font-size:15px;font-weight:700;margin:0 0 6px;line-height:1.35;color:#fff}
.hoc-scta-sub{font-size:12px;color:rgba(255,255,255,.75);margin:0 0 14px}
.hoc-btn-scta{display:block;background:#fff;color:#1B2D72!important;padding:9px 16px;border-radius:20px;font-size:13px;font-weight:700;text-decoration:none!important;transition:all .2s}
.hoc-btn-scta:hover{background:#EEF2FF}
.hoc-widget{background:#fff;border:1px solid #CBD5E1;border-radius:12px;margin-bottom:18px;overflow:hidden;box-shadow:0 2px 16px rgba(27,45,114,.08)}
.hoc-feat-text-only{display:block;background:#fff;border:1px solid #CBD5E1;border-radius:12px;padding:18px 22px;text-decoration:none!important;color:#1a1a2e!important;box-shadow:0 2px 16px rgba(27,45,114,.08);transition:all .22s;margin-bottom:4px}.hoc-feat-text-only:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(27,45,114,.14)}
.hoc-widget-hdr{background:#1B2D72;color:#fff;padding:12px 16px;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.hoc-widget-body{padding:16px}
.hoc-top-item{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid #f0f4ff;align-items:flex-start}
.hoc-top-item:last-child{border-bottom:none}
.hoc-top-num{width:24px;height:24px;min-width:24px;background:#EEF2FF;color:#1B2D72;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}
.hoc-top-num-1{background:#1B2D72;color:#fff}
.hoc-top-title{font-size:13px;font-weight:600;color:#1a1a2e;line-height:1.4;text-decoration:none!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hoc-top-title:hover{color:#1B2D72}
.hoc-tool-link{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #CBD5E1;border-radius:8px;margin-bottom:8px;font-size:13px;color:#1a1a2e!important;font-weight:500;transition:all .2s;text-decoration:none!important}
.hoc-tool-link:hover{border-color:#1B2D72;color:#1B2D72!important;transform:translateX(3px)}
.hoc-tool-link:last-child{margin-bottom:0}
.hoc-tool-dot{width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:900;color:#fff;flex-shrink:0}
/* Kill empty p/br injected by WP between our section elements */
.hoc-topic-sec > p,.hoc-topic-sec > br,
.hoc-topic-sec > p:empty,.hoc-topic-sec > br,
.hoc-section-hdr + p:empty,.hoc-section-hdr + br,
.hoc-feat-text-only + p:empty,
.hoc-section-hdr ~ p:empty{display:none!important;height:0!important;margin:0!important}
.hoc-slide-extra{display:block;background:rgba(255,255,255,.09);border-radius:12px;padding:14px 22px 16px;margin-top:2px;text-decoration:none!important;color:#fff!important;transition:background .2s}.hoc-slide-extra:hover{background:rgba(255,255,255,.15)}

@media(max-width:1024px){.hoc-cat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hoc-content-sidebar{grid-template-columns:1fr 250px}}
@media(max-width:768px){.hoc-hero{padding-bottom:20px}.hoc-hero-inner,.hoc-content-sidebar,.hoc-topic-grid,.hoc-mag-grid{grid-template-columns:1fr!important}.hoc-sidebar{display:none!important}.hoc-post-featured{grid-template-columns:1fr!important}.hoc-cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.hoc-cta-banner{padding:24px 20px}.hoc-feat-img{height:180px}}

/* --- Stylesheet Block 2 --- */
.hoc-hero-banner:hover { background:rgba(255,255,255,0.15)!important; border-color:rgba(245,158,11,0.5)!important; box-shadow:0 12px 40px rgba(0,0,0,0.25)!important; }
        .hoc-hero-banner:hover span { transform:translateY(-2px); box-shadow:0 8px 20px rgba(255,255,255,0.3)!important; }
        @media(max-width:768px){
            .hoc-banner-img-col { display:none!important; }
            .hoc-hero-banner h2 { font-size:21px!important; }
            .hoc-hero-banner { padding: 10px 0; }
        }

/* --- Hover Transitions and Sticky Sidebar --- */
.hoc-prod-banner a {
    transition: transform 0.22s ease, box-shadow 0.22s ease !important;
}
.hoc-prod-banner a:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15) !important;
}
@media (min-width: 1025px) {
    .hoc-sidebar {
        position: sticky !important;
        top: 90px !important;
        align-self: start !important;
    }
}

/* Force Mobile Menu Toggle (Hamburger) Icon to Black */
.icon-menu,
.nav > li > a > i.icon-menu,
.mobile-nav .icon-menu,
.header-nav .icon-menu {
    color: #111827 !important; /* Premium Dark Gray/Black */
}
