:root{
  --cream:#F2EBDF;
  --cream-soft:#EAE1D2;
  --paper:#FBF8F2;
  --ink:#33363B;
  --ink-soft:#5B5E63;
  --terracotta:#96501F;
  --terracotta-deep:#7A4019;
  --sage:#636A40;
  --sage-soft:#EDE9DA;
  --line:rgba(51,54,59,0.12);
  --serif:'Frank Ruhl Libre', 'Times New Roman', serif;
  --sans:'Heebo', -apple-system, sans-serif;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--sans); background:var(--cream); color:var(--ink); line-height:1.7; font-size:17px;}
a{color:inherit; touch-action:manipulation; -webkit-tap-highlight-color:transparent;}
a:focus-visible, button:focus-visible{outline:2px solid var(--terracotta); outline-offset:2px;}
h1,h2{font-family:var(--serif); font-weight:600; letter-spacing:-0.01em; text-wrap:balance;}
.wrap{max-width:760px; margin:0 auto; padding:0 32px;}
.sr-only{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}
.skip-link{
  position:absolute; top:-100px; right:16px; z-index:300;
  background:var(--terracotta); color:var(--paper); padding:12px 20px;
  border-radius:8px; text-decoration:none; font-weight:600; transition:top .2s ease;
}
.skip-link:focus{top:16px;}

header{
  padding:20px 0; border-bottom:1px solid var(--line); background:var(--paper);
}
.header-inner{display:flex; align-items:center; justify-content:space-between; max-width:760px; margin:0 auto; padding:0 32px;}
.brand{font-family:var(--serif); font-size:1.2rem; font-weight:700;}
.back-link{font-size:.92rem; color:var(--terracotta); text-decoration:none; font-weight:600; min-height:44px; display:inline-flex; align-items:center;}
.back-link:hover{color:var(--terracotta-deep);}

main{padding:64px 0 90px;}
h1.page-title{font-size:clamp(1.9rem,4vw,2.5rem); margin-bottom:8px;}
.updated{font-size:.85rem; color:var(--ink-soft); margin-bottom:44px;}
section{margin-bottom:38px;}
h2{font-size:1.25rem; margin-bottom:12px; color:var(--terracotta);}
p{color:var(--ink-soft); margin-bottom:14px; font-size:1.02rem;}
p:last-child{margin-bottom:0;}
ul{margin:0 0 14px; padding-inline-start:22px; color:var(--ink-soft);}
li{margin-bottom:6px;}
.notice{
  background:var(--sage-soft); border-radius:12px; padding:20px 22px;
  font-size:.98rem; color:var(--ink);
}
.notice strong{color:var(--terracotta-deep);}
.contact-box{
  background:var(--paper); border:1px solid var(--line); border-radius:14px;
  padding:24px 26px;
}
.contact-box a{color:var(--terracotta); font-weight:600; text-decoration:none; display:inline-flex; align-items:center; min-height:32px;}
.contact-box a:hover{color:var(--terracotta-deep);}
.contact-box div{margin-bottom:8px;}
.contact-box div:last-child{margin-bottom:0;}

footer{background:var(--ink); color:rgba(242,235,223,0.6); padding:32px 0; text-align:center; font-size:.85rem;}
footer a{color:rgba(242,235,223,0.8); text-decoration:none;}
footer a:hover{color:var(--terracotta-deep);}
