/*************************************************************
[TABLE OF CONTENTS]

- MENU BUTTON
- MENU BUTTON LABEL
- WOOCOMMERCE CART BUTTON
- SEARCH BUTTON
- SEARCH BUTTON LABEL
- SEARCH FIELD
- SEARCH OVERLAY
- LOGO
- HEADER BACKGROUND IMAGE
- HEADER BACKGROUND COLOR
- HEADING + SUBHEADING
- HEADING IMAGE
- MENU
- SUBMENU
- ACCORDION SUBMENU ARROW
- MENU ICONS
- ALTERNATE CLOSE BUTTON
- HORIZONTAL MENU
- HORIZONTAL MENU SUBMENU ARROW
- IMAGE MENU
- IMAGE SUBMENU
- IMAGE ACCORDION SUBMENU ARROW
- IMAGE MENU ITEM DESCRIPTION
- GRID MENU (single-level)
- MENU ITEM BADGE
- MAIN WRAPPER
- MENU BACKGROUND COLOR
- MENU BACKGROUND IMAGE
- BACKGROUND OVERLAY
- WIDGETS
- SMART SCROLL
- MISC
- SCROLLBAR STYLING
- CART ICON
- WORDPRESS TOOLBAR
- MEDIA QUERIES
*************************************************************/


/* MENU BUTTON
**************************************************/
/* wrapper */
.taptap-menu-button-wrapper {
	position:fixed;
	z-index:999999;
	top:7px;
	left:7px;
    right:auto;
	width:40px;
	height:45px;
	cursor:pointer;
	
	-webkit-transition:opacity .2s ease .3s, top 0s ease .3s;
	transition:opacity .2s ease .3s, top 0s ease .3s;
    
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}
/* when button BG images entered as ::before, make sure images don't overflow the button */
.taptap-menu-button-individual {
    overflow:hidden;
}
/* when button BG images entered as ::before, make sure images are properly positioned */
.taptap-menu-button-individual:not(.taptap-menu-active .taptap-menu-button-individual)::before,
.taptap-menu-active .taptap-menu-button-individual::before,
.taptap-menu-button-03-front::before,
.taptap-menu-button-03-back::before,
.taptap-menu-button-bg-img {
    position:absolute;
    content:'';
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-size:cover;
}


/* MENU BUTTON STYLE 01
**************************************************/
.taptap-menu-button-01-wrapper {
    width:50px;
    height:50px;
    border-radius:50%;

    -webkit-transition:transform .4s cubic-bezier(.5, 1, 0.2, 2), background-color .4s ease;
    transition:transform .4s cubic-bezier(.5, 1, 0.2, 2), background-color .4s ease;
}
.taptap-menu-active .taptap-menu-button-01-wrapper {
    -webkit-transform:rotate(-45deg) scale(.9);
    transform:rotate(-45deg) scale(.9);
}
/* menu button 01 middle bar */
.taptap-menu-button-01-inner {
    position:absolute;
    content:'';
    top:24px;
    left:14px;
    
    width:21px;
    height:3px;
    background-color:#fff;
    border-radius:3px;
}
/* menu button 01 top bar */
.taptap-menu-button-01-inner::before {
    position:absolute;
    content:'';
    top:-8px;
    
    width:21px;
    height:3px;
    background-color:#fff;
    border-radius:3px;

    -webkit-transition:width .25s ease, transform .25s cubic-bezier(.2, 0, 0.2, 1.25);
    transition:width .25s ease, transform .25s cubic-bezier(.2, 0, 0.2, 1.25);
    
    -webkit-transform-origin:9px 0px;
    transform-origin:9px 0px;
}
.taptap-menu-active .taptap-menu-button-01-inner::before {
    -webkit-transform:rotate(-90deg);
    transform:rotate(-90deg);
    width:10px;
}
/* menu button 01 bottom bar */
.taptap-menu-button-01-inner::after {
    position:absolute;
    content:'';
    top:8px;
    right:0;
    
    width:21px;
    height:3px;
    background-color:#fff;
    border-radius:3px;

    -webkit-transition:width .25s ease, transform .25s cubic-bezier(.2, 0, 0.2, 1.25);
    transition:width .25s ease, transform .25s cubic-bezier(.2, 0, 0.2, 1.25);
    
    -webkit-transform-origin:1px 3px;
    transform-origin:1px 3px;
}
.taptap-menu-active .taptap-menu-button-01-inner::after {
    width:10px;

    -webkit-transform:rotate(-90deg);
    transform:rotate(-90deg);
}


/* MENU BUTTON STYLE 02
**************************************************/
.taptap-menu-button-02-wrapper {
    width:38px;
    height:38px;
    border-radius:50%;

    -webkit-transition:transform .2s cubic-bezier(.5, 1, 0.2, 2), background-color .2s ease;
    transition:transform .2s cubic-bezier(.5, 1, 0.2, 2), background-color .2s ease;
}
.taptap-menu-button-02-wrapper:active {
    -webkit-transform:scale(.9);
    transform:scale(.9);
}
/* menu button 02 middle bar */
.taptap-menu-button-02-inner {
    position:absolute;
    content:'';
    top:18px;
    left:10px;
}
/* menu button 02 top bar */
.taptap-menu-button-02-inner::before {
    position:absolute;
    content:'';
    top:-3px;
    
    width:18px;
    height:3px;
    background-color:#fff;
    border-radius:3px;

    -webkit-transform:scaleX(.75);
    transform:scaleX(.75);

    -webkit-transition:transform .25s cubic-bezier(.2, 0, 0.2, 1.65);
    transition:transform .25s cubic-bezier(.2, 0, 0.2, 1.65);
}
.taptap-menu-active .taptap-menu-button-02-inner::before {
    -webkit-transform:translateY(3px) rotate(-45deg) scaleX(1);
    transform:translateY(3px) rotate(-45deg) scaleX(1);
}
/* menu button 02 bottom bar */
.taptap-menu-button-02-inner::after {
    position:absolute;
    content:'';
    top:3px;
    left:0;
    
    width:18px;
    height:3px;
    background-color:#fff;
    border-radius:3px;

    -webkit-transform:scaleX(.75);
    transform:scaleX(.75);

    -webkit-transition:transform .25s cubic-bezier(.2, 0, 0.2, 1.65);
    transition:transform .25s cubic-bezier(.2, 0, 0.2, 1.65);
}
.taptap-menu-active .taptap-menu-button-02-inner::after {
    -webkit-transform:translateY(-3px) rotate(45deg) scaleX(1);
    transform:translateY(-3px) rotate(45deg) scaleX(1);
}


/* MENU BUTTON STYLE 03
**************************************************/
.taptap-menu-button-03-wrapper {
    width:50px;
    height:50px;

    -webkit-transform-style:preserve-3d;
    transform-style:preserve-3d;

    -webkit-perspective:1000px;
    perspective:1000px;
}
/* apply border-radius when BG images used */
.taptap-menu-button-03-front::before,
.taptap-menu-button-03-back::before {
    border-radius:50%;
}
/* menu button 03 front/back joint styling */
.taptap-menu-button-03-front,
.taptap-menu-button-03-back {
    text-align:center;
    height:inherit;
    border-radius:50%;

    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;

    -webkit-transform-style:preserve-3d;
    transform-style:preserve-3d;

    -webkit-transition:-webkit-transform .75s cubic-bezier(.4, 0.1, 0.1, 1.1), background-color .2s ease;
    transition:transform .75s cubic-bezier(.4, 0.1, 0.1, 1.1), background-color .2s ease;
}
/* menu button 03 inner joint styles */
.taptap-menu-button-03-inner {
    position:relative;
    z-index:2;
    top:25px;
    
    -webkit-perspective:inherit;
    perspective:inherit;
    
    -webkit-transform:translateY(-50%) translateZ(13px);
    transform:translateY(-50%) translateZ(13px);
}
/* menu button 03 front */
.taptap-menu-button-03-front {
    background-color:#666;

    -webkit-transform:rotateY(0deg);
    transform:rotateY(0deg);
}
.taptap-menu-active .taptap-menu-button-03-front {
    -webkit-transform:rotateY(-180deg);
    transform:rotateY(-180deg);
}
/* menu button 03 middle bar */
.taptap-menu-button-03-front .taptap-menu-button-03-inner {
    position:absolute;
    content:'';
    top:25px;
    left:15px;
    
    width:21px;
    height:3px;
    background-color:#fff;
    border-radius:3px;

    -webkit-transition:background-color .2s ease;
    transition:background-color .2s ease;
}
/* menu button 03 top bar */
.taptap-menu-button-03-front .taptap-menu-button-03-inner::before {
    position:absolute;
    content:'';
    left:0;
    top:-8px;
    
    width:21px;
    height:3px;
    background-color:#fff;
    border-radius:3px;

    -webkit-transition:width .25s ease, transform .25s cubic-bezier(.2, 0, 0.2, 1.25), background-color .2s ease;
    transition:width .25s ease, transform .25s cubic-bezier(.2, 0, 0.2, 1.25), background-color .2s ease;

    -webkit-transform-origin:9px 0px;
    transform-origin:9px 0px;
}
/* menu button 03 bottom bar */
.taptap-menu-button-03-front .taptap-menu-button-03-inner::after {
    position:absolute;
    content:'';
    top:8px;
    right:0;
    
    width:21px;
    height:3px;
    background-color:#fff;
    border-radius:3px;

    -webkit-transition:width .25s ease, transform .25s cubic-bezier(.2, 0, 0.2, 1.25), background-color .2s ease;
    transition:width .25s ease, transform .25s cubic-bezier(.2, 0, 0.2, 1.25), background-color .2s ease;

    -webkit-transform-origin:1px 3px;
    transform-origin:1px 3px;
}
/* menu button 03 back */
.taptap-menu-button-03-back {
    position:absolute;
    top:0;
    left:0;
    width:inherit;

    -webkit-transform:rotateY(180deg);
    transform:rotateY(180deg);

    background-color:#555;
}
.taptap-menu-active .taptap-menu-button-03-back {
    -webkit-transform:rotateY(0deg);
    transform:rotateY(0deg);
}
/* menu button 03 close button */
.taptap-menu-button-03-back .taptap-menu-button-03-inner::before,
.taptap-menu-button-03-back .taptap-menu-button-03-inner::after {
    position:absolute;
    content:'';
    top:-1px;
    left:15px;
    
    width:21px;
    height:3px;
    background-color:#fff;
    border-radius:3px;
}
.taptap-menu-button-03-back .taptap-menu-button-03-inner::before {
  -webkit-transform:rotate(45deg);
   transform:rotate(45deg);
}
.taptap-menu-button-03-back .taptap-menu-button-03-inner::after {
  -webkit-transform:rotate(-45deg);
  transform:rotate(-45deg);
}


/* MENU BUTTON STYLE 04
**************************************************/
.taptap-menu-button-04-wrapper {
    width:38px;
    height:38px;
    border-radius:50%;

    -webkit-transition:background-color .3s ease, outline .3s ease;
    transition:background-color .3s ease, outline .3s ease;
}
.taptap-menu-active .taptap-menu-button-04-wrapper {
    background-color:transparent;
}
/* menu button 04 middle bar */
.taptap-menu-button-04-inner {
    position:absolute;
    content:'';
    top:18px;
    left:11px;
    width:16px;
    height:2px;
    border-radius:3px;
    background-color:#EAEAEB;

    -webkit-transition:transform .2s cubic-bezier(.5, 1, 0.2, 1.5), width .2s ease, left .2s ease;
    transition:transform .2s cubic-bezier(.5, 1, 0.2, 1.5), width .2s ease, left .2s ease;
}
.taptap-menu-active .taptap-menu-button-04-inner {
    left:10px;
    width:18px;
    background-color:#EBEBEB;

    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);

    -webkit-transition:transform .55s cubic-bezier(.5, 1, 2, 1.5), width .2s ease, left .2s ease;
    transition:transform .55s cubic-bezier(.5, 1, 2, 1.5), width .2s ease, left .2s ease;
}
/* menu button 04 top bar */
.taptap-menu-button-04-inner::before {
    position:absolute;
    content:'';
    top:-8px;
    width:16px;
    height:2px;
    background-color:#EAEAEB;
    border-radius:3px;

    -webkit-transition:transform .1s cubic-bezier(0, .2, .2, 1), width .2s ease;
    transition:transform .1s cubic-bezier(0, .2, .2, 1), width .2s ease;

    -webkit-transform-origin:9px 0px;
    transform-origin:9px 0px;
}
.taptap-menu-active .taptap-menu-button-04-inner::before {
    width:7px;
    background-color:#EBEBEB;

    -webkit-transform:rotate(-90deg) translateX(2px) translateY(-1px);
    transform:rotate(-90deg) translateX(2px) translateY(-1px);

    -webkit-transition:transform .3s cubic-bezier(.25, 0, 0.2, 1.5) .05s, width .3s ease;
    transition:transform .3s cubic-bezier(.25, 0, 0.2, 1.5) .05s, width .3s ease;
}
/* menu button 04 bottom bar */
.taptap-menu-button-04-inner::after {
    position:absolute;
    content:'';
    top:8px;
    right:0;
    width:16px;
    height:2px;
    background-color:#EAEAEB;
    border-radius:3px;

    -webkit-transition:transform .1s cubic-bezier(0, .2, .2, 1), width .2s ease;
    transition:transform .1s cubic-bezier(0, .2, .2, 1), width .2s ease;

    -webkit-transform-origin:1px 3px;
    transform-origin:1px 3px;
}
.taptap-menu-active .taptap-menu-button-04-inner::after {
    width:7px;
    background-color:#EBEBEB;

    -webkit-transform:rotate(-90deg) translateX(2px) translateY(-1px);
    transform:rotate(-90deg) translateX(2px) translateY(-1px);

    -webkit-transition:transform .3s cubic-bezier(.25, 0, 0.2, 1.5) .05s, width .3s ease;
    transition:transform .3s cubic-bezier(.25, 0, 0.2, 1.5) .05s, width .3s ease;
}


/* MENU BUTTON STYLE 05
**************************************************/
.taptap-menu-button-05-wrapper {
    width:50px;
    height:50px;
}
/* menu button 05 open button */
.taptap-menu-button-05-open {
    position:absolute;
    z-index:4;
    top:0;
    left:0;
    width:inherit;
    height:inherit;

    background-color:#777;

    -webkit-transition:background-color .25s ease;
    transition:background-color .25s ease;
}
.taptap-menu-button-05-open::before,
.taptap-menu-button-05-open::after {
    position:absolute;
    content:'';
    z-index:1;
    left:0;
    right:0;
    margin:0 auto;
    width:12px;
    height:2px;
    background-color:#fff;

    -webkit-transform:scaleX(1);
    transform:scaleX(1);

    -webkit-transition:-webkit-transform .25s cubic-bezier(.5, 1, .2, 2) .2s, background-color .25s ease;
    transition:-webkit-transform .25s cubic-bezier(.5, 1, .2, 2) .2s, background-color .25s ease;
}
.taptap-menu-button-05-open::before {
    top:21px;
}
.taptap-menu-button-05-open::after {
    top:27px;
}
.taptap-menu-active .taptap-menu-button-05-open::before,
.taptap-menu-active .taptap-menu-button-05-open::after {
    -webkit-transform:scaleX(.35);
    transform:scaleX(.35);

    -webkit-transition:-webkit-transform 0 ease;
    transition:-webkit-transform 0 ease;
}
/* menu button 05 close button */
.taptap-menu-button-05-close {
    position:absolute;
    z-index:5;
    top:0;
    left:0;
    width:inherit;
    height:inherit;

    background-color:#555;

    -webkit-clip-path:circle(0px at center center);
    clip-path:circle(0px at center center);

    -webkit-transition:-webkit-clip-path .5s cubic-bezier(.2, .3, .5, 2), background-color .25s ease;
    transition:clip-path .5s cubic-bezier(.2, .3, .5, 2), background-color .25s ease;
}
.taptap-menu-active .taptap-menu-button-05-close {
    -webkit-clip-path:circle(50px at center center);
    clip-path:circle(50px at center center);

    -webkit-transition:-webkit-clip-path .5s cubic-bezier(.75, .5, .2, 1), background-color .25s ease;
    transition:clip-path .5s cubic-bezier(.75, .5, .2, 1), background-color .25s ease;
}
.taptap-menu-button-05-close::before,
.taptap-menu-button-05-close::after {
    position:absolute;
    content:'';
    z-index:1;
    top:24px;
    left:0;
    right:0;
    margin:0 auto;
    width:14px;
    height:2px;
    background-color:#fff;
}
.taptap-menu-button-05-close::before {
    -webkit-transform:rotate(45deg) scale(.15);
    transform:rotate(45deg) scale(.15);
}
.taptap-menu-button-05-close::after {
    -webkit-transform:rotate(-45deg) scale(.15);
    transform:rotate(-45deg) scale(.15);
}
.taptap-menu-active .taptap-menu-button-05-close::before {
    -webkit-transform:rotate(45deg) scale(1);
    transform:rotate(45deg) scale(1);
}
.taptap-menu-active .taptap-menu-button-05-close::after {
    -webkit-transform:rotate(-45deg) scale(1);
    transform:rotate(-45deg) scale(1);
}
.taptap-menu-button-05-close::before,
.taptap-menu-button-05-close::after {
    -webkit-transition:-webkit-transform 0s ease .35s, background-color .25s ease;
    transition:-webkit-transform 0s ease .35s, background-color .25s ease;
}
.taptap-menu-active .taptap-menu-button-05-close::before,
.taptap-menu-active .taptap-menu-button-05-close::after {
    -webkit-transition:-webkit-transform .35s cubic-bezier(.5, 1, .2, 1.5) .05s, background-color .25s ease;
    transition:-webkit-transform .35s cubic-bezier(.5, 1, .2, 1.5) .05s, background-color .25s ease;
}


/* MENU BUTTON LABEL
**************************************************/
.taptap-menu-button-label {
    position:absolute;
    z-index:5;
    top:6px;
    left:40px;
    font-family:'Inter Tight',sans serif;
    font-weight:500;
    font-size:11px;
    letter-spacing:0;
    color:#747A7D;
    padding:10px;
    white-space:nowrap;
}
.taptap-menu-button-label::before,
.taptap-menu-button-label::after {
	position:absolute;
	top:0;
	left:0;
	padding:10px;

	-webkit-transition:all .25s ease;
	transition:all .25s ease;
}
.taptap-menu-button-label-hide {
    opacity:0;
    pointer-events:none;
}


/* WOOCOMMERCE CART BUTTON
**************************************************/
.taptap-woo-button-wrapper {
	position:fixed;
	z-index:99996;
	top:12px;
	right:55px;
	padding:10px;
}
/* shopping bag icon */
.taptap-shopping-icon {
    background-color:#999;
    width:25px;
    height:25px;
    font-size:21px;
    margin-left:-20px;

    -webkit-mask-image:url(icons/taptap-shopping-cart.svg);
    mask-image:url(icons/taptap-shopping-cart.svg);

    -webkit-mask-size:25px;
    mask-size:25px;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;

    -webkit-transition:all .25s ease;
	transition:all .25s ease;
}
a.taptap-cart-count:hover .taptap-shopping-icon {
    background-color:#ddd;
}
a.taptap-cart-count,
a.taptap-cart-count:hover,
a.taptap-cart-count:active {
    text-decoration:none;
}
.taptap-cart-count > span {
	position:absolute;
	top:2px;
	right:2px;
	border-radius:50px;
	height:17px;
	min-width:10px;
	padding:0 3px;
	display:block;
	text-align:center;
	font-family:'Inter Tight',sans serif;
    font-weight:500;
	font-size:10px;
    color:#fff;
    background-color:#A2A464;
}
.taptap-cart-count > span > span {
	margin-top:2px;
	display:block;
}


/* SEARCH BUTTON
**************************************************/
/* search button wrapper */
.taptap-search-button-wrapper { 
    position:fixed;
    z-index:99996;
	width:40px;
    height:45px;
	top:10px;
	right:10px;
    left:auto;
	cursor:pointer;
    
    /* no tap highlight */
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}
/* search button */
.taptap-search-button {
    position:relative;
    width:15px;
	height:15px;
    top:13px;
    left:11px;
    margin:0;
    padding:0;
    border:2px solid #999;
    border-radius:50%;

    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    
    -webkit-transition:all .25s ease;
	transition:all .25s ease;
}
.taptap-search-button::after {
    content:'';
    position:absolute;
    top:12px;
    left:10px;
    width:7px;
    height:2px;
    background-color:#999;
    margin:0;
    padding:0;
    
    -webkit-transform:rotate(45deg);
	transform:rotate(45deg);
    
    -webkit-transition:all .25s ease;
	transition:all .25s ease;
}


/* SEARCH BUTTON LABEL
**************************************************/
.taptap-search-button-label {
    position:absolute;
    top:6px;
    left:-55px;
    font-family:'Inter Tight',sans serif;
    font-weight:500;
    font-size:11px;
    letter-spacing:0;
    color:#747A7D;
    padding:10px;
    white-space:nowrap;
    
    -webkit-transition:all .25s ease;
	transition:all .25s ease;
}


/* SEARCH FIELD
**************************************************/
/* search form */
.taptap-search-wrapper,
.taptap-search-background {
	position:fixed;
	z-index:9999999;
	top:-1000px;
	left:0;
	right:0;
	width:100%;
	height:65px;
	margin:0;
	padding:0;
	overflow:hidden;
	
	-webkit-transform:translateY(-100%);
	transform:translateY(-100%);
	
	-webkit-transition:-webkit-transform .25s ease 0s, top 0s ease .25s;
	transition:transform .25s ease 0s, top 0s ease .25s;
}
/* search form background */
.taptap-search-background {
    z-index:9999998;
    background-color:#191919;
}
.taptap-search-wrapper-active {
	top:0 !important;
	
	-webkit-transform:translateY(0) !important;
	transform:translateY(0) !important;
	
	-webkit-transition:-webkit-transform .25s ease 0s, top 0s ease 0s !important;
	transition:transform .25s ease 0s, top 0s ease 0s !important;
}
/* searchform input */
.taptap-search-wrapper #searchform input {
	width:100%;
	height:100%;
    position:absolute;
    z-index:10;
    top:0px;
	font-family:'Inter Tight',sans serif;
    font-weight:500;
    font-size:16px;
    letter-spacing:0;
	color:#eee;
	padding:0 50px;
	margin:0;
	border:0;
	background:none;
    outline:none;

    /* so padding wouldn't affect width */
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
	
	-webkit-border-radius:0;
	border-radius:0;
}
/* hide IE's built-in clear field button */
.taptap-search-wrapper #searchform input::-ms-clear { display:none; }
/* searchform placeholder */
#searchform input::-webkit-input-placeholder { font-size:15px; color:#555 !important; }
#searchform input:-moz-placeholder { font-size:15px; color:#555 !important; }
#searchform input::-moz-placeholder { font-size:15px; color:#555 !important; }
#searchform input:-ms-input-placeholder { font-size:15px; color:#555 !important; }
/* search form close button */
.taptap-search-close-wrapper {
    display:table;
	position:absolute;
    z-index:20;
	top:0;
	left:0;
    width:40px;
	height:100%;
	cursor:pointer;
    
    /* no tap highlight */
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}
.taptap-search-close-inner {
    display:table-cell;
    vertical-align:middle;
}
.taptap-search-close-inner::before,
.taptap-search-close-inner::after {
    content:'';
    position:absolute;
    vertical-align:middle;
    left:15px;
    width:9px;
    height:1px;
    background-color:#999;
    
    -webkit-transition:all .25s ease;
	transition:all .25s ease;
}
.taptap-search-close-inner::before {
    margin-top:-3px;
    -webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.taptap-search-close-inner::after {
    margin-top:3px;
    -webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
/* search form clear field button */
.taptap-search-clear-wrapper {
    display:table;
	position:absolute;
    z-index:20;
	top:0;
	right:0;
    width:50px;
	height:100%;
	cursor:pointer;
    
    /* no tap highlight */
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}
.taptap-search-clear-inner {
    display:table-cell;
    vertical-align:middle;
}
.taptap-search-clear {
    position:relative;
    vertical-align:middle;
    left:15px;
    width:18px;
    height:18px;
    border-radius:50%;
    background-color:#555;
    
    -webkit-transition:all .25s ease;
	transition:all .25s ease;
}
.taptap-search-clear::before {
    content:'';
    position:absolute;
    top:8px;
    left:3px;
    width:12px;
    height:2px;
    background-color:#191919;
    
    -webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.taptap-search-clear::after {
    content:'';
    position:absolute;
    top:8px;
    left:3px;
    width:12px;
    height:2px;
    background-color:#191919;
    
    -webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}


/* SEARCH OVERLAY
**************************************************/
.taptap-search-overlay {
    position:fixed;
    z-index:9999997;
    top:-1000%;
    left:0;
    right:0;
    width:100%;
    height:100%;
    height:100vh;
    background-color:#000;
    cursor:pointer;
    opacity:0;
	
	-webkit-transition:opacity .25s ease 0s, top 0s ease .25s;
	transition:opacity .25s ease 0s, top 0s ease .25s;
}
.taptap-search-overlay-active {
	top:0;
    opacity:.5;
	
	-webkit-transition:opacity .25s ease 0s, top 0s ease 0s;
	transition:opacity .25s ease 0s, top 0s ease 0s;
}


/* LOGO
**************************************************/
/* wrapper */
.taptap-logo-wrapper {
	position:fixed;
	z-index:99996;
	top:23px;
    left:50%;
    
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%);
}
/* if logo is an image */
.taptap-logo-image img {
	width:auto;
	max-height:35px;
}
/* if logo is text */
.taptap-logo a {
	font-family:'Inter Tight',sans serif;
    font-weight:500;
	font-size:14px;
    letter-spacing:0;
	text-decoration:none;
	color:#878C91;
	margin:0;
	padding:5px;
	
	-webkit-transition:all .25s ease;
	transition:all .25s ease;
}
.taptap-logo a:hover {
	color:#D4D9DE;
	text-decoration:none;
}
/* primary/secondary logo switch */
.taptap-logo-primary {
	position:relative;
	z-index:10;

	-webkit-transition:all .4s ease;
	transition:all .4s ease;
}
.taptap-logo-secondary {
	opacity:0;
	position:absolute;
	top:0;
	z-index:9;

	-webkit-transition:all .4s ease;
	transition:all .4s ease;
}
.taptap-logo-image-active .taptap-logo-primary {
	opacity:0;
}
.taptap-logo-image-active .taptap-logo-secondary {
	opacity:1;
}


/* HEADER BACKGROUND IMAGE
**************************************************/
.taptap-header-bg-image {
	position:fixed;
	z-index:99995;
	top:0;
	left:0;
	width:100%;
	height:65px;
	background-size:cover;
	background-repeat:no-repeat;
}


/* HEADER BACKGROUND COLOR
**************************************************/
.taptap-header {
	position:fixed;
	z-index:99994;
	top:0;
	left:0;
	width:100%;
	height:65px;
	background-color:#1D2124;
}


/* HEADING + SUBHEADING
**************************************************/
/* heading + subheading joint styles */
.taptap-heading,
.taptap-subheading,
.taptap-heading a,
.taptap-subheading a {
	text-align:center;
	letter-spacing:0;
    line-height:16px;
	text-decoration:none;
}
/* heading */
.taptap-heading,
.taptap-heading a {
    font-family:'Inter Tight',sans serif;
    font-weight:500;
	font-size:22px;
	color:#D1CA66;
}
/* subheading */
.taptap-subheading { margin-top:10px; }
.taptap-subheading,
.taptap-subheading a {
    font-family:'Inter Tight',sans serif;
    font-weight:500;
	font-size:16px;
	color:#727B81;
}
.taptap-heading a:hover {
	color:#D1CA66;
	text-decoration:underline;
}
.taptap-subheading a:hover {
	color:#727B81;
	text-decoration:underline;
}


/* HEADING IMAGE
**************************************************/
.taptap-image {
	text-align:center;
	margin:0;
}
.taptap-image img {
	margin:0 auto;
	max-width:100%;
	height:auto;
}


/* MENU
**************************************************/
.taptap-by-bonfire {
    position:relative;
    z-index:1;
    top:0;
    right:0;
    left:0;
    padding:0;
    margin:0 auto;
    text-align:center;
    display:block;
    max-width:400px;

    font-family:'Inter Tight',sans serif;
    font-weight:500;
}
.taptap-by-bonfire .menu {
    width:inherit;
    list-style-type:none;
    margin:0;
    padding:0;
    box-sizing:border-box;
}
/* individual main menu items */
.taptap-by-bonfire ul li {
    list-style-type:none;
    margin:0;
    padding:0;
    text-align:left;
    margin:0 auto;
}
.taptap-by-bonfire ul li a {
    position:relative;
    box-sizing:border-box;
    min-height:calc(70px - 20px);
    margin:0;
    padding:10px 15px;

    font-size:16px;
    line-height:16px;
    color:#fff;
    text-decoration:none;

    display:inline-flex;
    align-items:center;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:left;
}
/* menu description (vertical menu) */
.taptap-by-bonfire .taptap-menu-item-description {
    width:100%;
    font-size:14px;
    line-height:16px;
    color:#A1A19E;
    margin:0 50px 0 0;
    padding-top:5px;
}
/* menu item divider */
.taptap-by-bonfire .menu > li {
    border-top:0px solid #444;
}
/* hide top and bottom borders */
.taptap-by-bonfire .menu > li:first-child { border:none; }
.taptap-by-bonfire .menu > li:last-child { border-bottom:none; }


/* SUBMENU
**************************************************/
.taptap-by-bonfire ul.sub-menu {
	list-style:none;
	margin:0 0 0 10px;
	padding:0;
	display:none;
}
/* sub-menu items */
.taptap-by-bonfire .sub-menu a {
	color:#848482;
	margin:0;
}
.taptap-by-bonfire .sub-menu a:hover {
	color:#6390CF;   
}
/* decrease sub-menu item vertical spacing */
.taptap-by-bonfire .sub-menu a,
.taptap-by-bonfire .sub-menu .taptap-sub-arrow {
    margin-top:-10px;
}
/* more space below last sub-menu item */
.taptap-by-bonfire .sub-menu li:last-child {
    padding-bottom:5px;
}


/* ACCORDION SUBMENU ARROW
**************************************************/
/* submenu arrow */
.taptap-sub-arrow {
    position:absolute;
    cursor:pointer;
    top:0;
    right:0;
    width:43px;
    display:inline-block;
    height:calc(70px - 20px);

    box-sizing:border-box;
    
    /* remove the highlight of a tapped link when on a touch device */
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
.taptap-sub-arrow-inner {
    position:relative;
    display:block;
    top:50%;
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%);
    right:0;
    width:43px;
    height:28px;
    
    border-left-width:1px;
    border-left-style:solid;
    border-color:#6F6F6F;
}
.taptap-sub-arrow-inner::before,
.taptap-sub-arrow-inner::after {
    position:absolute;
    content:'';
    display:block;
    top:14px;
    width:9px;
    height:2px;
    border-radius:10px;
    background-color:#ADADAC;
    
    -webkit-transition:all .35s ease;
	transition:all .35s ease;
}
.taptap-sub-arrow-inner::before {
    right:22px;
    -webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
.taptap-sub-arrow-inner::after {
    right:17px;
    -webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.taptap-by-bonfire span.taptap-submenu-active span::before {
    -webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.taptap-by-bonfire span.taptap-submenu-active span::after {
    -webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}


/* MENU ICONS
**************************************************/
.taptap-by-bonfire ul li a i,
.taptap-by-bonfire .sub-menu a i {
    font-size:22px;
    margin-right:10px;
	
	-webkit-transition:all .25s ease;
	transition:all .25s ease;
}
.taptap-by-bonfire ul li a i {
	color:#8C9093;
}
.taptap-by-bonfire .sub-menu a i {
	color:#686C6F;
}


/* ALTERNATE CLOSE BUTTON
**************************************************/
.taptap-alternate-close-button {
    position:fixed;
    z-index:1;
    top:20px;
    right:20px;
    width:37px;
    height:37px;
    border-radius:50%;
    cursor:pointer;

    outline:2px solid transparent;

    -webkit-transition: all .15s ease;
	transition: all .15s ease;
}
.taptap-alternate-close-button:hover {
    outline-color:transparent;
    background-color:transparent;
}
.taptap-alternate-close-button::before,
.taptap-alternate-close-button::after {
	content:'';
	position:absolute;
	top:18px;
	left:12px;
	width:13px;
	height:1px;
	background-color:#ccc;
	
	-webkit-border-radius:50px;
	border-radius:50px;

	-webkit-transition: all .15s ease;
	transition: all .15s ease;
}
.taptap-alternate-close-button::before {
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
.taptap-alternate-close-button::after {
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}


/* HORIZONTAL MENU
**************************************************/
.taptap-by-bonfire-horizontal-wrapper {
    position:relative;
}
.taptap-by-bonfire-horizontal-inner {
    position:relative;
    max-width:320px;
    margin:0 auto;
}
.taptap-by-bonfire-horizontal {
    position:absolute;
    top:0;
    left:0;
	max-width:320px;
    margin:0 auto;
    clear:both;
    display:block;
    box-sizing:border-box;
    -webkit-transition:all .5s ease;
    transition:all .5s ease;
}
.taptap-by-bonfire-horizontal .menu {
    margin:0 auto;
    display:block;
    height:auto;
}
/* show menu item descriptions */
.taptap-by-bonfire-horizontal li.menu-item-has-children > a .taptap-menu-item-description {
    display:block;
}
/* hide menu item descriptions on back button */
.taptap-horizontal-close-submenu .taptap-menu-item-description {
    display:none;
}
/* individual main menu items */
.taptap-by-bonfire-horizontal ul li {
	list-style-type:none;
	text-align:left !important;
}
.taptap-by-bonfire-horizontal ul li a {
    outline:none;
    display:inline-block;
    opacity:1;
    width:100%;
    color:#fff;
	font-size:16px;
    font-family:'Inter Tight',sans serif;
    font-weight:500;
    line-height:22px;
	padding:11px 0;
	text-decoration:none;
    -webkit-transform:scale(1);
    transform:scale(1);
    -webkit-transition:all .25s ease, transform .5s ease;
    transition:all .25s ease, transform .5s ease;
}
.taptap-by-bonfire-horizontal .menu,
.taptap-by-bonfire-horizontal .sub-menu {
	margin-top:0;
	margin-bottom:0;
	padding:10px 10px 10px 15px;
	list-style-type:none;
    display:block;
    box-sizing:border-box;
}
.taptap-by-bonfire-horizontal .menu {
	position:relative;
	width:320px;
}
.taptap-by-bonfire-horizontal .sub-menu {
	position:absolute;
	top:0;
	right:0;
	width:320px;
	opacity:0;
	-webkit-transition:all .5s ease;
    transition:all .5s ease;
	-webkit-transform:translateX(320px);
	transform:translateX(320px);
    -webkit-transform-origin:left;
    transform-origin:left;
	z-index:99999;
    pointer-events:none;
    display:none;
}
.taptap-by-bonfire-horizontal .sub-menu.is-active {
    opacity:1;
    pointer-events:auto;
    -webkit-transition:all .5s ease;
    transition:all .5s ease;
}
.is-active-top {
    opacity:0 !important;
    pointer-events:none;
}
/* taptap-title class */
.taptap-by-bonfire-horizontal .taptap-title {
    display:table;
    width:100%;
}
.taptap-by-bonfire-horizontal .taptap-title:not(:first-child) {
    margin-top:20px;
}
.taptap-by-bonfire-horizontal .taptap-title i {
    margin:0 3px;
}
.taptap-by-bonfire-horizontal .taptap-title a {
    display:table-cell;
    width:auto;
    white-space:nowrap;
    cursor:default;
    color:#8A8A91;
    font-size:14px;
}
.taptap-by-bonfire-horizontal .taptap-title-line {
    display:table-cell;
    width:100%;
    height:10px;
    -webkit-transition:all .5s ease;
    transition:all .5s ease;
}
.taptap-by-bonfire-horizontal .taptap-title-line::before {
    display:block;
    content:'';
    width:calc(100% - 10px);
    height:1px;
    margin:-5px 0 0 10px;
    background-color:#31373C;
}
/* menu item icons */
.taptap-by-bonfire-horizontal .menu-item:not(.taptap-title) i {
    font-size:20px;
    -webkit-transform:translateY(2px);
    transform:translateY(2px);
    margin-right:5px;
    color:#E0E1E1;
    -webkit-transition:all .25s ease;
    transition:all .25s ease;
}
/* delay pointer-events on back button (otherwise if clicked on rapidly after opening sub-menu, could cause entire menu to become hidden) */
@keyframes taptap-delay-pointer-events {
    0% { pointer-events:none; }
    99% { pointer-events:none; }
    100% { pointer-events:auto; }
}
.sub-menu.is-active .taptap-horizontal-close-submenu {
    animation:taptap-delay-pointer-events 500ms linear;
}
/* back button arrow */
.taptap-horizontal-back {
    visibility: visible !important;
    display:block !important;
    position: relative !important;
    opacity:1 !important;
    margin-left:-5px !important;
    padding-left:35px !important;
    color:#999 !important;
    pointer-events:none;
    width:calc(100% + 5px) !important;
  
    border-bottom:1px solid #31373C;
	
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
.taptap-horizontal-back::before,
.taptap-horizontal-back::after {
    content:'';
    position:absolute;
    width:7px;
    height:2px;
    left:12px !important;
    background-color:#A4AAAF;
    -webkit-transition:all .25s ease;
    transition:all .25s ease;
}
.taptap-horizontal-back::before {
    top:19px;
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
}
.taptap-horizontal-back::after {
    top:23px;
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
}
.taptap-horizontal-back .taptap-horizontal-sub-arrow,
.taptap-horizontal-back i {
    display:none;
}
/* horizontal menu item description */
.taptap-by-bonfire-horizontal .taptap-menu-item-description {
    font-size:14px;
    line-height:16px;
    color:#999;
    padding-top:5px;
}


/* HORIZONTAL MENU SUBMENU ARROW
**************************************************/
/* submenu arrow */
.taptap-horizontal-sub-arrow {
    position:absolute;
    cursor:pointer;
    top:10px;
    right:5px;
    width:25px;
    height:25px;
  
    display:inline-flex;
    align-items:center;
    
    /* remove the highlight of a tapped link when on a touch device */
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
.taptap-horizontal-sub-arrow::before {
    position:absolute;
    content:'';
    display:block;
    
    width:25px;
    height:25px;
    
    -webkit-mask-size:25px;
    mask-size:25px;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
    
    background-color:#999;

    -webkit-transition:all .25s ease;
    transition:all .25s ease;
}


/* IMAGE MENU
**************************************************/
.taptap-by-bonfire-image-wrapper {
	display:block;
	margin:0 5px;
	text-align:center;
}
.taptap-by-bonfire-image {
	margin:0 auto;
}
.taptap-by-bonfire-image ul {
	list-style-type:none;
	margin:0;
	padding:10px;
}
.taptap-by-bonfire-image ul li {
	list-style-type:none;
	text-align:center;

	-webkit-transition:all .2s ease;
	transition:all .2s ease;
}
.taptap-by-bonfire-image ul li a {
	font-family:'Muli';
    font-weight:700;
	margin:0;
	padding:0;
	display:inline-block;
	text-decoration:none;
	text-align:left;
	
	-webkit-transition:all .2s ease;
	transition:all .2s ease;
}
.taptap-image-grid-item > a {
	font-size:18px;
    letter-spacing:0;
	color:#fff;
}
.taptap-by-bonfire-image .menu {
	list-style:none;
}
.taptap-by-bonfire-image .menu li {
	position:relative;
	border:none;
	z-index:auto;
}
.taptap-by-bonfire-image .menu ul {
	list-style:none;
	margin:0;
	padding:0;
	display:none;
}
.taptap-by-bonfire-image > ul {
    position:relative;
    max-width:960px;

	display:grid;
	grid-gap:20px;
    grid-template-columns:repeat(3, 1fr);
    color:#444;
    list-style-type:none;
    margin:0 auto;
    padding:0;
}
.taptap-by-bonfire-image > ul > li {
	width:100%;
	min-width:100px;
	height:100%;
}
/* image sub-menus wrapper (div added via jQuery) */
.taptap-image-sub-wrapper {
	position:relative;
	z-index:9;
	min-width:100px;
	height:160px;
	padding:0;
	margin:0;
}
.taptap-image-grid-item {
	position:relative;
    width:100%;
    max-height:340px;
    background-color:#333;
	overflow:auto;
	border-radius:7px;
}
.taptap-by-bonfire-image-active .taptap-image-grid-item {
	-webkit-box-shadow:0px 0px 30px 15px rgba(0,0,0,0.75);
	box-shadow:0px 0px 30px 15px rgba(0,0,0,0.75);
}
.taptap-image-grid-item > a {
	width:100%;
	height:160px;
	padding:14px 10px 0 15px !important;
	line-height:20px;

	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
.taptap-by-bonfire-image > ul > li > ul {
    width:100%;
}
.taptap-image-grid-item > ul {
	padding-left:15px !important;
}
.taptap-image-grid-item > ul li {
	z-index:99999 !important;
	opacity:0;

	-webkit-transform:translateY(20px);
	transform:translateY(20px);

	-webkit-transition:all .75s ease;
	transition:all .75s ease;
}
.taptap-image-grid-item > ul > li:first-child {
	margin-top:-50px;
}
.taptap-image-grid-item > ul > li:last-child {
	padding-bottom:10px;
}
/* when image menu opened, give it z-index so it would appear on top of others (also used for gradient overlay animation) */
.taptap-by-bonfire-image-active {
	z-index:1 !important;
	opacity:1;
}
/* top-level gradient overlay */
.taptap-image-grid-item > ul::before {
	opacity:0;
	content:'';
	position:absolute;
	z-index:99999;
	top:-0px;
	left:0;
	width:100%;
	height:160px;
	display:block;
	pointer-events:none;

	-webkit-transition:all .35s ease;
	transition:all .35s ease;
	
	background:#333;
	background:linear-gradient(180deg, rgba(30,30,30,0) 25%, #333 100%, #333 100%);
}
.taptap-by-bonfire-image-active .taptap-image-grid-item > ul::before {
	opacity:1;
}
.taptap-by-bonfire-image-sub-active {
	opacity:1 !important;
	-webkit-transform:translateY(0) !important;
	transform:translateY(0) !important;
}
.taptap-main-wrapper-active .taptap-by-bonfire-image > ul > li {
	opacity:1;
	-webkit-transform:translateX(0);
	transform:translateX(0);
}
/* individual li animation speeds (up to 10) */
.taptap-main-wrapper-active .taptap-by-bonfire-image > ul > li:nth-child(1) {
	-webkit-transition:opacity .75s ease .1s, -webkit-transform .85s ease .1s;
	transition:opacity .75s ease .1s, transform .85s ease .1s;
}
.taptap-main-wrapper-active .taptap-by-bonfire-image > ul > li:nth-child(2) {
	-webkit-transition:opacity .75s ease .15s, -webkit-transform .85s ease .15s;
	transition:opacity .75s ease .15s, transform .85s ease .15s;
}
.taptap-main-wrapper-active .taptap-by-bonfire-image > ul > li:nth-child(3) {
	-webkit-transition:opacity .75s ease .2s, -webkit-transform .85s ease .2s;
	transition:opacity .75s ease .2s, transform .85s ease .2s;
}
.taptap-main-wrapper-active .taptap-by-bonfire-image > ul > li:nth-child(4) {
	-webkit-transition:opacity .75s ease .25s, -webkit-transform .85s ease .25s;
	transition:opacity .75s ease .25s, transform .85s ease .25s;
}
.taptap-main-wrapper-active .taptap-by-bonfire-image > ul > li:nth-child(5) {
	-webkit-transition:opacity .75s ease .3s, -webkit-transform .85s ease .3s;
	transition:opacity .75s ease .3s, transform .85s ease .3s;
}
.taptap-main-wrapper-active .taptap-by-bonfire-image > ul > li:nth-child(6) {
	-webkit-transition:opacity .75s ease .35s, -webkit-transform .85s ease .35s;
	transition:opacity .75s ease .35s, transform .85s ease .35s;
}
.taptap-main-wrapper-active .taptap-by-bonfire-image > ul > li:nth-child(7) {
	-webkit-transition:opacity .75s ease .4s, -webkit-transform .85s ease .4s;
	transition:opacity .75s ease .4s, transform .85s ease .4s;
}
.taptap-main-wrapper-active .taptap-by-bonfire-image > ul > li:nth-child(8) {
	-webkit-transition:opacity .75s ease .45s, -webkit-transform .85s ease .45s;
	transition:opacity .75s ease .45s, transform .85s ease .45s;
}
.taptap-main-wrapper-active .taptap-by-bonfire-image > ul > li:nth-child(9) {
	-webkit-transition:opacity .75s ease .5s, -webkit-transform .85s ease .5s;
	transition:opacity .75s ease .5s, transform .85s ease .5s;
}
.taptap-main-wrapper-active .taptap-by-bonfire-image > ul > li:nth-child(10) {
	-webkit-transition:opacity .75s ease .55s, -webkit-transform .85s ease .55s;
	transition:opacity .75s ease .55s, transform .85s ease .55s;
}
.taptap-image-grid-item > a {
	position:relative;
	z-index:0;
}
.taptap-image-grid-item > a:before {
	content:'';
	position:absolute;
	z-index:-1;
	top:0;
	left:0;
	width:100%;
	height:100%;
	border-radius:7px;
	
	background-position:center center;
	background-size:cover;
	background-repeat:no-repeat;
}


/* IMAGE SUBMENU
**************************************************/
.taptap-by-bonfire-image .sub-menu {
	display:none;
}
.taptap-image-submenu-active {
	display:inline !important;
}
.taptap-by-bonfire-image .sub-menu li {
	text-align:left;
}
.taptap-by-bonfire-image .sub-menu li a {
	color:#686C6F;
	font-size:16px;
    letter-spacing:0;
	margin:0;
	padding:11px 0;
	width:100%;
}
/* indent sub-menu items */
.taptap-by-bonfire-image ul.sub-menu ul li {
	padding-left:10px;
}


/* IMAGE ACCORDION SUBMENU ARROW
**************************************************/
/* top-level arrow */
.taptap-image-sub-arrow {
    position:absolute;
    top:0;
    right:8px;
    pointer-events:none;
	width:36px;
	height:36px;
    display:inline-block;
	margin:8px 0 0 13px;
	padding:0;
	border-radius:50%;
	background-color:#525BDE;
    
    /* remove the highlight of a tapped link when on a touch device */
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
.taptap-by-bonfire-image .taptap-image-sub-arrow-inner::before,
.taptap-by-bonfire-image .taptap-image-sub-arrow-inner::after {
	position:absolute;
    content:'';
    display:block;
    top:17px;
    width:14px;
	height:2px;
	border-radius:50px;
	background-color:#fff;
    
    -webkit-transition:all .5s ease;
	transition:all .5s ease;
}
.taptap-by-bonfire-image .taptap-image-sub-arrow-inner::before {
	left:11px;
    -webkit-transform:rotate(0deg);
	transform:rotate(0deg);
}
.taptap-by-bonfire-image .taptap-image-sub-arrow-inner::after {
    left:11px;
    -webkit-transform:rotate(90deg);
	transform:rotate(90deg);
}
.taptap-by-bonfire-image span.taptap-submenu-active span::before {
    -webkit-transform:rotate(225deg);
	transform:rotate(225deg);
}
.taptap-by-bonfire-image span.taptap-submenu-active span::after {
    -webkit-transform:rotate(135deg);
	transform:rotate(135deg);
}
/* sub-level arrow */
.taptap-by-bonfire-image .sub-menu .taptap-image-sub-arrow {
	top:-5px;
	width:32px;
	height:32px;

	border:2px solid transparent;
	background:#444;

	-webkit-transition:all .35s ease;
	transition:all .35s ease;
}
.taptap-by-bonfire-image .sub-menu span.taptap-submenu-active {
	border-color:#444;
	background:transparent;
}
.taptap-image-sub-arrow-inner {
    position:relative;
    display:block;
    top:0;
    right:0;
    width:40px;
    height:25px;
}
.sub-menu .taptap-image-sub-arrow-inner::before,
.sub-menu .taptap-image-sub-arrow-inner::after {
    position:absolute;
    content:'';
    display:block;
    top:15px;
    width:7px;
	height:2px;
	border-radius:50px;
    background-color:#ADADAC;
    
    -webkit-transition:all .35s ease;
	transition:all .35s ease;
}
.sub-menu .taptap-image-sub-arrow-inner::before {
    left:11px;
    -webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
.sub-menu .taptap-image-sub-arrow-inner::after {
    left:15px;
    -webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.taptap-by-bonfire-image .sub-menu span.taptap-submenu-active span::before {
    -webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.taptap-by-bonfire-image .sub-menu span.taptap-submenu-active span::after {
    -webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}


/* IMAGE MENU ITEM DESCRIPTION
**************************************************/
.taptap-by-bonfire-image .taptap-menu-item-description {
	font-size:11px;
	line-height:11px;
	color:#60666B;
    letter-spacing:0;
    margin:2px 0 0 0;

    -webkit-transition:all .5s ease;
    transition:all .5s ease;
}
/* hide menu descriptions for drop-down items */
.taptap-by-bonfire-image li.menu-item-has-children > a .taptap-menu-item-description { display:none; }


/* GRID MENU (single-level)
**************************************************/
.taptap-by-bonfire-grid {
    margin:0 10px;
}
.taptap-by-bonfire-grid .taptap-menu-item-description {
    display:none;
}
.taptap-by-bonfire-grid ul {
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(80px, max-content));
    grid-gap:5px;
    justify-content:center;
    margin:0;
}
.taptap-by-bonfire-grid li {
    position:relative;
    display:table;
    width:90px;
    height:90px;
    list-style-type:none;
    padding:0;
    margin:0;
}
.taptap-by-bonfire-grid li a {
    display:table-cell;
    width:100%;
    height:100%;
    text-align:center;
    vertical-align:middle;
    box-sizing:border-box;
    font-family:'Inter Tight',sans serif;
    font-weight:500;
    font-size:12px;
    line-height:12px;
    color:#EEEEF1;

    -webkit-transition:color .2s ease;
	transition:color .2s ease;
}
.taptap-by-bonfire-grid li:hover a {
    text-decoration:none;
}
.taptap-by-bonfire-grid li a i {
    display:block;
    color:#BEBEBE;
    font-size:25px;
    margin-bottom:8px;

    -webkit-transition:color .2s ease, -webkit-transform .5s cubic-bezier(.5, 1, 0.2, 1);
    transition:color .2s ease, transform .5s cubic-bezier(.5, 1, 0.2, 1);
}
.taptap-by-bonfire-grid li:hover i {
    color:#fff;

    -webkit-transform:translateY(-3px);
    transform:translateY(-3px);

    -webkit-transition:color .2s ease, -webkit-transform .3s cubic-bezier(.5, 1, 0.2, 2);
    transition:color .2s ease, transform .3s cubic-bezier(.5, 1, 0.2, 2);
}
/* grid menu current menu item */
.taptap-by-bonfire-grid ul li.current-menu-item > a {
    color:#bbb;
}
.taptap-by-bonfire-grid ul li.current-menu-item > a i {
    color:#fff;
}


/* MENU ITEM BADGE
**************************************************/
.taptap-menu-badge {
    position:absolute;
    content:'';
    top:0;
    right:0;

    font-family:'Inter Tight',sans serif;
    font-weight:600;
    font-size:8px;
    line-height:normal;

    padding:2px 3px;
    color:#fff;
    display:block;
    border-radius:1px;
    background-color:#FF8300;
}


/* MAIN WRAPPER
**************************************************/
.taptap-main-wrapper {
	position:fixed;
	z-index:99999;
	top:-1000%;
	left:0;
	width:100%;
	height:100%;
    overflow:hidden;
	opacity:0;
	
	/* prevent iOS scroll flicker */
	-webkit-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
	/* smooth scroll on touch devices */
	-webkit-overflow-scrolling:touch;
	
	-webkit-transition:-webkit-transform .5s ease, top 0s ease .5s, opacity .5s ease 0s;
	transition:transform .5s ease, top 0s ease .5s, opacity .5s ease 0s;
}
.taptap-main-wrapper-active {
	top:0;
	opacity:1;
	
	-webkit-transition:-webkit-transform .5s ease, top 0s ease 0s, opacity .5s ease 0s;
	transition:transform .5s ease, top 0s ease 0s, opacity .5s ease 0s;
}
.taptap-main-inner {
	width:100%;
	height:100%;
    overflow-x:hidden;
	overflow-y:auto;
}
.taptap-main {
	padding:0;
	margin:0;
	display:table;
	width:100%;
	height:100%;
}
.taptap-main-inner-inner {
	display:table-cell;
	vertical-align:top;
	margin:0;
	padding:75px 25px;
}
/* if toolbar is showing */
.taptap-main-inner-inner-toolbar {
	padding-top:157px;
}
.taptap-contents-wrapper {
    margin:0 auto;
}


/* MENU BACKGROUND COLOR
**************************************************/
.taptap-background-color {
	position:fixed;
	z-index:99997;
	top:-1000%;
	left:0;
	width:100%;
	height:100%;
    height:100vh;
	background-color:#111112;
	
	/* prevent iOS scroll flicker */
	-webkit-transform:translate3d(0,0,0);
	
	/* smooth scroll on touch devices */
	-webkit-overflow-scrolling:touch;
	
	-webkit-transform:translateY(-100%);
	transform:translateY(-100%);
	
	-webkit-transition:-webkit-transform .5s ease, top 0s ease .5s;
	transition:transform .5s ease, top 0s ease .5s;
}
.taptap-background-color-active {
	top:0;

	-webkit-transform:translateY(0);
	transform:translateY(0);
	
	-webkit-transition:-webkit-transform .5s ease, top 0s ease 0s;
	transition:transform .5s ease, top 0s ease 0s;
    
    -webkit-box-shadow:0px 0px 5px 0px rgba(0,0,0,0.25);
	box-shadow:0px 0px 5px 0px rgba(0,0,0,0.25);
}


/* MENU BACKGROUND VIDEO
**************************************************/
.taptap-background-video {
	position:fixed;
	z-index:99998;
	top:-1000%;
	left:0;
	width:100%;
	height:100%;
    height:100vh;
	
	/* prevent iOS scroll flicker */
	-webkit-transform:translate3d(0,0,0);
	
	/* smooth scroll on touch devices */
	-webkit-overflow-scrolling:touch;
	
	-webkit-transform:translateY(-100%);
	transform:translateY(-100%);
	
	-webkit-transition:-webkit-transform .5s ease, top 0s ease .5s;
	transition:transform .5s ease, top 0s ease .5s;
}
.taptap-background-video video {
    position:absolute;
    z-index:0;
    top:0;
    left:0;
    width:100%;
    height:100%;
    object-fit:cover;
}
.taptap-background-video-active {
	top:0;

	-webkit-transform:translateY(0);
	transform:translateY(0);
	
	-webkit-transition:-webkit-transform .5s ease, top 0s ease 0s;
	transition:transform .5s ease, top 0s ease 0s;
}


/* MENU BACKGROUND IMAGE
**************************************************/
.taptap-background-image {
	position:fixed;
	z-index:99999;
	top:-1000%;
	left:0;
	width:100%;
	height:100%;
    height:100vh;
	opacity:.1;
	
	/* prevent iOS scroll flicker */
	-webkit-transform:translate3d(0,0,0);
	
	/* smooth scroll on touch devices */
	-webkit-overflow-scrolling:touch;
	
	-webkit-transform:translateY(-100%);
	transform:translateY(-100%);
	
	background-size:cover;
	background-repeat:no-repeat;
	/* background-position set in taptap.php */
	
	-webkit-transition:-webkit-transform .5s ease, top 0s ease .5s;
	transition:transform .5s ease, top 0s ease .5s;
}
.taptap-background-image-active {
	top:0;
	
	-webkit-transform:translateY(0);
	transform:translateY(0);
	
	-webkit-transition:-webkit-transform .5s ease, top 0s ease 0s;
	transition:transform .5s ease, top 0s ease 0s;
}


/* BACKGROUND OVERLAY
**************************************************/
.taptap-background-overlay {
	position:fixed;
	z-index:99996;
	top:-1000%;
	left:0;
	width:100%;
	height:100%;
    height:100vh;
	background-color:#000;
    cursor:pointer;
    opacity:0;
	
	-webkit-transition:opacity .5s ease, top 0s ease .5s;
	transition:opacity .5s ease, top 0s ease .5s;
}
.taptap-background-overlay-active {
	top:0;
    opacity:.5;
	
	-webkit-transition:opacity .5s ease, top 0s ease 0s;
	transition:opacity .5s ease, top 0s ease 0s;
}


/* WIDGETS
**************************************************/
.taptap-widgets-wrapper { margin-top:30px; }
.taptap-widgets-wrapper .widget {
    font-family:'Inter Tight',sans serif;
    font-weight:500;
	text-align:center;
	width:100%;
	margin:10px 0 0 0;
	padding:0;
	font-size:12px;
    line-height:16px;
	color:#8C9093;
	letter-spacing:0;
}
.taptap-widgets-wrapper .widget a {
	color:#8C9093;
	text-decoration:none;
	border:none;
}
.taptap-widgets-wrapper .widget a:hover {
	text-decoration:none;
	border:none;
}
.taptap-widgets-wrapper .widget div,
.taptap-widgets-wrapper .widget span,
.taptap-widgets-wrapper .widget iframe,
.taptap-widgets-wrapper .widget object,
.taptap-widgets-wrapper .widget embed {
	margin-left:auto;
	margin-right:auto;
}
.taptap-widgets-wrapper .widget .widgettitle {
    font-size:12px;
    line-height:16px;
}
/* animate lower widgets distance from top when horizontal menu used */
.taptap-widgets-wrapper-below {
    padding-top:20px;

    -webkit-transition:all .5s ease;
    transition:all .5s ease;
}


/* WIDGETS (in header)
**************************************************/
.taptap-header-widgets-wrapper {
    position:fixed;
    z-index:99996;
    top:15px;
    right:60px;
}


/* SMART SCROLL
**************************************************/
.taptap-smart-header-hide {
    top:calc(0px - 150px) !important;
}


/* MISC
**************************************************/
/* if absolute positioning active */
.taptap-absolute { position:absolute; }
/* when search active, apply 0 opacity to header + menu/woo/search buttons + logo */
.taptap-header-bg-image,
.taptap-header,
.taptap-menu-button-wrapper,
.taptap-woo-button-wrapper,
.taptap-search-button-wrapper,
.taptap-header-widgets-wrapper,
.taptap-logo-wrapper {
    -webkit-transition:opacity .25s ease, top .35s ease;
	transition:opacity .25s ease, top .35s ease;
}
.taptap-hide-header-elements {
    opacity:0 !important;
}


/* SCROLLBAR STYLING
**************************************************/
.scroll-wrapper {
	overflow:hidden !important;
	padding:0 !important;
	position:relative;
}
.scroll-wrapper > .scroll-content {
	border:none !important;
	box-sizing:content-box !important;
	height:auto;
	left:0;	
	margin:0;
	max-height:none !important;
	max-width:none !important;
	overflow:scroll !important;
	position:relative !important;
	top:0;
	width:auto !important;
}
.scroll-wrapper > .scroll-content::-webkit-scrollbar {
	height:0;
	width:0;
}
.scroll-element {
	display:none;
}
.scroll-element.scroll-x.scroll-scrollx_visible,
.scroll-element.scroll-y.scroll-scrolly_visible {
	display:block;
}
/* main menu background scrollbar */
.taptap-main-inner > .scroll-element,
.taptap-main-inner > .scroll-element div {
	border:none;
	margin:0;
	padding:0;
	position:absolute;
	z-index:9999999999;
}
.taptap-main-inner > .scroll-element div {
	display:block;
	height:100%;
	left:0;
	top:0;
	width:100%;
}
.taptap-main-inner > .scroll-element.scroll-x {
	bottom:0;
	height:8px;
	left:0;
	width:100%;

    /* hide horizontal styled scrollbar */
    display:none !important;
}
.taptap-main-inner > .scroll-element.scroll-y {
	max-height:100%;
	right:3px;
	top:3px;
    bottom:3px;
	width:5px;
}
.taptap-main-inner > .scroll-element .scroll-element_outer {
	overflow:hidden;
}
.taptap-main-inner > .scroll-element .scroll-bar { background-color:#5E6469; }
/* update scrollbar offset if both scrolls are visible */
.taptap-main-inner > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track { left:-12px; }
.taptap-main-inner > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track { top:-12px; }

.taptap-main-inner > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -12px; }
.taptap-main-inner > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -12px; }

/* image menu scrollbar */
.taptap-image-grid-item > .scroll-element,
.taptap-image-grid-item > .scroll-element div {
	border:none;
	margin:0;
	padding:0;
	position:absolute;
	z-index:9999999999;
}
.taptap-image-grid-item > .scroll-element div {
	display:block;
	height:100%;
	left:0;
	top:0;
	width:100%;
}
.taptap-image-grid-item > .scroll-element.scroll-x {
	bottom:0;
	height:8px;
	left:0;
	width:100%;
}
.taptap-image-grid-item > .scroll-element.scroll-y {
	max-height:100%;
	right:3px;
	top:3px;
    bottom:3px;
	width:5px;
}
.taptap-image-grid-item > .scroll-element .scroll-element_outer {
	overflow:hidden;
}
.taptap-image-grid-item > .scroll-element .scroll-bar { background-color:#5E6469; }
/* update scrollbar offset if both scrolls are visible */
.taptap-image-grid-item > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track { left:-12px; }
.taptap-image-grid-item > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track { top:-12px; }

.taptap-image-grid-item > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -12px; }
.taptap-image-grid-item > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -12px; }


/* WORDPRESS TOOLBAR (IF WORDPRESS TOOLBAR ACTIVE, PUSH HEADER ELEMENTS DOWN A BIT)
**************************************************/
.wp-toolbar-active { margin-top:32px; }
/* if WordPress amin bar active, keep it above everything else */
#wpadminbar { z-index:9999999999999999999999999999; }


/* MEDIA QUERIES
**************************************************/
/* for the thicker, mobile admin bar */
@media screen and (max-width: 782px) {
	.wp-toolbar-active { margin-top:46px; }
	#wpadminbar { position: fixed !important; }
}
/* image-based menu responsive options */
@media screen and (max-width:800px) {
    .taptap-by-bonfire-image > ul {
		grid-template-columns:repeat(2, 1fr);
	}
}
@media screen and (max-width:600px) {
    .taptap-by-bonfire-image > ul {
		grid-template-columns:none;
    }
    .taptap-image-sub-wrapper {
		height:100%;
	}
	.taptap-image-grid-item {
		position:relative !important;
		max-height:none;
	}
	.taptap-image-grid-item > a:after {
		position:absolute;
	}
	.taptap-image-grid-item > .scroll-element,
	.taptap-image-grid-item > .scroll-element div {
		display:none;
	}
}
.taptap-body-overflow {
    overflow-x:hidden;
}



/* DESKTOP MENU CUSTOM WORK
**************************************************/
* {
    box-sizing:border-box;
}
/* header */
.desktop-header-wrapper {
    position:fixed;
    z-index:999 !important;
    top:15px;
    left:15px;
    right:15px;
    height:150px;
    z-index:99;
    font-family:'Merriweather Sans';
    font-weight:400;

    background-color:#fff;

    -webkit-box-shadow:0px 0px 25px 4px rgba(0,0,0,0.25);
    box-shadow:0px 0px 25px 4px rgba(0,0,0,0.25);
}
/* header top section */
.desktop-header-top {
    position:absolute;
    left:50%;
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%);
    margin:0 auto;
    width:100%;
    max-width:1400px;
    height:40px;
    color:#fff;
    padding:0px 0 0px 10px;

    display:inline-flex;
    align-items:center;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:right;
}
.desktop-header-top-divider {
    position:absolute;
    top:40px;
    left:0;
    right:0;
    width:100%;
    height:1px;

    background-color:#ECECEC;
}
.header-search {
    margin-right:10px;
    width:30px;
    height:30px;
    cursor:pointer;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    -webkit-transition:all .25s ease;
    transition:all .25s ease;
}
.header-search-overlay {
    position:fixed;
    z-index:99999;
    top:0;
    left:-10000%;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,.9);
    backdrop-filter:blur(5px);
    opacity:0;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    transition:all .25s ease 0s, left 0s ease .25s;
}
.header-search-overlay.active {
    left:0;
    opacity:1;

    transition:all .25s ease 0s, left 0s ease 0s;
}
.header-search-wrapper {
    position:relative;
    z-index:999999;
    width:875px;
    height:auto;   
    margin:0 30px;
    opacity:0;

    transform:translateY(40px);

    transition:transform .25s ease .25s, opacity .25s ease .25s;
}
.header-search-overlay.active .header-search-wrapper {
    opacity:1;

    transform:translateY(0);
    
    transition:transform .75s ease 0s, opacity .75s ease 0s;
  }
/* fullscreen search input */
.header-search-wrapper input {
    width:100%;
    height:75px;
    border-radius:100px;
    padding-left:40px;
    
    background-color:transparent;
    border:1.5px solid #F5F5F5;
    outline:none;
}
.header-search-wrapper input,
.header-search-wrapper input::placeholder {
    font-family:Merriweather;
    font-weight:300;
    font-size:28px !important;
    color:#F5F5F5 !important;
    opacity:1 !important;
}
.header-search-wrapper input[type="text"]:focus::placeholder {
    opacity:1 !important;
}
/* fullscreen search button */
.header-search-wrapper button {
    position:absolute;
    top:0;
    right:10px;
    width:75px;
    height:100%;
    cursor:pointer;
    border:none;
    background:none;
}
.header-search-wrapper button img {
    width:26px;
    height:26px;

    transition:all .25s ease;
}
.header-search-wrapper button:hover img {
    opacity:.75;
}
/* fullscreen search close button */
.close-search-overlay {
    cursor:pointer;
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;

    -webkit-transition:all .15s ease;
    transition:all .15s ease;
}
.close-search-overlay::before,
.close-search-overlay::after {
    content:'';
    position:absolute;
    top:15px;
    right:33px;
    width:2px;
    height:34px;
    background-color:#fff;
    border-radius:3px;
}
.close-search-overlay::before {
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
}
.close-search-overlay::after {
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
}
.header-expats {
    height:27px;
    font-size:13px;
    font-weight:500;
    padding:0 15px;
    margin-right:10px;
    border-radius:50px;

    border:1px solid transparent;

    color:#3B3C3C;
    background-color:#F5F5F5;

    display:inline-flex;
    align-items:center;

    -webkit-transition:all .25s ease;
    transition:all .25s ease;
}
.header-expats:hover {
    border-color:#aaa;
    text-decoration:none;
}
/* header bottom section */
.desktop-header-bottom {
    position:absolute;
    top:40px;
    left:50%;
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%);
    margin:0 auto;
    width:100%;
    max-width:1400px;
    height:110px;
    padding:10px 0;

    display:inline-flex;
    align-items:center;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:left;
}
.header-logo {
    position:relative;
    width:245px;
    height:auto;

    display:inline-flex;
    align-items:center;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:center;
}

.desktop-logo {
    position:absolute;
    top:0;
    left:0;
}

/* header menu (desktop) */
ul.header-menu {
    list-style-type:none;
    height:100%;
    margin:0 0 0 100px;
    padding:0;
}
@media screen and (max-width: 1400px) {
    ul.header-menu {
        margin-left:35px;
    }
}
@media screen and (max-width: 1325px) {
    ul.header-menu {
        margin-left:15px;
    }
}
ul.header-menu li {
    position:relative;
    height:100%;

    display:inline-flex;
    align-items:center;
    
    margin-right:-4px;
}
/* header menu item top indicator */
ul.header-menu li::before {
    pointer-events:none;
    content:'';
    position:absolute;
    left:0;
    top:-10px;
    width:100%;
    height:3px;
    background-color:#EA5925;
    opacity:0;

    transition:opacity .2s;
}
ul.header-menu li:hover::before,
.dropdown-active.menu-over-ons::before,
.dropdown-active.menu-expertise::before,
.dropdown-active.menu-voor-wie::before,
.dropdown-active.menu-vacatures::before,
.dropdown-active.menu-publicaties::before  {
    opacity:1;
}
/* vacatures header menu count */
.vacatures-count {
    position:absolute;
    top:24px;
    right:0;
    width:20px;
    height:20px;
    border-radius:50%;
    font-size:14px;
    font-weight:800;
    color:#fff;
    background-color:#EA5925;

    display:inline-flex;
    align-items:center;
    justify-content:center;
}

/* header menu tooltip */
ul.header-menu li::after {
    pointer-events:none;
    content:'';
    position:absolute;
    left:0;
    right:0;
    margin:0 auto;
    bottom:0px;
    opacity:0;

    width:0; 
    height:0; 
    border-left:8px solid transparent;
    border-right:8px solid transparent;

    border-bottom:8px solid #E6E6E6;

    -webkit-transform:translateY(10px);
    transform:translateY(10px);

    -webkit-transition:all 0s;
    transition:all 0s;
}

ul.header-menu li.dropdown-active::after {
    opacity:1;

    -webkit-transform:translateY(0);
    transform:translateY(0);

    -webkit-transition:all .35s ease .15s;
    transition:all .35s ease .15s;
}

/* header menu item */
ul.header-menu li a {
    position:relative;
    height:inherit;
    font-size:16px;
    font-weight:400;
    text-decoration:none;
    color:#3B3C3C;
    padding:0 20px;

    display:inline-flex;
    align-items:center;
}
ul.header-menu li:hover a,
ul.header-menu li.dropdown-active a {
    color:#EA5925;
}

/* header phone / CTA / menu button wrapper */
.header-phone-cta-menu-wrapper {
    position:absolute;
    right:0;
    align-items:center;
    display:inline-flex;
}
/* desktop phone button */
a.header-phone {
    cursor:pointer;
    font-size:16px;
    font-weight:700;
    color:#3B3C3C;

    display:inline-flex;
    align-items:center;
}
a.header-phone:hover {
    text-decoration:none;
}
a.header-phone img {
    width:24px;
    margin-right:10px;
}
/* desktop CTA button */
a.header-cta-button {
    position:relative;
    z-index:1;
    text-decoration:none;
    margin-left:23px;
    padding:15px 21px;
    font-size:16px;
    font-weight:700;
    border-radius:50px;
    display:inline-block;
    color:#fff;
    background-color:#EA5925;
}
a.header-cta-button:hover {
    text-decoration:none;
}
a.header-cta-button::after {
    content:'';
    position:absolute;
    z-index:-1;
    left:20px;
    width:calc(100% - 40px);
    height:1px;
    border-radius:10px;
    background-color:#fff;
    bottom:15px;
    transform:scale(0,1);
    transition:transform 0.2s;
    transform-origin:left top;
}
a.header-cta-button:hover::after {
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}
/* desktop menu button */
.header-menu-button-wrapper {
    cursor:pointer;
    height:40px;
    width:40px;
    margin:0 35px 0 25px;
    -webkit-transform:translateX(2px);
    transform:translateX(2px);
}
.header-menu-button {
    position:relative;
    top:18px;  
    left:7px;
    width:30px;
    height:2px;
    background-color:#3B3B3B;
}
.header-menu-button::before,
.header-menu-button::after {
    content:'';
    position:absolute;
    width:30px;
    height:2px;
    background-color:#3B3B3B;
}
.header-menu-button::before {
    top:-8px;
}
.header-menu-button::after {
    bottom:-8px;
}
.bru-divider {
    width:100%;
    height:1px;
    background-color:#E0E0E0;
    margin:2px 0;
}

/* menu dropdowns */
.header-over-ons-wrapper,
.header-expertise-wrapper,
.header-voor-wie-wrapper,
.header-vacatures-wrapper,
.header-publicaties-wrapper {
    position:fixed;
    z-index:999;
    top:155px;
    left:-1000%;
    max-width:1260px;
    background-color:#F5F5F5;
    border:1px solid #E6E6E6;
    opacity:0;
    margin:0 auto;
    display:inline-flex;
    
    -webkit-transform:translateY(-20px);
    transform:translateY(-20px);

    -webkit-transition:transform .35s ease, opacity .35s ease;
    transition:transform .35s ease, opacity .35s ease;
}
.header-over-ons-left,
.header-expertise-left,
.header-voor-wie-left,
.header-vacatures-left,
.header-publicaties-left {
    width:60%;
    height:inherit;
    padding:50px 0;

    align-items:center;

    display:inline-flex;
    justify-content:center;
    align-content:center;
    align-items:start;
}
.header-over-ons-right,
.header-expertise-right,
.header-voor-wie-right,
.header-vacatures-right,
.header-publicaties-right {
    position:relative;
    z-index:-2;
    width:520px;
    height:inherit;
    padding:50px 0;
    background-color:#fff;
    border:1px solid #E6E6E6;

    align-items:center;
}
.header-vacatures-right {
    padding:0;
}
.header-publicaties-right {
    display:flex;
    overflow:hidden;
}
.header-over-ons-right {
    filter:drop-shadow(0px 0px 14px rgba(0,0,0,.05));
}
.header-expertise-right,
.header-voor-wie-right {
    overflow:hidden;
}
.header-over-ons-right {
    width:40%;
}
/* activate menu */
.dropdown-active.header-over-ons-wrapper,
.dropdown-active.header-expertise-wrapper,
.dropdown-active.header-voor-wie-wrapper,
.dropdown-active.header-vacatures-wrapper,
.dropdown-active.header-publicaties-wrapper {
    left:-50px;
    right:0;
    opacity:1;
    
    -webkit-transform:translateY(0);
    transform:translateY(0);
}
@media screen and (max-width: 1400px) {
    .dropdown-active.header-over-ons-wrapper,
    .dropdown-active.header-expertise-wrapper,
    .dropdown-active.header-voor-wie-wrapper,
    .dropdown-active.header-vacatures-wrapper,
    .dropdown-active.header-publicaties-wrapper {
        left:-5px;
    }
}

/* over ons dropdown left side */
.header-over-ons-left-inner {
    position:relative;
}
.over-ons-thumbs {
    text-align:left;
    margin-left:30px;
}
.over-ons-thumb {
    position:relative;
    width:200px;
    height:200px;
    display:inline-block;
    margin:15px;
    overflow:hidden;
    background-color:#EA5925;
}
.over-ons-thumb img {
    transition:opacity .25s ease;
    width:200px;
    height:auto;
}
.over-ons-thumb:hover img {
    opacity:.15;
}
.over-ons-thumb span {
    position:absolute;
    bottom:0;
    left:0;
    font-size:22px;
    line-height:30px;
    color:#fff;
    padding:20px;
    text-align:left;
    opacity:0;

    transform:translateY(10px);

    transition:opacity .25s ease, transform .5s ease;
}
.over-ons-thumb:hover span {
    opacity:1;
    transform:translateY(0);
}
/* over ons dropdown right side */
.header-over-ons-right-inner {
    position:relative;
    font-size:18px;
    line-height:28px;
    color:#7C7C7B;
    padding:0 35px;
}
.header-over-ons-right-inner span {
    font-family:Merriweather;
    font-size:24px;
    font-weight:400;
    color:#3B3C3C;
    display:block;
    margin-bottom:15px;
}
.header-over-ons-right-inner img {
    width:440px;
}
.header-over-ons-right-inner p {
    font-size:18px;
    line-height:28px;
    color:#7C7C7B;
    margin-bottom:20px;
}
.header-over-ons-right-inner a {
    margin-left:10px;
}

/* expertise dropdown left side */
.header-expertise-left-inner {
    position:relative;
    grid-template-columns:50% 50%;
    margin:0 50px 0 50px;
}
.header-expertise-left-block {
    display:inline-flex;
    justify-content:left;
    align-content:left;
    color:#002111;
    padding:20px 30px 30px 0;
}
.header-expertise-left-inner .header-expertise-left-block:nth-child(1),
.header-expertise-left-inner .header-expertise-left-block:nth-child(3),
.header-expertise-left-inner .header-expertise-left-block:nth-child(5) {
    width:56%;
    padding:20px 40px 20px 0;
}
.header-expertise-left-inner .header-expertise-left-block:nth-child(2),
.header-expertise-left-inner .header-expertise-left-block:nth-child(4),
.header-expertise-left-inner .header-expertise-left-block:nth-child(6) {
    width:43%;
    padding:20px 0px 20px 30px;
}
.header-expertise-left-block span {
    font-family:Merriweather;
    font-size:28px;
    font-weight:400;
    color:#3B3C3C;
    display:block;
}
.header-expertise-left-block p {
    font-size:18px;
    line-height:27px;
    font-weight:300;
    color:#3D3D3D;
    margin-top:10px;
}

.header-expertise-left-inner img {
    margin:20px 0 -20px 15px;
}
.header-expertise-left-inner img:last-of-type {
    margin-bottom:-17px;
}

/* expertise dropdown right side */
.header-expertise-right {
    font-size:24px;
    line-height:40px;
    text-align:center;
}
.header-expertise-right-inner {
    color:#414141;
    font-size:15px;
    line-height:22px;
    text-align:left;
    margin:0 auto;
    width:400px;
}
.header-expertise-right-inner span {
    font-family:Merriweather;
    font-weight:400;
    font-size:42px;
    line-height:54px;
    color:#3B3C3C;
    display:block;
    margin-top:10px;
    margin-bottom:30px;
}
.header-expertise-right-inner span span {
    color:#EA5925;
    display:inline;
    font-style:italic;
}
.header-expertise-right-inner p {
    font-size:20px;
    line-height:34px;
    color:#6F6F6F;
    display:block;
    margin-bottom:50px;
}


/* voor wie dropdown left side */
.header-voor-wie-left-inner {
    font-size:14px;
    margin:10px 100px 10px 50px;
}
.header-voor-wie-left-block {
    display:inline-flex;
    justify-content:left;
    align-content:left;
    color:#002111;
    padding:20px 30px 30px 0;
}
.header-voor-wie-left-inner .header-voor-wie-left-block:nth-child(1),
.header-voor-wie-left-inner .header-voor-wie-left-block:nth-child(3) {
    width:56%;
    padding:20px 40px 30px 0;
}
.header-voor-wie-left-inner .header-voor-wie-left-block:nth-child(2),
.header-voor-wie-left-inner .header-voor-wie-left-block:nth-child(4){
    width:43%;
    padding:20px 0px 30px 30px;
}
.header-voor-wie-left-block span {
    font-family:Merriweather;
    font-size:28px;
    font-weight:400;
    color:#3B3C3C;
    display:block;
}
.header-voor-wie-left-block p {
    font-size:18px;
    line-height:27px;
    font-weight:300;
    color:#3D3D3D;
    margin-top:10px;
}

/* voor wie dropdown right side */
.header-voor-wie-right-inner {
    color:#414141;
    line-height:28px;
    color:#7C7C7B;
    padding:0 25px 0 35px;
    text-align:left;
    margin:0 auto;
    width:100%;
}
.header-voor-wie-right-inner > span {
    font-family:Merriweather;
    font-size:40px;
    font-weight:400;
    line-height:47px;
    color:#3B3C3C;
    display:block;
    margin-bottom:15px;
    padding-top:5px;
}
.header-voor-wie-right-inner img {
    width:440px;
}
.header-voor-wie-right-inner p {
    font-size:20px;
    line-height:34px;
    color:#6F6F6F;
    margin-bottom:20px;
}
.header-voor-wie-right-inner a {
    margin-left:10px;
}

/* header menu voor wie menu images */
.header-voor-wie-image {
    position:relative;
    width:100px;
    height:100px;
    margin-right:23px;
    float:left;

    box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.28);

    display:none; /* random display script will enable */
}
.header-voor-wie-image img {
    width:100px;
    height:100px;
}
.header-voor-wie-image:before {
    content:'';
    position:absolute;
    z-index:99999;
    top:8px;
    right:-10px;

    width:0; 
    height:0; 
    border-top:11px solid transparent;
    border-bottom:11px solid transparent;

    border-left:11px solid #697E7F;
    
    /* hide due to design choice*/
    display:none;
}
/* image tooltip colors */
.header-voor-wie-image-01:before {
    border-left-color:#697E7F;
}
.header-voor-wie-image-02:before {
    border-left-color:#9CACA9;
}
/* phone/email icons */
img.voor-wie-menu-icon {
    float:left;
    width:auto;
    margin:14px 0 0 10px;
}



/* vacatures dropdown left side */
.header-vacatures-left-inner {
    position:relative;
    width:100%;
    margin:0 50px 0 50px;
}
.header-vacatures-left-block {
    width:100%;
    display:inline-flex;
    justify-content:left;
    align-content:left;
    color:#002111;
    padding:20px 0 0 0;
}
.header-vacatures-left-block span {
    font-family:Merriweather;
    font-size:28px;
    font-weight:400;
    color:#3B3C3C;
    display:block;
}
.header-vacatures-left-block p {
    font-size:18px;
    line-height:27px;
    font-weight:300;
    color:#3D3D3D;
    margin-top:10px;
}
/* CTA link */
.header-vacatures-left .cta-button-arrow {
    margin:70px 0 0 0 !important;
}
.header-vacatures-left .cta-button-arrow::before {
    bottom:10px;
}

/* vacatures dropdown right side */
.header-vacatures-right {
    height:550px;
    width:520px;
    font-size:24px;
    line-height:40px;
    text-align:center;
}
.header-vacatures-right-inner {
    color:#414141;
    font-size:15px;
    line-height:22px;
    text-align:left;
    margin:0 auto;
}
.header-vacatures-right-inner > span {
    font-family:Merriweather;
    font-weight:400;
    font-size:42px;
    line-height:54px;
    color:#3B3C3C;
    display:block;
    margin:40px 0 0 40px;
}
.header-vacatures-right-inner > span span {
    display:block;
    color:#EA5925;
    font-style:italic;
}
.header-vacatures-right-inner p {
    font-size:20px;
    line-height:34px;
    font-weight:500;
    color:#6F6F6F;
    display:block;
    margin-left:40px;
}
.header-vacatures-right-inner img {
    position:absolute;
    z-index:-1;
    top:0;
    left:0;
    display:none; /* random display script will enable */
}




/* publicaties dropdown left side */
.header-publicaties-left-inner {
    position:relative;
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    align-items:flex-start;
    margin:0 50px 0 50px;
}
.header-publicaties-left-block,
.header-publicaties-right-block {
    flex:1;
    min-width:250px;

    font-family:Merriweather;
}
.header-publicaties-right-block {
    padding-left:40px;
}
.header-publicaties-left-block > a,
.header-publicaties-right-block > a {
    font-size:28px;
    line-height:120%;
    font-weight:400;
    color:#3B3C3C;
    margin:25px 0 10px 0;
    display:block;
}
.header-publicaties-right-block span {
    display:flex;
    flex-direction:column;
}
.header-publicaties-right-block span a {
    font-size:21px;
    margin:17px 0 0 2px;
    color:#3B3C3C;
}
.header-publicaties-right-block span a:hover {
  color:#EA5925;
}
/* CTA link */
.header-publicaties-left-inner .cta-button-arrow {
    width:fit-content;
    margin:50px 0 0 0 !important;
    display:block;
}
.header-publicaties-left-inner .cta-button-arrow::before {
    bottom:10px;
}

/* publicaties dropdown right side */
#bru-publications-menu-outer {
    margin:0 50px;
    font-size:14px;
    line-height:18px;
    color:#414141;
    position:absolute;
    z-index:20;
    width:100%;
    height:100%;
    margin:0;

    display:flex;

    overflow-x:scroll;
    overflow-y:hidden;

    /* hide scrollbar (IE, Edge, Firefox) */
    -ms-overflow-style:none;
    scrollbar-width:none;
}
/* hide scrollbar (chrome) */
#bru-publications-menu-outer::-webkit-scrollbar { display:none; }


/* publicties blog posts */
.bru-publicaties-right-blogs {
    display:flex;
    align-items:center;
    width:max-content;
    padding-right:125px;
}
/* adjustments (main styling in theme style.css) */
.bru-publicaties-right-blogs .bru-blog-post:first-child {
    padding-left:10px;
    width:375px;
}
.bru-publicaties-right-blogs .bru-blog-post:last-child {
    border:none;
    padding-right:0;
    width:375px;
}
/* header menu dropdown puliations gradients */
.header-publicaties-right::before,
.header-publicaties-right::after {
    position:absolute;
    z-index:999;
    top:0;
    left:0;
    content:'';
    width:55px;
    height:100%;
    pointer-events:none;
    background:-webkit-linear-gradient(left, rgba(255,255,255,1), rgba(255,255,255,0));
}
.header-publicaties-right::after {
    left:auto;
    right:0;
    background:-webkit-linear-gradient(left, rgba(255,255,255,0), rgba(255,255,255,1));
}


/* menu nav arrows */
.bru-menu-arrows {
    position:absolute;
    z-index:99;
    bottom:40px;
    left:65px;
    width:150px;
    text-align:left;
    user-select:none;
}
.bru-menu-arrow-left,
.bru-menu-arrow-right {
    width:40px;
    height:40px;
    margin:0px;
    border-radius:5px;
    display:inline-block;
    background-repeat:no-repeat;
    background-position:center center;
    cursor:pointer;
    outline:2px solid transparent;
    background-color:#fff;

    transition:all .15s ease;
}
.bru-menu-arrow-left {
    background-image:url(icons/icon-arrow-left.svg);

    opacity:1;
    pointer-events:auto;
}
/* enable Left arrow button when scrolled to right */
.bru-menu-arrow-left.inactive {
    /* disable Left arrow button on load (because first item in view) */
    opacity:.4;
    pointer-events:none;
}

.bru-menu-arrow-right {
    background-image:url(icons/icon-arrow-right.svg);
}
/* disable right arrow button when on last item */
.bru-menu-arrow-right.inactive {
    opacity:.4;
    pointer-events:none;
}
.bru-menu-arrow-left:hover {
    transform:translateX(-5px);
}
.bru-menu-arrow-right:hover {
    transform:translateX(5px);
}
.bru-menu-arrow-left:active {
    transform:translateX(-8px);
}
.bru-menu-arrow-right:active {
    transform:translateX(8px);
}


/* blogs horizontal scroll jQuery indicators */
#first-menu-partial, #first-menu-full,
#last-menu-partial, #last-menu-full { display:none; }




/* header flyout menu */
.header-flyout-wrapper {
    position:fixed;
    z-index:9999;
    top:0;
    right:0;
    width:530px;
    min-width:200px;
    height:100%;
    padding-left:100px;
    background-color:#EA5925;
    overflow-y:auto;
    
    -webkit-transform:translateX(100%);
    transform:translateX(100%);

    -webkit-transition:transform .35s ease;
    transition:transform .35s ease;

    display:inline-flex;
    align-items:center;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:left;
}
.header-flyout-menu {
    display:block;
}
.header-flyout-menu ul,
.header-flyout-menu ul li {
    list-style-type:none;
    padding:0;
    margin:0;
}
.header-flyout-menu a {
    position:relative;
    top:0;
    left:0;
    font-family:Merriweather;
    font-weight:400;
    color:#F5F5F5;
    font-size:33px;
    text-decoration:none;
    display:table;
    margin:55px 0;
    padding:0;
}
.header-flyout-menu a:hover {
    text-decoration:none;
}
.header-flyout-menu a::before {
    content:'';
    position:absolute;
    z-index:-1;
    left:0;
    width:calc(100% + 2px);
    height:2px;
    border-radius:10px;
    background-color:#F5F5F5;
    bottom:1px;
    transform:scale(0,1);
    transition:transform 0.2s;
    transform-origin:left top;
}
.header-flyout-menu a:hover::before {
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}
.header-flyout-menu a.tel {
    color:#3B3C3C;
}
.header-flyout-menu a.tel::before {
    background-color:#3B3C3C;
}
.sidebar-active {
    -webkit-transform:translateX(0);
    transform:translateX(0);
}
.sidebar-close {
    cursor:pointer;
    position:absolute;
    top:15px;
    right:15px;
    width:40px;
    height:40px;
    border-radius:50px;

    -webkit-transition:all .15s ease;
    transition:all .15s ease;
}
.sidebar-close::before,
.sidebar-close::after {
    content:'';
    position:absolute;
    top:2px;
    left:18px;
    width:2px;
    height:34px;
    background-color:#E7E5DE;
    border-radius:3px;
}
.sidebar-close::before {
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
}
.sidebar-close::after {
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
}

/* sidebar menu overlay */
.sidebar-overlay {
    position:fixed;
    z-index:999;
    top:0;
    left:-1000%;
    width:100%;
    height:100%;
    background-color:#000;
    opacity:0;

    transition:left 0s ease .35s, opacity .35s ease 0s;
}
.sidebar-overlay.overlay-active {
    left:0;
    opacity:.2;
    
    transition:left 0s ease, opacity .35s ease;
}

/* header menu overlay */
.header-overlay {
    position:fixed;
    z-index:9;
    top:0;
    left:-1000%;
    width:100%;
    height:100%;
    background-color:#000;
    opacity:0;

    transition:left 0s ease .35s, opacity .35s ease 0s;
}
.header-overlay.overlay-active {
    left:0;
    opacity:0.1;
    
    transition:left 0s ease, opacity .35s ease;
}



/* desktop CTA button (orange) */
a.cta-button-orange {
    position:relative;
    z-index:1;
    text-decoration:none;
    font-family:'Jost';
    font-weight:bold;
    font-size:16px;
    line-height:25px;
    color:#fff;
    padding:10px 25px;

    border-radius:50px;
    display:inline-block;
    background-color:#E14C0F;
}
a.cta-button-orange:hover {
    text-decoration:none;
}
a.cta-button-orange::after {
    content:'';
    position:absolute;
    z-index:-1;
    left:25px;
    width:calc(100% - 50px);
    height:1px;
    border-radius:10px;
    background-color:#fff;
    bottom:14px;
    transform:scale(0,1);
    transition:transform 0.2s;
    transform-origin:left top;
}
a.cta-button-orange:hover::after {
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}


/* desktop CTA button (dark) */
a.cta-button-dark {
    position:relative;
    z-index:1;
    text-decoration:none;
    font-family:'Jost';
    font-weight:bold;
    font-size:16px;
    line-height:25px;
    color:#fff;
    padding:10px 25px;
    margin:0;

    border-radius:50px;
    display:inline-block;
    background-color:#002111;
}

a.cta-button-dark:hover {
    text-decoration:none;
}
a.cta-button-dark::after {
    content:'';
    position:absolute;
    z-index:-1;
    left:25px;
    width:calc(100% - 50px);
    height:1px;
    border-radius:10px;
    background-color:#fff;
    bottom:14px;
    transform:scale(0,1);
    transition:transform 0.2s;
    transform-origin:left top;
}
a.cta-button-dark:hover::after {
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}

/* desktop CTA button (no background, arrow) */
a.cta-button-arrow,
a.cta-button-arrow span {
    font-family:'Jost';
    font-weight:500;
    font-size:18px;
    line-height:46px;
    color:#002111;
    display:inline-block !important;
    position:relative;
    top:0px;
    left:0;
}
a.cta-button-arrow:hover,
a.cta-button-arrow:hover span {
    text-decoration:none;
}
a.cta-button-arrow span {
    position:relative;
    z-index:1;
    font-weight:normal;
    margin:0;
    display:inline-block;
    text-decoration:none;
}
a.cta-button-arrow::before {
    content:'';
    position:absolute;
    z-index:-1;
    left:0;
    width:calc(100% + 2px);
    height:2px;
    border-radius:10px;
    background-color:#002111;
    bottom:1px;
    transform:scale(0,1);
    transition:transform 0.2s;
    transform-origin:left top;
}
a.cta-button-arrow:hover::before {
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}
a.cta-button-arrow::after {
    content:'';
    position:absolute;
    top:16px;
    right:-20px;

    margin-left:10px;
    width:16px;
    height:16px;
    display:block;

    background-image:url('icons/arrow-right.svg');
    background-repeat:no-repeat;

    -webkit-transition:all .2s;
    transition:all .2s;
}
a.cta-button-arrow:hover::after {
    right:-25px;
}
/* custom position when needed for arrow CTA button */
.header-publicaties-left-inner a.cta-button-arrow { margin-left:20px; }


/* desktop CTA button (OUTLINE + ICON, dark) */
a.cta-button-outline {
    position:relative;
    z-index:1;
    text-decoration:none;
    font-family:'Jost';
    font-weight:300;
    font-size:18px;
    line-height:25px;
    color:#3B3C3C;
    padding:10px 50px 10px 25px;
    outline:1px solid #3B3C3C;

    border-radius:50px;
    display:inline-block;

    -webkit-transition:all .2s cubic-bezier(.5, 1, 0.2, 1.5);
    transition:all .2s cubic-bezier(.5, 1, 0.2, 1.5);
}
a.cta-button-outline:hover {
    font-weight:400;
    text-decoration:none;
    padding-right:60px;
    padding-left:30px;
    outline:1.5px solid #3B3C3C;
}
a.cta-button-outline::after {
    content:'';
    position:absolute;
    top:18px;
    right:20px;

    width:10px;
    height:10px;
    display:block;
    transform-origin:center;
    background-repeat:no-repeat;

    background-image:url('icons/icon-outline-button.svg');
    background-repeat:no-repeat;

    -webkit-transition:all .2s cubic-bezier(.5, 1, 0.2, 1.5);
    transition:all .2s cubic-bezier(.5, 1, 0.2, 1.5);
}
a.cta-button-outline:hover::after {
    transform:rotate(45deg);
}


/* desktop CTA button (OUTLINE + ICON, orange) */
a.cta-button-outline-orange {
    position:relative;
    z-index:1;
    text-decoration:none;
    font-family:'Jost';
    font-weight:300;
    font-size:18px;
    line-height:25px;
    color:#3B3C3C;
    padding:10px 50px 10px 25px;
    outline:1px solid #EA5925;

    border-radius:50px;
    display:inline-block;

    -webkit-transition:all .2s cubic-bezier(.5, 1, 0.2, 1.5);
    transition:all .2s cubic-bezier(.5, 1, 0.2, 1.5);
}
a.cta-button-outline-orange:hover {
    font-weight:400;
    text-decoration:none;
    padding-right:60px;
    padding-left:30px;
    outline:1.5px solid #EA5925;
}
a.cta-button-outline-orange::after {
    content:'';
    position:absolute;
    top:18px;
    right:20px;

    width:10px;
    height:10px;
    display:block;
    transform-origin:center;
    background-repeat:no-repeat;

    background-image:url('icons/icon-outline-button.svg');
    background-repeat:no-repeat;

    -webkit-transition:all .2s cubic-bezier(.5, 1, 0.2, 1.5);
    transition:all .2s cubic-bezier(.5, 1, 0.2, 1.5);
}
a.cta-button-outline-orange:hover::after {
    transform:rotate(45deg);
}






/* desktop CTA button (ORANGE, no background, arrow) */
a.cta-button-arrow-orange,
a.cta-button-arrow-orange span {
    font-family:'Jost';
    font-weight:500;
    font-size:18px;
    line-height:46px;
    color:#EA5925;
    display:inline-block !important;
    position:relative;
    top:0px;
    left:0;
}
a.cta-button-arrow-orange:hover,
a.cta-button-arrow-orange:hover span {
    text-decoration:none;
}
a.cta-button-arrow-orange span {
    position:relative;
    z-index:1;
    font-weight:normal;
    margin:0;
    display:inline-block;
    text-decoration:none;
}
a.cta-button-arrow-orange::before {
    content:'';
    position:absolute;
    z-index:-1;
    left:0;
    width:calc(100% + 2px);
    height:2px;
    border-radius:10px;
    background-color:#EA5925;
    bottom:12px;
    transform:scale(0,1);
    transition:transform 0.2s;
    transform-origin:left top;
}
a.cta-button-arrow-orange:hover::before {
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}
a.cta-button-arrow-orange::after {
    content:'';
    position:absolute;
    top:16px;
    right:-20px;

    margin-left:10px;
    width:16px;
    height:16px;
    display:block;

    background-image:url('icons/arrow-right-orange.svg');
    background-repeat:no-repeat;

    -webkit-transition:all .2s;
    transition:all .2s;
}
a.cta-button-arrow-orange:hover::after {
    right:-25px;
}





/* desktop CTA button (ORANGE, no background, NO arrow) */
a.cta-button-underline-orange,
a.cta-button-underline-orange span {
    font-family:'Jost';
    font-weight:500;
    font-size:18px;
    line-height:46px;
    color:#EA5925;
    display:inline-block !important;
    position:relative;
    top:0px;
    left:0;
}
a.cta-button-underline-orange:hover,
a.cta-button-underline-orange:hover span {
    text-decoration:none;
}
a.cta-button-underline-orange span {
    position:relative;
    z-index:1;
    font-weight:normal;
    margin:0;
    display:inline-block;
    text-decoration:none;
}
a.cta-button-underline-orange::before {
    content:'';
    position:absolute;
    z-index:-1;
    left:0;
    width:calc(100% + 2px);
    height:2px;
    border-radius:10px;
    background-color:#EA5925;
    bottom:12px;
    transform:scale(0,1);
    transition:transform 0.2s;
    transform-origin:left top;
}
a.cta-button-underline-orange:hover::before {
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}




/* custom vertical spacers when needed */
.v-space-5 { margin-top:5px; }
.v-space-10 { margin-top:10px; }
.v-space-15 { margin-top:15px; }
.v-space-20 { margin-top:20px; }
.v-space-25 { margin-top:25px; }
.v-space-30 { margin-top:30px; }
.v-space-35 { margin-top:35px; }
.v-space-40 { margin-top:40px; }
.v-space-45 { margin-top:45px; }
.v-space-50 { margin-top:50px; }

/* custom horizontal spacing when needed */
.h-space-5 { margin-right:5px; }
.h-space-10 { margin-right:10px; }
.h-space-15 { margin-right:15px; }
.h-space-20 { margin-right:20px; }
.h-space-25 { margin-right:25px; }
.h-space-30 { margin-right:30px; }
.h-space-35 { margin-right:35px; }
.h-space-40 { margin-right:40px; }
.h-space-45 { margin-right:45px; }
.h-space-50 { margin-right:50px; }



/* VACATURES BANNER (in tablet menu)
**************************************************/
.tablet-vacatures-banner {
    position:relative;
    margin:25px 0 0 auto;

    width:400px;
    height:425px;
}
.tablet-vacatures-banner .header-vacatures-right-inner > span,
.tablet-vacatures-banner .header-vacatures-right-inner p {
    transform:scale(.8);
    transform-origin:left top;
}
.tablet-vacatures-banner .header-vacatures-right-inner p {
    margin-top:-20px;
}
.tablet-vacatures-banner img {
    width:100%;
    height:auto;
}




/* UNDERLINE OVER EFFECTS
**************************************************/
/* underline effect on hover (DARK THICK) */
a.underline-effect-dark:hover {
    text-decoration:none;
}
a.underline-effect-dark span {
    position:relative;
    z-index:1;
    display:inline-block;
    text-decoration:none;
}
a.underline-effect-dark span::after {
    content:'';
    position:absolute;
    z-index:-1;
    left:0;
    width:calc(100% + 2px);
    height:3px;
    border-radius:10px;
    background-color:#002111;
    bottom:-1px;
    transform:scale(0,1);
    transition:transform 0.2s;
    transform-origin:left top;
}
a.underline-effect-dark:hover span::after {
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}


/* underline effect on hover (ORANGE THICK) */
a.underline-effect-orange {
    display:block;
}
a.underline-effect-orange:hover {
    text-decoration:none;
}
a.underline-effect-orange span {
    position:relative;
    z-index:1;
    display:inline-block;
    text-decoration:none;
}
a.underline-effect-orange:hover span {
    color:#EA5925;
}
a.underline-effect-orange span::after {
    content:'';
    position:absolute;
    z-index:-1;
    left:0;
    width:calc(100% + 2px);
    height:2px;
    border-radius:10px;
    background-color:#EA5925;
    bottom:2px;
    transform:scale(0,1);
    transition:transform 0.25s;
    transform-origin:left top;
}
a.underline-effect-orange:hover span::after {
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}

/* vacatures menu (to account for multi-line links) */
a.underline-effect-vacatures {
    position:relative;
    display:inline;
    color:black;
    text-decoration:none;
}
a.underline-effect-vacatures:hover {
    text-decoration:none;
}
.underline-effect-vacatures .underline-text {
    background-image:linear-gradient(to right, #EA5925 100%, #EA5925 100%);
    background-position:0 calc(100% - 3px);
    background-size:0% 2px;
    background-repeat:no-repeat;
    padding-bottom:0;
    transition:background-size 0.5s ease, color 0.3s ease;
    display:inline;
}
a.underline-effect-vacatures:hover .underline-text {
    background-size:100% 2px;
    color:#EA5925;
}
  


/* REVIEWS TICKER
**************************************************/
.bru-reviews-ticker-wrapper {
    position:absolute;
    z-index:9;
    max-width:40%;
    top:12px;
    left:10px;
    font-size:15px;
}
.bru-reviews-ticker-wrapper .bru-header-review {
    position:absolute;
    top:0;
    margin-left:125px;
    color:#EA5925;
    white-space:nowrap;
    text-decoration:none;
    font-style:italic;
    pointer-events:none;
    opacity:0;

    -webkit-transition:all .75s ease;
    transition:all .75s ease;
}
.bru-reviews-ticker-wrapper span,
.bru-reviews-ticker-wrapper h1 {
    display:inline;
    color:#EA5925;

    font-family:'Merriweather Sans' !important;
    font-size:15px !important;
    font-style:italic !important;
    font-weight:400 !important;
}
.bru-reviews-ticker-wrapper .bru-header-review.active {
    opacity:1;
    pointer-events:auto;

    -webkit-transition:all 1s ease .5s;
    transition:all 1s ease .5s;
}
.bru-reviews-ticker-wrapper .bru-header-review:hover {
    text-decoration:none;
}

/* just the G-reviews placeholder */
.bru-reviews-ticker-wrapper img {
    position:absolute;
    top:-1px;
}


/* CIRCLED PHONE NUMBER
**************************************************/
.circled-phone-number {
    position:relative;
    width:100%;
    text-align:right;
}
.circled-phone-number span {
    font-family:Merriweather Sans;
    font-size:15px;

    color:#3B3C3C;
    text-align:right;
    display:block;
    width:max-content;
    text-align:left;
    margin:0 10px 20px auto;
}
.circled-phone-number a {
    font-size:33px !important;
}
.circled-phone-number::before {
    content:'';
    position:absolute;
    bottom:-14px;
    right:-5px;
    width:300px;
    height:60px;

    background-image:url('img/phone-circle.svg');
    background-repeat:no-repeat;
    background-size:100% auto;
}
/* disable underline */
.circled-phone-number a::before { display:none; }


/* TABLET/MOBILE MENU
**************************************************/
/* hide tablet header and flyout on desktop*/
.tablet-flyout-wrapper,
.menu-footer-mobile { display:none; }

/* hide tablet/mobile buttons */
.tablet-review,
.tablet-phone,
.tablet-search {
    display:none;
}

/* tablet */
@media screen and (max-width:1300px) {

    /* hide desktop header/menus */
    ul.header-menu,
    .desktop-header-top,
    .header-menu-dropdown,
    .desktop-header-top-divider,
    .header-flyout-wrapper,
    a.header-phone { display:none; }
    
    /* tablet header position */
    .desktop-header-wrapper {
        top:0 !important;
        left:0 !important;
        right:0 !important;
        height:110px;

        -webkit-box-shadow:none;
        box-shadow:none;
    }
    .desktop-header-bottom { top:0; height:100%; }

    /* show tablet/mobile header buttons */
    .tablet-review,
    .tablet-phone,
    .tablet-search {
        top:37px;
        display:inline;
    }

    /* sidebar overlay behind menu */
    .sidebar-overlay {
        z-index:99;
    }



    /* tablet header bg */
    .tablet-header-bg {
        position:fixed;
        z-index:9;
        top:15px;
        left:15px;
        right:15px;
        display:inline;
        height:94px;
        background-color:#fff;
    }

    /* tablet/mobile menu logo/buttons */
    .tablet-review,
    .tablet-phone,
    .tablet-search {
        position:fixed;
        z-index:1000;
        top:42px;
        right:430px;
    }
    .tablet-phone {
        right:372px;
    }
    .tablet-search {
        right:310px;
    }
    .tablet-review img,
    .tablet-phone img,
    .tablet-search img {
        height:25px;
    }
    .tablet-review img {
        height:20px;
        margin-top:3px;
        margin-right:3px;
    }
    /* header button dividers */
    .tablet-review::after,
    .tablet-phone::after,
    .tablet-search::after {
        content:'';
        position:absolute;
        top:-4px;
        right:-13px;
        display:block;
        width:1px;
        height:36px;
        background-color:#E7E5DE;
    }
    .tablet-phone::after {
        right:-21px;
    }
    .tablet-search::after {
        right:-19px;
    }


    /* tablet/mobile menu button */
    .header-menu-button-wrapper.active .header-menu-button {
        background-color:transparent;
    }
    .header-menu-button-wrapper.active .header-menu-button::before {
        top:-1px;
        transform:rotate(45deg);
    }
    .header-menu-button-wrapper.active .header-menu-button::after {
        top:-1px;
        transform:rotate(-45deg);
    }


    /* tablet/mobile flyout */
    .tablet-flyout-wrapper {
        position:fixed;
        z-index:100;
        top:0;
        right:0;
        width:100%;
        height:100%;
        padding:150px 30px 30px 30px;

        display:flex;
        justify-content:left;
        align-items:left;
        flex-direction:row;
        flex-wrap:wrap;
    
        -webkit-transform:translateX(100%);
        transform:translateX(100%);
    
        -webkit-transition:transform .35s ease;
        transition:transform .35s ease;
    
        background-color:#F5F5F5;
        overflow:auto;
    }
    .tablet-flyout-wrapper.sidebar-active {
        -webkit-transform:translateX(0);
        transform:translateX(0);
    }
    .tablet-flyout-wrapper .header-flyout-menu {
        margin:0 0 50px 0;
    }
    .tablet-flyout-wrapper .header-flyout-menu ul {
        margin-bottom:50px;
    }
    .tablet-flyout-wrapper .header-flyout-menu a {
        line-height:120%;
        margin:25px 0;
        color:#3B3C3C !important;
    }
    .tablet-flyout-wrapper .header-flyout-menu a::before {
        background-color:#3B3C3C !important;
    }
    .header-flyout-menu a.tel {
        margin:5px 0 0 0;
    }
    .tablet-flyout-wrapper .circled-phone-number {
        left:50px;
    }

    /* tablet/mobile video */
    .tablet-flyout-wrapper .play-button-large-menu-wrapper {
        position:absolute;
        width:calc(100% - 450px);
        right:50px;
    }
    .tablet-flyout-wrapper .play-button-large-menu-wrapper img {
        width:100%;
    }

    /* tablet/mobile menu footer */
    .menu-footer-tablet {
        display:flex;
        padding:20px 5px 0 5px;
        width:100%;
        font-family:'Jost';
        font-weight:400;
        color:#6F6F6F;
        margin-top:auto;
        border-top:1px solid #6F6F6F;
    }
    .menu-footer-tablet a {
        color:#6F6F6F;
        font-weight:600;
        margin-left:5px;
    }
    .menu-footer-tablet .footer-social {
        margin-left:auto;
        margin-right:auto;
    }
    .menu-footer-tablet .footer-social a {
        margin:0 5px;
    }
    .menu-footer-tablet .footer-social a:first-of-type img {
        transform:scale(1.07) translateY(-0.5px);
    }
    .menu-footer-tablet .footer-menu a {
        color:#6F6F6F;
        font-weight:600;
        margin-right:10px;
    }

    /* language switcher (tablet) */
    .menu-footer-tablet .bru-wpml-widget-wrapper ul {
        margin-top:2px !important;
        --language-spacing:-5px !important;
    }
    .menu-footer-tablet .bru-wpml-widget-wrapper div ul li {
        margin:0 !important;
    }
    .menu-footer-tablet .bru-wpml-widget-wrapper div ul li span {
        color:#fff;
    }
    .menu-footer-tablet .bru-wpml-widget-wrapper div ul li a span {
        color:#ffffff75;
    }
    .menu-footer-tablet .bru-wpml-widget-wrapper div ul li:last-of-type a span {
        margin-left:-4px;
    }
    .menu-footer-tablet .bru-wpml-widget-wrapper div ul li a:hover span {
        color:#fff;
    }
    .menu-footer-tablet .bru-wpml-widget-wrapper div ul li:first-of-type a span::after {
        content:'/';
        color:#ffffff75;
        position:absolute;
        right:-9px;
    }
    .menu-footer-tablet .bru-wpml-widget-wrapper div ul li:last-of-type a span::after {
        content:'/';
        color:#ffffff75;
        position:absolute;
        left:-8px;
    }

}

/* mobile */
@media screen and (max-width:800px) {
    
    /* mobile header position */
    .desktop-header-wrapper {
        height:80px;
    }

    /* hide elements for mobile */
    .menu-footer-tablet,
    .tablet-flyout-wrapper .play-button-large-menu-wrapper,
    .tablet-review,
    .tablet-search,
    .tablet-vacatures-banner { display:none; }
    /* reposition elements for mobile */
    .tablet-header-bg { height:72px; }
    
    /* phone number smaller */
    .circled-phone-number {
        transform:scale(.8);
        transform-origin:top right;
    }
    
    /* animate phone button on mobile */
    .tablet-phone img {
        display:inline-block;
        -webkit-animation: phone-shake 6s infinite 3s ease-in-out;
        animation: phone-shake 6s infinite 3s ease-in-out;
    }
    @keyframes phone-shake {
        0%,
        14%,
        100% {
            /*
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
            */
            -webkit-transform:rotate(0deg) scale(1);
            transform:rotate(0deg) scale(1);
        }
        2%,
        6%,
        10% {
            /*
            -webkit-transform:translate3d(-3px, 0, 0);
            transform:translate3d(-3px, 0, 0);
            */
            -webkit-transform:rotate(-10deg) scale(1.05);
            transform:rotate(-10deg) scale(1.05);
        }
        4%,
        8%,
        12% {
            /*
            -webkit-transform:translate3d(3px, 0, 0);
            transform:translate3d(3px, 0, 0);
            */
            -webkit-transform:rotate(10deg) scale(1.05);
            transform:rotate(10deg) scale(1.05);
        }
    }

    .tablet-phone {
        top:27px;
        right:205px;

        transform:scale(.9);
        transform-origin:center right;
    }
    .tablet-phone::after {
        top:-2px;
        right:-16px;
        height:30px;
    }
    .header-cta-button {
        right:-20px;

        transform:scale(.65);
        transform-origin:center right;
    }
    .header-menu-button-wrapper {
        transform:scale(.8);
        transform-origin:center right;
        margin-right:20px;
    }

    /* logo */
    .header-logo {
        left:20px;
        width:auto;

        transform:scale(.7);
        transform-origin:center left;
    }

    /* mobile menu footer */
    .tablet-flyout-wrapper {
        display:flex;
        justify-content:left;
        align-items:left;
        flex-direction:row;
        flex-wrap:wrap;
        padding:0;
    }
    .header-flyout-menu {
        margin:80px 25px 20px 25px !important;
        width:100%;
    }
    .tablet-flyout-wrapper .header-flyout-menu ul {
        margin-bottom:0;
    }
    /* smallest menu item font size on mobile */
    .tablet-flyout-wrapper .menu-item a,
    .tablet-flyout-wrapper a.tel {
        font-size:20px;
    }

    /* mobile menu footer */
    .menu-footer-mobile {
        display:inline;
        width:100%;
        padding:20px 0 0 0;
        margin:0;
        margin-top:auto;
        background-color:#EA5925;
    }
    .menu-footer-mobile a {
        color:#fff;
    }
    .menu-footer-mobile-top {
        display:flex;
        flex-wrap:wrap;
    }
    .menu-footer-mobile-top .footer-social {
        display:flex;
        width:100%;
        padding:12px 0 10px 20px;
        text-align:right;
    }
    .menu-footer-mobile-top .footer-social a:first-child {
        margin:-10px 0 0 5px;
        padding:0;
    }
    .menu-footer-mobile-top .footer-social a:first-child img {
        width:150px;
    }
    .menu-footer-mobile-top .footer-social a:nth-child(2) {
        margin-right:0;
        margin-left:auto;
    }    
    .menu-footer-mobile-top .footer-social a:nth-child(3) {
        margin-right:25px;
        margin-left:15px;
    }
    .menu-footer-mobile-top .footer-social a:not(:first-child) img {
        width:18px;
    }
    .menu-footer-mobile-top .footer-links {
        display:flex;
        width:100%;
        margin:0 25px 30px 25px;
        padding:25px 5px 0 2px;
        border-top:1px solid #fff;
    }
    .menu-footer-mobile-top .footer-links a {
        display:flex;
        align-items:center;
        font-size:14px;
        font-weight:500;
        text-decoration:none;
    }
    .menu-footer-mobile-top .footer-links a img {
        width:16px;
        margin-right:5px;
    }
    .menu-footer-mobile-top .footer-links a:nth-of-type(2) img {
        width:14px;
    }
    .menu-footer-mobile-top .footer-links a:nth-of-type(3) img {
        margin-left:5px;      
        margin-right:3px;
    }
    .menu-footer-mobile-top .footer-links a:first-child {
        margin-right:auto;
    }
    .menu-footer-mobile-top .footer-links a:nth-child(2),
    .menu-footer-mobile-top .footer-links a:last-child {
        margin-left:0;
    }
    .menu-footer-mobile-top .footer-links a:nth-child(2) {
        margin-right:15px;
    }    
    .menu-footer-mobile-bottom {
        display:flex;
        align-items:center;
        width:100%;
        font-size:14px;
        margin:0;
        padding:20px 0;
        background-color:#3B3C3C;
    }
    .menu-footer-mobile-bottom .footer-menu {
        margin-left:auto;
        margin-right:20px;
    }
    .menu-footer-mobile-bottom .footer-menu a {
        margin:0 8px;
        font-weight:500;
    }
    .tablet-flyout-wrapper .circled-phone-number {
        left:0;
    }

}

/* taptap footer */
@media screen and (max-width: 400px) {
  
    .footer-social {
        padding-left:10px !important;
    }
    .footer-social a:last-of-type {
        margin-right:15px !important;
    }
    .footer-links a:nth-child(2) {
        margin-right:5px !important;
    }
    .footer-links {
        margin-left:15px !important;
        margin-right:15px !important;
    }

}

/* small screen mobile adjustments */
@media screen and (max-width:390px) {
    .header-logo {
        left:10px;
        transform:scale(.55);
    }
    .tablet-phone {
        top:26px;
        right:158px;

        transform:scale(.65);
        transform-origin:center right;
    }
    .header-cta-button {
        right:-20px;

        transform:scale(.45);
    }
    .header-menu-button-wrapper {
        margin-right:15px;
    }
}






/* SEARCH RESULTS (Ajax Search Pro plugin)
**************************************************/
/* results main wrapper */
div#ajaxsearchprores1_1{
    background:#DEDCD5 !important;
    padding:15px 15px 10px 5px !important;
    border-radius:4px !important;
    filter:drop-shadow(2px 2px 5px rgba(0,0,0,.35)) !important;
}
/* results inner wrapper */
div.asp_w.asp_r .results {
    border:none !important;
    outline:none !important;
    padding:0 !important;

    /* scrollbar */
    scrollbar-width:10px !important;
    scrollbar-color:#7E7E7E transparent !important;
    scrollbar-width:thin !important;
}
/* results individual outer wrapper */
div.asp_w.ajaxsearchpro .asp_r_page {
    border:none !important;
    outline:none !important;
    background:transparent !important;
    padding:5px 15px 5px 10px !important;
}
div.asp_w.ajaxsearchpro:hover .asp_r_page {
    background:transparent !important;
    overflow:visible !important;
}
/* results individual inner wrapper */
div.asp_w.ajaxsearchpro .asp_content {
    border:none !important;
    outline:none !important;
    background-color:#fff !important;
    padding:17px 20px 8px 20px !important;
    margin:0 !important;
    border-radius:4px !important;

    transition:.2s ease;
}
div.asp_w.ajaxsearchpro .asp_content:hover {
    filter: drop-shadow(2px 2px 5px rgba(0,0,0,.2));
}
/* results link */
div.asp_w.ajaxsearchpro .asp_content a {
    font-size:14px !important;
    font-family:"termina", sans-serif !important;
    color:#002111 !important;
    font-weight:700 !important;
    line-height:120% !important;
}
div.asp_w.ajaxsearchpro .asp_content:hover a {
    color:#E14C0F !important;
}
/* result text */
div.asp_w.ajaxsearchpro .asp_content .asp_res_text {
    font-family:'Lato' !important;
    font-size:14px !important;
    line-height:160% !important;
    color:#002111 !important;
}
div.asp_w.ajaxsearchpro .asp_content .asp_image {
    padding:0px 10px 10px 0 !important;
}