/* O'Bryan Stylesheet
 * Thomas Sullinger
 * Created: 3/20/2023
 * Modified: 3/27/2023
 */


/*     CLEAR EVERYTHING     */

html,body,div,span,object,iframe,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,h1,h2,h3,h5,h6,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;vertical-align:baseline}html,body,form,fieldset,p,div,h1,h2,h3,h4,h5,h6{-webkit-text-size-adjust:none}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1.2}ol{padding-left:1.4em;list-style:decimal}ul,li{padding-left:0;list-style-type:none}table{border-collapse:collapse;border-spacing:0}h1{font-size:2.0em;line-height:1.32;padding-top:10px;padding-bottom:10px}h2{font-size:1.7em;padding-top:10px;padding-bottom:10px}h3{font-size:1.5em;padding-top:7px;padding-bottom:4px}h4{font-size:1em;margin:0;padding-top:10px;padding-bottom:10px}h5{font-size:0.83em;padding-top:10px;padding-bottom:10px}h6{font-size:0.75em}




/*     WEBFONTS     */

@font-face {
  font-family: 'robotobold';
  src: url('../fonts/robotobold/roboto-bold-webfont.woff2') format('woff2'),
       url('../fonts/robotobold/roboto-bold-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}




/*     FONT APPLICATION     */

h1, h2, h3, h5, #closeMenu {
  font-family: 'robotobold', Arial, sans-serif;
  font-style: normal;
}
h1 {
  font-size: 40px;
}
h2 {
  font-size: 30px;
  font-weight: normal;
  padding: 0 0 50px 0;
}
h3 {
  font-size: 20px;
  font-weight: normal;
  padding-top: 0;
  padding-bottom: 13px;
}
h4 {
  font-family: 'Open Sans', sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 18px;
}
h5 {
  padding: 0;
}

body, p, span a, footer, .button, form, form input, #relText li, .contentWrapper {
  font-family: Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 18px;
}

footer, footer .contentWrapper {
  font-size: 16px;
}

a.pageLink:link, a.pageLink:visited {
  color:#5A90BF;
  text-decoration:underline
}

a.pageLink:hover, a.pageLink:active {color:#000000}

a.pageLink2:link, a.pageLink2:visited {
  color:#dadada;
  font-size:24px;
  font-weight:bold;
  text-decoration:underline
}

a.pageLinkw:link, a.pageLinkw:visited {
  color:#5A90BF;
  text-decoration:underline
}

a.pageLink2:hover, a.pageLink2:active,
a.pageLinkw:hover, a.pageLinkw:active {color:#fff}



/*     LINK FORMAT     */

a, .button, button, #headPhone {
  text-decoration: none;

  -o-transition-property:color, background;
  -ms-transition-property:color, background;
  -moz-transition-property:color, background;
  -webkit-transition-property:color, background;
  transition-property:color, background;

  -o-transition-duration:.3s;
  -ms-transition-duration:.3s;
  -moz-transition-duration:.3s;
  -webkit-transition-duration:.3s;
  transition-duration:.3s;

  -o-transition-timing-function:ease;
  -ms-transition-timing-function:ease;
  -moz-transition-timing-function:ease;
  -webkit-transition-timing-function:ease;
  transition-timing-function:ease
}
a:active, a:focus, button:active, button:focus {
  outline: none;
}




.noScroll {
  height:100vh;
  overflow-y:hidden
}
.container {
  position:relative
}
#contentContOuter {
  position:relative
}
.contentContInner {
  position:relative;
  padding-top:100px;
  padding-bottom:100px;
  background-size:cover;
  background-repeat:no-repeat;
  background-position:center
}
#contentContOuter.home .contentContInner {
  background-image:url(../img/home-body-bg.webp)
}
#contentContOuter.gallery .contentContInner {
  background-image:url(../img/gallery-body-bg.webp)
}
#contentContOuter.contact-us .contentContInner {
  background-image:url(../img/contact-us-body-bg.webp)
}
#contentContOuter.reviews .contentContInner {
  background-image:url(../img/testimonials-body-bg.webp)
}
#contentContOuter.about-us .contentContInner {
  background-image:url(../img/aboutus-bg.webp)
}
#contentContOuter.flooring .contentContInner {
  background-image:url(../img/flooring-bg.webp)
}

.section {
  padding:50px 15px 0 15px;
  border-radius:8px;
  z-index:2
}

.darkenBG {
  content:" ";
  position:absolute;
  width:100%;
  height:100%;
  background-color:#000;
  opacity:.4;
  z-index:1
}

#introSection {position:relative;width:100%;padding-top:0;text-align:center;color:#fff;background-color:rgba(0,0,0,.5);border-radius:0}




/* LOADING AND FORM STATUS LIGHTBOX */

#loadingImage {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  visibility: visible;
  opacity: 1;
  text-align:center;
  background-color: rgba(255,255,255,0.95);
  z-index: 999;
}
#loadingImage.loading {
  visibility: hidden;
  opacity: 0;
  padding-top: 40%;
  background-color: rgba(255,255,255,0.95);
}
#loadingImage.loading.active {
  visibility: visible;
  opacity: 1;
}
#loadingImage #formResults {
  position: absolute;
  top: 50%;
  left: 50%;
  padding: 30px;
  transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  -moz-transform: translate(-50%,-50%);
}
#loadingImage.loading img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  -moz-transform: translate(-50%,-50%);
}
#loadingImage.loading h2 {
  display: block;
  position: absolute;
  top: 20%;
  left: 50%;
  transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  -moz-transform: translate(-50%,-50%);
}
#loadingImage .button,
#formResults .button {
  position: relative;
  padding: 10px 16px;
  margin-top: 45px;
}
.hide {display:none;}

#formResults {
  width: 100%;
  padding: 20px;
}
#loadingImage p {
  position: relative;
  padding: 30px 0 0 0;
  text-align: center;
  font-family: 'Open Sans', sans-serif;
  font-weight: bold;
  color: #000;
  text-shadow: 2px 1px 2px rgba(0,0,0,0.45);
}
#loadingImage h2 {
  font-size: 30px;
  text-shadow: 2px 1px 2px rgba(0,0,0,0.45);
}
@media screen and (min-width:815px) {
  #loadingImage h2 {
    font-size: 55px;
  }
  #loadingImage p {
    font-size: 25px;
  }
}

#formResults u {
  position: relative;
  text-decoration: none;
}

#loadingImage .button.hideContactPopup {
  width: 100px;
  height: 100px;
  padding: 0;
  background-color: #fff;
  border-radius: 8px;
  border: 8px solid #000;
  font-size: 50px;
  cursor: pointer;
  box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);
}








/* MENUS */
/* Header Menu */
#beautyBar {
  content:" ";
  width:100%;
  height:35px;
  background-color:#a7252a
}
#deskNavOuter {
  position:absolute;
  line-height:35px;
  background-color:#a7252a;
  text-align:center;
  visibility:hidden
}
#deskNav a {font-weight:bold}
#deskNav ul li {
  display:inline-block;
}
#deskNav a {
  display:block;
  padding:0 15px
}

@media screen and (min-width:830px) {
  #deskNavOuter {
    position:relative;
    visibility:visible
  }
  #beautyBar {display:none}
}


/* Responsive Button */
#respMenuButtonOuter {
  position:absolute;
  width:40px;
  height:34px;
  top:15px;
  left:15px;
  padding:5px;
  cursor:pointer;
  z-index:1000
}
#respMenuButton {
  content:'';
  position:relative;
  width:100%;
  height:100%
}
#respMenuButton > div {
  content: '';
  position:absolute;
  background-color:#fff;
  width: 30px;
  height:5px;
  top: 0;
  left: 0;
  border-radius:8px;
  transition-duration: .1s, .1s, .1s, .2s;
  transition-delay: .1s, 0s, 0s, 0s;
  transition-property: transform, bottom, top, background-color;
}
/* Initial */
#respMenuButton .topBar {=
  top:0
}
#respMenuButton .midBar {
  top:50%;
  transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -o-transform:translateY(-50%);
  -ms-transform:translateY(-50%);
}
#respMenuButton .botBar {
  top:inherit;
  bottom:0;
}
/* Open */
#respMenuButton.open .topBar {
  top:10px;
  background-color:rgba(0,0,0,1);

  transform:rotate(45deg);
  -webkit-transform:rotate(45deg);
  -moz-transform:rotate(45deg);
  -o-transform:rotate(45deg);
  -ms-transform:rotate(45deg);
}
#respMenuButton.open .midBar {
  background-color:rgba(0,0,0,0);
}
#respMenuButton.open .botBar {
  bottom:9px;
  background-color:rgba(0,0,0,1);

  transform:rotate(-45deg);
  -webkit-transform:rotate(-45deg);
  -moz-transform:rotate(-45deg);
  -o-transform:rotate(-45deg);
  -ms-transform:rotate(-45deg);
}
/* Closed */
#respMenuButton.closed .topBar {
  top:0;

  transform:rotate(-0deg);
  -webkit-transform:rotate(-0deg);
  -moz-transform:rotate(-0deg);
  -o-transform:rotate(-0deg);
  -ms-transform:rotate(-0deg);

  transition-duration: .1s, .1s;
  transition-delay: 0s, .1s;
  transition-property: transform, top;
}
#respMenuButton.closed .midBar {
  background-color:rgba(255,255,255,1);
}
#respMenuButton.closed .botBar {
  bottom:0;

  transform:rotate(0deg);
  -webkit-transform:rotate(0deg);
  -moz-transform:rotate(0deg);
  -o-transform:rotate(0deg);
  -ms-transform:rotate(0deg);

  transition-duration: .1s, .1s;
  transition-delay: 0s, .1s;
  transition-property: transform, bottom;
}

@media screen and (min-width:830px) {
  #respMenuButtonOuter {visibility:hidden}
}


/* Responsive Menu */
#respNavCont {
  display:block;
  position:absolute;
  width:100%;
  min-height:100vh;
  top:0;
  padding:50px 15px;
  background-color:rgb(241,236,227);
  overflow-y:scroll;
  visibility:hidden;
  z-index: 50
}
#respNavCont.onscreen {
  display:block;
  visibility:visible
}

#respNavCont nav li a {
  display:block;
  width:100%;
  height:55px;
  margin-top:10px;
  padding:0 15px;
  color:#000;
  text-align:center;
  font-family:'robotobold', Arial, sans-serif;
  font-size:22px;
  line-height:48px;
  font-weight:normal;
  text-decoration:none
}
#respNavCont nav li a:first-of-type {padding:0 15px 13px 15px}
#respNavCont nav li a.current {
  color:#888
}









/*     SITE-WIDE     */

html * {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}
body {}

p {
  margin-bottom: 15px;
}
p:last-of-type {margin-bottom:0;}




/*     BUTTONS     */
.redButtons:link, .redButtons:visited {
  color:#eee;
  background-color:#a7252a
}
.redButtons:hover, .redButtons:active, .redButtons:focus {
  color:#fff;
  filter:brightness(120%)
}





#headPhone {
  position:absolute;
  display:block;
  width:100%;
  max-width:max-content;
  right:15px;
  top:20px;
  padding:5px 5px 5px 50px;
  line-height:26px;
  color:#000;
  background-color:rgba(255,255,255,0.8);
  background-image:url(../img/phone.svg);
  background-repeat:no-repeat;
  background-position:5px 8px;
  background-size:40px;
  border-radius:8px;
  cursor:pointer
}
#headPhone:hover, #headPhone:focus {
  background-color:rgba(255,255,255,0.9)
}
@media screen and (min-width:1210px) {
  #headPhone {
    right:100px
  }
}

#headPhone .theNumber,
#headPhone .callForQuote {
  position:relative;
  width:100%;
  max-width:max-content;
  font-weight:bold
}
#headPhone .theNumber {
  font-size:24px
}
#headPhone .callForQuote {
  font-size:18px;
  line-height:20px;
  font-weight:normal
}








#titleArea {
  padding:85px 15px 15px 15px;
  background-color:rgb(241,236,227);
  background-image:url(../img/head-bg.webp);
  background-repeat:no-repeat;
  background-size:cover
}
#mainTitle {
  text-align:center
}
/* 525x200 approx at max*/
#mainTitle .logoCont {
  width:90%;
  max-width:525px;
  height:auto;
  margin:0 auto
}
#mainTitle .logoCont img {
  width:100%;
  height:auto
}
#mainTitle #tagline {
  padding-top:5px;
  font-family:"Times New Roman", serif;
  font-size:28px
}








/* FOOTER */
footer {
  display:block;
  position:relative;
  font-size:18px;
  background-color:rgb(154,151,111);
  color:#888
}
footer div, footer a, footer li {
  font-size:18px
}
footer .contentWrapper {
  position:relative;
  max-width:1000px;
  margin:0 auto;
  padding:50px 15px
}

.footContCol {
  display:block;
  width:100%;
  margin-top:60px;
  color:#fff;
  flex-basis:100%
}
.fontCont > .footContCol:first-of-type {
  margin-top: 0;
}
.footContCol a:link,
.footContCol a:visited {
  color: #eaeaea;
}
.footContCol a:hover,
.footContCol a:active,
.footContCol a.current {
  color: #fff;
}
.footContCol .footPhone:link,
.footContCol .footPhone:visited,
.footContCol .footPhone:hover,
.footContCol .footPhone:active {
  color: #fff;
}

.footContCol ul a {
  display: block;
  position: relative;
  width: 200px;
  line-height:48px;
  vertical-align: top;
}

address {font-style:normal}
address li a {
  display:block;
  position:relative;
  font-style:normal
}
address svg {
  margin-right: 8px;
}
footer address .footPhone {
  position: relative;
  font-size: 25px;
  font-weight: 900;
  color: #fff;
}
footer address #name {display:block;margin-bottom:10px;padding-left:30px;font-size:22px;font-weight:bold}

.footContCol#contNumbers ul li a span,
.footContCol#contNumbers ul li .block,
.footAddress,
#footPhoneNumber a span {
  display:block;
  position:relative;
  width:100%;
  max-width:max-content;
  line-height:48px;
  padding:0 15px 0 30px;
  background-repeat:no-repeat;
  background-position:0 14px;
  background-size:20px
}
.footAddress {
  line-height:20px;
  background-image:url(../img/gpsw.svg);
  background-position:0 0
}
#footPhoneNumber {background-image:url(../img/phonew.svg)}
.storeHours .block {background-image:url(../img/clockw.svg)}
#footEmail {background-image:url(../img/emailw.svg)}

#contNumbers address li.emailAddress a:link,
#contNumbers address li.emailAddress a:link {color:#fff;}
#contNumbers address li.emailAddress a:hover,
#contNumbers address li.emailAddress a:active {color:#fff;}
#contNumbers .footFB {
  display: block;
  position: relative;
  width:100%;
  max-width:max-content;
  margin-top:15px
}

footer .copyr {
  position: relative;
  width:100%;
  padding:15px 0;
  text-align:left;
  /*background-color:rgb(241,236,227)*/
  background-color:#222
}
footer .copyr div {
  width:100%;
  max-width:1000px;
  margin:0 auto;
  padding:0 15px;
  font-size:16px
}
@media screen and (min-width:490px) {
  .footContCol {
    flex-basis:50%
  }
  #footNav {
    max-width:50%;
    margin-top:0
  }
}
@media screen and (min-width:630px) {
  footer .contentWrapper .footCont {
    display:flex
  }
  #contNumbers {
    margin-top:0
  }
}
@media screen and (min-width:830px) {
  #footNav ul a,
  .footContCol#contNumbers ul li a span,
  .footContCol#contNumbers ul li .block,
  #footPhoneNumber a span {
    background-position:0 5px;
    line-height:30px
  }
  .footAddress {
    margin-bottom:7px;
    background-position:0 0;
    line-height:20px
  }
  .footContCol#contNumbers ul li a #footEmail {background-position:0 7px}
}
@media screen and (min-width:1130px) {
  .footContCol ul a,
  #bannerContact a,
  .footContCol .ftMaintPlan {
    padding: 0
  }
  .footContCol ul li span,
  .footContCol ul li span.block {
    padding: 0
  }
}
@media screen and (min-width:1330px) {
  .contentWrapper {
  }
}








/*     HOME PAGE     */
/* Products Boxes */
.productsSection {}
.productsSection .contentWrapper {
  position:relative;
  width:100%;
  max-width:1082px;
  margin:0 auto;
  overflow:hidden
}

.homeGalleryItemOuter {
  position:relative;
  width:100%;
  margin-bottom:100px;
  z-index:2
}
.homeGalleryItemOuter:last-of-type {margin-bottom:0}
.homeGalleryItem {
  width:100%;
  max-width:370px;
  margin:0 auto;
  overflow:hidden;
  background-color:rgba(255,255,255,.7);
  border:6px solid #000;
  border-radius:8px
}
.homeGalleryItemOuter .prodBlock {
  display:block;
  position:relative;
  width:100%;
  max-width:370px;
  height:370px;
  margin:0 auto;
  overflow:hidden;
  color:#000;
  background-repeat:no-repeat;
  background-position:center;
  text-decoration:none;
  -o-transition:.3s ease;
  -ms-transition:.3s ease;
  -moz-transition:.3s ease;
  -webkit-transition:.3s ease;
  transition:.3s ease
}
.blurb p {
  margin:0;
  padding:15px 15px 0 15px;
  font-size:20px;
  color:#000
}
.blurb p:last-of-type {
  padding:15px
}


.prodBlock:hover {
  text-decoration:none
}
.prodBlock .transp {
  position:absolute;
  width:100%;
  bottom:50px;
  left:0;
  background-color:rgba(0,0,0,0.5);
  border-top-left-radius:0;
  border-top-right-radius:0;
  border-bottom-right-radius:0;
  border-bottom-left-radius:0;
  z-index:2
}

.prodBlock h3 {
  margin:0;
  padding:25px;
  font-size:28px;
  color:#fff
}

.prodBlock#woodvinylFlooring {
  background-image:url(../img/vinyl-floor.webp);
  background-size:575px
}
.prodBlock#woodvinylFlooring:hover {background-size:643px}

.prodBlock#carpetFlooring {
  background-image:url(../img/carpet-samples.webp);
  background-size:555px
}
.prodBlock#carpetFlooring:hover {background-size:637px}

.prodBlock#tileFlooring {
  background-image:url(../img/tile-floor.webp);
  background-size:410px
}
.prodBlock#tileFlooring:hover {background-size:478px}

@media screen and (min-width:760px) {
  .homeGalleryItem {
    max-width:712px;
    margin:0 auto 0 0;
  }
  .homeGalleryItem a,
  .homeGalleryItem .blurb {float:left}
  .homeGalleryItem .blurb {width:330px}

  .homeGalleryItemOuter:nth-of-type(2) .homeGalleryItem {margin:0 0 0 auto}
  .homeGalleryItemOuter:nth-of-type(2) .homeGalleryItem a,
  .homeGalleryItemOuter:nth-of-type(2) .homeGalleryItem .blurb {float:right}

  .homeGalleryItemOuter:nth-of-type(3) {
    margin-bottom:0
  }

  .homeGalleryItemOuter .prodBlock {
    margin:0
  }
}

#contentContOuter.home #homeReviewsCont {
  position:relative;
  background-image:none;
  background-color:rgb(241,236,227);
  z-index:5
}
#homeReviews {
  max-width:1100px;
  margin:0 auto;
  padding-top:0
}
#homeReviews video {
  width:100%;
  height:auto;
  border-radius:8px
}
#homeTextReviews {
  padding-top:50px
}

@media screen and (min-width:660px) {
  #homeTextReviews > div {
    display:inline-block;
    width:calc(50% - 3px);
    vertical-align:top
  }
  #homeTextReviews > div:first-of-type {padding-right:17px}
  #homeTextReviews > div:nth-of-type(2) {
    padding-left:17px
  }
}

@media screen and (min-width:900px) {
  #homeTextReviews > div {
    display:block;
    width:100%
  }
  #homeTextReviews > div:first-of-type {padding-right:0}
  #homeTextReviews > div:nth-of-type(2) {
    padding-left:0
  }

  #homeReviewsFlex {
    display:flex;
    width:100%;
    flex-direction:row;
    flex-wrap:none;
    gap:50px
  }
  #homeReviewsFlex > div:first-of-type {
    flex-basis:60%
  }
  #homeReviewsFlex > div:last-of-type {
    flex-basis:40%
  }
  #homeTextReviews {
    padding-top:0
  }
}







/*     Gallery Page    */
/*#galleryIntro {padding-bottom:20px}*/

#gallerySpec {
  position:relative;
  width:100%
}
#galleriesExplainer {
  max-width:1280px;
  margin:50px auto 0 auto
}

#selectedImgCont {
  position:relative;
  width:95%;
  max-width:1100px;
  height:auto;
  margin:50px auto 0 auto
}

#selectedImg {
  position:relative;
  content:" ";
  display:block;
  width:100%; /* height set by JS */
  max-width:1100px;
  box-shadow:5px 5px 10px 3px #000;
  border-radius:8px;
  border:4px solid #000;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  overflow-y:hidden;
  text-align:center;
  z-index:2
}

#prevArrow,
#nextArrow {
  position:absolute;
  content:" ";
  width:100px;
  height:53px;
  bottom:50px;
  background-repeat:no-repeat;
  background-position:center;
  background-size:100%;
  border-radius:14px;
  cursor:pointer;
  z-index:2
}
#prevArrow {
  left:25px;
  background-image:url(../img/arrow-prev.svg)
}
#nextArrow {
  right:25px;
  background-image:url(../img/arrow-next.svg)
}

#galleryThumbsOuter {
  position:relative;
  width:95%;
  max-width:250px;
  margin:100px auto 0 auto;
  text-align:center;
  z-index:2
}

.galleryThumb {
  content:" ";
  display:inline-block;
  width:250px;
  height:250px;
  margin-right:25px;
  margin-top:25px;
  background-size:cover;
  background-position:center;
  border:4px solid #000;
  border-radius:8px;
  box-shadow:5px 5px 10px 3px #000;
  cursor:pointer
}
.galleryThumb:last-of-type {
  margin-right:0
}
.galleryThumb {box-shadow:5px 5px 10px 3px #000}

@media screen and (min-width:588px) {
  #galleryThumbsOuter {
    max-width:588px
  }
  .galleryThumb:nth-of-type(2n) {
    margin-right:0
  }
  .galleryThumb:last-of-type {
    margin-right:0
  }
}
@media screen and (min-width:910px) {
  #galleryThumbsOuter {
    max-width:910px
  }
  .galleryThumb:nth-of-type(2n) {
    margin-right:25px
  }
  .galleryThumb:nth-of-type(3n) {
    margin-right:0
  }
  .galleryThumb:last-of-type {
    margin-right:0
  }
}
@media screen and (min-width:1200px) {
  #galleryThumbsOuter {
    max-width:1200px
  }
  .galleryThumb:nth-of-type(3n) {
    margin-right:25px
  }
  .galleryThumb:nth-of-type(4n) {
    margin-right:0
  }
  .galleryThumb:last-of-type {
    margin-right:0
  }
}







/* TESTIMONIALS PAGE */
#submittedReviews,
#googleReviews {
  position:relative;
  width:95%;
  max-width:1065px;
  margin:50px auto 0 auto;
  padding:50px 50px 0 50px;
  color:#fff;
  background-color:rgba(0,0,0,.5);
  border-radius:8px
}

#submittedReviews .videoReviews {
  width:100%;
  max-width:850px;
  margin:0 auto;
}
#submittedReviews .videoReviews .videoReviewOuter {
  padding-bottom:50px
}
#submittedReviews .videoReviews .videoReviewOuter:last-of-type {padding-bottom:0}
#submittedReviews .videoReviews video {width:100%;height:auto;border-radius:8px}

#submittedTextReviews {
  margin-top:50px
}
#textReviews .textReviewOuter,
#googleReviews .textReviewOuter {
  padding-top:25px
}
#textReviews .textReviewOuter:last-of-type,
#googleReviews .textReviewOuter:last-of-type {
  padding-bottom:50px
}

.reviewRating {}
.reviewRating .wholeStar {
  position:relative;
  display:inline-block;
  width:25px;
  height:25px;
  background-image:url(../img/star-fill.svg);
}

.textReviewOuter {padding-bottom:25px}
.textReviewOuter .reviewText,
.textReviewOuter .reviewName {padding-top:15px}
.textReviewOuter .reviewName {font-size:20px;font-weight:bold}

@media screen and (min-width:885px) {
  #textReviews,
  #submittedReviews .videoReviews {
    display:flex;
    max-width:100%;
    flex-direction:row;
    flex-wrap:wrap;
    gap:50px
  }
  #submittedReviews .videoReviews {
    flex-wrap:wrap
  }
  #submittedReviews .videoReviews .videoReviewOuter {padding-bottom:0}
  #textReviews .textReviewOuter,
  #submittedReviews .videoReviewOuter  {
    flex-basis:47%
  }
  #textReviews .textReviewOuter {
    padding-top:0;
    padding-bottom:0;
    flex-basis:47%
  }
}







/* FLOORING */
.flooring .section {padding-bottom:50px}
.flooring .contentContInner .section:first-of-type {padding-bottom:0}
/* Products Boxes */
#floorTypesSection {
  position:relative;
  z-index:2
}
#floorTypesSection .contentWrapper {
  position:relative;
  width:100%;
  max-width:1280px;
  margin:0 auto;
  overflow:hidden
}

#floorTypesSection .prodBlock {
  display:block;
  position:relative;
  width:100%;
  max-width:370px;
  height:370px;
  margin:0 auto 100px auto;
  color:#000;
  overflow:hidden;
  background-repeat:no-repeat;
  background-position:center;
  text-decoration:none;
  border:6px solid #000;
  border-radius:8px;
  -o-transition:.3s ease;
  -ms-transition:.3s ease;
  -moz-transition:.3s ease;
  -webkit-transition:.3s ease;
  transition:.3s ease
}

@media screen and (min-width:850px) {
  #floorTypesSection .prodBlock {
    float: left;
    max-width: 32%;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 2%;
  }
  #floorTypesSection .prodBlock:first-of-type {
    margin-left: 0;
  }
  #floorTypesSection .prodBlock .image {
    max-height: 532.33px;
  }
}

.section .hardwoodVinylSubSect {
  padding-top:100px
}
.contentWrapper .hardwoodVinylSubSect:first-of-type {
  padding-top:0
}

#floorTypesSection {
  padding-bottom:50px
}

#hardwood-laminate-vinyl,
#carpet, #tile, #qualified {
  position:relative;
  width:100%;
  z-index:2
}
#hardwood-laminate-vinyl .contentWrapper,
#carpet .contentWrapper,
#tile .contentWrapper,
#qualified .contentWrapper {
  width:100%;
  max-width:1065px;
  margin-right:auto;
  margin-left:auto;
  padding:50px;
  color:#fff;
  background-color:rgba(0,0,0,.5);
  border-radius:8px
}

#hardwood-laminate-vinyl {}
#carpet {}
#tile {}
#qualified {padding-top:50px}

.vendorSect {padding-top:15px}
.vendorLink {
  position:relative;
  display:inline-block;
  width:145px;
  height:83px;
  margin-top:15px;
  margin-right:15px;
  padding:10px;
  border-radius:8px
}
.vendorLink.white {background-color:rgba(255,255,255,1)}
.vendorLink.black {background-color:rgba(0,0,0,1)}
.vendorLink.shaw {background-color:#4749fe}

.vendorLink img {
  position:absolute;
  width:125px;
  top:50%;
  -webkit-transform:translateY(-50%);
  -ms-transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -o-transform:translateY(-50%);
  transform:translateY(-50%);
  cursor:pointer
}






/* ABOUT US */
#aboutText1 {
  position:relative;
  width:100%;
  max-width:1065px;
  margin:50px auto 0 auto;
  padding:50px;
  color:#fff;
  background-color:rgba(0,0,0,.5);
  z-index:2
}
#aboutText1 h2 {
  padding-top:50px
}





/* CONTACT US */
#contactSection {
  position:relative;
  width:100%;
  margin:50px auto 0 auto;
  z-index:2
}
#contactSection .contentWrapper {
  position:relative;
  width:100%;
  max-width:1400px;
  margin:0 auto;
  padding:50px;
  color:#fff;
  border-radius:8px;
  background-color:rgba(0,0,0,.5)
}

#visitShowroom {padding-top:50px}
#storeFrontImg,
#storeFrontImg img {
  width:100%;
  height:auto;
  border-radius:8px
}
#storeFrontImg {padding-top:50px}

#showroomMap {
  width:100%;
  margin-top:25px
}
#showroomMap iframe {
  width:100%;
  height:400px;
  border-radius:8px
}
#contactFormSection .formWords {
  font-size:20px
}

/* Contact Form */

#contactForm {
  position:relative;
  width:100%;
  padding-top:100px
}
#contactForm .cFormContainer {width:100%}

#contactForm .cFormContainer form {
  position:relative;
  width:100%;
  margin-top:35px
}
#contactForm .cFormContainer form .fieldContainer {
  position: relative;
  height: auto;
  padding-top:15px
}
#contactForm .cFormContainer form .fieldContainer:first-of-type input {padding-top: 0;}
#contactForm .cFormContainer form .fieldContainer {position:relative;}
#contactForm .cFormContainer form .fieldContainer textarea {

}
#contactForm .cFormContainer form .fieldContainer input,
#contactForm .cFormContainer form .fieldContainer select {height:40px;}
#contactForm .cFormContainer form .fieldContainer input,
#contactForm .cFormContainer form .fieldContainer textarea,
#contactForm .cFormContainer form .fieldContainer select {
  width: 100%;
  padding: 5px;
  border-radius: 8px;
}

#contactForm .cFormContainer form .fieldContainer input,
#contactForm .cFormContainer form .fieldContainer textarea,
#contactForm .cFormContainer form .fieldContainer select {
  color: #000;
  font-family: 'Open Sans', sans-serif;
  font-size: 18px;
  border-top: 2px solid #667;
  border-right: 1px solid #aaa;
  border-bottom: 1px solid #aaa;
  border-left: 2px solid #667;
}

#contactForm .cFormContainer form .fieldContainer .invalid i {
  color: #be2b28;
}
#contactForm .cFormContainer form .fieldContainer .invalid {
  border-top: 2px solid #dd0000;
  border-right: 1px solid #dd0000;
  border-bottom: 1px solid #dd0000;
  border-left: 2px solid #dd0000;
  color: #be2b28 !important;
  font-weight: bold;
}
#contactForm .cFormContainer .submitBtn {
  width:100%;
  margin-top:25px;
  background-color:#cacaca;
  height:55px;
  color:#000;
  font-family:'Open Sans', sans-serif;
  border-radius:8px;
  border:2px solid #000;
  cursor:pointer;
  font-size:18px;
  -o-transition:all .3s ease;
  -ms-transition:all .3s ease;
  -moz-transition:all .3s ease;
  -webkit-transition:all .3s ease;
  transition:all .3s ease
}
#contactForm .cFormContainer .submitBtn:hover {
  color:#fff;
  background-color:#888
}

@media screen and (min-width:1000px) {
  #visitShowroom,
  #contactForm {
    display:inline-block;
    width:calc(50% - 3px);
    margin-top:50px;
    vertical-align:top
  }
  #visitShowroom {
    margin-top:0;
    padding-right:25px
  }
  #contactForm {
    margin-top:0;
    padding-top:50px;
    padding-left:25px
  }
  #showroomMap iframe {
    height:300px
  }
}
