
/*
|--------------------------------------------------------------------------
| MUSAFIRCAB-V3.1.1E-GLOBAL-POLISH-SAFE
|--------------------------------------------------------------------------
|
| Final visual polish over V3.1.1C.
| No structural HTML dependency changes.
|--------------------------------------------------------------------------
*/


/* ================================================================
   GLOBAL TOKENS
   ================================================================ */

:root{

    --mc311e-red:#ed1c24;

    --mc311e-red-dark:#c9141b;

    --mc311e-navy:#071c31;

    --mc311e-navy-soft:#0a2943;

    --mc311e-text:#15273a;

    --mc311e-muted:#667085;

    --mc311e-green:#20ad69;

}


/* ================================================================
   HEADER - DESKTOP POLISH
   ================================================================ */

.mcv311c-header{

    box-shadow:
        0 6px 24px
        rgba(16,24,40,.08)!important;

}


.mcv311c-topbar{

    height:34px!important;

}


.mcv311c-topbar-inner{

    max-width:1260px;

}


.mcv311c-specialist{

    gap:8px!important;

    font-size:11px!important;

    line-height:1!important;

    letter-spacing:.005em;

}


.mcv311c-live-dot{

    width:7px!important;

    height:7px!important;

}


.mcv311c-toplinks{

    gap:22px!important;

}


.mcv311c-toplinks a{

    font-size:11px!important;

    line-height:1!important;

}


.mcv311c-navbar-inner{

    min-height:80px!important;

    max-width:1260px;

    grid-template-columns:
        200px
        1fr
        auto!important;

    gap:24px!important;

}


.mcv311c-logo img{

    max-width:184px!important;

    max-height:61px!important;

}


.mcv311c-desktop-nav{

    gap:3px!important;

}


.mcv311c-desktop-nav a{

    min-height:44px!important;

    padding:
        0 12px!important;

    font-size:12px!important;

    letter-spacing:
        -.005em;

    font-weight:750!important;

}


.mcv311c-desktop-nav a:hover{

    background:#fff1f1!important;

}


/*
|--------------------------------------------------------------------------
| Current page indicator
|--------------------------------------------------------------------------
*/

.mcv311c-desktop-nav a.mc311e-current{

    position:relative;

    background:#fff4f4!important;

    color:
        var(--mc311e-red)!important;

}


.mcv311c-desktop-nav a.mc311e-current::after{

    content:"";

    position:absolute;

    left:12px;

    right:12px;

    bottom:4px;

    height:2px;

    border-radius:3px;

    background:
        var(--mc311e-red);

}


/*
|--------------------------------------------------------------------------
| Right actions
|--------------------------------------------------------------------------
*/

.mcv311c-nav-actions{

    gap:12px!important;

}


.mcv311c-help span{

    font-size:9px!important;

}


.mcv311c-help strong{

    margin-top:3px!important;

    font-size:12px!important;

}


.mcv311c-plan{

    min-height:43px!important;

    padding:
        0 17px!important;

    border-radius:10px!important;

    font-size:11px!important;

    box-shadow:
        0 8px 18px
        rgba(237,28,36,.17)!important;

}


.mcv311c-plan span{

    font-size:15px!important;

}


/*
|--------------------------------------------------------------------------
| Scrolled state
|--------------------------------------------------------------------------
*/

.mcv311c-header.mc311e-scrolled{

    box-shadow:
        0 7px 26px
        rgba(16,24,40,.12)!important;

}


/* ================================================================
   FOOTER - READABILITY / BALANCE
   ================================================================ */

.mcv311c-footer{

    padding:
        48px 0 0!important;

}


.mcv311c-footer-top{

    grid-template-columns:
        1.30fr
        .78fr
        .78fr
        1.14fr!important;

    gap:48px!important;

}


.mcv311c-footer-brand img{

    max-width:184px!important;

    max-height:64px!important;

}


.mcv311c-footer-brand p{

    max-width:340px!important;

    margin:
        18px 0!important;

    color:#b5c1cc!important;

    font-size:12.5px!important;

    line-height:1.72!important;

}


.mcv311c-contact-lines{

    gap:9px!important;

}


.mcv311c-contact-lines a{

    font-size:12px!important;

    line-height:1.45!important;

}


.mcv311c-footer-column h3{

    margin:
        4px 0 17px!important;

    font-size:15px!important;

    letter-spacing:
        -.01em;

}


.mcv311c-footer-column > a{

    margin-bottom:11px!important;

    color:#b1bdc9!important;

    font-size:12px!important;

    line-height:1.45!important;

    transition:
        color .15s ease,
        transform .15s ease;

}


.mcv311c-footer-column > a:hover{

    color:#fff!important;

    transform:
        translateX(2px);

}


.mcv311c-office p{

    margin-bottom:16px!important;

    color:#b1bdc9!important;

    font-size:12px!important;

    line-height:1.7!important;

}


.mcv311c-secure{

    max-width:310px;

    margin:
        15px 0!important;

    padding:
        12px 13px!important;

    border-color:
        rgba(255,255,255,.12)!important;

    background:
        rgba(255,255,255,.055)!important;

}


.mcv311c-secure > span{

    width:30px!important;

    height:30px!important;

}


.mcv311c-secure strong{

    font-size:11px!important;

}


.mcv311c-secure small{

    margin-top:3px!important;

    font-size:9.5px!important;

}


/*
|--------------------------------------------------------------------------
| Compact premium footer CTA
|--------------------------------------------------------------------------
*/

.mcv311c-footer-wa{

    width:max-content!important;

    max-width:100%!important;

    min-height:43px!important;

    padding:
        0 18px!important;

    border-radius:10px!important;

    font-size:11px!important;

    box-shadow:
        0 8px 18px
        rgba(32,173,105,.12);

    transition:
        transform .15s ease,
        background .15s ease;

}


.mcv311c-footer-wa:hover{

    transform:
        translateY(-1px);

    background:#17995a!important;

    color:#fff!important;

}


.mcv311c-footer-bottom{

    min-height:70px!important;

    margin-top:40px!important;

    font-size:10px!important;

}


.mcv311c-footer-bottom a{

    font-size:10px!important;

}


/* ================================================================
   PACKAGE PAGE STICKY COMPATIBILITY
   ================================================================ */

body
.mc321-page
.mc321-nav{

    top:
        var(
            --mc311c-header-height
        )!important;

}


body
.mc321-page
.mc321-sidebar{

    top:
        calc(
            var(
                --mc311c-header-height
            )
            +
            16px
        )!important;

}


/* ================================================================
   LARGE LAPTOP
   ================================================================ */

@media(
    max-width:1180px
){

    .mcv311c-navbar-inner{

        grid-template-columns:
            180px
            1fr
            auto!important;

        gap:12px!important;

    }


    .mcv311c-logo img{

        max-width:170px!important;

    }


    .mcv311c-desktop-nav a{

        padding:
            0 8px!important;

        font-size:11px!important;

    }


    .mcv311c-help{

        display:none!important;

    }


    .mcv311c-footer-top{

        gap:34px!important;

    }

}


/* ================================================================
   TABLET / MOBILE HEADER
   ================================================================ */

@media(
    max-width:900px
){

    .mcv311c-navbar-inner{

        min-height:70px!important;

        grid-template-columns:
            1fr
            auto!important;

        gap:12px!important;

    }


    .mcv311c-logo img{

        max-width:164px!important;

        max-height:53px!important;

    }


    .mcv311c-menu-btn{

        width:44px!important;

        height:44px!important;

        min-width:44px!important;

        min-height:44px!important;

        border-radius:10px!important;

    }


    .mcv311c-mobile-nav{

        box-shadow:
            0 18px 36px
            rgba(16,24,40,.11)!important;

    }


    .mcv311c-mobile-nav
    .mcv311c-shell{

        padding:
            10px 0 17px!important;

    }


    .mcv311c-mobile-nav
    .mcv311c-shell > a{

        min-height:48px!important;

        font-size:13px!important;

    }


    .mcv311c-mobile-nav
    .mcv311c-shell > a.mc311e-current{

        padding-left:10px;

        border-radius:8px;

        background:#fff4f4!important;

        color:
            var(--mc311e-red)!important;

    }


    .mcv311c-mobile-actions{

        gap:9px!important;

        margin-top:14px!important;

    }


    .mcv311c-mobile-actions a{

        min-height:46px!important;

        font-size:11px!important;

    }


    .mcv311c-footer-top{

        grid-template-columns:
            1fr
            1fr!important;

        gap:
            32px 40px!important;

    }


    .mcv311c-footer-brand{

        grid-column:
            1 / -1!important;

    }


    .mcv311c-footer-brand p{

        max-width:600px!important;

    }

}


/* ================================================================
   MOBILE FOOTER
   ================================================================ */

@media(
    max-width:560px
){

    .mcv311c-footer{

        padding:
            36px 0 0!important;

    }


    .mcv311c-footer-top{

        grid-template-columns:
            1fr!important;

        gap:26px!important;

    }


    .mcv311c-footer-brand{

        grid-column:auto!important;

    }


    .mcv311c-footer-brand img{

        max-width:168px!important;

    }


    .mcv311c-footer-brand p{

        font-size:12.5px!important;

    }


    .mcv311c-footer-column h3{

        margin-bottom:13px!important;

        font-size:14px!important;

    }


    .mcv311c-footer-column > a{

        margin-bottom:9px!important;

        font-size:12px!important;

    }


    .mcv311c-footer-wa{

        width:100%!important;

        min-height:45px!important;

    }


    .mcv311c-footer-bottom{

        min-height:auto!important;

        margin-top:28px!important;

        padding:
            17px 0!important;

        font-size:9.5px!important;

    }


    .mcv311c-footer-bottom a{

        font-size:9.5px!important;

    }

}


/* ================================================================
   VERY SMALL MOBILE
   ================================================================ */

@media(
    max-width:390px
){

    .mcv311c-logo img{

        max-width:150px!important;

    }


    .mcv311c-menu-btn{

        width:42px!important;

        height:42px!important;

        min-width:42px!important;

        min-height:42px!important;

    }

}
