/* =========================================================
   SHARED REFERENCE HEADER
   Desktop matches supplied reference; mobile uses a proper
   hamburger navigation. Topbar remains untouched.
========================================================= */
.reference-header{
    position:relative;
    z-index:1000;
    min-height:91px;
    background:#eef6ff;
    border-bottom:1px solid #dce7f2;
}
.reference-header-inner{
    width:100%;
    min-height:91px;
    padding:0 9px 0 28px;
    display:flex;
    align-items:center;
}
.reference-logo{
    width:105px;
    height:86px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 105px;
}
.reference-logo img{
    display:block;
    width:96px;
    height:78px;
    object-fit:contain;
}
.reference-brand-name{
    text-decoration:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    margin-left:8px;
    margin-right:14px;
    color:#0b315d;
    font-family:Arial, "Noto Sans Bengali", "Hind Siliguri", sans-serif;
    font-size:22px;
    font-weight:700;
    line-height:1.25;
    white-space:nowrap;
}
.reference-brand-name:visited,
.reference-brand-name:hover,
.reference-brand-name:focus{
    color:#0b315d;
    text-decoration:none;
}
.reference-nav-toggle{
    display:none;
    width:46px;
    height:42px;
    border:1px solid #d5e0ec;
    border-radius:5px;
    background:#fff;
    color:#111;
    cursor:pointer;
    align-items:center;
    justify-content:center;
    font-size:21px;
    flex:0 0 auto;
}
.reference-nav-toggle:hover{background:#f4f8fc;}
.reference-nav{
    flex:1;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    margin-left:10px;
    white-space:nowrap;
}
.reference-nav a,
.reference-nav-btn{
    position:relative;
    color:#090909;
    text-decoration:none;
    font-family:Arial,Helvetica,sans-serif;
    font-size:16px;
    font-weight:500;
    line-height:1;
    padding:11px 0 9px;
    background:none;
    border:0;
    cursor:pointer;
}
/* Automatic underline: appears when the mouse/cursor touches a menu item */
.reference-nav a::after,
.reference-nav-btn::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:2px;
    background:#e11;
    transform:scaleX(0);
    transform-origin:center;
    transition:transform .22s ease;
}
.reference-nav a:hover,
.reference-nav-btn:hover,
.reference-nav a.active,
.reference-nav-btn.active{color:#e11;}
.reference-nav a:hover::after,
.reference-nav-btn:hover::after,
.reference-nav a.active::after,
.reference-nav-btn.active::after{
    transform:scaleX(1);
    background:#e11;
}
.nav-separator{color:#7b7b7b;font-size:13px;}
.reference-dropdown{position:relative;}
.reference-nav-btn{display:flex;align-items:center;gap:7px;}
.reference-nav-btn i{font-size:10px;}
.reference-dropdown-menu{
    position:absolute;
    top:calc(100% + 5px);
    left:50%;
    transform:translateX(-50%);
    min-width:190px;
    padding:8px 0;
    background:#fff;
    border:1px solid #e5e7eb;
    box-shadow:0 10px 25px rgba(0,0,0,.12);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:.2s ease;
}
.reference-dropdown:hover .reference-dropdown-menu,
.reference-dropdown:focus-within .reference-dropdown-menu,
.reference-dropdown.open .reference-dropdown-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}
.reference-dropdown-menu a{
    display:block;
    padding:11px 16px;
    font-size:14px;
    text-decoration:none;
}
.reference-dropdown-menu a::after{display:none;}
.reference-actions{
    display:flex;
    align-items:center;
    gap:10px;
    margin-left:auto;
}
.reference-action-btn{
    width:159px;
    min-height:68px;
    padding:8px 15px;
    border-radius:4px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    color:#fff !important;
    background:#ff0505;
    text-decoration:none;
    font-family:Arial,Helvetica,sans-serif;
    font-size:16px;
    line-height:1.75;
    transition:.2s ease;
}
.reference-action-btn:hover{
    background:#d90000;
    color:#fff !important;
    transform:translateY(-1px);
}

@media(max-width:1100px){
    .reference-brand-name{font-size:19px;margin-left:6px;margin-right:8px;}
    .reference-nav{margin-left:0;gap:7px;}
    .reference-nav a,.reference-nav-btn{font-size:14px;}
    .reference-action-btn{width:125px;}
}

/* ===================== MOBILE MENU ===================== */
@media(max-width:850px){
    .reference-header{min-height:76px;}
    .reference-header-inner{
        min-height:76px;
        padding:7px 12px;
        display:flex;
        flex-wrap:wrap;
        gap:0;
    }
    .reference-logo{
        width:82px;
        height:62px;
        flex:0 0 82px;
    }
    .reference-logo img{width:76px;height:60px;}
    .reference-brand-name{font-size:18px;margin-left:6px;margin-right:6px;max-width:190px;white-space:normal;}
    .reference-nav-toggle{
        display:flex;
        margin-left:auto;
        order:2;
    }
    .reference-actions{
        order:3;
        margin-left:10px;
        gap:6px;
    }
    .reference-action-btn{
        width:96px;
        min-height:42px;
        padding:4px 7px;
        font-size:11px;
        line-height:1.35;
    }
    .reference-nav{
        order:4;
        flex:0 0 100%;
        width:100%;
        margin:8px 0 0;
        padding:4px 0 0;
        display:none;
        flex-direction:column;
        align-items:stretch;
        justify-content:flex-start;
        gap:0;
        white-space:normal;
        background:#fff;
        border:1px solid #dbe5ef;
        border-radius:5px;
        box-shadow:0 8px 22px rgba(0,0,0,.10);
        overflow:hidden;
    }
    .reference-nav.is-open{display:flex;}
    .reference-nav a,
    .reference-nav-btn{
        width:100%;
        min-height:47px;
        padding:14px 17px 13px;
        display:flex;
        align-items:center;
        justify-content:space-between;
        text-align:left;
        font-size:14px;
        font-weight:600;
        border-bottom:1px solid #e2e8f0;
        color:#111;
    }
    .reference-nav a::after,
    .reference-nav-btn::after{
        display:none;
    }
    .reference-nav a:last-child{border-bottom:0;}
    .reference-nav a:hover,
    .reference-nav-btn:hover,
    .reference-nav a.active,
    .reference-nav-btn.active{
        color:#e11;
        background:#fff8f8;
    }
    .nav-separator{display:none;}
    .reference-dropdown{width:100%;}
    .reference-nav-btn i{transition:transform .2s ease;}
    .reference-dropdown.open .reference-nav-btn i{transform:rotate(180deg);}
    .reference-dropdown-menu{
        position:static;
        transform:none;
        min-width:0;
        width:100%;
        padding:0;
        background:#f7faff;
        border:0;
        border-top:1px solid #e2e8f0;
        box-shadow:none;
        opacity:1;
        visibility:visible;
        pointer-events:auto;
        display:none;
    }
    .reference-dropdown.open .reference-dropdown-menu{display:block;}
    .reference-dropdown-menu a{
        min-height:43px;
        padding:12px 28px;
        font-size:13px;
        font-weight:500;
        border-bottom:1px solid #e8edf3;
        color:#333;
    }
}

@media(max-width:560px){
    .reference-header-inner{padding:6px 9px;}
    .reference-logo{width:70px;flex-basis:70px;height:58px;}
    .reference-logo img{width:67px;height:55px;}
    .reference-brand-name{font-size:15px;line-height:1.15;max-width:145px;margin-left:5px;margin-right:4px;}
    .reference-nav-toggle{width:42px;height:40px;font-size:19px;}
    .reference-actions{margin-left:7px;gap:4px;}
    .reference-action-btn{width:76px;min-height:40px;font-size:10px;line-height:1.25;padding:3px;}
}
