
:root{--ink:#111;--paper:#fff;--muted:#777;--line:#181818;--pad:clamp(20px,3.2vw,56px);--max:1500px}
*{box-sizing:border-box} html{background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
body{margin:0;min-height:100vh} a{color:inherit} .shell{max-width:var(--max);margin:auto;padding:0 var(--pad)}
.site-header{min-height:118px;display:flex;align-items:flex-start;justify-content:space-between;padding:30px 0 22px;gap:40px;border-top:1px solid #ddd}
.identity{text-decoration:none;display:flex;flex-direction:column;gap:4px;white-space:nowrap}.wordmark{font-weight:800;font-size:18px;letter-spacing:.22em}.role{font-size:12px;color:#555}
nav{display:flex;gap:30px;padding-top:3px}nav a{font-size:12px;font-weight:700;color:#aaa;text-decoration:none}nav a:hover,nav a.active{color:#111}
.menu-button{display:none;background:none;border:1px solid #111;padding:9px 12px;font-weight:700}
main{min-height:calc(100vh - 260px)}
.hero{padding:50px 0 100px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:70px;align-items:end;border-top:2px solid #111}
.hero-kicker,.eyebrow{font-size:12px;font-weight:800;letter-spacing:.16em}.hero h1{font-size:clamp(54px,7.4vw,118px);line-height:.88;letter-spacing:-.065em;margin:16px 0 30px;max-width:1000px}
.hero-copy{font-size:clamp(20px,2vw,31px);line-height:1.12;max-width:760px}.hero-side{border-left:1px solid #111;padding-left:24px;font-size:14px;line-height:1.4}.hero-side strong{display:block;font-size:16px;margin-bottom:10px}
.statement{border-top:1px solid #111;padding:20px 0 100px;display:grid;grid-template-columns:1fr 2fr;gap:40px}.statement p{font-size:clamp(26px,3.5vw,55px);line-height:1.03;letter-spacing:-.035em;margin:0;max-width:1000px}
.page-head{border:2px solid #111;border-bottom:0;padding:30px 34px 26px;display:grid;grid-template-columns:1fr auto;gap:20px;margin-top:25px}
.page-head h1{font-size:clamp(38px,5vw,72px);line-height:.95;letter-spacing:-.045em;margin:15px 0 8px}.doc-ref{text-align:right;font-weight:800;letter-spacing:.08em;font-size:13px}
.record{border:2px solid #111;margin-bottom:80px;background:#fafaf8}.record-table{width:100%;border-collapse:collapse;table-layout:fixed}.record-table th{font-size:13px;letter-spacing:.09em;text-align:left;padding:14px 12px;border:1px solid #111;border-top:0;vertical-align:top}.record-table td{padding:18px 12px;border-left:1px solid #111;vertical-align:top;font-size:15px;line-height:1.2}.record-table td:first-child,.record-table th:first-child{border-left:0}.record-table tbody tr{border-bottom:1px solid transparent;transition:background .12s}.record-table tbody tr:hover,.record-table tbody tr:focus-within{background:#e9e9e4}.record-table .ref{width:10%}.record-table .title{width:29%;font-weight:800}.record-table .meta{width:22%}.record-table .desc{width:39%}.row-link{display:block;text-decoration:none}.record-table tr[data-state="live"] .title::after{content:" ↗";font-weight:400}
.materials{border-top:2px solid #111;padding:20px 24px 24px;display:grid;grid-template-columns:160px 1fr;gap:20px}.materials h2{font-size:14px;letter-spacing:.12em;margin:0}.materials p{margin:0;line-height:1.35;font-size:14px}
.about-grid{border-top:2px solid #111;padding:34px 0 100px;display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:70px}.portrait img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover}.about-copy{font-size:20px;line-height:1.25;max-width:720px}.about-copy p{margin:0 0 24px}.about-copy .year4{font-style:italic}.about-copy .big{font-size:clamp(34px,4vw,62px);line-height:1;letter-spacing:-.04em}
.contact-grid{border-top:2px solid #111;padding:45px 0 110px;display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-grid h1{font-size:clamp(54px,7vw,105px);line-height:.88;letter-spacing:-.06em;margin:0}.contact-info{font-size:19px;line-height:1.4}.contact-info a{font-weight:700}.contact-note{margin-top:60px;padding-top:16px;border-top:1px solid #111;font-size:13px}
.site-footer{border-top:1px solid #bbb;padding:18px 0 28px;text-align:center;color:#777;font-size:10px;line-height:1.3}.footer-links{margin-top:8px;display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.mobile-card{display:none}
@media(max-width:800px){
 .site-header{min-height:auto;flex-wrap:wrap;padding:22px 0 16px}.wordmark{font-size:14px;letter-spacing:.16em}.menu-button{display:block}nav{display:none;width:100%;padding:8px 0 0;flex-direction:column;gap:0;border-top:1px solid #111}nav.open{display:flex}nav a{padding:12px 0;border-bottom:1px solid #ccc}
 .hero{grid-template-columns:1fr;gap:35px;padding:35px 0 65px}.hero h1{font-size:clamp(52px,17vw,82px)}.hero-side{border-left:0;border-top:1px solid #111;padding:16px 0 0}
 .statement{grid-template-columns:1fr;gap:18px;padding-bottom:65px}.page-head{grid-template-columns:1fr;padding:22px 18px}.doc-ref{text-align:left}.page-head h1{font-size:42px}
 .record-table{display:none}.mobile-card{display:block;border-top:1px solid #111;padding:18px}.mobile-card:first-of-type{border-top:0}.mobile-card .m-top{display:flex;justify-content:space-between;gap:20px;font-size:11px;margin-bottom:14px}.mobile-card h2{font-size:25px;line-height:.95;margin:0 0 10px}.mobile-card .m-meta{font-size:13px;font-weight:700;margin-bottom:14px}.mobile-card p{font-size:15px;line-height:1.25;margin:0}
 .materials{grid-template-columns:1fr}.about-grid,.contact-grid{grid-template-columns:1fr;gap:34px}.about-copy{font-size:18px}.contact-note{margin-top:35px}
}

/* V0.3 — locked identity + register geometry */
.wordmark-fixed{font-weight:800;font-size:18px;white-space:nowrap}
.mo-fixed{font-weight:800;font-size:10px;white-space:nowrap;color:#777}
.massive-link:hover .mo-fixed{color:#111}

/* The register has exactly one perimeter. Nothing inside is allowed to draw outside it. */
.record{border:2px solid #111;overflow:hidden}
.page-head{border:0;border-bottom:1px solid #111;margin:0}
.record-table{border:0;border-collapse:collapse}
.record-table th{border:0;border-left:1px solid #111;border-bottom:1px solid #111}
.record-table td{border:0;border-left:1px solid #111}
.record-table th:first-child,.record-table td:first-child{border-left:0}
.materials{border:0;border-top:2px solid #111}
@media(max-width:800px){
  .wordmark-fixed{font-size:13px;white-space:normal;line-height:1.25}
}

/* V0.4 data-driven register */
.record-table .title a,.mobile-card h2 a{color:inherit;text-decoration:none}
.linked-record .title a::after,.mobile-card h2 a[href]::after{content:"  ↗";font-weight:400}
.linked-record:hover{background:#e9e9e4}

.mobile-records{display:none}
@media(max-width:800px){.mobile-records{display:block}}

/* V0.6 — homepage image: factual, not visionary */
.home-film{border-top:1px solid #111;padding:18px 0 80px}
.home-film figure{margin:0}
.home-film img{display:block;width:100%;height:auto;aspect-ratio:2.39/1;object-fit:cover}
.home-film figcaption{display:flex;justify-content:space-between;gap:20px;padding-top:9px;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
@media(max-width:800px){
  .home-film{padding-bottom:55px}
  .home-film img{aspect-ratio:16/9}
  .home-film figcaption{font-size:9px}
}

/* LOCKED UNIVERSAL FOOTER — V0.2 */
.universal-footer{box-sizing:border-box;width:min(1180px,calc(100% - 48px));margin:64px auto 28px;padding-top:14px;border-top:1px solid currentColor;font-size:11px;line-height:1.45;text-transform:uppercase;letter-spacing:.02em}
.universal-footer__meta,.universal-footer__links{max-width:100%;text-align:left}
.universal-footer__links{margin-top:5px}
.universal-footer a{color:inherit;text-decoration:none;border-bottom:1px solid currentColor}
.universal-footer a:hover{opacity:.62}
@media(max-width:700px){.universal-footer{width:calc(100% - 28px);margin-top:42px;font-size:10px}}


/* V0.5 — outer identity refinement */
.site-header{padding-top:34px}
.wordmark-fixed{font-size:20px;letter-spacing:.015em}
.role{font-size:12px;margin-top:1px}
@media(max-width:800px){
  .site-header{padding-top:24px}
  .wordmark-fixed{font-size:14px;line-height:1.25}
}
