/*---------------------------------------------------------------------------------

 Theme Name:   Divi Child Theme
 Theme URI:    
 Description:  
 Author:       Signal Path Creative
 Author URI:   https://www.signalpathcreative.com
 Template:     Divi
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html

------------------------------ ADDITIONAL CSS HERE ------------------------------*/

/* Montserrat, self-hosted (SIL Open Font License, see fonts/OFL.txt). Replaces the Google Fonts request,
   which Usercentrics blocks until consent. Variable font: weights 100-900. */
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url('fonts/montserrat-normal-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url('fonts/montserrat-normal-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: 'Montserrat';
	font-style: italic;
	font-weight: 100 900;
	font-display: swap;
	src: url('fonts/montserrat-italic-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: 'Montserrat';
	font-style: italic;
	font-weight: 100 900;
	font-display: swap;
	src: url('fonts/montserrat-italic-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Carried over from the Molti child theme (2026-10-22): only rules that match markup on this site. */
/* ---- From Molti style.css (only rules used on this site) ---- */
#page-container { overflow:hidden; }
.et_mobile_menu {
    margin-top: 15px;
    border-radius: 10px;
    box-shadow: rgba(0, 0, 0, 0.21) 0px 15px 30px;
}
.et_mobile_menu li a {
	padding: 13px 5%;
    margin: 10px 0;
}
#page-container .mobile_nav li ul.hide {
    display: none !important;
}
#page-container .mobile_nav .menu-item-has-children {
    position: relative;
}
#page-container .mobile_nav .menu-item-has-children > a {
    background: transparent;
}
#page-container .mobile_nav .menu-item-has-children > a + span {
    position: absolute;
    right: 0;
    top: 0;
    padding: 10px 20px;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
    z-index: 3;
}
.menu-closed {
	border-left:1px solid #eee;
}
#page-container span.menu-closed:before {
    content: "\"";
    display: block;
    color: #000;
    font-size: 14px;
    font-family: ETmodules;
	transition:.3s ease;
	background:rgba(255,128,87,0.39);
	color:#ff8057;
	text-align: center;
    border-radius: 100px;
	width:26px;
}
#page-container span.menu-closed.menu-open:before {
    content: "\"";
	transform:rotate(180deg);
	background:#ff8057;
	color:#fff;
}
.link-effect a {
  cursor: pointer;
  padding-bottom:5px;
  transition: all 0.2s linear;
  background: linear-gradient(to bottom, #FF8057 0%, #FF8057 98%); 
  background-size: 0px 2px;
  background-repeat: no-repeat;
  background-position: left 100%;
}
.link-effect a:hover {
  background-size: 100% 2px;
}
.link-effect-white a {
  cursor: pointer;
  padding-bottom:5px;
  transition: all 0.2s linear;
  background: linear-gradient(to bottom, #fff 0%, #fff 98%); 
  background-size: 0px 2px;
  background-repeat: no-repeat;
  background-position: left 100%;
}
.link-effect-white a:hover {
  background-size: 100% 2px;
}
.et-menu-nav .nav li li {
    padding: 0 !Important;
}
.et-menu-nav .nav li ul {
	width:250px !Important
}
.et-menu-nav .nav ul li a:hover {
    background-color: transparent;
}
.et-menu-nav .et-menu li li a {
	padding:10px 20px;
	margin:3px 0;
}
.et-menu-nav .et-menu li li a:before {
    content: "";
    display: block;
    position: absolute;
    width: 0;
    top: 0;
    bottom: 0;
    left: 0px;
    transition: all .2s ease-in-out;
	border-radius: 0px 3px 3px 0px;
}
.et-menu-nav .et-menu li li a:hover:before {
    background: #ff8057;
	width:4px;
}
.et-menu-nav .sub-menu {
	box-shadow: 0px 5px 40px #0000002b !IMPORTANT;
	border-radius:8px;
}
.et-menu-nav .sub-menu:after {
    content: "";
    display: block;
    position: absolute;
    left: 11%;
    top: -22px;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #fff;
    border-left: 10px solid transparent;
    z-index: 1;
}
.et_pb_button_module_wrapper {
	transition:all .3s ease !Important;
}
.et_pb_equal_columns>.et_pb_column {
	margin-top:auto;
	margin-bottom:auto;
}
.inline-buttons-row .et_pb_button_module_wrapper {
display:inline-block;
}
.et_pb_main_blurb_image {
	transition:.3s ease;
}
.molti-blog-grid .et_pb_post {
	display: flex;
	flex-direction: column;
    position: relative;
}
.molti-blog-grid .et_pb_image_container, .molti-blog-grid .entry-featured-image-url {
	order: 2;
}
.molti-blog-grid .entry-title {
	order: 3;
}
.molti-blog-grid .post-meta {
    z-index: 1;
    margin: -10px 0px -13px -5px;
}
.molti-blog-grid .post-content {
	order: 4;
}
.nav-label {
    position: relative;
    top: 13px;
    left: -2px;
}
@media only screen and ( max-width: 479px ) {
  .nav-label {
    top: 0px;
}
}
.nav-next .nav-label {
	left:-10px;
}
.molti-article {
	animation:.3s
}
.et_pb_menu .et_mobile_menu {
    height: 530px;
    overflow: auto;
}

/* ---- From Molti accent colors (functions.php) (only rules used on this site) ---- */
.et_pb_blog_0 .et_pb_post:hover .entry-title a, .et_pb_menu ul li.current-menu-item a, .et_pb_menu .nav li ul.sub-menu a:hover, .mobile_menu_bar:before {color: #004aad!important;}
.et-menu-nav .et-menu li li a:hover:before, .menu-closed.menu-open:before {background-color: #004aad!important;}
.home2-service-card:hover {border-color: #004aad!important;}

/* Fallback fonts for when Google Fonts is blocked (Usercentrics blocks it until consent). This file is excluded
   from Hummingbird's critical-CSS delay so the fallback applies on first paint. */
:root:root {
	--et_global_body_font: 'Montserrat', Helvetica, Arial, sans-serif;
	--et_global_heading_font: 'Montserrat', Helvetica, Arial, sans-serif;
}
