/*************************************************************
[TABLE OF CONTENTS]

- LOGO AREA
- FANCY MENU BUTTON (DIAMOND)
- FANCY MENU BUTTON (HEXAGON)
- MAIN MENUBAR
- MENUBAR BUTTON MARKER
- MENUBAR HOVER ELEMENT
- DEFAULT ICONS
- TEXT LABELS
- ACCORDION MENU
- ACCORDION SUB-MENU
- ACCORDION SUB-MENU ARROW
- ACCORDION MENU ICONS
- WOOCOMMERCE BUTTON
- SEARCH FIELD
- BACKGROUND OVERLAY
- WIDGET LOCATION
- FONTS
- Z-INDEXES
- MEDIA QUERIES
*************************************************************/


/* LOGO AREA
**************************************************/
.touchy-logo-wrapper {
    position:absolute;
    display:table;
    text-align:center;
    top:0;
    left:0;
    width:100%;
    height:60px;
    background-color:#3E8EE8;
}
.touchy-logo-wrapper-bg {
    position:absolute;
    z-index:-1;
    top:0;
    left:0;
    width:100%;
    height:60px;
    opacity:0.1;
}
/* if logo is image */
.touchy-logo-image {
	display:table-cell;
	vertical-align:middle;
}
.touchy-logo-image img {
	max-height:40px;
    width:auto;
    vertical-align:middle;
    margin:0 18px;
}
/* if logo is text */
.touchy-logo {
	display:table-cell;
	vertical-align:middle;
}
.touchy-logo a {
	font-family:'Inter Tight',sans serif;
    font-weight:500;
	font-size:18px;
	text-decoration:none;
	letter-spacing:0;
	color:#fff;
	margin:0 18px;
	padding:0;
	
	-webkit-transition:all .25s ease;
	transition:all .25s ease;
}
.touchy-logo a:hover {
	text-decoration:none;
	color:#fff;
}


/* FANCY MENU BUTTON (DIAMOND)
**************************************************/
.touchy-fancy-menu-button {
    position:absolute;
    z-index:1;
    left:50%;
    bottom:20px;
    -webkit-transform:translateY(50%) translateX(-50%);
    transform:translateY(50%) translateX(-50%);
    width:38px;
    height:38px;
    margin:0;
    padding:0;
    cursor:pointer;
    background-color:transparent;

    /* remove the flickering effect of a tapped link/button when on a touch device */
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
/* Touchy fancy menu button open button */
.touchy-fancy-menu-button-open {
    position:absolute;
    top:0;
    left:0;
    width:inherit;
    height:inherit;
}
.touchy-fancy-menu-button-open-bg {
    position:absolute;
    width:inherit;
    height:inherit;
    overflow:hidden;
    border-radius:6px;
    
    background-color:#8181DF;

    -webkit-transform:scale(1) rotate(-45deg);
    transform:scale(1) rotate(-45deg);
    
    -webkit-transition:-webkit-transform .25s cubic-bezier(1, .2, .2, 2) 0s;
    transition:-webkit-transform .25s cubic-bezier(1, .2, .2, 2) 0s;
}

.touchy-menu-button-active .touchy-fancy-menu-button-open-bg {
    -webkit-transform:scale(.9) rotate(-45deg);
    transform:scale(.9) rotate(-45deg);

    -webkit-transition:-webkit-transform .35s cubic-bezier(.5, 1, .2, 2) .3s;
    transition:-webkit-transform .35s cubic-bezier(.5, 1, .2, 2) .3s;
}
.touchy-fancy-menu-button-open::before,
.touchy-fancy-menu-button-open::after {
    position:absolute;
    z-index:2;
    content:'';
    left:0;
    right:0;
    margin:0 auto;
    width:11px;
    height:2px;

    background-color:#fff;

    -webkit-transform:scaleX(1);
    transform:scaleX(1);

    -webkit-transition:-webkit-transform .25s cubic-bezier(.5, 1, .2, 2) .1s;
    transition:-webkit-transform .25s cubic-bezier(.5, 1, .2, 2) .1s;
}
.touchy-fancy-menu-button-open::before {
    top:16px;
}
.touchy-fancy-menu-button-open::after {
    top:21px;
}
.touchy-menu-button-active .touchy-fancy-menu-button-open::before,
.touchy-menu-button-active .touchy-fancy-menu-button-open::after {
    -webkit-transform:scaleX(.5);
    transform:scaleX(.5);

    -webkit-transition:-webkit-transform 0 ease;
    transition:-webkit-transform 0 ease;
}
/* Touchy fancy menu button close button */
.touchy-fancy-menu-button-close {
    position:absolute;
    z-index:2;
    top:0;
    left:0;
    width:inherit;
    height:inherit;

    -webkit-transform:scale(.5);
    transform:scale(.5);

    -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), -webkit-transform .35s cubic-bezier(.5, 1, .2, 1.5);
    transition:clip-path .5s cubic-bezier(.2, .3, .5, 2), transform .35s cubic-bezier(.5, 1, .2, 1.5);
}
.touchy-fancy-menu-button-close-bg {
    position:absolute;
    z-index:1;
    width:inherit;
    height:inherit;
    overflow:hidden;
    border-radius:6px;
    
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);

    background-color:#5C6DDF;
}
.touchy-menu-button-active .touchy-fancy-menu-button-close {
    -webkit-clip-path:circle(50px at center center);
    clip-path:circle(50px at center center);

    -webkit-transform:scale(1);
    transform:scale(1);

    -webkit-transition:-webkit-clip-path .5s cubic-bezier(.75, .5, .2, 1), -webkit-transform .35s cubic-bezier(.5, 1, .2, 1.5);
    transition:clip-path .5s cubic-bezier(.75, .5, .2, 1), transform .35s cubic-bezier(.5, 1, .2, 1.5);
}
.touchy-fancy-menu-button-close::before,
.touchy-fancy-menu-button-close::after {
    position:absolute;
    z-index:2;
    content:'';
    top:18px;
    left:0;
    right:0;
    margin:0 auto;
    width:14px;
    height:2px;
    background-color:#fff;
}
.touchy-fancy-menu-button-close::before {
    -webkit-transform:rotate(45deg) scale(.15);
    transform:rotate(45deg) scale(.15);
}
.touchy-fancy-menu-button-close::after {
    -webkit-transform:rotate(-45deg) scale(.15);
    transform:rotate(-45deg) scale(.15);
}
.touchy-menu-button-active .touchy-fancy-menu-button-close::before {
    -webkit-transform:rotate(45deg) scale(1);
    transform:rotate(45deg) scale(1);
}
.touchy-menu-button-active .touchy-fancy-menu-button-close::after {
    -webkit-transform:rotate(-45deg) scale(1);
    transform:rotate(-45deg) scale(1);
}
.touchy-fancy-menu-button-close::before,
.touchy-fancy-menu-button-close::after {
    -webkit-transition:-webkit-transform 0s ease .35s;
    transition:-webkit-transform 0s ease .35s;
}
.touchy-menu-button-active .touchy-fancy-menu-button-close::before,
.touchy-menu-button-active .touchy-fancy-menu-button-close::after {
    -webkit-transition:-webkit-transform .35s cubic-bezier(.5, 1, .2, 1) .07s;
    transition:-webkit-transform .35s cubic-bezier(.5, 1, .2, 1) .07s;
}
/* fancy menu button background images */
.touchy-fancy-menu-button-open-bg::before,
.touchy-fancy-menu-button-close-bg::before {
    position:absolute;
    content:'';
    top:0%;
    left:0%;
    width:100%;
    height:100%;
    background-size:cover;
    background-position:center;
    -webkit-transform:rotate(45deg) scale(1.3);
    transform:rotate(45deg) scale(1.3);
}


/* FANCY MENU BUTTON (HEXAGON)
**************************************************/
.touchy-fancy-button-hexagon {
    position:absolute;
    z-index:1;
    left:50%;
    bottom:33px;
    -webkit-transform:translateY(50%) translateX(-50%);
    transform:translateY(50%) translateX(-50%);
    width:50px;
    height:50px;
    margin:0;
    padding:0;
    cursor:pointer;
    background-color:transparent;

    /* remove the flickering effect of a tapped link/button when on a touch device */
	-webkit-tap-highlight-color:rgba(0,0,0,0);


    -webkit-transform-style:preserve-3d;
    transform-style:preserve-3d;

    -webkit-perspective:1000px;
    perspective:1000px;
}
/* hexagon menu button front/back joint styling */
.touchy-fancy-button-hexagon-front,
.touchy-fancy-button-hexagon-back {
    height:inherit;

    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;

    -webkit-transform-style:preserve-3d;
    transform-style:preserve-3d;

    -webkit-transition:-webkit-transform .75s cubic-bezier(.6, 0.1, 0.1, 1.25);
    transition:transform .75s cubic-bezier(.6, 0.1, 0.1, 1.25);
}
/* hexagon menu button icon joint styles */
.touchy-fancy-button-hexagon-icon {
    position:relative;
    z-index:2;
    top:25px;
    
    -webkit-perspective:inherit;
    perspective:inherit;
    
    -webkit-transform:translateY(-50%) translateZ(20px);
    transform:translateY(-50%) translateZ(20px);
}
/* hexagon menu button front */
.touchy-fancy-button-hexagon-front {
    -webkit-transform:rotateY(0deg);
    transform:rotateY(0deg);
}
.touchy-menu-button-active .touchy-fancy-button-hexagon-front {
    -webkit-transform:rotateX(180deg);
    transform:rotateX(180deg);
}
/* hexagon menu button middle bar */
.touchy-fancy-button-hexagon-front .touchy-fancy-button-hexagon-icon {
    position:absolute;
    content:'';
    top:22px;
    left:16px;
    
    width:18px;
    height:2px;
    background-color:#fff;
    border-radius:3px;
}
/* hexagon menu button top bar */
.touchy-fancy-button-hexagon-front .touchy-fancy-button-hexagon-icon::before {
    position:absolute;
    content:'';
    left:0;
    top:-6px;
    
    width:18px;
    height:2px;
    background-color:#fff;
    border-radius:3px;

    -webkit-transform-origin:9px 0px;
    transform-origin:9px 0px;
}
/* hexagon menu button bottom bar */
.touchy-fancy-button-hexagon-front .touchy-fancy-button-hexagon-icon::after {
    position:absolute;
    content:'';
    top:6px;
    right:0;
    
    width:18px;
    height:2px;
    background-color:#fff;
    border-radius:3px;

    -webkit-transform-origin:1px 3px;
    transform-origin:1px 3px;
}
/* hexagon menu button back */
.touchy-fancy-button-hexagon-back {
    position:absolute;
    top:0;
    left:0;
    width:inherit;

    -webkit-transform:rotateX(-180deg);
    transform:rotateX(-180deg);
}
.touchy-menu-button-active .touchy-fancy-button-hexagon-back {
    -webkit-transform:rotateY(0deg);
    transform:rotateY(0deg);
}
/* hexagon menu button close button */
.touchy-fancy-button-hexagon-back .touchy-fancy-button-hexagon-icon::before,
.touchy-fancy-button-hexagon-back .touchy-fancy-button-hexagon-icon::after {
    position:absolute;
    content:'';
    top:-4px;
    left:16px;
    
    width:18px;
    height:2px;
    background-color:#fff;
    border-radius:3px;
}
.touchy-fancy-button-hexagon-back .touchy-fancy-button-hexagon-icon::before {
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
}
.touchy-fancy-button-hexagon-back .touchy-fancy-button-hexagon-icon::after {
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
}
/* the hexagon shape */
.touchy-fancy-button-hexagon-inner {
    display:inline-block;
    width:50px;
    height:50px;
    filter:url(#touchy-hex);
}
.touchy-fancy-button-hexagon-inner::before {
    content:'';
    display:block;
    padding-top:86%;
    clip-path:polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);

    -webkit-transform:rotate(90deg);
    transform:rotate(90deg);
}
.touchy-fancy-button-hexagon-front .touchy-fancy-button-hexagon-inner::before {
    background-color:#8181DF;
}
.touchy-fancy-button-hexagon-back .touchy-fancy-button-hexagon-inner::before {
    background-color:#5C6DDF;
}
.touchy-fancy-button-hexagon svg {
    position:absolute;
    height:0;
    width:0;
    opacity:0;
    pointer-events:none;
}


/* MAIN MENUBAR
**************************************************/
.touchy-wrapper {
    position:absolute;
	display:table;
	table-layout:fixed;
	left:0;
	right:0;
    margin:0 auto;
	top:60px;
	width:100%;
	height:51px;
	vertical-align:middle;
	
    -webkit-box-shadow:0px 0px 1px 1px rgba(0,0,0,0.12);
	box-shadow:0px 0px 1px 1px rgba(0,0,0,0.12);
    
    -webkit-transition:-webkit-box-shadow .35s ease;
	transition:box-shadow .35s ease;
    
    /* for sticky on iOS (otherwise finger will have to be lifted before menubar sticks to top) */
    -webkit-transform:translate3d(0px,0px,0px);
    transform:translate3d(0px,0px,0px);
}
.touchy-wrapper-shadow-active {
    -webkit-box-shadow:0px 0px 10px 1px rgba(0,0,0,0.2) !important;
	box-shadow:0px 0px 10px 1px rgba(0,0,0,0.2) !important;
}
.touchy-wrapper-inner {
    display:table;
	width:100%;
	height:100%;
}
/* when sticky after scroll */
.touchy-wrapper-top {
    position:fixed;
    top:0;
}
/* Shared styles for menubar buttons */
.touchy-wrapper .touchy-back-button,
.touchy-wrapper .touchy-call-button,
.touchy-wrapper .touchy-email-button,
.touchy-wrapper .touchy-woo-button,
.touchy-wrapper .touchy-search-button,
.touchy-menu-button {
    position:relative;
	min-width:50px;
	cursor:pointer;
	text-align:center;
	vertical-align:middle;
	display:table-cell;
	text-decoration:none !important;
	
	-webkit-transition: all .15s ease;
	transition: all .15s ease;

	/* menubar button icon color + background color */
	color:#A1A1A7;
	background-color:#fff;
	
	/* remove the flickering effect of a tapped link/button when on a touch device */
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
/* background color */
.touchy-menubar-bg-color {
    position:absolute;
    z-index:-1;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
/* the buttons */
.touchy-back-button,
.touchy-call-button,
.touchy-email-button,
.touchy-woo-button,
.touchy-search-button {
	font-size:22px;
}
/* Menu button */
.touchy-menu-button {
    position:relative;
	padding-top:5px;
	font-size:22px;

	/* remove separator from the menu button */
	border:none;
}
/* button separators */
.touchy-wrapper .touchy-menubar-button::after {
    content:'';
    position:absolute;
    top:5px;
    bottom:5px;
    right:0;
    width:1px;
    height:auto;
    
    -webkit-transition:opacity .1s ease 0s;
	transition:opacity .1s ease 0s;
}
/* hide last button's separator */
.touchy-wrapper .touchy-menubar-button:last-child::after {
    display:none;
}


/* MENUBAR BUTTON MARKER
**************************************************/
.touchy-back-button .touchy-menubar-badge,
.touchy-call-button .touchy-menubar-badge,
.touchy-email-button .touchy-menubar-badge,
.touchy-search-button .touchy-menubar-badge,
.touchy-woo-button .touchy-menubar-badge,
.touchy-menu-button .touchy-menubar-badge {
    position:absolute;
    z-index:1;
    top:-5px;
    right:2px;
    padding:1px 3px;

    font-family:'Inter Tight',sans serif;
    font-weight:700;
    font-size:9px;
    color:#fff;
    background-color:#FF7714;
    border-radius:1px;
}
  
  
/* MENUBAR HOVER ELEMENT
**************************************************/
.touchy-menubar-hover-element {
    content:'';
    position:absolute;
    z-index:-1;
    top:2px;
    left:0;
    right:0;
    width:10px;
    height:3px;
    border-radius:50px;
    -webkit-transform:scaleX(0);
    transform:scaleX(0);
    opacity:.75;
    margin:0 auto;
    background-color:#8B80A8;

    -webkit-transition:transform .05s cubic-bezier(.77,.2,.5,2);
    transition:transform .05s cubic-bezier(.77,.2,.5,2);
}
.touchy-back-button:hover .touchy-menubar-hover-element,
.touchy-call-button:hover .touchy-menubar-hover-element,
.touchy-email-button:hover .touchy-menubar-hover-element,
.touchy-search-button:hover .touchy-menubar-hover-element,
.touchy-woo-button:hover .touchy-menubar-hover-element,
.touchy-menu-button:hover .touchy-menubar-hover-element,
.touchy-search-button-active .touchy-menubar-hover-element,
.touchy-menu-button-active .touchy-menubar-hover-element{
    -webkit-transform:scaleX(1);
    transform:scaleX(1);
    opacity:1;

    -webkit-transition:transform .25s cubic-bezier(.77,.2,.5,2);
    transition:transform .25s cubic-bezier(.77,.2,.5,2);
}


/* DEFAULT ICONS
**************************************************/
/* default back button */
.touchy-default-back {
    position:relative;
    top:1px;
    margin:0 auto;
    width:21px;
    height:2px;
    background-color:#C2C2C6;
}
.touchy-default-back:before,
.touchy-default-back:after {
    content:'';
    position:absolute;
    left:-2px;
    display:block;
    width:8px;
    height:2px;
    background-color:#C2C2C6;
}
.touchy-default-back:before {
    top:-2px;
    -webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.touchy-default-back:after {
    top:2px;
    -webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
/* default call icon */
.touchy-default-call-one,
.touchy-default-call-two,
.touchy-default-call-three {
    position:relative;
    top:-5px;
    left:-3px;
    display:inline-block;
    margin:0 auto;
    width:4px;
    height:4px;
    background-color:#C2C2C6;
}
.touchy-default-call-two { left:-1px; }
.touchy-default-call-three { left:1px; }
.touchy-default-call-one:before,
.touchy-default-call-two:before,
.touchy-default-call-three:before,
.touchy-default-call-one:after,
.touchy-default-call-two:after,
.touchy-default-call-three:after {
    content:'';
    position:absolute;
    display:block;
    width:4px;
    height:4px;
    background-color:#C2C2C6;
}
.touchy-default-call-one:before,
.touchy-default-call-two:before,
.touchy-default-call-three:before {
    top:-6px;
}
.touchy-default-call-one:after,
.touchy-default-call-two:after,
.touchy-default-call-three:after {
    top:6px;
}
/* default email icon */
.touchy-default-email-outer {
    position:relative;
    display:block;
    width:19px;
    height:13px;
    
    -webkit-box-shadow:0px 0px 0px 2px #C2C2C6;
    box-shadow:0px 0px 0px 2px #C2C2C6;

    margin:0 auto;
    padding:0;
}
.touchy-default-email-outer:before {
    content:'';
    position:absolute;
    top:5px;
    left:4px;
    width:2px;
    height:7px;
    background-color:#C2C2C6;
    
    -webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
.touchy-default-email-outer:after {
    content:'';
    position:absolute;
    top:5px;
    left:13px;
    width:2px;
    height:7px;
    background-color:#C2C2C6;
    
    -webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.touchy-default-email-inner:before {
    content:'';
    position:absolute;
    top:1px;
    left:5px;
    width:2px;
    height:10px;
    background-color:#C2C2C6;
    
    -webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.touchy-default-email-inner:after {
    content:'';
    position:absolute;
    top:1px;
    left:12px;
    width:2px;
    height:10px;
    background-color:#C2C2C6;
    
    -webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
/* default search icon */
.touchy-default-search-outer {
    position:relative;
    display:block;
    top:1px;
    left:4px;
    width:8px;
    height:8px;
    
    -webkit-box-shadow:0px 0px 0px 2px #C2C2C6;
    box-shadow:0px 0px 0px 2px #C2C2C6;

    margin:0 auto;
    padding:0;
}
.touchy-default-search-outer:after {
    content:'';
    position:absolute;
    top:7px;
    left:10px;
    width:2px;
    height:7px;
    background-color:#C2C2C6;
    
    -webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.touchy-default-search-inner {
    position:relative;
    top:-2px;
    left:-15px;
    width:11px;
    height:2px;
    background-color:#C2C2C6;
}
.touchy-default-search-inner:before {
    content:'';
    position:absolute;
    left:0;
    top:5px;
    width:9px;
    height:2px;
    background-color:#C2C2C6;
}
.touchy-default-search-inner:after {
    content:'';
    position:absolute;
    left:0;
    top:10px;
    width:11px;
    height:2px;
    background-color:#C2C2C6;
}
/* default menu icon */
.touchy-default-menu {
    position:relative;
    top:-2px;
    width:23px;
    height:2px;
    margin:0 auto;
    background-color:#C2C2C6;

    -webkit-transition:all .1s ease;
    transition:all .1s ease;
}
.touchy-default-menu:before,
.touchy-default-menu:after {
    content:'';
    position:absolute;
    display:block;
    width:23px;
    height:2px;
    background-color:#C2C2C6;

    -webkit-transition:all .25s ease;
    transition:all .25s ease;
}
.touchy-default-menu:before { top:-6px; }
.touchy-default-menu:after { top:6px; }


/* TEXT LABELS
**************************************************/
.touchy-wrapper .touchy-back-button::before,
.touchy-wrapper .touchy-call-button::before,
.touchy-wrapper .touchy-email-button::before,
.touchy-wrapper .touchy-woo-button::before,
.touchy-wrapper .touchy-search-button::before,
.touchy-wrapper .touchy-menu-button::before {
    position:absolute;
    bottom:7px;
    font-family:'Inter Tight',sans serif;
    font-weight:500;
    font-size:10px;
    color:#A59696;
    left:0;
    right:0;
    
    -webkit-transition: all .3s ease;
	transition: all .3s ease;
}
.touchy-wrapper .touchy-search-button-active::before { color:#fff; }
.touchy-wrapper .touchy-menu-button-active::before { color:#fff; }


/* ACCORDION MENU
**************************************************/
/* main menu */
.touchy-by-bonfire-wrapper {
    position:absolute;
    top:125px;
    bottom:20px;
    left:-1000%;
    margin:0;
    padding:0;
    width:calc(100% - 20px);
    max-width:300px;
    margin:0 10px;
}
.touchy-by-bonfire-wrapper-scrolled { position:fixed; top:65px !important; }
.touchy-menu-active {
    left:auto;
    right:0;
}
.touchy-by-bonfire {
    position:absolute;
    width:100%;
    top:0;
    right:0;
    left:0;
    overflow-y:auto;
    overflow-x:hidden;
    max-height:100%;
    border-radius:4px;
    background-color:#fff;
    opacity:0;
    padding:0;
    
    -webkit-box-shadow:1px 1px 1px 1px rgba(0,0,0,0.1);
    box-shadow:1px 1px 1px 1px rgba(0,0,0,0.1);
    
    -webkit-transform:translateY(0) scale(.97);
    transform:translateY(0) scale(.97);
    
    -webkit-transition:all .3s cubic-bezier(.8,.35,.25,2.5);
	transition:all .3s cubic-bezier(.8,.35,.25,2.5);
}
.smooth-scroll {
    /* smooth scroll on touch devices */
	-webkit-overflow-scrolling:touch;
}
.touchy-menu-active .touchy-by-bonfire {
    opacity:1;
    -webkit-transform:translateY(0) scale(1);
	transform:translateY(0) scale(1);
}
.touchy-by-bonfire ul {
    display:block;
	width:inherit;
	list-style-type:none;
	margin:0;
	padding:0;
}
/* individual main menu items */
.touchy-by-bonfire ul li {
    position:relative;
	width:100%;
	min-height:50px;
	list-style-type:none;
	margin:0;
	padding:0;
	text-align:left;
    overflow:hidden;
}
.touchy-by-bonfire ul.menu > li:first-child { margin-top:3px; }
.touchy-by-bonfire ul.menu > li:last-child { margin-bottom:3px; }
.touchy-by-bonfire ul li a {
    position:relative;
    box-sizing:border-box;
	font-family:'Inter Tight',sans serif;
    font-weight:500;
	font-size:15px;
	color:#696867;
	margin:0;
	padding:10px 10px 10px 15px;
	text-decoration:none;
    width:100%;
    min-height:50px;

    display:flex;
    align-items:center;
    flex-direction:row;
    flex-wrap:wrap;
	
	-webkit-transition:all .2s ease;
	transition:all .2s ease;
}
.touchy-by-bonfire ul li a span {
    display:flex;
    align-items:center;
}
.touchy-by-bonfire .menu-item-has-children > a {
    width:calc(100% - 42px) !important;
}
/* menu description */
.touchy-menu-item-description {
    width:100%;
    font-family:'Inter Tight',sans serif;
    font-weight:500;
    font-size:13px;
    line-height:16px;
    color:#A1A19E;
    padding-top:5px;
}


/* ACCORDION SUB-MENU
**************************************************/
.touchy-by-bonfire .menu {
	list-style:none;
	margin:0;
	padding:0;
}
.touchy-by-bonfire ul.sub-menu {
	list-style:none;
	margin:0;
	padding:0;
	display:none;
    background-color:#F8F8F7;
}
/* sub-menu items */
.touchy-by-bonfire .sub-menu a {
	color:#848482;
	margin:0;
}
.touchy-by-bonfire .sub-menu a:hover {
	color:#6390CF;   
}
/* show border on top-level items only */
.touchy-by-bonfire .menu > li { border-bottom:1px solid #E7E7E7; }
/* no border on last menu item */
.touchy-by-bonfire .menu li:last-child { border-bottom:none; }
/* show top border on first child only */
.touchy-by-bonfire ul.sub-menu > li:first-child {
	border-top:1px solid #E7E7E7;
}
.touchy-by-bonfire .menu li:first-child,
.touchy-by-bonfire ul.sub-menu > li li:first-child {
	border-top:none;
}
/* sub-menu item divider */
.touchy-by-bonfire ul li ul li:after {
    position:absolute;
    top:0;
    left:5px;
    right:5px;
    content:'';
    border-radius:50px;
    height:1px;
    background-color:#E6E6E6;
}
.touchy-by-bonfire ul.menu > li > ul.sub-menu > li:first-child:after { display:none; }
.touchy-by-bonfire ul.menu > li > ul.sub-menu > li:first-child { padding-top:0; }


/* ACCORDION SUB-MENU ARROW
**************************************************/
/* sub-menu arrow */
.touchy-sub-arrow {
    position:absolute;
    cursor:pointer;
    top:0;
    right:0;
    width:43px;
    height:50px;
    
    /* remove the highlight of a tapped link when on a touch device */
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
.touchy-sub-arrow-inner {
    position:relative;
    display:block;
    top:50%;
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%);
    right:0;
    width:43px;
    height:27px;
    border-left-width:1px;
    border-left-style:solid;
    border-color:#D3D3D3;
}
.touchy-sub-arrow-inner::before,
.touchy-sub-arrow-inner::after {
    position:absolute;
    content:'';
    display:block;
    top:13px;
    width:9px;
    height:2px;
    background-color:#BBBBBA;
    
    -webkit-transition:all .15s ease;
	transition:all .15s ease;
}
.touchy-sub-arrow-inner::before {
    right:22px;
    -webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
.touchy-sub-arrow-inner::after {
    right:17px;
    -webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}


/* ACCORDION MENU ICONS
**************************************************/
.touchy-by-bonfire ul li a i,
.touchy-by-bonfire .sub-menu a i {
    font-size:12px;
	margin:0 10px 0 -3px;
	
	-webkit-transition:all .2s ease;
	transition:all .2s ease;
}
.touchy-by-bonfire ul li a i {
	color:#8D8D87;
}
.touchy-by-bonfire .sub-menu a i {
	color:#B0B0A9;
}
/* highlighted menu item */
.touchy-by-bonfire ul li.marker > a::before {
    content:'';
    position:absolute;
    top:50%;
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%);
    left:2px;
    display:block;
    border-radius:50px;
    width:3px;
    height:calc(100% - 6px);
    background-color:#C5BD21;

    -webkit-transition:all .25s cubic-bezier(.5, 1, .2, 2.25);
    transition:all .25s cubic-bezier(.5, 1, .2, 2.25);
}
.touchy-by-bonfire ul li.marker > a:hover::before,
.touchy-by-bonfire ul li.marker.full-item-arrow-hover > a::before {
    height:calc(100% - 14px);
    background-color:#999;
}


/* WOOCOMMERCE BUTTON
**************************************************/
.touchy-cart-count {
    position:relative;
    top:0;
}
/* shopping bag icon */
.touchy-shopping-icon {
    background-color:#C2C2C6;
    width:18px;
    height:18px;
    margin:0 auto;

    -webkit-mask-image:url(icons/touchy-shopping-cart.svg);
    mask-image:url(icons/touchy-shopping-cart.svg);

    -webkit-mask-size:18px;
    mask-size:18px;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;

    -webkit-transition:all .25s ease;
	transition:all .25s ease;
}
a.touchy-cart-count,
a.touchy-cart-count:hover,
a.touchy-cart-count:active {
    text-decoration:none;
}
.touchy-cart-count > span {
	position:absolute;
    top:8px;
    left:2px;
	border-radius:50px;
	height:14px;
	width:14px;
	padding:0;
	display:block;
	text-align:center;
	font-family:'Inter Tight',sans serif;
    font-weight:500;
	font-size:8px;
    color:#fff;
    background-color:#A2A464;
}
.touchy-cart-count > span > span {
    position:absolute;
    margin-top:auto;
    top:50%;
    left:50%;
    display:block;
    -webkit-transform:translateX(-50%) translateY(-50%);
    transform:translateX(-50%) translateY(-50%);
}


/* SEARCH FIELD
**************************************************/
.touchy-search-wrapper {
    position:absolute;
    top:50px;
    left:-1000%;
    width:100%;
    height:59px;
    opacity:0;
    
    -webkit-transform:scale(0.97);
	transform:scale(0.97);
    
    -webkit-transition:-webkit-transform .15s cubic-bezier(.8,.35,.25,2.5), opacity .15s cubic-bezier(.8,.35,.25,2.5), left 0s ease .15s;
	transition:transform .15s cubic-bezier(.8,.35,.25,2.5), opacity .15s cubic-bezier(.8,.35,.25,2.5), left 0s ease .15s;
}
.touchy-search-wrapper.touchy-search-wrapper-active {
    left:0;
    opacity:1;
    -webkit-transform:scale(1);
	transform:scale(1);
    
    -webkit-transition:-webkit-transform .3s cubic-bezier(.8,.35,.25,2.5), opacity .3s cubic-bezier(.8,.35,.25,2.5), left 0s ease 0s;
	transition:transform .3s cubic-bezier(.8,.35,.25,2.5), opacity .3s cubic-bezier(.8,.35,.25,2.5), left 0s ease 0s;
}
/* searchform input */
.touchy-search-wrapper input.touchy-search-field {
    position:absolute;
    top:10px;
    left:0;
    right:0;
    width:calc(100% - 14px);
	height:50px;
	font-family:'Inter Tight',sans serif;
    font-weight:500;
    font-size:12px;
	color:#555;
	border:0;
    padding:0 95px 0 15px;
    margin:0 auto;
    box-sizing:border-box;
	background:none;
    background-color:#fff;
    
    border-radius:3px;
	
    -webkit-box-shadow:1px 1px 1px 0px rgba(0,0,0,0.15);
    box-shadow:1px 1px 1px 0px rgba(0,0,0,0.15);
    
    /* remove the flickering effect of a tapped link/button when on a touch device */
    -webkit-tap-highlight-color:rgba(0,0,0,0);
    
    /* remove iOS default formatting */
    -webkit-appearance:none;
}
/* search field 'clear search' and 'search' button wrapper */
.touchy-clear-search-wrapper {
    position:absolute;
    display:block;
    top:10px;
    right:8px;
}
/* clear search field button */
.touchy-clear-search {
    display:block;
    position:absolute;
    top:17px;
    left:-27px;
    width:15px;
    height:15px;
    background-color:#bbb;
    border-radius:50%;
    cursor:pointer;
    
    /* remove the flickering effect of a tapped link/button when on a touch device */
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}
.touchy-clear-search::before,
.touchy-clear-search::after {
    position:absolute;
    top:7px;
    left:3px;
    content:'';
    display:block;
    width:10px;
    height:1.5px;
    border-radius:5px;
    background-color:#fff;
}
.touchy-clear-search::before {
    -webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.touchy-clear-search::after {
    -webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
/* clear search and search icon separator */
.touchy-clear-search-separator {
    position:absolute;
    top:-8px;
    left:32px;
    width:1px;
    height:34px;
    background-color:#E1E1E1;
}
/* search field 'search' button */
.touchy-search-wrapper input.touchy-search {
    position:relative;
    display:block;
    width:56px;
    height:50px;
    padding:0;
    margin:0;
    cursor:pointer;
    
    -webkit-mask-image:url(icons/touchy-search.svg);
    mask-image:url(icons/touchy-search.svg);
    
    -webkit-mask-size:19px;
    mask-size:19px;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
    -webkit-mask-position:20px 16px;
    mask-position:20px 16px;
    
    background-color:#858585;
    
    /* remove the flickering effect of a tapped link/button when on a touch device */
    -webkit-tap-highlight-color:rgba(0,0,0,0);
    
    /* remove iOS default formatting */
    -webkit-appearance:none;
}
.touchy-search-wrapper input.touchy-search:hover {
    text-decoration:underline;
}
/* searchform placeholder */
input.touchy-search-field::-webkit-input-placeholder { color:#ADADAA !important; }
input.touchy-search-field:-moz-placeholder { color:#ADADAA !important; }
input.touchy-search-field::-moz-placeholder { color:#ADADAA !important; }


/* BACKGROUND OVERLAY
**************************************************/
/* content overlay (the transparent div that is shown over the entire page when menu is opened) */
.touchy-overlay {
	position:fixed;
	top:0;
	width:100%;
    /* 120% for touch device scroll purposes */
	height:120%;
	left:-1000%;
	opacity:0;

	/* content overlay background color */
	background-color:#000;
    
	-webkit-transition:opacity .4s ease, left 0s ease .4s;
	transition:opacity .4s ease, left 0s ease .4s;
}
.touchy-overlay-inner {
    width:100%;
	height:100%;
    position:relative;
    left:-10px;
    cursor:pointer;
}
.touchy-overlay.touchy-overlay-active {
	left:0;
    opacity:.2;
    
    -webkit-transition:opacity .4s ease, left 0s ease 0s;
	transition:opacity .4s ease, left 0s ease 0s;
}
/* overlay blur */
.touchy-overlay-blur {
    position:fixed;
    top:0;
    width:100%;
    /* 120% for touch device scroll purposes */
    height:120%;
    left:-1000%;
    opacity:0;

    -webkit-transition:opacity .4s ease, left 0s ease .4s;
    transition:opacity .4s ease, left 0s ease .4s;
}
.touchy-overlay-blur.touchy-overlay-active {
    left:0;
    opacity:1;

    -webkit-transition:opacity .4s ease, left 0s ease 0s;
    transition:opacity .4s ease, left 0s ease 0s;
}


/* WIDGET LOCATION
**************************************************/
.touchy-widgets-wrapper,
.touchy-widgets-wrapper .widget,
.touchy-widgets-wrapper .textwidget,
.touchy-widgets-wrapper .widget_text {
    margin:0;
    padding:0;
    border:none;
}


/* FONTS
**************************************************/
@font-face {
    font-family: 'icomoon-touchy';
    src:  url('fonts/icomoon/icomoon.eot?jqut4d');
    src:  url('fonts/icomoon/icomoon.eot?jqut4d#iefix') format('embedded-opentype'),
      url('fonts/icomoon/icomoon.ttf?jqut4d') format('truetype'),
      url('fonts/icomoon/icomoon.woff?jqut4d') format('woff'),
      url('fonts/icomoon/icomoon.svg?jqut4d#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
  }
  
  [class^="touchy-icon-"], [class*=" touchy-icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon-touchy' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
  
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  
  .touchy-icon-back:before {
    content: "\e900";
  }
  .touchy-icon-call:before {
    content: "\e901";
  }
  .touchy-icon-email:before {
    content: "\e902";
  }
  .touchy-icon-search:before {
    content: "\e904";
  }
 
  

/* Z-INDEXES
**************************************************/
.touchy-wrapper { z-index:99999; }
.touchy-logo-wrapper { z-index:99998; }
.touchy-by-bonfire { z-index:99997; }
.touchy-search-wrapper { z-index:99996; }
.touchy-overlay { z-index:99995; }
.touchy-by-bonfire-wrapper { z-index:99994; }
.touchy-menu-tooltip:before { z-index:99993; }
.touchy-clear-search-wrapper { z-index:999; }
.touchy-clear-search { z-index:999; }
.touchy-search-wrapper input.touchy-search-field { z-index:998; }


/* MEDIA QUERIES
**************************************************/
/* ignore position (+ fine-tune) at smaller screen sizes and center popup menu */
@media screen and (max-width:450px) {
    .touchy-by-bonfire { margin:auto !important; }
}
/* to prevent iOS zoom of search area focus, give it font-size of 16px */
@media screen and (-webkit-min-device-pixel-ratio:1.5) { 
    input.touchy-search-field { font-size:16px !important; }
    .touchy-search-wrapper input.touchy-search { font-size:14px; }
}