/* Layout: one readable column with the brand bar on top. */
:root{
  --bg:#FFFBF8; --surface:#FFFFFF; --ink:#1A0A05; --muted:#6B5A53; --line:#EBDDD6;
  --accent:#FF4A12; --accent-ink:#B82D06; --chip:#FFEDE5;
  --display:"Albert Sans", "Helvetica Neue", Arial, sans-serif;
  --body:"Albert Sans", "Helvetica Neue", Arial, sans-serif;
}
@media (prefers-color-scheme: dark){:root{
  --bg:#140804; --surface:#1F110B; --ink:#F7EDE8; --muted:#BFA9A0; --line:#3A251C;
  --accent:#FF6A3A; --accent-ink:#FF8A60; --chip:#2C160D; color-scheme:dark}}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6;margin:0;
  padding-left:max(16px, env(safe-area-inset-left, 0px));padding-right:max(16px, env(safe-area-inset-right, 0px));padding-block:0 64px;padding-top:env(safe-area-inset-top,0px)}
.wrap{max-width:680px;margin:0 auto}
header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-block:28px 20px;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px;font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:-0.02em}
.brand svg{width:40px;height:40px;border-radius:10px;flex:none}
nav{display:flex;gap:8px;flex-wrap:wrap}
nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:15px;padding:8px 14px;border-radius:999px;background:var(--chip)}
nav a:hover,nav a:focus-visible{background:var(--accent);color:#fff;outline:none}
h1{font-family:var(--display);font-weight:800;font-size:clamp(32px,6vw,44px);line-height:1.05;letter-spacing:-0.035em;margin:44px 0 8px;text-wrap:balance}
h2{font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:-0.02em;margin:36px 0 8px;text-wrap:balance}
p{margin:0 0 12px}
ul{margin:0 0 12px;padding-left:22px;display:grid;gap:6px}
.date{color:var(--muted);font-size:15px;margin-bottom:24px}
.summary{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:14px;padding:18px 20px;margin:20px 0 8px}
.summary p:last-child{margin:0}
.summary strong{font-weight:800}
a{color:var(--accent-ink);text-underline-offset:3px}
a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}
.contact{display:flex;flex-wrap:wrap;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:12px 0 20px}
.contact .label{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);width:100%}
.contact code{font-family:var(--body);font-size:18px;font-weight:600;user-select:all;overflow-wrap:anywhere}
.contact button{margin-left:auto;font:600 15px var(--body);border:0;border-radius:999px;padding:8px 16px;background:var(--accent);color:#fff;cursor:pointer}
.contact button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
details{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:0 18px;margin:0 0 10px}
summary{cursor:pointer;font-weight:600;padding:14px 0;list-style:none;display:flex;justify-content:space-between;gap:12px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--accent-ink);font-weight:800;font-size:20px;line-height:1}
details[open] summary::after{content:"–"}
details > div{padding:0 0 14px}
.path{font-weight:600}
footer{margin-top:48px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}
nav a[aria-current="page"]{background:var(--accent);color:#fff}
.lead{font-size:19px;color:var(--muted);max-width:560px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:24px}
.card{display:block;text-decoration:none;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px 20px}
.card b{display:block;font-family:var(--display);font-weight:800;font-size:20px;margin-bottom:4px}
.card span{color:var(--muted);font-size:15px}
.card:hover,.card:focus-visible{border-color:var(--accent);outline:none}
