/* 01. Design tokens */
:root{--midnight:#212A3A;--wine:#754B57;--ochre:#B88945;--slate:#66758C;--olive:#727564;--clay:#A8644D;--paper:#F6F0E4;--cool:#EBEEF0;--wine-wash:#EFE5E8;--ochre-wash:#F1E7D5;--graphite:#34383D;--muted:#73777C;--soft:#FCFAF6;--white:#FFFFFF;--font-editorial:Georgia,Cambria,"Times New Roman",Times,serif;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;--fs-sm:clamp(.75rem,.7rem + .2vw,.86rem);--fs-body:clamp(.98rem,.93rem + .18vw,1.08rem);--fs-h3:clamp(1.35rem,1.15rem + .7vw,1.85rem);--fs-h2:clamp(2rem,1.45rem + 2vw,3.65rem);--fs-h1:clamp(2.8rem,1.8rem + 3.7vw,6rem);--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2.5rem;--space-5:4rem;--space-6:clamp(5rem,10vw,9rem);--container:1200px;--border:1px solid rgba(33,42,58,.18);--radius:4px;--shadow:0 16px 40px rgba(33,42,58,.08);--transition:220ms ease}
/* 02. Reset */
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,h3,p,ol,ul{margin:0}ol,ul{padding:0}img{display:block;max-width:100%}a{color:inherit}button,input{font:inherit}
/* 03. Base */
body{background:var(--paper);color:var(--graphite);font-family:var(--font-sans);font-size:var(--fs-body);line-height:1.65}body.menu-open{overflow:hidden}::selection{background:var(--ochre-wash);color:var(--midnight)}
/* 04. Accessibility */
.skip-link{position:fixed;z-index:999;left:1rem;top:1rem;transform:translateY(-180%);background:var(--white);padding:.7rem 1rem;border:2px solid var(--midnight)}.skip-link:focus{transform:none}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--ochre);outline-offset:4px}
/* 05. Typography */
h1,h2,h3{font-family:var(--font-editorial);color:var(--midnight);font-weight:400;line-height:1.08}h1{font-size:var(--fs-h1);letter-spacing:-.045em}h2{font-size:var(--fs-h2);letter-spacing:-.025em}h3{font-size:var(--fs-h3)}.eyebrow,.index,.category,.micro,.orcid,.reference-only{font:600 var(--fs-sm)/1.3 var(--font-mono);letter-spacing:.1em}.eyebrow{color:var(--wine)}.lede{font-size:clamp(1.1rem,1rem + .4vw,1.35rem);max-width:65ch}.section-heading{max-width:820px}.section-heading .eyebrow{margin-bottom:1rem}.section-heading>p:last-child{margin-top:1.4rem;max-width:72ch}
/* 06. Layout */
.container{width:min(calc(100% - 3rem),var(--container));margin-inline:auto}.section{padding-block:var(--space-6)}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7rem 1.2rem;text-decoration:none;font-size:.9rem;font-weight:650}.button.primary{background:var(--midnight);color:var(--white)}.button.primary:hover{background:var(--wine)}.text-button{border-bottom:1px solid var(--ochre);padding-inline:.25rem}.tags{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin-top:1.5rem}.tags li{border:var(--border);border-radius:99px;padding:.25rem .6rem;font-size:.75rem}
/* 07. Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(246,240,228,.96);border-bottom:var(--border);backdrop-filter:blur(8px)}.header-inner{width:min(calc(100% - 3rem),1320px);min-height:78px;margin:auto;display:flex;align-items:center;gap:2rem}.brand{width:260px;margin-right:auto}.primary-nav{display:flex;align-items:center;gap:clamp(.7rem,1.2vw,1.25rem)}.primary-nav a{text-decoration:none;font-size:.78rem;white-space:nowrap}.primary-nav a:not(.nav-cta):hover{color:var(--wine)}.nav-cta{padding:.55rem .8rem;border:1px solid var(--midnight)}.menu-toggle{display:none;width:44px;height:44px;background:none;border:0;padding:10px}.menu-toggle span{display:block;height:2px;background:var(--midnight);margin:5px}
/* 08. Hero */
.hero{min-height:calc(100vh - 78px);display:grid;align-items:center;padding-block:clamp(4rem,8vw,8rem);overflow:hidden}.hero-grid{display:grid;grid-template-columns:90px minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(2rem,4vw,5rem);align-items:center}.hero-index{align-self:stretch;border-right:var(--border);display:flex;flex-direction:column;justify-content:center;gap:3rem;font:var(--fs-sm) var(--font-mono);color:var(--ochre)}.hero-index span{display:grid;gap:.25rem}.hero-index b{color:var(--midnight);writing-mode:vertical-rl;font-size:.7rem;letter-spacing:.18em}.hero-copy .eyebrow{margin-bottom:1.5rem}.hero-copy h1 em{color:var(--wine);font-style:italic}.hero-copy .lede{margin-top:2rem}.micro{margin-top:2.5rem;color:var(--muted)}
/* 09. Marginalia */
.margin-notes{counter-reset:notes;list-style:none;border-top:var(--border);margin-top:1.5rem}.margin-notes li{counter-increment:notes;position:relative;padding:.8rem 0 .8rem 2.8rem;border-bottom:var(--border);font-size:.78rem}.margin-notes li::before{content:"[0" counter(notes) "]";position:absolute;left:0;color:var(--ochre);font-family:var(--font-mono)}
/* 10. Concept fragment */
.concept-fragment{position:relative;background:var(--soft);border:var(--border);box-shadow:var(--shadow);padding:2rem}.concept-fragment::before{content:"";position:absolute;inset:14px -10px -10px 14px;border:1px solid var(--ochre);z-index:-1}.term-map{display:grid;margin-top:2rem;gap:.6rem;font-family:var(--font-mono)}.term-map strong{font:400 2.8rem var(--font-editorial);color:var(--midnight);border-bottom:2px solid var(--wine)}.term-map span{padding-left:clamp(1rem,4vw,3.5rem);font-size:.8rem}.term-map sup{color:var(--ochre)}.fragment-note{margin-top:1.25rem;font:italic .75rem var(--font-editorial);color:var(--muted)}
/* 11. Concept strip */
.concept-strip{background:var(--midnight);color:var(--white);padding-block:var(--space-5)}.concept-strip .eyebrow{color:var(--ochre)}.strip-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:4rem;margin-top:1rem}.strip-grid h2{color:var(--white)}.strip-grid ol{list-style:none;counter-reset:strip}.strip-grid li{counter-increment:strip;border-top:1px solid rgba(255,255,255,.2);padding:.65rem 0}.strip-grid li::before{content:"[0" counter(strip) "] ";color:var(--ochre);font-family:var(--font-mono);font-size:.72rem}
/* 12. Reading fields */
.field-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:4rem;border-top:var(--border);border-left:var(--border)}.field{min-height:390px;padding:1.7rem;border-right:var(--border);border-bottom:var(--border);display:flex;flex-direction:column}.field .index{margin-bottom:auto}.field h3{margin-block:3rem 1rem}.field p{font-size:.9rem}.field .tags{margin-top:auto;padding-top:1.5rem}.field.theory{border-top:4px solid var(--wine)}.field.narrative{border-top:4px solid var(--clay)}.field.economy{border-top:4px solid var(--slate)}.field.context{border-top:4px solid var(--olive)}
/* 13. Cross-references */
.cross-section{background:var(--cool)}.cross-list{margin-top:4rem}.cross-row{display:grid;grid-template-columns:1.1fr repeat(3,1fr);gap:2rem;border-top:1px solid var(--midnight);padding:2.2rem 0}.cross-row>div span,.cross-row p b{display:block;font:600 .7rem var(--font-mono);letter-spacing:.08em;color:var(--wine);margin-bottom:.7rem}.cross-row p{font-size:.9rem}.cross-row:nth-child(even)>div{padding-left:2rem}
/* 14. Reading method */
.method-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.65fr);gap:clamp(3rem,8vw,7rem);align-items:start}.method-list{margin-top:3rem}.method-step{display:grid;grid-template-columns:60px 1fr;gap:1.4rem;border-top:var(--border);padding:1.3rem 0}.method-step>span{font-family:var(--font-mono);color:var(--ochre)}.method-step h3{font:600 .85rem var(--font-mono);letter-spacing:.08em}.method-step p{font-size:.9rem;margin-top:.4rem}
/* 15. Margin checklist */
.checklist{position:sticky;top:110px;background:var(--ochre-wash);border-left:4px solid var(--ochre);padding:2rem}.checklist h2{font-size:1.7rem;margin:1rem 0 1.5rem}.checklist ul{list-style:none}.checklist li{border-top:1px solid rgba(184,137,69,.35);padding:.55rem 0;font-size:.82rem}.checklist li::before{content:"□";margin-right:.6rem;color:var(--wine)}
/* 16. Academic references */
.scholars-section{background:var(--soft)}.contact-note{border-left:3px solid var(--ochre);padding-left:1rem;font-size:.86rem}.contact-note b{display:block;font-family:var(--font-mono);color:var(--midnight)}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:4rem}.profile{background:var(--paper);border:var(--border);padding:1.6rem;box-shadow:0 7px 20px rgba(33,42,58,.04)}.profile.offset{transform:translateY(2rem)}.profile-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.avatar{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--midnight);color:var(--white);font:600 .8rem var(--font-mono)}.profile.theory{border-top:3px solid var(--wine)}.profile.narrative{border-top:3px solid var(--clay)}.profile.economy{border-top:3px solid var(--slate)}.profile h3{margin-bottom:.7rem}.institution{font-size:.78rem;color:var(--muted)}.role{font-weight:650;margin:.65rem 0 1rem}.profile>p:not(.institution,.role,.orcid,.reference-only){font-size:.83rem}.orcid,.reference-only{margin-top:1.4rem;color:var(--wine);font-size:.7rem}.contact{margin-top:1.5rem;padding-top:1rem;border-top:var(--border);display:grid;gap:.5rem}.contact>span:first-child{font:600 .7rem var(--font-mono);color:var(--muted)}.contact a{font-size:.78rem;overflow-wrap:anywhere}.copy-email{justify-self:start;border:0;border-bottom:1px solid var(--ochre);background:none;padding:.3rem 0;cursor:pointer;font-size:.78rem}.copy-status{font:600 .7rem var(--font-mono);color:var(--wine);min-height:1em}
/* 17. Independence note */
.independence{background:var(--wine);color:var(--white);padding-block:var(--space-5)}.independence .container{display:grid;grid-template-columns:.55fr 1fr 1.4fr;gap:3rem}.independence .eyebrow{color:var(--ochre-wash)}.independence h2{color:var(--white);font-size:2.3rem}.independence p{font-size:.9rem}.independence div>p+ p{margin-top:1rem}
/* 18. Reading notes */
.notes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}.note{background:var(--soft);border:var(--border)}.note[hidden]{display:none}.note details{height:100%}.note summary{cursor:pointer;list-style:none;padding:1.6rem;min-height:220px}.note summary::-webkit-details-marker{display:none}.note summary span{font:600 .7rem var(--font-mono);color:var(--wine);letter-spacing:.08em}.note summary h3{margin:1.6rem 0 .8rem;padding-right:2rem;position:relative}.note summary h3::after{content:"+";position:absolute;right:0;color:var(--ochre)}.note details[open] summary h3::after{content:"−"}.note summary p,.note-body{font-size:.86rem}.note-body{padding:0 1.6rem 1.6rem;border-top:var(--border)}.note-body>p:first-child{padding-top:1.2rem}.note-tags{margin-top:1rem;color:var(--muted);font-family:var(--font-mono);font-size:.72rem}
/* 19. Search */
.search-panel{margin-top:3rem;border-block:1px solid var(--midnight);padding:1.3rem 0;display:grid;grid-template-columns:170px 1fr auto;gap:1rem;align-items:center}.search-panel label{font:600 .8rem var(--font-mono)}.search-panel>div{display:flex}.search-panel input{width:100%;background:transparent;border:0;border-bottom:1px solid var(--muted);padding:.75rem}.search-panel button{border:0;background:var(--ochre-wash);padding:.6rem 1rem;cursor:pointer}.search-panel>p{font-family:var(--font-mono);font-size:.8rem}.no-results{text-align:center;padding:4rem 1rem;font-family:var(--editorial)}
/* 20. About */
.about-section{background:var(--wine-wash)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem 6rem}.about-copy p+p{margin-top:1.1rem}.principles{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);border-top:var(--border);margin-top:2rem}.principles article{padding:1.5rem;border-right:var(--border)}.principles span{font-family:var(--font-mono);color:var(--wine)}.principles h3{font-size:1.25rem;margin:2rem 0 .7rem}.principles p{font-size:.82rem}
/* 21. Final CTA */
.final-cta{padding-block:var(--space-6);background:var(--soft)}.folio-cta{position:relative;min-height:590px;border:1px solid var(--midnight);display:grid;place-items:center;overflow:hidden}.folio-cta::before,.folio-cta::after{content:"";position:absolute;background:var(--ochre)}.folio-cta::before{width:1px;height:100%;left:18%}.folio-cta::after{height:1px;width:100%;top:22%}.cta-center{position:relative;z-index:1;width:min(650px,72%);padding:3rem;background:var(--soft);text-align:center}.context-word{display:block;font:600 .75rem var(--font-mono);letter-spacing:.3em;color:var(--ochre);margin:1rem}.cta-center h2{font-size:clamp(2rem,3vw,3.4rem)}.cta-center>p:not(.eyebrow){margin-top:1.5rem}.cta-center .button-row{justify-content:center}.annotation{position:absolute;font:400 clamp(1.7rem,4vw,4rem) var(--font-editorial);color:var(--wine);writing-mode:vertical-rl}.annotation.read{left:8%;top:9%}.annotation.compare{right:7%;top:30%}.annotation.question{left:8%;bottom:7%}
/* 22. Footer */
.site-footer{background:var(--midnight);color:var(--white);padding:4rem 0 2rem}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr auto;gap:3rem}.footer-brand{display:flex;gap:1rem}.footer-brand img{width:58px;filter:brightness(0) invert(1)}.footer-brand div{display:grid}.footer-brand strong{font:400 1.5rem var(--font-editorial)}.footer-brand span,.footer-brand small{font-size:.75rem;color:#cfd3da}.site-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.site-footer a{font-size:.78rem;text-decoration:none}.back-top{align-self:start}.copyright{border-top:1px solid rgba(255,255,255,.15);margin-top:3rem;padding-top:1.5rem;font-size:.72rem;color:#cfd3da}
/* 23. Reveal */
.js-enabled .reveal{opacity:0;transform:translateY(20px);transition:opacity 600ms ease,transform 600ms ease}.js-enabled .reveal.is-visible{opacity:1;transform:none}
/* 24. Responsive */
@media(max-width:1100px){.primary-nav{position:fixed;inset:79px 0 auto;background:var(--paper);padding:2rem;display:none;flex-direction:column;align-items:stretch;border-bottom:var(--border)}.primary-nav.is-open{display:flex}.menu-toggle{display:block}.hero-grid{grid-template-columns:60px 1fr}.concept-fragment{grid-column:2}.field-grid{grid-template-columns:repeat(2,1fr)}.cross-row{grid-template-columns:.7fr repeat(3,1fr);gap:1rem}.profile-grid{grid-template-columns:repeat(2,1fr)}.profile.offset{transform:none}.principles{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.container,.header-inner{width:min(calc(100% - 2rem),var(--container))}.brand{width:210px}.hero-grid{grid-template-columns:1fr}.hero-index{border-right:0;border-bottom:var(--border);padding-bottom:1rem;flex-direction:row;justify-content:flex-start}.hero-index span{display:flex}.hero-index b{writing-mode:initial;margin-left:.4rem}.concept-fragment{grid-column:auto}.strip-grid,.method-layout,.about-grid,.independence .container{grid-template-columns:1fr}.field-grid,.profile-grid,.notes-grid,.principles{grid-template-columns:1fr}.cross-row{grid-template-columns:1fr}.cross-row:nth-child(even)>div{padding-left:0}.checklist{position:static}.profile{padding:1.25rem}.search-panel{grid-template-columns:1fr}.search-panel>div{flex-wrap:wrap}.search-panel button{width:100%}.about-copy{grid-column:1}.principles{grid-column:1}.footer-grid{grid-template-columns:1fr}.folio-cta{min-height:660px}.cta-center{width:82%;padding:2rem 1rem}.annotation{font-size:1.4rem}.folio-cta::before{left:14%}.folio-cta::after{top:16%}}
@media(max-width:380px){.brand{width:180px}.header-inner{min-height:70px}.primary-nav{top:71px}.hero{padding-top:3rem}.concept-fragment{padding:1.3rem}.term-map strong{font-size:2.25rem}.section{padding-block:4rem}.profile .tags{display:none}.footer-brand{align-items:flex-start}}
/* 25. Reduced motion */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js-enabled .reveal{opacity:1;transform:none}}
