/* -- 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 */
/*
.floating-active #headerrow-349356, #mobileheader-639685 {
	background: rgb(110,69,227);
	background: -moz-linear-gradient(-45deg, rgba(110,69,227,1) 0%, rgba(136,211,206,1) 99%);
	background: -webkit-linear-gradient(-45deg, rgba(110,69,227,1) 0%,rgba(136,211,206,1) 99%);
	background: linear-gradient(135deg, rgba(110,69,227,1) 0%,rgba(136,211,206,1) 99%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3da2c4', endColorstr='#88d3ce',GradientType=1 );
}
*/
.floating-active #headerrow-349356,
#mobileheader-639685 {
  background: rgba(37, 99, 120) !important;
}

#headerrow-349356 {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#256378+0,256378+100&1+0,0+100 */
  background: -moz-linear-gradient(top, rgba(37, 99, 120, 1) 0%, rgba(37, 99, 120, 0) 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(37, 99, 120, 1) 0%, rgba(37, 99, 120, 0) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(37, 99, 120, 1) 0%, rgba(37, 99, 120, 0) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#256378', endColorstr='#00256378', GradientType=0);
  /* IE6-9 */
}

/* 1b) DNN Fixes */
#dnn_FullScreenPaneA,
#dnn_FullScreenPaneB,
#dnn_FullScreenPaneC {
  margin-bottom: 0;
}

/* 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-primary,
a.btn-primary:link,
a.btn-primary:visited {
  display: inline-flex;
  justify-content: center;
  text-align: center;
  color: #fff;
  font-size: 25px;
  padding: 10px 22px;
  background-color: #256378;
  border: 2px solid #256378;
  -webkit-border-radius: 999px;
  -moz-border-radius: 999px;
  border-radius: 999px;
  transition: all 450ms;
}

a.btn-primary:hover,
a.btn-primary:link:hover,
a.btn-primary:visited:hover {
  color: #256378;
  background-color: #fff;
  border: 2px solid #fff;
}

a.btn-white,
a.btn-white:link,
a.btn-white:visited {
  display: inline-flex;
  justify-content: center;
  text-align: center;
  color: #256378;
  font-size: 25px;
  padding: 10px 22px;
  background-color: #fff;
  border: 2px solid #fff;
  -webkit-border-radius: 999px;
  -moz-border-radius: 999px;
  border-radius: 999px;
  transition: all 450ms;
}

a.btn-white:hover,
a.btn-white:link:hover,
a.btn-white:visited:hover {
  color: #fff;
  background-color: #256378;
  border: 2px solid #256378;
}

a[class^="btn-"] i {
  padding-left: 6px;
}

/* elfsite button */
.fiGtWj {
  color: #fff !important;
}

/* 2b) 404 Changes */

/* 2c) Internal Heros */
.int-hero {
  background-image: url(/Portals/0/Images/Internal/IntHero.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  padding: 220px 0 180px;
}

.int-hero h1 {
  color: #fff;
  font-size: 90px;
}

.int-hero h2,
.int-hero p {
  color: #c4c4c4;
  padding: 12px 0;
}

/* 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: ;
}

/* 2e) Blog Styles */
.blog-content {
  padding: 40px 5px;
}

.blog-content img {
  padding: 20px 0 10px 0;
}

.blog-content em {
  text-align: center;
  margin: auto;
  font-size: 18px;
}

.blog-content h1 {
  padding-top: 45px;
}

.blog-content h2 {
  padding-top: 35px;
}

.blog-content h3 {
  padding-top: 10px;
}

.blog-content h4 {
  margin-top: 20px;
}

.blog-content h5 {
  margin-top: 40px;
}

.blog-content h6 {
  margin-top: 20px;
}

.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 */
.home-hero {
  background-image: url(/Portals/0/Images/Home/HomeHero.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
  background-attachment: fixed;
  position: relative;
  z-index: 1;
}

.home-hero:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 0;
}

.hh-content {
  padding: 300px 0;
  position: relative;
  z-index: 2;
}

.hh-content h1 {
  font-size: 90px;
  padding: 20px 0;
}

.hh-content p {
  font-size: 26px;
  padding-bottom: 15px;
}

.hh-content a {
  margin-right: 15px;
}

.line-left {
  font-size: 25px;
  padding-left: 80px;
  position: relative;
}

.line-left:before {
  content: "";
  position: absolute;
  left: 0;
  top: 48%;
  height: 2px;
  width: 70px;
  background-color: #3da2c4;
}

.hh-content .line-left:before,
.home-blog-title .line-left:before {
  background-color: #fff;
}

/* other homepage changes */
.home-about {
  padding: 60px;
}

.ha-image {
  flex: 1;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

.ha-image img {
  height: 50%;
  width: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

h3.home-highlight {
  font-size: 24px;
  text-transform: uppercase;
}

.home-services .item {
  margin-top: 20px;
  margin-bottom: 20px;
}

.home-services .item .content {
  -webkit-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.25);
  -moz-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.25);
  box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.25);
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  border-radius: 12px;
  text-align: center;
  padding: 30px 55px;
  height: 100%;
}

.home-services .item .content img {
  margin-bottom: 10px;
}

.home-services .item i {
  color: #3da2c4;
  font-size: 60px;
}

.home-services .item .line {
  width: 80px;
  margin: 15px auto;
  height: 3px;
  background-color: #3da2c4;
}

.home-blog-title {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#256378+0,3da2c4+100 */
  background: rgb(37, 99, 120);
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, rgba(37, 99, 120, 1) 0%, rgba(61, 162, 196, 1) 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, rgba(37, 99, 120, 1) 0%, rgba(61, 162, 196, 1) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, rgba(37, 99, 120, 1) 0%, rgba(61, 162, 196, 1) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#256378', endColorstr='#3da2c4', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  border-radius: 12px;
  padding: 30px 45px;
}

.insurance-spotlight {
  background-image: url(/Portals/0/Images/Home/highlight-bg.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  position: relative;
}

.insurance-spotlight:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 0;
}

.insurance-spotlight .content {
  position: relative;
  z-index: 2;
  padding: 220px 0;
}

.footer-bl {
  border-left: 2px solid #3da2c4;
  padding-left: 35px;
}

.footer-bl p {
  margin: 0;
  word-break: break-word;
}

.footer-content i {
  color: #3da2c4;
  font-size: 40px;
}

.footer-bottom {
  background-color: #fff;
  border-bottom: 2px solid #808080;
  padding: 32px 0;
}

.footer-bottom a,
.footer-bottom a:link,
.footer-bottom a:visited {
  color: #999999;
  font-family: "Titillium Web";
  font-size: 24px;
  margin: 0 40px;
}

.wm-plug {
  text-align: right;
}

.wm-plug a,
.wm-plug a:link,
.wm-plug a:visited {
  color: #999999;
  text-decoration: underline;
}

.wm-plug a:hover,
.wm-plug a:link:hover,
.wm-plug a:visited:hover,
#footerinfo628747 a:hover,
.footer-bottom a:hover,
.footer-bottom a:link:hover,
.footer-bottom a:visited:hover {
  color: #3da2c4;
}

/* Section 4) Internal Page Changes
		4a) Internal page base styling */
.int-content hr {
  border-color: #c9c9c9;
  margin: 60px 0;
}

.fw-normal {
  font-weight: 300;
}

.int-content .line {
  width: 80px;
  margin: 15px 0;
  height: 3px;
  background-color: #3da2c4;
}

.int-content ul {
  padding-left: 15px;
}

.highlight-title {
  width: 100%;
  padding: 8px 20px;
  background-color: #256378;
  margin-bottom: 25px;
}

.highlight-title span {
  color: #fff;
  font-size: 28px;
}

.insights-content h2 {
  font-size: 26px;
}

/* Misc */

.video-wrapper {
  width: 100%;
  box-sizing: content-box;
  height: 0;
  padding-bottom: 56.25%;
  position: relative;
}

.video-wrapper iframe,
.video-wrapper video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*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) {
  .ha-image img {
    height: auto;

  }
}

@media only screen and (min-width:1600px) {}

@media only screen and (max-width:1600px) {
  .hh-content {
    padding: 225px 0 150px;
  }

  .hh-content h1 {
    font-size: 95px;
    padding: 12px 0;
  }

  .int-hero {
    padding: 200px 0 160px;
  }

  .int-hero h1 {
    font-size: 88px;
  }
}

@media only screen and (max-width:1366px) {}

@media only screen and (max-width:1200px) {
  .hh-content {
    padding: 260px 0 160px;
  }

  .hh-content h1 {
    font-size: 86px;
    padding: 8px 0;
  }

  .footer-bottom a,
  .footer-bottom a:link,
  .footer-bottom a:visited {
    margin: 0 20px;
  }

  .int-hero {
    padding: 180px 0 140px;
  }

  .int-hero h1 {
    font-size: 80px;
  }
}

@media only screen and (max-width: 992px) {
  .call-button {
    bottom: 20px;
    display: flex;
  }

  .hh-content {
    padding: 120px 0;
  }

  .hh-content h1 {
    font-size: 72px;
  }

  .hh-content p {
    font-size: 24px;
  }

  .int-hero {
    padding: 120px 0;
  }

  .int-hero h1 {
    font-size: 72px;
  }
}

@media only screen and (max-width: 991px) {
  .ha-image {
    height: 400px;
    width: 100%;
    flex: auto;
  }

  .ha-image img {
    height: 100%;
  }
}

@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;
  }

  .hh-content {
    padding: 100px 0;
  }

  .hh-content h1 {
    font-size: 60px;
  }

  .hh-content p {
    font-size: 22px;
  }

  .line-left {
    font-size: 23px;
  }

  a.btn-primary,
  a.btn-primary:link,
  a.btn-primary:visited,
  a.btn-white,
  a.btn-white:link,
  a.btn-white:visited {
    font-size: 22px;
  }

  .ha-image {
    height: 320px;
  }

  .int-hero {
    padding: 112px 0;
  }

  .int-hero h1 {
    font-size: 64px;
  }

  .home-about {
    padding: 60px 60px 30px;
  }

  .footer-bottom a,
  .footer-bottom a:link,
  .footer-bottom a:visited {
    margin: 0 15px;
  }
}

@media only screen and (max-width: 599px) {

  .footer-bottom a,
  .footer-bottom a:link,
  .footer-bottom a:visited {
    margin: 0 5px;
  }

  .hh-content {
    padding: 80px 0;
  }

  .hh-content h1 {
    font-size: 48px;
  }

  .hh-content p {
    font-size: 20px;
  }

  .home-about {
    padding: 30px 60px 0;
  }

  .line-left {
    font-size: 21px;
    padding-left: 60px;
  }

  .line-left:before {
    width: 50px;
  }

  a.btn-primary,
  a.btn-primary:link,
  a.btn-primary:visited,
  a.btn-white,
  a.btn-white:link,
  a.btn-white:visited {
    font-size: 20px;
  }

  .int-hero {
    padding: 98px 0;
  }

  .int-hero h1 {
    font-size: 54px;
  }

  .ha-image {
    height: 300px;
  }
}

@media only screen and (max-width: 575px) {
  .footer-bottom img {
    max-width: 220px;
    margin: 0 auto 20px;
    display: inherit;
  }

  .footer-bottom a,
  .footer-bottom a:link,
  .footer-bottom a:visited {
    display: block;
    font-size: 28px;
    margin: 20px;
  }
}

@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;
  }

  .hh-content h1 {
    font-size: 36px;
  }

  .int-hero {
    padding: 80px 0;
  }

  .int-hero h1 {
    font-size: 48px;
  }

  .home-about {
    padding: 30px 30px 0;
  }
}

@media only screen and (max-width: 379px) {

  a.btn-primary,
  a.btn-primary:link,
  a.btn-primary:visited,
  a.btn-white,
  a.btn-white:link,
  a.btn-white:visited {
    margin: 5px 0;
  }
}
