@font-face{font-family:Inter;src:url("../../assets/fonts/inter-400.woff2?v=8909904a") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url("../../assets/fonts/inter-700.woff2?v=6f56409f") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url("../../assets/fonts/source-serif-4-400.woff2?v=02194deb") format("woff2");font-weight:400;font-style:normal;font-display:swap}

:root{
  --ill-paper:#f3efe5;
  --ill-sheet:#fffdf8;
  --ill-ink:#172b24;
  --ill-muted:#59675e;
  --ill-line:rgba(23,43,36,.19);
  --ill-gutter:clamp(1.25rem,5vw,6rem);
  --ill-width:min(94vw,96.25rem);
}
[data-theme="dark"]{
  --ill-paper:#142019;
  --ill-sheet:#202c24;
  --ill-ink:#f3efe5;
  --ill-muted:#b5c1b8;
  --ill-line:rgba(243,239,229,.2);
}
@media(min-width:1600px){:root{--ill-width:min(94vw,118rem)}}
@media(min-width:2200px){html{font-size:clamp(17px,.78vw,21px)}:root{--ill-width:min(94vw,clamp(140rem,84vw,168rem))}}
@media(min-width:5000px){html{font-size:clamp(26px,.42vw,34px)}:root{--ill-width:min(82vw,132rem)}}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ill-paper);color:var(--ill-ink);font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
.skip-link{position:absolute;left:-9999px;top:0;z-index:80;padding:.7rem 1rem;color:var(--ill-paper);background:var(--ill-ink)}
.skip-link:focus{left:1rem;top:1rem}
.project-header{position:relative;z-index:10;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:5rem;padding:0 max(10.5rem,var(--ill-gutter)) 0 var(--ill-gutter);border-bottom:1px solid var(--ill-line);font-size:.76rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.project-header>a{text-decoration:none;justify-self:start}
.project-header>span:nth-of-type(2){justify-self:end;color:var(--ill-muted)}
.project-header>a:focus-visible,.project-footer a:focus-visible{outline:3px solid #abc436;outline-offset:5px}
main{overflow:clip}
.illustration-hero,.method,.study-grid{width:var(--ill-width);margin-inline:auto}
.kicker{margin:0;color:#9d3e2b;font-size:.78rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
[data-theme="dark"] .kicker{color:#e19785}
h1,h2{font-family:"Source Serif 4",Georgia,serif;font-weight:400;letter-spacing:-.045em}
.illustration-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.72fr);gap:clamp(2rem,6vw,7rem);align-items:center;padding-block:clamp(3rem,7vw,7rem)}
.hero-copy{min-width:0}
.hero-copy h1{margin:.8rem 0 1.6rem;font-size:clamp(3.25rem,6.8vw,7rem);line-height:.92}
.hero-lead{max-width:32ch;margin:0 0 1.25rem;font:400 clamp(1.3rem,2vw,1.85rem)/1.3 "Source Serif 4",Georgia,serif}
.hero-text{max-width:58ch;margin:0;font-size:clamp(.98rem,1.15vw,1.13rem);line-height:1.65;color:var(--ill-muted)}
.hero-image{width:min(100%,31rem);margin:0;justify-self:center}
.hero-image img{width:100%;height:auto;background:var(--ill-sheet);border:1px solid var(--ill-line)}
figcaption{margin-top:.7rem;color:var(--ill-muted);font-size:.88rem;line-height:1.45}
.method{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);gap:clamp(2rem,7vw,8rem);padding-block:clamp(3.5rem,6vw,6rem);border-top:1px solid var(--ill-line);border-bottom:1px solid var(--ill-line)}
.method h2,.study-grid h2,.reflection h2{margin:.65rem 0 0;font-size:clamp(2.8rem,5vw,5.5rem);line-height:1.01}
.method-copy>p:first-child{max-width:59ch;margin:0;font-size:clamp(1rem,1.15vw,1.13rem);line-height:1.65}
.technique{display:grid;grid-template-columns:6.5rem 1fr;gap:1rem;max-width:59ch;margin:1.35rem 0 0;padding-top:1.15rem;border-top:1px solid var(--ill-line);color:var(--ill-muted);font-size:.92rem;line-height:1.55}
.technique strong{color:var(--ill-ink);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase}
.palette-intro{margin:2rem 0 .75rem;color:var(--ill-muted);font-size:.77rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.palette{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1.4rem;max-width:39rem;margin:0;padding:0;list-style:none}
.palette li{display:flex;align-items:center;gap:.8rem;min-width:0;padding:.8rem 0;border-top:1px solid var(--ill-line);font-size:.93rem;font-weight:700}
.palette small{display:block;margin-top:.25rem;color:var(--ill-muted);font-size:.78rem;font-weight:400;letter-spacing:.02em}
.swatch{display:block;flex:none;width:1.25rem;height:1.25rem;border-radius:50%;border:1px solid rgba(0,0,0,.12)}
.turquoise{background:#42a5b2}.yellow{background:#e4e85a}.olive{background:#98a45a}.ochre{background:#af7930}
.study-grid{padding-block:clamp(4rem,7vw,7rem)}
.section-heading{display:grid;grid-template-columns:minmax(0,.48fr) minmax(0,1fr) minmax(0,.4fr);gap:2rem;align-items:end;margin-bottom:2.7rem}
.section-heading h2{margin:0}.section-heading>p:last-child{max-width:30ch;margin:0;color:var(--ill-muted);font-size:.95rem;line-height:1.55}
.drawings{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(2rem,3.2vw,3.5rem)}
.drawings figure{min-width:0;margin:0}
.drawings figure:nth-child(-n+4){grid-column:span 6}
.drawings figure:last-child{grid-column:5/span 4;width:100%}
.drawings img{width:100%;height:auto;object-fit:contain;object-position:center;background:#d7d6d0;border:1px solid var(--ill-line)}
.drawings figcaption{display:grid;grid-template-columns:1fr;gap:.35rem;margin-top:.65rem;padding-top:.8rem;border-top:1px solid var(--ill-line)}
.drawings figcaption b{color:var(--ill-ink);font-size:.83rem;letter-spacing:.06em;text-transform:uppercase}
.drawings figcaption span{max-width:40ch}
.reflection{background:#172b24;color:#f3efe5;padding:clamp(4rem,7vw,7rem) var(--ill-gutter)}
.reflection-inner{width:var(--ill-width);margin:auto}
.reflection h2{max-width:13ch;margin:.7rem 0 1.5rem}
.reflection p:not(.kicker):not(.credit){max-width:47ch;margin:0;font:400 clamp(1.25rem,2vw,1.9rem)/1.4 "Source Serif 4",Georgia,serif}
.reflection .credit{margin:3rem 0 0;color:#becbc1;font-size:.8rem;letter-spacing:.04em}
.project-footer{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;min-height:6rem;padding:1rem var(--ill-gutter);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.project-footer p{margin:0;color:var(--ill-muted)}.project-footer a{text-decoration:none}
@media(max-width:1050px){.illustration-hero{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:2rem}.section-heading{grid-template-columns:1fr 2fr}.section-heading>p:last-child{grid-column:2}}
@media(max-width:740px){.project-header{grid-template-columns:1fr auto;min-height:4.5rem}.project-header>span{display:none}.illustration-hero,.method{grid-template-columns:1fr}.illustration-hero{padding-block:3.5rem;gap:2.5rem}.hero-copy h1{font-size:clamp(3.5rem,13vw,5.5rem)}.hero-image{width:min(100%,27rem)}.method{gap:1.5rem}.section-heading{display:block}.section-heading h2{margin:.65rem 0 1.2rem}.section-heading>p:last-child{max-width:45ch}.drawings{gap:2rem}}
@media(max-width:740px){.drawings{grid-template-columns:1fr}.drawings figure:nth-child(-n+4),.drawings figure:last-child{grid-column:1;width:100%}.drawings figure:last-child{width:min(78%,27rem);justify-self:center}.technique{grid-template-columns:1fr;gap:.35rem}}
@media(max-width:560px){.palette{grid-template-columns:1fr}.project-footer{align-items:flex-start;flex-direction:column}.reflection h2{font-size:clamp(2.65rem,11vw,4rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
