.route-label { color: var(--cyan); font-family: var(--mono); font-size: var(--step--1); font-weight: 650; letter-spacing: 0.08em; line-height: 1.3; } .portfolio-section > h2 { margin-block: var(--space-1) var(--space-2); font-size: var(--step-2); } .portfolio-section > p:not(.route-label), .portfolio-section article > p, .portfolio-section dd { color: var(--text-muted); } .portfolio-section > * + *, .portfolio-section article > * + *, .portfolio-section li + li { margin-block-start: var(--space-2); } .portfolio-section article { min-width: 0; margin-block-start: var(--space-3); padding-block-start: var(--space-3); border-block-start: 1px solid var(--line); } .portfolio-section article h3, .portfolio-section section h3 { font-size: var(--step-1); } .portfolio-section ul, .portfolio-section ol { padding-inline-start: 1.2rem; } .portfolio-section dl { display: grid; gap: var(--space-1) var(--space-2); margin-block-start: var(--space-3); } .portfolio-section dt { color: var(--cyan); font-family: var(--mono); font-size: var(--step--1); font-weight: 650; letter-spacing: 0.04em; } .portfolio-section dd { min-width: 0; margin-inline-start: 0; } .portfolio-section figure { min-width: 0; margin-block-start: var(--space-3); padding: var(--space-2); border: 1px solid var(--line); background: var(--surface-raised); } .portfolio-section figcaption { margin-block-start: var(--space-1); color: var(--text-muted); font-size: var(--step--1); } .portfolio-section svg { inline-size: 100%; block-size: auto; } .portfolio-section svg rect { fill: #172432; stroke: var(--cyan); stroke-width: 2; } .portfolio-section svg text { fill: var(--text); font-family: var(--sans); font-size: 19px; } .portfolio-section > div { display: grid; gap: var(--space-3); margin-block-start: var(--space-3); } .portfolio-section > div > section { min-width: 0; padding-block-start: var(--space-2); border-block-start: 1px solid var(--line); } .portfolio-section > div > section ul { display: flex; flex-wrap: wrap; gap: var(--space-1); margin-block-start: var(--space-2); padding: 0; list-style: none; } .portfolio-section > div > section li { display: inline-flex; gap: 0.45rem; align-items: center; min-block-size: 2rem; padding: 0.25rem 0.55rem; border: 1px solid var(--line); color: var(--text-muted); font-size: var(--step--1); } .portfolio-section > div > section li span[aria-hidden='true'] { inline-size: 0.5rem; block-size: 0.5rem; border: 1px solid var(--cyan); border-radius: 50%; }