/* -- CSS Navigation --
		To nagivate this CSS file, simply Search (CTRL + F) for the section code Ex: 1a) )
		
		Table of Contents:
		Section 1) Navigation & DNN Fixes
			1a) Site Navigation
			1b) DNN Fixes
			1c) 404 changes
		Section 2) Global Styles (Internal Heros Included)
			2a) Buttons
			2b) Heading Styles
			2c) Internal Heros
			2d) Footer Changes
            2e) Blog Styles
			2f) Mobile Call Button
		Section 3) Homepage Changes
			3a) Hero
			3b) About
			3c) Contact
		Section 4) Internal Page Changes (organize sub-sections by page and subpage Ex: Primary about page would be 4a, child pages could be 4a-a, 4a-b, 4a-c etc. if need be)
			4a)
		Section Z) Mobile Media Queries*/

/* 

	/* Section 1) Navigation & DNN Fixes
		1a) Site Navigation */
:root {
  --modal-width: min(264px, 95svw);
  --modal-height: min(352px, 95svh);
}

.header-split .menu-logo img {
  max-height: 120px;
}

.nav-btn a.btn-outline:link,
.nav-btn a.btn-outline,
.nav-btn a.btn-outline:visited {
  padding: 10px 14px;
  font-size: 20px;
}

/* 1b) DNN Fixes */
.dummy-space {
  display: none;
}

/* 1c) 404 Changes */
.fourohfour {
  font-size: 10em;
  line-height: 1.2;
}

.error {
  font-size: 5em;
  line-height: 1.2;
}

.not_found {
  font-size: 3em;
  line-height: 1.2;
}

.ty-title {
  font-size: 6em;
  line-height: 1.2;
}

.ty-subtitle {
  font-size: 3em;
  line-height: 1.2;
}

/* Section 2) Global Styles (Internal Heros Included)
                2a) Buttons */
a.btn-outline,
a.btn-outline:link,
a.btn-outline:visited {
  display: inline-block;
  text-align: center;
  color: #38302e;
  border: 2px solid #38302e;
  padding: 10px 28px;
  margin-bottom: 10px;
  font-size: 22px;
  text-transform: uppercase;
  background-color: transparent;
  transition: all 440ms;
  -webkit-border-radius: 999px;
  -moz-border-radius: 999px;
  border-radius: 999px;
}

a.btn-outline:hover,
a.btn-outline:link:hover,
a.btn-outline:visited:hover {
  color: #fff !important;
  background-color: #38302e;
}

a.btn-outline-red,
a.btn-outline-red:link,
a.btn-outline-red:visited {
  display: inline-block;
  text-align: center;
  font-family: "Open Sans Condensed";
  font-weight: 800;
  letter-spacing: 0.1em;
  color: #d1402f;
  border: 2px solid #d1402f;
  padding: 10px 28px;
  cursor: pointer;
  margin-bottom: 10px;
  font-size: 22px;
  text-transform: uppercase;
  background-color: transparent;
  transition: all 440ms;
  -webkit-border-radius: 999px;
  -moz-border-radius: 999px;
  border-radius: 999px;
}

a.btn-outline-red:hover,
a.btn-outline-red:link:hover,
a.btn-outline-red:visited:hover {
  color: #fff;
  background-color: #d1402f;
}

a.btn-outline-white,
a.btn-outline-white:link,
a.btn-outline-white:visited {
  display: inline-block;
  text-align: center;
  color: #fff;
  border: 2px solid #fff;
  padding: 10px 28px;
  margin-bottom: 10px;
  font-size: 22px;
  text-transform: uppercase;
  background-color: transparent;
  transition: all 440ms;
  -webkit-border-radius: 999px;
  -moz-border-radius: 999px;
  border-radius: 999px;
}

a.btn-outline-white:hover,
a.btn-outline-white:link:hover,
a.btn-outline-white:visited:hover {
  color: #d1402f;
  background-color: #fff;
}

a.btn-footer,
a.btn-footer:link,
a.a.btn-footer:visited {
  display: inline-block;
  text-align: center;
  color: #fff;
  border: 2px solid #38302e;
  padding: 10px 28px;
  margin-bottom: 10px;
  font-size: 22px;
  text-transform: uppercase;
  background-color: #38302e;
  transition: all 440ms;
  -webkit-border-radius: 999px;
  -moz-border-radius: 999px;
  border-radius: 999px;
  line-height: 0;
}

a.btn-footer:hover,
a.btn-footer:link:hover,
a.btn-footer:visited:hover {
  color: #38302e;
  background-color: #fff;
}

/* 2b) 404 Changes */

/* 2c) Internal Heros */
.int-hero {
  padding: 110px 0;
  background-color: #d1402f;
}

.ih-content {}

.ih-content h1,
.ih-content h2,
.ih-content h3 {
  font-size: 80px;
  max-width: 65%;
}

/* 2d) Footer Changes */
.footer_box .footer_bottom .footer_line {
  border: none;
}

.footer_bottom .footer_bottom_bg {
  opacity: 0;
}

.copyright_style a,
.copyright_style a:link,
.copyright_style a:active,
.copyright_style a:visited {}

.footer_box .footer_bg {
  background-image: url(/Portals/0/);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: ;
}

div#row-781151 {
  border-top: 2px solid #38302e;
}

.wm-link {
  font-size: 24px;
  font-family: "Open Sans Condensed";
  font-weight: 700;
}

.wm-link a,
.wm-link a:link,
.wm-link a:visited {
  color: #38302e;
  border-bottom: 2px solid #38302e;
  padding-bottom: 6px;
}

/* 2e) Blog Styles */
.blog-content {
  padding: 20px 5px;
}

.blog-content img {
  padding: 20px 0 10px 0;
}

.blog-content em {
  text-align: center;
  margin: auto;
  font-size: 18px;
}

.blog-timeline2-detail .detail-title {
  font-size: 38px !important;
}

.blog-content h2 {
  padding-top: 15px;
  font-size: 34px;
}

.blog-content h3 {
  padding-top: 15px;
  font-size: 30px;
}

.blog-content h4 {
  margin-top: 10px;
  font-size: 28px;
}

.blog-content h5 {
  margin-top: 10px;
  font-size: 24px;
}

.blog-content h6 {
  margin-top: 10px;
  font-size: 22px;
}

.blog-content li {
  font-size: 18px;
}

.blog-content dt {
  padding: 10px 0;
  font-size: 21px;
}

.blog-content dt:before {
  display: inline-block;
  content: "";
  height: 10px;
  margin-right: 10px;
  background-color: #000;
  width: 10px;
}

.blog-content dd {
  margin-left: 40px;
}

.blog-section {
  padding: 0 55px;
}

.blog-content .row .row-content {
  padding: 20px 0;
}

.blog-content .blog-quote {
  background-color: #f6f6f6;
  padding: 40px;
  margin: 40px 0;
}

.header h1 {
  padding: 35px;
  border: 1px solid #212529;
  margin-top: 60px;
}

.constrain {
  width: 100%;
}

/* 2f) Mobile Call Button - Fix Colors */
.call-button {
  display: none;
}

.call-button {
  position: fixed;
  bottom: 90px;
  right: 30px;
  display: none;
  justify-content: left;
  align-items: center;
  z-index: 999;
  left: 0;
}

.call-button .call-button-link,
.call-button .call-button-link:link {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  left: 0;
  height: 50px;
  padding: 15px 30px;
  padding-left: 0;
  border-radius: 99999px;
  background-color: #ba0c16;
  color: white !important;
  font-size: 18px !important;
  -webkit-text-stroke: 0 transparent;
  text-decoration: none !important;
  overflow: hidden;
  box-shadow: 0 7px 21px rgba(0, 0, 0, 0.21);
}

.call-button .call-button-link i {
  position: relative;
  left: -1px;
  z-index: 5;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  width: 50px;
  border-radius: 99999px;
  margin-right: 15px;
  font-size: 35px;
  background-color: white;
  color: #ba0c16;
}

/* Section 3) Homepage Changes
                3a) Hero */
h1,
h2,
h3,
h4,
h5,
h6 {
  text-transform: uppercase;
}

h1 span,
h2 span,
h3 span,
h4 span,
h5 span,
h6 span {
  font-size: 2.2em;
  line-height: 1.1;
}

.home-hero {
  padding: 280px 0 0 0;
}

.hh-content {
  position: relative;
  top: 90px;
  background-color: #fff;
  padding: 72px;
  -webkit-box-shadow: 7px 7px 22px 0px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 7px 7px 22px 0px rgba(0, 0, 0, 0.15);
  box-shadow: 7px 7px 22px 0px rgba(0, 0, 0, 0.15);
  z-index: 10;
}

.hh-content h1 {
  font-size: 54px;
  text-transform: uppercase;
}

.hh-content h1 span {
  font-size: 90px;
}

.content-padding {
  padding: 40px 90px;
}

.bg-red {
  background-color: #d1402f;
  height: 100%;
}

.no-pad {
  padding: 0;
}

.home-favorites h3 {
  text-align: center;
  padding-top: 45px;
}

.footer-content h3 {
  font-family: "Open Sans Condensed";
  font-weight: 700;
  font-size: 28px;
  letter-spacing: 0.06em;
}

.nav-btn {
  position: relative;
  z-index: 100;
}

.hidden {
  display: none !important;
}

/* Section 4) Internal Page Changes
                4a) Internal page base styling */


/* Misc */

/*Captcha V3 Hide or Z-Index so Always Showing, Depends on Site
            .grecaptcha-badge{
              visibility: collapse !important;  
            }
            .grecaptcha-badge {
               z-index: 100; 
            }*/

/* Section Z) Mobile Media Queries */

@media only screen and (min-width:1921px) {}

@media only screen and (max-width:1600px) {

  .ih-content h1,
  .ih-content h2,
  .ih-content h3 {
    font-size: 72px;
  }

  .int-hero {
    padding: 95px 0;
  }

  .header-split .menu-logo img {
    max-height: 90px;
  }

  a#dnn_dnnLOGO673076_hypLogo {
    padding: 0 !important;
  }

  /* .dng-megamenu.header-split .primary_structure {
    transform: translateX(-62px) !important;
  } */
}

@media only screen and (max-width:1366px) {}

@media only screen and (min-width:1200px) {
  .visible-lg {
    display: inline-block !important;
  }
}

@media only screen and (max-width:1200px) {
  .home-hero {
    padding: 160px 0 0 0;
  }

  .hh-content {
    top: 80px;
    padding: 60px;
  }

  .hh-content h1 {
    font-size: 48px;
  }

  .hh-content h1 span {
    font-size: 66px;
  }

  h1 span,
  h2 span,
  h3 span,
  h4 span,
  h5 span,
  h6 span {
    font-size: 2em;
  }

  .ih-content h1,
  .ih-content h2,
  .ih-content h3 {
    font-size: 64px;
    max-width: 75%;
  }

  .int-hero {
    padding: 90px 0;
  }

  /* .nav-btn {
    left: 45px;
  } */

  .nav-btn a.btn-outline,
  .nav-btn a.btn-outline:link,
  .nav-btn a.btn-outline:visited {
    padding: 10px 18px;
    text-align: center;
  }
}

@media only screen and (max-width: 1150px) and (min-width: 991px) {
  h2.home-title {
    font-size: 42px;
  }
}

@media only screen and (max-width: 1200px) and (min-width: 991px) {
  .visible-md {
    display: inline-block !important;
  }
}

@media only screen and (max-width: 992px) {
  .call-button {
    bottom: 20px;
    display: flex;
  }

  .home-hero {
    padding: 100px 0 0 0;
  }

  .hh-content {
    top: 55px;
    padding: 45px;
  }

  .hh-content h1 {
    font-size: 42px;
  }

  .hh-content h1 span {
    font-size: 60px;
  }

  a.btn-outline-red,
  a.btn-outline-red:link,
  a.btn-outline-red:visited,
  a.btn-outline,
  a.btn-outline:link,
  a.btn-outline:visited,
  a.btn-outline-white,
  a.btn-outline-white:link,
  a.btn-outline-white:visited,
  a.btn-footer,
  a.btn-footer:link,
  a.a.btn-footer:visited {
    font-size: 20px;
    padding: 10px 24px;
  }

  h1 span,
  h2 span,
  h3 span,
  h4 span,
  h5 span,
  h6 span {
    font-size: 1.75em;
  }

  .home-favorites img {
    max-width: 80%;
    margin: 0 auto;
  }

  .ih-content h1,
  .ih-content h2,
  .ih-content h3 {
    font-size: 54px;
    max-width: 85%;
  }

  .int-hero {
    padding: 72px 0;
  }

  .nav-btn {
    left: 0;
  }

  .nav-btn a.btn-outline,
  .nav-btn a.btn-outline:link,
  .nav-btn a.btn-outline:visited {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 18px;
    text-align: center;
    font-size: 20px;
  }
}

@media only screen and (max-width: 768px) {
  .ty-title {
    font-size: 4em;
  }

  .ty-subtitle {
    font-size: 2em;
  }

  .fourohfour {
    font-size: 5em;
  }

  .error {
    font-size: 3em;
  }

  .not_found {
    font-size: 2em;
  }

  .home-hero {
    padding: 72px 0 0 0;
  }

  .hh-content {
    top: 20px;
    padding: 35px;
  }

  .hh-content h1 {
    font-size: 35px;
  }

  .hh-content h1 span {
    font-size: 42px;
  }

  a.btn-outline-red,
  a.btn-outline-red:link,
  a.btn-outline-red:visited,
  a.btn-outline,
  a.btn-outline:link,
  a.btn-outline:visited,
  a.btn-outline-white,
  a.btn-outline-white:link,
  a.btn-outline-white:visited,
  a.btn-footer,
  a.btn-footer:link,
  a.a.btn-footer:visited {
    font-size: 18px;
    padding: 8px 20px;
    ;
  }

  .ih-content h1,
  .ih-content h2,
  .ih-content h3 {
    font-size: 48px;
    max-width: 100%;
  }

  .int-hero {
    padding: 64px 0;
  }
}

@media only screen and (max-width: 599px) {

  .ih-content h1,
  .ih-content h2,
  .ih-content h3 {
    font-size: 42px;
  }

  .int-hero {
    padding: 55px 0;
  }
}

@media only screen and (max-width: 479px) {
  .call-button {
    right: 0;
    left: 0;
  }

  .call-button .call-button-link,
  .call-button .call-button-link:link {
    padding: 30px;
    padding-left: 0;
    margin-left: 5px;
  }
}

@media only screen and (max-width: 379px) {}
