.workshop{--ink:#282b2e;--paper:#fff;--muted:#61676d;--line:#e0e3e5;--accent:#245b83;background:var(--paper);color:var(--ink);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.65}.workshop a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.workshop a:hover{text-decoration-thickness:2px}.workshop a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.workshop-nav{max-width:1000px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:28px 32px;gap:24px;border-bottom:1px solid var(--line)}.workshop-nav .wordmark{font-size:18px;font-weight:600;color:var(--ink);text-decoration:none}.workshop-nav nav{display:flex;gap:24px;font-size:15px}.workshop-nav nav a{text-decoration:none}.web-apps-menu{position:relative}.web-apps-menu summary{color:var(--accent);cursor:pointer;white-space:nowrap}.web-apps-menu summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.web-apps-menu ul{position:absolute;top:calc(100% + 10px);left:0;z-index:20;width:235px;padding:8px;margin:0;list-style:none;border:1px solid var(--line);border-radius:4px;background:var(--paper);box-shadow:0 8px 24px rgb(0 0 0/8%)}.web-apps-menu li a{display:block;padding:8px 12px}.web-apps-menu li a:focus-visible,.web-apps-menu li a:hover{background:#f1f5f8}.workshop main{max-width:1000px;margin:auto}.home-page,.workshop-page{padding:0 32px}.workshop-page{padding-top:36px;padding-bottom:70px}.workshop h1,.workshop h2,.workshop h3{font-weight:600;line-height:1.35;letter-spacing:normal}.workshop h1{font-size:26px}.workshop h2{font-size:22px}.workshop h3{font-size:19px}.home-intro,.workshop p{max-width:72ch}.home-intro{padding:32px 0 24px}.home-intro p+p{margin-top:12px}.workshop-section{padding:26px 0;border-top:1px solid var(--line)}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:4px}.section-heading>a{font-size:14px}.project-entry{display:grid;grid-template-columns:260px minmax(0,1fr);gap:32px;padding:25px 0}.project-entry+.project-entry{border-top:1px solid var(--line)}.project-entry h3 a{color:var(--ink)}.project-meta{font-size:13px;color:var(--muted);margin:10px 0}.project-links{display:flex;gap:20px;flex-wrap:wrap;font-size:14px}.project-thumbnail{width:100%;height:auto;margin-top:16px;border:1px solid var(--line)}.experience-summary p{margin:16px 0}.experience-summary>a{font-size:14px}.writing-list article{padding:18px 0}.writing-list article+article{border-top:1px solid var(--line)}.writing-list time{font-size:13px;color:var(--muted)}.writing-list h2,.writing-list h3{font-size:18px;margin-top:4px}.writing-list p{margin-top:8px}.contact-strip{padding:24px 0 44px;border-top:1px solid var(--line);display:flex;gap:24px;font-size:14px}.page-intro{margin:12px 0 28px;color:var(--muted)}.case-study{max-width:850px!important}.case-study h1{margin-top:20px}.case-study section{margin:32px 0}.case-study section p{margin-top:12px}.case-study dl{border-block:1px solid var(--line);padding:16px 0}.case-study dt{font-weight:600;margin-top:12px}.case-study dt:first-child{margin-top:0}.case-study dd{font-size:15px}.case-study figure{margin:24px 0}.case-study figcaption{font-size:13px;color:var(--muted);margin-top:8px}.skip-link{position:absolute;left:20px;top:-100px;padding:12px;background:white;color:#245b83;z-index:100}.skip-link:focus{top:12px}.blog-navigation{min-height:0}.prose a{overflow-wrap:anywhere}@media (max-width:650px){.workshop-nav{padding:22px 20px;align-items:flex-start;flex-direction:column;gap:12px}.workshop-nav nav{gap:14px;flex-wrap:wrap}.home-page,.workshop-page{padding-inline:20px}.project-entry{grid-template-columns:1fr;gap:10px}.project-thumbnail{max-width:360px}.home-intro{padding-top:24px}.section-heading{gap:12px}.workshop h1{font-size:24px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;scroll-behavior:auto!important;transition:none!important}}