:root{
  --bg:#FAF7F1;
  --ink:#13211F;
  --ink-soft:#5B6764;
  --teal:#0F3B36;
  --mint:#DCEBE5;
  --saffron:#E9A23B;
  --tomato:#D9472B;
  --line:rgba(19,33,31,0.12);
}
*{box-sizing:border-box;}
body{margin:0; background:var(--bg); color:var(--ink); font-family:'Manrope',system-ui,sans-serif; font-size:16.5px; line-height:1.7; -webkit-font-smoothing:antialiased; border-top:6px solid var(--teal);}
.wrap{max-width:780px; margin:0 auto; padding:40px 28px 90px;}
.brand{display:inline-flex; align-items:center; gap:10px; text-decoration:none; margin-bottom:36px;}
.brand img{width:34px; height:34px;}
.brand span{font-family:'DM Serif Display',Georgia,serif; font-size:1.45rem; color:var(--teal); line-height:1;}
h1{font-family:'DM Serif Display',Georgia,serif; font-weight:400; font-size:2.6rem; line-height:1.1; margin:0 0 0.35em;}
h2{font-family:'DM Serif Display',Georgia,serif; font-weight:400; font-size:1.55rem; margin:2.2em 0 0.6em; padding-top:1.2em; border-top:1px solid var(--line);}
h3{font-weight:800; font-size:1rem; margin:1.4em 0 0.45em;}
p{margin:0 0 1em;}
ul,ol{margin:0 0 1em; padding-left:1.2em;}
li{margin-bottom:0.4em;}
a.back{display:block; width:max-content; margin:0 0 20px; color:var(--tomato); text-decoration:none; font-weight:700; font-size:0.9rem;}
a.back:hover{text-decoration:underline;}
a.inline{color:var(--teal); font-weight:600;}
.lede{color:var(--ink-soft); font-size:1.05rem;}
.updated{display:inline-block; color:var(--teal); background:var(--mint); font-size:0.84rem; padding:8px 12px; border-radius:8px; margin-bottom:1.4em;}
.box{margin:10px 0 1.2em; padding:20px 24px; border-left:4px solid var(--saffron); border-radius:0 14px 14px 0; background:#fff; font-size:0.96rem;}
.box.dashed{background:transparent; border:1.5px dashed var(--line); border-radius:14px; color:var(--ink-soft);}
dl{margin:0; padding:0; background:#fff; border-radius:14px; padding:6px 20px;}
dl div{display:flex; gap:8px; padding:10px 0; border-top:1px solid var(--line);}
dl div:first-of-type{border-top:none;}
dt{flex:0 0 240px; color:var(--ink-soft); font-weight:500;}
dd{margin:0; font-weight:700;}
table{width:100%; border-collapse:collapse; margin:0.6em 0 1em; font-size:0.94rem; background:#fff; border-radius:14px; overflow:hidden;}
th, td{text-align:left; padding:12px 14px; border-top:1px solid var(--line); vertical-align:top;}
tr:first-child th{border-top:none; background:var(--teal); color:#fff;}
th{font-weight:700; width:34%;}
.toc{margin:0 0 1.6em; padding:18px 22px; list-style:none; background:#fff; border-radius:14px; columns:2; column-gap:24px;}
.toc li{margin:0 0 0.35em; break-inside:avoid;}
.toc a{color:var(--teal); text-decoration:none; font-weight:600; font-size:0.93rem;}
.toc a:hover{color:var(--tomato);}
footer.legal-foot{margin-top:60px; padding-top:24px; border-top:1px solid var(--line); font-size:0.86rem; color:var(--ink-soft);}
footer.legal-foot a{color:var(--teal); text-decoration:none; font-weight:600;}
@media (max-width:560px){
  .wrap{padding:28px 16px 72px;}
  h1{font-size:2rem;}
  .toc{columns:1;}
  dl div{flex-direction:column; gap:2px;}
  dt{flex:none;}
  table{font-size:0.88rem;}
  th,td{padding:10px;}
}
