/* General */

body {
  font-family:'calluna-sans', Arial;
  font-weight:normal;
  -webkit-font-smoothing:antialiased;
}
a {
  color:inherit;
}
.btn {
  display:inline-block;
  background:#fff;
  border:1px solid #fff;
  padding:20px 30px;
  text-decoration:none;
  font-size:14px;
  font-weight:900;
  line-height:1;
  color:#790b20 !important;
  text-transform:uppercase;
  letter-spacing:0.1em;
  transition:ease 0.5s;
}
.btn:hover, .btn.outline {
  background:none;
  color:#fff !important;
}
.btn.sml {
  padding:14px 30px;
  font-size:12px;
  font-weight:400;
}
.btn.outline:hover {
  background:#fff;
  color:#790b20 !important;
}
.btn.red {
  background:#ec0c26;
  color:#fff !important
}
.hide {
  display:none;
}
.grecaptcha-badge {
  opacity:0;
}
#menu:not( .mm-menu ) { 
  display: none; 
}
#mapContact {
  height:400px;
}

.sml-padding-top {
  padding-top:0px !important;
}
.sml-padding-bottom {
  padding-bottom:20px !important;
}


/* Wrappers */

.wrapper {
  max-width:1386px;
  width:100%;
  margin:0 auto;
  position:relative;
}
.wrapper-lg {
  max-width:1586px;
  width:100%;
  margin:0 auto;
  position:relative;
}
.wrapper-sml {
  max-width:1040px;
  width:100%;
  margin:0 auto;
  position:relative;
}
.wrapper-inner {
  max-width:930px;
  width:100%;
  margin:0 auto;
  position:relative;
}
.wrapper-logos {
  max-width:755px;
  width:100%;
  margin:0 auto;
  position:relative;
}


/* Header */

header {
  position:relative;
  background:#fafafa;
}
header figure {
  max-width:189px;
  float:left;
  padding:16px 0px 17px;
}
header .contact {
  position:absolute;
  top:0px;
  right:0px;
  height:100%;
  width:px;
  box-sizing:border-box;
  background:url('/images/contact-border.jpg') no-repeat top left #ec0c26;
  font-size:20px;
  font-weight:700;
  color:#fff;
  text-transform:uppercase;
  text-decoration:none;
  padding:52px 86px 0px 90px;
  letter-spacing:0.055em;
}
header nav {
  position:relative;
  float:right;
  margin-right:12.5%;
}
header nav ul {
  margin-left:0px;
}
header nav ul li {
  display:inline-block;
  font-size:14px;
  font-weight:700;
  line-height:1;
  color:#761e1f;
  text-transform:uppercase;
  padding:57px 26px 55px;
  transition:ease 0.5s;
  letter-spacing:0.15em;
}
header nav ul li:hover {
  color:#c10b29;
}
header nav ul li:first-child {
  padding-left:0px;
}
header nav ul li:last-child {
  padding-right:0px;
}
header nav ul li a {
  color:inherit;
  text-decoration:none;
}


/* Banner Styles */

#banner {
  position:relative;
  opacity:0;
}
#banner .overlay {
  position:absolute;
  top:55%;
  left:50%;
  width:90%;
  transform:translate(-50%, -50%);
  -webkit-transform:translate(-50%, -50%);
  text-align:center;
  z-index:999;
}
#banner .overlay h1 {
  font-size:87px;
  font-weight:900;
  line-height:60px;
  color:#fff;
  text-transform:uppercase;
  letter-spacing:-0.01em;
  margin-bottom:30px;
}
#banner .overlay p {
  font-size:26px;
  font-weight:900;
  line-height:36px;
  color:#fff;
  letter-spacing:-0.05em;
  margin-bottom:25px;
}


/* Homepage Content Styles */

#homepage-content {
  position:relative;
  background:#fcf8f6;
  padding:75px 0px;
  text-align:right;
}
#homepage-content .col-6:first-child section {
  padding:84px 70px 84px 0px;
}
#homepage-content figure {
  margin-bottom:-140px;
}
#homepage-content h2 {
  font-size:75px;
  font-weight:900;
  line-height:1;
  color:#161f31;
  text-transform:uppercase;
  letter-spacing:-0.025em;
  margin-bottom:15px;
}
#homepage-content p {
  font-size:15px;
  font-weight:300;
  line-height:28px;
  color:#485368;
  clear:both;
}
#homepage-content hr {
  background:#cfc8ce;
  border:none;
  width:138px;
  height:1px;
  margin-bottom:20px;
  margin-right:-45px;
  float:right;
}

#feature-boxes {
  position:relative;
  padding:140px 0px 25px;
}
#feature-boxes h3 {
  font-size:21px;
  font-weight:600;
  line-height:30px;
  color:#fff;
  text-align:center;
}
#feature-boxes p {
  font-size:17px;
  line-height:24px;
  color:#fff;
  text-align:center;
}
#feature-boxes p, #feature-boxes h3 {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  -webkit-transform:translate(-50%, -50%);
  width:80%
}
#feature-boxes img {
  width:100%;
}
#feature-boxes .col-3 {
  padding-left:7px;
  box-sizing:border-box;
}
#feature-boxes .grid-item {
  position:relative;
  width:340px;
  float:left;
  margin-bottom:7px;
}
#feature-boxes .grid-item.dark-blue {
  background:#161f31;
  height:356px;
}
#feature-boxes .grid-item.red {
  background:#ec0c31;
  height:218px;
}
#feature-boxes .grid-item.light-blue {
  background:#485368;
  height:218px;
}
#feature-boxes .grid-item.grey {
  background:#bdb1b3;
  height:218px;
}
#feature-boxes .grid-item.large {
  height:495px;
}
#feature-boxes .grid-item.medium {
  height:357px;
}

#two-boxes {
  position:relative;
  padding:25px 0px 75px;
}
#two-boxes .section {
  position:relative;
}
#two-boxes figure {
  position:relative;
}
#two-boxes figure::after {
  display:block;
  content:'';
  clear:both;
}
#two-boxes figure::before {
  display:block;
  content:'';
  position:absolute;
  top:0px;
  left:0px;
  height:100%;
  width:100%;
  background: -moz-linear-gradient(left, rgba(0,0,0,0.47) 17%, rgba(0,0,0,0.47) 23%, rgba(255,255,255,0) 75%);
  background: -webkit-linear-gradient(left, rgba(0,0,0,0.47) 17%,rgba(0,0,0,0.47) 23%,rgba(255,255,255,0) 75%);
  background: linear-gradient(to right, rgba(0,0,0,0.47) 17%,rgba(0,0,0,0.47) 23%,rgba(255,255,255,0) 75%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
  z-index:5;
}
#two-boxes .section:nth-child(2) figure::before {
  background: -moz-linear-gradient(left, rgba(0,0,0,0.60) 17%, rgba(0,0,0,0.60) 23%, rgba(255,255,255,0) 75%);
  background: -webkit-linear-gradient(left, rgba(0,0,0,0.60) 17%,rgba(0,0,0,0.60) 23%,rgba(255,255,255,0) 75%);
  background: linear-gradient(to right, rgba(0,0,0,0.60) 17%,rgba(0,0,0,0.60) 23%,rgba(255,255,255,0) 75%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00ffffff',GradientType=1 );
}
#two-boxes section {
  position:absolute;
  top:50%;
  left:0px;
  width:40%;
  padding:65px 52px;
  z-index:10;
  transform:translate(0%, -50%);
  -webkit-transform:translate(0%, -50%);
}
#two-boxes h2 {
  font-size:42px;
  font-weight:900;
  line-height:48px;
  color:#fff;
  text-transform:uppercase;
  letter-spacing:-0.025em;
  margin-bottom:5px;
}
#two-boxes p {
  font-size:15px;
  font-weight:300;
  line-height:21px;
  color:#fff;
  letter-spacing:-0.005em;
  margin-bottom:20px;
}

#logos {
  position:relative;
  background:#fcf8f6;
  text-align:center;
  padding:55px 0px;
}
#logos img {
  display:inline-block;
  margin:0;
  mix-blend-mode:multiply;
}
#logos a {
  background:#fcf8f6;
  position:absolute;
  display:block;
  left:auto;
  top:50%;
  transform:translate(0%, -50%);
  -webkit-transform:translate(0%, -50%);
}


/* Content Pages Styles */

#header {
  position:relative;
  background:#fff;
  padding:72px 0px;
  text-align:center;
}
#header h1 {
  font-size:65px;
  font-weight:900;
  line-height:1;
  color:#161f31;
  letter-spacing:-0.025em;
  margin-bottom:15px;
  text-transform:uppercase;
}
#header p {
  font-size:15px;
  font-weight:300;
  line-height:28px;
  color:#485368;
  margin:0 80px;
}
#header hr {
  height:1px;
  width:140px;
  border:none;
  background:#d2ced5;
  margin:0px auto 20px;
}

#content {
  position:relative;
  background:#fafafa;
  padding:52px 0px;
}
#content.white {
  background:#fff;
  padding:0px 0px 52px;
}
#content section {
  padding:40px 0px 0px 20px;
}
#content figure img {
  margin:0 auto;
}
#content h1 {
  
}
#content h2 {
  
}
#content h3 {
  font-size:16px;
  font-weight:900;
  line-height:1;
  color:#161f31;
  text-transform:uppercase;
  letter-spacing:-0.025em;
  margin-bottom:20px;
}
#content p, #content li, #white p {
  font-size:15px;
  font-weight:300;
  line-height:28px;
  color:#485368;
  margin-bottom:22px;
}
#content ul {
  margin-bottom:22px;
}
#content li {
  margin-bottom:4px;
}
#content hr {
  background:#f5f5f5;
  height:1px;
  border:none;
  margin:20px 0px;
  display:block;
}

#white {
  position:relative;
  background:#fff;
  padding:90px 0px;
}
#white h4 {
  font-size:30px;
  font-weight:900;
  line-height:37px;
  color:#485368;
  text-align:center;
  margin:0px 140px 35px;
}
#white p {
  text-align:center;
}

.logos {
  max-width:1150px;
  margin:0 auto;
  text-align:center;
}
.logos img {
  display:inline-block;
  margin:35px 35px;
}

.stages {
  text-align:center;
}
.stages img {
  display:inline-block;
  margin:0px 6px;
}
.stages img:first-child {
  margin-left:0px;
}
.stages img:last-child {
  margin-right:0px;
}


/* FAQs Styles */

.faqs {
  list-style:none;
  margin:80px 0px 0px 0px;
}
.faqs li {
  display:block;
  margin-bottom:10px;
}
.faqs .tab {
  background:#fafafa;
  padding:22px 28px;
  cursor:pointer;
}
.faqs .tab:after {
  display:block;
  content:'';
  clear:both;
}
.faqs .tab h2 {
  font-size:20px;
  font-weight:900;
  line-height:1;
  color:#161f31;
  text-align:left;
  float:left;
}
.faqs .tab .view {
  font-size:14px;
  font-weight:900;
  line-height:1;
  color:#ec0c26;
  text-transform:lowercase;
  float:right;
  margin-top:4px;
  cursor:pointer;
}
.faqs .tab:hover .view {
  opacity:0.42;
}
.faqs .expand {
  display:none;
  padding:32px 25px;
  text-align:left !important;
}
.faqs .expand h3 {
  font-size:16px;
  font-weight:900;
  line-height:1;
  color:#161f31;
  text-transform:uppercase;
  letter-spacing:-0.025em;
  margin-bottom:12px;
}
.faqs .expand p {
  text-align:left;
  margin:0px 0px 25px !important;
}
.faqs .expand ul {
  list-style:circle  url("/images/circle.png");
  margin-bottom:25px;
}
.faqs .expand li {
  font-size:15px;
  font-weight:300;
  line-height:24px;
  color:#485368;
  margin:0px 0px 10px !important;
}
.faqs .expand p:last-child, .faqs .expand ul:last-child, .faqs .expand li {
  margin-bottom:0px !important;
}


/* Forms */

.form {
  position:relative;
  display:block;
}
.form label {
  display:block;
  float:left;
  font-size:15px;
  line-height:1;
  margin:-6px 0px 0px 20px;
}
.form .combined {
  width:50%;
  float:left;
}
.form input[type=text], .form input[type=password], .form input[type=email], .form  textarea, .form select {
  width:97.5%;
  padding:14px 20px;
  background:#fafafa;
  border:none;
  box-sizing:border-box;
  font-family:'calluna-sans';
  font-size:15px;
  font-weight:300;
  line-height:1;
  color:#485368;
  margin-bottom:12px;
}
.form input[type=file] {
  float:left;
  margin: 0;
  opacity: 0;
  filter: alpha(opacity=0);
  transform: translate(-300px, 0) scale(4);
  direction: ltr;
  cursor: pointer;
}
.form .combined input[type=text], .form .combined input[type=password], .form .combined input[type=email], .form .combined  textarea, .form .combined select {
  width:95%;
  padding:14px 20px;
}
.form select {
  width:100%;
}
.form .check {
  margin:20px 0px;
}
.form .check label {
  float:left;
}
.form .check input[type=checkbox], .form .check input[type=radio] {
  float:left;
  margin: 3px 10px 0px 0px;
}
.form input.submit {
  margin-top:20px;
}
*::-webkit-input-placeholder {color: #485368;}
*::-moz-placeholder {color: #485368;}
*:-ms-input-placeholder {color: #485368;}
*:-moz-placeholder {color: #485368;}

#filename {
  display:inline-block;
  float:left;
  background:#fafafa;
  padding:12px 20px;
  width:242px;
  font-family:'calluna-sans';
  font-size:15px;
  font-weight:300;
  color:#485368;
}
.upload {
  display:inline-block;
  float:left;
  background:#161f31;
  padding:12px 30px;
  font-family:'calluna-sans';
  font-size:15px;
  font-weight:700;
  color:#fff;
}


/* Footer */

.brand-logos {
  position:relative;
}
.brands-logos .owl-item div {
  background:#fcf8f6;
}
.brand-logos img {
  mix-blend-mode:mulitply;
}

footer {
  position:relative;
}
footer:before {
  display:block;
  content:'';
  position:absolute;
  top:0px;
  left:50%;
  background:url('/images/footer-border-top.png') no-repeat;
  width:150px;
  height:32px;
  transform:translate(-50%, 0%);
  -webkit-transform:translate(-50%, 0%);
}
footer .top {
  background:#c10b29;
  padding:65px 0px 40px;
}
footer .top figure {
  width:179px;
  margin:0 auto;
}
footer .top .info {
  float:left;
}
footer .top h3 {
  font-size:11px;
  font-weight:900;
  line-height:1;
  color:#fff;
  text-transform:uppercase;
  margin-bottom:10px;
  letter-spacing:0.1em;
}
footer .top p {
  font-size:11px;
  font-weight:300;
  line-height:21px;
  color:#fff;
  letter-spacing:0.025em;
}
footer .top p strong {
  font-weight:600;
}
footer .top p a {
  text-decoration:none;
}
footer .top ul {
  float:right;
  list-style:none;
  margin-top:-100px;
  text-align:right;
}
footer .top ul li {
  font-size:11px;
  font-weight:700;
  line-height:21px;
  color:#fff;
  text-transform:uppercase;
  letter-spacing:0.1em;
}
footer .top ul li a {
  text-decoration:none;
}

footer .bottom {
  background:#b10a26;
  padding:15px 0px;
}
footer .bottom p {
  font-size:9px;
  font-weight:600;
  line-height:1;
  color:#fff;
  text-align:center;
}
footer .bottom p a {
  text-decoration:none;
}


/* Error Styles */

#systemMessage {
  width:97.5%;
  background:#c10b29;
  box-sizing:border-box;
  font-size:14px;
  font-weight:700;
  line-height:1;
  color:#fff;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:0.07em;
}
#systemMessage.highlight_message {
  padding:12px 20px 10px;
  margin-bottom:20px;
}
#systemMessage.highlight_message.success_message {
  background:#0bc12d;
}
.highlight-form-field {
  border:1px solid #c10b29 !important;
  color:#c10b29 !important;
  background:rgba(204, 0, 0, 0.2);
}
.highlight-form-label {
  color:#c10b29;
}
.highlight-form-field::-webkit-input-placeholder {color: #c10b29;}
.highlight-form-field::-moz-placeholder {color: #c10b29;}
.highlight-form-field:-ms-input-placeholder {color: #c10b29;}
.highlight-form-field:-moz-placeholder {color: #c10b29;}


/* Mobile Menu */

.mobmenu {
  display: none; 
  background-color: #fcf8f6; 
  color: #790b20; 
  padding: 20px 10px; 
  font-size: 20px; 
  font-weight:900;
  margin-bottom: 0px; 
  clear: both; 
}
.mobmenu a {
  color:#790b20; 
  text-decoration:none;
}
#page { 
  display: block; 
  background-color: #fff; 
}
a.menu-icon { 
  color: #790b20; 
  float: right; 
  font-size: 30px; 
  margin-top: -5px; 
}


/* Responsive */

@media screen and (max-width:1800px) {
  
  header nav {margin-right:20%;}
  
}

@media screen and (max-width:1500px) {
  
  .wrapper, .wrapper-sml, .wrapper-inner, .wrapper-lg {width:95%;}
  
  header nav {margin-right:30%;}
  header nav ul li {font-size:12px;}
  
  #feature-boxes .grid-item {width:100%;}
  
}


@media screen and (max-width:1200px) {
  
  nav:not(.mm-menu) {display:none;}
  .mobmenu {display:block;}
  
  header figure {float:none}
  header nav {float:none; margin-right:0px;}
  
  #banner .overlay h1 {font-size:75px;}
  
}

@media screen and (max-width:1050px) {
  
  #feature-boxes .col-3 {width:50%; float:left;}
  #feature-boxes .grid-item {width:100%;}
  
  #two-boxes h2 {font-size:35px; line-height:1;}
  
}


@media screen and (max-width:800px) {
  
  #white h4 {margin:0px 50px 35px}
  
  #two-boxes figure {margin-bottom:20px; float:none !important;}
  #two-boxes figure img {width:100%;}
  
}


@media screen and (max-width:450px) {
  
  .wrapper, .wrapper-sml, .wrapper-inner, .wrapper-logos {width:95%;}
  
  header .contact {position:relative; top:auto; height:auto; padding:30px; text-align:center; display:block; background:#ec0c26;}
  header figure {float:none; margin:0 auto;}
  
  #banner .overlay {position:relative; top:auto; left:auto; transform:none; -webkit-transform:none; background:#c10b29; padding:50px 20px; box-sizing:border-box; width:100%;}
  #banner .overlay h1 {font-size:40px; line-height:1;}
  
  #homepage-content {padding:0px 0px 7px;}
  #homepage-content figure {margin-bottom:0px;}
  #homepage-content .col-6:first-child section {padding:40px 0px; text-align:left}
  #homepage-content h2 {font-size:35px;}
  #homepage-content hr {margin-right:0px; float:none;}
  
  #logos {padding:40px 0px;}
  #logos img {margin:10px auto;}
  
  #feature-boxes {padding:0px 0px 25px;}
  #feature-boxes .col-3 {width:100%; float:none; padding-left:0px;}
  #feature-boxes .grid-item {width:100% !important;}
  
  #two-boxes section {position:relative; top:auto; left:auto; box-sizing:border-box; transform:none; -webkit-transform:none; width:100%; background:#161f31; padding:30px;}
  #two-boxes figure.right {float:none !important;}
  #two-boxes h2 {font-size:35px; line-height:42px;}
  
  #header {padding:50px 0px;}
  #header h1 {font-size:40px;}
  #header p {margin:0px 0px;}
  
  #content {padding:0px 0px 50px;}
  #content section {padding:40px 0px 0px;}
  
  .faqs .tab h2 {font-size:15px; width:50%;}
  
  .logos img {margin:15px 10px;}
  
  #white {padding:0px 0px 40px;}
  #white h4 {margin:0px 0px 35px;}
  
  #two-boxes figure {margin-bottom:0px;}
  
  .owl-carousel .owl-item {text-align:center !important;}
  .owl-carousel .owl-item >div {margin:0 auto !important;;}
  
  footer .top .info {float:none; text-align:center;}
  footer .top figure {padding:40px 0px;}
  footer .top ul {float:none; margin-top:0px; text-align:center;}
  
  .form .combined {width:100%; float:none;}
  .form input[type=text], .form input[type=password], .form input[type=email], .form  textarea, .form select {width:100%;}
  .form .combined input[type=text], .form .combined input[type=password], .form .combined input[type=email], .form .combined  textarea, .form .combined select {width:100%;}
  .form label {float:none; clear:both; margin:0px;}
  .form button.btn {margin:0 auto; display:block; float:none !important;}
  .upload {font-size:12px;}
  #filename {font-size:12px; width:140px;}
  
  .remove {display:none;}
  
}



