:root{--ink:#28184e;--muted:#6f6687;--lav:#f5f1ff;--line:#e5dcff;--violet:#7350f5}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#fff 0%,var(--lav) 100%);color:var(--ink);font-family:Inter,"Noto Sans",system-ui,sans-serif;line-height:1.7}header{max-width:1120px;margin:0 auto;padding:24px clamp(20px,5vw,56px);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:14px;color:var(--ink);text-decoration:none;font-weight:700;font-size:1.35rem}.brand img{width:54px;height:54px;object-fit:contain}.nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:14px;font-size:.92rem}.nav a{color:var(--muted);text-decoration:none}.nav a:hover,.nav a:focus{color:var(--violet)}main{max-width:920px;margin:20px auto 80px;padding:0 20px}.back{display:inline-block;margin:16px 0 22px;color:var(--violet);font-weight:600;text-decoration:none}.panel{background:#fff;border:1px solid var(--line);border-radius:28px;padding:clamp(28px,5vw,64px);box-shadow:0 18px 50px #4b328012}.eyebrow{color:var(--violet);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.18;margin:.4em 0 .7em}h2{margin-top:2.2em;font-size:1.35rem}h3{margin-top:1.5em;font-size:1.05rem}.item{padding:18px 0;border-top:1px solid var(--line)}.item:first-of-type{border-top:0}.meta{color:var(--muted);font-size:.9rem}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border-radius:999px;border:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:600}.btn.primary{background:var(--violet);border-color:var(--violet);color:#fff}.langs{margin-top:24px;display:flex;gap:10px;flex-wrap:wrap;font-size:.85rem}.langs a{color:var(--muted)}footer{max-width:920px;margin:0 auto;padding:0 20px 48px;color:var(--muted);font-size:.85rem}@media(max-width:640px){header{align-items:flex-start;flex-direction:column}.nav{justify-content:flex-start}.panel{border-radius:20px;padding:28px 22px}.brand img{width:46px;height:46px}}
/* Shared subpage header: brand and back navigation stay visually separate. */
.sub-header{max-width:1120px;margin:0 auto;padding:24px clamp(20px,5vw,56px);display:flex;align-items:center;gap:24px}
.sub-header .brand{flex:0 0 auto;display:inline-flex;align-items:center;gap:10px;min-width:0}
.brand-mark{width:42px;height:42px;object-fit:contain;display:block;flex:0 0 auto}
.brand-wordmark{line-height:1}
.sub-header .nav{margin-left:auto;flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
.sub-header .nav::-webkit-scrollbar{display:none}
.sub-header .nav a{flex:0 0 auto;white-space:nowrap;word-break:keep-all;overflow-wrap:normal}
.header-back{margin-left:auto;white-space:nowrap;color:var(--violet);font-weight:600;text-decoration:none}
.header-back:hover,.header-back:focus{color:var(--ink)}
.header-back:focus-visible,.sub-header .brand:focus-visible{outline:3px solid #8ca4ff;outline-offset:4px;border-radius:8px}
@media(max-width:640px){.sub-header{align-items:flex-start;flex-direction:column;gap:14px}.sub-header .nav{width:100%;margin-left:0;justify-content:flex-start}.header-back{margin-left:0}.brand-mark{width:38px;height:38px}}
