:root{--green:#0d4938;--gold:#b9a16a;--paper:#faf9f5;--white:#fffdf7;color-scheme:light}
*{box-sizing:border-box}
html{min-height:100%;background:var(--paper)}
body{margin:0;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;font-family:Arial,Helvetica,sans-serif;color:var(--green);background:var(--paper)}
a{color:inherit;text-decoration:none}
button,summary,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px;border-radius:3px}
.skip-link{position:fixed;left:16px;top:-100px;padding:12px;background:var(--green);color:var(--white);z-index:10}
.skip-link:focus{top:12px}
.site-header{border-bottom:1px solid var(--gold);padding-top:env(safe-area-inset-top);background:var(--paper);position:relative;z-index:2}
.header-inner{max-width:1100px;margin:auto;min-height:92px;padding:14px max(22px,env(safe-area-inset-left)) 14px max(22px,env(safe-area-inset-right));display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:block;flex-shrink:0}
.brand img{display:block;width:92px;height:auto}
.header-actions{display:flex;align-items:center;gap:16px}
.desktop-nav,.desktop-footer{display:none}
.icon-button{width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:var(--green);cursor:pointer}
svg{display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.icon-button svg{width:32px;height:32px}
.site-menu{position:relative}
.site-menu summary{list-style:none}
.site-menu summary::-webkit-details-marker{display:none}
.menu-panel{position:absolute;right:0;top:calc(100% + 12px);min-width:190px;padding:8px;background:var(--paper);border:1px solid var(--gold);border-radius:8px;box-shadow:0 10px 28px rgb(13 73 56 / .12)}
.menu-panel a{display:block;padding:14px 16px;border-radius:4px}
.menu-panel a:hover{background:rgb(13 73 56 / .06)}
main{flex:1;min-height:280px;width:100%;max-width:1100px;margin:0 auto}
.site-footer{background:var(--green);color:var(--white);border-top:2px solid var(--gold);padding-bottom:env(safe-area-inset-bottom)}
.footer-inner{max-width:680px;margin:auto;padding:17px max(18px,env(safe-area-inset-left)) 12px max(18px,env(safe-area-inset-right))}
.bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.nav-item{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:7px;min-height:65px;font-size:14px;line-height:1.3;padding:4px;border-radius:4px}
.nav-item svg{width:29px;height:29px}
.nav-item.is-active{color:var(--gold)}
.nav-item:hover{background:rgb(255 255 255 / .06)}
.footer-meta{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 20px;font-size:11px;line-height:1.5;margin-top:12px}
.footer-meta a{display:inline-block;padding:6px 2px}
.footer-meta a:hover{text-decoration:underline}
.separator{margin:0 6px}
@media(min-width:900px){
  .header-inner{max-width:1280px;min-height:112px;padding:20px 40px;gap:40px}
  .brand img{width:104px}
  .desktop-nav{display:flex;align-items:center;justify-content:center;gap:36px;margin-left:auto}
  .desktop-nav a{position:relative;display:block;padding:16px 0;font-size:15px;font-weight:600;line-height:1.4}
  .desktop-nav a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:2px;background:var(--gold);transform:scaleX(0);transition:transform .15s ease}
  .desktop-nav a.is-active::after,.desktop-nav a:hover::after{transform:scaleX(1)}
  .header-actions{gap:0;padding-left:28px;border-left:1px solid rgb(13 73 56 / .15)}
  .site-menu{display:none}
  main{max-width:1280px;padding:0 40px;min-height:360px}
  .footer-inner{max-width:1280px;padding:44px 40px 18px}
  .desktop-footer{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding-bottom:32px}
  .footer-brand img{display:block;width:112px;height:auto;filter:brightness(0) invert(1);opacity:.96}
  .footer-brand p{max-width:280px;margin:18px 0 0;color:rgb(255 253 247 / .78);font-size:14px;line-height:1.8}
  .footer-column h2{margin:0 0 14px;color:var(--gold);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;line-height:1.5}
  .footer-column a{display:block;width:fit-content;padding:8px 0;font-size:14px;line-height:1.5;color:rgb(255 253 247 / .9)}
  .footer-column a:hover{text-decoration:underline;text-underline-offset:4px;color:var(--white)}
  .bottom-nav{display:none}
  .footer-meta{justify-content:space-between;margin-top:0;padding-top:16px;border-top:1px solid rgb(185 161 106 / .3);font-size:12px}
}
@media(prefers-reduced-motion:reduce){.desktop-nav a::after{transition:none}}
