:root { --ink:#182019; --ink-soft:#243027; --paper:#f3eee2; --paper-deep:#e6ddcc; --copper:#9b5939; --copper-light:#bb8056; --muted:#5c625a; --hairline:rgba(24,32,25,.28); --hairline-light:rgba(243,238,226,.23); --serif:Georgia,"Times New Roman",serif; --sans:Inter,"Helvetica Neue",Arial,sans-serif; }
* { box-sizing:border-box; }
html { background:var(--paper); }
body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--sans); font-size:16px; line-height:1.55; -webkit-font-smoothing:antialiased; }
a { color:inherit; }
h1,h2,h3 { margin:0; font-family:var(--serif); font-weight:400; }
.eyebrow { margin:0; color:var(--copper); font-size:.76rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.masthead { min-height:82px; padding:0 4.5vw; display:flex; justify-content:space-between; align-items:center; gap:2rem; border-bottom:1px solid var(--hairline); }
.wordmark { display:inline-flex; gap:.7rem; align-items:center; font-size:.98rem; font-weight:700; letter-spacing:.14em; text-decoration:none; }
.mark { position:relative; display:inline-block; width:29px; height:12px; background:radial-gradient(circle at 4px 6px,var(--copper-light) 0 3.5px,transparent 4px),radial-gradient(circle at 25px 6px,var(--paper) 0 3px,var(--ink) 3.5px 4.5px,transparent 5px); }
.mark::after { content:""; position:absolute; inset:5px 8px auto; border-top:1px dashed var(--copper); }
.masthead nav { display:flex; gap:clamp(1.2rem,3vw,2.8rem); }
.masthead nav a { color:var(--muted); font-size:.76rem; font-weight:700; letter-spacing:.11em; text-decoration:none; text-transform:uppercase; }
.hero { min-height:calc(100vh - 82px); display:grid; grid-template-columns:minmax(0,1fr) minmax(18rem,.7fr); gap:clamp(4rem,9vw,11rem); align-items:center; padding:clamp(5rem,9vw,9rem) 16vw; color:var(--paper); background:var(--ink); }
.hero .eyebrow { color:var(--copper-light); }
.hero h1 { max-width:9ch; margin-top:1.25rem; font-size:clamp(3.8rem,7vw,7.5rem); line-height:.92; letter-spacing:-.055em; }
.hero-copy { align-self:end; padding-top:1.4rem; border-top:1px solid var(--copper-light); }
.hero-copy>p { max-width:39ch; margin:0; color:rgba(243,238,226,.76); font-size:clamp(1.05rem,1.25vw,1.2rem); }
.hero-copy ul { margin:2rem 0 0; padding:0; list-style:none; }
.hero-copy li { padding:.65rem 0; border-top:1px solid var(--hairline-light); }
.talks { padding:clamp(5rem,9vw,8rem) 16vw; }
.talks header { display:grid; grid-template-columns:minmax(0,1fr) minmax(18rem,.7fr); gap:4rem; padding-bottom:3rem; }
.talks h2,.formats h2,.contact h2 { max-width:12ch; margin-top:1.2rem; font-size:clamp(2.8rem,5vw,5.2rem); line-height:1; letter-spacing:-.04em; }
.talks ol { margin:0; padding:0; list-style:none; border-top:1px solid var(--ink); }
.talks li { display:grid; grid-template-columns:minmax(0,1fr) minmax(18rem,.7fr); gap:clamp(3rem,8vw,9rem); padding:3rem 0; border-bottom:1px solid var(--hairline); }
.talk-heading span { color:var(--copper); font-size:.76rem; font-weight:700; letter-spacing:.13em; }
.talk-heading h3 { max-width:20ch; margin-top:.9rem; font-size:clamp(1.9rem,3vw,3.1rem); line-height:1.05; letter-spacing:-.025em; }
.talk-heading p { margin:1rem 0 0; color:var(--muted); font-size:.85rem; }
.talk-copy p { max-width:43ch; margin:0; }
.talk-copy p+p { margin-top:1.3rem; color:var(--muted); }
.formats { display:grid; grid-template-columns:minmax(0,1fr) minmax(18rem,.76fr); gap:clamp(4rem,9vw,11rem); padding:clamp(5rem,9vw,8rem) 16vw; background:var(--paper-deep); }
.formats dl { margin:0; align-self:end; border-top:1px solid var(--ink); }
.formats dl>div { display:grid; grid-template-columns:8rem minmax(0,1fr); gap:1.5rem; padding:1.15rem 0; border-bottom:1px solid var(--hairline); }
.formats dt { color:var(--copper); font-size:.76rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.formats dd { margin:0; color:var(--muted); }
.contact { display:grid; grid-template-columns:minmax(0,1fr) minmax(18rem,.76fr); gap:clamp(4rem,9vw,11rem); padding:clamp(5rem,9vw,8rem) 16vw; color:var(--paper); background:var(--ink-soft); }
.contact .eyebrow { color:var(--copper-light); }
.contact>div:last-child { align-self:end; }
.contact>div:last-child p { max-width:39ch; margin:0; color:rgba(243,238,226,.72); font-size:1.05rem; }
.contact a { display:flex; justify-content:space-between; gap:2rem; margin-top:2rem; padding:.8rem 0; border-top:1px solid var(--paper); border-bottom:1px solid var(--paper); text-decoration:none; font-weight:650; overflow-wrap:anywhere; }
footer { display:flex; justify-content:space-between; gap:3rem; padding:3.5rem 4.5vw; color:var(--muted); font-size:.92rem; }
footer p { max-width:58ch; margin:0; }
footer a { color:var(--ink); text-underline-offset:.28em; }
a:focus-visible { outline:3px solid var(--copper-light); outline-offset:5px; }
@media (max-width:700px) {
  .masthead { min-height:70px; padding:0 1.25rem; }
  .masthead nav { gap:1rem; }
  .masthead nav a { font-size:.66rem; letter-spacing:.07em; }
  .hero,.talks li,.formats,.contact { grid-template-columns:1fr; gap:3rem; }
  .hero { min-height:auto; padding:5rem 1.5rem; }
  .hero h1 { font-size:clamp(3.4rem,16vw,4.8rem); }
  .hero-copy { align-self:auto; }
  .talks { padding:5rem 1.5rem; }
  .talks header { grid-template-columns:1fr; padding-bottom:2rem; }
  .talks li { padding:2.5rem 0; }
  .formats,.contact { padding:5rem 1.5rem; }
  .formats h2,.contact h2 { font-size:clamp(2.7rem,12vw,3.8rem); }
  .formats dl>div { grid-template-columns:1fr; gap:.35rem; }
  footer { flex-direction:column; gap:1.5rem; padding:3rem 1.5rem; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; } }
