@charset "utf-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Anton&family=Hind:wght@300;400;500;600;700&display=swap');

body {
  font: 16px 'Hind', serif;
  color: #000;
  margin: 0;
  font-size: 16px;
  font-weight: 400;
  overflow-x: hidden;
  position: relative;
  background-color:#FFF;
}

dl, ol, ul {margin:0!important; padding:1rem;}
li {margin:20px 0 20px 10px!important; line-height: 1.25em; list-style-position: outside;}

p {font-family: 'Hind', serif; font-size: 16px; font-weight: 500; color: #000; line-height: 1.6em; letter-spacing: -.25px;}

a:focus .btn-content, a:focus-visible .btn-content {
  border: solid white 2px;
  outline-color: black;
  outline-style: solid;
  outline-width: 4px;
}

a {color:#E2221D; text-decoration: none; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
a:hover {color:#767676; text-decoration: none;}
a:focus {color:#767676!important; text-decoration: none; outline: -webkit-focus-ring-color auto 1px;}
a:focus-visible {color:#767676!important; text-decoration: none; outline: -webkit-focus-ring-color auto 5px;}

.section {scroll-margin-top: 150px!important;}

.max-container {max-width:856px;}

.justify {text-align: justify;}

/*SKIP TO CONTENT*/
.skip-to-content-link {
    left: 0%;
    position: absolute;
    transform: translateY(-100%);
    background: #FFF;
    height: 70px;
    padding: 8px;
    transition: transform 0.3s;
	scroll-padding-top:110px;
}
.skip-to-content-link:focus {
    transform: translateY(0%);
	width:100%;
	background-color:#FFF;
	z-index:99999999999;
	line-height:50px;
	font-weight:bold;
	color:#000;
	border:none;
	text-align: center!important;
}
/*END SKIP TO CONTENT*/

.small {font-size: 90%!important;}
.smaller {font-size: 80%!important;}
.smallest {font-size: 70%!important;}
.large {font-size: 110%!important;}
.larger {font-size: 120%!important;}
.largest {font-size: 135%!important;}

.lh-sm {line-height: 1.5em!important;}
.lh-md {line-height: 1.6em!important;}
.lh-lg {line-height: 1.7em!important;}

.red {color:#E2221D;}
.gray {color:#767676;}
.silver {color:#BBB;}
.black {color:#000;}
.white {color:#FFF;}

.bar-red {width:100px; border-top:10px solid #E2221D;}
.bar-gray {width:100px; border-top:10px solid #767676;}
.bar-silver {width:100px; border-top:10px solid #BBB;}
.bar-white {width:100px; border-top:10px solid #FFF;}
.bar-black {width:100px; border-top:10px solid #000;}

.divider {border-top: 1px solid #BBB;}

.border-pic {border: 5px solid #767676;}
.border-lt {border: 3px solid #FFF;}
.border-black {border: 4px solid #000;}
.border-red {border: 3px solid #E2221D;}
.shadow {box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.35)!important; -webkit-box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.35); -moz-box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.35);}
.shadow-lt {box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.25)!important; -webkit-box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.35); -moz-box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.35);}

h1 {
	font-family: 'Anton', serif;
	font-size: 64px;
	color:#FFF;
	text-transform: uppercase;
}

h2 {
	font-family: 'Anton', sans-serif;
	font-size: 42px;
	color:#767676;
	text-transform: uppercase;
}

h3 {
	font-family: 'Anton', serif;
	font-size: 32px;
	color:#E2221D;
	text-transform: uppercase;
}

/*BACK TO TOP*/
#button {
  display: inline-block;
  background-color: #E2221D;
  width: 50px;
  height: 50px;
  text-align: center;
  border-radius: 0;
  position: fixed;
  bottom: 30px;
  right: 0;
  transition: background-color .3s, 
    opacity .5s, visibility .5s;
  opacity: 0;
  visibility: hidden;
  z-index: 1000;
	border:2px solid #FFF;
}
#button::after {
  content: "\f077";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  font-size: 2em;
  line-height: 50px;
  color: #FFF;
}
#button:hover {
  cursor: pointer;
  background-color: #767676;
}
#button:active {
  background-color: #767676;
}
#button.show {
  opacity: 1;
  visibility: visible;
}
/*END BACK TO TOP*/

.header {
  background-color: #FFF;
  z-index: 999999;
  -webkit-box-shadow: 0px 1px 10px 2px rgba(0,0,0,0.15);
  box-shadow: 0px 1px 10px 2px rgba(0,0,0,0.15);
  clear: both;
  padding:0!important;
  margin:0!important;
  height: 110px!important;
  border-top:7px solid #E2221D;
}

.sticky {
  position: fixed;
  top: 0;
  width: 100%;
  background-color: #FFF;
  z-index: 10;
}

.sticky + .content {
  padding-top: 102px;
}

.offcanvas {background-color: #FFF; border-top: none!important; padding:0!important;}
.offcanvas-backdrop.show {opacity: 0!important;}
.offcanvas-header {padding:0!important;}
.offcanvas-header img {height:70px!important; padding:25px 0 0 50px; margin:0 0 0 20px!important;}
.offcanvas-header .btn-close {background-image: url("graphics/close.png"); margin-top: 0.5rem; margin-right: 0.5rem; margin-bottom: 0.5rem;}

.navbar-nav {margin-right: 50px!important;}

.navbar-light .navbar-nav .nav-link {
  font-family: 'Anton', serif;
  font-size: 20px;
  color: #000;
  text-transform: uppercase;
  padding: 15px 1.5rem!important;
  margin:0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border-bottom:3px solid #FFF;
}
.navbar-light .navbar-nav .nav-link:hover {color:#E2221D!important; border-bottom:3px solid #767676;}
.navbar-light .navbar-nav .nav-link:focus {color:#E2221D!important; border:2px solid #767676;}
.navbar-light .navbar-nav .nav-link:focus-visible {color:#E2221D!important; border:2px solid #767676;}

.navbar-toggler {border-color:#FFF!important; background-color:transparent!important; border:0!important; color:(0,0,0,1.0)!important;}
.navbar-toggler.js-scrolling {margin-top:0;}
.navbar-light .navbar-toggler {outline: none;}

.navbar-brand {height:auto; padding:0!important;}
.navbar-brand img {height:175px!important; margin: 45px 0 0 50px;}
.navbar-brand.js-scrolling img {
	height: 110px!important;
	margin-top: -15px;
	-webkit-transition: height 0.3s ease; 
	-moz-transition: height 0.3s ease; 
	-ms-transition: height 0.3s ease; 
	-o-transition: height 0.3s ease; 
	transition: height 0.3s ease;
}

.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link {color:#767676!important;}

.bg-hero {background-image: url("images/hero.jpg"); overflow: hidden; text-shadow: 2px 2px 4px #000; background-size: cover;}

.content {font-family: 'Hind', serif; font-size: 16px; font-weight: 400; letter-spacing: -.5px;}
.content a {color:#767676; font-weight: 600; text-decoration:underline; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
.content a:hover {color:#E2221D; text-decoration:underline; font-weight: 800;}
.btn-content {
	background-color:#E2221D;
	font-family: 'Anton', sans-serif;
	font-size: 21px;
	text-align: center;
	text-shadow: none!important;
	text-transform: uppercase;
	letter-spacing: 0px;
	color:#FFF!important;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	border:4px solid #E2221D;
}
.btn-content:hover {
	background:#767676;
	color:#FFF!important;
	text-decoration: underline;
	cursor: pointer;
	border:4px solid #767676;
}
.btn-content:focus {border:2px solid #767676; outline-color: #767676; outline-style: solid; outline-width: 4px;}
.btn-content:focus-visible {border:2px solid #767676; outline-color: #767676; outline-style: solid; outline-width: 4px;}

.bg-gray {background: #F8F8F8;}

.carousel-control-next, .carousel-control-prev {opacity: 1;}
.carousel-control-next-icon, .carousel-control-prev-icon {background-color: rgba(0,0,0,0.65); padding: 1rem 0; border:1px solid #FFF;}

button.carousel-control-prev:hover, button.carousel-control-next:hover {
 .carousel-control-prev-icon, .carousel-control-next-icon {
        border: solid white 2px;
        outline-color: #E2221D;
        outline-style: solid;
        outline-width: 2px;
        background-color: #E2221D;
        transform:	scale(1.25);
    }
}
button.carousel-control-prev:focus, button.carousel-control-next:focus {
 .carousel-control-prev-icon, .carousel-control-next-icon {
        border: solid white 2px;
        outline-color: #E2221D;
        outline-style: solid;
        outline-width: 2px;
        background-color: #E2221D;
        transform:	scale(1.25);
    }
}

.carousel-container {color:#000!important; width:650px!important; min-height: 400px; margin:0 auto 50px auto; float:none; clear: both; overflow: hidden; -webkit-backface-visibility: visible!important; backface-visibility: visible!important;}
section#testimonials .carousel-caption {position: static;}
.name {font-family: 'Anton', sans-serif; font-size: 18px; color:#E2221D; text-transform: uppercase; margin-bottom: 50px;}
.carousel-indicators [data-bs-target] {background-color:#000!important; height:10px; margin:0 6px;}

.content-interior {min-height: 850px; border-bottom: 1px solid #BBB;}

.footer {font-family: 'Anton', serif; font-size: 19px; color:#000; letter-spacing: -.25px; text-transform: uppercase;}
.footer a {color: #767676; text-decoration: underline; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
.footer a:hover {color: #E2221D; text-decoration: none;}
.footer ul {padding:0; margin:0; text-align:center;}
.footer ul li {list-style-type:none; display:inline;}
.footer ul li:before {content:'';}
.footer ul li:after {content:''; margin:0 0 0 75px;}
.footer ul li:last-child:after {content:''; margin-left: 0;}

.bg-anchor {background:#000; color:#FFF; font-family: 'Hind', serif; font-weight: 400; letter-spacing: -.25px;}
.bg-anchor a {color:#FFF; text-decoration:underline; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
.bg-anchor a:hover {color:#BBB; text-decoration:none; font-weight: 400;}
.bg-anchor a:focus {color:#BBB!important; text-decoration: underline; outline: -webkit-focus-ring-color auto 1px;}
.bg-anchor a:focus-visible {color:#BBB!important; text-decoration: underline; outline: -webkit-focus-ring-color auto 5px;}
.bg-anchor ul {padding:0; margin:0; text-align:center; }
.bg-anchor ul li {list-style-type:none; display:inline; font-size: 14px!important; font-weight: 400!important;}
.bg-anchor ul li:before {content:'';}
.bg-anchor ul li:after {content:'|'; color:#E2221D; margin:0 10px; font-weight: 900;}
.bg-anchor ul li:last-child:after {content:'';}

.bg-blackcircles {background-image: url("data:image/svg+xml,<svg id='patternId' width='100%' height='100%' xmlns='http://www.w3.org/2000/svg'><defs><pattern id='a' patternUnits='userSpaceOnUse' width='65' height='65' patternTransform='scale(2) rotate(0)'><rect x='0' y='0' width='100%' height='100%' fill='%23000000ff'/><path d='M25.5 6.5a6 6 0 1 1-12 0 6 6 0 0 1 12 0Zm39 13a6 6 0 1 1-12 0 6 6 0 0 1 12 0Zm0 13a6 6 0 1 1-12 0 6 6 0 0 1 12 0Zm-39 0a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm13 26a6 6 0 1 1-12 0 6 6 0 0 1 12 0z'  stroke-width='1' stroke='none' fill='%23111111ff'/><path d='M64.5 45.5a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm0-39a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm-13 13a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm0 26a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm-26 13a6 6 0 1 1-12 0 6 6 0 0 1 12 0z'  stroke-width='1' stroke='none' fill='%23222222ff'/><path d='M51.5 32.5a6 6 0 1 1-12 0 6 6 0 0 1 12 0Zm-13-13a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm0-13a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm-26 39a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm0 13a6 6 0 1 1-12 0 6 6 0 0 1 12 0z'  stroke-width='1' stroke='none' fill='%23111111ff'/><path d='M51.5 58.5a6 6 0 1 1-12 0 6 6 0 0 1 12 0Zm-39-52a6 6 0 1 1-12 0 6 6 0 0 1 12 0Zm0 26a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm26 13a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm-13-26a6 6 0 1 1-12 0 6 6 0 0 1 12 0z'  stroke-width='1' stroke='none' fill='%23111111ff'/></pattern></defs><rect width='800%' height='800%' transform='translate(0,0)' fill='url(%23a)'/></svg>"); background-attachment: fixed;}
.service-intro {font-family: 'Hind', serif; font-size: 20px; font-weight: 500; letter-spacing: -.5px; color:#fff;}
.service-intro a {color:#999; font-weight: 600; text-decoration:underline; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
.service-intro a:hover {color:#E2221D; text-decoration:none;}

.callout {background:#fff; font-size: 18px; font-weight: 400; min-height: 560px;}
.callout-border {border:3px solid #767676; margin-bottom: -35px; min-height: 560px;}

.btn-callout {
	background-color:#E2221D;
	font-family: 'Anton', sans-serif;
	font-size: 24px;
	text-align: center;
	text-shadow: none!important;
	text-transform: uppercase;
	letter-spacing: 0px;
	color:#FFF!important;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	border:4px solid #E2221D;
}
.btn-callout:hover {
	background:transparent;
	color:#AAA!important;
	text-decoration: underline;
	cursor: pointer;
	border:4px solid #E2221D;
}
.btn-callout:focus {border:2px solid #767676; outline-color: #767676; outline-style: solid; outline-width: 4px;}
.btn-callout:focus-visible {border:2px solid #767676; outline-color: #767676; outline-style: solid; outline-width: 4px;}

.bg-flames {background-image: url("graphics/bg-flames.jpg"); background-attachment: fixed; background-size: cover; overflow: hidden;}
.bg-white {background:#FFF;}

.bg-why {background-image: url("graphics/bg-why.jpg"); background-attachment: fixed; background-size: cover;}
.why-border {border:4px solid #767676;}
.why-box {background:#FFF; font-size: 17px; font-weight: 500; margin: -25px 0 0 -25px; letter-spacing: -.25px;}

.bg-gallery {background-image: url("data:image/svg+xml,<svg id='patternId' width='100%' height='100%' xmlns='http://www.w3.org/2000/svg'><defs><pattern id='a' patternUnits='userSpaceOnUse' width='65' height='65' patternTransform='scale(5) rotate(0)'><rect x='0' y='0' width='100%' height='100%' fill='%23ffffffff'/><path d='M25.5 6.5a6 6 0 1 1-12 0 6 6 0 0 1 12 0Zm39 13a6 6 0 1 1-12 0 6 6 0 0 1 12 0Zm0 13a6 6 0 1 1-12 0 6 6 0 0 1 12 0Zm-39 0a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm13 26a6 6 0 1 1-12 0 6 6 0 0 1 12 0z'  stroke-width='1' stroke='none' fill='%23f8f8f8ff'/><path d='M64.5 45.5a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm0-39a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm-13 13a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm0 26a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm-26 13a6 6 0 1 1-12 0 6 6 0 0 1 12 0z'  stroke-width='1' stroke='none' fill='%23f4f4f4ff'/><path d='M51.5 32.5a6 6 0 1 1-12 0 6 6 0 0 1 12 0Zm-13-13a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm0-13a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm-26 39a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm0 13a6 6 0 1 1-12 0 6 6 0 0 1 12 0z'  stroke-width='1' stroke='none' fill='%23f8f8f8ff'/><path d='M51.5 58.5a6 6 0 1 1-12 0 6 6 0 0 1 12 0Zm-39-52a6 6 0 1 1-12 0 6 6 0 0 1 12 0Zm0 26a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm26 13a6 6 0 1 1-12 0 6 6 0 0 1 12 0zm-13-26a6 6 0 1 1-12 0 6 6 0 0 1 12 0z'  stroke-width='1' stroke='none' fill='%23f8f8f8ff'/></pattern></defs><rect width='800%' height='800%' transform='translate(0,0)' fill='url(%23a)'/></svg>"); background-attachment: fixed;}

.ratio {
	overflow: hidden; /* Ensures the image doesn't overflow the container */
	position: relative;
	padding-bottom:100%; /* Creates a square container */
	  margin-bottom: -50px;
  }
  
  .ratio img {
	object-fit: cover; /* Fills the container, preserving aspect ratio */
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 80%;
	margin-bottom: -50px!important;
  }

  .gallery:hover {outline-color: #000; outline-style: solid; outline-width: 2px; outline-offset: 3px;}

.bg-contact {background-image: url("graphics/bg-contact.jpg");}

/*FORM*/
#form {
        width:100%;
        float:left;
		font-family: 'Hind', serif;
}


form{
        width: 100%;
        }

legend {font-size: 16px; font-weight: 500; color:#FFF;}

fieldset{
        border: 0;
        padding:2.5% 0;
        clear: left;
		
        }
        
textarea, input, select{
        border-top:0;
		border-right:0;
		border-left:0;
		border:1px solid #767676;
        padding:2.5%;
        width: 100%;
		font-size: 16px;
        }

label{
        font-weight: 600!important;
		font-size: 100%;
		display: block;
        }       
        
textarea:focus, input:focus, select:focus{
        border: 3px solid #E2221D;
        -webkit-transition: all .4s ease-in-out;
        -moz-transition: all .4s ease-in-out;
        transition: all .4s ease-in-out;
        outline: none;
}

.submit {
	padding:2.5%!important;
	background:#E2221D; 	
	color:#FFF!important;
	font-family: 'Anton', sans-serif;
	font-size:2em;
	text-transform:uppercase;
	letter-spacing: -.5px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	border:4px solid #E2221D;
}
/*.submit:hover {
	background-color:#000;
	color:#ccc!important;
	cursor:pointer;
	border:4px solid #000;
}*/
.submit:hover {background-color:#000; color:#BBB!important; cursor:pointer;border:2px solid #767676; outline-color: #E2221D; outline-style: solid; outline-width: 4px; padding:4px; border:4px solid #E2221D;}
.submit:focus {border:2px solid #FFF; outline-color: #000; outline-style: solid; outline-width: 4px; padding:4px;}
.submit:focus-visible {border:2px solid #FFF; outline-color: #000; outline-style: solid; outline-width: 4px; padding:4px;}
input {padding:10px!important;}
/*END FORM*/

@media (max-width: 1825px) {
.callout {min-height: 600px;}
.callout-border {min-height: 600px;}
}

@media (max-width: 1565px) {
.callout {min-height: 650px;}
.callout-border {min-height: 650px;}
}

@media (max-width: 1399px) {
.navbar-nav {margin-right: 0px!important;}
.navbar-brand img {height:175px!important; margin: -15px 0 0 -25px!important;}
.navbar-toggler {margin-top: -60px!important;}
.navbar-toggler.js-scrolling {margin-top:0px!important;}
.navbar-light .navbar-nav .nav-link {font-size: 18px; padding: 5px .75rem!important;}
.footer {font-size: 18px;}
.footer ul li:after {content:''; margin:0 0 0 50px;}
.callout {min-height: 750px;}
.callout-border {min-height: 750px;}
}

@media (max-width: 1199px) {
.footer ul li {display:block; padding:12px 0!important;}
.footer ul li:after {margin:0;}
.callout {min-height: 0;}
.callout-border {min-height: 0;}
}

@media (max-width: 991px) {
.carousel-container {width:500px!important; min-height: 500px;}
}

@media (max-width: 767px) {
.carousel-container {width:375px!important;}
.bg-anchor ul li {display:block; padding:12px 0;}
.bg-anchor ul li:after {content:'';margin:0;}
}

@media (max-width: 575px) {
.header {height: 80px!important;}
.navbar-brand img {height:125px!important; margin: -15px 0 0 0!important;}
.navbar-brand.js-scrolling img {height: 80px!important; margin-top: -15px;}
.offcanvas-header img {height: 150px!important; padding:25px 0 0 20px;}
h1 {font-size: 42px;}
h2 {font-size: 30px;}
.footer li {padding:12px 0;}
.footer ul li {display:block;}
.footer ul li:after {margin:0;}
.carousel-container {width:250px!important;}
.why-box {margin: -25px 0 0 0;}
}

@media (max-width: 480px) {
.navbar-toggler {margin-top: -40px!important;}
.navbar-toggler.js-scrolling {margin-top:0px!important;}
}


@media (max-width: 375px) {
.carousel-container {width:200px!important; min-height: 800px;}
}



