.elementor-108 .elementor-element.elementor-element-10fe0fe{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-108 .elementor-element.elementor-element-10fe0fe.e-con{--align-self:center;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-6863058 */<style>
    /* =========================================
       VARIABLES & RESET
       ========================================= */
    :root {
        --ts-primary: #0A1F63;
        --ts-accent: #E61B2E;
        --ts-bg: #FFFFFF;
        --ts-text: #222222;
        --ts-light-bg: #F1F5F9; /* Premium soft gray */
        --ts-border: #E2E8F0;
        --ts-font-heading: 'Poppins', sans-serif;
        --ts-font-body: 'Inter', sans-serif;
        --ts-header-height: 84px;
    }

    * {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
    }

    /* =========================================
       HEADER WRAPPER & EDGE PADDING
       ========================================= */
    .ts-header {
        position: sticky;
        top: 0;
        width: 100%;
        background-color: var(--ts-bg);
        z-index: 9999;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
        transition: box-shadow 0.3s ease, height 0.3s ease;
        height: var(--ts-header-height);
        display: flex;
        align-items: center;
        font-family: var(--ts-font-body);
        box-sizing: border-box !important;
    }

    .ts-header.is-scrolled {
        box-shadow: 0 4px 20px rgba(10, 31, 99, 0.06);
    }

    .ts-container {
        width: 100% !important;
        max-width: 1440px !important; 
        margin: 0 auto !important;
        padding: 0 48px !important; /* Premium breathing room on edges */
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        gap: 40px !important; /* Unbreakable barrier between Logo, Nav, and Search */
        box-sizing: border-box !important;
    }

    /* =========================================
       LOGO
       ========================================= */
    .ts-logo {
        display: flex;
        align-items: center;
        flex-shrink: 0;
        text-decoration: none;
    }

    .ts-logo img {
        width: 220px;
        height: auto;
        display: block;
    }

    /* =========================================
       DESKTOP NAVIGATION
       ========================================= */
    .ts-nav-wrapper {
        display: flex;
        align-items: center;
        margin-right: auto; /* Pushes the search bar cleanly to the far right */
    }

    .ts-nav-list {
        display: flex;
        list-style: none;
        gap: 32px; /* Airy, premium spacing */
        margin: 0;
        padding: 0;
    }

    .ts-nav-item {
        position: relative;
        display: flex;
        align-items: center;
        height: var(--ts-header-height);
    }

    .ts-nav-link {
        color: var(--ts-primary);
        text-decoration: none;
        font-size: 15px;
        font-weight: 500;
        display: flex;
        align-items: center;
        gap: 6px;
        transition: color 0.2s ease;
        cursor: pointer;
        white-space: nowrap; /* Prevents text from breaking into two lines */
        letter-spacing: 0.2px;
    }

    .ts-nav-link:hover,
    .ts-nav-item:hover > .ts-nav-link {
        color: var(--ts-accent);
    }

    .ts-dropdown-icon {
        width: 12px;
        height: 12px;
        min-width: 12px; /* Prevents arrow from squishing */
        fill: none;
        stroke: currentColor;
        stroke-width: 2.5;
        stroke-linecap: round;
        stroke-linejoin: round;
        transition: transform 0.3s ease;
    }

    .ts-nav-item:hover .ts-dropdown-icon {
        transform: rotate(180deg);
    }

    /* Desktop Dropdown */
    .ts-dropdown-menu {
        position: absolute;
        top: 100%;
        left: 0;
        background-color: var(--ts-bg);
        min-width: 280px;
        box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
        border-top: 3px solid var(--ts-accent);
        border-radius: 0 0 8px 8px;
        opacity: 0;
        visibility: hidden;
        transform: translateY(15px);
        transition: all 0.3s ease;
        list-style: none;
        padding: 12px 0;
        z-index: 100;
    }

    .ts-nav-item:hover .ts-dropdown-menu {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .ts-dropdown-menu li a {
        display: block;
        padding: 12px 24px;
        color: var(--ts-text);
        text-decoration: none;
        font-size: 14px;
        font-weight: 500;
        transition: background-color 0.2s ease, color 0.2s ease, padding-left 0.2s ease;
        white-space: nowrap;
    }

    .ts-dropdown-menu li a:hover {
        background-color: var(--ts-light-bg);
        color: var(--ts-accent);
        padding-left: 28px; /* Editorial hover effect */
    }

    /* =========================================
       SEARCH BAR & RIGHT ACTIONS (ELEMENTOR ARMOR)
       ========================================= */
    .ts-header-right {
        display: flex !important;
        align-items: center !important;
        margin-left: auto !important;
        flex-shrink: 0 !important; /* Protects search bar from getting squished */
        gap: 20px !important;
    }

    /* Force Elementor to drop its default form margins */
    .ts-header-right form.ts-search-form {
        display: flex !important;
        align-items: center !important;
        position: relative !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
    }

    /* Bulletproof Icon Size & Position */
    .ts-header-right .ts-search-icon {
        position: absolute !important;
        left: 16px !important;
        width: 18px !important;
        height: 18px !important;
        color: #64748B !important;
        pointer-events: none !important; 
        z-index: 2 !important;
        display: block !important;
        margin: 0 !important;
    }

    /* Armor-plated Input Field */
    .ts-header-right input.ts-search-input {
        width: 260px !important;
        height: 44px !important;
        padding: 0 20px 0 44px !important; /* Protects text from hitting icon */
        border: 1px solid transparent !important;
        border-radius: 50px !important;
        font-family: var(--ts-font-body) !important;
        font-size: 14px !important;
        color: var(--ts-text) !important;
        background-color: var(--ts-light-bg) !important;
        outline: none !important;
        box-sizing: border-box !important;
        transition: all 0.3s ease !important;
        position: relative !important;
        z-index: 1 !important;
        margin: 0 !important;
        box-shadow: none !important;
        line-height: normal !important;
    }

    .ts-header-right input.ts-search-input::placeholder {
        color: #94A3B8 !important;
        opacity: 1 !important;
    }

    .ts-header-right input.ts-search-input:focus {
        width: 300px !important; /* Expands smoothly */
        border-color: var(--ts-primary) !important;
        background-color: var(--ts-bg) !important;
        box-shadow: 0 0 0 4px rgba(10, 31, 99, 0.06) !important;
    }

    /* =========================================
       MOBILE MENU CONTROLS
       ========================================= */
    .ts-close-btn {
        display: none; /* Hidden on desktop */
    }

    .ts-hamburger {
        display: none;
        background: none;
        border: none;
        color: var(--ts-primary);
        cursor: pointer;
        padding: 4px;
    }

    .ts-hamburger svg {
        width: 32px;
        height: 32px;
        fill: currentColor;
    }

    .ts-overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background-color: rgba(10, 31, 99, 0.7);
        backdrop-filter: blur(4px);
        z-index: 9998;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, visibility 0.3s ease;
    }

    .ts-overlay.is-active {
        opacity: 1;
        visibility: visible;
    }

    /* =========================================
       RESPONSIVE DESIGN (TABLETS & MOBILE)
       ========================================= */
    
    /* Tablet & Small Laptops (Drawer Trigger) */
    @media (max-width: 1180px) {
        .ts-container {
            padding: 0 32px !important; /* Reduce edge padding slightly */
        }
        
        .ts-nav-wrapper {
            position: fixed;
            top: 0;
            right: -360px;
            width: 360px;
            max-width: 90vw;
            height: 100vh;
            background-color: var(--ts-bg);
            flex-direction: column;
            align-items: flex-start;
            padding: 80px 0 40px 0;
            box-shadow: -5px 0 30px rgba(0, 0, 0, 0.15);
            transition: right 0.4s cubic-bezier(0.77, 0, 0.175, 1);
            z-index: 10000;
            overflow-y: auto;
            margin-right: 0;
        }

        .ts-nav-wrapper.is-active {
            right: 0;
        }

        .ts-nav-list {
            flex-direction: column;
            width: 100%;
            gap: 0;
        }

        .ts-nav-item {
            width: 100%;
            height: auto;
            flex-direction: column;
            align-items: flex-start;
            border-bottom: 1px solid var(--ts-border);
        }

        .ts-nav-link {
            width: 100%;
            padding: 18px 24px;
            justify-content: space-between;
            font-size: 16px;
            font-family: var(--ts-font-heading);
            font-weight: 600;
            white-space: normal; 
        }

        /* Mobile Accordion Dropdown */
        .ts-dropdown-menu {
            position: static;
            width: 100%;
            box-shadow: none;
            border-top: none;
            border-radius: 0;
            opacity: 1;
            visibility: visible;
            transform: none;
            background-color: var(--ts-light-bg);
            display: none;
            padding: 0;
        }

        .ts-dropdown-menu li a {
            padding: 14px 24px 14px 40px;
            border-bottom: 1px solid var(--ts-border);
            white-space: normal;
        }
        .ts-dropdown-menu li a:hover {
            padding-left: 40px;
        }
        .ts-dropdown-menu li:last-child a {
            border-bottom: none;
        }

        .ts-hamburger {
            display: block; /* Show hamburger menu */
        }

        .ts-close-btn {
            display: block; /* Show X button ONLY in drawer */
            position: absolute;
            top: 20px;
            right: 24px;
            background: none;
            border: none;
            color: var(--ts-primary);
            font-size: 36px;
            cursor: pointer;
            line-height: 1;
            transition: color 0.2s ease;
        }
        .ts-close-btn:hover {
            color: var(--ts-accent);
        }
    }

    /* Mobile Phones - Completely hide search bar */
    @media (max-width: 992px) {
        .ts-header-right form.ts-search-form {
            display: none !important;
        }
        .ts-logo img {
            width: 200px;
        }
    }
    
    @media (max-width: 768px) {
        .ts-container {
            padding: 0 20px !important; /* Mobile edge padding */
        }
    }

    @media (max-width: 480px) {
        .ts-logo img {
            width: 170px;
        }
    }
</style>/* End custom CSS */