/*
Theme Name: Kitchens by Request Custom Theme
Author: Herrmann Advertising Design and Technology
Author URI: https://www.herrmann.com/
*/

::-moz-selection {
background: #b3d4fc;
text-shadow: none;
}

::selection {
background: #b3d4fc;
text-shadow: none;
}
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 0;
	padding: 0;
}
audio, canvas, iframe, img, svg, video {
	vertical-align: middle;
}
fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}
textarea {
	resize: vertical;
}
.hidden {
	display: none !important;
}
.visuallyhidden {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	white-space: nowrap;
}
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus {
	clip: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	width: auto;
	white-space: inherit;
}
.invisible {
	visibility: hidden;
}

/* ==========================================================================
Print styles.
Inlined to avoid the additional HTTP request:
https://www.phpied.com/delay-loading-your-print-css/
========================================================================== */

@media print {
*, *:before, *:after {
	background: transparent !important;
	color: #000 !important; /* Black prints faster */
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
	text-shadow: none !important;
}
a, a:visited {
	text-decoration: underline;
}
a[href]:after {
	content: " (" attr(href) ")";
}
abbr[title]:after {
	content: " (" attr(title) ")";
}

/*
* Don't show links that are fragment identifiers,
* or use the `javascript:` pseudo protocol
*/

a[href^="#"]:after, a[href^="javascript:"]:after {
content: "";
}
pre {
	white-space: pre-wrap !important;
}
pre, blockquote {
	border: 1px solid #999;
	page-break-inside: avoid;
}
/*
* Printing Tables:
* http://css-discuss.incutio.com/wiki/Printing_Tables
*/

thead {
	display: table-header-group;
}
tr, img {
	page-break-inside: avoid;
}
p, h2, h3 {
	orphans: 3;
	widows: 3;
}
h2, h3 {
	page-break-after: avoid;
}
}
/* ----------------------------------------------
THEME STYLES   
------------------------------------------------- */ 

body, html {
	margin: 0px;
	padding: 0px;
	font-family: 'Source Sans Pro', sans-serif;
	color:#000000;
	font-weight:300;
	background-color:#FFF;
	font-size: 16px;
	font-size: 100%;
	-webkit-text-size-adjust: none;
	position: relative;
	height: 100%;
	width: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: none;
}
hr {
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
	margin: 1em 0;
}
sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline
}
sup {
	top: -.5em
}
sub {
	bottom: -.25em
}
img {
	border: 0
}
figure {
	margin: 0
}
button, input {
	line-height: normal
}
button, select {
	text-transform: none
}
button, html input[type=button], input[type=reset], input[type=submit] {
	-webkit-appearance: button;
	cursor: pointer
}
button[disabled], html input[disabled] {
	cursor: default
}
input[type=checkbox], input[type=radio] {
	box-sizing: border-box;
	padding: 0
}
input[type=search] {
	-webkit-appearance: textfield;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box
}
input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
-webkit-appearance:none
}
button::-moz-focus-inner, input::-moz-focus-inner {
border:0;
padding:0
}
textarea {
	overflow: auto;
	vertical-align: top
}
table {
	border-collapse: collapse;
	border-spacing: 0
}
td, th {
	padding: 0
}
main td {
	padding-top: 10px;
	padding-right: 4px;
	padding-bottom: 10px;
	padding-left: 4px
}
.table-responsive {
	margin-bottom: 15px;
	overflow-y: hidden;
	width: 100%;
	border: none
}
 @media only screen and (max-width: 767px) {
td {
display: block;
width: 100%;
text-align: center
}
}
*, :after, :before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box
}
/*========= basic global font sizes =============*/
h1, .h1 {
	color: #000000;
	font-weight:300;
	line-height: 122%;
	font-size:36px;
	font-size:10vw;
}
h2, h3, h4, h5, h6 {
	line-height: 122%;
	font-weight:300;
	color: #000000;
}
h2, h3, .h3 {
	margin-top: 15px;
	margin-bottom: 10px;
}
h2, .h2 {
	font-size:36px;
}
h3, .h3 {
	font-size:24px;
}
p {
	font-size: 18px;
	line-height: 144%;
	margin-bottom: 10px;
}
.content ul {
	margin-left:1.5rem;
}
.content ul li, .content ol li {
	font-size: 18px;
	line-height: 144%;
	letter-spacing:-.015em;
	margin-bottom: 10px;
	list-style:none;
}
.content ul li:before {
	content: '\f111';
	font-family: 'FontAwesome';
	font-size: 8px;
	float: left;
	margin-left: -20px;
	color: #FCB131;
}
.content ul li ul {
	padding-top: 2px;
}
.content ul li ul li {
	padding-bottom: 1px;
}
 @media only screen and (min-width: 480px) {
h1, .h1 {
font-size:48px;
}
 p {
 font-size: 24px;
}
}
 @media only screen and (min-width: 768px) {
 h1, .h1 {
font-size:45px;
}
h2, .h2 {
font-size:30px;
}
h3, .h3 {
font-size:20px;
}
 p {
font-size: 16px;
}
.content ul li, .content ol li {
font-size: 16px;
}
}
@media only screen and (min-width: 992px) {
 h1, .h1 {
font-size:55px;
}
h2, .h2 {
font-size:35px;
}
h3, .h3 {
font-size:24px;
}
 p {
font-size: 19px;
}
.content ul li, .content ol li {
font-size: 19px;
}
}
@media only screen and (min-width: 1200px) {
 h1, .h1 {
font-size:68px;
}
 h2, .h2 {
font-size:45px;
}
h3, .h3 {
font-size:30px;
}
 p {
font-size: 24px;
}
.content ul li, .content ol li {
font-size: 24px;
}
}
@media only screen and (min-width: 1600px) {
 h1, .h1 {
font-size:85px;
}
 h2, .h2 {
font-size:56px;
}
h3, .h3 {
font-size:38px;
}
 p {
font-size: 30px;
}
.content ul li, .content ol li {
font-size: 30px;
}
}
 @media only screen and (min-width: 1800px) {
 h1, .h1 {
font-size:110px;
}
 h2, .h2 {
font-size:72px;
}
h3, .h3 {
font-size:48px;
}
 p {
font-size: 39px;
}
 .content p {
font-size: 30px;
}
.content ul li, .content ol li {
font-size: 39px;
padding-bottom: 10px;
margin-left: 8px;
}
}
/* --------- other helpers and overrides ---------*/
strong {
	font-weight:600;
}
.italic {
	font-style:italic;
}
ul, menu, dir {
	display: block;
	list-style-type: disc;
	margin:0;
	padding: 0;
}
a, a:visited {
	color: inherit;
	text-decoration: none;
	transition: all 0.12s ease-in-out 0s;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #8e8f8e;
}
a:hover, a:focus {
	color: #FCB131;
	text-decoration: none;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FCB131;
}
a:focus {
	outline: thin dotted;
}

/* telephone links */

a[href^="tel:"], a[href^="tel:"]:visited {
color: inherit;
font-weight:inherit;
text-decoration:none;
border-bottom-width: 1px;
 border-bottom-style: dotted;
 border-bottom-color: #8e8f8e;
}
 a[href^="tel:"]:hover {
color: inherit;
font-weight:inherit;
text-decoration: none;
border-bottom-width: 1px;
 border-bottom-style: solid;
 border-bottom-color: #8e8f8e;
}
img {
	max-width: 100%;
	height: auto
}
img.fullwidth-photo {
	width: 100%;
	height: auto
}
.alignnone {
	margin:5px 20px 20px 0
}
.aligncenter, div.aligncenter {
	display:block;
	margin:5px auto 5px auto
}
p.aligncenter {
	text-align:center
}
.alignright {
	float:right;
	margin:5px 0 20px 20px
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px
}
a img.alignnone {
	margin:5px 20px 20px 0
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0
}
img.photohalf {
	width:50%;
	height:auto
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto
}
figure {
	padding: 0px;
	margin: 0px
}
a#skiptocontent {
	padding: 6px;
	position: absolute;
	top: -60px;
	left: 0px;
	color: #FFF;
	background-color: #000000;
	border-right: 1px solid white;
	border-bottom: 1px solid white;
	border-bottom-right-radius: 8px;
	-webkit-transition: top 1s ease-out, background 1s linear;
	transition: top 1s ease-out, background 1s linear;
	z-index: 100
}
a#skiptocontent:focus {
	position: absolute;
	left: 0px;
	top: 0;
	color: #000000;
	background-color:#FCB131;
	outline: 0;
-webkit-transition: top .1s ease-in, background .5s linear;
transition: top .1s ease-in, background .5s linear;
	margin-bottom:200px;
}
.error-message {
	color:#cc0000;
	font-weight:bold;
}
video {
	width:100% !important;
	height:auto !important;
}
/* =========== CONTAINERS ================= */
.container {
	width:90%;
	max-width:90%;
}
/* =========== buttons and colors ================= */

.btn {
	font-family: 'Work Sans', sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: inherit;
	line-height: 1.42857143;
	text-align: center;
	white-space:  normal;
	vertical-align: middle;
	display: inline-block;
	text-decoration: none;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background-image: none;
	border: 1px solid transparent;
	border-radius: 0;
	margin-bottom: 0;
	padding: 6px;
	padding-right: 2rem;
	padding-left: 2rem;
}
.btn:visited {
	color: #FFF
}
/* white button */
.btn-white, .btn-white:visited {
	color: #FFF;
	background-color: transparent;
	border: 2px solid #FFF;
}
.btn-white:hover, .btn-white:focus {
	color: #FFF;
	background-color: #FCB131;
	border: 2px solid #FCB131;
}
/* outline button */
.btn-outline, .btn-outline:visited {
	color: #000;
	background-color: transparent;
	border: 2px solid #000;
}
.btn-outline:hover, .btn-outline:focus {
	color: #FFF;
	background-color: #FCB131;
	border: 2px solid #FCB131;
}
/* black button */
.btn-black, .btn-black:visited {
	color: #000;
	background-color: transparent;
	border: 2px solid #000;
}
.btn-black:hover, .btn-black:focus {
	color: #FFF;
	background-color: #000;
	border: 2px solid #000;
}
/* backgrounds */
.bg-yellow {
	background-color: #FCB131;
}
.bg-black {
	background-color: #000000;
}
.diamond {
	display:inline-block;
	height:8px;
	width:8px;
	background:#FCB131;
	transform: rotate(45deg);
 margin-left:.5rem;
 margin-right:.5rem;
	margin-bottom:2px;
}
 @media only screen and (min-width: 1800px) {
.diamond {
 height:12px;
 width:12px;
}
}
/* hairline rule */



hr.hr-gold {
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	border-top: 6px solid #FCB131;
	height: 0;
	width: 32%;
	margin: 0;
	margin-top: 35px;
	margin-bottom: 20px;
	margin-left: auto;
	margin-right: auto;
}
 @media only screen and (min-width: 1200px) {
 hr.hr-gold {
 border-top: 9px solid #FCB131;
 margin-top: 55px;
 margin-bottom: 35px;
}
}
 @media only screen and (min-width: 1800px) {
 hr.hr-gold {
 border-top: 9px solid #FCB131;
 width: 22%;
}
}
/* ================================================= */
/* ====================== globals ================= */
/* ================================================= */


.card {
	background-color: transparent;
	background-clip: border-box;
	border:  none;
	border-radius:  0;
}
.card-img {
	width: 100%;
	border-radius:  0;
}
main {
	margin-top:144px;
}
 @media only screen and (min-width: 480px) {
main {
 margin-top:185px;
}
}
 @media only screen and (min-width: 768px) {
main {
 margin-top:110px;
}
}
 @media only screen and (min-width: 992px) {
main {
 margin-top:140px;
}
}
 @media only screen and (min-width: 1200px) {
main {
 margin-top:140px;
}
}
 @media only screen and (min-width: 1800px) {
main {
 margin-top:220px;
}
}
/* ================================================= */
/* ====================== HEADER ================= */
/* ================================================= */

header {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 5000;
	height:144px;
	background-color:#FFF;
}
.stickyheader {
	height:120px;
	transition: transform 0.25s ease;
}
header .container {
	width:100%;
	max-width:100%;
}
header .logo {
	position: relative;
	width:85%;
	max-width:85%;
	height:auto;
 transition: all .45s ease;
	padding-top:15px;
}
header .logo a {
	border:none;
}
.stickyheader .logo {
	transform: scale(.83);
}
 @media only screen and (min-width: 480px) {
 header {
 height:185px;
}
.stickyheader {
 height:155px;
}
 header .logo {
width:408px;
max-width:408px;
 height:auto;
}
.stickyheader .logo {
 width:338px;
max-width:338px;
 height:auto;
}
}
 @media only screen and (min-width: 768px) {
header {
 height:110px;
}
 .stickyheader {
 height:81px;
}
 header .container {
 width:90%;
 max-width:90%;
}
 header .logo {
 max-width:45%;
 height:auto;
 padding-top:0;
 align-items: center;
}
 .stickyheader .logo {
 padding-bottom:0;
 transform: none;
 max-width:35%;
}
 header .logo {
width:218px;
max-width:218px;
 height:auto;
}
.stickyheader .logo {
 width:180px;
max-width:180px;
 height:auto;
}
}
 @media only screen and (min-width: 992px) {
header {
 height:140px;
}
 .stickyheader {
 height:116px;
}
 header .logo {
width:283px;
max-width:283px;
 height:auto;
}
.stickyheader .logo {
 width:234px;
max-width:234px;
 height:auto;
}
}
 @media only screen and (min-width: 1200px) {
header {
 height:160px;
}
 .stickyheader {
 height:134px;
}
 header .logo {
width:340px;
max-width:340px;
 height:auto;
}
.stickyheader .logo {
 width:282px;
max-width:282px;
 height:auto;
}
}
 @media only screen and (min-width: 1800px) {
header {
 height:220px;
}
 .stickyheader {
 height:183px;
}
 header .logo {
 width:29%;
 max-width:544px;
 height:auto;
}
 .stickyheader .logo {
width:24%;
 max-width:451px;
}
}
/* header menu button */
header .menu-button {
	position: absolute;
	top:5px;
	right:25px;
}
 @media only screen and (min-width: 480px) {
header .menu-button {
top:15px;
 right:45px;
}
}
 @media only screen and (min-width: 1600px) {
header .menu-button {
top:20px;
 right:45px;
}
}
.hamburger {
	display: inline-block;
	cursor: pointer;
	padding:0;
}
.hamburger:focus {
	outline:none;
	box-shadow:none;
}
.bar1, .bar2, .bar3 {
	display:block;
	width: 44px;
	height: 3px;
	background-color: #000;
	margin: 8px 0;
}
 @media only screen and (min-width: 1600px) {
.bar1, .bar2, .bar3 {
 width: 78px;
 height: 3px;
 margin: 15px 0;
}
}
.bar2 {
	width:66%;
	transition: 0.3s;
}
.hamburger:hover .bar2 {
	width:100%;
	transition: 0.3s;
}
.change .bar1 {
	-webkit-transform: rotate(-45deg) translate(-6px, 7px);
	transform: rotate(-45deg) translate(-6px, 7px);
	background-color: rgba(0, 0, 0, 0.8);
}
.change .bar2 {
	opacity: 0;
}
.change .bar3 {
	-webkit-transform: rotate(45deg) translate(-6px, -6px);
	transform: rotate(45deg) translate(-6px, -6px);
	background-color: rgba(0, 0, 0, 0.8);
}
 @media only screen and (min-width: 1600px) {
 .change .bar1 {
 -webkit-transform: rotate(-45deg) translate(-12px, 15px);
 transform: rotate(-45deg) translate(-12px, 15px);
 background-color: rgba(0, 0, 0, 0.8);
}
.change .bar3 {
 -webkit-transform: rotate(45deg) translate(-11px, -11px);
 transform: rotate(45deg) translate(-11px, -11px);
 background-color: rgba(0, 0, 0, 0.8);
}
}
/* close button */

.btn-close {
	position: absolute;
	top:15px;
	right:25px;
	z-index:9000;
	height:44px;
	width: 44px;
	background-color: transparent;
	padding:0;
}
 @media only screen and (min-width: 480px) {
.btn-close {
top:15px;
 right:45px;
}
}
 @media only screen and (min-width: 1600px) {
.btn-close {
 position: absolute;
 top:18px;
 right:48px;
 height:78px;
 width: 78px;
 background-color: transparent;
 padding:0;
}
}
.btn-close .bar1 {
	transition: 0.3s;
	-webkit-transform: rotate(-45deg) translate(-6px, 8px);
	transform: rotate(-45deg) translate(-6px, 8px);
	background-color: #FFF;
}
.btn-close .bar2 {
	opacity: 0;
}
.btn-close .bar3 {
	transition: 0.3s;
	-webkit-transform: rotate(45deg) translate(-7px, -8px);
	transform: rotate(45deg) translate(-7px, -8px);
	background-color: #FFF;
}
 @media only screen and (min-width: 1600px) {
.btn-close .bar1 {
 transition: 0.3s;
 -webkit-transform: rotate(-45deg) translate(-12px, 15px);
 transform: rotate(-45deg) translate(-12px, 15px);
 background-color: #FFF;
}
 .btn-close .bar3 {
 transition: 0.3s;
 -webkit-transform: rotate(45deg) translate(-11px, -11px);
 transform: rotate(45deg) translate(-11px, -11px);
 background-color: #FFF;
}
}
/* ================================================= */
/* ====================== HOME PAGE ================= */
/* ================================================= */

 .homebanner .card-img-overlay {
	-js-display: flex;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: flex-end;
	padding-bottom:20%;
}
.homebanner .card-img-overlay:after {
	position:absolute;
	height:70%;
	width:100%;
	left:0;
	bottom:0;
	content: "";
	background-color: rgba(000, 000, 000, 0.12);
	z-index:1000;
}
.homebanner article {
	z-index:1001;
}
 @media only screen and (min-width: 768px) {
 .homebanner .card-img-overlay {
padding-bottom:0;
 align-items: center;
}
 .homebanner .card-img-overlay:after {
 height:100%;
}
}
.homebanner .card-img-overlay {
	text-align:center;
}
.homebanner h1 {
	font-size:75px;
	font-size:15.625vw;
	color:#FFF;
	font-weight:300;
	line-height:100%;
	letter-spacing:-.035em;
	text-align:center;
	margin-bottom:10px;
}
 @media only screen and (min-width: 768px) {
 .homebanner h1 {
 font-size:58px;
 font-size:7.448vw;
}
}
.homebanner p {
	color:#FFF;
}
.home-section h2 {
	font-size:10.104vw;
	letter-spacing:-.035em;
}
.scrolldown {
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	text-align:center;
	z-index:1500;
}
.scrolldown a {
	cursor:pointer;
}
.scrolldown img {
	width:13%;
	max-width:150px;
	margin-left:auto;
	margin-right:auto;
}
 @media only screen and (min-width: 768px) {
.scrolldown img {
 width:8%;
 max-width:150px;
 margin-left:auto;
 margin-right:auto;
}
}
/* --------- home carousel --------- */

.home-work {
	text-align:center;
	padding-top:30px;
	padding-bottom:30px;
}
.home-carousel {
	padding-top:30px;
	padding-bottom:30px;
}
.featthumb .card-img-overlay {
	padding:0;
	-js-display: flex;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	-webkit-transition: all 0.4s ease-in-out 0s;
	-moz-transition: all 0.4s ease-in-out 0s;
	transition: all 0.4s ease-in-out 0s;
	color: #fff;
}
.featthumb a:hover > .card-img-overlay {
	background-color: rgba(000, 000, 000, 0.48);
	opacity: 1;
}
.featthumb a, .featthumb a:visited, .featthumb a:hover, .featthumb a:focus {
	border:none;
	transition: all 0.5s ease-in-out 0s;
}
.featthumb a:hover > .card-img-overlay:before {
	position:absolute;
	height:60px;
	width:60px;
	left:7%;
	top:10%;
	content: "";
	background:url(../images/corner-top.png) no-repeat 0 0;
	background-size: 60px 60px;
	z-index:1000;
}
.featthumb a:hover > .card-img-overlay:after {
	position:absolute;
	height:60px;
	width:60px;
	right:7%;
	bottom:10%;
	content: "";
	background:url(../images/corner-btm.png) no-repeat 0 0;
	background-size: 60px 60px;
	z-index:1000;
}
.featthumb .card-img-overlay h2 {
	color:#FFF;
	text-align:center;
}
.featthumb .card-img-overlay p {
	font-weight:400;
	color:#FFF;
	text-align:center;
	margin:0;
}
.featthumb .card-img-overlay p.viewmore {
	position:absolute;
	bottom:16%;
	left: 0;
	width:100%;
	text-align: center;
}
/* ------ Owl Carousel styles------- */


.owl-carousel {
	-webkit-animation-duration:1000ms;
	animation-duration:1000ms;
	-webkit-animation-fill-mode:both;
	animation-fill-mode:both;
}
.owl-carousel .owl-item {
	-webkit-transition:opacity 400ms ease;
	-moz-transition:opacity 400ms ease;
	-ms-transition:opacity 400ms ease;
	-o-transition:opacity 400ms ease;
	transition:opacity 400ms ease
}
.owl-theme .owl-nav {
	text-align: center;
	-webkit-tap-highlight-color: transparent;
}
.owl-carousel:focus {
	outline:none;
}
 .owl-theme .owl-nav [class*=owl-] {
opacity: .9;
background: none;
 border-radius: 0;
 padding:0;
margin: 0;
}
 .owl-theme .owl-nav [class*=owl-]:hover {
background: none;
opacity: 1;
}
.owl-prev {
	width: 28px;
	height: 58px;
	position: absolute;
	left: -36px;
	top:40%;
	border: none;
}
.owl-next {
	width: 28px;
	height: 58px;
	position: absolute;
	right: -36px;
	top:40%;
	border: none;
}
@media only screen and (min-width: 768px) {
.owl-prev {
width: 12px;
height: 26px;
left: -26px;
}
.owl-next {
width: 12px;
height: 26px;
right: -26px;
}
}
@media only screen and (min-width: 992px) {
 .owl-prev {
width: 19px;
height: 41px;
left: -41px;
}
.owl-next {
width: 19px;
height: 41px;
right: -41px;
}
}
@media only screen and (min-width: 1200px) {
 .owl-prev {
width: 23px;
height: 50px;
left: -50px;
}
.owl-next {
width: 23px;
height: 50px;
right: -50px;
}
}
@media only screen and (min-width: 1800px) {
 .owl-prev {
width: 36px;
height: 72px;
 margin-top:-25px;
}
.owl-next {
width: 36px;
height: 72px;
 margin-top:-25px;
}
}
.owl-nav .owl-prev.disabled, .owl-nav .owl-next.disabled {
	display: none;
}
.owl-theme .owl-dots {
	padding-top:20px;
}
.owl-theme .owl-dots .owl-dot span {
	width: 12px;
	height: 12px;
	margin: 5px 10px;
	background: #CCCCCC;
	display: block;
	-webkit-backface-visibility: visible;
	transition: opacity 200ms ease;
	border-radius: 0;
	transform: rotate(45deg);
}
.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
	background: #FCB131;
}
/* ==========================*/
/* ==========================*/
/* portfolio slider modal */
/* ==========================*/
/* ==========================*/


.mfp-bg {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 8500;
	overflow: hidden;
	position: fixed;
	background: #000;
	opacity: 1;
}
.mfp-wrap {
	z-index: 8600;
}
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
	color: #000;
	right: 0;
	text-align: right;
	padding-right: 6px;
	width: 100%;
	position:absolute;
	top:0;
	right:0;
}
.mfp-image-holder .mfp-content {
	width:86%;
	max-width: 1670px;
	margin-left:auto;
	margin-right:auto;
}
.mfp-container {
	padding: 0;
}
.mfp-figure:after {
	box-shadow: none;
	background: #000;
}
.mfp-figure img {
	-webkit-animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-duration: 1s;
	animation-fill-mode: both;
	-webkit-animation-name: fadeIn;
	animation-name: fadeIn;
}
.mfp-bottom-bar {
	display:none;
}
/* mfp arrows */

.mfp-arrow {
	position: absolute;
	opacity: 0.65;
	opacity: 1;
	margin: 0;
	top: 50%;
	margin-top: -55px;
	padding: 0;
	width: 90px;
	height: 110px;
	-webkit-tap-highlight-color: transparent;
}
.mfp-arrow-right {
	background-image: url(../images/next-arrow-white.png) !important;
	background-repeat: no-repeat !important;
	background-position: center center !important;
}
.mfp-arrow-right:before {
	border:  none;
}
.mfp-arrow-right:after {
	border:  none;
	margin-left: 39px;
}
.mfp-arrow-left {
	background-image: url(../images/prev-arrow-white.png) !important;
	background-repeat: no-repeat !important;
	background-position: center center !important;
}
.mfp-arrow-left:before {
	margin-left: 25px;
	border: none;
}
.mfp-arrow-left:after {
	border: none;
	margin-left: 31px;
}
.mfp-arrow:hover, .mfp-arrow:focus {
	opacity: 1;
	opacity: 0.85;
}
/* ---- */
.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor:pointer;
	position: fixed;
	width: 40px;
	height: 40px;
	line-height: 40px;
	right: 20px;
	top: 20px;
	text-decoration: none;
	text-align: center;
	opacity: 1;
	padding: 0;
	color: transparent;
	background-image: url(../images/close-button-white.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-soze: contain;
}
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor:pointer;
}
.gallery-modal .item {
}
.gallery-modal .mfp-close {
	cursor:pointer;
	position: fixed;
	width: 40px;
	height: 40px;
	line-height: 40px;
	right: 20px;
	top: 20px;
	text-decoration: none;
	text-align: center;
	opacity: 1;
	padding: 0;
	color: transparent;
	background-image: url(../images/close-button-white.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-soze: contain;
}
.gallery-modal .mfp-close:hover {
	cursor:pointer;
}
/* --------- meet blue --------- */

.meet-blue {
	color:#FFF;
}
.meet-blue .card-img-overlay {
	display:block;
	position:relative;
	background-color:#000;
	text-align:center;
}
 @media only screen and (min-width: 768px) {
.meet-blue .card-img-overlay {
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 padding: 1.25rem;
 border-radius: calc(.25rem - 1px);
 text-align: left;
 background-color:transparent;
}
}
.meet-blue h2 {
	color:#FFF;
}
.meet-blue .card-text {
	margin-bottom:30px;
}
/* ================================================= */
/* ====================== INTERIOR PAGES ================= */
/* ================================================= */

/* project listing page */

 .pagebanner .card-img-overlay {
	-js-display: flex;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align:center;
}
.overlay-tint {
	position:absolute;
	background-color:#F66;
	left:0;
	top:0;
	width:100%;
	height:100%;
	z-index:1000;
}
.pagebanner .card-img-overlay:before {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	content: "";
	background-color:rgba(0, 0, 0, 0.26);
}
.pagebanner h1 {
	font-size:28px;
	font-size: 10.104vw;
	letter-spacing: -.035em;
	margin:0;
	padding:0;
	color:#FFF;
	z-index:1000;
}
 @media only screen and (min-width: 768px) {
 .pagebanner h1 {
 font-size:58px;
font-size: 10.104vw;
}
}
/* project detail page */

.pagetitle.card {
	padding-top:30px;
	padding-bottom:30px;
	background-color:#000;
	color:#FFF;
	text-align:center;
}
 @media only screen and (min-width: 768px) {
.pagetitle.card {
 padding-top:30px;
 padding-bottom:30px;
}
}
 @media only screen and (min-width: 992px) {
 .pagetitle.card {
padding-top:60px;
 padding-bottom:60px;
}
}
 @media only screen and (min-width: 1200px) {
 .pagetitle.card {
 padding-top:80px;
 padding-bottom:80px;
}
}
 @media only screen and (min-width: 1800px) {
 .pagetitle.card {
 padding-top:120px;
 padding-bottom:120px;
}
}
.pagetitle.card p, .pagetitle.card h1, .pagetitle.card h2 {
	color:#FFF;
}
.pagetitle.card p {
	font-size: 18px;
	line-height: 144%;
	margin-bottom: 10px;
}
p.backlink {
	position:relative;
	height:18px;
	line-height: 100%;
}
p.backlink a, p.backlink a:visited {
	color:inherit;
	border:none;
}
p.backlink a:hover, a:focus {
	color: #FCB131;
	border:none;
}
.backbutton {
	height:100%;
	width:auto;
	vertical-align:middle;
	margin-right:8px;
	margin-bottom:1px;
}
 @media only screen and (min-width: 768px) {
.pagetitle.card p {
font-size: 16px;
}
 p.backlink {
 position:relative;
 height:16px;
}
}
@media only screen and (min-width: 992px) {
.pagetitle.card p {
font-size: 19px;
}
 p.backlink {
 position:relative;
 height:19px;
}
}
@media only screen and (min-width: 1200px) {
.pagetitle.card p {
font-size: 24px;
}
 p.backlink {
 position:relative;
 height:24px;
}
}
@media only screen and (min-width: 1600px) {
.pagetitle.card p {
font-size: 30px;
}
 p.backlink {
 position:relative;
 height:30px;
}
}
 @media only screen and (min-width: 1800px) {
.pagetitle.card p {
font-size: 39px;
}
 p.backlink {
 position:relative;
 height:39px;
}
}
.content {
	padding-top:15px;
}
 @media only screen and (min-width: 768px) {
.content {
 padding-top:30px;
}
}
 @media only screen and (min-width: 992px) {
.content {
 padding-top:30px;
}
}
 @media only screen and (min-width: 1200px) {
.content {
 padding-top:40px;
}
}
 @media only screen and (min-width: 1800px) {
.content {
 padding-top:115px;
}
}
.content-section {
	padding-bottom:10px;
}
 @media only screen and (min-width: 768px) {
 .content-section {
 padding-bottom:20px;
}
}
 @media only screen and (min-width: 992px) {
 .content-section {
 padding-bottom:30px;
}
}
 @media only screen and (min-width: 1200px) {
.content-section {
 padding-bottom:40px;
}
}
 @media only screen and (min-width: 1800px) {
.content-section {
 padding-bottom:60px;
}
}
/*======================================
               videos       
======================================*/


.video-wrapper {
	padding-top:40px;
	padding-bottom:30px;
}
.pagetitle .video-wrapper {
	padding-top:40px;
	padding-bottom:30px;
}
 @media only screen and (min-width: 992px) {
.pagetitle .video-wrapper {
 padding-top:60px;
 padding-bottom:30px;
}
}
 @media only screen and (min-width: 1200px) {
.pagetitle .video-wrapper {
 width:80%;
 max-width:960px;
 margin-left:auto;
 margin-right:auto;
 padding-top:80px;
}
}
 @media only screen and (min-width: 1800px) {
.pagetitle .video-wrapper {
 padding-bottom:0;
}
}
/*======================================
               PHOTO GRIDS        
======================================*/

.photo-grid img {
	margin-bottom:30px;
}
.photo-grid .featthumb img {
	margin-bottom:0;
}
.photo-grid .featthumb {
	margin-bottom:30px;
}
 @media(min-width:1500px) {
 .photo-grid {
 padding-right:-24px;
 padding-left:-24px;
}
 .photo-grid > [class*='col-'] {
 padding-right:24px;
 padding-left:24px;
}
 .photo-grid img {
 margin-bottom:48px;
}
 .photo-grid .featthumb img {
 margin-bottom:0;
}
 .photo-grid .featthumb {
margin-bottom:48px;
}
}
/*========== PRODUCT GRIDS ==============*/  

 .row.products {
	padding-top:30px;
}
.photo-grid .product-category {
	margin-bottom:48px;
}
.photo-grid .product-cattitle {
	margin-bottom:20px;
}
.photo-grid .product-cattitle img {
	margin-bottom:0;
}
.photo-grid .product-cattitle .card-img-overlay {
	padding: 5%;
	-js-display: flex;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	color:#FFF;
}
 @media(min-width:768px) {
.photo-grid .product-cattitle .card-img-overlay {
 justify-content: flex-start;
}
}
.photo-grid .product-cattitle .card-img-overlay:after {
	position:absolute;
	height:100%;
	width:100%;
	left:0;
	top:0;
	content: "";
	background-color: rgba(000, 000, 000, 0.48);
	z-index:1000;
}
.photo-grid .product-cattitle .card-img-overlay article {
	position: relative;
	z-index:2000;
}
.photo-grid .product-cattitle h2 {
	margin:0;
	color:#FFF;
	font-weight:400;
	letter-spacing:-.035em;
}
.content .product-category ul {
	margin-left: 0;
	text-align:center;
}
 @media(min-width:768px) {
.content .product-category ul {
 text-align:left;
}
}
.content .product-category ul li {
	line-height:110%;
}
.content .product-category ul li:before {
	content: '';
	display:none;
}
/*========== service listing ==============*/  

.content.service-listing ul {
	margin-left: 0;
	font-weight:400;
	font-size:30px;
}
 @media(min-width:768px) {
 .content.service-listing ul {
 text-align:left;
 -moz-column-count: 3;
 -moz-column-gap: 20px;
 -webkit-column-count: 3;
 -webkit-column-gap: 24px;
}
}

.content.service-listing ul li {
	line-height:110%;
	margin-bottom:20px;
}
.content.service-listing ul li {
	font-size:30px;
}
 @media(min-width:768px) {
 .content.service-listing ul li {
 font-size:24px;
}
}
 @media(min-width:1200px) {
 .content.service-listing ul li {
 font-size:30px;
}
}
 @media(min-width:1400px) {
 .content.service-listing ul li {
 font-size:36px;
}
}
 @media(min-width:1800px) {
 .content.service-listing ul li {
 font-size:48px;
}
}
.content.service-listing ul li:before {
	content: '';
	display:none;
}
/*======================================
               ABOUT AND GENERIC PAGES       
======================================*/

article.block-spacing {
	text-align:center;
	margin-bottom:20px;
}
.article-padding {
	padding:20px;
}
 @media only screen and (min-width: 768px) {
 article.block-spacing {
 text-align:left;
 margin-bottom:40px;
}
/* article with space on left, pushed to the right */
article.block-spacing.leftspace {
 margin-left:6.7%;
}
 article.block-spacing.rightspace {
 margin-right:6.7%;
}
 .article-padding {
 padding:0;
}
 article.block-spacing h2:first-of-type {
 margin-top:0;
}
 .custom-gutters {
 padding-right:-24px;
 padding-left:-24px;
}
 .custom-gutters > [class*='col-'] {
 padding-right:24px;
 padding-left:24px;
}
}
 @media(min-width:1500px) {
 article.block-spacing {
 text-align:left;
 margin-bottom:60px;
}
}
 @media(min-width:1800px) {
 .custom-gutters {
 padding-right:-36px;
 padding-left:-36px;
}
 .custom-gutters > [class*='col-'] {
 padding-right:36px;
 padding-left:36px;
}
}
.bg-black h2, .bg-black h3, .bg-black p {
	color:#FFF;
}
p.title {
	font-weight:400;
}
/* testimonials / blockquotes */


blockquote {
	text-align:left;
}
blockquote:before {
	display:block;
	content: url(../images/large-quotemark-wrapper.png);
	margin-bottom:25px;
	background-image: url(../images/large-quotemark.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	width:75px;
	height:51px;
}
 @media only screen and (min-width: 1200px) {
blockquote:before {
 margin-bottom:25px;
 width:100px;
 height:58px;
}
}
 @media only screen and (min-width: 1800px) {
blockquote:before {
 margin-bottom:35px;
 width:150px;
 height:102px;
}
}
blockquote p .attribution {
	font-weight:600;
	font-size:80%;
	text-transform:uppercase;
}
.testimonials blockquote {
	margin-bottom:20px;
}
 @media only screen and (min-width: 1200px) {
.testimonials blockquote {
 margin-bottom:60px;
}
}
/* CONTACT PAGE */


.showroom-hours {
	padding-top:20px;
}
 @media only screen and (min-width: 768px) {
 .showroom-hours {
 padding-top:0;
}
}
.showroom-hours p {
	width:100%;
	position: relative;
	-js-display: flex;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	padding-left:5%;
	text-align:left;
	margin-bottom:4px;
}
 @media only screen and (min-width: 992px) {
.showroom-hours p {
 padding-left:10%;
}
}
 @media only screen and (min-width: 1200px) {
.showroom-hours p {
 padding-left:20%;
}
}
.showroom-hours p span {
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 0 0 50%;
}
.showroom-hours p span.day {
	font-weight:600;
	-ms-flex: 0 0 35%;
	flex: 0 0 35%;
	max-width: 0 0 35%;
}
/* ================================================= */
/* ====================== FOOTER ================= */
/* ================================================= */
footer {
	padding-top:30px;
	padding-bottom:40px;
	text-align:center;
}
 @media only screen and (min-width: 768px) {
footer {
 text-align: left;
}
}
 @media only screen and (min-width: 992px) {
 footer {
 padding-top:40px;
 padding-bottom:50px;
}
}
 @media only screen and (min-width: 1200px) {
footer {
 padding-top:60px;
 padding-bottom:70px;
}
}
 @media only screen and (min-width: 1800px) {
footer {
 padding-top:80px;
 padding-bottom:90px;
}
}
.footer-contact {
	padding-bottom:20px;
}
.footer-contact span {
	display:block;
}
.footer-contact span.diamond {
	display: none;
}
 @media only screen and (min-width: 768px) {
 .footer-contact {
 padding-bottom:0;
}
 .footer-contact span {
 display: inline;
}
 .footer-contact span.diamond {
 display:  inline-block;
}
}
footer h2 {
	font-size:30px;
	margin-top:0;
	padding-top:0;
}
 @media only screen and (min-width: 1800px) {
footer h2 {
 font-size:60px;
}
}
footer p {
	margin:0;
	padding:0;
	margin-bottom:6px;
}
 @media only screen and (min-width: 768px) {
footer p {
 margin:0;
 padding:0;
}
}
 @media only screen and (min-width: 1200px) {
footer p {
 font-size:24px;
}
}
 @media only screen and (min-width: 1800px) {
footer p {
 font-size:30px;
}
}
footer p strong {
	font-weight:400;
}
/* social icons */
.social {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	justify-content: flex-start;
}
footer .social {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	justify-content: center;
	text-align:center;
	width:100%;
}
 @media only screen and (min-width: 768px) {
 footer .social {
 display: -webkit-inline-box;
 display: -ms-inline-flexbox;
 display: inline-flex;
 justify-content: flex-end;
 text-align:right;
}
}
.social a {
	margin-right:7px;
}
footer .social a {
	margin-left:7px;
	margin-right:7px;
}
@media only screen and (min-width: 768px) {
 .social a {
margin-right:7px;
}
 footer .social a {
 margin-left:7px;
margin-right:0;
}
}
@media only screen and (min-width: 1200px) {
 .social a {
margin-right:15px;
}
 footer .social a {
 margin-left:15px;
margin-right:0;
}
}
.social a {
	font-size:1.25em;
	border-radius: 50%;
	color: #000;
	background-color: #7F7F7F;
	line-height: 1;
	width: 36px;
	height: 36px;
	text-align: center;
	border: none;
	position: relative;
	-js-display: flex;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	justify-content: center;
	border:none;
	text-decoration:none;
}
footer .social a {
	color: #FFF;
	background-color: #CCCCCC;
	line-height: 1;
}
 @media only screen and (min-width: 400px) {
.social a {
font-size:1.35em;
width: 43px;
height: 43px;
}
}
@media only screen and (min-width: 768px) {
.social a {
font-size:1em;
width: 25px;
height: 25px;
}
}
@media only screen and (min-width: 992px) {
.social a {
font-size:1.2em;
width: 30px;
height: 30px;
}
}
@media only screen and (min-width: 1200px) {
.social a {
font-size:1.5em;
width: 39px;
height: 39px;
}
}
@media only screen and (min-width: 1800px) {
.social a {
font-size:2.5em;
width: 63px;
height: 63px;
}
}
.social a:hover, .social a:focus {
	background-color: #FCB131;
	text-decoration:none;
	border:none;
}
/* contact form above footer */

.contact-form {
	background-color: #000;
	padding-top:30px;
	padding-bottom:30px;
}
 @media only screen and (min-width: 768px) {
.contact-form {
 padding-top:40px;
 padding-bottom:40px;
}
}
 @media only screen and (min-width: 992px) {
.contact-form {
 padding-top:50px;
 padding-bottom:50px;
}
}
 @media only screen and (min-width: 1200px) {
.contact-form {
 padding-top:60px;
 padding-bottom:60px;
}
}
 @media only screen and (min-width: 1800px) {
.contact-form {
 padding-top:100px;
 padding-bottom:100px;
}
}
.contact-form h2 {
	text-align:center;
	color:#FFF;
}
.contact-form h2 span {
	font-size:120%;
}
.contact-form h2.gold-brdr {
	display:inline-block;
	border-top: 6px solid #FCB131;
	padding-top: 35px;
	margin-left:auto;
	margin-right:auto;
}
 @media only screen and (min-width: 1200px) {
.contact-form h2.gold-brdr {
 border-top: 9px solid #FCB131;
 padding-top: 55px;
}
}
.ffl-form {
	margin-top:20px;
}
.ffl-wrapper {
	position: relative;
	display: block;
	padding-top: 1rem;
}
.ffl-wrapper .ffl-label {
	transition-property: all;
	transition-duration: 200ms;
	transition-timing-function: ease;
	transition-delay: 0s;
	position: absolute;
	white-space: nowrap;
	max-width: 100%;
	text-overflow: ellipsis;
	overflow: hidden;
	pointer-events: none;
	top: 1.25rem;
}
 @media only screen and (min-width: 1800px) {
.ffl-wrapper .ffl-label {
 font-size:24px;
 top: .25rem;
}
}
.ffl-wrapper.ffl-floated .ffl-label {
	top: 0;
}
.ffl-label {
	color: #FFF;
	font-weight:500;
	line-height: 1.2;
}
.ffl-floated .ffl-label {
	color: #FFF;
	font-size: 0.75rem;
}
 @media only screen and (min-width: 1800px) {
.ffl-floated .ffl-label {
 font-size: 1rem;
}
}
.ffl-form:after {
	content: "";
	display: block;
	clear: both;
}
.ffl-form input, .ffl-form textarea {
	color: #FFF;
	transition: border-bottom 100ms ease;
	display: block;
	width: 100%;
	padding: 0;
	margin-bottom: 1rem;
	box-shadow: none;
	appearance: none;
	outline: none;
	background-color: transparent;
	border-style: none;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: rgba(0, 0, 0, 0.2);
	border-bottom-color: #FFF;
}
.ffl-form input {
	height: 1.875rem;
}
.ffl-form textarea {
	height: 5rem;
}
 @media only screen and (min-width: 1800px) {
.ffl-form input {
 height: 3rem;
}
.ffl-form textarea {
 height: 5rem;
}
}
.ffl-form input:hover, .ffl-form textarea:hover {
	border-bottom-width: 2px;
	border-bottom-color: #FFF;
}
.ffl-form input:focus, .ffl-form textarea:focus {
	border-bottom-width: 2px;
	border-bottom-color: #FCB131;
}
.ffl-form label > span {
	color: #cccccc;
}
.ffl-form [type="submit"] {
	text-align:center;
}
.ffl-form .btn-white {
	padding-right: 4rem;
	padding-left: 4rem;
}

#gallery_buttons p a {
	margin-top: 6px;
}

 @media only screen and (max-width: 768px) {
#gallery_buttons p a {
	display: block;

}
}