/*
Theme Name:      BlankSlate Child Theme
Theme URI:       http://www.websitebundles.com/
Description:     Theme by Site <a href=\"http://childthemegenerator.com/\">http://childthemegenerator.com/</a> WP Engine
Author:          WebsiteBundles
Author URI:      http://childthemegenerator.com/
Template:        blankslate
Version:         1.0.33
Text Domain:     BlankSlate-child
-------------------------------------------------------------- */

/* =Theme customization starts here
------------------------------------------------------- */

/* Roboto — production renders body copy in the Roboto that MDBootstrap 4.8.8
   ships, not the one Google Fonts serves today. The current Google release is
   fractionally wider, which reflows body copy onto extra lines. The binaries in
   assets/vendor/MDB are byte-identical to the ones production pulls from the MDB
   CDN. Declared here so they override the Google Fonts face, matching MDB's
   position in production's cascade.
------------------------------------------------------- */
@font-face {
  font-family: Roboto;
  src: local("Roboto Thin"),
    url("assets/vendor/MDB/font/roboto/Roboto-Thin.woff2") format("woff2"),
    url("assets/vendor/MDB/font/roboto/Roboto-Thin.woff") format("woff");
  font-weight: 200;
  font-display: swap;
}

@font-face {
  font-family: Roboto;
  src: local("Roboto Light"),
    url("assets/vendor/MDB/font/roboto/Roboto-Light.woff2") format("woff2"),
    url("assets/vendor/MDB/font/roboto/Roboto-Light.woff") format("woff");
  font-weight: 300;
  font-display: swap;
}

@font-face {
  font-family: Roboto;
  src: local("Roboto Regular"),
    url("assets/vendor/MDB/font/roboto/Roboto-Regular.woff2") format("woff2"),
    url("assets/vendor/MDB/font/roboto/Roboto-Regular.woff") format("woff");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: Roboto;
  src: url("assets/vendor/MDB/font/roboto/Roboto-Medium.woff2") format("woff2"),
    url("assets/vendor/MDB/font/roboto/Roboto-Medium.woff") format("woff");
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: Roboto;
  src: url("assets/vendor/MDB/font/roboto/Roboto-Bold.woff2") format("woff2"),
    url("assets/vendor/MDB/font/roboto/Roboto-Bold.woff") format("woff");
  font-weight: 700;
  font-display: swap;
}

/* global styles
------------------------------------------------------- */

body {
  background-color: #fff;
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  color: #212529;
}

body.bath-gallery {
  background-color: #f7f7f7;
}

a {
  /*     color: #350207; */
}

/* check icon styles
------------------------------------------------------- */
.fas.fa-check {
  position: absolute;
  left: -20px;
  font-size: 14px;
  top: 5px;
}
.fa-ul {
  margin-left: 20px;
}

/* cards
------------------------------------------------------- */

#feature-cards a,
#feature-cards a:hover,
#feature-cards a:focus {
  color: inherit;
  text-decoration: none;
}

#feature-cards a i.text-gold,
#feature-cards i.text-gold {
  color: #e59500 !important;
  font-weight: 900 !important;
}

#feature-cards a i.text-white,
#feature-cards i.text-white {
  color: #fff !important;
  font-weight: 900 !important;
}

#feature-cards p,
#feature-cards .h6,
#feature-cards p.text-white {
  color: #fff !important;
  margin-bottom: 0.5rem;
  font-weight: 500;
}

#feature-cards a:hover {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* glider.js styles
------------------------------------------------------- */

.glider {
  overflow: hidden;
}
.glider-dot.active {
  background: #350207;
}

.glider-nav {
  float: right;
  right: 25px;
  position: relative;
}
.glider-next,
.glider-prev {
  position: relative;
  background: 0 0;
  z-index: 2;
  font-size: inherit;
  text-decoration: none;
  left: auto;
  top: auto;
  cursor: pointer;
  color: #666;
  opacity: 1;
  line-height: 1;
  transition: opacity 0.5s cubic-bezier(0.17, 0.67, 0.83, 0.67),
    color 0.5s cubic-bezier(0.17, 0.67, 0.83, 0.67);
}

/* glider.js lazyload */
.glider-slide img {
  opacity: 0;
  transform: opacity 0.1s ease;
}
.glider-slide img.loaded {
  opacity: 1;
}

/* Caldera styles */
.btn-upload button {
  color: #000 !important;
}
.parsley-required {
  color: red !important;
}
footer label.checkbox-inline {
  color: #000 !important;
}
footer label {
  color: #000 !important;
}

input[type='date']:focus:not([readonly]),
input[type='datetime-local']:focus:not([readonly]),
input[type='email']:focus:not([readonly]),
input[type='number']:focus:not([readonly]),
input[type='password']:focus:not([readonly]),
input[type='search-md']:focus:not([readonly]),
input[type='search']:focus:not([readonly]),
input[type='tel']:focus:not([readonly]),
input[type='text']:focus:not([readonly]),
input[type='time']:focus:not([readonly]),
input[type='url']:focus:not([readonly]),
textarea.md-textarea:focus:not([readonly]) {
  border-bottom: 1px solid #4285f4;
  box-shadow: 0 1px 0 0 #4285f4;
}

.caldera-grid .form-control {
  padding: 0 !important;
}

/* make all img responsive */

img {
  display: inline-block;
  height: auto;
  max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-bottom: 0.75rem;
  margin-top: 1.5rem;
  font-weight: 400;
}

.h1,
h1 {
  font-size: 3rem;
}

.h2,
h2 {
  font-size: 2rem;
}

.h3,
h3 {
  font-size: 1.5rem;
}

.h4,
h4 {
  font-size: 1rem;
}

body.home h3 {
  margin: 0;
}

/* colors styles
------------------------------------------------------- */

.green {
  /*background-color: #4CAF50 !important;*/
  background-color: #350207 !important;
}
.green-text {
  color: #4caf50 !important;
  color: #350207 !important;
}
.orange {
  background-color: #350207 !important;
}
.orange-text {
  color: #350207 !important;
}
.maroon {
  background-color: #350207 !important;
}
.text-maroon {
  color: #350207 !important;
}
.gold {
  background-color: #e59500 !important;
}
.text-gold {
  color: #e59500 !important;
}

a.btn.maroon {
  color: #fff;
}
/* dropdown styles
------------------------------------------------------- */
.dropdown-menu {
  border: none;
}

/* remove shadow .flat */

.card-panel.flat,
.card.flat,
nav.flat,
.flat {
  box-shadow: none;
}

/* location page styles
------------------------------------------------------- */
.locations .facetwp-template .col-sm-4 {
  margin-bottom: 30px;
}

/* google map styles
------------------------------------------------------- */

.map-responsive {
  overflow: hidden;
  padding-bottom: 50%;
  position: relative;
  height: 0;
}

.map-responsive iframe {
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  position: absolute;
}

/* breadcrumbs styles
------------------------------------------------------- */

#breadcrumbs {
  font-size: 12px;
}

#breadcrumbs a {
  color: #350207;
}

/* banner styles
------------------------------------------------------- */

.banner {
  margin: 0 0 30px;
}

/* BS5 .row adds horizontal gutter padding to every direct child; BS4 only on .col-* */
.container-fluid > .row > .banner {
  padding-left: 0;
  padding-right: 0;
}

.banner img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}

/* card overlay styles
------------------------------------------------------- */

.card-body {
  -moz-box-flex: 1;
  flex: 1 1 auto;
  padding: 1.25rem;
}

.card {
  -moz-box-direction: normal;
  -moz-box-orient: vertical;
  background-clip: border-box;
  background-color: #fff;
  /*border: 1px solid rgba(0, 0, 0, 0.125);*/
  border: none;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow-wrap: break-word;
  position: relative;
  font-weight: 300;
}

.card-body h4 {
  font-weight: 500;
  margin-bottom: 1rem;
  margin-top: 0;
}

.card img {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

/*.card-image {
margin: 0 10px;
background: #fff;
color: #333;
}*/

/*.card-image img {
width: 100%;
}*/

.hoverfx {
  position: relative;
  display: block;
  overflow: hidden;
  text-align: center;
}

.hoverfx img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}

.hoverfx:before {
  display: inline-block;
  padding-top: 60%;
  content: '';
  vertical-align: middle;
}

.hoverfx .figure a {
  position: relative;
  z-index: 2;
  display: inline-block;
  padding: 10px 15px;
  max-width: 100%;
  border: 3px solid #e9e9e9;
  color: #ecf0f1;
  vertical-align: middle;
  text-transform: uppercase;
  font-size: 1.2rem;
  opacity: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition-property: all 0.3s ease;
}

.hoverfx .figure a:hover {
  background: #e9e9e9;
  color: #333;
}

.hoverfx .overlay {
  position: absolute;
  top: 0;
  z-index: 1;
  padding: 50%;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition-property: all 0.3s ease;
}

.card-image:hover .figure a,
.card-image:hover .overlay {
  opacity: 1;
}

/* masonry / gallery styles — BS4 .card-columns removed in BS5
------------------------------------------------------- */
.card-columns {
  column-count: 3;
  column-gap: 1.25rem;
  orphans: 1;
  widows: 1;
}

.card-columns .card {
  display: inline-block;
  width: 100%;
  margin-bottom: 12px;
  break-inside: avoid;
  border-radius: 4px;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
}

.card-columns .card img {
  border-radius: 3px;
}

/* Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */

@media (min-width: 768px) {
  .card-columns {
    column-count: 4;
  }
}

/* Large devices (desktops, 992px and up) */

@media (min-width: 992px) {
  .card-columns {
    column-count: 4;
  }
}

/* Extra large devices (large desktops, 1200px and up) */

@media (min-width: 1200px) {
  .card-columns {
    column-count: 5;
  }
}

/* Video
------------------------------------------------------- */
#bgvideo-wrap {
  height: 0;
  width: 100%;
  overflow: hidden;
  position: relative;
  /*     padding-bottom: 46.25%; */
  padding-bottom: 30.25%;
  /* 16/9 format */
  display: block;
}

#bgvideo-wrap video {
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}

/* start ie video fix */

/*----MS Edge Browser CSS----*/
@supports (display: -ms-grid) {
  #bgvideo-wrap {
    padding-bottom: 67% !important;
  }
  #bgvideo-wrap video {
    transform: translate(0%, -10%) !important;
  }
}
/*----MS IE12 and IE13 Browser CSS----*/
@supports (-ms-accelerator: true) {
  #bgvideo-wrap {
    padding-bottom: 67% !important;
  }
  #bgvideo-wrap video {
    transform: translate(0%, -10%) !important;
  }
}
/*----MS IE10 and IE11 Browser CSS----*/
@media all and (-ms-high-contrast: none) {
  #bgvideo-wrap {
    padding-bottom: 67% !important;
  }
  #bgvideo-wrap video {
    transform: translate(0%, -10%) !important;
  }
}

/* end ie video fix */

#bgvideo-wrap .bgvideo-overlay {
  height: 100%;
  width: 100%;
  opacity: 0.7;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background: -webkit-linear-gradient(180deg, #0d72b9, #021f4c);
  background: linear-gradient(100deg, #0d72b9, #021f4c);
}

#bgvideo-wrap .titlevideo-overlay {
  background: rgba(0, 0, 0, 0);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 3;
}

#bgvideo-wrap .titlevideo-wrap {
  right: 100px;
  position: absolute;
}

#bgvideo-wrap .titlevideo-wrap h3 {
  font-size: 30px;
  font-style: italic;
  padding: 25px;
  font-weight: bold;
  position: relative;
  display: inline-block;
  padding: 10px 30px 8px 30px;
  height: 100px;
  background: rgba(17, 114, 211, 0.8);
  line-height: 80px;
  margin-bottom: 20px;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.9);
  color: #fff;
}

#bgvideo-wrap .titlevideo-wrap h3:before {
  content: '';
  width: 0;
  height: 0;
  border-top: 100px solid transparent;
  /* 	border-bottom: 100px solid transparent; */
  border-right: 60px solid rgba(17, 114, 211, 0.8);
  position: absolute;
  left: -60px;
  top: 0px;
}

#bgvideo-wrap .titlevideo-wrap h3:after {
  content: '';
  width: 0;
  height: 0;
  /* 	border-top: 38px solid transparent; */
  border-bottom: 100px solid transparent;
  border-left: 60px solid rgba(17, 114, 211, 0.8);
  position: absolute;
  right: -60px;
  top: 0px;
}

@media (max-width: 767px) {
  #bgvideo-wrap {
    padding-bottom: 56.25%;
    /* 16/9 format */
  }
  #bgvideo-wrap .titlevideo-wrap h3 {
    font-size: 20px;
  }
}

.card.videobg {
  background: rgba(255, 255, 255, 0.1);
}

/* recaptcha styles
------------------------------------------------------- */

/* already defined in bootstrap4 */

.text-xs-center {
  text-align: center;
}

.wpcf7-form-control-wrap {
  position: relative;
  text-align: center;
}

div.wpcf7-spam-blocked {
  border: 2px solid #350207;
  background: #350207;
  color: #fff;
}
.g-recaptcha {
  display: inline-block;
}

/* form styles
------------------------------------------------------- */
/*search form*/
.has-success .form-control {
  border-color: #350207;
}

input.wpcf7-not-valid {
  border-color: #350207;
}

/*input.wpcf7-not-valid.form-control::placeholder {
color: red;
opacity: 1;
}*/

div.wpcf7-response-output.wpcf7-validation-errors {
  background: #350207;
  border: none;
}

div.wpcf7-response-output.wpcf7-mail-sent-ok {
  background: #00c851;
  border: none;
}

div.wpcf7-response-output {
  margin: 0.5em;
  padding: 0.5em;
}

form.wpcf7-form .card .form-header h3 {
  margin: 0;
  padding: 1rem;
}

/* Custom CF7 Loader */

div.wpcf7 .ajax-loader {
  background-image: url('/wp-content/uploads/ajax-loader.gif');
  width: 24px;
  height: 24px;
  margin-left: 10px;
  position: relative;
  right: -14px;
}

.wpcf7-submit {
  position: relative;
  right: -14px;
}

/* nav styles
------------------------------------------------------- */

/* .navbar-brand img {
    width: 350px;
} */
nav .navbar-brand img {
  width: 220px;
}

#topnav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

#topnav li.menu-item {
  list-style: one;
  margin-left: 15px;
  display: inline-block;
}

#topnav {
  /*     background-color: #350207; */
  color: #ffffff;
}

#topnav #menu-top-nav {
  margin-right: 1rem;
}

#topnav.navbar {
  border: 0 none;
  border-radius: 0;
  box-shadow: none;
  padding: 10px 0;
  margin-bottom: 0;
}

#topnav #menu-top-nav a {
  color: #fff;
  text-decoration: none;
}

#topnav ul.social-icons a {
  color: #fff;
  text-decoration: none;
}

#topnav ul.social-icons a i,
#topnav ul.social-icons a:hover i,
#topnav ul.social-icons a:focus i {
  color: inherit;
}

#topnav .topnavright {
  margin-left: 20px;
}

#topnav .navbar-toggler-right {
  line-height: 64px;
  position: absolute;
  right: 1rem;
}
#topnav.navbar.navbar-success {
  /*background-color: #350207;*/
  background-color: #506775;
  color: #ffffff;
}
#topnav.navbar {
  border: 0 none;
  border-radius: 0;
  box-shadow: none;
  padding: 10px 0;
  margin-bottom: 0;
}
#topnav #menu-top-nav a {
  color: white;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  text-shadow: none;
  font-family: Roboto, sans-serif;
  text-decoration: none;
}
/* topnav icons */
#topnav li.fa::before {
  margin-right: 5px;
}
#topnav ul {
  margin: 0;
  padding: 0;
}

/* button styles
------------------------------------------------------- */

.btn.btn-primary,
.btn.btn-primary:hover,
.btn.btn-primary:focus,
.btn.btn-primary:active,
.btn.btn-primary.active,
.btn.btn-primary:active:focus,
.btn.btn-primary:active:hover,
.btn.btn-primary.active:focus,
.btn.btn-primary.active:hover,
.open > .btn.btn-primary.dropdown-toggle,
.open > .btn.btn-primary.dropdown-toggle:focus,
.open > .btn.btn-primary.dropdown-toggle:hover,
.navbar .navbar-nav > li > a.btn.btn-primary,
.navbar .navbar-nav > li > a.btn.btn-primary:hover,
.navbar .navbar-nav > li > a.btn.btn-primary:focus,
.navbar .navbar-nav > li > a.btn.btn-primary:active,
.navbar .navbar-nav > li > a.btn.btn-primary.active,
.navbar .navbar-nav > li > a.btn.btn-primary:active:focus,
.navbar .navbar-nav > li > a.btn.btn-primary:active:hover,
.navbar .navbar-nav > li > a.btn.btn-primary.active:focus,
.navbar .navbar-nav > li > a.btn.btn-primary.active:hover,
.open > .navbar .navbar-nav > li > a.btn.btn-primary.dropdown-toggle,
.open > .navbar .navbar-nav > li > a.btn.btn-primary.dropdown-toggle:focus,
.open > .navbar .navbar-nav > li > a.btn.btn-primary.dropdown-toggle:hover {
  background-color: #350207;
  color: #ffffff;
}

/* owl-carousel styles
------------------------------------------------------- */

/*#owl-carousel-slideshow .owl-text {
background: rgba(0, 0, 0, 0.5);
bottom: 40px;
color: #fff;
padding: 20px;
position: absolute;
right: 80px;
width: 30%;
z-index: 1;
}*/

#owl-carousel-slideshow .owl-text {
  background: rgb(0, 0, 0) none repeat scroll 0 0;
  bottom: 0;
  color: #fff;
  padding: 15px;
  position: relative;
  right: 0;
  width: 100%;
  z-index: 1;
}

#owl-carousel-slideshow .owl-prev {
  left: 0px;
  position: absolute;
  top: 50%;
  z-index: 1;
}

#owl-carousel-slideshow .owl-next {
  right: 0px;
  position: absolute;
  top: 50%;
  z-index: 1;
}

/*#owl-carousel-slideshow .owl-dots {
bottom: 30px;
position: absolute;
width: 100%;
z-index: 1;
}*/

#owl-carousel-slideshow .owl-carousel {
  margin-top: 0;
}

#owl-carousel-slideshow.owl-theme .owl-nav [class*='owl-'] {
  background: rgba(0, 0, 0, 0.3) !important;
  border-radius: 3px;
  color: #fff !important;
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  margin: 5px;
  padding: 5px 5px 0;
}

#owl-carousel-slideshow.owl-theme .owl-nav [class*='owl-']:hover {
  background: rgba(0, 0, 0, 0.8) !important;
  border-radius: 3px;
  color: #fff !important;
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  margin: 5px;
  padding: 5px 5px 0;
}

#owl-carousel-slideshow .material-icons {
  font-size: 40px;
}

/*home carousels*/

#owl-carousel-sproducts .card-block p,
#owl-carousel-soffers .card-block p,
#owl-carousel-fproject .card-block p,
#owl-carousel-video .card-block p,
#owl-carousel-soffers-page .card-block p {
  margin: 0;
}

#owl-carousel-sproducts h3,
#owl-carousel-soffers h3,
#owl-carousel-fproject h3,
#owl-carousel-video h3,
#owl-carousel-soffers-page h3 {
  margin: 0;
}

#owl-carousel-sproducts .owl-carousel,
#owl-carousel-soffers .owl-carousel,
#owl-carousel-fproject .owl-carousel,
#owl-carousel-video .owl-carousel,
#owl-carousel-soffers-page .owl-carousel {
  margin-top: 10px;
}

#owl-carousel-sproducts,
#owl-carousel-soffers,
#owl-carousel-fproject,
#owl-carousel-video,
#owl-carousel-soffers-page {
  margin-bottom: 50px;
}

#owl-carousel-sproducts h3.sproducts,
#owl-carousel-soffers h3.sproducts,
#owl-carousel-fproject h3.sproducts,
#owl-carousel-video h3.sproducts,
#owl-carousel-soffers-page h3.sproducts {
  margin: 0;
  padding: 0;
}

#owl-carousel-sproducts .owl-item.card,
#owl-carousel-soffers .owl-item.card,
#owl-carousel-fproject .owl-item.card,
#owl-carousel-video .owl-item.card,
#owl-carousel-soffers-page .owl-item.card {
  background: #f1f1f1;
}

#owl-carousel-sproducts .btn-success,
#owl-carousel-soffers .btn-success,
#owl-carousel-fproject .btn-success,
#owl-carousel-video .btn-success,
#owl-carousel-soffers-page .btn-success {
  background: #00c851 !important;
}

#customNavSP.owl-nav [class*='owl-'],
#customNavSO.owl-nav [class*='owl-'],
#customNavFP.owl-nav [class*='owl-'],
#customNavVideo.owl-nav [class*='owl-'],
#owl-carousel-soffers-page.owl-nav [class*='owl-'] {
  /*background: #d6d6d6;*/
  background: none;
  border-radius: 3px;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  margin: 0;
  padding: 5px 5px 0;
}

#customNavSP.owl-nav,
#customNavSO.owl-nav,
#customNavFP.owl-nav,
#customNavVideo.owl-nav,
#owl-carousel-soffers-page.owl-nav {
  margin-top: 0;
}

/*add spacer between title and card image*/

.owl-theme {
  margin-bottom: 5px;
}

#owl-carousel-video .item-video {
  height: 300px;
}

.owl-theme .owl-nav .disabled {
  cursor: default;
  opacity: 0.2;
}

/*#owl-carousel-video.owl-carousel  {width:90%; margin: 0 auto;}
#owl-carousel-video.owl-carousel img{width:100%;height:auto;}
*/

/* blog styles
------------------------------------------------------- */

#blog.post-summary .card {
  background: #f1f1f1;
  margin-bottom: 20px;
  border: none;
}

#blog .card .card-title a {
  color: #350207;
  transition: 0.4s;
}

#blog.post-summary .col-sm-3 {
  padding-right: 0;
}

#blog.post-summary h5.date {
  background: #350207 none repeat scroll 0 0;
  color: #fff;
  margin: 0;
  padding: 3px;
  text-align: center;
  font-size: 0.75rem;
}

#blog.post-summary h3.date {
  background: #fff none repeat scroll 0 0;
  margin: 0;
  padding: 5px;
  text-align: center;
  color: #350207;
}

/*featured project on homepage */

#blog.post-featured .card {
  background: #f1f1f1;
  margin-bottom: 20px;
}

section.entry-content img {
  margin-bottom: 30px;
}

/* footer styles
------------------------------------------------------- */

footer {
  color: #ffffff;
  padding: 50px 0;
  margin-top: 50px;
}

footer#footer.p-0 {
  padding: 0 !important;
}

footer h3 {
  margin: 0 0 10px 0;
}

footer .copyright,
footer .websiteby,
footer .websiteby a,
footer .websiteby a:hover,
footer .websiteby a:focus {
  text-align: center;
  /*     font-size: 12px; */
  color: #fff;
}

footer .show > .dropdown-menu {
  display: block;
  position: relative;
  width: 100%;
}

footer #signupform {
  margin: 30px 0 0;
}

footer .dropdown a {
  margin: 0 0 10px;
  text-align: left;
}

footer .show > .dropdown-menu {
  margin: 0 0 10px;
}

.footer-bottom {
  margin: 20px 0 0 0;
}

.footer-top .content {
  margin: auto;
  position: absolute;
  top: 50%;
  right: 0;
}
/* footer signup form styles
------------------------------------------------------- */

footer #signupform span {
  color: #292b2c;
}

footer #signupform span.wpcf7-list-item.last {
  display: inline-block;
  margin: 0 0 0 1em;
}

footer #signupform span.wpcf7-list-item.first {
  display: inline-block;
  margin: 0;
}

footer .form-header i.fa {
  top: -20px;
  position: absolute;
  background: #350207 !important;
  border-radius: 100px;
  padding: 5px;
  margin: 0 auto;
  left: 0;
  right: 0;
  width: 40px;
  color: #fff;
}

/*// Small devices (landscape phones, 576px and up)*/

@media (min-width: 576px) {
  /*     nav.navbar {
        background: #fff;
    } */
  /* hamburger icon*/
  /*     nav.navbar.navbar-light .navbar-toggler-icon {
        background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox=\'0 0 32 32\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Cpath stroke=\'rgba(0, 0, 0, 0.9)\' stroke-width=\'2\' stroke-linecap=\'round\' stroke-miterlimit=\'10\' d=\'M4 8h24M4 16h24M4 24h24\'/%3E%3C/svg%3E");
    } */
}

/*// Medium devices (tablets, 768px and up)*/

@media (min-width: 768px) {
}

/* mobile nav */

/*navigation styles*/

@media (max-width: 991px) {
  #dropdownMenuLink.green {
    background-color: #6b8391 !important;
  }

  /* mobile adjustments
------------------------------------------------------- */

  .owl-item {
    background: #f6f6f6;
  }

  /* nav.navbar .navbar-brand img {
    width: 50%;
} */

  /* //end mobile adjustments */

  #owl-carousel-slideshow h2 {
    font-size: 1.5rem;
    margin: 0 0 5px;
  }
  .container {
    max-width: 100%;
    width: 100%;
  }
  /*     nav.navbar {
        background: #350207;
        background: #fff;
        padding: 1rem;
    } */
  /*nav .navbar-brand {
width: 150px;
}*/

  /*     nav .custom-toggler.navbar-toggler {
        border-color: rgb(79,51,50);
    }
    nav .custom-toggler .navbar-toggler-icon {
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(212,96,47, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
    } */

  nav.navbar .dropdown-menu {
    padding: 0;
    position: relative;
    width: 100%;
  }
  nav .navbar-nav .nav-link {
    padding-left: 10px;
    padding-right: 10px;
  }
  nav .dropdown-item.active,
  nav .dropdown-item:active {
    /*background-color: #350207;*/
    color: #350207 !important;
    text-decoration: none;
    background: none;
  }
  nav .show > .dropdown-menu {
    display: block;
    position: relative !important;
    width: 100%;
    top: inherit;
    margin: 0 0 10px 0;
  }
  nav.navbar .nav-item a {
    /*border-top: 1px solid #eee;*/
  }
  .navbar.navbar-light .nav-item.active {
    background-color: #f7f7f9;
  }
  nav.navbar .navbar-nav {
    /*border-bottom: 1px solid #eee;*/
    margin: 10px 0 0;
    /*background: #f7f7f7;*/
    background: none;
  }
  nav.navbar .nav-link {
    background: #757575;
    color: #fff !important;
    margin: 0 0 1px;
  }
  nav.navbar .menu-item a,
  nav.navbar .menu-item.show a {
    /*background: #350207;*/
    /*color: #fff !important;*/
    outline: 0 none;
  }
  /* search form */
  nav.navbar form input {
    height: 1rem;
    margin: 0;
  }
  nav.navbar form .form-group {
    width: 100%;
  }
  nav.navbar .form-inline .form-group {
    margin-right: 0;
  }
  nav.navbar .form-inline .form-control {
    display: inline-block;
    vertical-align: middle;
    width: 100%;
  }
  .navbar-light form .form-control {
    color: #fff;
  }
  .navbar-light form .form-control:-moz-placeholder {
    color: #ccc !important;
  }
  .navbar-light form .form-control::-moz-placeholder {
    color: #ccc !important;
  }
  .navbar-light form .form-control::placeholder {
    color: #ccc !important;
  }
  nav.navbar form.search-form {
    margin: 10px 0;
  }
  input[type='date']:focus:not([readonly]),
  input[type='datetime-local']:focus:not([readonly]),
  input[type='email']:focus:not([readonly]),
  input[type='number']:focus:not([readonly]),
  input[type='password']:focus:not([readonly]),
  input[type='search-md']:focus:not([readonly]),
  input[type='search']:focus:not([readonly]),
  input[type='tel']:focus:not([readonly]),
  input[type='text']:focus:not([readonly]),
  input[type='time']:focus:not([readonly]),
  input[type='url']:focus:not([readonly]),
  textarea.md-textarea:focus:not([readonly]) {
    border-bottom: 1px solid #4285f4;
    box-shadow: 0 1px 0 0 #4285f4;
  }
  /* hamburger icon*/
  /*     nav.navbar.navbar-light .navbar-toggler-icon {
        background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox=\'0 0 32 32\' xmlns=\'http://www.w3.org/2000/svg\'%3E%3Cpath stroke=\'rgba(255, 255, 255, 0.9)\' stroke-width=\'2\' stroke-linecap=\'round\' stroke-miterlimit=\'10\' d=\'M4 8h24M4 16h24M4 24h24\'/%3E%3C/svg%3E");
    } */
  /* end mobile nav*/
}

/*// Large devices (desktops, 992px and up)*/

@media (min-width: 992px) {
  /*footer*/
  footer .copyright {
    text-align: left;
  }
  footer .websiteby {
    text-align: right;
  }
  footer .dropdown-menu {
    display: block;
    margin: 0 0 10px;
    padding: 0;
    position: relative;
    width: 100%;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: none;
    background-color: rgba(0, 0, 0, 0);
  }
  footer .dropdown-item {
    background: none;
    border: 0 none;
    clear: both;
    color: #ccc;
    display: block;
    /*         font-size: 13px; */
    font-weight: 400;
    margin: 0 0 5px;
    padding: 0;
    text-align: inherit;
    white-space: normal;
    width: 100%;
  }
  footer .dropdown-item:focus,
  footer .dropdown-item:hover {
    background: none;
    color: #fff;
  }
  footer .dropdown a.btn {
    background-color: rgba(0, 0, 0, 0) !important;
    box-shadow: none;
    font-size: 20px;
    margin: 0 0 5px;
    padding: 0;
    text-align: left;
    color: #fff;
  }
  footer .dropdown {
    margin: 0 0 10px;
  }
  /*footer .show > .dropdown-menu{
margin: 0;
}*/
  footer .dropdown-toggle::after {
    border-left: none;
    border-right: none;
    border-top: none;
  }
  footer #signupform {
    margin: 0;
  }
  footer .dropdown a {
    margin: 0;
    text-align: left;
  }
  .h3,
  h3 {
    font-size: 1.5rem;
  }
  .h4,
  h4 {
    font-size: 1.125rem;
  }
  /* remove shadow .flat */
  .card-panel.flat,
  .card.flat,
  nav.flat,
  .flat {
    box-shadow: none;
  }
  footer .dropdown a,
  footer .dropdown a:hover {
    color: #fff;
  }

  footer .copyright a,
  footer .copyright a:hover,
  footer .copyright a:focus {
    color: #fff;
  }
  /* nav styles
------------------------------------------------------- */
  nav .navbar-brand {
    width: auto;
  }
  nav.navbar .nav-item a {
    border-top: none;
  }
  nav.navbar .navbar-nav {
    border-bottom: none;
    background: none;
  }
  nav .show > .dropdown-menu {
    width: auto;
  }
  nav form.search-form {
    margin: 0;
  }
  nav .dropdown-item.active,
  nav .dropdown-item:active,
  nav .dropdown-item.active:hover,
  nav .dropdown-item.active:focus {
    background-color: #f7f7f9;
    color: #350207 !important;
    text-decoration: none;
  }
  nav .nav-link {
    font-size: 20px;
  }
  .navbar-toggleable-md .navbar-nav .nav-link {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
  nav.bg-faded {
    background-color: #fff;
  }
  nav .navbar-brand {
    display: inline-block;
    font-size: 1.25rem;
    line-height: inherit;
    margin-right: 1rem;
    padding-bottom: 1rem;
    padding-top: 1rem;
    white-space: nowrap;
  }
  nav .navbar-brand {
    display: inline-block;
    font-size: 1.25rem;
    line-height: inherit;
    margin-right: 1rem;
    margin-left: 0;
    padding-bottom: 1rem;
    padding-top: 1rem;
    white-space: nowrap;
    width: auto;
  }
  nav .form-inline .form-group {
    margin-right: 0;
  }
  header {
    position: relative;
    z-index: 2;
  }
  .navbar {
    border: 0 none;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
  }
  /* for wp navwalker */
  .dropdown-submenu {
    position: relative;
  }
  .dropdown-submenu > .dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: 0px;
    margin-left: -1px;
    -webkit-border-radius: 0 6px 6px 6px;
    -moz-border-radius: 0 6px 6px;
    border-radius: 0 6px 6px 6px;
  }
  .dropdown-submenu:hover > .dropdown-menu {
    display: block;
  }
  .menu-item-has-children.dropdown-submenu > a:after {
    display: block;
    content: ' ';
    float: right;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-left-color: #ccc;
    margin-top: 5px;
    margin-right: -10px;
  }
  .menu-item-has-children.dropdown-submenu:hover > a:after {
    border-left-color: #bbb;
  }
  .dropdown-submenu.pull-left {
    float: none;
  }
  .dropdown-submenu.pull-left > .dropdown-menu {
    left: -100%;
    margin-left: 10px;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  .navbar.navbar-light .breadcrumb .dropdown-menu a,
  .navbar.navbar-light .nav-item .dropdown-menu a {
    color: #000;
    padding: 5px 10px 5px 10px;
  }
  /* on show */
  .navbar.navbar-light .breadcrumb.show,
  .navbar.navbar-light .nav-item.show {
    background-color: #350207;
  }
  /* on show */
  .navbar.navbar-light .breadcrumb.show .nav-item .nav-link,
  .navbar.navbar-light .navbar-nav .nav-item.show .nav-link {
    color: #fff;
    transition: 0.35s;
  }

  nav li.nav-item.show a.nav-link,
  nav li.nav-item.show a.nav-link:hover,
  nav li.nav-item.show a.nav-link:focus {
    color: #fff;
  }
  /*side navigation — prod: dark links at lg+, blue below */
  #sidenav .menu-item a,
  #sidenav .menu-item a:hover,
  #sidenav .menu-item a:focus {
    color: #292b2c;
    display: block;
    padding: 6px 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    text-decoration: none;
    font-weight: 300;
  }
  #sidenav li.current-menu-item > a,
  #sidenav li.current_page_item > a,
  #sidenav a[aria-current="page"] {
    color: #292b2c !important;
    font-weight: 700;
  }
  /* button styles
------------------------------------------------------- */
  .btn.btn-primary,
  .btn.btn-primary:hover,
  .btn.btn-primary:focus,
  .btn.btn-primary:active,
  .btn.btn-primary.active,
  .btn.btn-primary:active:focus,
  .btn.btn-primary:active:hover,
  .btn.btn-primary.active:focus,
  .btn.btn-primary.active:hover,
  .open > .btn.btn-primary.dropdown-toggle,
  .open > .btn.btn-primary.dropdown-toggle:focus,
  .open > .btn.btn-primary.dropdown-toggle:hover,
  .navbar .navbar-nav > li > a.btn.btn-primary,
  .navbar .navbar-nav > li > a.btn.btn-primary:hover,
  .navbar .navbar-nav > li > a.btn.btn-primary:focus,
  .navbar .navbar-nav > li > a.btn.btn-primary:active,
  .navbar .navbar-nav > li > a.btn.btn-primary.active,
  .navbar .navbar-nav > li > a.btn.btn-primary:active:focus,
  .navbar .navbar-nav > li > a.btn.btn-primary:active:hover,
  .navbar .navbar-nav > li > a.btn.btn-primary.active:focus,
  .navbar .navbar-nav > li > a.btn.btn-primary.active:hover,
  .open > .navbar .navbar-nav > li > a.btn.btn-primary.dropdown-toggle,
  .open > .navbar .navbar-nav > li > a.btn.btn-primary.dropdown-toggle:focus,
  .open > .navbar .navbar-nav > li > a.btn.btn-primary.dropdown-toggle:hover {
    background-color: #350207;
    color: #ffffff;
  }
  .btn {
    margin: 0;
  }
  /* owl-carousel styles
------------------------------------------------------- */
  .facetwp-template {
    margin: 0 0 30px 0;
  }
  #owl-carousel-slideshow h2 {
    margin: 0 0 10px 0;
    font-size: 2rem;
  }
  #owl-carousel-slideshow .owl-text {
    background: rgba(75, 75, 75, 0.5);
    bottom: 40px;
    color: #fff;
    padding: 20px;
    position: absolute;
    right: 80px;
    width: 30%;
    z-index: 1;
    height: auto;
    border-radius: 3px;
  }
  #owl-carousel-slideshow .owl-prev {
    left: 0px;
    position: absolute;
    top: 50%;
    z-index: 1;
  }
  #owl-carousel-slideshow .owl-next {
    right: 0px;
    position: absolute;
    top: 50%;
    z-index: 1;
  }
  #owl-carousel-slideshow .owl-dots {
    bottom: 30px;
    position: absolute;
    width: 100%;
    z-index: 1;
  }
  #owl-carousel-slideshow .owl-carousel {
    margin-top: 0;
  }
  #owl-carousel-slideshow.owl-theme .owl-nav [class*='owl-'] {
    background: rgba(75, 75, 75, 0.3) !important;
    border-radius: 3px;
    color: #fff !important;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    margin: 5px;
    padding: 5px 5px 0;
  }
  #owl-carousel-slideshow.owl-theme .owl-nav [class*='owl-']:hover {
    background: rgba(75, 75, 75, 0.8) !important;
    border-radius: 3px;
    color: #fff !important;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    margin: 5px;
    padding: 5px 5px 0;
  }
  #owl-carousel-slideshow .material-icons {
    font-size: 40px;
  }
  /*home carousels*/
  #owl-carousel-sproducts .card-block p,
  #owl-carousel-soffers .card-block p,
  #owl-carousel-fproject .card-block p,
  #owl-carousel-video .card-block p,
  #owl-carousel-soffers-page .card-block p {
    margin: 0;
  }
  #owl-carousel-sproducts .card-block h4,
  #owl-carousel-soffers .card-block h4,
  #owl-carousel-fproject .card-block h4,
  #owl-carousel-video .card-block h4,
  #owl-carousel-soffers-page .card-block h4 {
    margin: 0 0 0.75rem 0;
  }
  #owl-carousel-sproducts h3,
  #owl-carousel-soffers h3,
  #owl-carousel-fproject h3,
  #owl-carousel-video h3,
  #owl-carousel-soffers-page h3 {
    margin: 0 0 0.75rem 0;
  }
  #owl-carousel-sproducts .owl-carousel,
  #owl-carousel-soffers .owl-carousel,
  #owl-carousel-fproject .owl-carousel,
  #owl-carousel-video .owl-carousel,
  #owl-carousel-soffers-page .owl-carousel {
    margin-top: 10px;
  }
  #owl-carousel-sproducts,
  #owl-carousel-soffers,
  #owl-carousel-fproject,
  #owl-carousel-video,
  #owl-carousel-soffers-page {
    margin-bottom: 50px;
  }
  #owl-carousel-sproducts h3.sproducts,
  #owl-carousel-soffers h3.sproducts,
  #owl-carousel-fproject h3.sproducts,
  #owl-carousel-video h3.sproducts,
  #owl-carousel-soffers-page h3.sproducts {
    margin: 0;
    padding: 0;
  }
  #owl-carousel-sproducts .owl-item.card,
  #owl-carousel-soffers .owl-item.card,
  #owl-carousel-fproject .owl-item.card,
  #owl-carousel-video .owl-item.card,
  #owl-carousel-soffers-page .owl-item.card {
    background: #f1f1f1;
  }
  #owl-carousel-sproducts .btn-success,
  #owl-carousel-soffers .btn-success,
  #owl-carousel-fproject .btn-success,
  #owl-carousel-video .btn-success,
  #owl-carousel-soffers-page .btn-success {
    background: #00c851 !important;
  }
  #customNavSP.owl-nav [class*='owl-'],
  #customNavSO.owl-nav [class*='owl-'],
  #customNavFP.owl-nav [class*='owl-'],
  #customNavVideo.owl-nav [class*='owl-'],
  #owl-carousel-soffers-page.owl-nav [class*='owl-'] {
    /*background: #d6d6d6;*/
    background: none;
    border-radius: 3px;
    color: #000;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    margin: 0;
    padding: 5px 5px 0;
  }
  #customNavSP.owl-nav,
  #customNavSO.owl-nav,
  #customNavFP.owl-nav,
  #customNavVideo.owl-nav,
  #owl-carousel-soffers-page.owl-nav {
    margin-top: 0;
  }
  /*add spacer between title and card image*/
  .owl-theme {
    margin-bottom: 5px;
  }
  #owl-carousel-video .item-video {
    height: 300px;
  }
  .owl-theme .owl-nav .disabled {
    cursor: default;
    opacity: 0.2;
  }
  /*#owl-carousel-video.owl-carousel  {width:90%; margin: 0 auto;}
#owl-carousel-video.owl-carousel img{width:100%;height:auto;}
*/
  /* blog styles
------------------------------------------------------- */
  #blog.post-summary .card {
    background: #f1f1f1;
    margin-bottom: 20px;
    border: none;
  }
  #blog.post-summary .col-sm-3 {
    padding-right: 0;
  }
  #blog.post-summary h5.date {
    background: #350207 none repeat scroll 0 0;
    color: #fff;
    margin: 0;
    padding: 3px;
    text-align: center;
  }
  #blog.post-summary h3.date {
    background: #fff none repeat scroll 0 0;
    margin: 0;
    padding: 5px;
    text-align: center;
    color: #350207;
  }
  #blog.post-summary h3.title {
    border-top: 1px solid #350207;
    margin: 0 0 20px;
    padding-top: 5px;
  }
  #blog.post-summary h4.card-title {
    margin: 0 0 10px;
  }
  /*featured project on homepage */
  #blog.post-featured .card {
    background: #f1f1f1;
    margin-bottom: 20px;
  }
  .blog-archive-list li a {
    color: #350207;
    display: block;
    padding: 6px 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
  }
  /* footer styles
------------------------------------------------------- */
  footer {
    color: #ffffff;
    padding: 60px 0;
    margin-top: 100px;
  }

  footer#footer.p-0 {
    padding: 0 !important;
    margin-top: 3rem;
  }
  /* //END Large devices
------------------------------------------------------- */
}

/*// Extra large devices (large desktops, 1200px and up)*/

@media (min-width: 1200px) {
  .container {
    max-width: 100%;
    width: 1280px;
  }

  #header .navbar-nav .nav-link {
    padding-left: 8px;
    padding-right: 8px;
  }
}

/* mobile app
------------------------------------------------------- */
#mobile-app-content .mobile-content-wrap {
  padding: 100px 150px;
  min-height: 300px;
}
#mobileapp .table th,
#mobileapp .table td {
  border-top: 1px solid #fff;
  line-height: 20px;
  padding: 8px;
  text-align: left;
  vertical-align: top;
  font-family: 'Roboto', sans-serif;
}

#mobileapp .label,
#mobileapp .badge {
  background-color: #fff;
  color: #000;
  display: inline-block;
  font-size: 20px;
  font-weight: normal;
  line-height: 20px;
  padding: 2px 4px;
  text-shadow: none;
  vertical-align: baseline;
  white-space: nowrap;
  font-family: 'Roboto', sans-serif;
}

#mobileapp .badge {
  border-radius: 20px;
  padding-left: 6px;
  padding-right: 6px;
  border: 1px solid #000;
}
#mobile-app-content h1 {
  font-weight: 300;
  font-family: 'Roboto', sans-serif;
  /*color: #350207;*/
  /*line-height:75px;
    font-size:80px;*/
  line-height: 60px;
  font-size: 50px;
  margin: 0px;
}
#mobile-app-content h2 {
  font-weight: 300;
  font-family: 'Roboto', sans-serif;
  color: #000;
  /*line-height:50px;
    font-size:50px;*/
  line-height: 45px;
  font-size: 35px;
  margin: 0px 0px 20px 0px;
}

/* responsive video */
.flex-video {
  position: relative;
  padding-top: 25px;
  padding-bottom: 67.5%;
  height: 0;
  margin-bottom: 16px;
  overflow: hidden;
}

.flex-video.widescreen {
  padding-bottom: 57.25%;
}
.flex-video.vimeo {
  padding-top: 0;
}

.flex-video iframe,
.flex-video object,
.flex-video embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media only screen and (max-device-width: 800px),
  only screen and (device-width: 1024px) and (device-height: 600px),
  only screen and (width: 1280px) and (orientation: landscape),
  only screen and (device-width: 800px),
  only screen and (max-width: 767px) {
  .flex-video {
    padding-top: 0;
  }
}

/* Bootstrap 5.3 compatibility — BS4 utility aliases in WP page content
------------------------------------------------------- */
.mr-0 { margin-right: 0 !important; }
.mr-1 { margin-right: 0.25rem !important; }
.mr-2 { margin-right: 0.5rem !important; }
.mr-3 { margin-right: 1rem !important; }
.mr-auto { margin-right: auto !important; }
.ml-0 { margin-left: 0 !important; }
.ml-1 { margin-left: 0.25rem !important; }
.ml-2 { margin-left: 0.5rem !important; }
.ml-3 { margin-left: 1rem !important; }
.ml-auto { margin-left: auto !important; }
.pr-0 { padding-right: 0 !important; }
.pr-1 { padding-right: 0.25rem !important; }
.pr-2 { padding-right: 0.5rem !important; }
.pr-3 { padding-right: 1rem !important; }
.pl-0 { padding-left: 0 !important; }
.pl-1 { padding-left: 0.25rem !important; }
.pl-2 { padding-left: 0.5rem !important; }
.pl-3 { padding-left: 1rem !important; }
.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.float-left { float: left !important; }
.float-right { float: right !important; }
.font-weight-bold { font-weight: 700 !important; }

/* MDB color utility parity (removed MDB CSS with BS5 upgrade)
------------------------------------------------------- */
.grey.lighten-4 {
  background-color: #f5f5f5 !important;
}
.grey.lighten-2 {
  background-color: #e0e0e0 !important;
}
.grey.darken-1 {
  background-color: #757575 !important;
}

/* Heading classes inside link-wrapped cards carry MDB's heading weight (500) on
   prod; the paragraphs beside them stay at the body weight of 300. */
.container a .h1,
.container a .h2,
.container a .h3,
.container a .h4,
.container a .h5,
.container a .h6 {
  font-weight: 500;
}

.text-dark {
  color: #212529 !important;
}

/* BS4 grid gutter parity — BS5 defaults to 24px; BS4 used 30px (15px per side)
------------------------------------------------------- */
:root {
  --bs-gutter-x: 30px;
  --bs-gutter-y: 0;
  --bs-font-sans-serif: "Roboto", sans-serif;
  --bs-body-font-family: "Roboto", sans-serif;
  --bs-body-font-weight: 300;
  --bs-body-color: #212529;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-text-align: left;
  --bs-primary: #350207;
  --bs-primary-rgb: 53, 2, 7;
  --bs-link-color: #007bff;
  --bs-link-hover-color: #0056b3;
  --bs-link-decoration: none;
  /* Prod: BS4 $border-radius .25rem for cards/inputs, MDB .125rem for buttons */
  --bs-btn-border-radius: 0.125rem;
  --bs-border-radius: 0.25rem;
}

/* BS4 gave every grid column position:relative; BS5 dropped it. Absolutely
   positioned children (footer career CTA) otherwise escape to the viewport.
------------------------------------------------------- */
.col,
.col-auto,
[class^="col-"],
[class*=" col-"] {
  position: relative;
}

/* BS4 reboot put a bottom margin on every label; BS5 moved it to .form-label
   only, which collapses the Gravity Forms label/field gap by 8px per field. */
label {
  margin-bottom: 0.5rem;
}

/* BS5 reboot narrows list indent to 2rem; BS4 left the 40px browser default,
   and the 8px of extra line width reflows service-page bullet lists. */
ol,
ul {
  padding-left: 40px;
}

/* BS5 reboot underlines all anchors — prod (BS4/MDB) had none by default */
#topnav,
#header,
#feature-cards,
#footer,
#sidenav,
.container {
  --bs-link-decoration: none;
}

/* Prod: body links are blue with no underline (nav/footer/buttons excluded below) */
.container a:not(.btn):not(.nav-link):not(.dropdown-item) {
  color: #007bff;
  text-decoration: none;
}

.container a:not(.btn):not(.nav-link):not(.dropdown-item):hover,
.container a:not(.btn):not(.nav-link):not(.dropdown-item):focus {
  color: #0056b3;
  text-decoration: none;
}

/* Top bar links + social icons — white on maroon, not body-link blue */
#topnav a,
#topnav a:hover,
#topnav a:focus,
#topnav #menu-top-nav a,
#topnav #menu-top-nav a:hover,
#topnav #menu-top-nav a:focus,
#topnav ul.social-icons a,
#topnav ul.social-icons a:hover,
#topnav ul.social-icons a:focus {
  color: #fff;
  text-decoration: none;
}

/* Utility icon colors win inside .container body links */
.container a i.text-gold,
a i.text-gold,
i.text-gold {
  color: #e59500 !important;
}

.container a i.text-white,
a i.text-white,
i.text-white {
  color: #fff !important;
}

/* Gold/maroon CTA cards — white links; must beat .container a:not(.btn) parity rule (4 classes) */
.container .card.gold a:not(.btn):not(.nav-link):not(.dropdown-item),
.container .card.gold a:not(.btn):not(.nav-link):not(.dropdown-item):hover,
.container .card.gold a:not(.btn):not(.nav-link):not(.dropdown-item):focus,
.container .card.maroon a:not(.btn):not(.nav-link):not(.dropdown-item),
.container .card.maroon a:not(.btn):not(.nav-link):not(.dropdown-item):hover,
.container .card.maroon a:not(.btn):not(.nav-link):not(.dropdown-item):focus,
.container .card.gold .card-body a.text-white,
.container .card.gold .card-body a.text-white:hover,
.container .card.gold .card-body a.text-white:focus,
.container .card.maroon .card-body a.text-white,
.container .card.maroon .card-body a.text-white:hover,
.container .card.maroon .card-body a.text-white:focus {
  color: #fff !important;
  text-decoration: none;
}

.container a i.text-maroon,
a i.text-maroon,
i.text-maroon {
  color: #350207 !important;
}

#header .navbar-nav .nav-link,
#header .navbar-nav .nav-link:hover,
#header .navbar-nav .nav-link:focus,
#header .dropdown-menu a,
#header .dropdown-menu a:hover,
#header .dropdown-menu a:focus,
nav.navbar .dropdown-menu .dropdown-item,
nav.navbar .dropdown-menu .dropdown-item:hover,
nav.navbar .dropdown-menu .dropdown-item:focus,
#sidenav a,
#sidenav a:hover,
#sidenav a:focus {
  text-decoration: none;
}

body.home h3.sproducts {
  margin-bottom: 0 !important;
}

#sidenav .menu-item a,
#sidenav .menu-item a:link,
#sidenav .menu-item a:hover,
#sidenav .menu-item a:focus {
  color: #007bff;
  text-decoration: none;
  font-weight: 300;
}

#sidenav li.current-menu-item > a,
#sidenav li.current_page_item > a,
#sidenav a[aria-current="page"],
#sidenav li.current-menu-item > a:hover,
#sidenav li.current_page_item > a:hover,
#sidenav a[aria-current="page"]:hover,
#sidenav li.current-menu-item > a:focus,
#sidenav li.current_page_item > a:focus,
#sidenav a[aria-current="page"]:focus {
  color: #007bff !important;
  font-weight: 700;
}

@media (min-width: 992px) {
  .container #sidenav .menu-item a,
  .container #sidenav .menu-item a:link,
  .container #sidenav .menu-item a:hover,
  .container #sidenav .menu-item a:focus {
    color: #292b2c;
    text-decoration: none;
    font-weight: 300;
  }

  .container #sidenav li.current-menu-item > a,
  .container #sidenav li.current_page_item > a,
  .container #sidenav a[aria-current="page"],
  .container #sidenav li.current-menu-item > a:hover,
  .container #sidenav li.current_page_item > a:hover,
  .container #sidenav a[aria-current="page"]:hover,
  .container #sidenav li.current-menu-item > a:focus,
  .container #sidenav li.current_page_item > a:focus,
  .container #sidenav a[aria-current="page"]:focus {
    color: #292b2c !important;
    font-weight: 700;
  }
}


#breadcrumbs a,
#breadcrumbs a:hover,
#breadcrumbs a:focus {
  color: #350207;
  text-decoration: none;
}

#feature-cards a,
#feature-cards a:hover,
#feature-cards a:focus,
footer#footer a,
footer#footer a:hover,
footer#footer a:focus,
footer#footer .copyright a,
footer#footer .copyright a:hover,
footer#footer .websiteby a,
footer#footer .websiteby a:hover,
a.btn,
a.btn:hover,
a.btn:focus,
.btn,
.btn:hover,
.btn:focus {
  text-decoration: none !important;
}

footer#footer .copyright,
footer#footer .copyright p,
footer#footer .websiteby,
footer#footer .websiteby a {
  color: #fff;
}

footer#footer .copyright a,
footer#footer .copyright a:hover,
footer#footer .copyright a:focus,
footer .copyright a,
footer .copyright a:hover,
footer .copyright a:focus {
  color: #007bff;
}

@media (min-width: 992px) {
  footer .copyright a,
  footer .copyright a:hover,
  footer .copyright a:focus,
  footer#footer .copyright a,
  footer#footer .copyright a:hover,
  footer#footer .copyright a:focus {
    color: #fff !important;
  }
}

.row {
  --bs-gutter-x: 30px;
}

body {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  color: #212529;
  text-align: left;
}

body p,
body li,
.card,
.card-body,
.card-text,
.entry-content,
.entry-content p {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  color: #212529;
}

h1,
h2,
h3,
h4,
h5,
h6,
.card-title {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  color: #212529;
}

h1.green-text,
.green-text {
  color: #350207 !important;
}

h4,
.card-title {
  margin-bottom: 1rem;
}

footer .footer-top h3 {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  #header .navbar-nav .nav-link {
    font-family: "Roboto", sans-serif;
    text-align: left;
    color: #000;
    font-weight: 300;
    text-decoration: none;
  }
}

#header .navbar-nav .nav-item.show > .nav-link,
#header .navbar-nav .nav-item.show > .dropdown-toggle,
#header .navbar-nav a.nav-link.show,
#header .navbar-nav a.dropdown-toggle.show {
  color: #fff !important;
  background-color: transparent;
}

#header .dropdown-menu .dropdown-item,
#header .nav-item .dropdown-menu a {
  color: #000;
  text-decoration: none;
}

#header .dropdown-menu .dropdown-item:hover,
#header .dropdown-menu .dropdown-item:focus,
#header .nav-item .dropdown-menu a:hover,
#header .nav-item .dropdown-menu a:focus {
  color: #350207;
  background-color: #f7f7f9;
  text-decoration: none;
}

@media (min-width: 992px) {
  #header .navbar-collapse {
    align-items: center;
    flex: 1 1 auto;
    display: flex !important;
  }

  /* Prod lets the menu column shrink to the space left by the search form so
     "Contact Us" wraps to a second row. min-width:0 defeats that and the menu
     overruns the search field instead. */
  #header .navbar-nav {
    flex-wrap: wrap;
  }

  #header nav.navbar .search-form.d-flex {
    flex: 0 1 auto;
    flex-wrap: wrap;
    position: relative;
    margin-left: auto;
    max-width: none;
    width: auto;
  }

  #header nav.navbar .search-form .form-control {
    color: #495057;
    background-color: transparent;
    border: 0;
    border-bottom: 1px solid #ced4da;
    border-radius: 0;
    box-shadow: none;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    height: auto;
    padding: 0.6rem 0 0.4rem;
    width: 181px;
    min-width: 0;
    max-width: none;
    /* MDB .md-form gave the input a bottom margin, which sets where the
       vertically-centred search field sits inside the navbar. */
    margin-bottom: 0.5rem;
  }

  #header nav.navbar .search-form .form-control::placeholder {
    color: #6c757d;
    opacity: 1;
  }

  #header .navbar-nav .nav-link {
    padding-left: 6px;
    padding-right: 6px;
    white-space: nowrap;
  }

  /* Prod MDB: active nav-link uses rgba(0,0,0,.1) — darker than #f7f7f9 */
  #header .navbar.navbar-light .nav-item.active:not(.show) {
    background-color: transparent;
  }

  #header .navbar-nav .nav-item.active:not(.show) > .nav-link,
  #header .navbar-nav .nav-item.active:not(.show) > .nav-link:hover,
  #header .navbar-nav .nav-item.active:not(.show) > .nav-link:focus,
  #header .navbar-nav .nav-link.active {
    color: #000 !important;
    font-weight: 300 !important;
    background-color: rgba(0, 0, 0, 0.1) !important;
  }

  #header .navbar-nav .nav-item {
    position: relative;
    z-index: 2;
  }
}

nav .navbar-brand img {
  width: 220px;
}

.btn-primary,
.btn.btn-primary {
  background-color: #350207;
  border-color: #350207;
  color: #fff;
  border-radius: 0.3rem;
}

/* MDB-era .btn sizing — BS5 default padding is much smaller than production */
.btn,
a.btn {
  font-size: 0.81rem;
  padding: 0.84rem 2.14rem;
  border: 0;
  border-radius: 0.125rem;
  margin: 0.375rem;
  text-transform: uppercase;
  white-space: normal !important;
  word-wrap: break-word;
  line-height: 1.5;
  font-weight: 400;
  text-decoration: none !important;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
}

/* BS4 .btn-block shim — gallery / careers CTAs span full column width on prod.
   MDB reset the .btn margin to inherit here, so the button picks up the
   surrounding <p> spacing instead of the .btn 6px box. */
.btn-block,
a.btn-block,
a.btn.btn-block {
  display: block;
  width: 100%;
  margin: inherit;
}

/* Prod drops the MDB button margin from the laptop breakpoint up */
@media (min-width: 992px) {
  .btn,
  a.btn {
    margin: 0;
  }
}

.btn:hover,
.btn:focus,
a.btn:hover,
a.btn:focus {
  text-decoration: none !important;
}

.btn.gold,
a.btn.gold {
  background-color: #e59500 !important;
  border-color: #e59500;
  color: #fff !important;
}

.btn.gold:hover,
.btn.gold:focus,
a.btn.gold:hover,
a.btn.gold:focus {
  background-color: #e59500 !important;
  border-color: #e59500;
  color: #fff !important;
}

.btn.maroon,
a.btn.maroon {
  background-color: #350207 !important;
  border-color: #350207;
  color: #fff !important;
}

.btn.maroon:hover,
.btn.maroon:focus,
a.btn.maroon:hover,
a.btn.maroon:focus {
  background-color: #350207 !important;
  border-color: #350207;
  color: #fff !important;
}

/* Gravity Forms submit keeps the form's own type scale on prod rather than the
   smaller MDB .btn scale — 16px against .81rem. Gravity Forms' legacy stylesheet
   raises the line-height to 2 at its own 641px breakpoint, so the desktop value
   is scoped above it rather than pinned everywhere. */
.gform_wrapper .gform_footer input[type="submit"],
.gform_wrapper .gform_footer input[type="submit"].btn {
  font-size: 16px;
  line-height: 2;
  border-radius: 0.125rem;
  padding: 0.84rem 2.14rem;
}

@media (min-width: 642px) {
  .gform_wrapper .gform_footer input[type="submit"],
  .gform_wrapper .gform_footer input[type="submit"].btn {
    line-height: 1.5;
  }
}

/* BS5 grew alert padding from .75rem 1.25rem to 1rem, adding 8px of height to
   every service page's notice block. */
.alert {
  padding: 0.75rem 1.25rem;
}

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl {
  padding-right: 15px;
  padding-left: 15px;
}

/* Footer career band + legal block parity
------------------------------------------------------- */
footer .footer-top.grey.darken-1 {
  background-color: #757575 !important;
  padding: 0;
}

footer .footer-top h3,
footer .footer-top h3.text-gold {
  margin-top: 0;
  margin-bottom: 10px;
}

/* Prod's `body.home h3 { margin: 0 }` outranks `footer h3` on the front page
   only, so the career band is 10px shorter there than everywhere else. */
body.home footer .footer-top h3,
body.home footer .footer-top h3.text-gold {
  margin-bottom: 0;
}

footer .footer-top p {
  margin-top: 0;
  margin-bottom: 1rem !important;
}

footer .footer-top .row.align-items-center {
  padding-top: 0;
  padding-bottom: 0;
}

footer .footer-top h3.text-gold {
  color: #e59500 !important;
}

footer .footer-top p,
footer .footer-top .text-white,
footer .footer-top .text-white p {
  color: #fff !important;
}

/* Prod anchors this against the grid column (BS4 columns are position:relative)
   with top:50% and no translate, so the button hangs below the column midline. */
footer .footer-top .content {
  margin: auto;
  position: absolute;
  top: 50%;
  right: 0;
}

footer .footer-bottom.maroon {
  background-color: #350207 !important;
}

footer .copyright,
footer .copyright p {
  color: #fff;
  font-size: inherit;
  font-weight: 300;
  line-height: 1.5;
  margin-bottom: 1rem;
}

footer .copyright p:last-child {
  margin-bottom: 1rem;
}

/* BS5 navbar mobile — match production: logo left, toggler right
------------------------------------------------------- */
@media (max-width: 991.98px) {
  nav.navbar > .container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
  }

  nav.navbar .navbar-brand {
    position: static;
    left: auto;
    transform: none;
    top: auto;
    margin: 0;
    padding-top: 5px;
    padding-bottom: 5px;
    text-align: left;
    flex: 0 1 auto;
  }

  nav.navbar .navbar-brand img {
    width: 220px;
    max-width: 60vw;
  }

  nav.navbar .navbar-toggler {
    margin-left: auto;
    z-index: 2;
    flex: 0 0 auto;
  }

  nav.navbar .navbar-collapse {
    flex-basis: 100%;
    width: 100%;
  }

  nav.navbar .search-form.d-flex {
    width: 100%;
    margin-top: 0.5rem;
  }

  #header .navbar-nav .nav-link,
  #header .navbar-nav .nav-link:hover,
  #header .navbar-nav .nav-link:focus,
  #header .navbar-nav .dropdown-toggle,
  nav.navbar .navbar-nav .nav-link {
    background: #757575 !important;
    color: #fff !important;
    margin: 0 0 1px;
  }

  #header .navbar-nav .nav-item.active > .nav-link,
  #header .navbar-nav .nav-item.active > .nav-link:hover,
  #header .navbar-nav .nav-item.active > .nav-link:focus,
  #header .navbar-nav .nav-link.active,
  #header .navbar-nav .nav-link.active:hover,
  #header .navbar-nav .nav-link.active:focus {
    color: #fff !important;
  }

  #header .navbar-toggler-icon,
  nav.navbar.navbar-light .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.9)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
  }

  #header .navbar-toggler,
  nav.navbar .navbar-toggler {
    border: 0 !important;
    box-shadow: none !important;
  }

  #header nav.navbar .search-form .form-control,
  nav.navbar .search-form.d-flex .form-control {
    color: #333;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  #header .navbar-nav .nav-item.show > .nav-link,
  #header .navbar-nav .nav-item.show > .dropdown-toggle,
  #header .navbar-nav a.nav-link.show,
  #header .navbar-nav a.dropdown-toggle.show {
    background: #757575 !important;
    color: #fff !important;
  }

  #header .dropdown-menu,
  #header .nav-item .dropdown-menu {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
    padding: 0 !important;
  }

  #header .dropdown-menu .dropdown-item,
  #header .nav-item .dropdown-menu a,
  #header .dropdown-menu a.dropdown-item,
  .navbar.navbar-light .nav-item .dropdown-menu a {
    font-family: "Roboto", sans-serif;
    font-weight: 300;
    font-size: 15px;
    line-height: 22.5px;
    padding: 10px !important;
  }

  #header .navbar-nav .nav-link,
  #header .navbar-nav .dropdown-toggle {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
}

@media (min-width: 992px) {
  .navbar-expand-lg .navbar-nav .nav-link,
  .navbar-expand-md .navbar-nav .nav-link,
  .navbar-toggleable-md .navbar-nav .nav-link {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }

  nav .nav-item.dropdown > .dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: auto;
    min-width: 100%;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 0;
    box-shadow: none;
  }

  .navbar.navbar-light .nav-item.show,
  .navbar.navbar-light .nav-item.dropdown:has(> .nav-link.show),
  .navbar.navbar-light .nav-item.dropdown:has(> .dropdown-toggle.show) {
    background-color: #350207;
  }

  nav li.nav-item.show a.nav-link,
  nav li.nav-item.show a.nav-link:hover,
  nav li.nav-item.show a.nav-link:focus,
  nav li.nav-item.dropdown:has(> a.show) > a.nav-link,
  nav li.nav-item.dropdown:has(> a.show) > a.nav-link:hover,
  nav li.nav-item.dropdown:has(> a.show) > a.nav-link:focus {
    color: #fff !important;
    background-color: transparent;
    text-decoration: none;
  }
}

/* BS5 _reboot.scss parity — beat plugin CSS loaded after child theme */
body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
  margin-top: 1.5rem;
  margin-bottom: 0.75rem !important;
}

body .btn,
body .btn-primary,
body .btn.btn-primary,
body .btn.gold,
body .btn.maroon {
  border-radius: 0.3rem !important;
}
