:root{
  --bg:#FAFAFA;
  --white:#FFFFFF;
  --gray-50:#F5F5F5;
  --gray-100:#EBEBEB;
  --gray-400:#A0A0A0;
  --gray-500:#6E6E6E;
  --gray-600:#4A4A4A;
  --black:#111;
  --green:#2D5A4A;
  --green-light:#E6F0EB;
  --sans:'DM Sans',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --serif:'Instrument Serif',Georgia,serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{min-height:100vh;background:var(--bg);color:var(--gray-600);font-family:var(--sans);line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:var(--green);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--black)}
.w{max-width:880px;margin:0 auto;padding:0 2rem}
header{padding:1rem 0;border-bottom:1px solid var(--gray-100);background:rgba(250,250,250,.96)}
.hdr{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.logo img{height:52px;width:auto;display:block}
.nav{display:flex;gap:1.25rem;align-items:center;font-size:.78rem;font-weight:500;color:var(--gray-500)}
.nav a{color:inherit;text-decoration:none}
main{padding:4.5rem 0 5rem}
.eyebrow{font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;font-weight:600;color:var(--green);margin-bottom:.8rem}
h1{font-family:var(--serif);font-size:clamp(2.3rem,6vw,3.8rem);font-weight:400;letter-spacing:-.035em;line-height:1.05;color:var(--black);margin-bottom:1rem}
.lede{font-size:1rem;color:var(--gray-500);max-width:680px;margin-bottom:.75rem}
.updated{font-size:.76rem;color:var(--gray-400);margin-bottom:2.5rem}
.notice{padding:1rem 1.1rem;border:1px solid #CFE0D8;background:var(--green-light);border-radius:8px;color:var(--green);font-size:.86rem;margin-bottom:2rem}
.content{display:grid;gap:2rem}
.content section{padding-top:2rem;border-top:1px solid var(--gray-100)}
.content h2{font-family:var(--serif);font-size:1.7rem;font-weight:400;line-height:1.2;color:var(--black);margin-bottom:.65rem}
.content h3{font-size:.9rem;color:var(--black);margin:1rem 0 .35rem}
.content p,.content li{font-size:.9rem}
.content p+p{margin-top:.75rem}
.content ul{padding-left:1.25rem;display:grid;gap:.5rem}
.contact{padding:1.2rem;border:1px solid var(--gray-100);border-radius:8px;background:var(--white)}
.contact strong{display:block;color:var(--black);margin-bottom:.15rem}
footer{padding:2rem 0;border-top:1px solid var(--gray-100);font-size:.72rem;color:var(--gray-400)}
.ft{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}
.ft-nav{display:flex;gap:1rem;flex-wrap:wrap}
.ft a{color:inherit;text-decoration:none}
@media(max-width:680px){
  main{padding:3rem 0 4rem}
  .hdr,.nav,.ft{flex-direction:column;align-items:flex-start}
  .w{padding:0 1.25rem}
}
