$font-path: 'ibm-plex'; // the base size of the header svg is 500 * 500, strokes will need to be // adjusted for exact pixel sizes $logo-size: 208; $factor: 1 / ($logo-size / 500); @import 'ibm-plex/css/ibm-plex.scss'; *, *:before, *:after { box-sizing: border-box; } html, body { padding: 0; margin: 0; } body { background: #fefefe; font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace; font-size: 16px; line-height: 1.5; } h1, h2, h3, h4, h5, h6 { font-weight: normal; margin: 0; } h1 { font-size: 32px; padding: 0 0 24px; } h2 { font-size: 24px; padding: 0 0 16px; } p { margin: 0 0 16px; } .ten-print { width: $logo-size * 1px; height: $logo-size * 1px; path { stroke: #ff005f; fill: transparent; stroke-width: 1.5px * $factor; stroke-linecap: round; } } main { display: grid; max-width: 960px; margin: 48px auto 48px 48px; grid-gap: 32px; // grid-auto-rows: 1fr; // grid-template-columns: repeat(4, 1fr); grid-template-areas: "header header header header" "nav content content content"; grid-auto-flow: dense; } header { grid-area: header; } nav { grid-area: nav; ul { list-style: none; margin: 0; padding: 0; } } article { grid-area: content; ul { padding: 0 0 0 16px; margin: 0 0 32px; } } // special page styling .home { // == main grid-template-areas: "header header header header" "nav nav nav nav"; nav { ul { list-style: inside; padding: 0 0 0 16px; margin: 0 0 32px; } } }