/* 
 Theme Name: Divi Child
 Author: Dutch Hoffman
 Author URI: http://www.devbydutch.com
 Description:Divi Child Theme
 Template: Divi
*/ 


/* ----------- PUT YOUR CUSTOM CSS BELOW THIS LINE -- DO NOT EDIT ABOVE THIS LINE -------------- */
header #main-header.et-fixed-header, #main-header{ -webkit-box-shadow:none !important; -moz-box-shadow:none !important; box-shadow:none !important; }
/* ---- Wrappers ---- */
.container, .et_pb_row { position: relative; width: 95%; max-width: 1200px; margin: auto; }
/* ---- List Fixes ---- */
.entry-content ol, .entry-content ul { padding: 1.6em 0 23px 2.2em;list-style-position: outside; }
/* ---- globals ---- */
body, #page-container {overflow-x: hidden !important; }

body #page-container {padding-top: 130px !important; }
body .interior-hero {padding:0px 27px 20px 0px !important;margin-top:0px;}
body .interior-hero .et_pb_row {padding-top:0px;}

.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6 { font-family: ivyora-text, serif;font-weight:800 !important; }
.entry-content, footer { font-family: proxima-nova, sans-serif; }
li.hidden-menu { display:none !important; }
table.tablestyled, table.tablestyled tr, table.tablestyled td { border: none !important; }
.footer-img img {max-height:110px;}
/* ---- Slide In Menu ---- */
.et_mobile_menu li {-webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out;}
.et_mobile_menu li:hover {padding-left:4px !important}
.et_mobile_menu li a:hover, .nav ul li a:hover {opacity: 1;}
/* .tree-in-menu img {position: absolute;bottom: -99% !important;left: 50px;max-width:200px !important;} */
/* Ensure the fly-out container allows absolute positioning */
.et_mobile_menu, 
#et-top-navigation .et-menu-nav {
    position: relative !important;
    min-height: 100vh; /* Ensures the container spans the full height */
}

/* Dock the specific menu item image to the bottom */
.tree-in-menu {
    position: absolute !important;
    bottom: 20px; /* Adjust this to set the gap from the very bottom */
    left: 50px;
    width: 100%;
    pointer-events: none; /* Prevents the blank link from being clickable over other items */
}

.tree-in-menu img {
    max-width: 200px !important;
    display: block;
}



/* Layout - Keep link and hamburger aligned */
#et-top-navigation { display: flex !important; align-items: center !important; justify-content: flex-end !important; }

/* --- DESKTOP & TABLET: CTA BUTTON STYLE --- */
@media (min-width: 981px) {
.custom-header-link { display: inline-block; font-size: 20px; text-decoration: none; padding: 10px 30px; border-radius: 50px; transition: all 0.3s ease; margin-right: 20px; white-space: nowrap; z-index: 2; /* Rest State */ color: #132c45; background-color: #ffffff; border: 2px solid #1b6de8; }
.custom-header-link:hover { /* Hover State */ color: #ffffff; background-color: #132c45; border-color: #132c45; }
}

/* --- MOBILE FIX: DOCK ELEMENTS TO FAR RIGHT --- */
@media (max-width: 980px) {

/* Ensure the main header container spans the full available width */
#main-header .container { display: flex !important; flex-direction: row !important; justify-content: space-between !important; align-items: center !important; width: 90% !important;  max-width: 100% !important; }

/* Logo stays on the left */
.logo_container { flex-shrink: 0 !important; max-width: 100px !important;  display: flex !important; align-items: center !important; margin-left:5px;}

/* Navigation container fills the middle space and docks its content right */
#et-top-navigation { flex-grow: 1 !important; display: flex !important; justify-content: flex-end !important; align-items: center !important; padding-left: 0 !important;}

/* Refined Link Styling for Mobile */
.custom-header-link { display: inline-block !important; font-size: 14px !important; font-weight: bold; text-decoration: none; margin-right: 15px !important; margin-top:-25px; white-space: nowrap; color: #1b6de8 !important; background: transparent !important; border: none !important; padding: 0 !important; order: 1 !important;}

/* Hamburger Icon */
.et_pb_header_toggle {margin-left: 0 !important;margin-right:15px !important;order: 2 !important; position: relative !important;right: 0 !important;}

}

/* Ensure hamburger stays on the far right */
.et_pb_header_toggle {order: 2; margin-left: 10px;}
.custom-header-link {order: 1;}

/* Hamburger icon */
span.mobile_menu_bar:before { color:#004835; font-size:50px; }
.et_toggle_slide_menu:after { color:#1b6de8; font-size:50px;left:-52px;content:'Q'; }

/* ------------- Responsive breakpoints ------------- */

/* Smartphones in portrait mode (0-479px) */
@media only screen and ( max-width: 479px ) {
body #page-container {padding-top: 120px !important; }
body .interior-hero {padding:0px 27px 0px 27px !important;margin-top:0px;}
}

/* Smartphones in landscape mode (480-768px) */
@media only screen and ( min-width: 480px ) and ( max-width: 767px ) {
body #page-container {padding-top: 120px !important; }
body .interior-hero {padding:0px 27px 0px 27px !important;margin-top:0px;}
}

/* Tablets in portrait mode (768-980px) */
@media only screen and ( min-width: 768px ) and ( max-width: 980px ) {

}

/* Tablets in landscape mode (981-1100px) */
@media only screen and ( min-width: 981px ) and ( max-width: 1100px ) { 

}

/* Laptops and desktops (1101-1405px) */
@media only screen and ( min-width: 1101px ) and ( max-width: 1405px) { 

}

/* Large screens (1406px upwards) */
@media only screen and ( min-width: 1406px ) { 

}