/* Homepage styles, carried over unchanged from the approved design. */
body{margin:0;background:#F6F7F4;color:#0F1B2D;font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:#1F6F5C}a:hover{color:#16503F}
h1,h2,h3{font-family:"Space Grotesk",Inter,sans-serif;letter-spacing:-0.02em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.navlinks{display:flex}
.menubtn{display:none}
@media (max-width:1180px){.navlinks{display:none}.menubtn{display:inline-flex}}
@media (max-width:820px){.hidesm{display:none}}
.navlink,.navlinks .btn{white-space:nowrap}
.cardlink{text-decoration:none}.cardlink:hover{text-decoration:underline}
.countylink{text-decoration:underline;text-decoration-color:rgba(43,58,77,.3);text-underline-offset:6px}.countylink:hover{text-decoration-color:#E0893E}
.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.btn{transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px -10px rgba(15,27,45,.45)}
.btn:active{transform:translateY(0) scale(.98)}
.btn:focus-visible,.pill:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #E0893E;outline-offset:3px}
.card{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease,border-color .35s ease}
.card:hover{transform:translateY(-6px);box-shadow:0 24px 48px -24px rgba(15,27,45,.35);border-color:rgba(31,111,92,.35)}
.pill{transition:background-color .2s ease,color .2s ease,transform .15s ease}
.pill:hover{transform:translateY(-1px)}
.navlink{color:#E8EEF5;text-decoration:none;position:relative}
.navlink:hover{color:#FFFFFF}
.navlink::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:#E0893E;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.navlink:hover::after{transform:scaleX(1)}
@keyframes rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes drift{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(40px,-30px,0) scale(1.12)}}
@keyframes pulse{0%,100%{opacity:.55}50%{opacity:1}}
.stagger > *{animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
.stagger > *:nth-child(2){animation-delay:.08s}
.stagger > *:nth-child(3){animation-delay:.16s}
.stagger > *:nth-child(4){animation-delay:.24s}
.stagger > *:nth-child(5){animation-delay:.32s}
.orb{animation:drift 16s ease-in-out infinite alternate}
.orb2{animation:drift 22s ease-in-out infinite alternate-reverse}
.livedot{animation:pulse 2.4s ease-in-out infinite}
@supports (animation-timeline: view()){
.reveal{animation:rise linear both;animation-timeline:view();animation-range:entry 0% cover 22%}
}
details summary{list-style:none;cursor:pointer}
details summary::-webkit-details-marker{display:none}
details[open] .chev{transform:rotate(45deg)}
.chev{transition:transform .25s ease}
@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}}
