.home .text-link{font-family:var(--mono);font-size:13px;line-height:20px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:6px;transition:text-decoration-color .25s var(--ease)}.home .text-link:hover{color:var(--ink);text-decoration-color:var(--pen)}.home .meta{margin:0;font-family:var(--mono);font-size:12px;line-height:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted-foreground)}.home-hero{display:grid;gap:48px;padding:48px 0 96px}.home .display{font-size:clamp(40px,6.4vw,88px)}.home .hero-lede{margin:32px 0 40px;max-width:40ch;font-family:var(--serif);font-size:20px;line-height:30px;font-variation-settings:"opsz" 24;text-wrap:pretty}.home-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px 32px}.home .portrait{margin:0;width:100%;max-width:440px;aspect-ratio:4 / 5;overflow:hidden;border:2px solid var(--ink);box-shadow:10px 10px 0 var(--pen)}.home .portrait img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0;transform:scale(1.6);transform-origin:57% 70%}@media (min-width: 900px){.home-hero{grid-template-columns:7fr 4fr;column-gap:80px;align-items:center}.home .portrait{margin-left:auto}}.home .writing,.home .built,.home .about-short{padding:80px 0}.home .section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:48px}.home .featured{display:grid;gap:24px;color:var(--ink);text-decoration:none}.home .featured-image{display:block;width:100%;height:auto;border:2px solid var(--ink);border-radius:0}.home .featured-title{margin:12px 0 16px;font-size:clamp(26px,3vw,38px);line-height:1.1}.home .featured-title span,.home .row-title span{background-image:linear-gradient(var(--hl),var(--hl));background-repeat:no-repeat;background-position:0 92%;background-size:0% 38%;transition:background-size .45s var(--ease);-webkit-box-decoration-break:clone;box-decoration-break:clone}.home .featured:hover .featured-title span,.home .post-row:hover .row-title span{background-size:100% 38%}.home .featured-summary{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0;max-width:52ch;font-size:17px;line-height:27px;font-variation-settings:"opsz" 18;color:var(--color-muted-foreground)}.home .post-rows{margin:56px 0 0;padding:0;list-style:none;display:grid;gap:20px}.home .post-row{display:grid;gap:4px;color:var(--ink);text-decoration:none}.home .row-title{font-family:var(--serif);font-size:22px;line-height:1.2;letter-spacing:-.015em;font-variation-settings:"opsz" 48}@media (min-width: 900px){.home .featured{grid-template-columns:7fr 5fr;column-gap:48px;align-items:center}.home .post-row{grid-template-columns:160px 1fr;align-items:baseline;column-gap:32px}}.home .built-grid{display:grid;gap:24px;margin:48px 0 0;padding:0;list-style:none}.home .built-card{display:flex;flex-direction:column;height:100%;padding:24px;border:2px solid var(--ink);background:var(--paper);color:var(--ink);text-decoration:none;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}.home .built-card:hover{color:var(--ink);transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--pen)}.home .built-card:focus-visible{outline:2px solid var(--pen);outline-offset:4px}.home .built-name{margin:0 0 12px;font-family:var(--serif);font-size:28px;line-height:1.1;letter-spacing:-.02em;font-variation-settings:"opsz" 48}.home .built-name span{background-image:linear-gradient(var(--hl),var(--hl));background-repeat:no-repeat;background-position:0 92%;background-size:0% 38%;transition:background-size .45s var(--ease)}.home .built-card:hover .built-name span{background-size:100% 38%}.home .built-what{flex:1;margin:0 0 20px;font-size:17px;line-height:27px;color:var(--color-muted-foreground)}@media (min-width: 900px){.home .built-grid{grid-template-columns:repeat(3,1fr)}}.home .about-short{display:grid;gap:24px}.home .about-body p{margin:0 0 24px;max-width:44ch;font-size:22px;line-height:32px;font-variation-settings:"opsz" 24}.home .about-links{display:flex;flex-wrap:wrap;gap:12px 28px}@media (min-width: 900px){.home .about-short{grid-template-columns:5fr 7fr;column-gap:80px}}.home .cta-title-small{max-width:18ch;font-size:clamp(32px,4.4vw,60px)}.home .cta-band .btn-light{margin-top:0}
