*{box-sizing:border-box}html{background:var(--vi-surface);color:var(--vi-ink);font-family:var(--vi-font-ui);font-synthesis:none}body{margin:0}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--vi-focus)}a:focus-visible{outline:2px solid var(--vi-focus);outline-offset:5px}header,main,footer{width:min(100% - 48px,1120px);margin-inline:auto}header{padding-block:32px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px}nav{display:flex;flex-wrap:wrap;gap:16px 28px}nav a{min-height:44px;display:inline-flex;align-items:center}header>a{font-weight:600;font-size:22px;text-decoration:none}main{padding-block:64px 96px}h1{font-size:clamp(32px,4.5vw,56px);font-weight:550;line-height:1.18;letter-spacing:-.035em;max-width:950px;margin:12px 0 28px}p{font-size:17px;line-height:1.85;margin:0 0 20px;overflow-wrap:anywhere}.intro{font-size:20px;max-width:760px}.layout{display:grid;grid-template-columns:minmax(0,720px) 220px;gap:clamp(32px,6vw,96px);margin-top:64px}section{margin-bottom:48px}h2{font-size:26px;font-weight:550;line-height:1.4;margin:0 0 20px;letter-spacing:-.02em}aside{font-size:15px}aside ol{padding-left:20px}aside li{margin:0 0 18px;line-height:1.7}aside a{display:inline-block;min-height:32px}footer{border-top:1px solid var(--vi-line);padding-block:28px 40px;font-size:15px}.resource-list{padding:0;list-style:none}.resource-list li{padding-block:12px;line-height:1.7}.project-list section{padding-block:28px;border-bottom:1px solid var(--vi-line);margin:0}.project-list p{max-width:760px}.skip{position:absolute;top:-100px;left:24px}.skip:focus{top:12px;background:var(--vi-surface);padding:12px}figure{margin:40px 0}img{width:100%;height:auto}figcaption{font-size:14px;line-height:1.7;color:var(--vi-text-secondary)}@media(max-width:700px){header,main,footer{width:calc(100% - 36px)}header{padding-block:18px;gap:14px}main{padding-block:32px 56px}.layout{grid-template-columns:1fr;margin-top:40px;gap:24px}.intro{font-size:18px}p{font-size:16px}aside{order:-1}aside ol{display:flex;flex-wrap:wrap;gap:12px 24px;padding:0;list-style:none}aside li{margin:0}h2{font-size:23px}}