@import url("styles-v2-a.css?v=2");
:root { --legal-width: 1120px; }
body { font-size:16px; }
a { text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
a:focus-visible { outline:3px solid var(--ink); outline-offset:5px; }
.skip { position:absolute; left:16px; top:-100px; background:var(--surface); padding:12px; z-index:3; }
.skip:focus { top:12px; }
.shell { max-width:var(--legal-width); margin:auto; padding:0 28px; }
.site-head { background:var(--dark-bg); color:var(--surface); }
.site-head .shell { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:94px; }
.site-head a { display:inline-flex; align-items:center; gap:14px; min-height:44px; color:inherit; }
.site-head a:focus-visible { outline-color:var(--surface); }
.logo { width:58px; height:58px; border-radius:9px; }
.brand { font-family:var(--font-display); font-size:26px; text-decoration:none; }
.back { font-size:14px; }
.intro { padding:64px 0 32px; }
h1 { font-family:var(--font-display); font-size:clamp(44px,7vw,76px); line-height:1.05; letter-spacing:0; }
.subtitle { margin-top:20px; max-width:65ch; color:var(--muted); font-size:18px; }
.meta { margin-top:20px; color:var(--muted); font-size:14px; }
.layout { display:grid; grid-template-columns:230px minmax(0,1fr); gap:64px; padding-bottom:64px; }
.contents { align-self:start; position:sticky; top:24px; }
.contents strong { display:block; margin-bottom:12px; }
.contents ol { list-style:none; }
.contents a { display:flex; align-items:center; min-height:44px; padding:7px 0; font-size:14px; color:var(--ink-2); }
article { min-width:0; }
section { margin-bottom:38px; scroll-margin-top:24px; }
h2 { font-family:var(--font-body); font-size:24px; font-weight:600; line-height:1.35; text-transform:none; letter-spacing:-.025em; margin-bottom:16px; }
article p { margin:0 0 14px; line-height:1.8; }
.legal-foot { border-top:1px solid var(--line); padding:26px 0; color:var(--muted); }
.legal-foot .shell { display:flex; flex-wrap:wrap; gap:12px 28px; align-items:center; }
.legal-foot a { min-height:44px; display:inline-flex; align-items:center; }
@media(max-width:760px) { .shell{padding:0 22px;} .site-head .shell{min-height:82px;} .logo{width:42px;height:42px;} .brand{font-size:22px;gap:10px!important;} .back{max-width:96px;text-align:right;} .intro{padding-top:38px;} .layout{grid-template-columns:1fr;gap:32px;} .contents{position:static;border-bottom:1px solid var(--line);padding-bottom:24px;} h2{font-size:22px;} }
@media(prefers-reduced-motion:reduce) {html{scroll-behavior:auto;}}
@media print { .site-head,.contents,.legal-foot,.skip{display:none;} .layout{display:block;} .intro{padding-top:0;} .shell{padding:0;} section{break-inside:avoid;} }
