/* Global Styles */
body {
    font-family: "Sora", sans-serif !important;
    font-size: 16px;
}
h1, h2, h3, h4, h5, h6, .title, .subtitle, .heading, .subheading {
    font-family: "Manrope", sans-serif !important;
}
h1, h2{
    font-weight: 800;
    letter-spacing: -4%;
    line-height: 1.2;
}
p{
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 1%;
}
.subtitle, .subheading{
    font-weight: 600;
    letter-spacing: -2%;
}
.heading, .title{
    font-weight: 700;
    letter-spacing: -2%;
}
.content-wrapper{
    max-width: 1280px;
    margin: 0 auto;
    width: 100%;
}
.flex{
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
}
.flex.no-wrap{
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}
.flex.wrap{
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.flex.column{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.flex.row{
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}
.flex.center{
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.flex.align-start{
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.flex.align-end{
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}
.flex.space-between{
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.flex.space-around{
    -ms-flex-pack: distribute;
    justify-content: space-around;
}
.flex.space-evenly{
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
}
@media (max-width: 768px) {
    html.no-scroll {
        overflow: hidden;
    }
}
/* Header Styles */
.top-menu{
    background-color: #415465;
    height:100%;
    overflow: hidden;
    transition: all 0.2s ease-in-out;
    max-height: 40px;
}
.top-menu ul{
    list-style: none;
    margin: 0;
    padding: 0;
}
.top-menu ul li{
    display: inline-block;
}
.top-menu ul li a{
    color: #f7f7f7;
    text-decoration: none;
    font-size: 12px;
    padding: 4px 8px;
    display:block;
}
.top-menu ul li a:hover, .top-menu ul li a:focus, .top-menu ul li a:active, .top-menu ul li.current-menu-item a{
    color: #415465;
    background: #f7f7f7;
}
.is-scrolling .top-menu{
    max-height:0px;
}
.main-nav {
    background-color: #f7f7f7;
}
.main-nav__content{
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 12px 8px;
}
.main-nav__right {
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.main-nav__right{
    -webkit-box-flex: 0;
    -ms-flex: 0 0 70%;
    flex: 70%;
}
.main-nav__left{
    -webkit-box-flex: 0;
    -ms-flex: 0 0 30%;
    flex: 30%;
}
.main-nav__search {
    padding: 0 12px;
}
.main-nav__search span {
    display: none;
}
a.main-nav__quick-links__icon, .nav_icon {
    padding: 0 16px;
    border-right: thin solid #E2E8F0;
    line-height: 1.2;
}
.main-nav a.main-nav__quick-links__icon, .main-nav a.nav_icon {
    color: #415465;
}
.cart-container {
    position: relative;
}
a.main-nav__quick-links__icon:hover {
    color: #2980b9;
}
a.main-nav__quick-links__icon:last-child, .nav_icon:last-child, .nav_icon.cart-icon, .main-nav__search.nav_icon {
    border-right: none;
}
.nav_icon span.cart-count {
    position: absolute;
    top: -10px;
    right: -10px;
    background: #ee2e24;
    color: #fff;
    border-radius: 50%;
    font-size: 8px;
    width: 14px;
    height: 14px;
}
a.main-nav__quick-links__icon span, .nav_icon span {
    font-size: 12px;
    margin-top: 4px;
    font-weight: 600;
    width: 100%;
    text-align: center;
    white-space: nowrap;
    color: #415465;
}
a.main-nav__quick-links__icon i {
    font-size: 16px;
}
.main-nav__logo img {
    display: block;
    height: auto;
    max-width: 225px;
    width: 100%;
}
.dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input {
    background-color: transparent;
    border: thin solid #E2E8F0;
    border-radius: 24px !important;
}
.main-nav__search{
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 50%;
}
.dgwt-wcas-open-pirx.dgwt-wcas-overlay-mobile-on .dgwt-wcas-om-bar button.dgwt-wcas-om-return path, .dgwt-wcas-style-pirx .dgwt-wcas-close:not(.dgwt-wcas-inner-preloader) path, .dgwt-wcas-style-pirx .dgwt-wcas-voice-search svg path, .dgwt-wcas-style-pirx.dgwt-wcas-has-submit .dgwt-wcas-search-submit svg path{
    fill: #686868;
}
#navigation {
    position: fixed;
    z-index: 999;
    width: 100%;
}
body.woocommerce-checkout #navigation {
    position: static;
}
body.woocommerce-checkout .hire-rates-mega-menu, body.woocommerce-checkout .ts-header-banner {
    display: none;
}
body.woocommerce-checkout .main-nav__right {
    display: none;
}
body.woocommerce-checkout .main-nav__left {
    display:flex;
    justify-content: center;
}
/* Search Overrides */
.main-nav .dgwt-wcas-search-wrapp{
    margin:0px !important;
    max-width: 100% !important;
}
.dgwt-wcas-search-icon{
    display:block;
    width: 100%;
}
svg.dgwt-wcas-ico-magnifier-handler {
    height: 16px;
    width: 100%;
    max-width: initial;
    fill: #415465;
}
@media (max-width: 992px) {
    .main-nav__search span {
        display: block;
    }
    .dgwt-wcas-style-pirx.dgwt-wcas-style-pirx-compact .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input{
        padding:0px;
    }
    .dgwt-wcas-style-pirx.dgwt-wcas-style-pirx-compact .dgwt-wcas-sf-wrapp{
        padding: 0px;
    }
    .main-nav__search{
        flex:none;
    }
    .main-nav__search.nav_icon {
        border-right: thin solid #E2E8F0;
    }
    a.js-dgwt-wcas-enable-mobile-form.dgwt-wcas-enable-mobile-form {
        height: 40px;
    }
}
@media (max-width: 768px) {
    .main-nav__content{
        padding: 8px 4px;
    }
    .main-nav__quick-links__icon.depots-icon,.main-nav__quick-links__icon.contact-icon,.main-nav__quick-links__icon.account-icon{
        display: none;
    }
    a.main-nav__quick-links__icon, .nav_icon{
        padding: 4px 12px;
    }
    .main-nav__right, .main-nav__left{
        -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
        flex: 50%;
    }
    .main-nav__logo {
        padding: 8px 12px;
    } 
    .ts-header-banner{
        display: none;
    }
}
/* Mega Menu Styles */
nav.hire-rates-mega-menu {
    background-color: #2980b9;
}
#navigation .hire-rates-mega-menu__panel a {
    color: #474747;
}
.hire-rates-mega-menu.light a.hire-rates-mega-menu__top-link {
    color: #fff;
    -ms-flex-line-pack: center;
    align-content: center;
    gap: 0.5rem;
    font-family: "Manrope", sans-serif;
}
li.hire-rates-mega-menu__top-item:hover a.hire-rates-mega-menu__top-link {
    background: white;
    color: #474747;
}
span.hire-rates-mega-menu__panel-title-cta {
    font-size: 12px;
    margin-left: 8px;
}
.hire-rates-mega-menu { z-index: 10; }
.hire-rates-mega-menu ul { list-style: none; margin: 0; padding: 0; }
.hire-rates-mega-menu__top-level { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.hire-rates-mega-menu__top-link { display: inline-block; padding: 12px 16px; font-weight: 600; text-decoration: none; }
.hire-rates-mega-menu__panel {
    position: absolute;
    z-index: 15;
    left: 0;
    right: 0;
    width: 100%;
    min-width: 680px;
    background: #fff;
    border: 1px solid #E2E8F0;
    padding: 8px;
    box-shadow: 0 18px 40px rgba(0,0,0,0.12);
    display: none;
}
.hire-rates-mega-menu__wrapper {
    max-width: 1280px;
    margin: 0 auto;
}
.hire-rates-mega-menu__top-item:hover > .hire-rates-mega-menu__panel,
.hire-rates-mega-menu__top-item:focus-within > .hire-rates-mega-menu__panel { display: block; }
.hire-rates-mega-menu__sub-level {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1rem 1.25rem;
}
.hire-rates-mega-menu__sub-link {
    font-weight: 700;
    text-decoration: none;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 8px;
    border-bottom: thin solid #E2E8F0;
    width: 100%;
    padding: 8px 4px;
    gap: 0.5rem;
}
.hire-rates-mega-menu__grandchildren li { padding-top: 2px; }
.hire-rates-mega-menu__grandchildren a {
    text-decoration: none;
    display: block;
    padding: 4px 0px;
}
ul.hire-rates-mega-menu__grandchildren {
    padding-left: 12px;
    letter-spacing: 2%;
    font-size: 14px;
    font-weight: 400;
}
ul.hire-rates-mega-menu__grandchildren li{
    transition: padding 0.2s ease-in-out;
    line-height: 1.4;
}
ul.hire-rates-mega-menu__grandchildren li:hover {
    border-left: 5px solid #E2E8F0;
    padding-left: 4px;
    margin-left: -10px;
}
.hire-rates-mega-menu__panel-title {
    font-size: 22px;
    padding: 20px 12px;
    font-weight: 700;
}
li.hire-rates-mega-menu__sub-item {
    padding: 0px 4px;
    margin-bottom: 20px;
}
.hire-rates-mega-menu__sub-item-image {
    max-height: 200px;
    overflow: hidden;
    width: 100%;
    position: relative;
    height: 200px;
    border-radius: 10px;
    margin-bottom: 8px;
}
.hire-rates-mega-menu__sub-item-image img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.hire-rates-mega-menu__sub-item-promo-image{
    border-radius: 10px;
    overflow: hidden;
}
.hire-rates-mega-menu__sub-item-promo-image img{
    width:100%;
    display:block;
}
/* Mobile Menu Styles */
.hire-rates-mega-menu__mobile-header {
    border-bottom: 1px solid #eaeaea;
}
.hire-rates-mega-menu__mobile-logo{
    width:100%;
    text-align: center;
    padding: 12px 0;
}
.hire-rates-mega-menu__mobile-close {
    position: absolute;
    right: 0;
    padding: 16px;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}
ul.hire-rates-mega-menu__mobile-sub-level {
    display: none;
    background: #f5f5f5;
    border-left: 12px solid #E2E8F0;
}

.hire-rates-mega-menu__mobile-container {
    display: none;
}
li.hire-rates-mega-menu__mobile-item {
    border-bottom: thin solid #E2E8F0;
    width: 100%;
}
li.hire-rates-mega-menu__mobile-item a{
    padding: 20px 12px;
    display: block;
}
.hire-rates-mega-menu__mobile .menu-quick-links-container a{
    padding: 16px 12px;
    font-size: 14px;
}
li.hire-rates-mega-menu__mobile-item > a {
    font-weight: 500;
}
.hire-rates-mega-menu__mobile-links {
    padding: 4px;
}
.hire-rates-mega-menu__mobile-links a.hire-rates-mega-menu__mobile-link {
    padding: 12px 8px;
    width: 100%;
    color: #fff;
    text-align: center;
    border-right: 1px solid #E2E8F0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 8px;
    line-height: 1;
}
.hire-rates-mega-menu__mobile-link span {
    white-space: nowrap;
    font-size: 12px;
}
.hire-rates-mega-menu__mobile-links a.hire-rates-mega-menu__mobile-link:last-child {
    border-right: none;
}
.hire-rates-mega-menu__mobile-links {
    background: #0077be;
}
a.main-nav__quick-links__icon.menu-icon{
    display: none;
}
li.hire-rates-mega-menu__mobile-item a.hire-rates-mega-menu__mobile-sub-link {
    font-size: 14px;
}
li.hire-rates-mega-menu__mobile-sub-item {
    border-bottom: 1px solid #e2e8f0;
}
li.mobile-item-title {
    text-align: center;
    font-size: 14px;
    padding: 4px;
    background: #f7f7f7;
    color: #415465;
    font-weight: 600;
    opacity: 0.7;
}
/* Tablet and Mobile Styles */
@media (max-width: 1024px) {
    a.main-nav__quick-links__icon.menu-icon {
        display: flex;
    }
    nav.hire-rates-mega-menu {
        position: fixed;
        top: var(--wp-admin--admin-bar--height, 0);
        right: 0px;
        bottom: 0px;
        z-index: 999;
        min-width: max(80%, 400px);
        background-color: #fff;
        transition: transform 400ms ease-in-out;
        -webkit-transform: translate3d(100%, 0px, 0px);
        transform: translate3d(100%, 0px, 0px);
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
    .menu-open nav.hire-rates-mega-menu {
        -webkit-transform: translate3d(0px, 0px, 0px);
        transform: translate3d(0px, 0px, 0px);
    }
    .menu-open .hire-rates-menu__overlay {
        content: '';
        position: fixed;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #000000bd;
        z-index: 999;
    }
    .hire-rates-mega-menu__mobile-container{
        display: block;
        width:100%;
        height: 100%;
    }
    ul.hire-rates-mega-menu__top-level{
        display: none;
    }
    .open > ul.hire-rates-mega-menu__mobile-sub-level {
        display: block;
    }
    ul.hire-rates-mega-menu__mobile {
        height: calc(100% - 120px);
        overflow-y: auto;
    }

}
/* Trust Signal Styles */
.ts-header-banner {
    background: #fff;
    transition: all 0.2s ease-in-out;
    overflow: hidden;
    max-height: 60px;
}
.is-scrolling .ts-header-banner {
    max-height: 0px;
}
.ts-header-banner, .ts-header-banner a {
    color:#155287;
}
.ts-header-banner__content {
    gap: 12px;
    padding: 12px 0px;
}
.ts-header-banner__card {
    -ms-flex-line-pack: center;
    align-content: center;
    gap: 12px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 25%;
}
.ts-header-banner__card-text {
    font-size: 12px;
    line-height: 1.2;
}
.ts-header-banner__card-title {
    font-weight: 600;
}
.ts-header-banner__card-text p {
    margin: 0px;
    opacity: 0.6;
    font-size: 11px;
}
.ts-header-banner__card i {
    font-size: 18px;
    opacity: 0.6;
}
