:root {
--app-wide-lg: 2080px; 
--app-wide-md: 1600px;
--app-wide-text: 1280px; 
--app-wide-text-half: 640px; 
--app-text-color:#212125;
--app-secondary-color:#ecf2f5;
--app-primary-color:#43b4e7;
--app-active-color:#0f2d3b;
}

body {
  font-family: "Source Sans 3", serif;
  font-weight: 400;
  font-style: normal;
font-size:16px; 
}

a:focus { outline:none !important; }
body.home .app-custom-header { position:absolute; }

.banner-column-home  {
    width:100%  !important; 
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
   padding-top:0px !important; 
}

.banner-column-home .banner-column-inner {
    background-image: url(/fileserver/sites/304/images/home-banner.jpg);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 60vh;
    width:100%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
padding-top:180px;
}

.banner-column-home .text-inner {
padding-top:0px; padding-bottom:80px;
padding-right:200px;
}

.banner-column-home .banner-column-inner h2 { font-size:50px; font-weight:600;  line-height:1.3 !important; color:#fff; }
.banner-column-home .banner-column-inner h3 { font-size:36px; font-weight:500;  line-height:1.3 !important; color:var(--app-primary-color);}
.banner-column-home .banner-column-inner .banner-home-slogonbox { padding:14px 20px; color:#fff; background-color:rgba(255,255,255,0.3);  font-size:40px; font-weight:600; text-shadow: 2px 2px 3px rgba(0,0,0,4); border:solid 1px #fff;  display:inline-block;  line-height:1 !important; }
.banner-column-home .banner-column-inner  .btn-banner-home-contact {     font-size: 22px;   line-height: 1.6; }

.app-grid-2  {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr));}
.app-grid-3  {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr));}
.app-grid-4-r  {display:grid; grid-template-columns:repeat(4, minmax(0, 1fr));}

.app-card-active { background-color:var(--app-active-color); color:#fff; border-radius:14px; padding:10px 40px; }
.app-page-title-1 { font-size: 34px  !important;  }
.app-page-title-2 { font-size: 26px  !important;  }

.app-card-secondary{ background-color:var(--app-secondary-color); color:var(--app-text-color); border-radius:14px; padding:10px 40px; border:solid 1px #c6d7df; }

.app-card-primary-outline {  border:solid 1px var(--app-primary-color); padding:10px 40px; }

.app-border-primary { border:solid 1px var(--app-primary-color);  }

.app-bg-secondary { background-color:var(--app-secondary-color); }

.home-text-container p,.home-text-container div { font-size:18px; }

.accordion-group .panel {background-color:transparent !important;  border:0 !important; color:#fff; margin-top:30px; }
.accordion-group .panel:first-of-type {margin-top:0px; }
.accordion-group .panel-default>.panel-heading {  background-color:transparent !important;  border:0 !important;  color:#fff;  padding:0 !important;  font-size:30-px; font-weight:500; }
.accordion-group .panel-default { border:0 !important; color:#fff; }
.accordion-group .panel  a {color:#fff;}
.accordion-group .panel .panel-title { font-size:26px !important;  font-weight:500 !important; margin:0 !important;}
.accordion-group .panel .panel-title a { display:flex; align-items:center; justify-content:space-between; }
.accordion-group .panel .panel-title a:hover,.accordion-group .panel .panel-title a:focus { text-decoration:none; }
.accordion-group .panel .panel-title a .fa { font-size:50px; }
.accordion-group .panel .panel-title a.collapsed .fa { transform: rotate(180deg);}
.accordion-group.panel-group .panel-heading+.panel-collapse>.panel-body {border:0 !important }
.accordion-group.panel-group .panel-heading+.panel-collapse>.panel-body { padding-left:0; padding-right:0; padding-top:6px; }

.app-hide-mobile { display:inline-block; }
.app-show-mobile { display:none; }

body.page-2809 .formbuilder-widget-2588 { margin-left:16px; margin-right:16px; }
body.page-2809 .formbuilder-inner { 
padding:60px; 
max-width:600px; margin:0 auto; 
margin-top:60px; 
margin-bottom:100px; 
border:solid 1px var(--app-primary-color);
border-radius:16px;
}

body.page-2809 .formbuilder-inner  .widget-name-title { margin-top:0; padding-top:0; color:var(--app-primary-color);}
body.page-2809 .formbuilder-inner  .form-control { border-color:var(--app-primary-color);}

body.page-2809 .formbuilder-inner  .btn-form-submit  { border:none; color:#fff !important; background-color:var(--app-primary-color); border-radius:6px;  line-height:1.3 !important }
body.page-2809 .formbuilder-inner  .btn-form-submit :hover { border:none; color:#fff !important; background-color:var(--app-primary-color) !important; opacity:0.7; transition:all 0.15s easy }

.app-empower-group { display:flex; justify-content:space-between; gap:14px;  flex-wrap:wrap; }
.app-empower-group > div { flex:1; font-size:16px !important; padding-left:6px !important;  padding-right:6px !important; min-width:160px; max-width:200px;  }

hr.app-divider-primary { border-top:solid 1px var(--app-primary-color) !important; }
.app-card-inner hr.app-divider-primary { margin-bottom:0 !important;  margin-top:32px !important; }

.scrollToTop { background-color:var(--app-primary-color) !important; }

@media (max-width:991px) {
.banner-column-home  {
   padding-top:0px !important; 
}
.banner-column-home .banner-column-inner { 
   padding-top:140px !important; 
}
.banner-column-home .text-inner {
padding-top:0px; padding-bottom:60px;
padding-right:100px;
}
.banner-column-home .banner-column-inner h2 { font-size:46px; font-weight:700; }
.banner-column-home .banner-column-inner h3 { font-size:34px;  }
.banner-column-home .banner-column-inner .banner-home-slogonbox {   font-size:42px; }
.banner-column-home .banner-column-inner  .btn-banner-home-contact {     font-size: 20px;   line-height: 1.5; }

.app-card-active {   padding:10px 30px; }
.app-card-secondary{  padding:10px 30px;  }
.app-card-primary-outline { padding:10px 30px; }

.home-text-container p,.home-text-container div { font-size:18px; }

}


@media (max-width:767px) {
.banner-column-home  {
   padding-top:0px !important; 
}
.banner-column-home .banner-column-inner { 
   padding-top:80px !important; 
}
.banner-column-home .text-inner {
padding-top:0px; padding-bottom:40px;
padding-right:20px;
}
.banner-column-home .banner-column-inner h2 { font-size:28px; font-weight:600; }
.banner-column-home .banner-column-inner h3 { font-size:22px; text-shadow: 1px 1px 2px rgba(0,0,0,2); }
.banner-column-home .banner-column-inner .banner-home-slogonbox { padding:12px 16px; color:#fff; background-color:rgba(255,255,255,0.3);  font-size:24px;  font-weight:600;text-shadow: 1px 1px 2px rgba(0,0,0,2);}
.banner-column-home .banner-column-inner  .btn-banner-home-contact {     font-size: 18px;   line-height: 1.4; }

.app-grid-2  {display:grid; grid-template-columns:repeat(1, minmax(0, 1fr));}
.app-grid-3  {display:grid; grid-template-columns:repeat(1, minmax(0, 1fr));}
.app-grid-4-r  {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr));}

.app-page-title-1 { font-size: 26px !important; }
.app-page-title-2 { font-size: 22px !important; }
.app-card-active { border-radius:10px; padding:10px 20px; }
.app-card-secondary{ border-radius:10px; padding:10px 20px;}
.app-card-primary-outline { padding:10px 20px; }

.home-text-container p,.home-text-container div { font-size:16px; }
.accordion-group .panel { margin-top:20px; }
.accordion-group .panel .panel-title { font-size:20px !important;  font-weight:500 !important; }

.accordion-group .panel .panel-title a .fa { font-size:40px; }

.app-hide-mobile { display:none; }
.app-show-mobile { display:inline-block}


body.page-2809 .formbuilder-inner { 
padding:30px; 
margin-top:40px; 
margin-bottom:60px; 
border-radius:12px;
}
.app-card-inner hr.app-divider-primary {  margin-top:16px !important; }
}


@media (max-width:575px) {
.app-grid-4-r  {display:grid; grid-template-columns:repeat(1, minmax(0, 1fr));}
.keyfeature-mobile {margin-left: -30px !important;
    margin-right: -30px !important;
    width: 98vw !important;
    max-width: inherit !important;
 }
}

.outer-container {
    width: 100%;
    max-width: var(--app-wide-lg);
    margin: 0 auto;
    position: relative;
}


.app-primary-color { color:var(--app-primary-color); }

.btn-app-primary { border:none !important; color:#fff !important; background-color:var(--app-primary-color); border-radius:6px;  line-height:1.3 !important }
.btn-app-primary:hover { border:none !important; color:#fff !important; background-color:var(--app-primary-color) !important; opacity:0.7; transition:all 0.15s easy }

.btn-app-primary-outline { color:var(--app-primary-color) !important; border: solid 1px var(--app-primary-color) !important; border-radius:0 !important; line-height:1.3 !important  }
.contentbuilder-css .row img { margin:0; }
a.btn-app-primary-outline:hover {background-color:var(--app-primary-color) !important;  color:#fff !important; } 

.text-container {     width: 100%;    max-width: var(--app-wide-text);    margin: 0 auto;}

.contentbuilder-css .section-contact p, .contentbuilder-css .section-contact div, .contentbuilder-css .section-contact li  {font-size:20px; }
.contentbuilder-css a  { color:var(--app-text-color); }


.contentbuilder-css, contentbuilder-css p, contentbuilder-css div, contentbuilder-css li {  font-family: "Source Sans 3", serif; font-size:18px; }


.app-container-wide-md { max-width:var(--app-wide-md); width:100%; margin:0 auto; overflow:hidden; }


.app-bg-primary { background-color:var(--app-primary-color); }
.app-text-white, .app-text-white * { color:#fff; }
.contentbuilder-css h1, .contentbuilder-css h2, .contentbuilder-css h3, .contentbuilder-css h4, .contentbuilder-css h5, .contentbuilder-css h6 { font-weight:600;   font-family: "Source Sans 3", serif; }

.contentbuilder-css div, .contentbuilder-css p, .contentbuilder-css td, .contentbuilder-css li, .contentbuilder-css label { font-weight:300; }
.contentbuilder-css li { padding-top:4px; padding-bottom:6px; }
.contentbuilder-contentarea > .contentbuilder-inner { width:100%; max-width: 100%; padding:0; } 
.contentbuilder-contentarea > .contentbuilder-inner > .row,.contentbuilder-contentarea > .contentbuilder-inner > .column, .contentbuilder-contentarea .column {
padding:0; margin:0;
float:none;
}

.textbuilder-inner p {
    margin: 1em 0;
line-height:1.8;
}

.contentbuilder-contentarea a, .textbuilder-contentarea a, .contentbuilder-contentarea a:hover, .textbuilder-contentarea a:hover {
    color: var(--app-primary-color);
}

.source-sans3-300 {
  font-family: "Source Sans 3", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
}

.source-sans3-400 {
  font-family: "Source Sans 3", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.source-sans3-500 {
  font-family: "Source Sans 3", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.source-sans3-600 {
  font-family: "Source Sans 3", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}