/* =========================================================
   xx-00 Theme Header
   ========================================================= */


/*
Theme Name: Divi Child
Template: Divi
*/



/* =========================================================
   xx-01 Global resets and base text
   ========================================================= */

.dtq-video-popup-trigger {
  justify-content: center;
}


.et_pb_text ol, .et_pb_text ul {
  padding-bottom: 0em!important;
}

#page-container .et_pb_pricing_tables_0 .et_pb_pricing_heading .et_pb_best_value {
  min-height: 0px;
}


ul {
  display:block;
  font-weight:500;
  font-size:1em;
  color:#2a5068;
  margin:0 0 0.3em 0;
  letter-spacing:0.03em;
}

#page-container { padding-top:88px!important; }

.et_pb_module.dica_divi_carousel.dica_divi_carousel_0 {
	margin-bottom:0px!important;
}

.swiper-pagination-bullet{
	width:12px!important;
	height:12px!important;
}


/* =========================================================
   xx-02 Typography
   ========================================================= */

body, p, span, li, h1, h2, h3, h4, h5, h6 {
  -webkit-hyphens:none!important;
  -ms-hyphens:none!important;
  hyphens:none!important;
  word-break:keep-all;
  overflow-wrap:normal;
}

.dkGreen {color: #179d17;}
.dkRed {color: #671414;}


li, h3, h4, h5, h6 { 
  font-family:"Cabin"!important;
  	font-weight: 600 !important;

}


#page-container .et_pb_section_0,
#page-container .et_pb_section_0 h1,
#page-container .et_pb_section_0 h2,
#page-container .et_pb_section_0 h3,
#page-container .et_pb_section_0 h4,
#page-container .et_pb_section_0 h5,
#page-container .et_pb_section_0 h6,
#page-container .et_pb_section_0 p,
#page-container .et_pb_section_0 li,
#page-container .et_pb_section_0 a,
#page-container 
#et-info a {
    color: #fff !important;
}

#page-container .et_pb_section_0 li  {
  font-size: 16px !important;
  margin-left: 25px;
}


#page-container .headerbox h1,
#page-container .headerbox h2,
#page-container .headerbox h3,
#page-container .headerbox p,
#page-container .headerbox li {
  color:white;
}

#page-container .headerbox h1 {
  font-size:0.8rem!important;
	font-family:cabin;
    padding: 0px;
    margin: 0px;
	color: #1c1c1c!important;
}

#page-container .headerbox h2 {
font-size: 3rem !important;
line-height: 3.0rem;
  padding-bottom: 0px;
}

#page-container .headerbox h3 {
	font-size: 35px !important;
  margin-top:0px!important;
	margin-bottom:8px!important;
}

#page-container .headerbox p {
  font-size: 18px;
  line-height: 1.4rem;
	color:#a8cbd9;
  margin:10px 0px!important;
}



#page-container,
#page-container h1,
#page-container h2 {
    color: rgb(29, 79, 108) !important;
}

#page-container h2 {
	font-size:30px; 
    line-height: 1.1em;
}

#page-container .smallH2 {
    font-size:1.6rem!important; 
}

#page-container h3,
#page-container h4,
#page-container h5,
#page-container h6,
#page-container p,
#page-container li,
#page-container a {
	color:#444!important;
}

#page-container h3 { 
	font-size:1.2rem!important; 
	font-style: italic;
	letter-spacing: -0.02em !important;
	margin-top:6px !important;
}

#page-container h3,
#page-container h4
{ 
	margin-left:15px !important;
	margin-right:15px !important;
}






h4 { font-size:1.4rem!important; }

h5 { font-size:1.1rem!important; }

h6 {
  font-size:0.7rem!important;
  
}




h1,h2,h3,h4 { letter-spacing:0!important; text-transform:none!important; }

h1 { font-weight:600!important; }

h2 { font-weight:500!important; }

h3 { font-weight:400!important; }

h4 { font-weight:400!important; }

.widetextP .et_pb_text_inner > p {
  font-size:1.4rem!important;
  font-family:"DM Serif Text";
}

.bullet-head {
  display:block;
  font-weight:bold;
  font-size:1em;
  color:#2a5068;
  margin:0 0 0.3em 0;
  letter-spacing:0.03em;
}

h5.et_pb_toggle_title {
  font-family:Cabin!important;
  font-size:22px!important;
  color:black!important;
}

.et_pb_section_1 .et_pb_text:not(.headerbox):not(.no-bottom) .et_pb_text_inner h2 {
    margin-top: 50px !important;
    line-height: 1.0em !important;
}

.no-bottom {
padding-bottom: 0px !important;
margin-bottom: 0px !important;
}
.no-top {
padding-top: 0px !important;
margin-top: 0px !important;
}

.et_pb_section_1 .et_pb_text:not(.headerbox):first-of-type .et_pb_text_inner h2 {
    margin-top: 0 !important;
}

.phone-demo-wrap {
    display: flex;
    gap: 15px;
}

.phone-demo-image {
    wwwwidth: 65%;
    height: auto;
}

.phone-demo-text {
    wwwwidth: 85%;
}

.demo-button-wrap {
    text-align: center;
    margin-top: 18px;
}

.demo-button {
  display: inline-block;
  padding: 6px 19px;
  background: #0C71C3;
  color: #fff !important;
  text-decoration: none;
  font-weight: 700;
  border-radius: 100px;
  font-size: 13px;
  font-style: italic;
  letter-spacing: 0.75px;
}


/* 
.headerbox p {
    position: relative;
    padding-left: 30px;
}

.headerbox p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 2px;
    width: 20px;
    height: 20px;
    background-image: url('/wp-content/uploads/heroplayicon.gif');
    background-size: contain;
    background-repeat: no-repeat;
}
 */



/* =========================================================
   xx-03 Header, menu and navigation
   ========================================================= */


.IndustriesSubMenu > .sub-menu {
    /* this is the TOP of that dropdown */
    top: 0px; /* example */
}

.nav li li { line-height:1.6em; }

#top-menu li li a { white-space:nowrap; }

#top-menu li ul { min-width:320px; }

#top-menu { margin-top:0!important; }

#et-info {
  float:right!important;
  text-align:right;
}

#et-info-phone,
#et-info-email,
#et-secondary-menu > ul {
  float:none!important;
  display:inline-block;
}

.sub-menu { margin-top:-15px; }

#top-menu li ul.sub-menu a { color:#333; }

#top-menu li ul.sub-menu a:hover {
  color:black;
  background-color:#c0d2e9;
}

.TwoColHeader {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 16px;
  font-weight: 800;
}

/* =========================================================
   xx-04 Buttons
   ========================================================= */






.bcf-button {
	display: inline-block;
	padding: 0px 16px !important;
	background: #0c71c3;
	text-decoration: none;
	border-radius: 40px;
	letter-spacing: 0.75px;
	font-weight: 600;
	font-size:13px;
	font-style: italic !important;
	background-color: rgba(0,38,0,0.64);
	border-width: 0px !important;
border-radius: 27px;
	padding: .3em 1em;
}

.bcf-button-wrap {text-align:center;
	margin-top:15px;
}

#page-container .bcf-button,
#page-container .bcf-button:link,
#page-container .bcf-button:visited {
	color: #fff !important;
}

#page-container .et_pb_button,
#page-container .et_pb_button:link,
#page-container .et_pb_button:visited,
#page-container .et_pb_button:hover,
#page-container .et_pb_button:active {
	color: #fff !important;
}

.tight-buttons {
    display: flex !important;
    justify-content: center !important;
}

.tight-buttons > .button-filter-column {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    margin: 0 !important;

    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 15px !important;
}

.tight-buttons .et_pb_button_module_wrapper {
    width: fit-content !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
}

.tight-buttons .et_pb_button {
    width: fit-content !important;
    white-space: nowrap;
}



/* =========================================================
   xx-05 Layout helpers and grids
   ========================================================= */


.four-col-grid {
    width: 100%;
}

.four-col-grid img {
    width: 100%;
	margin-right:10px;
}

.grid-row {
    display: flex;
    gap: 15px;
    margin-bottom: 20px;
    width: 100%;
    align-items: flex-start;
	line-height: 1.2em;
}

.grid-row > div:nth-child(1) {
    flex: 0 0 8%;
}

.grid-row > div:nth-child(2) {
    flex: 0 0 12%;
}

.grid-row > div:nth-child(3) {
    flex: 1;
}

.vertically-center {
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.col-left p,
.col-middle p,
.col-right p {
  padding:0;
  margin:0;
}

.col-left li,
.col-middle li,
.col-right li {
  font-size:0.9em;
  line-height:1.3em;
  margin-bottom:0.4em;
  letter-spacing:0.05em;
}

.twocol-columns {
  display:flex;
  gap:0.3em;
}

.twocol-columns > div {
  width:45%;
  margin-left:0;
}

.threecol-columns {
  border:0;
  display:flex;
  gap:2em;
  justify-content:center;
}

.threecol-columns > div {
  border:0;
  width:25%;
  flex:0 0 auto;
  text-align:left;
}

.vertCenteredImage {
display: flex; align-items: center; justify-content: center; height: 100%; 
}

.col-right.photo-blurb {width:65%;}

#page-container .leftestcolumn {
  width: 30% !important;
}

#page-container .leftPhoneCol {
  width: 15% !important;
}

#page-container .middlePhoneCol {
  width: 15% !important;
}

#page-container .rightPhoneCol {
  width: 20% !important;
}



/* =========================================================
   xx-06 Services sections
   ========================================================= */


.services-row .et_pb_module_header span {
  font-family:"DM Serif Display"!important;
    font-size: 26px !important;
    line-height: 1em !important;
    display: block;
    text-align: center;
}

.services-row .et_pb_blurb_description p {
    font-size: 22px !important;
    line-height: 1em !important;
    color: #09380a !important;
    text-align: center;
    margin: 0 auto;
}

.services-row .et_pb_blurb_description p.blurb2P {
    font-size: 14px !important;
    width: 100%;
    margin: 0 auto;
    line-height: 1.2em !important;
}

.services-row .et_pb_blurb_description hr {
    border-top: 1.0px solid #349c36;
    width: 50%;
}

.services-row .et_pb_main_blurb_image img {
    width: 65px !important;
    height: 65px !important;
}

.services-row .et_pb_main_blurb_image {
    margin-bottom: 0 !important;
}

.servicesubs h3 {
  font-size: 40px !important;
  line-height: 1.0em;
}

.servicesubs h4 {
  font-size: 4px !important;
  line-height: 1.0em;
}



/* =========================================================
   xx-07 Testimonials and sliders
   ========================================================= */


#testimonial-slider,
#testimonial-slider h1,
#testimonial-slider h2,
#testimonial-slider h3,
#testimonial-slider h4,
#testimonial-slider h5,
#testimonial-slider h6,
#testimonial-slider p,
#testimonial-slider li,
#testimonial-slider a {
    color: #fff !important;
}

.testtext:before {
  font-family:"DM Serif Text";
  content:"“";
  font-size:5em;
  line-height:1;
  display:block;
  text-align:center;
  margin-bottom:-45px;
  color:#8287b6;
}

p.testtext {
  font-size:18px;
  line-height:1.3em;
  text-align:center;
  margin:0 1.6em;
  padding:0;
  color:#fff!important;
  font-style:italic;
}

.testpos {
  border:1 solid black;
  font-size:16px;
  text-align:center;
  font-style:italic;
  color:#fff;
  margin-top:12px;
  padding:0;
}

.et_pb_slide_description,
.et_pb_slider_fullwidth_off .et_pb_slide_description {
  margin:0;
  padding:0;
}

.et-pb-controllers { display:none; }

#testimonial-slider.et_pb_row { padding:0!important; }



/* =========================================================
   xx-08 Footer
   ========================================================= */


#footer-widgets .footer-widget:nth-child(2) { width:33%; }

#footer-bottom { display:none; }

.et_pb_contact_form_0_tb_footer.et_pb_contact_form_container .et_pb_contact_main_title {
  margin-bottom:0!important;
}



/* =========================================================
   xx-09 Contact forms
   ========================================================= */


.contact-title {
  color:#555;
  font-size:20px;
}

.et_pb_contact p input,
.et_pb_contact p textarea {
  -webkit-appearance:none;
  color:#490082;
  font-weight:400;
  font-size:16px;
}



/* =========================================================
   xx-10 Divi module overrides
   ========================================================= */


.image.wp-image-153.attachment-medium.size-medium { max-width:70%!important; }

.et_pb_accordion .et_pb_toggle:first-child { display:none; }

.et_pb_gallery_title { display:none!important; }



/* =========================================================
   xx-11 Video-related styling
   ========================================================= */


.divider-video-hr {
  border-bottom:4px solid rgba(99,79,117,.35);
  padding-bottom:30px!important;
}

.video-menu a::before {
  content:'';
  display:inline-block;
  width:26px;
  height:20px;
  margin-right:7px;
  margin-top:-4px;
  background-image:url('/wp-content/uploads/2025/videoiconred.jpg');
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center;
  vertical-align:middle;
}

.video-menu-first a::before {
  content:'';
  display:inline-block;
  width:26px;
  height:20px;
  margin-right:7px;
  margin-top:-4px;
  background-image:url('/wp-content/uploads/2026/05/videoiconredlabel.jpg');
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center;
  vertical-align:middle;
}

#rrpopup1 {
  display:none;
  position:fixed;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  z-index:999999;
}

.videorow { width:70%!important; }

.et_pb_row .et_pb_column.vidcolleft { width:375px; }

.et_pb_row .et_pb_column.vidcolright {
  width:60%!important;
  text-align:left;
}

#page-container .video-blurb .et_pb_module_header,
#page-container .video-blurb .et_pb_module_header span,
#page-container .video-blurb .et_pb_blurb_description,
#page-container .video-blurb .et_pb_blurb_description p {
  text-align: center !important;
	line-height:1.1em;
}

#page-container .video-blurb .et_pb_blurb_container h4 {display:none;}

#page-container .bcf-owner-row .video-blurb img {
  width: 50px;
  height: 50px;
  object-fit: contain;
}

#page-container .bcf-owner-row .bullet-block h4,
#page-container .bcf-owner-row .video-blurb p {
  color: #0b315c !important;
}



/* =========================================================
   xx-12 Owner row / credibility block
   ========================================================= */


#page-container .bcf-owner-row h2,
#page-container .bcf-owner-row h4,
#page-container .bcf-owner-row p {
  font-family: inherit !important;
  margin-top: 0;
}

#page-container .bcf-owner-row .photo-blurb h2 {
  font-size: 20px !important;
  line-height: 1.1em !important;
}

#page-container .bcf-owner-row .photo-blurb p {
  font-size: 14px !important;
  line-height: 1.5em !important;
	font-weight: 400;
}

#page-container .bcf-owner-row .bullets-blurb {
  display: flex;
  flex-wrap: wrap;
  gap: 35px;
}

#page-container .bcf-owner-row .bullet-block h4 {
  font-size: 14px !important;
  line-height: 1.2em !important;
  color: #0b315c !important;
}

#page-container .bcf-owner-row .bullet-block {
  width: calc(50% - 50px);
  display: flex;
  align-items: center;
  gap: 12px;
}

#page-container .bcf-owner-row .bullet-icon {
  width: 50px;
  height: 50px;
  object-fit: contain;
}

#page-container .bcf-owner-row,
#page-container .bcf-owner-row h2,
#page-container .bcf-owner-row h3,
#page-container .bcf-owner-row h4,
#page-container .bcf-owner-row p,
#page-container .bcf-owner-row span,
#page-container .bcf-owner-row a {
  font-family: 'Cabin', Helvetica, Arial, sans-serif !important;
  color: #000 !important;
}

#page-container .right-col {
/* 
  width: 15% !important;
 */
	display:flex;
	align-items:top;
	justify-content:center;
	padding-top:15px;
}

#page-container .left-owner-col {
  width: 25% !important;
    margin-left: 44px;
}

#page-container .middle-bullets-col {
  width: 40% !important;
  margin-left:0px;
}

.colLeftImg {max-width:30%!important;
margin-right:12px;}

#page-container .bcf-owner-row .et_pb_main_blurb_image {margin-bottom:0px;}

#page-container .bcf-owner-row .bullets-blurb {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 30px;
}

#page-container .bcf-owner-row {
  display: flex;
  align-items: top;
  justify-content: center;
}

.middle-bullets-col {
  position: relative;
}

.middle-bullets-col::before,
.middle-bullets-col::after {
  content: "";
  position: absolute;
  top: 17%;
  height: 66%;
  width: 0px;
  background: #aaa;
	margin-left: 16px;
}

.middle-bullets-col::before {
  left: 0;
}

.middle-bullets-col::after {
  right: 0;
}



/* =========================================================
   xx-13 Page-specific overrides
   ========================================================= */


.page-id-1376468 .footer-testimonials
{
    display:none;
}

.page-id-302 #customers-stories.footer-testimonials { display:none!important; }






/* =========================================================
   xx-14 Temporary debug rules
   ========================================================= */


#page-container .four-col-grid,
#page-container .four-col-grid * {
  border:1.0px solid red!important;
}

#top-menu-nav * {
  border: 0px solid red !important;
}



/* =========================================================
   xx-15 Archived / disabled CSS
   ========================================================= */


/* .videobox * { color:white!important; }
.videobox h1 { font-size:3.0rem!important; }
.videobox h2 {
  font-size:2.2rem!important;
  line-height:2.0rem!important;
}
.videobox h3 { color:#c1dbdb!important; }
.videobox li {
  font-size:1.2rem!important;
  line-height:1.4rem!important;
}
.videoboxbluepara p {
	color:#c1dbdb!important;
} */

/* shared text reset */

/* photo blurb */

/* bullets */

/* images/icons */



/* =========================================================
   xx-16 Media queries
   ========================================================= */

@media (min-width:981px) and (max-width:1125px) {
  .container { width:95%!important; }
}


@media (min-width:981px){
  .et_pb_gutters3 .et_pb_column_3_5 { width:65%; }
  .et_pb_gutters3 .et_pb_column_1_5 {
    width:15%;
    margin-top:2em;
    margin-left:0;
  }
  .et_pb_gutters3 .et_pb_column,
  .et_pb_gutters3.et_pb_row .et_pb_column {
    margin-right:0;
  }
}
@media (min-width:981px){
  .et_pb_gutters3 .et_pb_column_3_5 { width:65%; }
  .et_pb_gutters3 .et_pb_column_1_5 {
    width:15%;
    margin-top:2em;
    margin-left:0;
  }
  .et_pb_gutters3 .et_pb_column,
  .et_pb_gutters3.et_pb_row .et_pb_column {
    margin-right:0;
  }
}

@media (min-width:981px){
  .et_pb_gutters3 .et_pb_column_4_4 .et_pb_module,
  .et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_module {
    margin-bottom:0px!important;
  }
}

@media (min-width: 981px) {
  .menu-item-1376140 ul.sub-menu {
    width: 375px;
  }
  .menu-item-1376140 ul.sub-menu .menu-item,
  .menu-item-1376140 ul.sub-menu .menu-item a {
    width: 100%;
  }
}

@media only screen and (min-width:768px){
  .videorow { width:85%!important; }
}



/* =========================================================
   99 Unsorted
   ========================================================= */


#customers-stories {padding-top: 5px!important;}

.et-pb-icon2 {
  font-family: ETmodules;
	content: '\e090';
  speak: none;
  font-weight: 400;
  -webkit-font-feature-settings: normal;
  font-feature-settings: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  font-size: 18px;
  font-style: normal;
  display: inline-block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  direction: ltr;
	margin-right: 4px;
}

.mycustom-hr {
  border:1.0px solid #dcdcdc;
  width:100%;
  margin:16px auto 0 auto;
}











#page-container .threeblurbs,
#page-container .threeblurbs h1,
#page-container .threeblurbs h2,
#page-container .threeblurbs h3,
#page-container .threeblurbs h4,
#page-container .threeblurbs h5,
#page-container .threeblurbs h6,
#page-container .threeblurbs p,
#page-container .threeblurbs li,
#page-container .threeblurbs span,
#page-container .threeblurbs strong,
#page-container .threeblurbs em,
#page-container .threeblurbs a:not(.et_pb_button),
#page-container .threeblurbs .et_pb_blurb_description,
#page-container .threeblurbs .et_pb_module_header {
    color: #fff !important;
}








