/* ===== GENERAL STYLING SECTION ===== */

body{
	height:100%;
	margin:0; padding:0 !important;
	text-rendering:optimizeLegibility;
	background-color:#ffffff;
	font-family: 'Lato', sans-serif;
	font-size: 18px;
	color:#333;
}

h1,h2,h3,h4,h5,h6{
	font-family: 'Coustard', serif;
	font-style: normal;
	font-weight: 300;
}

.dropdown-backdrop{position:static !important;}

p{
	font-family: 'Lato', sans-serif;
	font-style: normal;
	font-weight: normal;
	line-height:normal;
	color:#333;
}

pre,
code{
	color:#BF1E2E;
	font-size:12px;
	font-weight:300;
}

code{
	word-wrap: break-word;
}

img.roundimage{
	-moz-border-radius:50% !important;
	-ms-border-radius:50% !important;
	-o-border-radius:50% !important;
	-webkit-border-radius:50% !important;
	border-radius:50% !important;
}

img.smoothimage{
	-moz-border-radius:5px !important;
	-ms-border-radius:5px !important;
	-o-border-radius:5px !important;
	-webkit-border-radius:5px !important;
	border-radius:5px !important;
}

address{
	font-size:14px;
	font-weight:400;
	color:#333;
}

hr {
	border-top: 2px solid #DFDFDF;
	border-bottom: 0px solid #ffffff;
}

.title {
	margin-bottom: 20px;
	margin-top: 0px;
}

.title span {
	border-bottom: 1px solid #BF1E2E;
	display: inline-block;
	padding-bottom: 10px;
	margin-bottom: -1px;
}

[class^="icon-"],
[class*=" icon-"],
[class^="icon-"]:hover,
[class*=" icon-"]:hover{background-image:none;}

a,a:visited{color:#BF1E2E;}
a:hover{background-color:transparent;}

li{list-style:none;}

p.lead{font-color:#7F7F7F;font-size:18px;font-weight:400;font-family: 'Lato', sans-serif;}

.featuredlink{font-weight:700;font-size:16px;color:white;}

.imagebackground{
	background-image: url(../img/bghead.png);
	background-repeat: repeat;
}

.muted{font-weight:300 !important;}

.alignleft{float:left;}
.alignright{floar:right;}

.white-font{color:#ffffff !important;}
.grey-font{color:#ecebe9 !important;}
.blue-font{color:#aee0f1 !important;}
.green-font{color:#AFD66D !important;}
.red-font{color:#f47e7e !important;}
.orange-font{color:#e5a979 !important;}
.yellow-font{color:#e3e49d !important;}
.inverse-font{color:#BF1E2E;}

.white-background{background-color:#ffffff !important;}
.grey-background{background-color:#ecebe9 !important;}
.blue-background{background-color:#aee0f1 !important;}
.green-background{background-color:#AFD66D !important;}
.red-background{background-color:#f47e7e !important;}
.orange-background{background-color:#e5a979 !important;}
.yellow-background{background-color:#e3e49d !important;}
.inverse-background{background-color:#BF1E2E;}

.addborder{border-top:2px solid #BF1E2E;}

a.inverse-link,
a:visited.inverse-link{color:#BF1E2E;}
a:hover.inverse-link{color:#737373;}

ul.the-icons li{list-style:none;padding:3px 0px;}

.blogpost-music{background-color:#54CFEE;color:white;}
.blogpost-image{background-color:#F2673F;color:white;}
.blogpost-slide{background-color:#BF1E2E;color:white;}
.blogpost-noimage{background-color:#EC9161;color:white;}
.blogpost-video{background-color:#76CF67;color:white;}

.marginleft5{margin-left:5px !important;}
.marginleft10{margin-left:10px !important;}
.marginleft15{margin-left:15px !important;}
.marginleft20{margin-left:20px !important;}
.marginleft25{margin-left:25px !important;}
.margintop20{margin-top:20px !important;}

.marginright5{margin-right:5px !important;}
.marginright10{margin-right:10px !important;}
.marginright15{margin-right:15px !important;}
.marginright20{margin-right:20px !important;}
.marginright25{margin-right:25px !important;}

.marginbottom5{margin-bottom:5px !important;}
.marginbottom10{margin-bottom:10px !important;}
.marginbottom15{margin-bottom:15px !important;}
.marginbottom20{margin-bottom:20px !important;}
.marginbottom25{margin-bottom:25px !important;}
.padleft5{padding-left:5px !important;}
.padleft10{padding-left:10px !important;}
.padleft15{padding-left:15px !important;}
.padleft20{padding-left:20px !important;}
.padleft25{padding-left:25px !important;}
.padright5{padding-right:5px !important;}
.padright10{padding-right:10px !important;}
.padright15{padding-right:15px !important;}
.padright20{padding-right:20px !important;}
.padright25{padding-right:25px !important;}
.pad5{padding-top:5px !important;}
.pad10{padding-top:10px !important;}
.pad15{padding-top:15px !important;}
.pad20{padding-top:20px !important;}
.pad25{padding-top:25px !important;}
.pad30{padding-top:30px !important;}
.pad35{padding-top:35px !important;}
.pad40{padding-top:40px !important;}
.pad45{padding-top:45px !important;}
.pad50{padding-top:50px !important;}
.pad55{padding-top:55px !important;}
.pad60{padding-top:60px !important;}
.pad-5{margin-top:-5px !important;}
.pad-10{margin-top:-10px !important;}
.pad-15{margin-top:-15px !important;}
.pad-20{margin-top:-20px !important;}
.pad-25{margin-top:-25px !important;}
.pad-30{margin-top:-30px !important;}
.pad-35{margin-top:-35px !important;}
.pad-40{margin-top:-40px !important;}
.pad-45{margin-top:-45px !important;}
.pad-50{margin-top:-50px !important;}
.pad-55{margin-top:-55px !important;}
.pad-60{margin-top:-60px !important;}

.padbottom0{padding-bottom:0px !important;margin-bottom:0px !important;}
.padbottom5{padding-bottom:5px !important;}
.padbottom10{padding-bottom:10px !important;}
.padbottom15{padding-bottom:15px !important;}
.padbottom20{padding-bottom:20px !important;}
.padbottom25{padding-bottom:25px !important;}
.padbottom30{padding-bottom:30px !important;}
.padbottom35{padding-bottom:35px !important;}
.padbottom40{padding-bottom:40px !important;}
.padbottom45{padding-bottom:45px !important;}
.padbottom50{padding-bottom:50px !important;}
.padbottom55{padding-bottom:55px !important;}
.padbottom60{padding-bottom:60px !important;}
.padbottom-5{margin-top:-5px !important;}
.padbottom-10{margin-top:-10px !important;}
.padbottom-15{margin-top:-15px !important;}
.padbottom-20{margin-top:-20px !important;}
.padbottom-25{margin-top:-25px !important;}
.padbottom-30{margin-top:-30px !important;}
.padbottom-35{margin-top:-35px !important;}
.padbottom-40{margin-top:-40px !important;}
.padbottom-45{margin-top:-45px !important;}
.padbottom-50{margin-top:-50px !important;}
.padbottom-55{margin-top:-55px !important;}
.padbottom-60{margin-top:-60px !important;}

.icon64{font-size:64px;line-height:64px;}

.sitecontainer{
	max-width:1240px;
	margin:0px auto;
	float:none;
	height:auto;
	overflow:hidden;
}

.boxcontainer{
	padding-left:20px !important;
	padding-right:20px !important;
}

.page-section{
	padding-top:60px;
	width:100%;
	float:left;
	-webkit-animation: toLeftFromRight 0.9s forwards;
	-moz-animation: toLeftFromRight 0.9s forwards;
	animation: toLeftFromRight 0.9s forwards;
	background-color:#BF1E2E;
}

.page-section h1, .page-section h2, .page-section h3, .page-section h4, .page-section h5, .page-section p {
	color: white;
}

.page-section-white{
	padding-top:40px;
	width:100%;
	float:left;
	background-color:white;
	-webkit-animation: toRightFromLeft 0.9s forwards;
	-moz-animation: toRightFromLeft 0.9s forwards;
	animation: toRightFromLeft 0.9s forwards;
}

img.rotatingimage{
	-webkit-transition-duration: 1s;
    -moz-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-property: -webkit-transform;
    -moz-transition-property: -moz-transform;
    -o-transition-property: -o-transform;
    transition-property: transform;
    overflow:hidden;
}

img.rotatingimage:hover{
	-webkit-transform: rotate(360deg);
	-moz-transform: rotate(360deg);
	-o-transform: rotate(360deg);
	-ms-transform: rotate(360deg);
}

.tooltip.in{opacity:1!important;}
.tooltip.bottom .tooltip-arrow {border-bottom-color: #BF1E2E;}
.tooltip.top .tooltip-arrow {border-top-color: #BF1E2E;}
.tooltip.left .tooltip-arrow {border-left-color: #BF1E2E;}
.tooltip.right .tooltip-arrow {border-right-color: #BF1E2E;}
.tooltip-inner {background-color: #BF1E2E;}
.tooltip {
  pointer-events: none;
}

.carousel-control {
	position: absolute;
	top: 50%;
	left: 15px;
	width: 45px;
	height: 45px;
	margin-top: -20px;
	font-size: 60px;
	font-weight: 100;
	line-height: 30px;
	color: #ffffff;
	text-align: center;
	background: #222222;
	border: 0px solid #ffffff;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
	opacity: 0.5;
	filter: alpha(opacity=50);
}

/* ===== WORDPRESS DEFAULTS ===== */

#comments ol{
	padding:0px;
	margin:0px;
}

#comments ol li{
	list-style:none;
	list-style-image:none;
	background-color:white;
	-border-radius:2px;
	-ms-border-radius:2px;
	-o-border-radius:2px;
	-webkit-border-radius:2px;
	border-radius:2px;
	padding:15px;
	position:relative;
	margin-bottom:20px;
	border-bottom:1px solid #DDDDDD;
}

ol.children,
.childrenli{
	margin-left:5% !important;
}

.comment_info a,
.comment_info a:visited{
	color:#BF1E2E;
}

.comment_info{
	width:100%;
	float:left;
}

.avatar{
	float:left;
	display:inline-block;
	padding-right:20px;
	padding-bottom:20px;
}

.commentwrapper{
	padding-top:10px;
	font-weight:300;
	font-size:12px;
}

a:link.comment-reply-link,
a:visited.comment-reply-link{
	position:absolute;
	top:15px;
	right:15px;
	background-color:#BF1E2E;
	color:white;
	text-decoration:none;
	padding:4px 6px;
	-border-radius:2px;
	-ms-border-radius:2px;
	-o-border-radius:2px;
	-webkit-border-radius:2px;
	border-radius:2px;
}

a:hover.comment-reply-link{
	background-color:#31B5AF;
	color:white;
}

#reply-title {display:none;}

.form_info{
	margin:0;
	padding:20px 0px 5px 0px;
	font-weight:300;
	text-transform:uppercase;
	font-size:12px;
}

.fullwidth{
	display:block;
	width:97%;
	background-color:white !important;
	margin:0 !important;
	padding:8px 1% !important;
	font-size:14px !important;
	-moz-border-radius:2px !important;
	-ms-border-radius:2px !important;
	-o-border-radius:2px !important;
	-webkit-border-radius:2px !important;
	border-radius:2px !important;
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
	box-shadow: none !important;
}

.fullwidtharea{
	display:block;
	width:97%;
	background-color:white !important;
	margin: 0px !important;
	padding:8px 1% !important;
	font-size:14px !important;
	-moz-border-radius:2px !important;
	-ms-border-radius:2px !important;
	-o-border-radius:2px !important;
	-webkit-border-radius:2px !important;
	border-radius:2px !important;
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
	box-shadow: none !important;
	min-height:240px;
}

#commentform > .form-submit > #submit,
.btn-form{
	background-color:#2f2f2f;
	border:1px solid #2f2f2f;
	color:#BF1E2E;
	text-shadow:none;
	padding:8px 0px;
	text-align:center;
	font-size:15px;
	text-transform:uppercase;
	font-weight:400;
	width:99%;
	margin:0;
	-moz-border-radius:2px;
	-ms-border-radius:2px;
	-o-border-radius:2px;
	-webkit-border-radius:2px;
	border-radius:2px;
}

.btn-form{
	text-align:center;
	width:100% !important;
}

.wp-caption, .gallery-caption{
	border: 0px solid #ddd;
	text-align: center;
	background-color: #BF1E2E;
	padding-top: 4px;
	margin: 10px;
	max-width:100%;
}

.wp-caption img {margin: 0;padding: 0;border: 0 none;}
.wp-caption p.wp-caption-text {font-size: 0.85em;line-height: 1.214em;padding: 0 4px 5px;margin: 0; }
.sticky { color:red; }
.bypostauthor{background-color: transparent; }
.alignnone {margin:0px;}
.aligncenter,div.aligncenter {display: block;margin: 0px auto 0px auto;}
.alignright {float:right;margin: 0px;}
.alignleft {float: left;margin:0px;}
.aligncenter {display: block;margin: 5px auto 5px auto;}
a img.alignright,img.alignright {float: right;margin: 5px 0px 20px 20px;}
a img.alignnone, img.alignnone {margin: 5px 20px 20px 0;}
a img.alignleft, img.alignleft {float: left;margin: 5px 20px 20px 0;}
a img.aligncenter, img.aligncenter {display: block;margin-left: auto;margin-right: auto}

#wp-calendar { width:100%;}
.footerwidget > #calendar_wrap,
.tagcloud{padding:0px !important;}
#wp-calendar caption {padding:0px 0px 10px 0px;font-weight:600;}
#wp-calendar thead th {background-color:#BF1E2E;color:white;padding:5px 0px;border:1px solid #BF1E2E;}
#wp-calendar tbody td {background-color:white;text-align:center;padding:5px 0px;border:1px solid #BF1E2E;}
#wp-calendar tbody td:nth-child(odd) {background-color:transparent;}
#wp-calendar a {color:#BF1E2E;font-weight:600;}
#wp-calendar #prev,
#wp-calendar #next{
	padding-top:20px;
}
#wp-calendar #prev a{text-align: left; color:white;padding:4px 8px 6px 8px;background-color:#BF1E2E;border-radius:2px;}
#wp-calendar #next a{text-align: right;  color:white;padding:4px 8px 6px 8px;background-color:#BF1E2E;border-radius:2px;}

/* ===== PHONE NUMBER SECTION ===== */
.phone-number {
	position: fixed;
	background-color: #BF1E2E;
	padding: 10px;
	color: white;
	bottom: 0;
	left: 10px;
  z-index: 999999;
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
  -webkit-box-shadow: rgba(0,0,0,0.0980392) 0 0 1px 2px;
  -moz-box-shadow: rgba(0,0,0,0.0980392) 0 0 1px 2px;
  box-shadow: rgba(0,0,0,0.0980392) 0 0 1px 2px;
	border-radius: 8px 8px 0px 0px !important;
	-moz-border-radius: 8px 8px 0px 0px !important;
	-webkit-border-radius: 8px 8px 0px 0px !important;
}

	.phone-number a, .phone-number a:visited, .phone-number a:hover {
		color: white;
	}

	.phone-number i {
		padding: 5px 10px 0 0;
	}

@media (max-width: 768px) {
	.phone-number {
		border-radius: 8px !important;
		-moz-border-radius: 8px !important;
		-webkit-border-radius: 8px !important;
		bottom: 15px;
		-webkit-box-shadow: 0 4px 5px -1px rgba(0,0,0,0.5);
    -moz-box-shadow: 0 4px 5px -1px rgba(0,0,0,0.5);
    box-shadow: 0 4px 5px -1px rgba(0,0,0,0.5);
		font-size: 19px;
		padding: 8px;
		border-radius: 3px !important;
		-moz-border-radius: 3px !important;
		-webkit-border-radius: 3px !important;
		font-family: sans-serif,Verdana;
	}
}

/* ===== HEADER SECTION ===== */

.header{
	float:left;
	width:100%;
	background-color:white;
	min-height:86px;
	z-index: 2000;
	padding: 20px 0 20px 0;
}

.stickyheader{
	position:fixed;
	margin:0px auto;
	float:none;
	display:none;
}

.fixed-top {
	top: 0;
	right: 0;
	left: 0;
	z-index: 1030;
	margin-bottom: 0;
	position: fixed;
}

.stickyheaderboxed{
	max-width:1240px;
}

.page-header{
	float:left;
	margin:0px;
	width:100%;
	text-align:center;
	padding-bottom:0px;
	border:0px;
}

.pageheaderimage{
	width: 100%;
	float: left;
	height: auto;
	background-image: url(../img/bghead.png);
	background-repeat: repeat;
	padding-bottom:36px;
}

.pageheaderimage h1{
	font-size:48px;
	color:white;
	padding:48px 0px 38px 0px;
	margin:0;
}

.pageheaderimage p{
	font-size:20px;
	color:#162423;
	padding:0 100px;
	margin:0;
	line-height:38px;
	color:#E4E4E4;
}

.logo{
	font-size:54px;
	line-height:86px;
	color:white;
}

.logo a{
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.logo > a > img{
	max-height:76px;
	width:auto;
}

.logo a,
.logo a:visited,
.logo a:hover{
	color:inherit;
}

.logo a:hover{color:#BF1E2E;}

.header .area-covered p {
	font-weight: bold;
}

@media (max-width: 768px) {
	.addon-group {
		background: none !important;
	}
	.addon-group > div {
		flex-direction: column;
		align-items: stretch;
		gap: 5px;
	}

	.addon-group-header {
		max-width: 100% !important;
		min-width: 100% !important;
		text-align: left !important;
		justify-content: flex-start !important;
		padding-bottom: 5px;
		border-bottom: 1px solid #ddd;
		margin-bottom: 5px;
	}

	.addon-group-options {
		width: 100%;
		flex: none;
	}

	.logo img {
		width: 75% !important;
	}
}

#main_menu{
	width:auto;
	float:right;
}


#main_menu_sticky{
	width:auto;
	float:right;
}

.nav{
	padding:0;
	margin:0;
}

.nav-pills > li > a {
	padding:30px 15px 15px 15px;
	margin:10px 0px 0px 22px;
	color:#A1A6AF;
	border-radius:4px 4px 0px 0px;
	font-size: 1.2em;
}

.nav-pills > li > a:hover{
	background-color:transparent;
	color:#BF1E2E;
}

.nav-pills > li:first-child > a {
	margin-left:0px;
}

.nav-pills > .active > a,
.nav-pills > .active > a:hover{
	background-color:transparent;
	color: #A1A6AF;
	border-bottom: 2px solid #BF1E2E;
}

.dropdown-menu {
	position: absolute;
	top: 110%;
	left: 25px;
	z-index: 1000;
	display: none;
	float: none;
	min-width: 160px;
	padding: 0;
	margin: 0;
	list-style: none;
	background-color: white;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px !important;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	border-bottom:8px solid #545454;
	border-left: 1px solid #D3D3D3;
	border-right: 1px solid #D3D3D3;
	border-top: 1px solid #D3D3D3;
}

.dropdown-menu > li > a {
	display: block;
	padding: 10px 20px;
	clear: both;
	font-weight: normal;
	line-height: 20px;
	font-size:16px;
	color: #A1A6AF;
	white-space: nowrap;
	background-color: white !important;
}

.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus,
.dropdown-submenu:hover > a,
.dropdown-submenu:focus > a {
	color: #ffffff;
	text-decoration: none;
	background-color: #2f2f2f;
	background-image: -moz-linear-gradient(top, #2f2f2f, #2f2f2f);
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#2f2f2f), to(#2f2f2f));
	background-image: -webkit-linear-gradient(top, #2f2f2f, #2f2f2f);
	background-image: -o-linear-gradient(top, #2f2f2f, #2f2f2f);
	background-image: linear-gradient(to bottom, #2f2f2f, #2f2f2f);
	background-repeat: repeat-x;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2f2f2f', endColorstr='#2f2f2f', GradientType=0);
}

.dropdown-menu > li:first-child{margin-top:6px;}

.nav-tabs .open .dropdown-toggle, .nav-pills .open .dropdown-toggle, .nav > li.dropdown.open.active > a:hover, .nav > li.dropdown.open.active > a:focus{
	background-color:transparent;
	border:0px;
}

.btn-navbar {
	display:none;
	padding-top: 0;
	padding-left: 0;
	position:absolute;
	top:40px;
	right:18px;
	font-size:20px;
	border:0px;
	color: white;
	background-color: #BF1E2E;
	background-image:none !important;
	width:60px;
	height:60px;
	text-align: center;
}

.btn-navbar .text {
	font-size: 0.6em;
	text-transform: uppercase;
	font-weight: 400;
	padding-left: 10px;
	padding-bottom: 5px;
	display: inline-block;
}

.btn-navbar i {
	font-size: 1.6em;
	margin-top: -5px;
	padding-left: 10px;	
}

.btn-navbar > .btn {
	display:inherit;
	padding: inherit;
	margin-bottom: 0;
	font-size: inherit;
	line-height: inherit;
	color: inherit;
	text-align: left;
	text-shadow: none;
	vertical-align: left;
	cursor: pointer;
	background-color: transparent;
	background-image: none;
	border: 0px solid #cccccc;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius:0px;
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
	box-shadow: none !important;
}

.btn-navbar > .btn:hover,
.btn-navbar > .btn:focus {
	color: #white;
	text-decoration: none;
	background-image:none !important;
}

.btn-navbar:hover {
	color: #BF1E2E;
}

/* ===== FOOTER SECTION ===== */

.footer{
	width:100%;
	float:left;
	background-color:white;
	padding-bottom: 30px;
}

.copyright{
	color:#6E727A;
	padding:40px 0px 30px 0px;
	font-size:14px;
}


/* ===== FRONTPAGE SECTION ===== */

/* slider wrap */
.frontpageslider,
.frontpagerevslider,
.contactgooglewrap{
	width:100%;
	float:left;
}

.frontpageslider img{
	width:100 !important;
	height:auto;
}

/* google map wrap */
#map{
	width:100%;
	float:left;
	height:550px;
}

#map > iframe{
	height:550px;
	width:100%;
	padding:0px;
	margin:0px;
	border:0px;
}

/* intro icons */
.introicons {
	padding: 14px;
	position: relative;
	background-color:white;
}

.introicons i {
	height: 50px;
	width: 50px;
	font-size: 30px;
	line-height: 50px;
	margin-top: -15px;
	margin-right: 10px;
	color: white;
}

.introicons h6 {
	font-weight: 400;
	font-size: 1em;
	margin: 20px 0;
}

.introicons p{
	line-height:22px;
	font-weight:400;
}

/* ===== TABS SECTION ===== */

.nav-tabs {
	border-bottom: 1px solid #DFDFDF;
}

.nav-tabs > .active > a, .nav-tabs > .active > a:hover, .nav-tabs > .active > a:focus {
	color: white;
	cursor: default;
	background-color: #BF1E2E;
	border: 1px solid #BF1E2E;
	border-bottom-color: #DFDFDF;
}

.nav-tabs > li > a {
	padding-top: 8px;
	padding-bottom: 8px;
	line-height: 20px;
	border: 1px solid transparent;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	color: #BF1E2E;
	border-radius:3px 3px 0px 0px;
}

.nav-tabs > li > a > i{
	vertical-align: -2px;
	font-size:18px;
	padding-right:4px;
}

.nav-tabs > li > a:hover, .nav-tabs > li > a:focus {
	border-top-color: #eeeeee;
	border-right-color: #eeeeee;
	border-bottom-color: #DFDFDF;
	border-left-color: #eeeeee;
}

.tab-content{padding:20px 0;}
.tab-content p{color:#333;}

/* ===== TERMS PAGE ===== */

#terms-and-conditions ol li {
	list-style: inherit;
}

#terms-and-conditions .container ol {
	margin: 0 0 10px 25px;
}

/* ===== TEAM MEMBERS SECTION ===== */

.teammember{
	margin-bottom:50px;
	border-bottom: 1px solid #fff;
	background-color:white;
	position:relative;
	-moz-border-radius:3px;
	-ms-border-radius:3px;
	-o-border-radius:3px;
	-border-radius:3px;
	border-radius:3px;
	-webkit-transition: border .3s ease-in-out;
	-moz-transition: border .3s ease-in-out;
	-o-transition: border .3s ease-in-out;
	transition: border .3s ease-in-out;
}

.teammember > i{
	position:absolute;
	bottom:0px;
	left:50%;
	font-size:12px;
	line-height:30px;
	height:30px;
	width:30px;
	margin: 0px 0px -15px -15px;
	color:#333;
	border-radius:3px;
	color:white;
}

.teammember:hover{
	border-bottom: 1px solid #BF1E2E;
}

.teamimagewrap{
	width:100%;
	height:180px;
	overflow:hidden;
}

.teamimage250{
	height:250px;
}

.teamimage350{
	height:350px;
}

.teamimagewrap img{width:100%;height:auto;border:0;border-radius: 3px 3px 0px 0px;}

span.teamposition{
	width:100%;
	color:#CCC;
	font-size:12px;
	font-weight:400;
	padding:0px 0px 15px 0px;
	float:left;
}

h3.teamname{
	width:100%;
	font-size:16px;
	font-weight:400;
	padding:20px 0px 3px 0px;
	margin:0;
	line-height:18px;
	float:left;
}

.teammember:hover > ul.teamsocial{
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	-khtml-opacity: 1;
	opacity: 1;
}

ul.teamsocial{
	float: none;
	min-width: 50px;
	padding: 0px;
	margin: -100px auto 0px auto;
	text-align: center;
	overflow: hidden;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	-khtml-opacity: 0;
	opacity: 0;
	z-index:2000;
}

ul.teamsocial li{
	display:inline-block;
	font-size:12px;
	background-color:white;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
	padding:6px 0px 2px 0px;
}

ul.teamsocial li a{
	text-decoration:none;
	width:100%;
	color:#2f2f2f;
	padding:12px;
	line-height:14px;
}

ul.teamsocial li a:hover{color:white;background-color:transparent;}

ul.teamsocial li.twitter:hover{background-color:#79CAFC;}
ul.teamsocial li.facebook:hover{background-color:#3D62B3;}
ul.teamsocial li.linkedin:hover{background-color:#006CB2;}
ul.teamsocial li.github:hover{background-color:#EEB999;}
ul.teamsocial li.googleplus:hover{background-color:#D34836;}

p.tsoc{font-size:22px;}

a:link.teamsoc{color:#333;margin-right:18px;}
a:visited.teamsoc{color:#333;}
a:hover.teamsoc{color:#CCC;}

img.fullwidthimage{width:100% !important;height:auto;}

/* ===== TESTIMONIAL SECTION ===== */

#testimonials .carousel-inner {
	margin: 0;
}

.testimonials{
	width:80%;
	padding:0px 10%;
	margin:0;
}

.testimonialimage{
	width:16%;
	float:left;
	padding:10px 2%;
}

.testimonialimage img{
	width:100%;
	height:auto;
	padding:0;
	margin:0;
	border:0;
}

.testimonialtext{
	width:76%;
	padding:10px 2%;
	float:right;
	font-size:12px;
	font-weight:300;
}

/* ===== 404 SECTION ===== */

.fourfourclass{width:100%;float:left;}

.fourfourclass > h1{font-size:320px;font-weight:700;line-height:320px;color:#D8D8D8;text-align:center;}

/* ===== BUTTONS SECTION ===== */

.btn-success {
	color: #ffffff !important;
	text-shadow: none;
	border-radius: 2px;
	background-color: #AFD66D;
	background-image: none !important;
	border: 0px;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#AFD66D', endColorstr='#AFD66D', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	box-shadow: 0 -3px #8FB94F inset;
	-moz-box-shadow: 0 -3px #8FB94F inset;
	-webkit-box-shadow: 0 -3px #8FB94F inset;
	-o-box-shadow: 0 -3px #8FB94F inset;
	font-weight:600;
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.btn-success:hover{
	background-color: #9DCB57;
}

.btn-inverse {
	color: #ffffff !important;
	text-shadow: none;
	border-radius: 2px;
	background-color: white;
	background-image: none !important;
	border: 0px;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='white', endColorstr='white', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	box-shadow: 0 -3px #0B0B0B inset;
	-moz-box-shadow: 0 -3px #0B0B0B inset;
	-webkit-box-shadow: 0 -3px #0B0B0B inset;
	-o-box-shadow: 0 -3px #0B0B0B inset;
	font-weight:600;
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.btn-inverse:hover{
	background-color: #0B0B0B;
}

.btn-danger {
	color: #ffffff !important;
	text-shadow: none;
	border-radius: 2px;
	background-color: #f47e7e;
	background-image: none !important;
	border: 0px;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f47e7e', endColorstr='#f47e7e', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	box-shadow: 0 -3px #D85D62 inset;
	-moz-box-shadow: 0 -3px #D85D62 inset;
	-webkit-box-shadow: 0 -3px #D85D62 inset;
	-o-box-shadow: 0 -3px #D85D62 inset;
	font-weight:600;
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.btn-danger:hover{
	background-color: #D85D62;
}

.btn-warning {
	color: #ffffff !important;
	text-shadow: none;
	border-radius: 2px;
	background-color: #e5a979;
	background-image: none !important;
	border: 0px;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e5a979', endColorstr='#e5a979', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	box-shadow: 0 -3px #DD6F47 inset;
	-moz-box-shadow: 0 -3px #DD6F47 inset;
	-webkit-box-shadow: 0 -3px #DD6F47 inset;
	-o-box-shadow: 0 -3px #DD6F47 inset;
	font-weight:600;
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.btn-warning:hover{
	background-color: #DD6F47;
}

.btn-info {
	color: #ffffff !important;
	text-shadow: none;
	border-radius: 2px;
	background-color: #5bc0de;
	background-image: none !important;
	border: 0px;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#5bc0de', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	box-shadow: 0 -3px #7B98D6 inset;
	-moz-box-shadow: 0 -3px #7B98D6 inset;
	-webkit-box-shadow: 0 -3px #7B98D6 inset;
	-o-box-shadow: 0 -3px #7B98D6 inset;
	font-weight:600;
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.btn-info:hover{
	background-color: #7B98D6;
}

.btn-primary{
	color: #ffffff !important;
	text-shadow: none;
	border-radius: 2px;
	background-color: #BF1E2E;
	background-image: none !important;
	border: 0px;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#BF1E2E', endColorstr='#BF1E2E', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
	font-weight:600;
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.btn-primary:hover, .btn-primary:active, .btn-primary:focus {
	background-color:#f47e7e;
}

/* ===== WIDGET SECTION ===== */

.imagelength img{
	width:100%;
	height:auto;.carousel-control
}

.fullwidthbanner-container{
	width:100% !important;
	position:relative;
	padding:0;
	max-height:550px !important;
	overflow:hidden;
}

.contactBanner {
	padding-top: 15px;
	color: white;
	font-size: 20px;
}

@media screen and (min-width: 768px) {
	.contactBanner {
		text-align: center;
	}
	.contactBanner ul {
		list-style: none;
	}
	.contactBanner ul > li {
    display: inline-block;
    padding-right: 5px;
    padding-left: 5px;
	}
	.contactBanner i.fa-facebook {
		padding-right: 10px !important;
	}
}

.contactBanner i.fa-facebook {
	padding-right: 19px;
}

.contactBanner li {
	padding-bottom: 10px;
}

.contactBanner a, .contactBanner a:visited, .contactBanner a:hover {
	color: white;
}

.contactBanner a:hover {
	text-decoration: underline;
}

.contactBanner i {
	line-height: 20px;
	padding-right: 10px;
}

img.wa-qr {
	width: 200px;
	margin-left: -10px;
}

li.flex-nav-prev, li.flex-nav-next {
	padding: 0 !important;
}

.flex-direction-nav .flex-next, .flex-direction-nav .flex-prev {
	text-align: center !important;
	padding-top: 8px !important;
}

.flexslider:hover .flex-direction-nav .flex-next, .flexslider:hover .flex-direction-nav .flex-prev {
	opacity: 1 !important;
}

.flex-direction-nav a {
	height: 30px !important;
}

.flex-direction-nav a, .flex-direction-nav a:before {
	background: #BF1E2E !important;
	color: white !important;
	font-size: 30px !important;
	border-radius: 50%;
}

/*.arrow:after {
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
  border-top-color: blue;
	border-width: 25px;
	margin-left: -25px;
}*/

/* ===== Shelters Page ===== */

#shelters .productPrice {
	font-size: 2em;
	color: #BF1E2E;
}

#shelters .page-section-white ul, #marquee .page-section-white ul, #espree .page-section-white ul, #gazebo .page-section-white ul, #nightclub .page-section-white ul {
	padding: 10px 0;
}

#shelters .page-section-white ul li, #marquee .page-section-white ul li, #espree .page-section-white ul li, #gazebo .page-section-white ul li, #nightclub .page-section-white ul li {
	padding-bottom: 10px;
}

#shelters .include ul li i, #marquee .include ul li i, #espree .include ul li i, #gazebo .include ul li i, #nightclub .include ul li i {
	padding-right: 5px;
	line-height: 20px;
}

#shelters .include ul li i, #marquee .include ul li i, #espree .include ul li i, #gazebo .include ul li i, #nightclub .include ul li i {
	color: #BF1E2E;
}

#marquee .pageheaderimage h1, #espree .pageheaderimage h1, #gazebo .pageheaderimage h1, #nightclub .pageheaderimage h1  {
	padding-bottom: 15px;
}

#shelters .item_size, #marquee .item_size, #espree .item_size, #gazebo .item_size {
	border: 2px solid #BF1E2E;
}

#shelters ul.slides, #marquee ul.slides, #espree ul.slides, #gazebo ul.slides, #nightclub ul.slides {
	padding-top: 0px !important;
}

#shelters div.tooltip-inner, #marquee div.tooltip-inner, #espree div.tooltip-inner, #gazebo div.tooltip-inner, #nightclub div.tooltip-inner {
  font-size: 14px;
}

#shelters .title, #marquee .title, #espree .title, #gazebo .title, #nightclub .title {
	padding-bottom: 10px;
	border-bottom: 1px solid #BF1E2E;
}

#shelters .extra.table, #marquee .extra.table, #espree .extra.table, #gazebo .extra.table, #nightclub .extra.table {
	margin-bottom: 0;
}

#shelters .extras {
	text-align: left;
}

li.extra.unavailable {
  color: #999;
}

@media (max-width: 768px) {
	#shelters .service-list h3.title {
		border-top: 2px solid #BF1E2E;
		border-bottom: 0;
		padding-bottom: 0;
		margin-bottom: 10px;
		padding-top: 10px;
	}

	#shelters .service-list h3.title span {
		border-bottom: 0;
	}
	ol.flex-control-paging {		bottom: -20px !important;
	}
}

/* ===== Marquee/Gazebo Page ===== */

#marquee .service-list .flexslider, #espree .service-list .flexslider, #gazebo .service-list .flexslider, #nightclub .service-list .flexslider {
	margin: 0;
}

#marquee .item_size li, #espree .item_size li, #gazebo .item_size li {
	border: 1px solid #BF1E2E;
	padding: 5px;
}

#marquee .extras, #espree .extras, #gazebo .extras {
	text-align: left;
}

#marquee #carousel, #espree #carousel, #gazebo #carousel {
	margin: 15px 0;
}

/* ===== Nightclub Page ===== */

#nightclub .simpleCart_shelfItem .productPrice {
	font-size: 2em;
	color: #BF1E2E;
	margin-bottom: 20px;
	margin-top: 10px;
}

#nightclub .simpleCart_shelfItem .item_size {
	font-weight: bold;
	margin-bottom: 20px;
}

#nightclub .simpleCart_shelfItem .item_size {
	font-weight: bold;
	margin-bottom: 20px;
}

#nightclub #carousel {
	margin-top: 50px;
}


/* ===== Order Page ===== */

#order .order-form .row-fluid {
	padding-bottom: 15px;
}

#order h3.title {
	padding: 0 !important;
	margin-bottom: 20px;
	font-size: 21px;
	line-height: 40px;
	color: #333333;
	border-bottom: 1px solid #e5e5e5;
	font-family: 'Lato', sans-serif;
}

#order .damage-waiver {
	margin-bottom: 15px;
}

#order .damage-waiver .simpleCart_damageWaiver {
	color: #BF1E2E;
	font-weight: bold;
}

#order .damage-waiver input {
	margin: 0 5px 0 0;
}

#order .damage-waiver p {
	padding-bottom: 5px;
}

#order .damage-waiver label {
	display: inline;
	font-size: inherit;
	font-weight: bold;
}

#order .simpleCart_items {
	text-align: left;
}

#order .simpleCart_items table {
	width: 100%;
}

#order .postcode_spinner {
	display: none;
}

#order #getaddress_dropdown, #order #getaddress_error_message {
	margin-top: 10px;
}

#order .address_fields, #order .billing_address_fields {
	display: none;
}

#order .simpleCart_items td, #order .simpleCart_items th {
	padding: 15px 0 15px 10px;
}

#order .simpleCart_items tr { border: 1px solid #ccc; }

	/*
	Max width before this PARTICULAR table gets nasty
	This query will take effect for any screen smaller than 760px
	and also iPads specifically.
	*/
	@media
	only screen and (max-width: 760px),
	(min-device-width: 768px) and (max-device-width: 1024px)  {

		/* Force table to not be like tables anymore */
		#order .simpleCart_items table,
		#order .simpleCart_items thead,
		#order .simpleCart_items tbody,
		#order .simpleCart_items th,
		#order .simpleCart_items td,
		#order .simpleCart_items tr {
			display: block;
		}

		/* Hide table headers (but not display: none;, for accessibility) */
		#order .simpleCart_items th {
			position: absolute;
			top: -9999px;
			left: -9999px;
		}

		#order .simpleCart_items td {
			/* Behave  like a "row" */
			border: none;
			border-bottom: 1px solid #eee;
			position: relative;
			padding-left: 50%;
		}

		#order .simpleCart_items td:before {
			/* Now like a table header */
			position: absolute;
			/* Top/left values mimic padding */
			top: 6px;
			left: 6px;
			width: 45%;
			padding-right: 10px;
			white-space: nowrap;
		}

		/*
		Label the data
		*/
		#order .simpleCart_items td:nth-of-type(1):before { content: "Product"; }
		#order .simpleCart_items td:nth-of-type(2):before { content: "Size"; }
		#order .simpleCart_items td:nth-of-type(3):before { content: "Quantity"; }
		#order .simpleCart_items td:nth-of-type(4):before { content: "Total"; }
		#order .simpleCart_items td:nth-of-type(5):before { content: ""; }

		#order .order-form input, #order .order-form select {
			margin-bottom: 15px;
		}

		#order .order-form #getaddress_button {
			margin-bottom: 15px;
		}

		#order .order-form span.padright10 {
			margin-bottom: 10px;
			display: block;
		}
	}


	#order .simpleCart_items .headerRow th {
		padding-bottom: 20px;
	}

	#order .simpleCart_items .itemRow td {
		padding-right: 15px;
	}

	#order .simpleCart_items .itemRow .item-total  {
		font-weight: bold;
	}

	#order .simpleCart_items .item-quantity .quantity {
		font-weight: bold;
		padding: 0px 5px;
	}


#order .total {
	font-size: 1.6em;
	line-height: 1.6em;
}

#order .total .simpleCart_grandTotal {
	color: #BF1E2E;
	font-weight: bold;
}

#order .order_success, #order .order_failure, #order .order_invalid {
	display: none;
}


/* ===== Order Page ===== */

#contact .contact_success, #contact .contact_failure, #contact .contact_invalid {
	display: none;
}

@-webkit-keyframes spinAround {
	from {
		-webkit-transform: rotate(0deg)
	}
	to {
		-webkit-transform: rotate(360deg);
	}
}
@-moz-keyframes spinAround {
	from {
		-moz-transform: rotate(0deg)
	}
	to {
		-moz-transform: rotate(360deg);
	}
}
@keyframes spinAround {
	from {
		transform: rotate(0deg)
	}
	to {
		transform: rotate(360deg);
	}
}

@-webkit-keyframes toLeftFromRight {
	0%{
		opacity: 0;
	}
	49% {
		-webkit-transform: translate(0%);
	}
	50% {
		opacity: 0;
		-webkit-transform: translate(100%);
	}
	51% {
		opacity: 1;
	}
}
@-moz-keyframes toLeftFromRight {
	0%{
		opacity: 0;
	}
	49% {
		-moz-transform: translate(0%);
	}
	50% {
		opacity: 0;
		-moz-transform: translate(100%);
	}
	51% {
		opacity: 1;
	}
}
@keyframes toLeftFromRight {
	0%{
		opacity: 0;
	}
	49% {
		transform: translate(0%);
	}
	50% {
		opacity: 0;
		transform: translate(100%);
	}
	51% {
		opacity: 1;
	}
}

@-webkit-keyframes toRightFromLeft {
	0%{
		opacity: 0;
	}
	49% {
		-webkit-transform: translate(0%);
	}
	50% {
		opacity: 0;
		-webkit-transform: translate(-100%);
	}
	51% {
		opacity: 1;
	}
}
@-moz-keyframes toRightFromLeft {
	0%{
		opacity: 0;
	}
	49% {
		-moz-transform: translate(0%);
	}
	50% {
		opacity: 0;
		-moz-transform: translate(-100%);
	}
	51% {
		opacity: 1;
	}
}
@keyframes toRightFromLeft {
	0%{
		opacity: 0;
	}
	49% {
		transform: translate(0%);
	}
	50% {
		opacity: 0;
		transform: translate(-100%);
	}
	51% {
		opacity: 1;
	}
}

@-webkit-keyframes toTopFromBottom {
	0%{
		opacity: 0;
	}
	49% {
		-webkit-transform: translateY(-100%);
	}
	50% {
		opacity: 0;
		-webkit-transform: translateY(100%);
	}
	51% {
		opacity: 1;
	}
}
@-moz-keyframes toTopFromBottom {
	0%{
		opacity: 0;
	}
	49% {
		-moz-transform: translateY(-100%);
	}
	50% {
		opacity: 0;
		-moz-transform: translateY(100%);
	}
	51% {
		opacity: 1;
	}
}
@keyframes toTopFromBottom {
	0%{
		opacity: 0;
	}
	49% {
		transform: translateY(-100%);
	}
	50% {
		opacity: 0;
		transform: translateY(100%);
	}
	51% {
		opacity: 1;
	}
}

@supports (-webkit-overflow-scrolling: touch) {
	/* CSS specific to iOS devices - fix for tooltip */
	body {
		cursor: pointer;
	}
}

/* Selected color display in cart */
.selected-color {
  color: #666;
  font-style: italic;
}

/* ===== Addon Groups Layout ===== */

.addon-group {
	margin-bottom: 5px;
	background-color: #fafafa;
}

.addon-group > div {
	display: flex;
	align-items: center;
	gap: 10px;
}

.addon-group-header {
	color: #BF1E2E;
	font-weight: 600;
	font-size: 14px;
	margin: 0;
	padding-right: 10px;
	max-width: 30%;
	min-width: 30%;
	flex-shrink: 0;
	line-height: 1.2;
	display: flex;
	align-items: center;
	text-align: center;
	justify-content: center;
}

.addon-group-options {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.addon-group-options li label {
	font-size: 18px;
}


.addon-group-options li {
	text-align: left;
}

.addon-group-options li:last-child {
	border-bottom: none;
}

.addon-group-options li.unavailable {
	opacity: 0.6;
}

.addon-group-options .price {
	font-weight: 600;
	color: #BF1E2E;
}

.addon-group-options .price.unavailable {
	color: #999;
}

.addon-group-options input[type="checkbox"],
.addon-group-options input[type="radio"] {
	margin-right: 8px;
}

.addon-group-options .addon-quantity {
	width: 40px;
	margin-left: 10px;
	margin-right: 5px;
	padding: 2px 5px;
	border: 1px solid #ccc;
	border-radius: 3px;
}

/* ===== IMPROVED QUANTITY SELECTOR STYLING ===== */

/* Addon quantity wrapper for better layout */
.addon-quantity-wrapper {
    display: inline-flex;
    align-items: center;
    margin-left: 6px;
    gap: 3px;
}

.addon-quantity-wrapper .qty-label {
    font-size: 11px;
    color: #666;
    font-style: italic;
}

/* Plus/Minus quantity selector for addon options */
.quantity-selector {
    display: inline-flex;
    align-items: center;
    margin-left: 8px;
    margin-right: 3px;
    border: 1px solid #ddd;
    border-radius: 3px;
    background: white;
    overflow: hidden;
    font-size: 0; /* Remove spacing between inline elements */
}

.quantity-selector.disabled {
    opacity: 0.6;
    pointer-events: none;
}

.quantity-selector .qty-btn {
    width: 20px;
    height: 18px;
    border: none;
    background: #f8f9fa;
    color: #666;
    font-weight: 600;
    font-size: 14px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
    user-select: none;
}

.quantity-selector .qty-btn:hover:not(:disabled) {
    background: #e9ecef;
    color: #333;
}

.quantity-selector .qty-btn:active:not(:disabled) {
    background: #dee2e6;
    transform: scale(0.9);
}

.quantity-selector .qty-btn:disabled {
    background: #f8f9fa;
    color: #ccc;
    cursor: not-allowed;
    opacity: 0.5;
}

.quantity-selector .qty-input {
    width: 30px;
    height: 18px;
    border: none;
    text-align: center;
    font-size: 14px;
    font-weight: 500;
    color: #495057;
    background: white;
    outline: none;
		margin-bottom: 0 !important;
    appearance: textfield;
    -moz-appearance: textfield; /* Firefox */
}

.quantity-selector .qty-input::-webkit-outer-spin-button,
.quantity-selector .qty-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.quantity-selector .qty-input:focus {
    background: #fff;
    box-shadow: inset 0 0 0 1px #007bff;
}

/* Legacy addon-quantity input - keeping for backward compatibility but making it look better */
.addon-group-options .addon-quantity {
    /* Keep existing functionality but hide in favor of new selector */
    display: none;
}

/* When JS is disabled, show the legacy input */
.no-js .addon-group-options .addon-quantity {
    display: inline-block;
    width: 40px;
    margin-left: 10px;
    margin-right: 5px;
    padding: 4px 6px;
    border: 1px solid #ccc;
    border-radius: 4px;
    text-align: center;
}

/* Improved focus states for accessibility */
.quantity-selector .qty-btn:focus {
    outline: 1px solid #007bff;
    outline-offset: -1px;
    background: #e9ecef;
}

.quantity-selector .qty-input:focus {
    outline: 1px solid #007bff;
    outline-offset: -1px;
}

/* ===== ORDER PAGE DATE PICKER STYLING ===== */
.collection-default-info {
	background-color: #f8f8f8;
	border: 1px solid #ddd;
	border-radius: 4px;
	padding: 10px;
	margin-top: 10px;
}

.collection-default-info strong {
	color: #2c3e50;
}

.collection-default-info .text-muted {
	color: #7f8c8d;
	font-size: 14px;
}

.change-collection-link, .hide-collection-picker {
	color: #3498db;
	text-decoration: underline;
	cursor: pointer;
}

.change-collection-link:hover, .hide-collection-picker:hover {
	color: #2980b9;
	text-decoration: none;
}

.collection-date-picker {
	margin-top: 10px;
}

.extra-day-pricing .alert {
	margin-bottom: 0;
}

.extra-day-pricing-info {
	font-size: 14px;
	line-height: 1.4;
}

.hide {
	display: none !important;
}

/* ===== INFO ICON TOOLTIPS ===== */

a[data-toggle="tooltip"] .fa-info-circle {
	color: #BF1E2E;
	font-size: 16px;
	margin-left: 5px;
	transition: all 0.3s ease;
}

a[data-toggle="tooltip"]:hover .fa-info-circle {
	color: #f47e7e;
	transform: scale(1.1);
}

a[data-toggle="tooltip"] {
	text-decoration: none !important;
}

a[data-toggle="tooltip"]:hover {
	text-decoration: none !important;
}

/* ===== RESPONSIVE QUANTITY SELECTOR STYLING ===== */

/* Mobile optimizations */
@media (max-width: 768px) {
    .quantity-selector {
        margin-left: 5px;
        margin-right: 2px;
    }
    
    .quantity-selector .qty-btn {
        width: 26px;
        height: 26px;
        font-size: 14px;
        /* Larger touch targets for mobile but still compact */
    }
    
    .quantity-selector .qty-input {
        width: 36px;
        height: 26px;
        font-size: 12px;
    }
    
    .quantity-selector.compact .qty-btn {
        width: 22px;
        height: 22px;
        font-size: 12px;
    }
    
    .quantity-selector.compact .qty-input {
        width: 30px;
        height: 22px;
        font-size: 11px;
    }
    
    .addon-quantity-wrapper {
        margin-left: 3px;
        gap: 2px;
    }
    
    .addon-quantity-wrapper .qty-label {
        font-size: 10px;
    }
}

/* High DPI / Retina display optimizations */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    .quantity-selector .qty-btn {
        /* Sharper borders on high DPI displays */
        border: 0.5px solid transparent;
    }
}
