
:root{
  --green:#336633; --green-dark:#264d26; --hover:#8C603C;
  --sage:#D6E0D6; --sage-light:#F4F7F4; --contrast-bg:#FFF7F1; --contrast-border:#FFDABA;
  --ink:#1c1c1c; --white:#fff;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--sage-light);line-height:1.6;}
a{color:var(--green);text-decoration:none;}
a:hover{color:var(--hover);text-decoration:underline;}
img{max-width:100%;height:auto;display:block;}
.skip-link{position:absolute;left:-999px;top:0;background:var(--green);color:#fff;padding:.5rem 1rem;z-index:200;}
.skip-link:focus{left:0;}

header.site-header{background:var(--green);border-top:5px solid var(--green-dark);}
.banner-wrap{max-width:1100px;margin:0 auto;overflow:hidden;}
.banner-wrap img{width:100%;object-fit:cover;max-height:180px;}

nav.main-nav{background:var(--green);position:relative;}
.nav-inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:.25rem 1rem;}
.nav-brand{color:#fff;font-weight:bold;font-size:1.15rem;padding:.6rem 0;}
.nav-toggle{display:none;background:none;border:2px solid #fff;color:#fff;font-size:1rem;padding:.4rem .8rem;border-radius:4px;cursor:pointer;}
ul.nav-list{list-style:none;display:flex;flex-wrap:wrap;margin:0;padding:0;}
ul.nav-list>li{position:relative;}
ul.nav-list>li>a{display:block;color:#fff;padding:.75rem .8rem;font-size:.92rem;font-weight:bold;white-space:nowrap;}
ul.nav-list>li>a:hover,ul.nav-list>li.active>a{background:var(--green-dark);text-decoration:none;}
ul.sub-list{list-style:none;margin:0;padding:0;position:absolute;left:0;top:100%;background:var(--green-dark);min-width:220px;z-index:50;display:none;box-shadow:0 4px 10px rgba(0,0,0,.25);}
ul.nav-list>li:hover ul.sub-list,ul.nav-list>li:focus-within ul.sub-list{display:block;}
ul.sub-list li a{display:block;color:#fff;padding:.6rem .9rem;font-size:.88rem;font-weight:normal;border-top:1px solid rgba(255,255,255,.12);}
ul.sub-list li a:hover{background:var(--green);text-decoration:none;}

.breadcrumb{max-width:1100px;margin:0 auto;padding:.6rem 1rem 0;font-size:.82rem;color:#555;}
.breadcrumb a{color:var(--green);}

main{max-width:1100px;margin:1.25rem auto 2.5rem;padding:0 1rem;display:grid;grid-template-columns:220px 1fr;gap:1.75rem;align-items:start;}
.side-panel{background:var(--sage);border-radius:10px;padding:1.1rem;}
.side-panel h2{font-size:1rem;color:var(--green);margin:0 0 .6rem;}
.side-panel ul{list-style:none;margin:0;padding:0;}
.side-panel li{margin-bottom:.4rem;}
.side-panel li a{font-size:.9rem;}
.side-panel li a.current{font-weight:bold;color:var(--green-dark);}
.motto{margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid rgba(0,0,0,.08);text-align:center;color:var(--green);font-weight:bold;font-size:1.05rem;line-height:1.3;}
.motto img{margin:.6rem auto 0;width:64px;}

.content-card{background:#fff;border:2px solid var(--sage);border-radius:10px;padding:1.6rem 1.8rem;}
.content-card h1{color:var(--green);font-size:1.7rem;margin-top:0;border-bottom:2px solid var(--sage);padding-bottom:.6rem;}
.content-card h2{color:var(--green);font-size:1.25rem;}
.content-card h3{color:var(--hover);font-size:1.05rem;}
.content-card p{margin:.8rem 0;}
.content-card ul,.content-card ol{margin:.8rem 0;padding-left:1.4rem;}
.content-card table{border-collapse:collapse;width:100%;margin:1rem 0;}
.content-card table td,.content-card table th{border:1px solid var(--sage);padding:.4rem .6rem;text-align:left;}
.content-card a.pdf-link::before{content:"\1F4C4 ";}

.notice-box{background:var(--contrast-bg);border:1px solid var(--contrast-border);border-radius:8px;padding:.9rem 1.1rem;margin-bottom:1.1rem;}

.site-form{max-width:520px;}
.site-form label{font-weight:bold;color:var(--green-dark);}
.site-form input[type="text"],.site-form input[type="email"],.site-form input[type="tel"],.site-form textarea{width:100%;padding:.55rem .7rem;border:1px solid var(--sage);border-radius:6px;font:inherit;margin-top:.3rem;}
.site-form textarea{resize:vertical;}
.site-form .required{color:#b33;}
.site-form .footnote{font-size:.82rem;color:#666;}
.site-form .btn{background:var(--green);color:#fff;border:none;padding:.7rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:bold;cursor:pointer;}
.site-form .btn:hover{background:var(--hover);}
.site-form input[type="checkbox"]{width:auto;margin-right:.4rem;}

footer.site-footer{background:var(--green-dark);color:#e8ede8;padding:1.6rem 1rem;margin-top:2rem;}
.footer-inner{max-width:1100px;margin:0 auto;font-size:.85rem;text-align:center;line-height:1.7;}
.footer-inner a{color:#cfe3cf;}
.footer-inner a:hover{color:#fff;}

@media (max-width:800px){
  main{grid-template-columns:1fr;}
  .nav-toggle{display:inline-block;}
  ul.nav-list{display:none;flex-direction:column;width:100%;}
  nav.main-nav.open ul.nav-list{display:flex;}
  ul.sub-list{position:static;display:block;box-shadow:none;}
  ul.nav-list>li:hover ul.sub-list{display:block;}
}
