/* ============================================================
   GLOBAL.CSS
============================================================ */

/* ==================================================
   VARIABLES
================================================== */

:root{

  --primary:#0B5FFF;
  --secondary:#071C63;

  --dark:#08112D;
  --light:#ffffff;

  --text:#5F6B85;

  --border:#E8ECF3;

  --container:1320px;

  --shadow:0 10px 30px rgba(0,0,0,.08);

  --gradient:
  linear-gradient(
  135deg,
  #0B5FFF 0%,
  #1E3A8A 100%
  );

}

/* ==========================================
   RESET
========================================== */

*,
*::before,
*::after{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

#root{
    width:100%;
    min-height:100%;
}

html{
    width:100%;
    min-height:100%;
    scroll-behavior:smooth;
    -webkit-text-size-adjust:100%;
}

body{
    width:100%;
    min-height:100%;
    font-family: "Tajawal", sans-serif;
    background:#fff;
    color:#202B45;
    line-height:1.6;
}

a{
    text-decoration:none;
    color:inherit;
}

ul,
ol{
    list-style:none;
}

/* Single, consolidated image rule (previously duplicated later in the
   file as ".image optimization" — that duplicate has been removed
   since it silently left height:auto in place while adding
   object-fit:cover, which had no visible effect and only caused
   confusion). */
img{
    display:block;
    width:100%;
    height:auto;
    object-fit:cover;
}

button,
input,
select,
textarea{
    font-family:inherit;
}

button{
    cursor:pointer;
    border:none;
    background:none;
}

/* ==========================================
   RESPONSIVE TYPOGRAPHY
========================================== */

h1{
    line-height:1.1;
}

h2{
    line-height:1.2;
}

h3,
h4,
h5,
h6{
    line-height:1.3;
}

p{
    font-size:16px;
    line-height:1.7;
    margin-bottom:10px;
}

/* ==========================================
   CONTAINER SYSTEM
========================================== */

.container{
    width:100%;
    margin:0 auto;
    padding:0 20px;
}

/* ==========================================
   4K DISPLAY (3840px)
========================================== */

@media (min-width:3000px){

    .container{
        max-width:2400px;
    }

    html{
        font-size:20px;
    }

    p{
        font-size:24px;
        line-height:2;
    }
}

/* ==========================================
   2560px
========================================== */

@media (min-width:2200px) and (max-width:2999px){

    .container{
        max-width:1800px;
    }

    html{
        font-size:18px;
    }

    p{
        font-size:20px;
        line-height:1.9;
    }
}

/* ==========================================
   1920px
========================================== */

@media (min-width:1600px) and (max-width:2199px){

    .container{
        max-width:1500px;
    }

    p{
        font-size:18px;
        line-height:1.8;
    }
}

/* ==========================================
   1440px
========================================== */

@media (min-width:1400px) and (max-width:1599px){

    .container{
        max-width:1320px;
    }

    p{
        font-size:16px;
        line-height:1.7;
    }
}

/* ==========================================
   1366px
========================================== */

@media (max-width:1366px){

    .container{
        max-width:1240px;
    }

    h2{
        font-size:36px;
        line-height:1.2;
    }

    p{
        font-size:16px;
        line-height:1.7;
    }
}

/* ==========================================
   1280px
========================================== */

@media (max-width:1280px){

    .container{
        max-width:1180px;
    }

    h2{
        font-size:32px;
        line-height:1.2;
    }

    p{
        font-size:16px;
        line-height:1.7;
    }
}

/* ==========================================
   TABLET
========================================== */

@media (max-width:1024px){

    .container{
        padding:0 22px;
    }

    html{
        font-size:15px;
    }

    p{
        font-size:15px;
        line-height:1.7;
    }
}

/* ==========================================
   768px
========================================== */

@media (max-width:768px){

    .container{
        padding:0 18px;
    }

    html{
        font-size:15px;
    }

    p{
        font-size:15px;
        line-height:1.7;
    }

    .header-right{
        display:flex;
        align-items:center;
        justify-content:flex-end;
        gap:10px;
    }

    /* Compact currency dropdown shown in the mobile header-right cluster */
    .currency-switcher{
        display:flex;
        align-items:center;
        order:1;
        margin-right:6px;
    }

    .currency-switcher select{
        width:80px;
        height:34px;
        padding:0 6px;
        border:1px solid #d8e2f5;
        border-radius:6px;
        background:#fff;
        color:#071C63;
        font-size:13px;
        font-weight:600;
        cursor:pointer;
        outline:none;
    }

    /* Hamburger — fixed to match the actual toggle class used in markup
       (previously targeted .mobile-menu-toggle / .menu-toggle /
       .navbar-toggler, none of which exist in this project; the real
       element is .mobile-toggle, defined in the HEADER section below) */
    .mobile-toggle{
        order:2;
        flex-shrink:0;
    }
}

/* ==========================================
   576px
========================================== */

@media (max-width:576px){

    .container{
        padding:0 16px;
    }

    html{
        font-size:14px;
    }

    p{
        font-size:15px;
        line-height:1.7;
    }
}

/* ==========================================
   480px
========================================== */

@media (max-width:480px){

    .container{
        padding:0 15px;
    }

    html{
        font-size:14px;
    }

    p{
        font-size:15px;
        line-height:1.7;
    }
}

/* ==========================================
   375px
========================================== */

@media (max-width:375px){

    .container{
        padding:0 14px;
    }

    html{
        font-size:13px;
    }

    p{
        font-size:14px;
        line-height:1.7;
    }
}

/* ==========================================
   320px
========================================== */

@media (max-width:320px){

    .container{
        padding:0 12px;
    }

    html{
        font-size:12px;
    }

    p{
        font-size:12px;
        line-height:1.7;
    }
}

/* ==========================================
   GLOBAL ELEMENT PROTECTION
========================================== */

section{
    width:100%;
    position:relative;
}

.swiper,
.swiper-wrapper,
.swiper-slide{
    max-width:100%;
}

.hero,
.partners,
.hosting-solutions,
.why-dnh,
.testimonials,
.cta-section,
.footer{
    width:100%;
}

.hero-image img{
    width:100%;
    height:auto;
}

/* ==========================================
   PREVENT HORIZONTAL SCROLL
========================================== */

.row,
.grid,
[class*="grid"]{
    min-width:0;
}

input,
textarea,
select{
    max-width:100%;
}

table{
    width:100%;
    display:block;
    overflow-x:auto;
}


/* ============================================================
   HEADER.CSS
============================================================ */

/* =========================
   TOP BAR
========================= */

.topbar{
    background:#071C63;
    color:#fff;
    padding:10px 0;
}

.topbar-wrapper{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.support-numbers{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:14px;
}

.support-numbers a{
    color:#fff;
    text-decoration:none;
    transition:color .3s;
}

.support-numbers a:hover{
    color:#4da3ff;
}

.topbar-actions{
    display:flex;
    align-items:center;
    gap:12px;
}

.ticket-btn{
    display:flex;
    align-items:center;
    gap:8px;
    padding:4px 8px;
    border:1px solid rgba(255,255,255,.3);
    border-radius:6px;
    color:#fff;
    text-decoration:none;
    transition:background .3s;
}

.ticket-btn:hover{
    background:#ff7a00;
}

.client-login-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:4px 8px;
    border:1px solid rgba(255,255,255,.3);
    border-radius:6px;
    color:#fff;
    text-decoration:none;
    font-weight:600;
    transition:background .3s;
}

.client-login-btn:hover{
    background:#ff7a00;
}

.title-line{
    width:80px;
    height:4px;
    background:#ff7a00 !important;
    margin:6px auto 0 !important;
    border-radius:20px;
}

/* =========================
   HEADER
========================= */

.header{
    width:100%;
    background:#fff;
    position:sticky;
    top:0;
    z-index:99999;
    border-bottom:2px solid #ececec;
}

.header-wrapper{
    height:85px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.logo{
    display:flex;
    align-items:center;
    flex-shrink:0;
}

.logo img{
    height:70px;
    width:auto;
}

/* =========================
   NAVIGATION
========================= */

.navbar{
    flex:1;
    display:flex;
    justify-content:right;
    position:relative;
}

i.fas.fa-chevron-down{
    font-size:14px;
}

.nav-menu{
    position:static;
    display:flex;
    align-items:center;
    gap:32px;
    list-style:none;
    margin:0;
    padding:0;
}

.nav-item{
    display:flex;
    align-items:center;
    gap:6px;
    font-size:16px;
    font-weight:500;
    color:#202B45;
    cursor:pointer;
    transition:color .3s;
}

.nav-item:hover{
    color:#0B5FFF;
}

.mobile-service-icon{
    width:30px;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.mobile-service-image{
    width:20px;
    height:20px;
    object-fit:contain;
    display:block;
}

.mobile-service-icon i{
    font-size:20px;
    color:var(--primary);
}

/* =========================
   MOBILE TOGGLE
========================= */

.mobile-toggle{
    display:none;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    border:none;
    background:none;
    color:#071C63;
    font-size:24px;
    cursor:pointer;
    flex-shrink:0;
}

/* =========================
   MEGA MENU
========================= */

.mega-menu{
    position:absolute;
    top:100%;
    left:50%;
    transform:translateX(-50%);
    border:1px solid #bcbcbc7a;
    width:75vw;
    background:#fff;
    border-radius:20px;
    margin-top:18px;
    overflow:hidden;
    box-shadow:0 20px 60px rgba(0,0,0,.12);
    opacity:0;
    visibility:hidden;
    transition:.3s ease;
    z-index:99999;
}

.nav-item:hover .mega-menu{
    opacity:1;
    visibility:visible;
}

.mega-service-title{
    color:#071C63;
    font-size:14px;
    font-weight:600;
    margin-bottom:4px;
    display:block;
}

.titlelist{
    color:#071C63;
    font-size:16px;
    font-weight:600;
    margin-bottom:4px;
    text-align:center;
    display:block;
}

.mega-menu-inner{
    display:grid;
    grid-template-columns:3fr 1fr;
}

.mega-menu-columns{
    padding:20px;
}

.mega-column h4{
    font-size:20px;
    font-weight:700;
    color:#071C63;
    margin-bottom:10px;
}

.mega-service{
    display:flex;
    gap:10px;
    align-items:center;
    padding:8px;
    border-radius:14px;
    text-decoration:none;
    transition:.3s;
}

.mega-service:hover{
    background:#f7faff;
    transform:translateY(-3px);
}

.mega-service-icon{
    width:50px;
    height:50px;
    border-radius:14px;
    background:#eef4ff;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.mega-service-icon img{
    width:30px;
    height:30px;
    object-fit:contain;
    display:block;
}

.mega-service-icon i{
    font-size:24px;
    color:#0B5FFF;
}

.mega-service-content h5{
    color:#071C63;
    font-size:14px;
    margin-bottom:4px;
}

.mega-service-content p{
    color:#666;
    font-size:12px;
    line-height:1.6;
}

.mega-service-arrow{
    margin-left:auto;
    color:#0B5FFF;
    font-size:14px;
    transition:.3s ease;
}

.mega-service:hover .mega-service-arrow{
    transform:translateX(5px);
}

.mega-tabs-wrapper{
    display:grid;
    grid-template-columns:0.4fr 1fr;
    min-height:300px;
    height:auto;
}

.mega-tabs{
    background:#f7f7f7;
    border-right:1px solid #bcbcbc7a;
}

.mega-tab{
    display:flex;
    align-items:center;
    gap:15px;
    padding:15px 20px;
    cursor:pointer;
    font-size:14px;
    font-weight:500;
    color:#071c63;
    border-bottom:1px solid #bcbcbc7a;
    transition:.3s;
}

.mega-tab i{
    width:24px;
    text-align:center;
    color:#0B5FFF;
}

.mega-tab:hover,
.mega-tab.active{
    background:#fff;
    color:#0B5FFF;
}

.mega-tab-content{
    padding:10px;
}

.tab-pane{
    display:none;
}

.tab-pane.active{
    display:block;
}

.mega-services{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:5px;
}

.mega-group-heading{
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.04em;
    color:#071C63;
    margin:0 0 5px;
}

.mega-group-heading:not(:first-child){
    margin-top:5px;
    padding-top:5px;
    border-top:1px solid #bcbcbc7a;
}

/* =====================
   PROMO CARD
===================== */

.mega-promo{
    background:#fff;
    padding:15px;
}

.mega-promo-card{
    height:100%;
    background:#f8faff;
    padding:20px;
    border-radius:20px;
    border:1px solid #0b5fff;
    display:flex;
    flex-direction:column;
}

.promo-icon{
    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center;
}

.promo-icon img{
    width:60%;
    max-width:260px;
    height:auto;
    display:block;
}

.mega-promo-card h3{
    color:#071C63;
    font-size:14px;
    text-align:center;
    margin-bottom:10px;
}

.mega-promo-card p{
    color:#666;
    line-height:1.8;
    margin-bottom:20px;
}

.mega-promo-card ul{
    list-style:none;
    padding:0;
    margin-bottom:10px;
}

.mega-promo-card li{
    margin-bottom:10px;
    color:#071C63;
}

.promo-btn{
    margin-top:auto;
    display:inline-block;
    background:#ff7a00;
    font-size:14px;
    color:#fff;
    padding:10px 20px;
    border-radius:10px;
    text-decoration:none;
    font-weight:600;
    text-align:center;
}

.promo-btn:hover{
    background:linear-gradient(135deg,#ff8c1a,#ff6a00);
    color:#fff;
    transform:translateY(-3px);
    box-shadow:0 12px 30px rgba(255,122,0,.4);
}

/* =====================
   BOTTOM STRIP
===================== */

.mega-footer{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    background:#fafcff;
    border-top:1px solid #bcbcbc7a;
}

.mega-feature{
    display:flex;
    align-items:center;
    gap:18px;
    padding:10px 16px;
    position:relative;
}

.mega-feature:not(:last-child)::after{
    content:"";
    position:absolute;
    right:0;
    top:50%;
    transform:translateY(-50%);
    width:1px;
    height:45px;
    background:#bcbcbc7a;
}

.mega-feature-icon{
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:28px;
    flex-shrink:0;
}

.mega-feature-icon.uptime{
    color:#0B5FFF;
}

.mega-feature-icon.support{
    color:#ff7a00;
}

.mega-feature-icon.ddos{
    color:#0B5FFF;
}

.mega-feature-icon.scale{
    color:#ff7a00;
}

.mega-feature-content{
    display:flex;
    flex-direction:column;
}

.mega-feature-content strong{
    color:#0a2c82;
    font-size:14px;
    font-weight:700;
    margin-bottom:4px;
}

.mega-feature-content span{
    color:#667085;
    font-size:12px;
}

.promo-list{
    list-style:none;
    padding:0;
    margin:0 0 30px;
}

.promo-list li{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:2px;
    color:#071C63;
    font-size:12px;
    font-weight:500;
}

.promo-list li svg{
    color:#0B5FFF;
    font-size:16px;
    flex-shrink:0;
}

/* =========================
   MOBILE MENU
========================= */

.mobile-menu{
    display:none;
    position:absolute;
    top:100%;
    left:0;
    width:100%;
    background:#fff;
    z-index:99998;
    overflow-y:auto;
    max-height:calc(100vh - 72px);
    -webkit-overflow-scrolling:touch;
}

.mobile-menu.show{
    display:block;
}

.mobile-menu-title{
    width:100%;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:18px;
    background:#fff;
    border:none;
    border-bottom:1px solid #f1f1f1;
    font-size:15px;
    font-weight:600;
    cursor:pointer;
    transition:background .3s;
    text-align:left;
}

.mobile-menu-title:hover{
    background:#f8faff;
}

.mobile-menu-section.active .mobile-menu-title{
    color:#0B5FFF;
    background:#f8faff;
}

.mobile-title-left{
    display:flex;
    align-items:center;
    gap:12px;
}

.mobile-title-left svg{
    color:#0B5FFF;
    font-size:16px;
}

.mobile-submenu{
    display:none;
    padding:12px;
    background:#f8faff;
}

.mobile-menu-section.active .mobile-submenu{
    display:block;
}

.mobile-menu-section.active .menu-arrow{
    transform:rotate(180deg);
}

.menu-arrow{
    transition:.3s ease;
}

.mobile-service-card{
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px;
    margin-bottom:10px;
    background:#fff;
    border:1px solid #edf2ff;
    border-radius:12px;
    text-decoration:none;
    transition:transform .3s, box-shadow .3s;
}

.mobile-service-card:last-child{
    margin-bottom:0;
}

.mobile-service-card:hover{
    transform:translateY(-2px);
    box-shadow:0 8px 20px rgba(11,95,255,.08);
}

.mobile-service-content h5{
    color:#071C63;
    font-size:14px;
    font-weight:600;
    margin:0 0 4px;
}

.mobile-service-content p{
    color:#777;
    font-size:12px;
    line-height:1.5;
    margin:0;
}

.mobile-contact-card{
    margin:20px;
    padding:18px;
    border-radius:12px;
    background:#f8faff;
    border:1px solid #e5eeff;
}

.mobile-contact-card p{
    margin:0 0 15px;
    color:#071C63;
    font-weight:600;
}

.mobile-contact-card a{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:12px;
    color:#444;
    text-decoration:none;
}

.mobile-contact-card a:last-child{
    margin-bottom:0;
}

.mobile-contact-card svg{
    color:#0B5FFF;
    flex-shrink:0;
}

.mobile-actions{
    padding:20px 15px;
    display:flex;
    flex-direction:column;
    gap:12px;
}

.mobile-login-btn{
    background:#0B5FFF;
    color:#fff;
    text-align:center;
    text-decoration:none;
    padding:13px;
    border-radius:8px;
    font-weight:600;
    transition:background .3s;
}

.mobile-login-btn:hover{
    background:#084de0;
}

.mobile-ticket-btn{
    border:1px solid #0B5FFF;
    color:#0B5FFF;
    text-align:center;
    text-decoration:none;
    padding:13px;
    border-radius:8px;
    font-weight:600;
    transition:background .3s, color .3s;
}

.mobile-ticket-btn:hover{
    background:#f0f5ff;
}

/* =========================
   MOBILE HOSTING TABS
========================= */

.mobile-hosting-tab{
    border:1px solid #edf2ff;
    border-radius:10px;
    margin-bottom:12px;
    overflow:hidden;
    background:#fff;
}

.mobile-hosting-tab-title{
    width:100%;
    border:none;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:14px 16px;
    cursor:pointer;
    font-size:14px;
    font-weight:600;
    color:#071C63;
}

.mobile-hosting-tab-left{
    display:flex;
    align-items:center;
    gap:10px;
}

.mobile-hosting-tab-left i{
    color:#0B5FFF;
}

.mobile-hosting-tab-content{
    display:none;
    padding:10px;
    background:#f8faff;
}

.mobile-hosting-tab.active .mobile-hosting-tab-content{
    display:block;
}

.hosting-arrow{
    transition:.3s ease;
}

.mobile-hosting-tab.active .hosting-arrow{
    transform:rotate(180deg);
}

/* =====================================
   HEADER SEARCH
===================================== */

.header-right{
    display:flex;
    align-items:center;
    gap:18px;
}

.header-search{
    display:flex;
    align-items:center;
}

.search-btn{
    width:44px;
    height:44px;
    border:none;
    background:transparent;
    color:#0B2D75;
    font-size:20px;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    border-radius:50%;
    transition:.3s ease;
}

.search-btn:hover{
    background:#F5F8FF;
    color:#FF7A00;
    transform:scale(1.05);
}

/* =====================================
   SEARCH OVERLAY
===================================== */

.search-overlay{
    position:fixed;
    inset:0;
    display:none;
    justify-content:center;
    align-items:flex-start;
    padding:70px 20px;
    background:rgba(10,15,35,.72);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    z-index:999999;
}

.search-overlay.active{
    display:flex;
    animation:fadeIn .25s ease;
}

@keyframes fadeIn{
    from{ opacity:0; }
    to{ opacity:1; }
}

.search-box{
    width:100%;
    max-width:760px;
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 25px 70px rgba(0,0,0,.18);
    animation:slideDown .25s ease;
}

@keyframes slideDown{
    from{ transform:translateY(-25px); opacity:0; }
    to{ transform:translateY(0); opacity:1; }
}

.search-input-wrapper{
    display:flex;
    align-items:center;
    gap:15px;
    padding:0 25px;
    border-bottom:1px solid #EEF2F7;
    background:#fff;
    position:sticky;
    top:0;
    z-index:5;
}

.search-input-wrapper i{
    color:#8A94A6;
    font-size:18px;
}

#globalSearch{
    flex:1;
    border:none;
    outline:none;
    background:transparent;
    height:72px;
    font-size:18px;
    color:#1F2937;
}

#globalSearch::placeholder{
    color:#9AA5B1;
}

#closeSearch{
    width:38px;
    height:38px;
    border:none;
    background:#F4F6FA;
    border-radius:50%;
    cursor:pointer;
    color:#64748B;
    transition:.3s;
}

#closeSearch:hover{
    background:#0B2D75;
    color:#fff;
}

#searchResults{
    max-height:460px;
    overflow-y:auto;
    padding:8px;
}

#searchResults::-webkit-scrollbar{
    width:7px;
}

#searchResults::-webkit-scrollbar-thumb{
    background:#C9D2E2;
    border-radius:20px;
}

.search-result-item{
    display:flex;
    align-items:center;
    gap:16px;
    padding:15px;
    text-decoration:none;
    color:#1F2937;
    border-radius:14px;
    transition:.25s;
}

.search-result-item:hover{
    background:#F8FAFD;
    transform:translateX(4px);
}

.search-result-icon{
    width:52px;
    height:52px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#EEF5FF;
    color:#0B5ED7;
    font-size:20px;
    flex-shrink:0;
}

.search-result-icon.blog{
    background:#FFF3E6;
    color:#F97316;
}

.search-result-content{
    flex:1;
    min-width:0;
}

.search-result-title{
    font-size:16px;
    font-weight:600;
    color:#1F2937;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.search-result-type{
    margin-top:5px;
    font-size:13px;
    color:#6B7280;
}

.search-arrow{
    color:#C0CAD9;
    transition:.3s;
}

.search-result-item:hover .search-arrow{
    transform:translateX(5px);
    color:#0B5ED7;
}

.search-empty{
    padding:70px 20px;
    text-align:center;
}

.search-empty i{
    font-size:52px;
    color:#0B5ED7;
    margin-bottom:20px;
}

.search-empty h4{
    font-size:20px;
    margin-bottom:10px;
    color:#1F2937;
}

.search-empty p{
    color:#6B7280;
    font-size:15px;
}

/* =====================================
   CURRENCY SWITCHER (desktop)
===================================== */

.currency-switcher{
    display:flex;
    flex-direction:column;
    gap:6px;
    margin-left:20px;
}

.currency-switcher label{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:12px;
    font-weight:600;
    color:#6B7280;
    text-transform:uppercase;
    letter-spacing:.6px;
}

.currency-switcher label i{
    color:#0B5ED7;
}

.currency-switcher select{
    min-width:60px;
    height:30px;
    padding:5px;
    border:1px solid #D9E2EC;
    border-radius:10px;
    background:#fff;
    color:#0B2D75;
    font-size:16px;
    font-weight:600;
    cursor:pointer;
    transition:.3s;
}

.currency-switcher select:hover{
    border-color:#0B5ED7;
}

.currency-switcher select:focus{
    outline:none;
    border-color:#0B5ED7;
    box-shadow:0 0 0 4px rgba(11,94,215,.12);
}

/* ==========================================
   4K SCREEN (3840px+)
========================================== */

@media (min-width:3000px){

    .header-wrapper{ height:110px; }
    .logo img{ height:90px; }
    .nav-menu{ gap:50px; }
    .nav-item{ font-size:22px; }
    .mega-menu{ width:75vw; }
    .mega-tabs-wrapper{ grid-template-columns:0.4fr 1fr; }
    .mega-tab{ font-size:24px; padding:28px 32px; }
    .mega-tab i{ font-size:24px; }
    .mega-tab-content{ padding:25px; }
    .mega-service{ padding:16px; }
    .mega-service-icon{ width:70px; height:70px; font-size:28px; }
    .mega-service-content h5{ font-size:24px; }
    .mega-service-content p{ font-size:16px; }
    .mega-promo-card{ padding:30px; }
    .mega-promo-card h3{ font-size:24px; }
    .promo-list li{ font-size:18px; }
    .promo-btn{ font-size:18px; padding:16px 32px; }
    .mega-feature{ padding:20px 30px; }
    .mega-feature-icon{ width:60px; height:60px; font-size:34px; }
    .mega-feature-content strong{ font-size:24px; }
    .mega-feature-content span{ font-size:16px; }
    .mega-group-heading{ font-size:18px; }
}

/* ==========================================
   2560px
========================================== */

@media (min-width:2200px) and (max-width:2999px){

    .header-wrapper{ height:95px; }
    .logo img{ height:80px; }
    .nav-menu{ gap:40px; }
    .nav-item{ font-size:20px; }
    .mega-menu{ width:75vw; }
    .mega-tabs-wrapper{ grid-template-columns:0.4fr 1fr; }
    .mega-tab{ font-size:20px; padding:24px 28px; }
    .mega-service-icon{ width:55px; height:55px; font-size:22px; }
    .mega-service-content h5{ font-size:20px; }
    .mega-service-content p{ font-size:15px; }
    .mega-promo-card h3{ font-size:20px; }
    .promo-list li{ font-size:15px; }
    .promo-btn{ font-size:16px; padding:14px 28px; }
    .mega-feature-content strong{ font-size:20px; }
    .mega-feature-content span{ font-size:14px; }
    .mega-group-heading{ font-size:16px; }
}

/* ==========================================
   1920px
========================================== */

@media (min-width:1600px) and (max-width:2199px){

    .mega-menu{ width:75vw; }
    .mega-tabs-wrapper{ grid-template-columns:0.4fr 1fr; }
    .mega-tab{ font-size:18px; padding:20px 24px; }
    .mega-service-content h5{ font-size:18px; }
    .mega-service-content p{ font-size:14px; }
    .mega-feature-content strong{ font-size:18px; }
    .mega-feature-content span{ font-size:13px; }
    .promo-btn{ font-size:15px; padding:12px 24px; }
    .nav-item{ font-size:18px; }
    .mega-group-heading{ font-size:16px; }
}

/* ==========================================
   1504px
========================================== */

@media (min-width:1441px) and (max-width:1599px){

    .nav-menu{ gap:22px; }
    .logo img{ height:70px; }
    .mega-menu{ width:75vw; }
    .mega-tabs-wrapper{ grid-template-columns:0.42fr 1fr; }
    .mega-tab{ font-size:16px; padding:18px 22px; }
    .mega-service-content h5{ font-size:17px; }
    .mega-service-content p{ font-size:14px; }
    .mega-feature-content strong{ font-size:17px; }
    .mega-feature-content span{ font-size:13px; }
    .promo-btn{ font-size:15px; padding:11px 22px; }
    .nav-item{ font-size:17px; }
    .mega-group-heading{ font-size:16px; }
}

/* ==========================================
   1440px
========================================== */

@media (max-width:1440px){

    .nav-menu{ gap:24px; }
    .logo img{ height:70px; }
    .mega-menu{ width:75vw; }
    .nav-item{ font-size:18px; }
    .mega-group-heading{ font-size:14px; }
}

/* ==========================================
   1366px
========================================== */

@media (max-width:1366px){

    .nav-menu{ gap:20px; }
    .logo img{ height:70px; }
    .nav-item{ font-size:16px; }
    .mega-menu{ width:80vw; }
    .mega-group-heading{ font-size:14px; }
}

/* ==========================================
   1280px
========================================== */

@media (max-width:1280px){

    .topbar{ padding:10px 0; }
    .nav-item{ font-size:16px; }
    .logo img{ height:70px; }
    .ticket-btn{ font-size:14px; padding:4px 8px; }
    .client-login-btn{ font-size:14px; padding:4px 8px; }
    .mega-menu{ width:80vw; }
    .mega-services{ grid-template-columns:repeat(2,1fr); }
}

/* ==========================================
   1200px
========================================== */

@media (max-width:1200px){

    .logo img{ height:60px; }
    .mega-menu{ width:70vw; }
    .nav-menu{ gap:18px; }
}

/* ==========================================
   TABLET & MOBILE MENU (≤1199px)
========================================== */

@media (max-width:1199px){

    .navbar{ display:none; }
    .mega-menu{ display:none !important; }
    .mobile-toggle{ display:flex; }
    .header-wrapper{ height:72px; }
    .logo img{ height:60px; }
    .header-right{ margin-left:auto; margin-right:10px; }
}

/* ==========================================
   992px
========================================== */

@media (max-width:992px){

    .mega-footer{ grid-template-columns:repeat(2,1fr); }
    .mega-feature:nth-child(2)::after{ display:none; }
    .logo img{ height:60px; }
}

/* ==========================================
   768px
========================================== */

@media (max-width:768px){

    .topbar{ padding:8px 0; }
    .topbar-wrapper{ justify-content:center; }

    .support-numbers{
        font-size:12px;
        flex-wrap:wrap;
        justify-content:center;
        gap:6px;
        text-align:center;
    }

    .topbar-actions{ display:none; }

    .header-wrapper{ height:68px; }
    .logo img{ height:50px; }
    .header-right{ gap:10px; }

    .mobile-menu{ max-height:calc(100vh - 68px); }

    .mega-footer{ grid-template-columns:1fr; }
    .mega-feature{ padding:18px 20px; }
    .mega-feature::after{ display:none; }
    .mega-feature-content strong{ font-size:18px; }
    .mega-feature-content span{ font-size:14px; }
}

/* ==========================================
   576px
========================================== */

@media (max-width:576px){

    .header-wrapper{ height:64px; }
    .logo img{ height:50px; }
    .mobile-toggle{ font-size:22px; }
    .mobile-service-card{ padding:12px; }
    .mobile-service-content h5{ font-size:13px; }
    .mobile-service-content p{ font-size:11px; }
}

/* ==========================================
   480px
========================================== */

@media (max-width:480px){

    .support-numbers{ font-size:11px; }
    .header-wrapper{ height:60px; }
    .logo img{ height:50px; }
    .mobile-toggle{ width:36px; height:36px; font-size:22px; }
    .mobile-contact-card{ margin:15px; padding:15px; }
    .mobile-actions{ padding:15px; }
}

/* ==========================================
   375px
========================================== */

@media (max-width:375px){

    .logo img{ height:40px; }
    .support-numbers{ font-size:10px; }
    .mobile-menu-title{ font-size:14px; padding:15px; }
    .mobile-service-icon{ width:30px; height:30px; font-size:14px; }
}

/* ==========================================
   320px
========================================== */

@media (max-width:320px){

    .logo img{ height:30px; }
    .mobile-toggle{ width:32px; height:32px; font-size:20px; }
    .mobile-menu-title{ font-size:13px; }
    .mobile-service-content h5{ font-size:12px; }
    .mobile-service-content p{ font-size:10px; }
}


/* ============================================================
   FOOTER.CSS
============================================================ */

.footer{
    background:#edf5ff;
    color:#071c63;
    padding:20px 10px 10px 10px;
    position:relative;
}

/* ==================================
   LINKS
================================== */

.footer-column ul li a,
.footer-column ul li a:visited,
.footer-column ul li a:link{
    color:#071c63;
    text-decoration:none;
    transition:.3s ease;
}

.footer-column ul li a:hover{
    color:#0b5fff;
    padding-left:4px;
}

.footer-column ul li a i{
    margin-right:8px;
    font-size:12px;
    color:#e98d41;
    transition:.3s;
}

.footer-column ul li a:hover i{
    transform:translateX(4px);
}

/* ==================================
   TOP
================================== */

.footer-top{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:40px;
    padding-bottom:20px;
    border-bottom:1px solid #071c63;
}

/* ==================================
   COMPANY
================================== */

.footer-logo{
    width:140px;
    margin-bottom:20px;
}

.footer-company p{
    color:#071c63;
    line-height:1.8;
    font-size:15px;
    margin-bottom:10px;
    max-width:320px;
}

.footer-social{
    display:flex;
    gap:12px;
}

.footer-social a{
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#071c63;
    color:#fff;
    transition:.3s ease;
}

.footer-social a:hover{
    background:#0B5FFF;
    transform:translateY(-4px);
}

/* ==================================
   COLUMN
================================== */

.footer-column p{
    font-size:16px;
    font-weight:700;
    margin-bottom:10px;
    color:#071c63;
}

.footer-column ul{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.footer-column a{
    color:rgba(255,255,255,.75);
    transition:.3s;
    font-size:15px;
}

.footer-column a:hover{
    color:#4DA3FF;
}

/* ==================================
   BOTTOM
================================== */

.footer-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:10px 0 0;
}

.footer-bottom p{
    color:#071c63;
    font-size:12px;
}

.footer-bottom-links{
    display:flex;
    gap:10px;
    align-items:center;
}

.footer-bottom-links a{
    color:#071c63;
    transition:.3s;
    font-size:12px;
}

.footer-bottom-links a:hover{
    color:#0b5fff;
}

/* ==================================
   FLOATING WHATSAPP
================================== */

.whatsapp-float{
    position:fixed;
    right:10px;
    bottom:100px;
    width:40px;
    height:40px;
    border-radius:50%;
    background:#25D366;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:25px;
    text-decoration:none;
    box-shadow:0 12px 30px rgba(0,0,0,.25);
    z-index:9999;
    transition:.3s ease;
}

.whatsapp-float:hover{
    transform:translateY(-5px) scale(1.05);
}

/* ==================================
   SCROLL TOP
================================== */

.scroll-top{
    position:fixed;
    right:10px;
    bottom:50px;
    width:40px;
    height:40px;
    border:none;
    border-radius:50%;
    background:#0B5FFF;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:20px;
    cursor:pointer;
    z-index:9999;
    box-shadow:0 12px 30px rgba(11,95,255,.35);
    transition:.3s ease;
}

.scroll-top:hover{
    background:#ff7a00;
    transform:translateY(-5px);
}

/* ==================================================
   RESPONSIVE FOOTER
================================================== */

/* ==========================
   3840px (4K)
========================== */

@media (min-width:3000px){

    .footer{ padding:70px 0 30px; }
    .footer-top{ gap:80px; padding-bottom:50px; }
    .footer-logo{ width:240px; }
    .footer-company p{ font-size:24px; max-width:600px; }
    .footer-column p{ font-size:28px; margin-bottom:25px; }
    .footer-column ul{ gap:20px; }
    .footer-column a{ font-size:22px; }
    .footer-social a{ width:70px; height:70px; font-size:28px; }
    .footer-bottom{ padding-top:25px; }
    .footer-bottom p,
    .footer-bottom-links a{ font-size:20px; }

    .whatsapp-float,
    .scroll-top{ width:70px; height:70px; font-size:30px; right:30px; }

    .scroll-top{ bottom:120px; }
    .whatsapp-float{ bottom:35px; }
}

/* ==========================
   2560px
========================== */

@media (min-width:2200px) and (max-width:2999px){

    .footer{ padding:50px 0 25px; }
    .footer-top{ gap:60px; }
    .footer-logo{ width:190px; }
    .footer-company p{ font-size:20px; max-width:480px; }
    .footer-column p{ font-size:22px; }
    .footer-column a{ font-size:18px; }
    .footer-bottom p,
    .footer-bottom-links a{ font-size:18px; }
}

/* ==========================
   1920px
========================== */

@media (min-width:1600px) and (max-width:2199px){

    .footer{ padding:35px 0 20px; }
    .footer-top{ gap:45px; }
    .footer-logo{ width:160px; }
}

/* ==========================
   1440px
========================== */

@media (max-width:1440px){

    .footer-top{ gap:30px; }
}

/* ==========================
   1366px
========================== */

@media (max-width:1366px){

    .footer-company p{ font-size:15px; }
    .footer-column a{ font-size:14px; }
}

/* ==========================
   1280px
========================== */

@media (max-width:1280px){

    .footer-top{
        grid-template-columns:1.3fr repeat(3,1fr);
        gap:25px;
    }

    .footer-column p{ font-size:15px; }
}

/* ==========================
   1024px
========================== */

@media (max-width:1024px){

    .footer{ padding:50px 0 20px; }

    .footer-top{
        grid-template-columns:repeat(4,1fr);
        gap:30px;
    }

    .footer-company{ grid-column:1/-1; }
    .footer-company p{ max-width:100%; }
}

/* ==========================
   768px
========================== */

@media (max-width:768px){

    .footer{ padding:45px 0 20px; }

    .footer-top{
        grid-template-columns:repeat(2,1fr);
        gap:25px;
    }

    .footer-company{ grid-column:1/-1; }
    .footer-logo{ width:130px; }
    .footer-company p{ font-size:15px; }
    .footer-column p{ font-size:17px; }
    .footer-column a{ font-size:14px; }

    .footer-bottom{
        flex-direction:column;
        text-align:center;
    }

    .footer-bottom-links{
        gap:18px;
        flex-wrap:wrap;
        justify-content:center;
    }

    .whatsapp-float{
        width:55px;
        height:55px;
        font-size:26px;
        right:20px;
        bottom:20px;
    }

    .scroll-top{
        width:50px;
        height:50px;
        right:20px;
        bottom:90px;
        font-size:18px;
    }
}

/* ==========================
   576px
========================== */

@media (max-width:576px){

    .footer-top{
        grid-template-columns:1fr;
        gap:25px;
    }

    .footer-company{ grid-column:unset; }

    .footer-column{
        border-top:1px solid rgba(7,28,99,.12);
        padding-top:20px;
    }

    .footer-column ul{ gap:10px; }

    .footer-bottom-links{
        display:flex;
        gap:12px;
    }
}

/* ==========================
   480px
========================== */

@media (max-width:480px){

    .footer{ padding:40px 0 15px; }
    .footer-logo{ width:120px; }
    .footer-company p{ font-size:14px; line-height:1.8; }
    .footer-column p{ font-size:16px; }
    .footer-column a{ font-size:14px; }
    .footer-bottom p{ font-size:13px; }
    .footer-bottom-links a{ font-size:13px; }

    .whatsapp-float{
        width:40px;
        height:40px;
        font-size:20px;
        right:10px;
        bottom:60px;
    }

    .scroll-top{
        width:40px;
        height:40px;
        right:10px;
        bottom:15px;
        font-size:18px;
    }
}

/* ==========================
   375px
========================== */

@media (max-width:375px){

    .footer{ padding:35px 0 15px; }
    .footer-company p{ font-size:13px; }
    .footer-column p{ font-size:15px; }
    .footer-column a{ font-size:13px; }
    .footer-bottom p{ font-size:12px; }
}

/* ==========================
   320px
========================== */

@media (max-width:320px){

    .footer-logo{ width:105px; }
    .footer-company p{ font-size:12px; }
    .footer-column p{ font-size:14px; }
    .footer-column a{ font-size:12px; }
    .footer-bottom-links{ gap:8px; }

    .footer-bottom p,
    .footer-bottom-links a{ font-size:11px; }

    .whatsapp-float{ width:48px; height:48px; font-size:20px; }

    .scroll-top{
        width:40px;
        height:40px;
        font-size:14px;
        bottom:70px;
    }
}