/*---------------------------------------------*/
/* Layout inicialisation */
/*---------------------------------------------*/

html {
	-webkit-font-smoothing: antialiased;
}

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


/*---------------------------------------------*/
/* Responsive padding */
/*---------------------------------------------*/

.rp-3 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.rp-t-3 {
  padding-top: 2rem;
}

.rp-b-3 {
  padding-bottom: 2rem;
}

.rp-4 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.rp-t-4 {
  padding-top: 3rem;
}

.rp-b-4 {
  padding-bottom: 3rem;
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {

  .rp-3 {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  
  .rp-t-3 {
    padding-top: 2rem;
  }
  
  .rp-b-3 {
    padding-bottom: 2rem;
  }

  .rp-4 {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  
  .rp-t-4 {
    padding-top: 3rem;
  }
  
  .rp-b-4 {
    padding-bottom: 3rem;
  }

}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {}




/*---------------------------------------------*/
/* Typography */
/*---------------------------------------------*/

/*** Anchors ***/

a {
  color: #cc6b1a;
  text-decoration: underline;
}

a:hover,
a:focus {
  color: #b45e17;
}

a.active {
	color: #b45e17;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a,
.h1 a, .h2 a, .h3 a, .h4 a, .h5 a, .h6 a {
	text-decoration: none;
}


/* Headings */

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	color: #333;
  font-weight: 700;
  text-transform: uppercase;
}

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

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

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

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

h5,
.h5 {
  
}

h6,
.h6 {
  
}


/* Overline */

.overline {
	text-transform: uppercase;
	font-weight: 600;
	color: #000;
	letter-spacing: 0.075em;
	font-size: 0.875rem;
}


/*** Paragraphs ***/

p {
	color: #333;
}

p.small {
	font-size: 0.875rem;
}

.lead {
	font-weight: 400;
	font-size: 1.25rem;
	color: #999;
}

.lead--large {
	font-size: 1.5rem;
}

.emphasis-text {
	font-size: 1.375rem;
	font-weight: 600;
	color: #000;
}

strong, b {
	font-weight: 700 !important;
}

.text-weight-semi-bold {
	font-weight: 600 !important;
}

.text-weight-light {
	font-weight: 300 !important;
}

.small, small {
    font-size: 90%;
}

.text-transform-none {
	text-transform: none !important;
}


/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
	
	.lead {
		font-size: 1.125rem;
	}

	.lead--large {
		font-size: 1.25rem;
	}
	
}


/*---------------------------------------------*/
/* WYSIWYG */
/*---------------------------------------------*/

.wysiwyg {
	
}

.wysiwyg ul {
	padding-left: 1.25rem;
	list-style: none;
}

.wysiwyg ul > li {
	position: relative;
}

.wysiwyg ul > li:before {
	content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    position: absolute;
    left: -0.875rem;
    top: 9px;
    background: #999;
}

.wysiwyg ul > li + li {
	margin-top: 0.25rem;
}

.wysiwyg ul > li > ul {
	margin-top: 0.5rem;
}

.wysiwyg ul > li > ul > li:before {
    background: #ccc;
}

.wysiwyg img {
	max-width: 100%;
    height: auto;
}

.wysiwyg .aligncenter {
	display: block;
	margin: auto;
}

.wysiwyg > *:last-child {
	margin-bottom: 0;
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
  .dont-collapase-on-desktop {
    display: block !important;
    height: auto !important;
    visibility: visible;
  }
}


/*---------------------------------------------*/
/* Forms & inputs */
/*---------------------------------------------*/

.form-control {
  height: calc(1.5em + 1.5rem + 2px);
  padding: .75rem .75rem;
  border-radius: 0;
}


/*---------------------------------------------*/
/* Forms validation */
/*---------------------------------------------*/

.has-feedback {
	position: relative;
}

.has-error .form-control {
  border-color: #e20500;
}

.has-error .form-control::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #e20500;
}
.has-error .form-control::-moz-placeholder { /* Firefox 19+ */
  color: #e20500;
}
.has-error .form-control:-ms-input-placeholder { /* IE 10+ */
  color: #e20500;
}
.has-error .form-control:-moz-placeholder { /* Firefox 18- */
  color: #e20500;
}


/*---------------------------------------------*/
/* Buttons */
/*---------------------------------------------*/

.btn {
	border: 2px solid transparent;
	font-size: 0.875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05rem;
	border-radius: 0;
  padding: 0.688rem 1.5rem 0.75rem;
  text-decoration: none;
}

.btn-icon {
  height: 1rem;
  vertical-align: -3px;
  fill: currentColor;
}

/* Primary button */

.btn-primary {
	color: #FFF;
	background: #e6791e;
}

.btn-primary:hover,
.btn-primary:focus {
	color: #fff;
  background-color: #c06418;
  border-color: #c06418;
}

.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {
  background-color: #9c5012;
  border-color: #9c5012;
}

/* Outline button */

.btn-outline {
	color: #111;
  background: transparent;
  border-color: #e6791e;
}

.btn-outline:hover,
.btn-outline:focus {
	color: #fff;
  background-color: #c06418;
  border-color: #c06418;
}

.btn-outline:not(:disabled):not(.disabled).active,
.btn-outline:not(:disabled):not(.disabled):active,
.show>.btn-outline.dropdown-toggle {
  background-color: #9c5012;
  border-color: #9c5012;
}


/*---------------------------------------------*/
/* Colors */
/*---------------------------------------------*/

/* Text colors */

.text-white {
	color: #ffffff;
}

.text-white-85 {
	color: rgba(255, 255, 255, 0.85);
}

.text-grey {
  color: #999;
}

.text-red,
.text-red a {
	color: #e20500 !important;
}

.text-orange {
  color: #e6791e;
}


/* Background colors */

.bg-light-grey {
	background: #f4f4f4;
}


/*---------------------------------------------*/
/* Responsive maps */
/*---------------------------------------------*/

.map-responsive{
  overflow:hidden;
  padding-bottom:56.25%;
  position:relative;
  height:0;
}
.map-responsive iframe{
  left:0;
  top:0;
  height:100%;
  width:100%;
  position:absolute;
}


/*---------------------------------------------*/
/* Heading */
/*---------------------------------------------*/

.main-header {
  background-color: #222;
}

.main-header-top {
  background-color: #111;
  padding: 0.25rem 1rem;
  transition: all .2s ease-in-out;
  overflow: hidden;
}

.main-header-top p {
  font-size: 0.875rem;
}

.main-header-top.no-top {
  transition: all 0.2s ease-in-out;
  padding: 0;
  height: 0px;
  visibility: hidden;
}

.main-header-bottom {
  padding: 1rem 0;
}

.main-header-bottom__logo {
  height: 64px;
  transition: all .2s ease-in-out;
}

.main-header-bottom__slogan {
  color: #FFF;
    font-weight: 200;
    font-size: 1.5rem;
}

.main-header-bottom__phone-number {
  color: #FFF;
  font-size: 1.5rem;
  line-height: normal;
  text-decoration: none;
}


/*** Sticky navbar transformations **/

.header-sticky.main-header-bottom {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.header-sticky .main-header-bottom__logo {
  height: 48px;
}


/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {

  .offeset-for-main-header {
    margin-top: 112px;
  }

}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {

  .offeset-for-main-header {
    margin-top: 125px;
  }

}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {

  .main-header-top p {
    font-size: 0.75rem;
  }

  .main-header-bottom__logo {
    height: 48px;
  }

}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

  .sm-not-fixed {
    position: relative;
  }

  .main-header-bottom__logo {
    height: 42px;
  }

  .main-header-bottom__overline {
    font-size: 0.75rem;
  }

  .main-header-bottom__phone-number {
    font-size: 1.25rem;
  }

}


/*---------------------------------------------*/
/* Footer */
/*---------------------------------------------*/

.footer {
  background-color: #111;
  color: #EEE;
}

.footer p {
  color: #EEE;
  margin-bottom: 0;
}

.footer a,
.footer p a {
  color: #FFF;
}

.footer .map-marker {
  color: #e6791e;
}


.footer-legal {
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.35);
}

.footer-legal a {
  color: rgba(255, 255, 255, 0.35);
}


/*---------------------------------------------*/
/* Navigation */
/*---------------------------------------------*/

.nav-header {
  padding-bottom: 0.5rem;
  border-bottom: 2px solid #e6791e;
}

.nav-list {
  padding-left: 0.25rem;
	list-style: none;
  margin-bottom: 0;
}

.nav-list > li {
  position: relative;
  border-top: 1px solid #d8d8d8;
}

.nav-list > li:first-child {
  border-top: none;
}

.nav-list > li > a {
  display: block;
  color: #444;
  padding-top: .375rem;
  padding-bottom: .375rem;
  display: block;
  font-weight: 600;
  font-size: 0.9375rem;
  text-decoration: none;
}

.nav-list > li > a:hover,
.nav-list > li > a:focus {
  text-decoration: underline;
}

.nav-list > li > a.active {
  color: #e37724;
  font-weight: 700;
}

.nav-list > li > ul {
  padding-left: 1.5rem;
	list-style: none;
  margin-bottom: 0;
}

.nav-list > li > ul > li {
  position: relative;
}

.nav-list > li > ul > li:before {
	content: '';
  display: block;
  width: 12px;
  height: 2px;
  position: absolute;
  left: -1.25rem;
  top: 16px;
  background: #999;
}

.nav-list > li > ul > li > a {
  display: block;
  color: #444;
  padding-top: .375rem;
  padding-bottom: .375rem;
  display: block;
  font-weight: 600;
  font-size: 0.9375rem;
  text-decoration: none;
}

.nav-list > li > ul > li > a:hover,
.nav-list > li > ul > li > a:focus {
  text-decoration: underline;
}

.nav-list > li > ul > li > a.active {
  color: #e37724;
  font-weight: 700;
}


/*---------------------------------------------*/
/* Breadcrumbs */
/*---------------------------------------------*/

.breadcrumb {
  padding: .75rem 0;
  margin-bottom: 1rem;
  background-color: transparent;
  border-radius: 0;
  border-bottom: 1px solid #CCC;
}

.breadcrumb-item:nth-of-type(3) {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 250px;
}

.breadcrumb-item a {
  text-decoration: none;
}


/*---------------------------------------------*/
/* Gallery */
/*---------------------------------------------*/

.gallery-row {
  margin-left: -5px;
  margin-right: -5px;
}

.gallery-col {
  padding-left: 5px;
  padding-right: 5px;
  margin-top: 5px;
  margin-bottom: 5px;
}



/*---------------------------------------------*/
/* Recaptcha */
/*---------------------------------------------*/

.grecaptcha-badge{
	visibility: collapse !important;  
}