@font-face{font-family:"EB Garamond";src:url("assets/site/EBGaramond-Regular.woff") format("woff");font-style:normal;font-weight:400}
@font-face{font-family:"EB Garamond";src:url("assets/site/EBGaramond-Italic.woff") format("woff");font-style:italic;font-weight:400}
@font-face{font-family:"EB Garamond";src:url("assets/site/EBGaramond-SemiBold.woff") format("woff");font-style:normal;font-weight:600}
:root{--paper:#f6f5f1;--ink:#1c1a18;--muted:#6b665f;--oxblood:#7a3b3b;--rule:#d9d4ca;--dark:#141211;--cream:#e9e4da;--rose:#c98a8a;--hero-ink:#fffaf1;--hero-scrim:rgba(10,8,7,.68);--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--type-body:1rem;--type-kicker:.78rem;--type-title:clamp(3.2rem,10vw,8rem);color-scheme:light dark}
*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:"EB Garamond",serif;font-size:18px;line-height:1.6;overflow-x:hidden}body{margin:0;overflow-wrap:anywhere}a{color:var(--oxblood);text-underline-offset:.18em}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--rose);outline-offset:4px}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:var(--paper);padding:.5rem;z-index:9}.mast,main,footer{width:calc(100% - 2rem);max-width:72rem;margin:auto}.mast{padding:1.4rem 0;border-bottom:1px solid var(--rule)}.wordmark{display:inline-block;font-weight:600;letter-spacing:.12em;text-decoration:none;color:var(--ink)}.wordmark span{font-size:.72em;color:var(--muted)}.site-nav{display:flex;flex-wrap:wrap;max-width:100%;gap:.35rem 1rem;margin-top:.75rem}.site-nav a{font-size:.88rem}main{min-height:60vh;padding:3rem 0}h1,h2{font-weight:400;line-height:1.05}h1{font-size:clamp(2.4rem,8vw,6.5rem);letter-spacing:.03em;margin:.2rem 0}h2{font-style:italic;font-size:2rem}.kicker{color:var(--oxblood);letter-spacing:.16em;text-transform:uppercase}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.8fr);gap:3rem;align-items:center}.hero>*{min-width:0}.hero img,.cover{width:100%;max-width:100%;display:block}.tagline{font-size:1.4rem;color:var(--oxblood)}.actions{display:flex;flex-wrap:wrap;max-width:100%;gap:.8rem;margin-top:2rem}.button{display:inline-block;max-width:100%;padding:.65rem 1.1rem;border:1px solid var(--oxblood);text-decoration:none}.button.primary{background:var(--oxblood);color:var(--paper)}.narrow,.reader{max-width:42rem;margin:auto}.status{border-left:3px solid var(--oxblood);padding-left:1rem;color:var(--muted)}.contents li{margin:.35rem 0}label{display:block;margin:.8rem 0 .25rem}input,select{width:100%;max-width:28rem;padding:.65rem;border:1px solid var(--rule);background:var(--paper);color:var(--ink);font:inherit}button{padding:.65rem 1rem;border:0;background:var(--muted);color:var(--paper);font:inherit}.signup-block{margin:4rem 0 1rem;padding:2rem;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.consent{max-width:36rem;font-size:.92rem;color:var(--muted)}.reader .plate{margin:2.5rem auto}.reader .frame,.reader img{display:block;width:100%;max-width:100%}.reader .sp{display:none}.reader .text{max-width:34rem;margin:auto}.reader .part{text-align:center;margin:3rem auto 1.5rem}.reader .part h2{margin:.2rem}.reader .text p{margin:0 0 1em}.epigraph{margin:3rem 0;padding:1.5rem 0 1.5rem 1.5rem;border-left:3px solid var(--oxblood);font-size:1.15rem}.epigraph p{margin:0}.epigraph cite{display:block;margin-top:1rem;color:var(--muted);font-size:.9rem}footer{border-top:1px solid var(--rule);padding:2rem 0;color:var(--muted);font-size:.88rem}.social{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;list-style:none;margin:0 0 1rem;padding:0}.social a{display:inline-flex;align-items:center;gap:.5rem;color:var(--ink);text-decoration:none}.social a:hover span,.social a:focus-visible span{text-decoration:underline}.social svg{width:1.45rem;height:1.45rem;fill:none;stroke:currentColor;stroke-width:1.6}.social .dot,.social .fill{fill:currentColor;stroke:none}.audience{color:var(--muted);font-size:1rem;margin:.2rem 0 1.2rem}.seats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:1rem 0 2rem}.seat{display:block;text-decoration:none;color:var(--ink);border-top:1px solid var(--rule);padding-top:1rem}.seat img{width:100%;display:block;aspect-ratio:3/4;object-fit:cover}.seat strong{display:block;margin-top:.7rem;font-size:1.2rem;font-weight:400}.seat span{color:var(--muted);font-size:.95rem}.band{margin:4rem 0 0}.start-list li{margin:.6rem 0}@media(max-width:680px){.seats{grid-template-columns:minmax(0,1fr)}.hero{grid-template-columns:minmax(0,1fr)}main{padding:2rem 0}.signup-block{padding:1.25rem}}@media(prefers-color-scheme:dark){:root{--paper:#141211;--ink:#e9e4da;--muted:#c98a8a;--oxblood:#c98a8a;--rule:#6b665f}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr);min-height:calc(100svh - 7.5rem);margin:calc(-1 * var(--space-5)) calc(-1 * (1rem)) 0;max-width:none;overflow:hidden;background:var(--dark);color:var(--hero-ink);align-items:center}.hero-image,.hero-scrim{position:absolute;inset:0;width:100%;height:100%;max-width:none}.hero-image{object-fit:cover;object-position:center;z-index:0;transform:translateY(var(--hero-shift,0));scale:1.06}.hero-scrim{background:var(--hero-scrim);z-index:1}.hero-content{position:relative;z-index:2;width:min(calc(100% - 4rem),72rem);max-width:72rem;margin:auto;padding:var(--space-5) 0}.hero .kicker{color:var(--hero-ink);font-size:var(--type-kicker);margin:0 0 var(--space-2);opacity:.9}.hero h1{font-size:var(--type-title);max-width:10ch;margin:0;letter-spacing:.01em}.hero .tagline{font-size:clamp(1.35rem,3vw,2rem);color:var(--hero-ink);margin:var(--space-2) 0}.hero .audience{color:var(--hero-ink);opacity:.9}.hero .button{color:var(--hero-ink);border-color:var(--hero-ink)}.hero .button.primary{background:var(--hero-ink);color:var(--dark)}.hero-reveal .hero-content{animation:hero-rise 1.2s ease-out both}.hero-reveal .hero-image{animation:hero-fade 1.4s ease-out both}@keyframes hero-rise{from{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:translateY(0)}}@keyframes hero-fade{from{opacity:0}to{opacity:1}}.band{padding-top:var(--space-5)}@media(max-width:680px){.hero{min-height:calc(100svh - 8.5rem);margin-top:calc(-1 * var(--space-4))}.hero-content{width:min(calc(100% - 2rem),72rem);padding:var(--space-4) 0}.hero h1{font-size:clamp(3rem,16vw,5rem)}.hero-image{object-position:58% center}.hero .actions{gap:var(--space-1)}.hero .button{width:100%;text-align:center}}@media(prefers-reduced-motion:reduce){.hero-image{transform:none!important;scale:1!important}.hero-reveal .hero-content,.hero-reveal .hero-image{animation:none!important}}.books-band{border-top:1px solid var(--rule);margin-top:var(--space-5);padding-top:var(--space-5)}.books-band h2{max-width:34rem;margin:.2rem 0 var(--space-4)}.book-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.book-card{display:flex;min-width:0;flex-direction:column;color:var(--ink);text-decoration:none;transition:transform .18s ease}.book-card:hover{transform:translateY(-2px)}.book-card:hover .book-meta strong{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}.book-cover{position:relative;display:block;overflow:hidden;aspect-ratio:2 / 3;background:var(--cream);border:1px solid var(--rule)}.book-cover img{width:100%;height:100%;display:block;object-fit:cover}.book-card:not(:last-child) .book-cover img{filter:saturate(.82)}.book-cover-title{position:absolute;inset:auto 0 0;padding:4rem 1rem 1rem;background:rgba(10,8,7,.7);color:var(--hero-ink);font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.05;text-align:center;text-shadow:0 1px 1px rgba(0,0,0,.35)}.book-meta{display:flex;min-height:4.6rem;flex-direction:column;gap:.15rem;padding-top:.7rem}.book-meta strong{font-size:1.08rem;font-weight:600;line-height:1.15}.book-meta span{color:var(--muted);font-size:.92rem;line-height:1.25}@media(max-width:900px){.book-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.book-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.books-band{margin-top:var(--space-4);padding-top:var(--space-4)}.books-band h2{font-size:1.7rem}.book-card{display:grid;grid-template-columns:minmax(7rem,34%) minmax(0,1fr);gap:var(--space-2);align-items:start}.book-cover-title{padding:.75rem .5rem;font-size:1.05rem}.book-meta{min-height:0;padding-top:.25rem}}@media(prefers-reduced-motion:reduce){.book-card{transition:none}}
/* Phase 1c shared signup and footer */
.signup-scene{position:relative;isolation:isolate;overflow:hidden;margin:var(--space-5) calc(-1 * 1rem) 0;min-height:36rem;background:var(--dark);color:var(--hero-ink);display:grid;align-items:center}.signup-scene>img,.signup-scene-scrim{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.signup-scene>img{object-position:58% center;z-index:0}.signup-scene-scrim{background:rgba(10,8,7,.72);z-index:1}.signup-scene-content{position:relative;z-index:2;width:min(calc(100% - 2rem),42rem);margin:auto;padding:var(--space-5) 0}.signup-scene h2{font-size:clamp(2rem,5vw,3.4rem);margin:.2rem 0 1rem}.signup-scene .kicker{color:var(--hero-ink)}.signup-scene form{max-width:28rem}.signup-scene label{color:var(--hero-ink)}.signup-scene input,.signup-scene select{background:rgba(246,245,241,.95);color:var(--ink)}.signup-scene button{background:var(--hero-ink);color:var(--dark);cursor:not-allowed}.signup-scene a{color:var(--hero-ink)}footer{border-top:1px solid var(--rule);padding:var(--space-4) 0 var(--space-5);margin-top:var(--space-5);color:var(--muted)}footer .social{display:flex;gap:1rem;list-style:none;padding:0;margin:0 0 .5rem}footer .social a{color:var(--ink)}footer p{margin:.35rem 0}footer a{color:var(--oxblood)}@media(max-width:680px){.site-nav{gap:.35rem .8rem}.site-nav a{font-size:.82rem}.signup-scene{margin-left:-1rem;margin-right:-1rem;min-height:42rem}.signup-scene-content{padding:var(--space-4) 0}}@media(prefers-reduced-motion:reduce){.signup-scene>img{transform:none}}

/* Mobile polish: compact navigation and grouped footer */
.nav-toggle,.nav-toggle-label{display:none}
.mast{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.wordmark{flex:0 0 auto}
.footer-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.8fr);gap:3rem;align-items:start}
.footer-wordmark{display:inline-block;color:var(--ink);font-weight:600;letter-spacing:.12em;text-decoration:none}
.footer-wordmark span{font-size:.72em;color:var(--muted)}
.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
.footer-heading{margin:0 0 .4rem;color:var(--ink);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
footer .social,footer .footer-nav{display:grid;gap:.15rem;list-style:none;padding:0;margin:0}
.footer-copyright{border-top:1px solid var(--rule);margin:2rem 0 0;padding-top:1rem;font-size:.82rem}
@media(max-width:680px){
  .mast{width:calc(100% - 2rem);min-height:4.25rem;padding:.65rem 0;z-index:20}
  .nav-toggle{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .nav-toggle-label{display:flex;align-items:center;justify-content:center;gap:.55rem;min-width:3.5rem;min-height:2.75rem;padding:.45rem .65rem;border:1px solid var(--rule);border-radius:999px;color:var(--ink);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
  .nav-toggle-label i,.nav-toggle-label i::before,.nav-toggle-label i::after{display:block;width:1.05rem;height:2px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
  .nav-toggle-label i{position:relative}
  .nav-toggle-label i::before,.nav-toggle-label i::after{content:"";position:absolute;left:0}
  .nav-toggle-label i::before{top:-.34rem}.nav-toggle-label i::after{top:.34rem}
  .nav-toggle:focus-visible + .nav-toggle-label{outline:3px solid var(--rose);outline-offset:4px}
  .site-nav{position:absolute;top:calc(100% + 1px);left:0;right:0;display:grid;gap:0;max-height:0;overflow:hidden;margin:0;padding:0;background:var(--paper);border:0;box-shadow:0 .8rem 1.5rem rgba(20,18,17,.12);opacity:0;pointer-events:none;transform:translateY(-.4rem);transition:max-height .25s ease,opacity .2s ease,transform .25s ease,padding .25s ease,border .2s ease}
  .site-nav a{display:flex;align-items:center;min-height:3rem;padding:.65rem 1rem;border-bottom:1px solid var(--rule);font-size:1rem;text-decoration:none}
  .nav-toggle:checked ~ .site-nav{max-height:24rem;padding:.25rem 0;border:1px solid var(--rule);opacity:1;pointer-events:auto;transform:translateY(0)}
  .nav-toggle:checked + .nav-toggle-label i{background:transparent}.nav-toggle:checked + .nav-toggle-label i::before{transform:translateY(.34rem) rotate(45deg)}.nav-toggle:checked + .nav-toggle-label i::after{transform:translateY(-.34rem) rotate(-45deg)}
  .footer-grid{grid-template-columns:1fr;gap:1.5rem}
  .footer-links{gap:1.5rem}
  footer{padding:var(--space-3) 0 var(--space-4);margin-top:var(--space-4)}
  footer .social a,footer .footer-nav a{display:flex;align-items:center;min-height:2.75rem}
}
@media(prefers-reduced-motion:reduce){.site-nav,.nav-toggle-label i,.nav-toggle-label i::before,.nav-toggle-label i::after{transition:none}}

/* Preserve intrinsic plate proportions even when HTML dimensions are present. */
img{max-width:100%;}
.reader .frame{height:auto;}
.reader .frame img,.reader img{height:auto;aspect-ratio:auto;object-fit:initial;}

/* launch fixes 1 */
.hero{overflow:hidden}
.site-nav a,.footer-nav a,.footer-links .social a{display:inline-flex;align-items:center;min-height:44px}
.footer-wordmark{display:inline-flex;align-items:center;min-height:44px}
.site-nav{gap:0 1rem}
.wordmark{display:inline-flex;align-items:center;min-height:44px}
.social a{min-height:44px}
