
/* Global header */
#tmt-global-header{
    width:100%;
    background:#fff;
    border-bottom:1px solid #e7edf4;
    position:relative;
    z-index:9998;
    font-family:inherit;
}
#tmt-global-header *{box-sizing:border-box}

.tmt-global-header-inner{
    max-width:1290px;
    min-height:78px;
    margin:0 auto;
    padding:0 24px;
    display:flex;
    align-items:center;
    gap:28px;
}

.tmt-header-brand{
    display:inline-flex;
    align-items:center;
    gap:12px;
    color:#101827 !important;
    text-decoration:none !important;
    flex:0 0 auto;
}
.tmt-header-mark{
    width:40px;
    height:40px;
    border-radius:11px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#287df4;
    color:#fff;
    font-size:21px;
    font-weight:700;
    line-height:1;
}
.tmt-header-wordmark{
    font-size:22px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:-.02em;
    white-space:nowrap;
}
.tmt-header-wordmark span{
    color:#287df4;
}

.tmt-primary-nav{
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:4px;
}
.tmt-header-link{
    display:inline-flex;
    align-items:center;
    min-height:42px;
    padding:0 10px;
    border-radius:8px;
    color:#26364b !important;
    text-decoration:none !important;
    font-size:14px;
    font-weight:700;
    white-space:nowrap;
}
.tmt-header-link:hover,
.tmt-header-link:focus,
.tmt-header-link.is-active{
    color:#126fb3 !important;
    background:#f0f7fc;
}

.tmt-header-cta{
    display:inline-flex;
    min-height:48px;
    padding:0 20px;
    align-items:center;
    justify-content:center;
    border-radius:10px;
    background:#2563eb;
    color:#fff !important;
    text-decoration:none !important;
    font-size:14px;
    font-weight:800;
    white-space:nowrap;
}
.tmt-header-cta:hover,
.tmt-header-cta:focus{
    background:#1d4ed8;
    color:#fff !important;
}

.tmt-menu-toggle{
    display:none;
    width:44px;
    height:44px;
    margin-left:auto;
    padding:10px;
    border:1px solid #dde5ed;
    border-radius:9px;
    background:#fff;
    cursor:pointer;
}
.tmt-menu-toggle span{
    display:block;
    height:2px;
    margin:5px 0;
    background:#1d2d40;
    border-radius:2px;
}

/* Any header positively identified by JS as an older site header */
.tmt-old-site-header,
.tmt-old-site-header *{
    display:none !important;
}
.tmt-old-site-header{
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    overflow:hidden !important;
}


.tmt-nav-dropdown{
    position:relative;
    display:flex;
    align-items:center;
}
.tmt-nav-dropdown.is-active > .tmt-dropdown-parent{
    color:#126fb3 !important;
    background:#f0f7fc;
}
.tmt-dropdown-caret{
    font-size:11px;
    margin-left:5px;
    transition:transform .18s ease;
}
.tmt-dropdown-menu{
    position:absolute;
    top:calc(100% + 8px);
    left:50%;
    min-width:190px;
    transform:translateX(-50%) translateY(4px);
    padding:8px;
    background:#fff;
    border:1px solid #e1e8ef;
    border-radius:12px;
    box-shadow:0 18px 45px rgba(15,23,42,.14);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .15s ease, transform .15s ease, visibility .15s ease;
    z-index:100000;
}
.tmt-dropdown-menu:before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:-10px;
    height:10px;
}
.tmt-dropdown-menu a{
    display:block;
    padding:11px 12px;
    border-radius:8px;
    color:#26364b !important;
    text-decoration:none !important;
    font-size:14px;
    font-weight:700;
    white-space:nowrap;
}
.tmt-dropdown-menu a:hover,
.tmt-dropdown-menu a:focus{
    color:#126fb3 !important;
    background:#f0f7fc;
}
.tmt-nav-dropdown:hover .tmt-dropdown-menu,
.tmt-nav-dropdown:focus-within .tmt-dropdown-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateX(-50%) translateY(0);
}
.tmt-nav-dropdown:hover .tmt-dropdown-caret,
.tmt-nav-dropdown:focus-within .tmt-dropdown-caret{
    transform:rotate(180deg);
}

@media(max-width:1100px){
    .tmt-global-header-inner{gap:18px}
    .tmt-header-link{font-size:13px;padding:0 7px}
    .tmt-header-cta{padding:0 14px}
}

@media(max-width:960px){
    .tmt-global-header-inner{
        min-height:70px;
        position:relative;
        padding:0 18px;
    }
    .tmt-menu-toggle{display:block}
    .tmt-header-cta{display:none}
    .tmt-primary-nav{
        display:none;
        position:absolute;
        top:70px;
        left:14px;
        right:14px;
        margin:0;
        padding:10px;
        background:#fff;
        border:1px solid #e1e8ef;
        border-radius:12px;
        box-shadow:0 18px 45px rgba(15,23,42,.14);
        flex-direction:column;
        align-items:stretch;
        z-index:99999;
    }
    .tmt-global-header.is-open .tmt-primary-nav{display:flex}
    .tmt-header-link{
        min-height:46px;
        padding:0 14px;
        justify-content:flex-start;
        font-size:15px;
    }

    .tmt-nav-dropdown{
        display:block;
        width:100%;
    }
    .tmt-nav-dropdown .tmt-dropdown-parent{
        width:100%;
        justify-content:flex-start;
    }
    .tmt-dropdown-menu{
        position:static;
        transform:none !important;
        opacity:1;
        visibility:visible;
        pointer-events:auto;
        min-width:0;
        width:100%;
        padding:0 0 4px 14px;
        border:0;
        box-shadow:none;
        background:transparent;
    }
    .tmt-dropdown-menu:before{display:none}
    .tmt-dropdown-menu a{
        padding:10px 14px;
        font-size:14px;
        color:#52657c !important;
    }
    .tmt-dropdown-caret{display:none}
}

@media(max-width:480px){
    .tmt-header-wordmark{font-size:18px}
    .tmt-header-mark{width:36px;height:36px;font-size:19px}
}


/*
 * The Car, Motorcycle, HGV/LGV and Bus/PCV generator plugins use this
 * exact standalone header class in their page templates. The Global Header
 * supersedes it site-wide.
 */
body .tmtc-header{
    display:none !important;
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    overflow:hidden !important;
}

/* Also suppress any old standalone Learn/Legal header left by an older cached build. */
body .tmtc-site-head,
body .tmtlegal-site-head{
    display:none !important;
}
