  :root{
    --accent:#b0714a;
    --bg:#f6f3ec; --panel:#fffdf8; --ink:#1c1a16; --muted:#6d675c; --line:#e7e0d3;
    --accent-soft:color-mix(in srgb,var(--accent) 12%,transparent);
  }
  @media (prefers-color-scheme:dark){
    :root{--bg:#141310; --panel:#1c1b16; --ink:#efe9dd; --muted:#a49b8b; --line:#2c2a22;
      --accent:color-mix(in srgb,#b0714a 68%,#ffffff);}
  }
  :root[data-theme="dark"]{--bg:#141310;--panel:#1c1b16;--ink:#efe9dd;--muted:#a49b8b;--line:#2c2a22;--accent:color-mix(in srgb,#b0714a 68%,#ffffff);}
  :root[data-theme="light"]{--bg:#f6f3ec;--panel:#fffdf8;--ink:#1c1a16;--muted:#6d675c;--line:#e7e0d3;--accent:#b0714a;}
  *{box-sizing:border-box}
  html{-webkit-text-size-adjust:100%}
  body{margin:0;background:var(--bg);color:var(--ink);
    font:400 17px/1.68 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",system-ui,sans-serif;
    -webkit-font-smoothing:antialiased}
  .wrap{max-width:660px;margin:0 auto;padding:clamp(2.4rem,6vw,5rem) 1.4rem 4rem}
  .eyebrow{display:inline-flex;align-items:center;gap:.5em;font-size:.72rem;font-weight:600;
    letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 1.1rem}
  .eyebrow svg{width:14px;height:14px}
  h1{font-family:Georgia,"Iowan Old Style",Palatino,"Times New Roman",serif;font-weight:600;
    font-size:clamp(2rem,5.5vw,2.9rem);line-height:1.12;letter-spacing:-.01em;margin:0 0 .7rem;
    text-wrap:balance}
  .lead{font-size:clamp(1.05rem,2.4vw,1.22rem);line-height:1.6;color:var(--muted);margin:0 0 2.4rem;
    max-width:34em;text-wrap:pretty}
  .rule{height:1px;background:linear-gradient(90deg,var(--accent),transparent);border:0;margin:0 0 2.6rem;opacity:.6}
  .blk{margin:0 0 2.1rem}
  .blk h2{font-family:Georgia,"Iowan Old Style",Palatino,serif;font-weight:600;font-size:1.28rem;
    line-height:1.25;margin:0 0 .55rem;letter-spacing:-.005em}
  .blk p{margin:0;color:var(--ink);opacity:.9;text-wrap:pretty}
  .brief{background:var(--panel);border:1px solid var(--line);border-radius:16px;
    padding:1.6rem 1.7rem;margin:2.6rem 0}
  .brief h2{font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
    color:var(--muted);margin:0 0 1rem}
  .brief ul{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}
  .brief li{position:relative;padding-left:1.7em;line-height:1.5}
  .brief li::before{content:"";position:absolute;left:0;top:.5em;width:.8em;height:.8em;
    border-radius:50%;background:var(--accent-soft);
    box-shadow:inset 0 0 0 2px var(--accent)}
  .foot{margin-top:3rem;padding-top:1.6rem;border-top:1px solid var(--line)}
  .norma{font-size:.86rem;color:var(--muted);margin:0 0 1.3rem;line-height:1.55}
  .back{display:inline-flex;align-items:center;gap:.5em;font-weight:600;color:var(--accent);
    text-decoration:none;font-size:.98rem}
  .back:hover{gap:.75em}
  .back svg{width:16px;height:16px;transition:transform .15s}
  a{color:var(--accent)}
  @media (prefers-reduced-motion:reduce){*{transition:none!important}}
  @media (prefers-reduced-motion:no-preference){
    .wrap>*{animation:rise .6s cubic-bezier(.2,.7,.2,1) both}
    .wrap>:nth-child(2){animation-delay:.04s}.wrap>:nth-child(3){animation-delay:.08s}
    .wrap>:nth-child(4){animation-delay:.12s}
    @keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  }
