/* Small standalone interactions for the faithful static Divi copy. */
html { scroll-behavior: smooth; }
:focus-visible { outline: 3px solid #5c7268; outline-offset: 4px; }
.fs24-skip { position:fixed;top:-100px;left:16px;z-index:10000;background:white;color:#32483c;padding:10px 18px; }
.fs24-skip:focus { top:12px; }
header.et-l--header { position:sticky;top:0;z-index:1000;background:#fff; }
.et_pb_menu__logo a { display:block; }
.et_pb_menu__logo img { display:block; }
.et-waypoint,.et_animated { opacity:1!important;animation:none!important; }
.et_pb_fullwidth_menu .nav li:focus-within > ul,.et_pb_fullwidth_menu .nav li.fs24-expanded > ul { opacity:1;visibility:visible; }
.fs24-menu-toggle { border:0;background:transparent;color:#5c7268;width:46px;height:46px;font:30px/1 Arial,sans-serif;cursor:pointer;border-radius:6px; }
.fs24-mobile-menu { position:absolute;top:100%;left:0;right:0;background:#fff;padding:16px 7%;box-shadow:0 12px 18px #0002;border-top:3px solid #5c7268;max-height:calc(100dvh - 90px);overflow:auto;text-align:left; }
.fs24-mobile-menu[hidden] { display:none!important; }
.fs24-mobile-menu ul { margin:0;padding:0;list-style:none; }
.fs24-mobile-menu li { padding:0!important;margin:0!important;display:block; }
.fs24-mobile-menu a { color:#555;display:block;padding:9px 10px;font-size:16px;font-weight:600; }
.fs24-mobile-menu .current-menu-item > a { color:#344c40; }
.fs24-mobile-menu .sub-menu { display:block!important;position:static!important;visibility:visible!important;opacity:1!important;border:0!important;box-shadow:none!important;padding:0 0 0 18px!important;width:auto!important; }
.fs24-mobile-menu a::after { content:none!important; }
.fs24-mobile-menu .wpml-ls-flag { width:18px;height:12px;margin-right:7px; }
.fs24-mobile-menu .wpml-ls-display { display:none; }
.fs24-mobile-menu .sub-menu a { font-weight:400; }
.fs24-contact-form .wpforms-field-row { display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%!important;max-width:100%!important; }
/* WPForms float-clearing pseudo-elements must not become extra grid cells. */
.fs24-contact-form .wpforms-field-row::before,.fs24-contact-form .wpforms-field-row::after { content:none!important;display:none!important; }
.fs24-contact-form .wpforms-field-row-block { float:none!important;min-width:0;width:100%!important;margin:0!important; }
.fs24-contact-form .wpforms-field-medium { width:100%!important;max-width:100%!important; }
.fs24-contact-form textarea { min-height:150px;resize:vertical; }
.fs24-contact-form input,.fs24-contact-form textarea { font-family:inherit; }
.fs24-contact-form .wpforms-submit { background:#5c7268!important;color:white!important;border:1px solid #5c7268!important;cursor:pointer;padding:12px 20px!important;line-height:1.5!important;height:auto!important;border-radius:4px!important; }
.fs24-contact-form .wpforms-submit:hover { background:#40584a!important; }
.fs24-form-note { font-size:13px;line-height:1.5;margin-top:16px;color:#5b665f; }
.fs24-draft:empty { display:none; }
.fs24-draft { margin-top:16px;padding:14px 18px;background:#edf2e8;border:1px solid #a9b99d;border-radius:5px; }
.fs24-draft a { display:inline-block;color:#2c4935!important;font-weight:700;text-decoration:underline; }
@media (max-width:980px) {
 .et_mobile_nav_menu .mobile_nav { display:flex;align-items:center; }
 .et_pb_fullwidth_menu .et_pb_row { position:static; }
 .et_pb_fullwidth_menu_0_tb_header .et_pb_row { width:86%!important; }
 .et_pb_menu__logo img { max-width:190px!important;height:70px!important;width:auto!important; }
 .et-l--header .et_pb_menu__wrap { justify-content:flex-end!important; }
}
@media (max-width:479px) {
 .fs24-contact-form .wpforms-field-row { gap:10px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }* { transition:none!important;animation:none!important; } }

.fs24-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.fs24-form-status:empty,.fs24-form-note:empty{display:none}.fs24-form-status{margin-top:16px;font-size:14px;line-height:1.6;padding:14px 18px;border-radius:5px}.fs24-form-status.success{background:#edf3e6;color:#355834;border:1px solid #bdcdb1}.fs24-form-status.error{background:#fff0e9;color:#8e3527;border:1px solid #e9bdae}.fs24-contact-form button:disabled{opacity:.55;cursor:not-allowed}.fs24-form-note a{color:#385d40;text-decoration:underline}
