/* Local site styles. No CDN or runtime CSS generation required. */
*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}
html{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4}
body{margin:0}h1,h2,h3,h4,h5,h6,p{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;text-decoration:inherit}button{font:inherit;color:inherit;background:transparent;padding:0;cursor:pointer}
img,svg{display:block;vertical-align:middle}img{max-width:100%;height:auto}summary{display:list-item}ol,ul{list-style:none;margin:0;padding:0}blockquote{margin:0}strong{font-weight:bolder}

.absolute{position:absolute}
.backdrop-blur-sm{backdrop-filter:blur(4px)}
.bg-sage-100{background-color:#e2edda}
.bg-sage-200{background-color:#c5dbb5}
.bg-water-100{background-color:#d4f1ec}
.bg-water-200{background-color:#a8e4d9}
.bg-water-50{background-color:#f0faf8}
.bg-water-600{background-color:#2d7f74}
.bg-water-800{background-color:#1f4f4a}
.bg-white{background-color:#fff}
.bg-white\/80{background-color:rgb(255 255 255 / .8)}
.block{display:block}
.border{border-width:1px}
.border-2{border-width:2px}
.border-b{border-bottom-width:1px}
.border-b-2{border-bottom-width:2px}
.border-t{border-top-width:1px}
.border-water-100{border-color:#d4f1ec}
.border-water-500{border-color:#3a9e8f}
.border-water-600{border-color:#2d7f74}
.border-water-700{border-color:#26655d}
.cursor-pointer{cursor:pointer}
.flex{display:flex}
.flex-col{flex-direction:column}
.flex-wrap{flex-wrap:wrap}
.font-body{font-family:"Segoe UI",system-ui,sans-serif}
.font-bold{font-weight:700}
.font-heading{font-family:Georgia,serif}
.font-medium{font-weight:500}
.font-semibold{font-weight:600}
.gap-12{gap:3.0rem}
.gap-2{gap:0.5rem}
.gap-3{gap:0.75rem}
.gap-4{gap:1.0rem}
.gap-6{gap:1.5rem}
.gap-8{gap:2.0rem}
.gap-x-6{column-gap:1.5rem}
.gap-y-2{row-gap:0.5rem}
.grid{display:grid}
.group[open] .group-open\:rotate-180{transform:rotate(180deg)}
.h-10{height:2.5rem}
.h-12{height:3.0rem}
.h-14{height:3.5rem}
.h-16{height:4.0rem}
.h-5{height:1.25rem}
.h-6{height:1.5rem}
.h-7{height:1.75rem}
.h-8{height:2.0rem}
.hidden{display:none}
.hover\:bg-water-50:hover{background-color:#f0faf8}
.hover\:bg-water-600:hover{background-color:#2d7f74}
.hover\:bg-water-700:hover{background-color:#26655d}
.hover\:shadow-lg:hover{box-shadow:0 10px 15px -3px rgb(0 0 0 / .1),0 4px 6px -4px rgb(0 0 0 / .1)}
.hover\:shadow-md:hover{box-shadow:0 4px 6px -1px rgb(0 0 0 / .1),0 2px 4px -2px rgb(0 0 0 / .1)}
.hover\:text-water-700:hover{color:#26655d}
.hover\:text-white:hover{color:#fff}
.inline-block{display:inline-block}
.inline-flex{display:inline-flex}
.inset-0{inset:0}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.leading-relaxed{line-height:1.625}
.list-none{list-style:none}
.max-w-2xl{max-width:42rem}
.max-w-3xl{max-width:48rem}
.max-w-6xl{max-width:72rem}
.max-w-lg{max-width:32rem}
.max-w-xl{max-width:36rem}
.mb-1{margin-bottom:0.25rem}
.mb-10{margin-bottom:2.5rem}
.mb-12{margin-bottom:3.0rem}
.mb-16{margin-bottom:4.0rem}
.mb-2{margin-bottom:0.5rem}
.mb-3{margin-bottom:0.75rem}
.mb-4{margin-bottom:1.0rem}
.mb-6{margin-bottom:1.5rem}
.mb-8{margin-bottom:2.0rem}
.min-h-11{min-height:2.75rem}
.min-w-11{min-width:2.75rem}
.mt-0\.5{margin-top:0.125rem}
.mt-1{margin-top:0.25rem}
.mt-3{margin-top:0.75rem}
.mt-4{margin-top:1.0rem}
.mt-6{margin-top:1.5rem}
.mt-8{margin-top:2.0rem}
.mx-auto{margin-left:auto;margin-right:auto}
.object-cover{object-fit:cover}
.p-2{padding:0.5rem}
.p-4{padding:1.0rem}
.p-5{padding:1.25rem}
.p-6{padding:1.5rem}
.p-8{padding:2.0rem}
.pb-1{padding-bottom:0.25rem}
.pb-4{padding-bottom:1.0rem}
.pt-6{padding-top:1.5rem}
.px-3{padding-left:0.75rem;padding-right:0.75rem}
.px-4{padding-left:1.0rem;padding-right:1.0rem}
.px-8{padding-left:2.0rem;padding-right:2.0rem}
.py-10{padding-top:2.5rem;padding-bottom:2.5rem}
.py-16{padding-top:4.0rem;padding-bottom:4.0rem}
.py-2{padding-top:0.5rem;padding-bottom:0.5rem}
.py-3{padding-top:0.75rem;padding-bottom:0.75rem}
.relative{position:relative}
.rotate-3{transform:rotate(3deg)}
.rounded-2xl{border-radius:1rem}
.rounded-full{border-radius:9999px}
.rounded-lg{border-radius:.5rem}
.rounded-md{border-radius:.375rem}
.rounded-xl{border-radius:.75rem}
.shadow-lg{box-shadow:0 10px 15px -3px rgb(0 0 0 / .1),0 4px 6px -4px rgb(0 0 0 / .1)}
.shadow-md{box-shadow:0 4px 6px -1px rgb(0 0 0 / .1),0 2px 4px -2px rgb(0 0 0 / .1)}
.shadow-sm{box-shadow:0 1px 2px 0 rgb(0 0 0 / .05)}
.shrink-0{flex-shrink:0}
.space-x-8 > :not([hidden]) ~ :not([hidden]){margin-left:2.0rem}
.space-y-1 > :not([hidden]) ~ :not([hidden]){margin-top:0.25rem}
.space-y-2 > :not([hidden]) ~ :not([hidden]){margin-top:0.5rem}
.space-y-3 > :not([hidden]) ~ :not([hidden]){margin-top:0.75rem}
.space-y-4 > :not([hidden]) ~ :not([hidden]){margin-top:1.0rem}
.space-y-6 > :not([hidden]) ~ :not([hidden]){margin-top:1.5rem}
.space-y-8 > :not([hidden]) ~ :not([hidden]){margin-top:2.0rem}
.sticky{position:sticky}
.text-2xl{font-size:1.5rem;line-height:2rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
.text-4xl{font-size:2.25rem;line-height:2.5rem}
.text-center{text-align:center}
.text-gray-500{color:#6b7280}
.text-gray-600{color:#4b5563}
.text-gray-800{color:#1f2937}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-sage-600{color:#4a7236}
.text-sage-700{color:#3b5a2c}
.text-sm{font-size:.875rem;line-height:1.25rem}
.text-water-100{color:#d4f1ec}
.text-water-200{color:#a8e4d9}
.text-water-300{color:#7ad3c4}
.text-water-400{color:#4dbfad}
.text-water-500{color:#3a9e8f}
.text-water-600{color:#2d7f74}
.text-water-700{color:#26655d}
.text-water-800{color:#1f4f4a}
.text-white{color:#fff}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.top-0{top:0}
.transform{transform:translate(0,0) rotate(3deg)}
.transition-all{transition-property:all;transition-duration:150ms;transition-timing-function:cubic-bezier(.4,0,.2,1)}
.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:150ms;transition-timing-function:cubic-bezier(.4,0,.2,1)}
.transition-shadow{transition-property:box-shadow;transition-duration:150ms;transition-timing-function:cubic-bezier(.4,0,.2,1)}
.transition-transform{transition-property:transform;transition-duration:150ms;transition-timing-function:cubic-bezier(.4,0,.2,1)}
.underline{text-decoration-line:underline}
.underline-offset-2{text-underline-offset:2px}
.w-10{width:2.5rem}
.w-12{width:3.0rem}
.w-14{width:3.5rem}
.w-16{width:4.0rem}
.w-5{width:1.25rem}
.w-6{width:1.5rem}
.w-7{width:1.75rem}
.w-8{width:2.0rem}
.w-full{width:100%}
.z-50{z-index:50}
@media(min-width:640px){
.sm\:col-span-2{grid-column:span 2 / span 2}
.sm\:flex-row{flex-direction:row}
.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}
.sm\:py-16{padding-top:4.0rem;padding-bottom:4.0rem}
}
@media(min-width:768px){
.md\:flex{display:flex}
.md\:flex-row{flex-direction:row}
.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.md\:hidden{display:none}
.md\:p-10{padding:2.5rem}
.md\:py-24{padding-top:6.0rem;padding-bottom:6.0rem}
.md\:text-5xl{font-size:3rem;line-height:1}
.md\:text-xl{font-size:1.25rem;line-height:1.75rem}
}
@media(min-width:1024px){
.lg\:px-8{padding-left:2.0rem;padding-right:2.0rem}
}


.watercolor-bg {
  background: linear-gradient(135deg, #d4f1ec 0%, #e8f6f0 25%, #f0faf8 50%, #dceee8 75%, #d4f1ec 100%);
}
.watercolor-hero {
  background: linear-gradient(180deg, rgba(212,241,236,.3) 0%, rgba(240,250,248,.6) 50%, #fff 100%);
}
/* Keep navigation usable before JavaScript initializes and when it is disabled. */
.mobile-menu-toggle { display: none; }
@media (max-width: 767px) {
  .js .mobile-menu-toggle { display: inline-flex; }
  .js #mobile-menu:not(.is-open) { display: none; }
}
:focus-visible { outline: 3px solid #26655d; outline-offset: 4px; }
.skip-link { position: fixed; top: .5rem; left: .5rem; z-index: 100; transform: translateY(-200%); padding: .75rem 1rem; background: white; color: #1f4f4a; }
.skip-link:focus { transform: translateY(0); }
html { scroll-padding-top: 5rem; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; }
}

