.masthead{gap:18px 28px;flex-wrap:wrap}.site-nav{display:flex;align-items:center;gap:24px;margin-left:auto}.site-nav a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;font-weight:600;letter-spacing:.12em;text-decoration:none;text-transform:uppercase;border-bottom:2px solid transparent}.site-nav a:hover,.site-nav a[aria-current=page]{border-color:var(--red)}
.daily-projects{display:flex;justify-content:space-between;align-items:center;gap:24px 60px;padding:44px 5.5%;border-bottom:1px solid var(--line)}.daily-projects>div{max-width:700px;min-width:0}.daily-projects .eyebrow{color:var(--red);margin:0 0 12px}.daily-projects h2{font:400 clamp(30px,3.5vw,46px)/1.15 Anton,Impact,sans-serif;margin:0 0 12px}.daily-projects p:last-child{font-size:17px;color:var(--grey);margin:0}.daily-projects>.project-link{flex-shrink:0}
.blog-shell{width:min(100% - 48px,1080px);margin:64px auto 80px;min-height:60vh}.blog-heading{margin-bottom:42px}.blog-heading .eyebrow,.article-heading .eyebrow{color:var(--red);margin-bottom:18px}.blog-heading h1,.article-heading h1{font:400 clamp(48px,6vw,84px)/1.08 Anton,Impact,sans-serif;letter-spacing:-.015em;margin:0 0 24px;overflow-wrap:anywhere}.blog-intro{font-size:22px;line-height:1.5;color:var(--grey);max-width:720px;margin:0 0 24px}.blog-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 44px;border-top:1px solid var(--line)}.project-card{min-width:0;padding:30px 0 34px;border-bottom:1px solid var(--line)}.project-meta{display:flex;flex-wrap:wrap;gap:6px 18px;color:var(--grey);font-size:12px;font-weight:600;letter-spacing:.07em;line-height:1.6;margin:0 0 16px}.project-card h2{font:400 clamp(29px,3vw,36px)/1.15 Anton,Impact,sans-serif;margin:0 0 16px;overflow-wrap:anywhere}.project-card h2 a{text-decoration:none}.project-card h2 a:hover{color:var(--red)}.project-card>p{font-size:18px;color:var(--grey);margin:0 0 16px}.project-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-size:12px;line-height:1.5;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--red);border-bottom:1px solid var(--red);padding:8px 0}.project-link:hover{color:var(--black);border-color:var(--black)}.blog-empty{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0;color:var(--grey)}.feed-link{display:inline-flex;align-items:center;min-height:44px;margin-top:24px;font-size:14px;color:var(--grey);text-underline-offset:4px}
.article-shell{max-width:860px}.back-link{display:inline-flex;align-items:center;min-height:44px;font-size:13px;font-weight:600;letter-spacing:.08em;text-decoration:none;text-underline-offset:5px;margin-bottom:28px}.back-link:hover{text-decoration:underline}.article-heading{margin-bottom:28px}.article-heading h1{font-size:clamp(42px,5.5vw,70px)}.article-heading .project-meta{margin-bottom:0}.design-note{border-left:3px solid var(--red);padding:18px 22px;background:#ebe5da;font-size:16px;line-height:1.6;margin:28px 0}.design-note p{margin:0}.design-note p+p{margin-top:12px}.project-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding:24px 0;margin:28px 0 36px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-facts>div{min-width:0}.project-facts dt{font-size:11px;letter-spacing:.12em;font-weight:600;text-transform:uppercase;margin-bottom:8px}.project-facts dd{font-size:18px;line-height:1.45;margin:0;overflow-wrap:anywhere}.article-body{font-size:19px;line-height:1.75;overflow-wrap:anywhere}.article-body section{margin:36px 0}.article-body h2{font:400 clamp(28px,3.5vw,36px)/1.2 Anton,Impact,sans-serif;margin:0 0 18px}.article-body p{margin:0 0 18px}.article-body ul,.article-body ol{padding-left:26px;margin:16px 0 24px}.article-body li{padding-left:5px;margin:0 0 10px}.article-body a{text-underline-offset:4px}.table-scroll{max-width:100%;overflow-x:auto;margin:18px 0 24px;border:1px solid var(--line)}.materials-table{border-collapse:collapse;width:100%;min-width:540px;font-size:16px;line-height:1.5;text-align:left}.materials-table th,.materials-table td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top}.materials-table th{font-size:12px;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;background:#ebe5da;font-weight:600}.materials-table tr:last-child td{border-bottom:0}.materials-table caption{text-align:left;padding:14px 16px;font-weight:600}.tool-list{columns:2;column-gap:36px}.tool-list li{break-inside:avoid}.build-steps>li{margin-bottom:28px;padding-left:10px}.build-steps>li::marker{font-weight:600;color:var(--red)}.build-steps h3{font-size:22px;line-height:1.35;font-weight:600;margin:0 0 12px}.build-steps p.step-check{border-left:2px solid var(--line);padding-left:16px;font-size:16px;line-height:1.6;color:var(--grey);margin-top:14px}.article-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;border-top:1px solid var(--line);padding:24px 0;margin-top:44px;font-size:14px;letter-spacing:0;font-weight:400}.article-footer p{margin:0;color:var(--grey)}.article-footer .feed-link{margin:0}.article-footer .project-link{margin:0}
@media(max-width:850px){.project-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-projects{gap:24px 36px}}
@media(max-width:650px){.masthead{gap:12px 18px}.site-nav{gap:16px}.masthead .header-note{width:100%;text-align:left}.daily-projects{display:block;padding:34px 6%}.daily-projects>.project-link{margin-top:18px}.blog-shell{width:88%;margin:40px auto 56px}.blog-heading{margin-bottom:28px}.blog-heading h1{font-size:clamp(42px,10vw,60px)}.blog-intro{font-size:19px}.blog-list{grid-template-columns:minmax(0,1fr)}.project-card{padding:26px 0}.project-card h2{font-size:32px}.article-heading h1{font-size:clamp(36px,9vw,54px)}.back-link{margin-bottom:20px}.project-facts{gap:22px 18px}.project-facts dd{font-size:17px}.article-body{font-size:18px;line-height:1.7}.article-body section{margin:30px 0}.design-note{padding:16px 18px}.tool-list{columns:1}.materials-table th,.materials-table td{padding:12px}.article-footer{gap:12px 18px}.article-footer>span:first-child{width:auto}}
