.materials-page .main-nav>a[aria-current="page"]{color:var(--ink)}
.materials-page .article-body{overflow-wrap:anywhere}
.materials-page .article-body h2:first-child{margin-top:0}
.materials-page .article-body pre{max-width:100%;overflow-x:auto;padding:24px;background:var(--mist);border-radius:var(--radius-sm);font-size:15px;line-height:1.6}
.materials-page .article-body code{font-family:var(--mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace)}
.materials-page .article-body img{display:block;max-width:100%;height:auto;border-radius:var(--radius-sm)}
.materials-page .article-body :not(pre)>code{overflow-wrap:anywhere}

.material-hero{padding:22px 0 30px;background:var(--fog)}
.material-hero-inner{max-width:1100px}
.material-hero-inner>.breadcrumbs,.material-hero-inner>.eyebrow{max-width:820px}
.material-hero .breadcrumbs{margin-bottom:20px}
.material-hero .eyebrow{margin-bottom:12px}
.material-hero h1{max-width:820px;font-family:var(--display);font-size:clamp(38px,10vw,66px);font-weight:400;line-height:.98;letter-spacing:-.035em;overflow-wrap:anywhere}
.material-result{max-width:680px;margin:14px 0 0;color:var(--ink);font-size:18px;line-height:1.45}
.material-start{display:grid;gap:10px;max-width:560px;margin-top:22px;padding:20px 20px 18px;background:var(--sticker-sage);border-radius:var(--sticker-radius);box-shadow:var(--sticker-shadow);transform:rotate(-.8deg)}
.material-start-kicker{display:inline-flex;width:max-content;max-width:100%;min-height:30px;align-items:center;margin:0;padding:5px 13px;background:var(--brown);border-radius:var(--pill);color:var(--paper);font-size:13px;font-weight:500;line-height:1.2}
.material-start-title{margin:0;font-family:var(--display);font-size:clamp(28px,7.6vw,38px);line-height:1.02;letter-spacing:-.01em;overflow-wrap:anywhere}
.material-start-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin-top:4px}
.material-start-actions .btn{white-space:normal;text-align:center}
.material-start-prepare{display:inline-flex;min-height:44px;align-items:center;color:var(--ink);font-size:15px;text-decoration:underline;text-underline-offset:4px}

.material-layout{display:grid;gap:28px;max-width:1100px;padding-top:24px;padding-bottom:64px}
.material-toc{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm)}
.material-toc summary{display:flex;min-height:52px;align-items:center;gap:10px;padding:10px 18px;cursor:pointer;font-size:16px;font-weight:500;list-style:none}
.material-toc summary::-webkit-details-marker{display:none}
.material-toc summary span{margin-right:auto;color:#4f535b;font-size:14px;font-weight:400}
.material-toc summary::after{content:"+";display:grid;width:30px;height:30px;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:18px;font-weight:400}
.material-toc[open] summary::after{content:"−"}
.material-toc summary:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.material-toc ol,.material-toc-side ol{display:grid;gap:0;margin:0;padding:0 18px 12px;list-style:none}
.material-toc a,.material-toc-side a{display:flex;min-height:44px;align-items:center;color:var(--ink);font-size:15px;line-height:1.3}
.material-toc-side{display:none}

.material-body h2.material-step{display:grid;justify-items:start;gap:14px;margin-top:72px}
.material-step-label{display:inline-flex;align-items:center;min-height:30px;padding:5px 13px;background:var(--brown);border-radius:var(--pill);color:var(--paper);font-family:var(--body);font-size:14px;font-weight:500;line-height:1.2;letter-spacing:0;box-shadow:0 6px 14px -8px rgba(93,42,26,.5);transform:rotate(-2deg)}
.material-body blockquote{border-left:0;border-radius:var(--radius-sm);background:var(--mist);font-family:var(--body);font-size:16px;line-height:1.55}
.material-body blockquote p{margin:0}
.material-shot{margin:32px 0}
.material-shot-link{position:relative;display:block;padding:10px;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}
.material-shot-link:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.materials-page .material-shot img{width:100%;border-radius:12px}
.material-shot-zoom{position:absolute;right:18px;bottom:18px;padding:6px 12px;background:rgba(23,25,28,.86);border-radius:var(--pill);color:var(--paper);font-size:13px;font-weight:500;line-height:1.2}
.material-shot figcaption{margin-top:12px;color:#4f535b;font-size:15px;line-height:1.45}
.material-back{margin:48px 0 0}
.material-back a{display:inline-flex;min-height:44px;align-items:center;color:var(--ink);font-size:16px;text-decoration:underline;text-underline-offset:4px}

.materials-hero{position:relative;padding:44px 0 40px;overflow:hidden;background:var(--fog)}
.materials-hero-grid{position:relative;display:grid;gap:18px}
.materials-hero .text-display{position:relative;z-index:1}
.materials-hero-lede{position:relative;z-index:1;max-width:560px;margin:0;color:var(--ink);font-size:18px;line-height:1.55}
.materials-hero-art{position:absolute;top:-10px;right:-4px;width:86px;height:100px}
.materials-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:24px;max-width:1040px;padding-top:44px;padding-bottom:48px}
.material-card{position:relative;display:flex;flex-direction:column;gap:14px;padding:26px 24px 22px;background:var(--sticker-sage);border-radius:var(--sticker-radius);box-shadow:var(--sticker-shadow);transform:rotate(-.5deg)}
.material-card:nth-child(4n+2){background:var(--sticker-blue);transform:rotate(.5deg)}
.material-card:nth-child(4n+3){background:var(--sticker-sand);transform:rotate(.4deg)}
.material-card:nth-child(4n+4){background:var(--sticker-clay);transform:rotate(-.4deg)}
.material-card-meta{display:inline-flex;width:max-content;max-width:100%;min-height:30px;align-items:center;margin:0;padding:5px 13px;background:var(--brown);border-radius:var(--pill);color:var(--paper);font-size:13px;font-weight:500;line-height:1.2}
.material-card h2{margin:0;font-family:var(--display);font-size:clamp(30px,7vw,42px);font-weight:400;line-height:1.02;overflow-wrap:anywhere}
.material-card>p:not(.material-card-meta){max-width:640px;margin:0;color:var(--ink);font-size:17px;line-height:1.5}
.material-open{display:inline-flex;align-items:center;gap:8px;min-height:44px;width:fit-content;margin-top:auto;color:var(--brown);font-size:15px;font-weight:500;text-decoration:underline;text-underline-offset:5px}
.materials-empty{grid-column:1/-1;max-width:640px;margin:0;font-size:18px}

.material-skip{position:fixed;top:12px;left:12px;z-index:1000;transform:translateY(-200%);background:var(--ink);color:var(--paper);padding:12px 20px;border-radius:var(--pill)}
.material-skip:focus{transform:none}
.materials-page a:focus-visible{outline:2px solid var(--ink);outline-offset:3px}

@media(max-width:899px){.materials-page .article-body h2{font-size:36px}.materials-page .article-body pre{padding:18px;font-size:14px}}
@media(min-width:900px){
  .material-hero{padding:40px 0 56px}
  .material-start{padding:26px 28px 22px}
  .material-layout{grid-template-columns:240px minmax(0,700px);align-items:start;gap:64px;padding-top:64px;padding-bottom:96px}
  .material-toc{display:none}
  .material-toc-side{position:sticky;top:104px;display:block;max-height:calc(100vh - 140px);overflow-y:auto}
  .material-toc-side p{margin:0 0 10px;font-size:13px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}
  .material-toc-side ol{padding:0}
  .material-toc-side a{font-size:14px;color:#4f535b}
  .materials-hero{padding:96px 0 80px}
  .materials-hero-grid{grid-template-columns:minmax(0,1fr) minmax(280px,420px) 190px;align-items:end;gap:48px}
  .materials-hero-art{position:static;width:190px;height:220px;align-self:center}
  .materials-list{padding-top:72px;padding-bottom:64px}
}
