/* global */
html { scroll-behavior: smooth }
body { -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; color: #000; font-family: 'Josefin Sans', sans-serif }
	body.no-scroll { overflow: hidden }
a { text-decoration: none !important }
.sticky { position: fixed !important; top: 0; width: 100%; z-index: 10000 }
#overlay-sidebar { background-color: rgba(0, 0, 0, 0.7); display: none; height: 100vh; opacity: 0; position: fixed; transition: all 0.5s ease-in-out; width: 100vw; z-index: 999 }
	#overlay-sidebar.open { display: block; opacity: 1 }
#overlay-mini-basket { background-color: rgba(0, 0, 0, 0.7); display: none; height: 100vh; opacity: 0; position: fixed; transition: all 0.5s ease-in-out; width: 100vw; z-index: 999 }
	#overlay-mini-basket.open { display: block; opacity: 1 }
#btn-scroll-top { background-color: rgba(0, 0, 0, .2); border: none; bottom: 40px; color: #FFF; display: none; font-size: 30px; line-height: 30px; padding: 10px 10px 6px 10px; position: fixed; right: 40px; z-index: 100 }
#header-spacer { height: 75px }
header { -moz-box-shadow: 0px 15px 10px -15px rgba(0, 0, 0, .25); -webkit-box-shadow: 0px 15px 10px -15px rgba(0, 0, 0, .25); background-color: #FFF; border-top: 1px solid #EEE; box-shadow: 0px 15px 10px -15px rgba(0, 0, 0, .25); height: 75px; left: 0; padding: 5px 0 0 0; position: fixed; top: 0; z-index: 998; width: 100% }
	header #navbar-logo { display: block; padding: 5px 50px 5px 0 }
	header #btn-sidebar { -moz-border-radius: 0; -moz-box-shadow: none; -webkit-border-radius: 0; -webkit-box-shadow: none; background-color: #FFF; border: none; border-radius: 0; box-shadow: none; color: #000; display: none; font-size: 22px; outline: none; padding: 15px }
	header .nav .nav-item .nav-link { -moz-transition: 0.3s; -o-transition: 0.3s; -webkit-transition: 0.3s; color: #000; font-size: 16px; padding: 15px 12px; text-transform: uppercase; transition: 0.3s }
	header .nav .nav-item .nav-link:hover, header .nav .nav-item .nav-link.active, header .nav .nav-item .nav-link.show { color: #B76E79 }
	header .nav .nav-item .nav-link.nav-icon { font-size: 22px; padding: 17px 0 15px 25px }
	header .nav .nav-item .dropdown-menu { -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0 }
	header .nav .nav-item .dropdown-item { -moz-transition: 0.3s; -o-transition: 0.3s; -webkit-transition: 0.3s; color: #000; font-size: 15px; padding: .75rem 1rem .25rem 1rem; text-transform: uppercase; transition: 0.3s }
	header .nav .nav-item .dropdown-item:hover, header .nav .nav-item .dropdown-item:active { background-color: #E9ECEF; color: #000 }
	header .nav .nav-item #btn-basket { position: relative }
		header .nav .nav-item #btn-basket .fa-circle { font-size: 14px; left: 23px; position: absolute; top: 17px }
footer { background-color: #EDF4F4; padding: 50px 0 }
	footer #footer-left ul { font-size: 20px; font-weight: 300; list-style: none; margin: 0; padding: 0 }
		footer #footer-left ul a { -moz-transition: 0.3s; -o-transition: 0.3s; -webkit-transition: 0.3s; color: #000; transition: 0.3s }
		footer #footer-left ul a:hover { color: #B76E79 }
	footer #footer-centre { text-align: center }
		footer #footer-centre #footer-logo { display: block; margin: 0 auto; width: 250px }
		footer #footer-centre #footer-social { font-size: 24px; padding-top: 20px }
			footer #footer-centre #footer-social a { -moz-transition: 0.3s; -o-transition: 0.3s; -webkit-transition: 0.3s; color: #000; margin: 0 11px; transition: 0.3s }
			footer #footer-centre #footer-social a:hover { color: #B76E79 }
	footer #footer-right { text-align: right }
		footer #footer-right ul { font-size: 20px; font-weight: 300; list-style: none; margin: 0; padding: 0 }
			footer #footer-right ul a { -moz-transition: 0.3s; -o-transition: 0.3s; -webkit-transition: 0.3s; color: #000; transition: 0.3s }
			footer #footer-right ul a:hover { color: #B76E79 }
.modal .modal-title { font-weight: 300 }
.modal .modal-body { font-size: 20px; font-weight: 300 }
#modal-search .modal-content { background: none; border: none }
#modal-search .modal-header { border: none }
	#modal-search .modal-header .btn-close { -moz-box-shadow: none; -webkit-box-shadow: none; background: none; box-shadow: none; color: #FFF; font-size: 30px; outline: none }
#modal-search .modal-body { padding: 0 }
	#modal-search .modal-body input { -moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none; border: 1px solid #000; font-size: 26px; font-weight: 300; outline: none; padding: 20px }
	#modal-search .modal-body button { -moz-box-shadow: none; -webkit-box-shadow: none; background-color: #FFF; border: 1px solid #000; box-shadow: none; font-size: 26px; outline: none; padding-left: 20px; padding-right: 20px }

/* sidebar */
#sidebar { -moz-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.1); -moz-transition: 0.5s all ease; -o-transition: 0.5s all ease; -webkit-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.1); -webkit-transition: 0.5s all ease; background-color: #282F36; box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.1); height: 100vh; left: -275px; overflow: auto; padding-bottom: 120px; position: fixed; top: 0; transition: 0.5s all ease; width: 275px; z-index: 1000; }
	#sidebar.open { left: 0 }
	#sidebar h6 { color: #FFF; font-size: 29px; font-weight: 300; margin: 18px 0 0 15px; text-transform: uppercase }
	#sidebar #btn-sidebar-close { -moz-transition: 0.3s; -o-transition: 0.3s; -webkit-transition: 0.3s; background-color: #FFF; border: none; color: #000; display: block; font-size: 29px; height: 45px; margin: 15px 15px 0 0; padding: 4px 0 0 0; transition: 0.3s; width: 45px !important }
	#sidebar #btn-sidebar-close:hover { background-color: #B76E79; color: #12161A; }
	#sidebar ul { font-size: 18px; list-style: none; margin: 25px 0 0 0; padding: 0 }
		#sidebar ul li a { -moz-transition: 0.3s; -o-transition: 0.3s; -webkit-transition: 0.3s; color: #FFF; display: block; font-weight: 300; padding: 5px 15px; position: relative; transition: 0.3s; }
		#sidebar ul li a:hover { background-color: #B76E79; color: #12161A }
			#sidebar ul li a.collapse-trigger:after { content: '\f0d7'; font-family: 'Font Awesome 5 Pro'; font-weight: 700; position: absolute; right: 15px; top: 4px }
		#sidebar ul ul { margin: 0 }
			#sidebar ul ul li a { padding-left: 30px }

/* mini basket */
#mini-basket { -moz-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.1); -moz-transition: 0.5s all ease; -o-transition: 0.5s all ease; -webkit-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.1); -webkit-transition: 0.5s all ease; background-color: #FFF; box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.1); height: 100vh; overflow: auto; padding: 6px 12px 120px 12px; position: fixed; right: -275px; top: 0; transition: 0.5s all ease; width: 275px; z-index: 1000; }
	#mini-basket.open { right: 0 }
	#mini-basket #mini-basket-header { border-bottom: 1px solid #EFEFEF; font-family: 'Baskervville', serif; font-size: 26px; margin-bottom: 12px }
		#mini-basket #mini-basket-header #btn-mini-basket-close { background-color: #FFF; border: none; color: #000; display: block; font-size: 24px; position: absolute; right: 5px; top: 5px }
	#mini-basket #mini-basket-body .mini-basket-item { border-bottom: 1px solid #EFEFEF; margin-bottom: 12px; padding-bottom: 12px; position: relative }
		#mini-basket #mini-basket-body .mini-basket-item .mini-basket-item-del { background-color: #FFF; border: none; color: #000; font-size: 14px; position: absolute; right: 0; top: 0; }
		#mini-basket #mini-basket-body .mini-basket-item .mini-basket-item-img img { width: 60px }
		#mini-basket #mini-basket-body .mini-basket-item .mini-basket-item-text { padding-left: 12px }
			#mini-basket #mini-basket-body .mini-basket-item .mini-basket-item-text h5 { font-size: 17px; margin: 0 }
				#mini-basket #mini-basket-body .mini-basket-item .mini-basket-item-text h5 a { color: #000 }
			#mini-basket #mini-basket-body .mini-basket-item .mini-basket-item-text p { font-size: 15px; font-weight: 300; margin: 0 }
	#mini-basket #mini-basket-body #mini-basket-empty { font-size: 17px; font-weight: 300; margin: 0 }
	#mini-basket #mini-basket-footer { bottom: 0; left: 0; position: absolute; width: 100% }
		#mini-basket #mini-basket-footer #mini-basket-total { border-top: 1px solid #EFEFEF; margin: 0 12px; padding: 12px 0 }
			#mini-basket #mini-basket-footer #mini-basket-total p { font-size: 17px; margin: 0 }
		#mini-basket #mini-basket-footer #mini-basket-btns { padding: 0 12px }
			#mini-basket #mini-basket-footer #mini-basket-btns .btn { -moz-border-radius: 0; -moz-transition: 0.3s; -o-transition: 0.3s; -webkit-border-radius: 0; -webkit-transition: 0.3s; background-color: #FFF; border: 1px solid #000; border-radius: 0; color: #000; display: inline-block; font-size: 16px; margin-bottom: 12px; padding: 10px 15px 6px 15px; text-transform: uppercase; transition: 0.3s; width: 100% }
			#mini-basket #mini-basket-footer #mini-basket-btns .btn:hover { border: 1px solid #B76E79; color: #B76E79 }

/* page */
#generic-header { background-size: cover !important; height: 250px; position: relative; text-align: center }
	#generic-header.generic { background: url('/img/banners/generic.jpg') no-repeat center }
	#generic-header.shop { background: url('/img/banners/shop.jpg') no-repeat center }
	#generic-header #generic-header-gradient { background-color: rgba(0, 0, 0, .5); height: 100%; width: 100% }
	#generic-header h1 { color: #FFF; font-family: 'Baskervville', serif; font-size: 46px; margin: 0; padding: 5px 0 }
	#generic-header .breadcrumb { color: #FFF; font-size: 18px; font-weight: 300; text-transform: uppercase }
		#generic-header .breadcrumb .breadcrumb-item + .breadcrumb-item::before { color: #FFF }
		#generic-header .breadcrumb .breadcrumb-item a, #generic-header .breadcrumb .breadcrumb-item.active { color: #FFF }

@media (max-width: 4200px) {
	/* global */
	.container { max-width: 1430px }
}

@media (max-width: 1459px) {
	/* global */
	.container { max-width: 1140px }
	.icon-title { width: 90px }
	footer { padding: 40px 0 }
		footer #footer-left ul { font-size: 18px }
		footer #footer-right ul { font-size: 18px }

	/* page */
	#generic-header { height: 225px }
		#generic-header h1 { font-size: 42px }
		#generic-header .breadcrumb { font-size: 16px }
}

@media (max-width: 1199px) {
	/* global */
	.container { max-width: 960px }
	.icon-title { width: 80px }
	header .nav .nav-item .nav-link { font-size: 15px; padding: 20px 10px 15px 10px }
	header .nav .nav-item .dropdown-item { font-size: 14px; padding: .5rem 1rem .25rem 1rem }
	footer { padding: 30px 0 }
		footer #footer-centre #footer-logo { width: 220px }
		footer #footer-centre #footer-social { font-size: 22px }
			footer #footer-centre #footer-social a { margin: 0 7px }

	/* page */
	#generic-header { height: 200px }
		#generic-header h1 { font-size: 38px; padding: 5px 0 }
}

@media (max-width: 991px) {
	/* global */
	.container { max-width: 720px }
	header { overflow: hidden }
		header #btn-sidebar { display: block }
		header #nav-main { display: none }
	footer #footer-left ul { font-size: 16px }
	footer #footer-centre #footer-logo { width: 180px }
	footer #footer-centre #footer-social { font-size: 19px }
		footer #footer-centre #footer-social a { margin: 0 5px }
	footer #footer-right ul { font-size: 16px }
	#modal-search .modal-body input { font-size: 22px; padding: 15px }
	#modal-search .modal-body button { font-size: 22px; padding-left: 15px; padding-right: 15px }

	/* page */
	#generic-header { height: 175px }
}

@media (max-width: 767px) {
	/* global */
	.container { max-width: 540px }
	header #header-social { text-align: right }
		header #header-social a { margin-left: 12px; margin-right: 0 }
	footer #footer-centre #footer-social { padding-bottom: 30px }

	/* mini basket */
	#mini-basket #mini-basket-footer { bottom: 120px }

	/* page */
	#generic-header { height: 150px }
}

@media (max-width: 575px) {
	/* global */
	.container { max-width: 100% }
	#btn-scroll-top { right: 12px }
	#header-spacer { height: 63px }
	header { height: 63px; padding: 0 }
		header #navbar-logo { padding-right: 10px }
	footer #footer-left { text-align: center }
	footer #footer-right { text-align: center }

	/* page */
	#generic-header h1 { font-size: 36px }
	#generic-header .breadcrumb { font-size: 14px }
}

@media (max-width: 374px) {
	/* global */

}