﻿@charset "UTF-8";

/* RESET 
------------------------------------------------*/
* {margin:0; padding: 0; border: 0; outline: 0; background: transparent;}



@media screen and (prefers-reduced-motion: reduce) {
  * {animation: none !important; transition: none !important;
	animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
	}
}


/* GLOBAL SITE FRAMEWORK
------------------------------------------------*/
html {scroll-behavior: smooth;}
body {font-size:100%; font-family: "Be Vietnam Pro", sans-serif !important; background:#fff;}

/* SELECTION */	
::selection {color:#fff; background: #bc2029;}
::-moz-selection {color:#fff; background: #bc2029;}


/* CLEAR */
.clear {clear: both;}

/* HEADERS */
/*Remove or simplify font-weight and font-height */
h1, h2, h3, h4 ,h5 ,h6 {line-height: normal;}
h1 {font-size:26px; font-weight:normal;}
h2 {font-size:24px; font-weight:normal;}
h3 {font-size:22px; font-weight:normal;}
h4 {font-size:18px; font-weight:normal;}
h5 {font-size:16px; font-weight:normal;}
h6 {font-size:14px; font-weight:normal;}


/* PARAGRAPH/LIST/GENERAL TEXT */

/* LINKS */
a{transition:.5s ease-in;}
a:link, a:visited {color:inherit; text-decoration:none;}
a:hover, a:active {color:inherit; text-decoration:none;}

a[href^="tel:"] {color:inherit;  text-decoration: none;}

/* IMAGES */
img {display:block;}

/* TEXT EMPHASIS */
em {font-style:italic;}
strong {font-weight: 700;}

/* TEXT STYLINGS */
.redtext {color:#bc2029;}
.gray {color:#4F4F4F;}
.heavy {font-weight:800;}

/* ALIGNMENT */
.left {float:left;}
.right {float:right;}
.center {text-align:center;}



/* VISIBLE FOCUS
------------------------------------------------*/	
/*a:focus,
button:focus,
input:focus {
  outline: 2px solid #005fcc;
  outline-offset: 2px;
}*/



* {box-sizing: border-box;}




a.outline-button {display:inline-block; padding:18px 25px; font-weight:700; text-transform: uppercase; color:#bc2029; border:2px #bc2029 solid; border-radius:12px;}
a.outline-button:hover {color:#333; border:2px #333 solid; background:#efefef;}


a.solid-button {position:relative; display:inline-block; padding:18px 25px; font-weight:700; color:#fff; border-radius:12px; background:#bc2029;}
a.solid-button:hover {background:#69090f;}


a.solid-button.arrow-button {padding:18px 40px 18px 25px;}
a.arrow-button::after {content: "\f149"; position: absolute; z-index:2; top:18px; right:15px; font-size:16px; font-weight:400; rotate:-90deg; color:#f9f9f9; transition:.5s ease-in-out; font-family: FontAwesome;}
a.arrow-button:hover::after {rotate:-110deg;}





/*  HEADER TOP BAR
------------------------------------------------*/
.head-announce {display:flex; flex-flow:row wrap; align-items:center; justify-content:space-between; padding:10px 2.5%; text-align: center; color: #fff; background: #bc2029;}


/*  HEADER SOCIALS
------------------------------------------------*/
.head-social {margin:0;}
.head-social a{display:inline-block; margin:0 15px; padding:13px; font-size:20px; color:#bc2029; border-radius:50%; background:#fff;}
.head-social a:hover {opacity:.65; }


/*  HEADER PHONE NUMBERS
------------------------------------------------*/
.head-phones {/*display:flex; flex-flow:row wrap; align-items:center; justify-content:flex-end;*/ font-size:18px; font-weight: 400;}
.head-phones span {margin:0 25px 0 0; font-weight: 300;}
.head-phones a:first-of-type {margin:0 25px 0 0;}


/* HEADER
------------------------------------------------*/	
.site-header {position: relative; display:flex; flex-flow:row wrap; align-items:center; justify-content:space-between; padding:27px; border-bottom-right-radius:45px; /*border-bottom:1px #353232 solid; */ background:#fff;}	
.site-header::after {content: ""; position: absolute; z-index:-1; bottom:0; right: 0; width:68px; height:68px; background:#353232;}


/* LOGO
------------------------------------------------*/	
.logo a{display:flex; flex-flow:row wrap; align-items:center; justify-content:flex-start; font-size:24px; line-height:1; text-transform:uppercase; font-weight: 900; color:#242121;}
.logo img{width:310px; max-width:100%; height: 73px; margin:0 15px 0 0;}	


/*  NAVIGATION
------------------------------------------------*/
#menu-button{display:none;}
nav.mobile {display:none;}

nav.primary {z-index:500; position:relative; margin:6px auto 0 auto; padding:0;}

nav.primary ul {display:flex; flex-flow:row wrap; align-items:center; justify-content:space-around; margin:0; padding:0;}
nav.primary ul li {margin:0; padding:0; list-style-type:none; }
				
nav.primary ul li a {
	display:block; margin:0 10px; padding:12px 0;
    font-size:18px; line-height:1; font-weight:500; text-align:center; text-decoration:none; text-transform:uppercase; color:#272626; cursor: pointer; transition:.5s ease-in;	
}	

nav.primary ul li a.highlight-link {color: #bc2029;}
nav.primary ul li a:hover {color:#bc2029;}

/*  SUB NAV
------------------------------------------------*/
nav.primary ul li li {width: auto; min-width: 235px;}
nav.primary ul li.extrawide li {min-width: 265px;}
nav.primary ul li li a{margin:0 0 0 10px; padding:18px; font-size:.94em; text-align:left; color:#fff; border:0; background: #181818;}
nav.primary ul li li a:hover {color:#fff; background:#7f0b12;}

nav.primary ul li li li{width: auto; min-width: 250px;}
nav.primary ul li li li a{margin:0; background: #282828;}
nav.primary ul li li li a:hover {color:#fff; background:#7f0b12;}

/*  NAV DROPDOWNS
------------------------------------------------*/
nav.primary ul ul {display: none; position: absolute;} 
nav.primary ul ul ul {position: absolute; left: 100%; top:0;}
nav.primary ul li:hover > ul {display: block; z-index: 500;}
nav.primary ul ul li {float: none; position: relative; margin:0;}






/*  HERO
------------------------------------------------*/
.hero {position:relative; width:100%; /*height:512px;*/ margin:0 0 50px 0; padding:0;}
.hero::after {content: ""; position: absolute; z-index: 1; bottom: -24px; left: 0; width:100%; height:12px; margin:auto; background: #bc2029;}
.hero img {width:100%; height:100%; object-fit:cover;}


.hero-overlay::before {content:url('/siteart/hero/hero-overlay-flair.png'); position: absolute; z-index: 1; bottom:0; right: -120px; width:auto; height:100%;}
.hero-overlay {position:absolute; left:0; bottom:0; height:120px; padding:0 65px; font-size:38px; line-height:1.1; font-weight:900; text-transform: uppercase; color:#fff; background:#bc2029;}
.hero-overlay p {position:relative; z-index: 5; top:50%; left:50%; transform:translate(-50%, -50%); }



/*  SCROLLING INVENTORY
------------------------------------------------*/
.scrolling-wrap {width:100%; height:90px; overflow:hidden; margin:25px 0;}
.scrolling{width:100%; height:90px;}


/*  COMPANY INTRO
------------------------------------------------*/
.company-intro {display:flex; flex-flow:row wrap; align-items: center; justify-content:space-between; padding:65px 0 85px 0;}
.company-intro .intro-image {width:48%; /*height:100%;*/}
.company-intro .intro-image img {object-fit:cover; width:100%; aspect-ratio: 2.03 / 1;}


.company-intro .intro-body {width:47%; margin:0 2.5%;}
.company-intro .intro-body h1 {font-size:50px; text-transform: uppercase; font-weight:900; color:#bc2029;}
.company-intro .intro-body p {font-size:19px; line-height:30px; font-weight:300; color:#3f3f3f;}


/*  PROMO / SOCIAL MEDIA SECTION
------------------------------------------------*/
.promo-highlight {padding:0 5%;}
.promo-highlight h2{position:relative; margin:0 0 25px 0; font-size:36px; font-weight:600; text-align:center;  color:#2d2d2d;}
.promo-highlight h2::after {content: ""; position: absolute; z-index: 1; bottom: -18px; left: 0; right:0; width: 60%; max-width:45px; height:8px; margin:auto; background: #cc1919;}

.promo-social {text-align: center}
.promo-social a{display:inline-block; padding:13px; font-size:20px; color:#201b1c;}
.promo-social a:hover {color:#bc2029;}



/*  NEWS SECTION
------------------------------------------------*/
.news-section {display:flex; flex-flow:row wrap;justify-content:space-around; margin:40px 0 0 0; padding:20px 5% 80px 5%; background: #FFF; background:linear-gradient(180deg, rgba(255, 255, 255, 1) 33.5%, rgba(232, 232, 232, 1) 33.5%);}

.news-item {width:30%; max-width:460px; color:#2d2d2d;}

.news-item .news-image {position:relative; aspect-ratio: 1 / 1; width:100%; /*max-width:460px; height:100%;  max-height:460px;*/ margin:0 0 38px 0; background: #BC2029;
background: linear-gradient(0deg, rgba(188, 32, 41, 1) 0%, rgba(218, 40, 28, 1) 100%);}
.news-item .news-image::before {content: ""; position: absolute; top:6%; left:6%; z-index:1; width:88%; height:88%; background:#fff;}
.news-item img{position:relative;z-index:1; width:100%; height:auto;}
.news-item .news-overlay {position:absolute; z-index: 5; top:50%; left:50%; transform:translate(-50%, -50%); width:80%; font-size:30px; line-height:1.25; font-weight:900; text-align:center; text-transform: uppercase; color:#da281c;}
.news-item .news-overlay span {font-size:24px; line-height:1; font-weight:300; font-style:italic; color:#2d2d2d;}

.news-item .news-body {padding:0 20px;}
.news-item .news-title {margin:0 0 20px 0; font-size:28px; font-weight:600;}
.news-item p{font-size:16px; line-height:25px; font-weight:300; }
.news-item a{margin:auto 0 0 0;}





/*  SERVICES HIGHLIGHT
------------------------------------------------*/
.services-highlight::before {content: ""; position: absolute; top:0; left: 0; z-index:-1; width:100%; height:100%; background:#fff; background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 98%);}
.services-highlight {position:relative; overflow:hidden; padding:140px 0 155px 0;}
.services-highlight::after {content: ""; position: absolute; top:0; right:-400px; z-index:-2; width:1650px; height:3006px; background: url("/siteart/stripes-of-red.png") no-repeat;}

.services-highlight .sh-intro {display:flex; flex-flow:row wrap; align-items: center; justify-content:space-between; max-width:1385px; margin:0 300px 160px 2.5%;}
.services-highlight .sh-logo {text-align: center;}
.services-highlight .sh-logo img{width: 490px; height: 116px; margin:0 auto;}
.services-highlight .sh-logo span {font-size:70px; font-weight:900; text-transform: uppercase;color:#242121;}

.services-highlight .sh-body {width:calc(95% - 490px);max-width:835px;}
.services-highlight .sh-body h2 {font-size:33px; font-weight:800; color:#2d2d2d;}
.services-highlight .sh-body p {font-size:20px; line-height:30px; font-weight:300; color:#3f3f3f;}


.services-highlight .sh-main {display:flex; flex-flow:row wrap; /*align-items: center;*/ justify-content:space-between; max-width:1250px; margin:0 7%;}
.services-highlight .sh-item {width:48%; margin:2% 0; padding:46px 34px; border:1px #bfbfbf solid; border-radius:40px; background:#f9f8f8; }
.services-highlight .sh-item h3 {margin:0 0 8px 0; font-size:28px; font-weight:600; color:#2d2d2d;}
.services-highlight .sh-item p {font-size:18px; line-height:28px; font-weight:300; color:#3f3f3f;}

.services-highlight .sh-item .sh-item-head {display:flex; flex-flow:row wrap; align-items: center; justify-content:space-between; margin:0 0 85px 0;}
.services-highlight .sh-item .sh-item-head img {max-width:100%;}
.services-highlight .sh-item .sh-item-head img.sh-item-icon {margin:0 15px 0 0;}






/*  MAIN
------------------------------------------------*/	
.main {background: #F7F7F7;}

.main-inv {padding:65px 5%; }


.main-sub {padding:65px 3.5% 85px 3.5%; background: #e8e8e8; background: linear-gradient(0deg, rgba(232, 232, 232, 1) 0%, rgba(247, 247, 247, 1) 100%);}
.main-sub h1 {margin:0 2.5% 30px 2.5%; font-size:2.6vw; line-height: 1; font-weight: 900; text-transform: uppercase; text-align: center; color: #bc2029;}
.main-sub h1.alt-heading {font-size:2vw;}



.sub-body {
	display:flex; flex-flow:row wrap; align-items:flex-start; justify-content:center;
	margin: 0 auto; padding: 3.5%; background:#fff; box-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.025);
}

.sub-hero {width:100%; margin-bottom:65px;}
.sub-hero img {width:100%; object-fit: cover; aspect-ratio:4.23 / 1;}

.sub-hero.loc-hero {display:flex; flex-flow:row wrap; justify-content:center;}

.sub-hero .loc-photo {width:49%; margin:0 .5%; border-radius:2px; overflow: hidden;}
.sub-hero .loc-photo img {width:100%; object-fit: cover; aspect-ratio:2.5 / 1;}



.sub-hero .loc-photo .cycle-slideshow {z-index:5; position:relative; width:100%; margin:0; padding:0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.sub-hero .loc-photo .cycle-slideshow img {position:relative; width:100%; margin:0; padding:0;  object-fit: cover; aspect-ratio:2.5 / 1;}

/*.sub-hero .loc-photo .cycle-pager {
	position:absolute; overflow: hidden; z-index:500; bottom:5%; right:0; left:0; width:auto; margin:0 auto;  padding:0 6px 0 15px; text-align:center;
	-webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px;
}
.sub-hero .loc-photo .cycle-pager span {display: inline-block; width:30px; height:58px; font-size:60px; line-height:1; color:rgba(255,255,255,.5); font-family: arial; cursor: pointer;}
.sub-hero .loc-photo .cycle-pager span.cycle-pager-active {color:#FFF;}
.sub-hero .loc-photo .cycle-pager > * {cursor:pointer;}*/




.sub-hero .loc-map {width:49%; height:auto; margin:0 .5%; border-radius:2px; overflow: hidden;}
.sub-hero .loc-map iframe {width: 100%; height:100%;}

.sub-copy {width:calc(62.5% - 65px); margin:0 0 2.5% 0;}
.sub-copy h2 {margin:0 0 20px 0;  line-height: 1; font-weight: 800; color: #2d2d2d;}
.sub-copy h3 {margin:6px 0; font-size:20px;  line-height: 1; font-weight: 700; color: #bc2029;}

.sub-copy.body-shop h2 {margin:6px 0;}
.sub-copy.body-shop h3 {margin:0 0 20px 0; color: #2d2d2d;}

.sub-copy h4 {margin:6px 0;}
.sub-copy p{font-size:19px; line-height:30px; font-weight:300; color:#3f3f3f;}
.sub-copy ul {margin-left:45px;}
.sub-copy ul li{list-style:outside; font-size:18px; line-height:30px; font-weight:300; color:#3f3f3f;}

.sub-copy ul.multi-col {column-count:2; column-gap:50px; }


.sub-wrapper-full {width:100%; margin:0 -15px 2.5% -15px;}
.sub-copy-alt-section {display:flex; flex-flow:row wrap; align-items:flex-start; justify-content:center; margin:45px 0; padding:45px 15px; background: #f7f7f7;}

.sub-wrapper-full.sub-copy-alt-section {width:calc(100% + 30px); margin:0 -15px 2.5% -15px;}

.services-bubbles{margin:0 0 35px 0;}
.services-bubbles h2 {text-align:center;}
.services-bubbles ul{display: flex; flex-flow: row wrap; justify-content: center; margin:0 !important; }
.services-bubbles li {list-style:none !important; margin:8px 15px; padding:20px; font-size:18px; line-height:1 !important; font-weight:700 !important; color: #fff !important; background: #bc2029;}
.services-bubbles li:first-of-type {margin-left:0;}
.services-bubbles li:last-of-type {margin-right:0;}














/*  CONTACT DETAILS
------------------------------------------------*/
.contact-details {margin:0 0 45px 0;}
.contact-details a{position:relative;  display:inline-block; margin:25px 0 25px 55px; font-size:20px; line-height:1.25; font-weight:700;}
.contact-details a:hover {color:#222;}

.contact-details a[href^="tel:"] {position:relative;}
.contact-details a[href^="tel:"]::before {
	content: "\f095"; position: absolute; z-index:2; top:-16px; left:-65px; width:55px; height:55px; transition:1.2s all;  
	font-size:30px; line-height:55px;  text-align: center; color:#fff; border-radius:55px; background:#222; font-family: FontAwesome;
}

.contact-details a[href^="mailto:"] {position:relative; }
.contact-details a[href^="mailto:"]::before {
	content: "\f0e0"; position: absolute; z-index:2;  top:-16px; left:-65px; width:55px; height:55px; transition:1.2s all;  
	font-size:30px; line-height:55px;  text-align: center; color:#fff; border-radius:55px; background:#222; font-family: FontAwesome;
}

.contact-details a[target="_blank"] {}
.contact-details a[target="_blank"]::before {
	content: "\f3c5"; position: absolute; z-index:2;  top:-16px; left:-65px; width:55px; height:55px; transition:1.2s all;  	
	font-size:30px; line-height:55px;  text-align: center; color:#fff; border-radius:55px; background:#222; font-family: FontAwesome;
}

.contact-details a:hover::before {background:#555;}


/*  SIDENAV
------------------------------------------------*/
.sub-sidebar {display:flex; flex-flow:column wrap; width: 33.9%; margin:0 0 0 65px; border-radius:20px; background: #e8e8e8;}
.sub-sidebar a {white-space: normal; word-break: break-word;}

.sub-sidegallery {width:100%; margin:35px 0; border-radius:20px;}
.sub-sidegallery img {max-width:50%;margin:35px auto 65px auto;}

/*  SIDENAV HEADING
------------------------------------------------*/
.sidebar-heading {padding:25px 25px; text-align:left; border-top-left-radius:20px; border-top-right-radius:20px; background: #cdcdcd;}
.sidebar-heading h3 {margin:0; font-size:1.2em; font-weight:900; text-transform:uppercase; color:#4b4b4b;}


/*  SIDENAV MAIN
------------------------------------------------*/
.sidebar-main {width:100%; padding:35px 25px; text-align:left;}

.sidebar-main h5 {margin:0; font-size:1.35em; font-weight:500; text-transform:uppercase; color:#757575;}
.location-page .sidebar-main h5 {color:#0741ac;}
.sidebar-main h5,
.sidebar-main .sidebar-list {color: #757575;}
.sidebar-main .sidebar-list ul {list-style:none; display:flex; flex-flow:row wrap; align-items: center; justify-content: center;}
.sidebar-main .sidebar-list li {width:50%;  font-size: 16px;}

.sidebar-main p {margin:0; font-size:17px; line-height:26px; font-weight:300; color:#333;}

.sidebar-main .sidebar-hours {display: inline-flex; flex-flow:row wrap; align-items: center; justify-content: space-between; width:100%; margin:15px 0;}
.sidebar-main .sidebar-hours ul {list-style:none; width:50%;}
.sidebar-main .sidebar-hours ul li {padding:8px; line-height:1.5; }
.sidebar-main .sidebar-hours ul li:nth-of-type(even) {background:rgba(255,255,255,.35);}



a.sidebar-button {
	display: inline-flex; align-items: center; justify-content: center;
	width: 100%; height: 50px; margin-top: 25px; padding: 0 30px; font-size: 12px; font-weight: 800; text-transform: uppercase; text-align: center; letter-spacing: 1px;
    color: #fff; background:#bc2029;  border: none !important; border-radius:12px; white-space: nowrap; cursor: pointer; transition: 0.3s !important;
}
a.sidebar-button.alt-side-button {background:#111;}
a.sidebar-button.bright-side-button {background:#e81f25;}
a.sidebar-button.trp-side-button {background:#00529b;}

a.sidebar-button i {margin: 0 0 0 10px; transition: 0.3s !important;}

a.sidebar-button:hover {background:#69090f;}
a.sidebar-button:hover i {transform: translateX(5px);}

a.sidebar-button.alt-side-button:hover {background:#555;}
a.sidebar-button.bright-side-button:hover {background:#b10b10;}
a.sidebar-button.trp-side-button:hover {background:#002e57;}


.location-page-body {display: inline-flex; flex-flow:row wrap; align-items: center; justify-content: flex-start; margin:0 0 35px 0; color: #111;}

.location-page-hours {
	min-width:285px;
    margin:15px 45px 35px 0;
    font-size: 1.15em;
    line-height: 1.35;
    text-align: left;
}

.location-page-hours:last-of-type {margin:15px 0 35px 0;}

.location-page-hours h3 {
    font-size: 24px;
    font-weight: 700;
}


.specials-select-section {display:flex; flex-flow:row wrap; justify-content:center;}

.specials-item {position:relative; overflow:hidden; width:68%; height:auto; min-height:180px;  margin:0 1.5%; padding:0 0 10% 0; border-radius:40px; box-shadow:0 2px 25px rgba(0,0,0,0.1); background: #BC2029; background: linear-gradient(0deg, rgba(188, 32, 41, 1) 0%, rgba(200, 40, 28, 1) 100%);
}
.specials-item.red-stripes::before {content:""; opacity:.5; position: absolute; top:-154%; right:-565px; z-index:1; width:1650px; height:3006px; transform: scalex(.5); filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(351deg) brightness(110%) contrast(105%); background:url("/siteart/stripes-of-red.png") no-repeat;}

.specials-item.white-stripes {background: #e5e5e5; background:linear-gradient(0deg, rgba(50, 50, 50, 1) 0%, rgba(30, 30, 30, 1) 100%);}
.specials-item.white-stripes::before {content:"";opacity:.5; position: absolute; top:-154%; left:-846px; z-index:1; width:1650px; height:3006px; transform: scalex(.5); filter: brightness(100) saturate(0%) invert(0) brightness(1000%); background:url("/siteart/stripes-of-red.png") no-repeat;}

.specials-item a {display:block; position:absolute; z-index: 2; width: 100%; height:100%;}




.specials-overlay {position:absolute; z-index: 5; top:50%; left:50%; transform:translate(-50%, -50%); width:80%; font-size:33px; line-height:1.05; font-weight:900; text-align:left; text-transform: uppercase; color:#fff;}
.specials-item .specials-overlay span {font-size:20px; line-height:1; font-weight:300; font-style:italic; color:#f9f9f9;}

.specials-item.white-stripes .specials-overlay {text-align:right; color:#f1f1f1;}
.specials-item.white-stripes .specials-overlay span {color:#eee;}

.specials-select-section .specials-foot-note {width:90%; margin:45px 0 0 0; font-size:20px; line-height:26px; font-weight:300; text-align: center; color:#333;}
.specials-select-section .specials-foot-note a {color: #bc2029}





.specials-preview {display: flex; flex-direction: row; align-items: flex-start; justify-content: space-between; margin:0; }
.specials-preview a {width: 100%;}
.specials-preview img {width:100%; margin:0 auto; padding-left:10px; padding-top:10px;}




.service-list {display: flex; flex-flow: row wrap; align-items: flex-start; justify-content: space-evenly;}
.service-list-location {margin: 2%; font-size: 18px; line-height: 150%; text-align: center;}


iframe.specials-frame {width:100%; aspect-ratio:.77 / 1; object-fit:cover; margin:30px 0 0 0; }




.specials-coupons {display:flex; flex-flow:row wrap; justify-content:space-around; margin:20px auto 80px auto;}

.coupons-item {
	display:flex; flex-flow:column wrap; justify-content:space-between; box-sizing:border-box; 
	width:calc(20% - 20px); min-width:335px; margin:2.5% 10px; text-align:center; border:2px #000 solid; border-radius:3px; outline:2px #000 dashed; outline-offset: 5px;
}

.coupon-title {display:flex; flex-flow:row wrap; align-items:center; padding:10px; font-size:18px; font-weight:900; color:#222;}
.coupon-title span {flex:1;}
.coupon-title img {max-width:80px; margin:0 15px 0 0;}

.coupon-value {padding:15px; font-size:30px; font-weight:800;  text-transform: uppercase; color:#fff; background:#bc2029;}
.coupon-value-note {margin:8px 0 0 0; font-size:17px; line-height:1; font-weight:600; color:#bc2029;}

.coupon-body {padding:25px 10px 15px;}
.coupon-body .coupon-code {margin:0 0 35px 0;}
.coupon-body .coupon-code span {display:inline-block; padding:8px; background:#e5e5e5;}
.coupon-body .coupon-expiration {margin:0 0 0 0; font-weight:600;}
.coupon-body .coupon-foot-note {margin:25px 0 0 0; font-size:16px; font-style:italic; color:#3F3F3F;}






.services-gallery {display:flex; flex-flow:row wrap; justify-content:center; margin:5% 0 0 0;}

.services-item {width:calc(33.33% - 20px); min-width: 175px; position:relative; margin: 10px; padding:0;}
.services-item a {display:block; position:relative; overflow:hidden; z-index:1; width:100%; height:100%; transition: .6s all;}
.services-item a img {transition: .4s all;}

.services-item a:after{
	content: "\f08e"; position: absolute; z-index:2; top:8.5%; right:8.5%; font-size:2.5vw; color:rgba(255,255,255,0); transition: 1s all; font-family: FontAwesome;
}

.services-item a:hover:after{color:rgba(255,255,255,.95); text-shadow:0 0 8px rgba(0,0,0,.5);}

.services-item img.services-thumbnail {width:100%; /*max-width:285px;*/ margin: 0 auto; border-radius:40px;}
.services-item a:hover img.services-thumbnail{opacity: 0.9; filter: blur(2px);}







.embed-container { position: relative; padding: 3.5%; padding-bottom: 56.25%; height: 0; overflow: hidden; width:100; max-width: 100%;  background:#fff; box-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.025);}
.embed-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0}


.embed-container.tablet-option {display:none;}
.embed-container.lg-mobile-option {display:none;}
.embed-container.sm-mobile-option {display:none;}
.embed-container.potato-option {display:none;}


/*  FOOTER BRANDS
------------------------------------------------*/
.site-brands {display:flex; flex-flow:row wrap; align-items:center; justify-content:space-around; padding:110px 8.5%; background:#262122;}
.site-brands a {margin:10px 20px;}
.site-brands a:first-of-type {margin-left:0;}
.site-brands a:last-of-type {margin-right:0;}
.site-brands img {opacity:.5; transition:.85s ease-in;}
.site-brands img:hover {opacity:1;}




/*  FOOTER
------------------------------------------------*/
.site-footer::before {content: ""; position: absolute; top:0; left: 0; z-index:-1; width:100%; height:100%; background: #201B1C; background: linear-gradient(270deg, rgba(32, 27, 28, 0) 0%, rgba(32, 27, 28, 1) 35%);}
.site-footer {position:relative; z-index:1; overflow:hidden; padding:60px 10% 60px 10%; color:#f4ecec; background:#201b1c;}
.site-footer::after {content: ""; position: absolute; z-index:-2; top:0; right:0; opacity:0.05;  width: 100%; height:100%; background:url("/siteart/street-map-pattern.png") no-repeat right center; background-size: cover;}

.foot-nav {display:flex; flex-flow:row wrap; align-items:flex-start; justify-content:space-between; width:100%;}
.foot-nav-group {display:flex; flex-flow:row wrap; align-items:flex-start; justify-content:flex-start; width: 100%; margin:60px 0 0 0;}
/*.foot-nav-group:first-of-type {margin:60px 3.5% 0 0;}*/
.foot-nav-group ul {width:14.1%;  margin:0 3% 0 0;}
.foot-nav-group ul:last-of-type {margin:0;}
.foot-nav-group ul li{display:block; padding:3px 0 6px 0; list-style:none; font-size:22px; line-height:1.5; font-weight:700; text-transform: uppercase;}
.foot-nav-group ul li a{display:inline-block; padding:6px 0; font-size:18px; line-height:1.25; font-weight:300; text-transform:capitalize;}
.foot-nav-title {width:100%; margin:0 0 18px 0; font-size:24px; font-weight:900; text-transform:uppercase;}

.foot-company {margin:160px 0 0 0;}

.foot-logo {margin:0 0 45px 0;}
.foot-logo a{display:inline-flex; flex-flow:row wrap; align-items:center; justify-content:flex-start; font-size:24px; line-height:1; text-transform:uppercase;}
.foot-logo img {max-width:100%; margin:0 14px 0 0;}
.foot-logo strong{font-size:24px; font-weight:900;}
.foot-logo em{font-size:20px;}

.foot-social a{display:inline-block; margin:0 20px; padding:13px; font-size:20px; color:#201b1c; border-radius:50%; background:#fff; transition:.5s ease-out;}
.foot-social a:first-of-type {margin:0 20px 0 0;}
.foot-social a:last-of-type {margin:0 0 0 20px;}
.foot-social a:hover {color:#0e0e0e; background:#444;}

.foot-bottom {display:flex; flex-flow:row wrap; align-items:center; justify-content:space-between; margin:88px 0 0 0;}
.foot-copyright {font-size:18px; font-weight:400; color:#b8b8b8;}
.foot-legal {font-size:17px; font-weight:600;}



/************************************************ Responsive Styles **/

@media screen and (max-width: 1485px) {
	nav.primary ul li a {margin:0 8px; font-size:18px;}		
	.head-social a{margin:0 8px;}
	.hero {height: 400px;}
	.hero-overlay {width:65%; padding: 0 35px;}
	.hero-overlay p {font-size:28px; text-align: right;}
	
	
	.specials-item::before {opacity:.2;}
	.specials-item::before {right: -616px;}
	.specials-item.white-stripes::before {opacity: .25;}
}

@media screen and (max-width: 1360px) {
	nav.primary{display:none;}
	#menu-button{display: block; position: relative; z-index:400; margin: 0 20px 0 auto;}
	#menu-button a{ padding:0; font-size: 1.25em; line-height:60px; font-weight:600; text-decoration:none; color:#272626; cursor:pointer;}
	
	nav.mobile ul li a .fa{
		width:25px;
		font-weight:100;
		padding:8px 3px;
		margin:0 0 0 5px;
		text-align:center;
		background:#292929;
		-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
		border-radius: 30px;
		text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
	}
	
	nav.mobile ul li .fa-chevron-down {position:absolute; right:10px; margin:18px 0 0 0;}

	nav.mobile {
		display:block;
		position: fixed;
		top: 0;
		left: -285px;
		width: 285px;
		height: 100%;
		z-index: 500;
		overflow:auto;
		padding-bottom:40px;
		background:#333;
	}
	
	/* MENU HEADER SOCIAL MEDIA */
	nav.mobile .social-media {
		position: absolute;
		text-decoration: none;
		vertical-align: top;
		z-index:9999;
		display: inline-block;
		
		top: 15px;
		left: 15px;
		font-size:16px;
		word-spacing:13px;
		color: #ccc !important;
	}
	
	nav.mobile .social-media a:link, nav.mobile .social-media a:visited {color:#ccc; text-decoration:none;}
	nav.mobile .social-media a:hover, nav.mobile .social-media a:active {color:#fff; text-decoration:underline;}
	
	/* MENU HEADER STYLES */
	nav.mobile .menu-header {	
		color: #ccc;
		padding: 23px 0;
		position: relative;
		font-size: 18px;
		background:#313131;
	}			
	nav.mobile .menu-title {position: absolute; vertical-align: top; top: 16px; right: 47px; text-transform:uppercase; font-size:12px; color: #ccc;}
		
	/* MENU CLOSE 'X' BUTTON */
	nav.mobile .menu-toggle {position: absolute; top: 8px; right: 10px; padding: 6px 9px 5px; display: inline-block; font-weight: 700; font-size: 18px; line-height: 1; color: #ccc; text-decoration: none; vertical-align: top; cursor:pointer; font-family: Arial, sans-serif;}
	nav.mobile .menu-toggle:hover {color: #fff;}
	
	/* MENU LIST STYLE */
	nav.mobile ul {list-style: none; font-weight: 300; margin:0; padding:0;}
	nav.mobile ul li {color: #999; font-size:15px; border-bottom: 1px solid #303030;}
	
	/* FIRST LEVEL */
	nav.mobile ul li a {
		color: #999;
		position: relative;
		display: block;
		font-size:17px;
		text-align:right;
		cursor:pointer;
		text-decoration: none;
		border-left:4px #333 solid;
		padding: 15px 35px 15px 20px;
		text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
	}
	nav.mobile ul li a:hover {background:rgba(45,45,45,0.5); color: #fff; border-left:4px #C8102E solid;}
	
	/* SECOND LEVEL */
	nav.mobile ul li li:last-child {border:none;}
	nav.mobile ul li li a {color: #ccc; background: #444; border-left:4px #444 solid; padding: 15px 20px 15px 15px;}
	nav.mobile ul li li a:hover {background:rgba(65,65,65,0.5);}
	
	/* THIRD LEVEL */
	nav.mobile ul li li li:last-child {border:none;}
	nav.mobile ul li li li a {color: #ccc; background: #555; border-left:4px #555 solid;}
	nav.mobile ul li li li a:hover {background:rgba(85,85,85,0.5);}	
}

@media screen and (max-width: 1250px) {
	.hero-overlay p {font-size:26px; text-align: right;}
	
	.company-intro .intro-image {order:2; width:100%;}
	.company-intro .intro-body {order:1; width:90%; margin:0 5% 65px 5%;}
	
	.services-highlight .sh-intro {flex-flow: column wrap; align-items: flex-start; margin: 0 300px 160px 5%;}
	.services-highlight .sh-logo {margin:0 0 25px 0;}
	.services-highlight .sh-body {width:100%; max-width: 835px;}
	
	.services-highlight .sh-item .sh-item-head {display:flex; flex-flow:column wrap; align-items: flex-start; justify-content:space-between;}
	.services-highlight .sh-item .sh-item-head  img.sh-item-icon {margin:0 0 25px 0;}
	
	.main-sub h1 {font-size: 2em;}
	
	.coupons-item {width: calc(48% - 20px); min-width:0;}
}

@media screen and (max-width: 1024px) {
	.head-announce {flex-flow: column wrap;}
	.head-phones {margin:25px 0 0 0; text-align: center;}

	.news-section {background:linear-gradient(180deg, rgba(255, 255, 255, 1) 15%, rgba(232, 232, 232, 1) 15%);}

	.news-item {width:45%; margin:2.5%;}
	
	.services-highlight::after {right:-475px;}
	.services-highlight .sh-intro {margin: 0 225px 160px 5%;}
	.services-highlight .sh-item .sh-item-head {margin:0 0 50px 0;}
	.site-brands {padding:80px 5%;}
	.site-brands a {margin:10px 15px;}
	
	.sub-hero img {aspect-ratio: 3 / 1;}
	.sub-copy {width:65%; margin:0 auto 65px auto;}
	.sub-sidebar {width: 100%; margin: 0;}
	
	.sub-wrapper-full.sub-copy-alt-section {width:calc(100% + 30px); margin:65px -15px; padding:65px 15px;}
	
	.specials-item {width:98%; margin:1%; padding: 0 0 28% 0;}
	.specials-item::before {opacity:.5;}
	
	.embed-container {padding-bottom:100%;}
	.embed-container.desktop-option {display:none;}
	.embed-container.tablet-option {display:block;}
	
	.foot-nav-group {display:flex; flex-flow:row wrap; align-items:flex-start; justify-content:space-between; margin:60px 0 0 0; width:100%;}
	.foot-nav-group:first-of-type {margin:inherit;}
	.foot-nav-group ul {width:50%; margin:0 0 45px 0;}
}

@media screen and (max-width: 768px) {
	
	
	.sub-hero img {aspect-ratio: 2 / 1;}
	
	
	.news-section {background:linear-gradient(180deg, rgba(255, 255, 255, 1) 10%, rgba(232, 232, 232, 1) 10%);}
	.news-item {width:95%; margin:25px 2.5% 45px 2.5%;}
	
	
	
	
	
	.services-highlight .sh-logo {width:100%; margin: 0 0 25px 0;}
	.services-highlight .sh-logo img{width:100%; height:auto; margin:0 auto;}
	.services-highlight .sh-logo span {font-size:8vw;}
	.services-highlight .sh-item {width:100%; margin:15px 0;}
	
	
	
	
	.sub-hero .loc-photo {width:100%; margin:.5% 0;}
	.sub-hero .loc-map {width:100%; height:250px; margin:.5% 0;}
	
	
	.service-list {margin:0 0 40px 0;}
	
	.coupons-item {width: calc(100% - 20px); min-width:0;}
	
	.services-gallery {flex-flow:row wrap;}
	.services-item {width:calc(50% - 10px);/*flex:calc(50% - 10px);*/ margin:0; padding:5px;}
	
	.site-footer {padding:110px 10% 50px 10%;}
	.site-footer::after {content: ""; position: absolute; z-index:-2; top:0; right:0; opacity:0.05;  width: 100%; height:100%; background:url("/siteart/street-map-pattern.png") no-repeat right bottom; background-size: contain;}
	.foot-bottom {display:flex; flex-flow:row wrap; align-items:center; justify-content:space-between; margin:88px 0 0 0;}
	.foot-copyright {}
	.foot-legal {width:100%; margin:80px 0 0 0; text-align:center;}
}
@media screen and (max-width: 680px){
	.head-social {display:none;}
	.head-announce {flex-flow: column wrap;}
	.head-phones { margin:0; text-align: center;}
	
	.head-phones span {display: none;}
	.head-phones a:first-of-type {margin:0 20px 0 0;}
	
	.embed-container {padding: 3.5% 1%; padding-bottom:150%;}
	.embed-container.tablet-option {display:none;}
	.embed-container.lg-mobile-option {display:block;}
}

@media screen and (max-width: 600px){
	.site-header .logo {width:100%; margin:0 0 20px 0;}
	.site-header .logo a {justify-content: center;}
	
	#menu-button{margin: 0 20px 0 0;}
	
	.hero {height:325px;}
	.hero-overlay {display:none;}
	
	.services-highlight::before {background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .8) 40%);}
	.services-highlight::after {right: -500px; opacity: .25;}
	.services-highlight .sh-intro {margin: 0px 5% 160px 5%;}
	.services-highlight .sh-logo {width: 85%;}
	.services-highlight .sh-body h2 {font-size:28px;}
		
	.sub-hero img {aspect-ratio: 1.5 / 1;}
	.sub-copy {width:90%;}
	.sub-copy ul.multi-col {column-count:1; column-gap:0;}
		
	.specials-item::before {opacity:.2;}
	
	.foot-nav-group ul {width:100%;}
	
	.foot-logo a {flex-flow: column; align-items:flex-start;}
	.foot-logo img {margin: 0 0 14px 0;}
	
	.specials-preview {display: flex; flex-direction: column;}
}

@media screen and (max-width: 450px){
	.head-phones {display:flex; flex-flow:column wrap; align-items:center;}
	.hero-overlay p {font-size: 22px;}
	.coupon-title img {max-width:45px;}

	.specials-item {min-height: 280px;}
	
	.embed-container {padding: 3.5% 1%; padding-bottom:150%;}
	.embed-container.lg-mobile-option {display:none;}
	.embed-container.sm-mobile-option {display:block;}
	
}

@media screen and (max-width: 350px){
	.embed-container.sm-mobile-option {display:none;}
	.embed-container.potato-option {display:block;}
}