/***************************************
  BOOTSTRAP UTILITIES
****************************************/
.m-0 {
  margin: 0 !important
}

.mt-0,
.my-0 {
  margin-top: 0 !important
}

.mr-0,
.mx-0 {
  margin-right: 0 !important
}

.mb-0,
.my-0 {
  margin-bottom: 0 !important
}

.ml-0,
.mx-0 {
  margin-left: 0 !important
}

.m-1 {
  margin: .25rem !important
}

.mt-1,
.my-1 {
  margin-top: .25rem !important
}

.mr-1,
.mx-1 {
  margin-right: .25rem !important
}

.mb-1,
.my-1 {
  margin-bottom: .25rem !important
}

.ml-1,
.mx-1 {
  margin-left: .25rem !important
}

.m-2 {
  margin: .5rem !important
}

.mt-2,
.my-2 {
  margin-top: .5rem !important
}

.mr-2,
.mx-2 {
  margin-right: .5rem !important
}

.mb-2,
.my-2 {
  margin-bottom: .5rem !important
}

.ml-2,
.mx-2 {
  margin-left: .5rem !important
}

.m-3 {
  margin: 1rem !important
}

.mt-3,
.my-3 {
  margin-top: 1rem !important
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important
}

.m-4 {
  margin: 1.5rem !important
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important
}

.m-5 {
  margin: 3rem !important
}

.mt-5,
.my-5 {
  margin-top: 3rem !important
}

.mr-5,
.mx-5 {
  margin-right: 3rem !important
}

.mb-5,
.my-5 {
  margin-bottom: 3rem !important
}

.ml-5,
.mx-5 {
  margin-left: 3rem !important
}

.p-0 {
  padding: 0 !important
}

.pt-0,
.py-0 {
  padding-top: 0 !important
}

.pr-0,
.px-0 {
  padding-right: 0 !important
}

.pb-0,
.py-0 {
  padding-bottom: 0 !important
}

.pl-0,
.px-0 {
  padding-left: 0 !important
}

.p-1 {
  padding: .25rem !important
}

.pt-1,
.py-1 {
  padding-top: .25rem !important
}

.pr-1,
.px-1 {
  padding-right: .25rem !important
}

.pb-1,
.py-1 {
  padding-bottom: .25rem !important
}

.pl-1,
.px-1 {
  padding-left: .25rem !important
}

.p-2 {
  padding: .5rem !important
}

.pt-2,
.py-2 {
  padding-top: .5rem !important
}

.pr-2,
.px-2 {
  padding-right: .5rem !important
}

.pb-2,
.py-2 {
  padding-bottom: .5rem !important
}

.pl-2,
.px-2 {
  padding-left: .5rem !important
}

.p-3 {
  padding: 1rem !important
}

.pt-3,
.py-3 {
  padding-top: 1rem !important
}

.pr-3,
.px-3 {
  padding-right: 1rem !important
}

.pb-3,
.py-3 {
  padding-bottom: 1rem !important
}

.pl-3,
.px-3 {
  padding-left: 1rem !important
}

.p-4 {
  padding: 1.5rem !important
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important
}

.pr-4,
.px-4 {
  padding-right: 1.5rem !important
}

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important
}

.pl-4,
.px-4 {
  padding-left: 1.5rem !important
}

.p-5 {
  padding: 3rem !important
}

.pt-5,
.py-5 {
  padding-top: 2rem !important
}

.pr-5,
.px-5 {
  padding-right: 3rem !important
}

.pb-5,
.py-5 {
  padding-bottom: 2rem !important
}

.pl-5,
.px-5 {
  padding-left: 3rem !important
}

body {
  font-family: 'Open Sans', sans-serif;
}

ul,
ol {
  margin-top: 0;
  margin-bottom: 10px
}

ul ul,
ol ul,
ul ol,
ol ol {
  margin-bottom: 0
}

.list-unstyled {
  padding-left: 0;
  list-style: none
}

.list-inline {
  padding-left: 0;
  margin-left: -5px;
  list-style: none
}

.list-inline>li {
  display: inline-block;
  padding-right: 5px;
  padding-left: 5px
}

.lead {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4
}

@media (min-width: 768px) {
  .lead {
    font-size: 21px
  }
}

small,
.small {
  font-size: 85%
}

cite {
  font-style: normal
}

mark,
.mark {
  padding: .2em;
  background-color: #fcf8e3
}

.text-left {
  text-align: left
}

.text-right {
  text-align: right
}

.text-center {
  text-align: center
}

.text-justify {
  text-align: justify
}

.text-nowrap {
  white-space: nowrap
}

.text-lowercase {
  text-transform: lowercase
}

.text-uppercase {
  text-transform: uppercase
}

.text-capitalize {
  text-transform: capitalize
}

.text-muted {
  color: #777
}

.text-primary {
  color: #428bca
}

a.text-primary:hover {
  color: #3071a9
}

.text-success {
  color: #3c763d
}

a.text-success:hover {
  color: #2b542c
}

.text-info {
  color: #31708f
}

a.text-info:hover {
  color: #245269
}

.text-warning {
  color: #8a6d3b
}

a.text-warning:hover {
  color: #66512c
}

.text-danger {
  color: #a94442
}

@media screen and (min-width: 601px) {
  .row-eq-height {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: nowrap;
  }
}

/* Giving pcButton default bootstrap styles */
a.pcButton,
.pcButton {
  display: inline-block;
  margin-bottom: 0;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  white-space: nowrap;
  padding: 6px 12px;
  line-height: 1.42857143;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

a,
.btn,
button {
  -o-transition: .5s;
  -ms-transition: .5s;
  -moz-transition: .5s;
  -webkit-transition: .5s;
  transition: .5s;
}

/* Panels */
.panel-group {}

.panel {
  border-radius: 0;
  border-top-color: #00afef;
}

.panel-group .panel {
  border-radius: 0;
}

.panel .panel-heading {
  background-color: #00afef;
  border-radius: 0;
  font-weight: 700;
}

.panel .panel-collapse .panel-body {
  background-color: #ddd;
}

/* ProductCart Buttons: pcButtonAddToWishlist, pcButtonAddToCart */
.btn,
.pcButton {
  border-radius: 0;
  border: none;
  text-transform: uppercase;
  font-weight: 700;
}

a.btn-primary,
a.pcButton,
.btn-primary,
.pcButton,
a.btn-primary:visited,
a.pcButton:visited,
.btn-primary:visited,
.pcButton:visited {
  background: #ffd10c;
  color: #000;
  font-family: "Open Sans Condensed", sans-serif;
}

a.btn-primary:hover,
a.pcButton:hover,
.btn-primary:hover,
.pcButton:hover,
a.btn-primary:active,
a.pcButton:active,
.btn-primary:active,
.pcButton:active {
  background: #ffe263;
  color: #000;
}

a.btn-secondary,
a.btn-default,
.btn-secondary,
.btn-default,
a.btn-secondary:visited,
a.btn-default:visited,
.btn-secondary:visited,
.btn-default:visited {
  background: #00afef;
  color: #000;
}

a.btn-secondary:hover,
a.btn-default:hover,
.btn-secondary:hover,
.btn-default:hover,
a.btn-secondary:active,
a.btn-default:active,
.btn-secondary:active,
.btn-default:active {
  background: #76ccff;
  color: #000;
}

/* Increased z-index value to account for wsmenu mobile navbar */
.modal {
  /*z-index: 10003; */
  z-index: 2049;
}

/***************************************
  COLOR
****************************************/
.bg-black {
  background: #000;
  color: #fff;
}

.bg-blue {
  background: #00afef;
  color: #000;
}

.bg-yellow {
  background: #ffd10c;
  color: #000;
}

.pcButton img {
  display: none;
}

.pcButton .pcButtonText {
  display: block;
}

/* .btn-default {
  color: #eee;
  background-color: #6a6a6a;
} */

/***************************************
  HEADER
****************************************/
ul#header-social,
ul#pcSocialLinks {
  display: inline-block;
}

ul#pcSocialLinks {
  padding-left: 0;
  margin-left: -5px;
  list-style: none;
}

ul#pcSocialLinks>li {
  display: inline-block;
  padding-right: 5px;
  padding-left: 5px;
}

a#phone {
  color: #fff;
  font-weight: bold;
}

.form-control {
  border: 1px solid rgba(100, 100, 100, 0.25);
  border-radius: 0;
}

#header .form-control {
  background: #474747;
  color: #cccccc;
}

a#phone {
  font-size: 20px;
}

@media screen and (max-width: 600px) {
  #header form {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 1200px) {
  a#logo-mobile {
    position: absolute;
    top: 7px;
    right: 15px;
  }

  #logo-desktop {
    display: none;
  }

  #header {
    margin-top: 40px;
    padding: 15px 0;
  }
}

@media screen and (min-width: 1201px) {
  #header {
    background: url("../images/bg-header2.png") #000 top repeat-x;
  }

  a#phone {
    font-size: 30px;
  }
}

@media screen and (max-width: 425px) {
  ul#pcSocialLinks {
    width: 100%;
  }

  .col-sm-12.social-header {
    text-align: center;
  }
}

/***************************************
  NAVBAR
****************************************/
.wsmenu-list a {
  font-family: 'Open Sans Condensed', sans-serif;
  font-size: 19px;
  font-weight: 700;
  color: #000;
}

.wsmenu>.wsmenu-list>li>a .wsarrow:after {
  display: inline-block;
  float: none;
  height: 5px;
  margin: 0;
  position: static;
  vertical-align: baseline;
  width: auto;
}

.nav-pills>li>a {
  border-radius: 0;
}

.nav-pills>li>a:hover,
.nav-pills>li>a:focus,
.nav-pills>li.active>a,
.nav-pills>li.active>a:hover,
.nav-pills>li.active>a:focus {
  color: #fff !important;
  background-color: #000;
}

.nav-tabs>li>a {
  background-color: transparent;
}

.megamenu-row-flex {
  display: flex;
  flex-flow: row wrap;
}

@media screen and (max-width: 600px) {
  #cta-middle {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 10px 0;
    margin: 10px 0;
  }
}

@media screen and (min-width: 601px) {
  #cta-middle {
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
  }
}

@media only screen and (max-width: 1200px) {
  body.wsactive {
    background: #ffffff;
  }

  .wsmenu>.wsmenu-list>li>a {
    color: #000;
  }

  .wsmenu>.wsmenu-list>li>a .wsarrow {
    display: none;
  }

  .wsmenu>.wsmenu-list>li>.wsmegamenu {
    padding: 0;
  }
}

@media (min-width: 1200px) {
  .megamenu-row-flex {
    flex-flow: row nowrap;
  }
}

/* List Items Columns */
.columns {
  -moz-column-width: 15.5em;
  /* Firefox */
  -webkit-column-width: 15.5em;
  /* webkit, Safari, Chrome */
  column-width: 15.5em;
}

/*remove standard list and bullet formatting from ul*/
.columns ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

/* correct webkit/chrome uneven margin on the first column*/
.columns ul li:first-child {
  margin-top: 0px;
}

/***************************************
  MAIN
****************************************/
.wsmenucontainer {
  /*height: inherit;
  position: relative;*/
}

/*div#pcMain {
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
}*/
div#pcMain .pcPageDesc {
  margin-bottom: 0;
  padding: 0;
  background-color: transparent;
}

#brand-logos img {
  -webkit-filter: grayscale(100%);
  /* Safari 6.0 - 9.0 */
  filter: grayscale(100%);
  transition: .3s all ease-in-out;
}

#brand-logos img:hover {
  filter: none;
  transition: .3s all ease-in-out;
}

.pcShowCategory {
  margin: 4px;
  padding: 18px;
  text-align: center;
}

/* SHOW PRODUCTS TABLE L */
.pcShowProductsLTable {
  /* Default constructor */
}

/* SHOW PRODUCTS TABLE L HEADER ROW */
.pcShowProductsLTable .pcShowProductsLHeader {
  background-color: #00afef;
  color: #000;
  font-size: 16px;
  font-weight: 700;
  padding: .75rem 0;
}

/* SHOW PRODUCTS TABLE L PRODUCT ROWS */
.pcShowProductsLTable .pcShowProductsLHeader>div {
  background-color: transparent;
  border: 1px solid #00afef;
  padding: 13px 0;
}

.pcShowProductsLTable .pcShowProductsL .pcShowProductPriceL {
  font-weight: 700;
}

.pcShowProductsLTable .pcShowProductsL>div {
  border-bottom: 1px solid #00afef;
  border-left: 0;
  border-right: 0;
}

/* PRODUCT PAGES */
.pcPageTabs #prdtabs .nav-tabs>li.active>a {
  background-color: #00afef;
  color: #fff;
}

.pcPageTabs #prdtabs .nav-tabs>li>a {
  background-color: #ffd10c;
  border-radius: 0;
  color: #000;
  font-weight: 700;
}

.pcPageTabs #prdtabs .tab-content .pcSectionTitle {
  /*background-color: #00afef; */
  /*color: #000; */
  font-size: 14px;
}

.nav>li>a {
  padding: 6px 12px;
}

/* VIEW PRODUCT TYPE T */
/* Remove extra "addThis" widget in the Product Details */
div#pcViewProductT .pcPageTopLeft .pcAddThisRight {
  display: none;
}

/* Remove border around QtyDiscount table */
div#pcViewProductT .pcPageTopLeft .pcShowProductQtyDiscounts .pcShowList {
  /*border-color: transparent;*/
}

/* QtyDiscount table header */
div#pcViewProductT .pcPageTopLeft .pcShowProductQtyDiscounts .pcShowList .pcTableHeader {
  /*background-color: #000; */
  /*color: #fff; */
  /*padding: .75rem 0; */
}

/* Prices in the QtyDiscount table */
div#pcViewProductT .pcPageTopLeft .pcShowProductQtyDiscounts .pcShowList .row .col-xs-4 {
  /*font-weight: 700;*/
}

/* Brand, Roll Width, Roll Length */
div#pcViewProductT .pcPageTopRight .pcShowProductCustSearch {
  font-weight: 700;
}

/* The actual Price */
div#pcViewProductT .pcPageTopRight .pcShowPrices .pcShowProductMainPrice {
  font-size: 15px;
}

div#pcViewProductT .pcPageTabs {
  margin-top: .5rem;
}

/* ConfigurePrd.asp */
/* Change from height auto to 100% to fix no scrolling issue on configure prd pages */
body.footerFixedPricing {
  height: 100%;
}

@media (min-width: 768px) {

  /**** DEFAULT AND CUSTOMIZATIONS PRICES CSS ****/
  #pcBTOfloatPrices .defaultPrice {
    top: unset;
    margin-bottom: 0;
  }

  #pcBTOfloatPrices .customizationPrice {
    top: unset;
    margin-bottom: 0;
  }

  #pcBTOfloatPrices .discountPrice,
  #pcBTOfloatPrices .additionalCharges {
    top: unset;
    margin-bottom: 0;
  }

  #pcBTOfloatPrices .QdiscountPrice {
    top: unset;
    margin-bottom: 0;
  }

  #pcBTOfloatPrices .grandTotal.pcBTOsmall {
    padding-bottom: 0;
  }
}

/***************************************
  SLIDESHOW;
****************************************/
.theme-productcart .nivoSlider {
  box-shadow: none;
  margin-bottom: 0;
}

.theme-productcart .nivo-controlNav {
  bottom: 0;
  position: absolute;
  width: 100%;
  z-index: 2;
}

/* .hero-carousel .hero-carousel__cell {
  width: 87% !important;
} */

/***************************************
  CART
****************************************/
.row.pcTotalsSummaryHeader {
  border-radius: 0;
}

.row.pcTotalsSummaryWrapper {
  border-radius: 0;
  background-color: #fff;
}

.pcCartLayout .subTitle {
  font-weight: 700;
  font-size: 15px;
}

.row.pcTotalsSummaryHeader {
  background-color: #00afef;
  color: #000;
}

#pcOrderSummaryWrapper h2 {
  color: #000;
  text-transform: uppercase;
}

.pcCartLayout .pcTableHeader {
  background-color: #00afef;
  border-bottom: 1px solid #DDDDDD;
  color: #000000;
  font-size: 14px;
  font-weight: bold;
  padding: 8px 0;
}

.pcShowProductQtyDiscounts {
  max-width: 310px;
}

button.pcButton.pcButtonRecalculate,
a.pcButton.pcButtonSaveCart,
a.pcButton.pcButtonContinueShopping {
  background-color: #000;
  color: #fff;
}

.pcCartLayout .heading {
  text-shadow: none;
}

/***************************************
  CHECKOUT
****************************************/
.pcTotalsSummaryWrapper {
  border-radius: 10px;
}

.pcTotalsSummaryHeader {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

/* Checkout order total box */
.pcOnePageCheckout #pcOPCtotal {
  border-radius: 0;
}

/* Checkout panel */
/* .pcOnePageCheckout #acc1.panel-group {

}
.pcOnePageCheckout #acc1.panel-group .panel {
  border-radius: 0;
  border-top-color: #00afef;
}
.pcOnePageCheckout #acc1.panel-group .panel .panel-heading {
  background-color: #00afef;
  border-radius: 0;
}
.pcOnePageCheckout #acc1.panel-group .panel .panel-collapse .panel-body {
  background-color: #ddd;
} */

/***************************************
  FOOTER
****************************************/
ul#pcAcceptedPayments {
  padding-left: 0;
  margin-left: -5px;
  list-style: none;
}

ul#pcAcceptedPayments>li {
  display: inline-block;
  padding-right: 5px;
  padding-left: 5px;
}

@media (min-width: 992px) {
  .wsmenucontainer {
    position: relative;
    /*padding-bottom: 385px;*/
  }

  div#footer,
  div#footer+div {
    //position: absolute;
    width: 100%;
  }

  div#footer {
    bottom: 5.84rem;
  }

  div#footer+div {
    bottom: 0;
  }
}

/*
The margin bottom for the .wsmenucontainer is going to be calculated based on
the height of the footer and the bottom div directly below that element. 
On page load you will check the height of these 2 elements then set the 
margin-bottom value on .wsmenucontainer equal to the sum of the 2 values.
*/

.pcShowCategoryLargeImage {
  min-height: 75px;
}

.pcShowCategoryImage {
  min-height: 100px;
}

@media (min-width: 992px) {
  .col-md-10 {
    width: 100%;
  }
}