/* CMGALAXY Header Custom Styles */

/* Main Header Container */
.cmgalaxy-header {
    flex-direction: column !important;
    padding: 1rem 0 !important;
    background: #ffffff;
}

/* Header height and spacing fixes */
.header {
    position: relative;
    z-index: 100;
    background: #ffffff;
}

/* WordPress Admin Bar adjustments */
.admin-bar .header {
    top: 0;
}

/* Ensure content flows properly after header */
.body_wrapper {
    position: relative;
    z-index: 1;
}

/* Banner area positioning */
.doc_banner_area {
    position: relative;
    z-index: 10;
    clear: both;
}

/* Remove any fixed positioning that might cause overlap */
.header:not(.scrolled) {
    position: relative !important;
    top: auto !important;
}

/* Ensure proper spacing after header */
.header+* {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Specific fix for banner after header */
.header+.doc_banner_area,
.header+* .doc_banner_area {
    margin-top: 0 !important;
    position: relative !important;
    z-index: 10 !important;
    display: block !important;
}

/* Body spacing adjustments */
body {
    padding-top: 0 !important;
}

/* Main content area spacing */
.body_wrapper {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Banner area fixes */
.doc_banner_area {
    margin-top: 0 !important;
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
    position: relative;
    z-index: 10;
    clear: both;
    width: 100%;
    display: block;
}

.doc_banner_area.single_breadcrumb {
    background: #f8fafc;
    border-bottom: 1px solid #e5e7eb;
}

/* Title and meta spacing */
.doc_banner_content .title {
    margin-bottom: 1rem;
    font-size: 2.5rem;
    font-weight: 700;
    color: #1f2937;
    line-height: 1.2;
}

.doc_banner_content .post_meta {
    margin-bottom: 0;
}

/* Force banner visibility */
.doc_banner_area {
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
}

/* Ensure banner container is visible */
.doc_banner_content {
    position: relative;
    z-index: 15;

}

/* Content area spacing */
.blog_area,
.tip_doc_area {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Fix any overlapping issues */
section:first-of-type {
    margin-top: 0 !important;
}

/* Breadcrumb spacing */
.breadcrumb_area {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

/* Header scroll effects */
.header.scrolled {
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.header.header-hidden {
    transform: translateY(-100%);
    transition: transform 0.3s ease;
}

/* Search focus effects */
.search-input-wrapper.search-focused .cmgalaxy-search-input {
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.cmgalaxy-header-main {
    padding-bottom: 1rem;
    margin-bottom: 0;
    justify-content: space-between;
}

/* Logo Section */
.cmgalaxy-logo-section {
    min-width: 220px;
}

.cmgalaxy-brand {
    font-size: 1.75rem;
    font-weight: 800;
    color: #1f2937;
    text-decoration: none;
    line-height: 1.1;
    letter-spacing: -0.025em;
}

.cmgalaxy-subtitle {
    font-size: 0.875rem;
    color: #484a61;
    display: block;
    margin-top: 2px;
    font-weight: 400;
}

/* Search Section */
.cmgalaxy-search-section {
    max-width: 600px;
    flex: 1;
}

.cmgalaxy-search-form {
    width: 100%;
}

.search-input-wrapper {
    position: relative;
    width: 100%;
}

/* Keep banner search interactive above the global search backdrop */
.header_search_form.popup-active,
.header_search_form.focused-form {
    position: relative;
    z-index: 1001;
}

.header_search_form.popup-active .cmgalaxy-search-suggestions,
.header_search_form.focused-form .cmgalaxy-search-suggestions {
    z-index: 1002;
}

.cmgalaxy-search-input {
    width: 100%;
    padding: 0.875rem 1.25rem;
    border: 1px solid #d1d5db;
    border-radius: 40px;
    font-size: 0.875rem;
    background-color: #f8fafc;
    transition: all 0.3s ease;
    color: #374151;
}

.cmgalaxy-search-input:focus {
    outline: none;
    border-color: #3b82f6;
    background-color: #ffffff;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

/* Search icon removed - no longer needed */
/*
.search-icon-left {
    position: absolute;
    left: 1rem;
    top: 50%;
    transform: translateY(-50%);
    color: #9ca3af;
    font-size: 1rem;
    z-index: 2;
}
*/

/* Actions Section */
.cmgalaxy-actions {
    min-width: 350px;
    justify-content: flex-end;
    gap: 1rem;
}

.cmgalaxy-ask-lex-btn {
    background: white;
    color: #484A61 !important;
    height: 40px;
    padding: 0 18px;
    border-radius: 40px;
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 600;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    border: 1px solid #D3D3EC;
    flex-shrink: 0;
    white-space: nowrap;
    min-width: fit-content;
}

.cmgalaxy-ask-lex-btn:hover {
    background: white !important;
    color: #484A61 !important;
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(211, 211, 236, 0.4);
}

.cmgalaxy-ask-lex-btn i {
    margin-right: 0.5rem;
}

.cmgalaxy-nav-link {
    color: #484a61;
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 500;
    transition: color 0.2s ease;
    padding: 0.5rem 0;
}

.cmgalaxy-nav-link:hover {
    color: #1f2937;
    text-decoration: none;
}

/* Navigation Menu */
.cmgalaxy-nav-menu {
    padding-top: 1.5rem;
    margin-top: 1.5rem;
    border-bottom: 1px solid #f3f4f6;
    padding-bottom: 1rem;
}

.cmgalaxy-main-nav {
    gap: 2.5rem;
    margin: 0;
    padding: 0;
}

.cmgalaxy-main-nav .nav-item {
    margin: 0;
    list-style: none;
}

.cmgalaxy-main-nav .nav-link {
    color: #484a61;
    font-size: 0.875rem;
    font-weight: 500;
    padding: 0.75rem 0;
    text-decoration: none;
    transition: all 0.2s ease;
    border-bottom: 2px solid transparent;
    position: relative;
}

.cmgalaxy-main-nav .nav-link:hover,
.cmgalaxy-main-nav .nav-item.active .nav-link,
.cmgalaxy-main-nav .nav-item.current-menu-item .nav-link {
    color: #1f2937;
    border-bottom-color: #3b82f6;
    text-decoration: none;
}

/* Override default navbar styles */
.navbar-collapse.cmgalaxy-header {
    display: none;
    flex-direction: column;
}

.navbar-collapse.cmgalaxy-header.show {
    display: flex !important;
}

/* Desktop: always show */
@media (min-width: 1025px) {
    .navbar-collapse.cmgalaxy-header {
        display: flex !important;
    }
}

.header .navbar {
    padding: 0.5rem 0;
    background: #ffffff;
    position: relative !important;
    z-index: 100;
}

/* Logo is now visible in navbar */

/* Ensure navbar doesn't float or have fixed positioning */
.navbar {
    position: relative !important;
    float: none !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
}

/* Fix any Bootstrap navbar positioning issues */
.navbar-fixed-top,
.navbar-static-top {
    position: relative !important;
}

/* Container adjustments */
.header .container,
.header .container-fluid {
    max-width: 1200px;
}

/* Large screen container width adjustment */
@media (min-width: 1400px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 100% !important;
    }

    .blog_area .container,
    .blog_area .container-lg,
    .blog_area .container-md,
    .blog_area .container-sm,
    .blog_area .container-xl,
    .blog_area .container-xxl {
        max-width: 100% !important;
    }
}

/* Global Mobile Close Button - Hidden by default, shown when menu is open */
.cmgalaxy-mobile-close {
    position: fixed;
    top: 1rem;
    right: 1rem;
    background: #f3f4f6;
    border: none;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: none !important;
    visibility: visible !important;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    z-index: 10001;
    color: #484a61;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Show close button when navbar is open */
.navbar-collapse.show+.cmgalaxy-mobile-close {
    display: flex !important;
}

/* SVG icon inside close button */
.cmgalaxy-mobile-close svg {
    width: 24px;
    height: 24px;
    stroke: currentColor;
    stroke-width: 2;
    fill: none;
    display: block;
}

.cmgalaxy-mobile-close:hover {
    background: #e5e7eb;
    color: #1f2937;
    transform: rotate(90deg);
}

.cmgalaxy-mobile-close:active {
    background: #d1d5db;
    transform: rotate(90deg) scale(0.95);
}

/* Override Bootstrap d-lg-none globally */
.navbar-collapse.show+button.cmgalaxy-mobile-close.d-lg-none {
    display: flex !important;
    visibility: visible !important;
}

/* Navbar Close Button - Inside the collapsible menu */
.navbar-close-btn {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: #f3f4f6;
    border: none;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: none;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    z-index: 10001;
    color: #4b5563;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.navbar-close-btn .close-icon {
    font-size: 32px;
    line-height: 1;
    font-weight: 300;
}

.navbar-close-btn:hover {
    background: #e5e7eb;
    color: #1f2937;
    transform: rotate(90deg);
}

.navbar-close-btn:active {
    background: #d1d5db;
    transform: rotate(90deg) scale(0.95);
}

/* Show close button on mobile when menu is open */
@media (max-width: 768px) {
    .navbar-collapse.cmgalaxy-header.show .navbar-close-btn {
        display: flex !important;
    }
}

/* Tablet and Mobile Responsive - 768px and below */
@media (max-width: 768px) {

    /* Hide the entire header section on mobile - it will be shown via toggle */
    .navbar-collapse.cmgalaxy-header {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #ffffff;
        z-index: 9999;
        overflow-y: auto;
        padding: 0;
        display: none;
    }

    .navbar-collapse.cmgalaxy-header.show {
        display: block !important;
    }

    /* Mobile close button */
    .cmgalaxy-mobile-close {
        position: fixed;
        top: 1rem;
        right: 1rem;
        background: #f3f4f6;
        border: none;
        border-radius: 50%;
        width: 44px;
        height: 44px;
        display: flex !important;
        visibility: visible !important;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: all 0.2s ease;
        z-index: 10001;
        color: #4b5563;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    }

    /* Force close button to show when menu is open */
    .navbar-collapse.show .cmgalaxy-mobile-close {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* Override Bootstrap d-lg-none class */
    button.cmgalaxy-mobile-close.d-lg-none {
        display: flex !important;
        visibility: visible !important;
    }

    .cmgalaxy-mobile-close:hover {
        background: #e5e7eb;
        color: #1f2937;
        transform: rotate(90deg);
    }

    .cmgalaxy-mobile-close:active {
        background: #d1d5db;
        transform: rotate(90deg) scale(0.95);
    }

    /* Header main section - hide on mobile menu */
    .cmgalaxy-header-main {
        display: none !important;
    }

    .cmgalaxy-header.show .cmgalaxy-header-main {
        display: none !important;
    }

    /* Navigation menu - starts at top with margin to clear close button */
    .cmgalaxy-nav-menu {
        width: 100%;
        margin-top: 80px;
        padding: 1.5rem;
        border-top: none;
        border-bottom: none;
    }

    .cmgalaxy-main-nav {
        flex-direction: column;
        gap: 0;
        text-align: center;
        width: 100%;
    }

    .cmgalaxy-main-nav .nav-item {
        width: 100%;
        border-bottom: 1px solid #f3f4f6;
    }

    .cmgalaxy-main-nav .nav-item:last-child {
        border-bottom: none;
    }

    .cmgalaxy-main-nav .nav-link {
        width: 100%;
        padding: 1rem;
        text-align: center;
        font-size: 1rem;
        display: block;
    }

    .cmgalaxy-main-nav .nav-link:hover,
    .cmgalaxy-main-nav .nav-item.active .nav-link,
    .cmgalaxy-main-nav .nav-item.current-menu-item .nav-link {
        background: #f9fafb;
        border-bottom-color: transparent;
    }

    /* Ensure proper spacing */
    .cmgalaxy-header {
        padding: 0 !important;
    }
}

/* Mobile Responsive - 991px and below */
@media (max-width: 1024px) {
    .cmgalaxy-header {
        display: none !important;
    }
}

@media (max-width: 576px) {
    .cmgalaxy-header-main {
        padding: 0.5rem 5px;
    }

    .cmgalaxy-logo-section {
        order: 2;
    }

    .cmgalaxy-actions {
        order: 3;
    }

    .cmgalaxy-brand {
        font-size: 1.5rem;
    }

    .cmgalaxy-actions {
        flex-direction: column;
        gap: 1rem;
    }

    .cmgalaxy-ask-lex-btn {
        width: 100%;
        justify-content: center;
    }

    .cmgalaxy-search-input {
        padding: 1rem;
    }

    /* Mobile spacing adjustments */
    .doc_banner_area {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
    }

    .blog_area,
    .tip_doc_area {
        padding-top: 0rem !important;
    }

    /* Mobile admin bar adjustments */
    .admin-bar body.header-sticky {
        padding-top: 46px;
        /* Mobile admin bar is smaller */
    }
}

/* Keyboard shortcut styling */
.cmgalaxy-search-input::placeholder {
    color: #9ca3af;
    font-style: italic;
}

/* Focus states for accessibility */
.cmgalaxy-nav-link:focus,
.cmgalaxy-ask-lex-btn:focus {
    outline: 2px solid #3b82f6;
    outline-offset: 2px;
}

/* Smooth transitions */
* {
    transition: all 0.2s ease;
}

/* Header shadow on scroll */
.header.sticky {
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

/* Fix post tag hover color issue */
.single_breadcrumb .post_tag a:hover {
    color: #3b82f6 !important;
}

.post_tag a:hover {
    color: #3b82f6 !important;
}

/* Fix meta-item read-time hover color issue */
.meta-item.read-time:hover,
.post_tag .meta-item:hover,
.single_breadcrumb .meta-item:hover {
    color: #3b82f6 !important;
}

.meta-item:hover {
    color: #3b82f6 !important;
}

/* Breadcrumb alignment with main content */
.page_breadcrumb,
.single_breadcrumb,
.doc_banner_area.single_breadcrumb {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.page_breadcrumb .container,
.single_breadcrumb .container,
.doc_banner_area.single_breadcrumb .container {
    max-width: 1300px !important;
    margin: 0 auto !important;
    padding-left: 15px !important;
    padding-right: 248px !important;
    width: 100% !important;
}

@media (min-width: 1400px) {

    .page_breadcrumb .container,
    .single_breadcrumb .container,
    .doc_banner_area.single_breadcrumb .container {
        max-width: 1440px !important;
    }
}

/* Align breadcrumb with main content area */
.page_breadcrumb .row,
.single_breadcrumb .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.page_breadcrumb .col-lg-9,
.page_breadcrumb .col-lg-12,
.page_breadcrumb .col-md-8,
.page_breadcrumb .col-md-12,
.single_breadcrumb .col-lg-9,
.single_breadcrumb .col-lg-12,
.single_breadcrumb .col-md-8,
.single_breadcrumb .col-md-12 {
    padding-left: 0 !important;
    padding-right: 15px;
}

/* Force breadcrumb to align with content */
nav[aria-label="breadcrumb"] {
    max-width: 1300px !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

@media (min-width: 1400px) {
    nav[aria-label="breadcrumb"] {
        max-width: 1440px !important;
    }
}

/* Editor content heading padding */
.editor-content .h6,
.editor-content h1,
.editor-content h2,
.editor-content h3,
.editor-content h4,
.editor-content h5,
.editor-content h6 {
    padding-top: 0 !important;
}

/* Hide mobile dropdown arrow icons when navbar is collapsed */
@media (max-width: 1024px) {

    /* Hide the dropdown icon in CMGALAXY header when collapsed */
    .navbar-collapse.cmgalaxy-header:not(.show) .mobile_dropdown_icon,
    .navbar-collapse.cmgalaxy-header:not(.show) .arrow_carrot-down_alt2,
    .navbar-collapse.cmgalaxy-header:not(.show) [class*="arrow_carrot"],
    .cmgalaxy-header:not(.show) i[class*="arrow"] {
        display: none !important;
    }

    /* Also hide on mobile main menu bar */
    .mobile_main_menu .mobile_dropdown_icon,
    .mobile_main_menu [class*="arrow_carrot"] {
        display: none !important;
    }

    /* Hide all arrow icons in the main navbar on mobile */
    .header .navbar .mobile_dropdown_icon,
    .header .navbar [class*="arrow_carrot"],
    .header .navbar i[class*="arrow"],
    nav#sticky .mobile_dropdown_icon,
    nav#sticky [class*="arrow_carrot"],
    .navbar-toggler~.navbar-collapse:not(.show) .mobile_dropdown_icon,
    .navbar-toggler~.navbar-collapse:not(.show) [class*="arrow_carrot"] {
        display: none !important;
    }

    /* Hide any stray arrow icons in header container on mobile */
    .header .container .mobile_dropdown_icon,
    .header .container [class*="arrow_carrot"] {
        display: none !important;
    }
}

/* Hide arrow icons after navbar toggler */
.navbar-toggler~*:not(.navbar-collapse) [class*="arrow"],
.navbar-toggler+[class*="arrow"],
.navbar>.container>[class*="arrow"] {
    display: none !important;
}

/* Remove ::after arrow from navbar toggler */
.navbar-toggler::after,
.navbar-toggler::before {
    display: none !important;
    content: none !important;
}

/* Remove ::after arrow from navbar toggler in all states */
.navbar-toggler:not(.collapsed)::after,
.navbar-toggler:not(.collapsed)::before,
.navbar-toggler[aria-expanded="true"]::after,
.navbar-toggler[aria-expanded="true"]::before {
    display: none !important;
    content: none !important;
}

/* Remove ::after arrow from navbar close button */
.navbar-close-btn::after,
.navbar-close-btn::before {
    display: none !important;
    content: none !important;
}

/* Configure mobile menu to work properly */
.mobile_main_menu {
    display: block !important;
}

/* Hide arrows from mobile menu button */
.mobile_main_menu .mobile_menu_btn::after,
.mobile_main_menu .mobile_menu_btn::before {
    display: none !important;
    content: none !important;
}

/* Mobile menu configuration */
/* Hide mobile menu on desktop */
.mobile_main_menu {
    display: none !important;
}

/* Show mobile menu on tablets and mobile devices */
@media (max-width: 1024px) {
    .navbar-toggler {
        display: none !important;
    }

    .mobile_main_menu {
        display: block !important;
    }
}

/* Navbar collapse menu styling on mobile */
@media (max-width: 1024px) {
    .navbar-collapse.cmgalaxy-header.show {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #ffffff;
        z-index: 9999;
        overflow-y: auto;
        padding: 1.5rem;
    }

    .navbar-collapse.cmgalaxy-header .cmgalaxy-header-main {
        display: none !important;
    }

    .navbar-collapse.cmgalaxy-header .cmgalaxy-nav-menu {
        margin-top: 60px;
    }
}

/* Remove padding on mobile for blog grid area */
@media (max-width: 768px) {
    .doc_blog_grid_area {
        padding: 0 !important;
    }
}

/* Ensure mobile menu button is visible on mobile/tablet */
@media (max-width: 1024px) {
    .mobile_menu_btn {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .mobile_main_menu .mobile_menu_left {
        display: flex !important;
        align-items: center !important;
    }
}

/* Force mobile menu bar to show on mobile/tablet */
@media (max-width: 1024px) {
    .mobile_main_menu {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 9999 !important;
        background: #ffffff !important;
        border-bottom: 1px solid #e5e7eb !important;
        padding: 0.5rem 0 !important;
    }

    .mobile_main_menu .container {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }

    .mobile_menu_left {
        display: flex !important;
        align-items: center !important;
        gap: 1rem !important;
    }

    .mobile_menu_btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: transparent !important;
        border: none !important;
        padding: 0.5rem !important;
        cursor: pointer !important;
    }

    .mobile_menu_btn .hamburger span {
        display: block !important;
        width: 25px !important;
        height: 2px !important;
        background: #333 !important;
        margin: 5px 0 !important;
    }
}

/* Hide main navbar on mobile and tablet, show only mobile menu bar */
@media (max-width: 1024px) {

    .header .navbar,
    nav.menu_one,
    nav#sticky,
    .navbar.sticky-nav {
        display: none !important;
    }
}

/* Adjust banner images width on mobile */
@media (min-width: 320px) and (max-width: 425px) {

    img[src*='act.png'],
    img[src*='vizulize.png'],
    img[src*='get.png'] {
        width: auto !important;
        height: auto !important;

    }
}

/* Reduce search form width and padding on mobile */
@media (max-width: 768px) {
    .stylish-search__body {
        width: 100% !important;
        max-width: 100% !important;
        padding: 8px !important;
        height: 45px !important;
        display: flex !important;
        align-items: center !important;
        gap: 0 !important;
    }

    .stylish-search__sparkle {
        flex-shrink: 0 !important;
        margin-right: 6px !important;
    }

    .stylish-search__sparkle img {
        width: 18px !important;
        height: 18px !important;
        object-fit: contain !important;
    }

    .stylish-search__input {
        max-width: 180px !important;
        flex: 1 1 auto !important;
        padding: 6px !important;
        font-size: 13px !important;
    }

    .stylish-search__submit {
        flex-shrink: 0 !important;
        padding: 6px !important;
        margin-left: auto !important;
    }

    .stylish-search__submit svg {
        width: 16px !important;
        height: 16px !important;
    }
}

/* Equal padding on cards for mobile */
@media (max-width: 768px) {

    .doc_single_info,
    .doc_category_item,
    .card,
    .post-card {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

/* Center card row on mobile with auto margins */
@media (max-width: 768px) {
    .row.g-4 {
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* Adjust vizulize.png image width on mobile and tablets */
@media (max-width: 1024px) {
    img[src*='vizulize.png'] {
        width: auto !important;
        height: auto !important;
    }
}

/* Adjust get.png image width on mobile and tablets */
@media (max-width: 1024px) {
    img[src*='get.png'] {
        width: auto !important;
        height: auto !important;
    }
}

/* Category page body spacing */
body.category .body_wrapper,
body.category.archive .body_wrapper,
body.archive.category .body_wrapper {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Ensure banner has 0 padding */
.doc_banner_area {
    padding: 0px !important;
}

/* Adjust images to 230px on smaller screens (768px and below) */
@media (max-width: 768px) {

    img[src*='act.png'],
    img[src*='vizulize.png'],
    img[src*='get.png'] {
        width: 200px !important;
        height: auto !important;
    }
}

/* Add 10px margin to category 3 page */
body.category-3 .body_wrapper,
body.category-id-3 .body_wrapper {
    margin: 10px !important;
}

/* Desktop margin-top for body_wrapper */
@media (min-width: 1025px) {
    .body_wrapper {
        margin-top: 0px !important;
        padding-top: 0px !important;
    }
}

/* Set images to 380px on desktop screens (1024px and above) */
@media (min-width: 1024px) {

    img[src*='act.png'],
    img[src*='vizulize.png'],
    img[src*='get.png'] {
        width: 380px !important;
        height: auto !important;
    }
}

/* Home CTA banner title font size */
.home-cta-banner__title {
    font-size: 28px !important;
}

/* Home CTA banner copy max width */
.home-cta-banner__copy {
    max-width: 460px !important;
}

/* Banner container margin-top */
.doc_banner_area .container {

    padding-bottom: 70px;
    padding-top: 70px;
}

/* Mobile: reduce banner padding */
@media (max-width: 1024px) {
    .doc_banner_area .container {
        padding-bottom: 20px !important;
        padding-top: 20px !important;
    }
}

/* Category main column */
.category-main-col {
    margin-top: 0 !important;
}

/* Category main column margin-top for tablets and desktop */
@media (min-width: 768px) {
    .category-main-col.category-main-with-right {
        -ms-flex: 0 0 50% !important;
        flex: 0 0 50% !important;
        max-width: 50% !important;
        width: 50% !important;
        margin-top: 0 !important;
    }
}

/* Container full width on large screens */
@media (min-width: 1200px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 100% !important;
    }
}

/* Prevent Ask Lex button color change on hover */
.cmgalaxy-ask-lex-btn:hover {
    background-color: inherit !important;
    color: inherit !important;
    border-color: inherit !important;
}


@media (min-width: 320px) and (max-width: 425px) {

    img[src*='act.png'],
    img[src*='vizulize.png'],
    img[src*='get.png'] {
        width: auto !important;
        height: auto !important;
    }
}


@media (min-width: 425px) and (max-width: 768px) {

    img[src*='act.png'],
    img[src*='vizulize.png'],
    img[src*='get.png'] {
        width: auto !important;
        height: auto !important;
    }
}

/* Adjust images to 300px on 425px-768px screens */
@media (min-width: 768px) and (max-width: 1024px) {

    img[src*='act.png'],
    img[src*='vizulize.png'],
    img[src*='get.png'] {
        width: auto !important;
        height: auto !important;
    }
}

/* Footer margin-top for category pages */
footer {
    background-color: #041543 !important;
    color: rgba(250, 250, 250, 0.5) !important;
    padding: 40px 0px !important;
    font-family: var(--font-family-primary) !important;
    margin-top: 50px;
}

/* Hide header logo on mobile and tablet devices */
@media (max-width: 1024px) {
    .header_logo img {
        display: none !important;
    }
}

/* Category left sidebar styling for mobile and tablet */
@media (max-width: 1199.98px) {
    .category-left-sidebar-col {
        border-right: none !important;
        margin-top: 50px;
    }
}

/* Blog single item margin for laptop screens */
@media (min-width: 1200px) {
    .blog_single_item {
        margin-top: 20px !important;
    }
}

/* Ensure TOC sidebar is visible on desktop */
@media (min-width: 1025px) {
    .doc-sidebar.display_none {
        display: block !important;
    }
}

/* TOC sidebar positioning for detail blog page */
.left_sidebarlist {
    margin-left: 0;
    margin-top: 0px;
}

/* Ensure TOC nav is visible and displays properly */
#docy-toc .nav-link,
#docy-toc a,
.doc-nav .nav-link,
.doc-nav a,
.nav-sidebar.doc-nav .nav-link,
.nav-sidebar.doc-nav a,
.left_sidebarlist .nav-link,
.left_sidebarlist a {
    position: relative !important;
    transition: all 0.3s ease !important;
    padding-left: 15px !important;
    color: #ffffff !important;
    background-color: transparent !important;
}

/* =============================================
   Search Input — taller height only when popup is open
   ============================================= */
.cmgalaxy-search-section.popup-active .cmgalaxy-search-input {
    height: 50px !important;
    line-height: 50px !important;
    padding: 0 1.5rem !important;
    font-size: 1rem !important;
    transition: height 0.25s ease, padding 0.25s ease !important;
}

/* =============================================
   Search Suggestion — highlight matched letters
   ============================================= */
.suggestion-title {
    font-weight: 400 !important;
}

mark.search-highlight {
    background: none !important;
    color: inherit !important;
    font-weight: 700 !important;
    padding: 0 !important;
}
