/*================================================================
                 CLICK MENU STYLES
================================================================*/

/*
    THESE STYLES will probably not be needed and are adjusted in your main styles
    - * for example is most efficient when not a child of a class
       -- hopefully you already are using the box sizing globally
    - you may not need text-decoration etc. depending on your global anchors
*/
.cm-menu a, .cm-menu a:visited { color:#fff; text-decoration:none; }
.cm-menu *, .cm-menu *:after, .cm-menu *:before {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}

.cm-menu:focus { outline:3px solid blue;  }
.cm-menu, .cm-menu ul { margin:0; padding:0; list-style:none;}

.toggle-menu + .cm-menu, .cm-menu ul {
    max-height:0;
    opacity:0;
    overflow:hidden;
    -wekbit-transition: max-height 0.4s ease-in-out, opacity 0.4s ease-in-out;
            transition: max-height 0.4s ease-in-out, opacity 0.4s ease-in-out;
}
.cm-menu { position:relative; }
.cm-menu li a { display:block; padding:10px; position:relative;}

.cm-menu li { border-top:1px solid #ccc; }
.cm-menu li:first-child { border-top:0; }
.cm-menu li { position:relative; }

.cm-menu .has-sub:after,
.cm-menu .expander-wrap .has-sub > span:after {
    content: "\3c";
    font-family: 'Basic-Icons' !important;
    color:#fff;
    display:inline-block;
    position:absolute; top:50%; right:1px;
    margin:-2px 0 0 5px;
    vertical-align:middle;
    -wekbit-transition: all 0.4s ease-in-out;
            transition: all 0.4s ease-in-out;
    -webkit-transform: scale(0.70) translateY(-50%)  rotate(-90deg);
        -ms-transform: scale(0.70) translateY(-50%)  rotate(-90deg);
            transform: scale(0.70) translateY(-50%)  rotate(-90deg);
}

.cm-menu .opened > .has-sub:after,
.cm-menu .opened > .expander-wrap .has-sub > span:after{
    -webkit-transform: scale(0.70) translateY(-50%) rotate(90deg);
        -ms-transform: scale(0.70) translateY(-50%) rotate(90deg);
            transform: scale(0.70) translateY(-50%) rotate(90deg);
}

.cm-menu > .opened > a,
.cm-menu > li > a:hover,
.cm-menu > li > a:focus,
.cm-menu > li > div > a:hover,
.cm-menu > li > div > a:focus {background:#366b29;}

.cm-menu .expander-wrap .has-sub:hover > span,
.cm-menu .expander-wrap .has-sub:focus > span { color:#333; background:#d4d4d4; }

.cm-menu ul .opened > a,
.cm-menu ul a:hover, .cm-menu ul li a:focus { background:#444; }

.cm-menu ul .opened > .has-sub:after,
.cm-menu ul .opened > .expander-wrap .has-sub > span:after{
    border-top-color:#fff;
}

.cm-js-active .cm-menu { max-height:80em; opacity:1; }
.cm-menu .opened > ul { max-height:80em; opacity:1; }

/* ================= SEPARATE EXPANDERS OPTION IS ENABLED ================= */

.cm-menu .expander-wrap { display:table; width:100%; }
.cm-menu .expander-wrap a { display:table-cell; }
.cm-menu .expander-wrap .has-sub { position:relative; width:30px; }
.cm-menu .expander-wrap .has-sub:after { display:none; }
.cm-menu .expander-wrap .has-sub > span {
    display:block;
    position:absolute; top:0; right:0;
    width:100%; height:100%;
    background:#aaa;
}
.cm-menu .expander-wrap .has-sub > span:after {
    content:" ";
    display:inline-block;
    position:absolute; top:50%; right:50%;
    margin:2px 0 0 5px;
    vertical-align:middle;
    border:5px solid transparent;
    /* Extra is for anti-aliasing issues in firefox and others */
    border:5px solid rgba(0,0,0,0);
    border-top-color:#fff;
    -wekbit-transition: all 0.4s ease-in-out;
            transition: all 0.4s ease-in-out;
    -webkit-transform: scale(0.98) translate(50%, -50%);
        -ms-transform: scale(0.98) translate(50%, -50%);
            transform: scale(0.98) translate(50%, -50%);
}
.cm-menu .opened > .expander-wrap .has-sub > span:after {
    border-top-color:#333;
    -webkit-transform: scale(0.98) translate(50%, -75%) rotate(-180deg);
        -ms-transform: scale(0.98) translate(50%, -75%) rotate(-180deg);
            transform: scale(0.98) translate(50%, -75%) rotate(-180deg);
}

/* ================= HOVER FALLBACK IF JAVASCRIPT IS DISABLED ================= */

.no-js .toggle-menu + .cm-menu { opacity:1; max-height:80em; }
.no-js .cm-menu > li:hover > a { background:#333; }
.no-js .cm-menu ul ul li:hover > a { background:#444; }

.no-js .cm-menu li:hover > ul { display:block; max-height:80em; opacity:1; width:100%; }
.no-js .cm-menu ul { display:none; overflow:visible; }


/* ================= MENU OPEN FUNCTIONALITY ADDED ON SETUP ================= */

@media (min-width:80em){
    .toggle-menu + .cm-menu { max-height:80em; opacity:1; overflow:visible; }
    .cm-menu ul { top:100%; overflow:hidden; }
    .cm-menu .opened > ul { max-height:80em; opacity:1; }

    .cm-menu .animated > ul { overflow:visible; z-index:10; }
    .cm-menu .animating > ul { z-index:-1; }
}


/*================================================================
                 CLICK MENU MENU TYPES
================================================================*/

/*  NAV BAR STYLE TYPE
    ================================================================*/

@media (min-width:80em){
    .nav-bar li { border-top:0; }

    .nav-bar > ul { display:table; width:100%;}
    .nav-bar > ul > li { display:table-cell; vertical-align:middle; }
    .nav-bar > ul > li > a { display:table; width:100%; padding:0; }
    .nav-bar > ul > li > a > span { display:table-cell; padding:0 10px; height:50px; vertical-align:middle; text-align:center; }
    .nav-bar > ul > li > ul { position:absolute; }

    .nav-bar .has-sub span:after { position:static; margin-top:10px; }
    .nav-bar ul ul .has-sub:after { right:5px; }

    .nav-bar ul li li { margin:10px;}
    .nav-bar ul li li li { margin-left:0; margin-right:0; }
    .nav-bar ul ul a { padding:3px 15px; background:transparent; }

    .nav-bar ul ul a:hover, .nav-bar ul ul a:focus,
    .nav-bar ul ul .opened > a { background:#7a7a7a; }

    /* ================= HOVER FALLBACK IF JAVASCRIPT IS DISABLED ================= */

    .no-js .nav-bar ul ul li:hover > a { color:#000; background:#ddd; }

}

/*  ACCORDION NAVIGATION
    ================================================================*/

/* ------------- CURRENTLY KEEPS SMALL SCREEN STYLES -------------- */


/*  DROP DOWN NAVIGATION
    ================================================================*/

.cm-menu ul a {background:#366b29;}

@media (min-width:80em){
    [data-type="dropdown"] ul {
        display:block;
        position:absolute;
        z-index:-1;
        top:100%; left:0;
        width:100%; min-width:315px;
        background:#366b29;
        -wekbit-transition: max-height 0.4s ease-in-out, opacity 0.4s ease-in-out, left 0.4s ease-in-out, right 0.4s ease-in-out;
                transition: max-height 0.4s ease-in-out, opacity 0.4s ease-in-out, left 0.4s ease-in-out, right 0.4s ease-in-out;
    }
    [data-type="dropdown"] ul ul { top:-5px; }
    [data-type="dropdown"] .opened > ul { left:100%; max-height:80em; opacity:1; }

    li[data-type="dropdown"]:nth-last-child(-n+2) ul { left:auto; right:0; }
    li[data-type="dropdown"]:nth-last-child(-n+2) .opened > ul { left:auto; right:100%; }

    .nav-bar ul li[data-type="dropdown"] li li { margin-left:5px; margin-right:5px; }

    [data-type="dropdown"] a + .has-sub { width:0; min-height:0; height:100%; }
    [data-type="dropdown"] a + .has-sub > span { min-height:0; height:100%; }

    /* ================= HOVER FALLBACK IF JAVASCRIPT IS DISABLED ================= */

    .no-js .cm-menu [data-type="dropdown"] li:hover > ul { left:100%; }
    .no-js .cm-menu [data-type="dropdown"]:nth-last-child(-n+2) ul { left:auto; right:0; }
    .no-js .cm-menu [data-type="dropdown"]:nth-last-child(-n+2) li:hover > ul { left:auto; right:100%; }

}


/*================================================================
                 NAVIGATION TOGGLE STYLES
================================================================*/

.toggle-menu {
	position:absolute;
	top:-57px;
	display:block;
	width:50px;
	height:50px;
}

.toggle-menu .svg-icon,
.mobilenav-wrap .svg-icon {
	width:50px;
	height:50px;
	fill:#fff;
	cursor:pointer;
}

.mobilenav-wrap .svg-icon {
    display:block;
    margin:8px 0 7px auto;
    margin-right:0;
    padding: 0 10px;
    width: 70px;
}

@media (min-width:48em){
    .toggle-menu {
    	top:0;
    }
    .mobilenav-wrap .svg-icon {
        margin-top:17px;
        margin-bottom:13px;
        width:70px;
        height:70px;
        padding:10px;
    }
}

@media (min-width:80em){
    .toggle-menu { display:none; }
}


/*  DROP DOWN NAVIGATION
    ================================================================*/

body table.dataTable thead {
	background-color:#000000;
}
body .dataTables_wrapper .row:first-child {
	background-color:#eeeeee;
}
body table.dataTable thead th {
	color:#ffffff;
}
body table.dataTable thead .sorting_asc {
	background-image:url("/cms/images/sort_asc_white.png");
}
body table.dataTable thead .sorting_desc {
	background-image:url("/cms/images/sort_desc_white.png");
}
body table.dataTable thead .sorting {
	background-image:url("/cms/images/sort_both_white.png");
}
body table.dataTable.table-striped > tbody > tr:nth-of-type(2n+1) {
	background-color:#eeeeee;
}
body table.dataTable tbody tr:last-child td {
	border-bottom:1px solid #b0b2b5;
}

.carrier-portal .section-tender-details .dataTables_wrapper > div:first-child {
	display:none;
}



/*================================================================
                 EXTRA OVERWRITE STYLES
================================================================*/

.main-nav { position:relative; z-index:1000; margin-top:3px; }

.cm-menu .opened > .custom-sub { max-height:80em; opacity:1; padding:20px; }
.cm-menu .animated > .custom-sub { overflow:visible; z-index:10; }
.cm-menu .animating > .custom-sub { z-index:-1; }

@media (min-width:60em) {
    .table-row { display:table; width:100%; }
    .table-col { display:table-cell; vertical-align:top; }
}

/* ADDITIONAL CHANGES FOR DRAWER */

.main-body {
    transition: transform 600ms ease;
}

.cm-js-menu-active .main-body {
    transform:translate3d(83%,0,0);
}

.site-wrap {
	background:#fff;	
	position:relative; z-index:1000;
	left:0;
	width:100%;
	-wekbit-transition: all 0.2s ease-in-out;
			transition: all 0.2s ease-in-out;
}

.mobilenav-wrap {
	position:absolute; z-index:1000;
	top:0; left:-100%; right:100%;
	min-height:100%;
    padding-left:17%;
	background:#47aa42;
}

.mobilenav-wrap .main-nav .toggle-menu { display:none; }

.site-header .main-nav { display:none; }

@media (min-width:80em) {
    .main-nav { margin-top:0; }
	.new-toggle { display:none; }
	.mobilenav-wrap { display:none; }
	.site-header .main-nav { display:block; }
}

.cm-menu > li > a {
	text-transform:uppercase;
	font-weight:600;
}

@media (min-width:48em) and (max-width:79.9rem){

	.site-header .grid_2 {width:50%;}
	.site-header .grid_10 {width:50%;}

	.main-body:not(.carrier-portal) .site-header .logo {
		margin-left:80px;
	}

	.toggle-menu {
		top:27px;
		left:-100%;
        margin-left:5px;
	}

}