/* Local functional enhancements that preserve the original Mobirise-era layout. */
:root { --site-green: #6a994e; --site-cream: #f7f8f1; }
html { scroll-behavior: smooth; scroll-padding-top: 110px; }
body { overflow-x: clip; }
section[id], main[id] { scroll-margin-top: 110px; }
#site-navigation, .cid-vAaWijg3tK { z-index: 1055; }
.cid-vAaWijg3tK .navbar-toggler { cursor: pointer; border: none; flex-shrink: 0; }
.cid-vAaWijg3tK .navbar-toggler:focus-visible, .site-legal-links a:focus-visible, a:focus-visible, button:focus-visible { outline: 3px solid #d4a74f; outline-offset: 3px; }
.contact-form-help { margin: 0 0 1.4rem; text-align: center; color: #444; }
.contact-form-status { margin: 1rem auto 0; min-height: 1.5rem; text-align: center; color: #315a2b; }
.site-legal-block { font-family: 'Inter Tight', Arial, sans-serif; padding: .75rem 0 1.35rem; text-align: left; }
.site-legal-details { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 1.5rem 3rem; }
.site-legal-heading { font-family: inherit; font-size: 1.25rem; font-weight: 700; color: #fff; margin: 0 0 1rem; }
.site-legal-list { margin: 0; }
.site-legal-list > div { display: flex; flex-wrap: wrap; gap: .35rem .7rem; margin: 0 0 .72rem; }
.site-legal-list dt { color: #cedabe; font-size: .91rem; font-weight: 600; min-width: 125px; }
.site-legal-list dd { margin: 0; min-width: 0; overflow-wrap: anywhere; color: #eee; font-size: .91rem; }
.site-legal-block a { color: #d5edbd; text-decoration: underline; text-underline-offset: 3px; }
.site-legal-block a:hover { color: #fff; }
.site-legal-links { display: flex; gap: .7rem 1.5rem; flex-wrap: wrap; margin-top: 1.7rem; }
.site-legal-links a[aria-current="page"] { color: #fff; font-weight: 700; }
.site-data-notice { margin: 1.35rem 0 0; padding: 1rem 1.2rem; border: 1px solid #4e5948; border-radius: .85rem; background: rgba(255,255,255,.035); }
.site-data-notice__title { font-family: inherit; margin: 0 0 .45rem; font-size: .98rem; font-weight: 700; color: #f0f0ee; }
.site-data-notice__text { font-family: inherit; margin: 0; color: #c9d1c4; font-size: .82rem; line-height: 1.55; }
.cid-vAaWijhLZk .media-container-row { border-top: 1px solid rgba(255,255,255,.13); padding-top: 1.25rem; }
.legal-main { padding: 11rem 0 6rem; background: #fafbf6; min-height: 75vh; }
.legal-document { font-family: 'Inter Tight', Arial, sans-serif; max-width: 900px; margin: 0 auto; padding: 3.6rem 4rem; background: #fff; border: 1px solid #e4eadb; border-radius: 1.8rem; box-shadow: 0 12px 35px rgba(40, 64, 22, .045); color: #202820; }
.legal-kicker { color: #6a994e; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; font-size: .8rem; }
.legal-document h1 { font-size: clamp(2.3rem, 5vw, 3.9rem); line-height: 1.09; margin: .7rem 0 .6rem; font-weight: 700; }
.legal-updated { color: #6a6e61; font-size: .9rem; margin-bottom: 2.7rem; }
.legal-document h2 { font-size: clamp(1.2rem, 2.2vw, 1.55rem); font-weight: 700; margin-top: 2rem; margin-bottom: .7rem; color: #284d25; }
.legal-document p { line-height: 1.85; font-size: 1rem; margin: 0 0 1rem; }
.legal-document .legal-intro { font-size: 1.07rem; }
.legal-document a { color: #356f2c; text-decoration: underline; overflow-wrap: anywhere; }
@media (max-width: 991px) {
 .cid-vAaWijg3tK .navbar-collapse { max-height: calc(100dvh - 84px); overflow-y: auto; overscroll-behavior: contain; }
 .cid-vAaWijg3tK .navbar-nav .nav-link { width: 100%; }
 .cid-vAaWijg3tK .navbar-toggler { display: flex; }
}
@media (max-width: 767px) {
 html, section[id], main[id] { scroll-padding-top: 85px; scroll-margin-top: 85px; }
 .cid-vAaWijg3tK .navbar-brand { min-width: 0; max-width: calc(100% - 72px); }
 .cid-vAaWijg3tK .navbar-caption { display: block; font-size: clamp(.82rem, 3.2vw, 1.1rem) !important; overflow-wrap: anywhere; }
 .site-legal-details { grid-template-columns: 1fr; gap: 1.4rem; }
 .site-legal-list > div { display: block; }
 .site-legal-list dt { margin-bottom: .08rem; }
 .legal-main { padding: 8rem 0 3rem; }
 .legal-document { padding: 2rem 1.35rem; border-radius: 1.1rem; }
 .site-legal-links { flex-direction: column; gap: .6rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
