
:root{
  --bg:#070507; --runtime-bg:#070507; --ink:#f7ead6; --muted:#b79f8d; --line:rgba(247,234,214,.16); --accent:#c86f3a; --accent-2:#7b4a5f; --paper:#efe0c6; --paper-ink:#25191c; --max:1180px; --header-h:78px; --ease:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box} html{scroll-behavior:smooth;background:#070507} body{margin:0;font-family:"IBM Plex Sans",system-ui,-apple-system,Segoe UI,sans-serif;background:var(--runtime-bg);color:var(--ink);transition:background 900ms var(--ease);text-rendering:optimizeLegibility;overflow-x:hidden} body::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 20% 10%,rgba(200,111,58,.12),transparent 32%),radial-gradient(circle at 80% 18%,rgba(123,74,95,.17),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.035),transparent 22%);z-index:-3} body::after{content:"";position:fixed;inset:0;pointer-events:none;opacity:.13;mix-blend-mode:screen;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E");z-index:1000} a{color:inherit;text-decoration:none} img{max-width:100%;height:auto;display:block} ::selection{background:rgba(200,111,58,.45);color:#fff}.skip-link{position:fixed;left:1rem;top:1rem;padding:.65rem 1rem;background:#fff;color:#000;z-index:2000;transform:translateY(-140%);transition:transform .2s}.skip-link:focus{transform:translateY(0)} .scroll-progress{position:fixed;top:0;left:0;width:100%;height:2px;background:transparent;z-index:1200}.scroll-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--accent),#f0c18d,var(--accent-2));box-shadow:0 0 24px rgba(200,111,58,.7)}
.site-header{position:fixed;top:0;left:0;right:0;z-index:1100;padding:16px 24px;transition:padding .35s var(--ease),background .35s var(--ease),border-color .35s var(--ease),backdrop-filter .35s var(--ease)}.site-header.scrolled{padding:10px 18px;background:rgba(8,5,7,.68);border-bottom:1px solid var(--line);backdrop-filter:blur(20px)}.header-shell{height:52px;max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border:1px solid rgba(247,234,214,.14);border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.026));box-shadow:0 14px 60px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.09);padding:0 8px 0 24px}.brand{justify-self:start;display:inline-flex;align-items:center;width:220px}.brand img{width:100%;height:44px;object-fit:contain}.desktop-nav{display:flex;gap:2px;justify-content:center;align-items:center}.nav-link{font-size:11px;text-transform:uppercase;letter-spacing:.24em;color:rgba(247,234,214,.70);padding:14px 12px;border-radius:999px;transition:background .25s,color .25s}.nav-link:hover,.nav-link.active{color:var(--ink);background:rgba(255,255,255,.07)}.preorder-link{justify-self:end;font-size:11px;text-transform:uppercase;letter-spacing:.24em;color:#120b0b;background:linear-gradient(135deg,#f5dfbc,#d08752);padding:14px 18px;border-radius:999px;font-weight:700;box-shadow:0 12px 30px rgba(200,111,58,.18)}.menu-toggle{display:none;justify-self:end;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.08);position:relative;cursor:pointer}.menu-toggle span{position:absolute;left:12px;right:12px;height:1px;background:var(--ink);transition:transform .3s var(--ease),top .3s var(--ease)}.menu-toggle span:first-child{top:17px}.menu-toggle span:last-child{top:26px}.menu-toggle[aria-expanded="true"] span:first-child{top:22px;transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{top:22px;transform:rotate(-45deg)}.mobile-panel{display:none}
.hero{min-height:100svh;position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,530px);gap:38px;align-items:center;max-width:1420px;margin:0 auto;padding:132px 64px 70px;isolation:isolate}.hero::before{content:"";position:absolute;inset:0 0 auto;min-height:100%;z-index:-3;background:radial-gradient(circle at 72% 34%,rgba(200,111,58,.26),transparent 25%),radial-gradient(circle at 40% 48%,rgba(123,74,95,.22),transparent 37%),linear-gradient(180deg,#050405 0%,#0b0709 48%,#130b10 100%)}.glyph-field{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1;mask-image:linear-gradient(180deg,transparent,black 15%,black 84%,transparent)}.glyph{position:absolute;color:rgba(247,234,214,.28);font-family:"Cormorant Garamond",Georgia,serif;filter:blur(.15px);animation:glyph-drift var(--dur) linear infinite;animation-delay:var(--delay);font-size:var(--size);left:var(--x);top:var(--y);text-shadow:0 0 24px rgba(200,111,58,.34)}.glyph:nth-child(3n){color:rgba(200,111,58,.38)}.glyph:nth-child(4n){color:rgba(123,74,95,.44)}@keyframes glyph-drift{0%{transform:translate3d(0,30px,0) rotate(0);opacity:0}10%,85%{opacity:1}100%{transform:translate3d(var(--dx),-95px,0) rotate(var(--rot));opacity:0}}.hero-grain{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,transparent 0 42%,rgba(0,0,0,.5) 100%);z-index:-2}.hero-copy{max-width:680px;z-index:1}.hero-kicker,.eyebrow{font-size:11px;line-height:1.4;text-transform:uppercase;letter-spacing:.32em;color:#d78b5a;font-weight:700}.hero h1{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(4.8rem,12vw,11.4rem);line-height:.75;letter-spacing:.03em;margin:26px 0 22px;text-transform:uppercase}.hero h1 span{display:block}.hero h1 span:nth-child(1){font-size:.42em;color:#c86f3a;letter-spacing:.18em;margin-left:.06em}.subtitle{font-family:"Newsreader",Georgia,serif;font-size:clamp(1.35rem,2.2vw,2.25rem);font-style:italic;color:#decab1;margin:0 0 28px}.hero-deck{font-family:"Newsreader",Georgia,serif;font-size:clamp(1.15rem,1.5vw,1.45rem);line-height:1.55;color:rgba(247,234,214,.78);max-width:640px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;border:1px solid rgba(247,234,214,.2);background:linear-gradient(135deg,#c86f3a,#7b4a5f);color:#fff;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.22em;box-shadow:0 20px 60px rgba(200,111,58,.18);transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s}.btn:hover{transform:translateY(-2px);box-shadow:0 30px 80px rgba(200,111,58,.26)}.btn.ghost{background:rgba(255,255,255,.03);box-shadow:none;color:var(--ink)}.btn-light{background:#f4e4c8;color:#130b10}.hero-book{position:relative;z-index:1;transform-style:preserve-3d;perspective:1200px;transition:transform .25s var(--ease)}.hero-book img{width:min(100%,520px);margin:auto;filter:drop-shadow(0 60px 70px rgba(0,0,0,.6)) drop-shadow(0 0 44px rgba(200,111,58,.12))}.book-aura{position:absolute;inset:8% 7% 6%;border-radius:50%;background:radial-gradient(circle,rgba(239,199,153,.25),rgba(123,74,95,.18),transparent 60%);filter:blur(22px);z-index:-1;animation:pulse 5.8s ease-in-out infinite}@keyframes pulse{50%{transform:scale(1.08);opacity:.72}}.hero-index{position:absolute;left:64px;right:64px;bottom:24px;display:flex;gap:16px;align-items:center;color:rgba(247,234,214,.38);font-size:11px;letter-spacing:.2em;text-transform:uppercase}.hero-index span:first-child{color:#c86f3a}.hero-index::before,.hero-index::after{content:"";height:1px;background:rgba(247,234,214,.14);flex:1}.section{position:relative;padding:110px 64px}.section>*,.section .section-heading,.section .braid-grid,.section .author-card,.section .split-feature{max-width:var(--max);margin-left:auto;margin-right:auto}.section-number{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:#c86f3a;font-weight:700}.large-statement{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2.7rem,6vw,6.4rem);line-height:.92;letter-spacing:.01em;max-width:1120px;margin-top:30px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:52px;font-family:"Newsreader",Georgia,serif;font-size:1.22rem;line-height:1.62;color:rgba(247,234,214,.76)}.parchment{background:linear-gradient(180deg,#ead8bb,#f3e4cb);color:var(--paper-ink)}.parchment .eyebrow,.parchment .section-number{color:#a45331}.parchment p{color:rgba(37,25,28,.75)}.braid-grid{display:grid;grid-template-columns:360px minmax(0,1fr);gap:80px;align-items:start}.sticky-note{position:sticky;top:120px}.sticky-note h2,.section-heading h2,.quote-section blockquote,.author-card h2,.interior h1,.split-feature h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2.7rem,5vw,6.2rem);line-height:.95;margin:16px 0 20px;letter-spacing:.01em}.sticky-note p,.section-heading p,.author-card p,.rich-text p,.theme-row p,.reader-grid p,.media-card p,.contact-aside p,.movement-card p{font-family:"Newsreader",Georgia,serif;font-size:1.12rem;line-height:1.62}.movement-list{display:grid;gap:16px}.movement-card{display:grid;grid-template-columns:56px 1fr;gap:8px 22px;padding:28px;border:1px solid rgba(37,25,28,.12);background:rgba(255,255,255,.34);border-radius:28px;box-shadow:0 24px 80px rgba(70,40,26,.08)}.movement-card span{font-size:11px;letter-spacing:.24em;color:#a45331;font-weight:700}.movement-card h3{font-family:"Cormorant Garamond",Georgia,serif;font-size:2rem;line-height:1;margin:0}.movement-card p{grid-column:2;margin:0;color:rgba(37,25,28,.72)}.quote-section{text-align:center;background:#f1e3cc;color:#25191c;overflow:hidden}.quote-section::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 0,rgba(200,111,58,.18),transparent 45%)}.quote-mark{font-family:"Cormorant Garamond",Georgia,serif;font-size:8rem;color:#c86f3a;line-height:.4}.quote-section blockquote{max-width:960px;margin:0 auto 24px}.text-link{display:inline-flex;margin-top:18px;font-size:12px;text-transform:uppercase;letter-spacing:.24em;color:#c86f3a;font-weight:700}.text-link::after{content:"→";margin-left:10px}.section-heading{max-width:840px;text-align:center;margin-bottom:54px}.section-heading p{color:rgba(247,234,214,.72)}.theme-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.theme-tile{min-height:260px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.025));padding:24px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .25s var(--ease),border-color .25s,background .25s}.theme-tile:hover{transform:translateY(-6px);border-color:rgba(200,111,58,.45);background:linear-gradient(180deg,rgba(200,111,58,.13),rgba(255,255,255,.03))}.theme-tile span{font-family:"Cormorant Garamond",Georgia,serif;font-size:2.2rem}.theme-tile p{font-family:"Newsreader",Georgia,serif;color:rgba(247,234,214,.68);line-height:1.5}.author-card{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:70px;align-items:center;border:1px solid var(--line);border-radius:42px;background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.02));padding:60px;box-shadow:0 40px 120px rgba(0,0,0,.22)}.author-card picture{transform:rotate(2deg);filter:drop-shadow(0 48px 56px rgba(0,0,0,.5))}.mini-faq,.faq-stack{max-width:920px;margin:0 auto;display:grid;gap:12px}.mini-faq details,.faq-stack details{border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.045);padding:0 24px}.mini-faq summary,.faq-stack summary{cursor:pointer;list-style:none;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.8rem;padding:22px 0}.mini-faq summary::-webkit-details-marker,.faq-stack summary::-webkit-details-marker{display:none}.mini-faq p,.faq-stack p{font-family:"Newsreader",Georgia,serif;color:rgba(247,234,214,.72);line-height:1.62;margin:0 0 22px}.page-hero.interior{min-height:58vh;display:grid;place-items:end start;padding:146px 64px 78px;position:relative;overflow:hidden}.page-hero.interior::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 20%,rgba(200,111,58,.25),transparent 25%),radial-gradient(circle at 20% 80%,rgba(123,74,95,.28),transparent 32%),linear-gradient(180deg,#050405,#130b10);z-index:-2}.interior-copy{max-width:980px;margin:0 auto;width:100%}.interior-copy p:not(.eyebrow){font-family:"Newsreader",Georgia,serif;font-size:clamp(1.25rem,2vw,1.8rem);line-height:1.55;color:rgba(247,234,214,.73);max-width:760px}.split-feature{display:grid;grid-template-columns:440px minmax(0,1fr);gap:70px}.rich-text{max-width:820px}.rich-text h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:2.5rem;margin:38px 0 8px}.rich-text a,.media-card a,.contact-aside a{color:#e49c6a}.chapter-flow{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.chapter-flow article{border:1px solid rgba(37,25,28,.12);border-radius:28px;background:rgba(255,255,255,.32);padding:24px}.chapter-flow h3{font-family:"Cormorant Garamond",Georgia,serif;font-size:2rem;line-height:1;margin:0 0 14px}.chapter-flow p{font-family:"Newsreader",Georgia,serif;line-height:1.55}.reader-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.reader-grid p{margin:0;padding:26px;border-radius:26px;border:1px solid var(--line);background:rgba(255,255,255,.045);color:rgba(247,234,214,.72)}.theme-deep{display:grid;gap:22px}.theme-row{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:80px 280px minmax(0,1fr);align-items:start;gap:30px;padding:36px 0;border-bottom:1px solid var(--line)}.theme-row span{font-size:11px;letter-spacing:.24em;color:#c86f3a;font-weight:700}.theme-row h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2.6rem,5vw,5.6rem);line-height:.9;margin:0}.theme-row p{margin:0;color:rgba(247,234,214,.74);font-size:1.24rem}.dark-panel{background:#080607}.author-profile{display:grid;grid-template-columns:420px minmax(0,1fr);gap:74px;align-items:center}.profile-book img{filter:drop-shadow(0 52px 62px rgba(0,0,0,.55))}.media-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.media-card{min-height:250px;border:1px solid var(--line);border-radius:32px;background:rgba(255,255,255,.045);padding:30px;display:flex;flex-direction:column}.media-card h2,.contact-aside h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:2.6rem;line-height:1;margin:0 0 18px}.media-card a{margin-top:auto;font-weight:700;overflow-wrap:anywhere}.contact-section{display:grid;grid-template-columns:minmax(0,720px) 360px;gap:48px;max-width:var(--max);margin:0 auto}.contact-form{display:grid;gap:16px;border:1px solid var(--line);border-radius:36px;padding:34px;background:rgba(255,255,255,.045)}.contact-form label{display:grid;gap:9px;font-size:11px;text-transform:uppercase;letter-spacing:.22em;color:rgba(247,234,214,.75)}input,textarea,select{width:100%;border:1px solid rgba(247,234,214,.16);border-radius:18px;background:rgba(0,0,0,.24);color:var(--ink);padding:16px 16px;font:inherit;outline:none}input:focus,textarea:focus,select:focus{border-color:#d98b56;box-shadow:0 0 0 4px rgba(200,111,58,.12)}.contact-aside{border:1px solid var(--line);border-radius:36px;padding:34px;background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.03))}.fineprint{font-size:.93rem!important;color:rgba(247,234,214,.5)!important}.legal-copy .rich-text{max-width:900px;margin:0 auto}.site-footer{padding:90px 64px 32px;background:#070507;color:var(--ink);border-top:1px solid var(--line)}.footer-cta{max-width:980px;margin:0 auto 90px;text-align:center}.footer-cta h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2.5rem,5.5vw,6rem);line-height:.95;margin:14px 0 28px}.footer-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:minmax(0,460px) 1fr;gap:80px;align-items:start}.footer-logo{width:260px;margin-bottom:18px}.footer-grid p{font-family:"Newsreader",Georgia,serif;color:rgba(247,234,214,.64);line-height:1.6}.footer-grid nav{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.footer-grid a,.footer-bottom a{font-size:11px;text-transform:uppercase;letter-spacing:.24em;color:rgba(247,234,214,.64)}.footer-grid a:hover,.footer-bottom a:hover{color:#fff}.footer-bottom{max-width:var(--max);margin:52px auto 0;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:rgba(247,234,214,.45);font-size:12px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.in-view{opacity:1;transform:translateY(0)}
@media (max-width:1100px){.desktop-nav{display:none}.brand{width:190px}.menu-toggle{display:block}.preorder-link{display:none}.header-shell{grid-template-columns:1fr auto}.mobile-panel{position:fixed;left:18px;right:18px;top:84px;display:block;opacity:0;pointer-events:none;transform:translateY(-14px);transition:.3s var(--ease);border:1px solid var(--line);border-radius:30px;background:rgba(8,5,7,.9);backdrop-filter:blur(22px);box-shadow:0 30px 80px rgba(0,0,0,.35)}.mobile-panel.open{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-panel nav{display:grid;padding:18px}.mobile-panel .nav-link{font-size:14px;padding:16px 18px}.mobile-preorder{margin:12px 0 0;padding:16px;border-radius:18px;background:linear-gradient(135deg,#f5dfbc,#d08752);color:#120b0b;text-align:center;font-size:12px;text-transform:uppercase;letter-spacing:.2em;font-weight:700}.hero{grid-template-columns:1fr;text-align:center;padding:126px 28px 58px}.hero-copy{margin:0 auto}.hero-actions{justify-content:center}.hero-book{max-width:460px;margin:0 auto}.hero-index{display:none}.section{padding:82px 28px}.braid-grid,.split-feature,.author-profile,.contact-section{grid-template-columns:1fr;gap:42px}.sticky-note{position:static}.theme-grid{grid-template-columns:repeat(2,1fr)}.chapter-flow,.reader-grid,.media-grid{grid-template-columns:1fr 1fr}.author-card{grid-template-columns:1fr;padding:38px}.author-card picture{max-width:300px;margin:0 auto}.theme-row{grid-template-columns:50px 1fr;gap:18px}.theme-row p{grid-column:1/-1}.page-hero.interior{padding:132px 28px 64px}.footer-grid{grid-template-columns:1fr;gap:34px}.footer-grid nav{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){:root{--header-h:68px}.site-header{padding:10px}.header-shell{height:54px;padding-left:16px}.brand{width:154px}.hero{padding:108px 18px 42px}.hero h1{font-size:clamp(4rem,18vw,6.2rem)}.subtitle{font-size:1.2rem}.hero-deck{font-size:1.08rem}.btn{width:100%;padding:0 18px}.section{padding:68px 18px}.large-statement{font-size:3.15rem}.two-col{grid-template-columns:1fr;gap:16px}.movement-card{grid-template-columns:1fr;padding:24px}.movement-card p{grid-column:1}.theme-grid,.chapter-flow,.reader-grid,.media-grid{grid-template-columns:1fr}.theme-tile{min-height:190px}.author-card{border-radius:30px;padding:26px}.page-hero.interior{min-height:54vh;padding:112px 18px 48px}.interior h1,.sticky-note h2,.section-heading h2,.quote-section blockquote,.author-card h2,.split-feature h2{font-size:3.2rem}.theme-row{grid-template-columns:1fr;padding:28px 0}.theme-row h2{font-size:3.3rem}.contact-form,.contact-aside{padding:24px;border-radius:28px}.site-footer{padding:72px 18px 28px}.footer-grid nav{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.mobile-panel{left:10px;right:10px;top:74px}.quote-mark{font-size:6rem}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.glyph{display:none}.hero-book{transform:none!important}}


/* -------------------------------------------------------------------------
   Grothendieck House inspired background field + scroll transitions
   Added for the How Language Works premium prototype.
   ------------------------------------------------------------------------- */
:root{
  --runtime-bg:#060405;
  --section-bg:#060405;
  --field-ember:rgba(200,111,58,.24);
  --field-plum:rgba(88,48,66,.30);
  --field-paper:rgba(236,216,180,.18);
  --scroll-y:0;
  --mouse-x:72%;
  --mouse-y:22%;
}
html{background:#060405;}
body{
  background:
    radial-gradient(1050px 740px at var(--mouse-x) var(--mouse-y), var(--field-ember), transparent 58%),
    radial-gradient(980px 720px at 12% 18%, var(--field-plum), transparent 62%),
    linear-gradient(180deg,var(--runtime-bg), color-mix(in srgb, var(--runtime-bg), #000 18%));
  transition:background 1200ms var(--ease), color 700ms var(--ease);
}
body::before{
  opacity:.95;
  transform:translate3d(0,var(--scroll-shift-slow,0px),0);
  transition:opacity 900ms var(--ease), background 1200ms var(--ease);
  background:
    radial-gradient(1000px 600px at 50% -5%,rgba(245,222,185,.12),transparent 62%),
    radial-gradient(640px 360px at 8% 52%,rgba(200,111,58,.13),transparent 64%),
    radial-gradient(720px 420px at 94% 46%,rgba(116,68,86,.18),transparent 66%),
    linear-gradient(115deg,transparent 0 42%,rgba(255,255,255,.035) 46%,transparent 52% 100%);
}
body::after{opacity:.16;mix-blend-mode:soft-light;}
body.palette-paper{
  --field-ember:rgba(168,85,45,.16);
  --field-plum:rgba(94,59,55,.09);
  --field-paper:rgba(255,240,210,.42);
}
body.palette-paper .site-header.scrolled{background:rgba(10,7,7,.72);}
main{position:relative;isolation:isolate;}
main::before{
  content:"";
  position:fixed;
  inset:-20vh -8vw;
  pointer-events:none;
  z-index:-2;
  opacity:.38;
  background:
    repeating-linear-gradient(90deg,transparent 0 118px,rgba(255,255,255,.035) 119px,transparent 120px),
    repeating-linear-gradient(0deg,transparent 0 118px,rgba(255,255,255,.025) 119px,transparent 120px);
  mask-image:radial-gradient(circle at 50% 22%,black,transparent 68%);
  transform:translate3d(0,var(--scroll-shift-grid,0px),0);
}
main::after{
  content:"";
  position:fixed;
  inset:auto 0 0;
  height:30vh;
  pointer-events:none;
  z-index:4;
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.22));
  opacity:.55;
}
.site-header{will-change:transform,background,backdrop-filter;}
.header-shell{
  background:
    linear-gradient(180deg,rgba(255,255,255,.082),rgba(255,255,255,.026)),
    radial-gradient(220px 120px at 20% 0,rgba(221,137,83,.12),transparent 72%);
}
.hero{
  max-width:none;
  justify-content:center;
  grid-template-columns:minmax(0,700px) minmax(320px,560px);
  overflow:hidden;
  background:#050405;
}
.hero::before{
  inset:0;
  background:
    radial-gradient(900px 680px at 78% 40%,rgba(207,111,59,.30),transparent 58%),
    radial-gradient(720px 520px at 40% 52%,rgba(96,48,67,.34),transparent 64%),
    linear-gradient(180deg,#030303 0%,#070405 42%,#160c0f 78%,#1b0e0d 100%);
}
.hero::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-1px;height:230px;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(780px 210px at 50% 100%,rgba(229,210,174,.24),transparent 66%),
    linear-gradient(180deg,transparent,#140b0f 86%);
}
.glyph-field::before{
  content:"";
  position:absolute;
  inset:6% -8% 0;
  opacity:.34;
  filter:drop-shadow(0 0 20px rgba(211,117,66,.18));
  background-image:url("data:image/svg+xml,%3Csvg width='1400' height='720' viewBox='0 0 1400 720' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23f1d7b5' stroke-width='1' opacity='.48'%3E%3Cpath d='M-50 420 C170 210 315 640 520 382 S806 230 1040 385 1270 500 1470 250'/%3E%3Cpath d='M-90 462 C126 240 298 688 523 427 S830 285 1052 435 1278 552 1495 314' opacity='.38'/%3E%3Cpath d='M-70 330 C160 112 340 552 562 300 S825 150 1050 322 1260 420 1480 184' opacity='.25'/%3E%3Cpath d='M0 512 C220 374 330 538 512 452 S728 330 888 390 1020 510 1210 430 1320 290 1440 330' opacity='.36'/%3E%3C/g%3E%3Cg stroke='%23c86f3a' stroke-width='1' opacity='.45'%3E%3Cpath d='M110 112 C248 80 342 128 450 86' fill='none' stroke-dasharray='2 10'/%3E%3Cpath d='M922 130 C1020 86 1188 96 1282 145' fill='none' stroke-dasharray='2 10'/%3E%3Cpath d='M510 560 C622 614 786 610 912 540' fill='none' stroke-dasharray='2 10'/%3E%3C/g%3E%3C/svg%3E");
  background-size:cover;
  background-position:center;
  animation:motifFlow 18s ease-in-out infinite alternate;
}
@keyframes motifFlow{from{transform:translate3d(-2%,12px,0) scale(1.02)}to{transform:translate3d(2%,-10px,0) scale(1.06)}}
.hero-copy{padding-left:clamp(0px,2vw,24px);}
.hero h1{text-shadow:0 18px 70px rgba(0,0,0,.55);}
.hero-book::after{
  content:"";
  position:absolute;
  left:50%;bottom:0;width:78%;height:26%;
  transform:translateX(-50%) rotateX(58deg);
  background:radial-gradient(ellipse,rgba(0,0,0,.62),transparent 68%);
  filter:blur(18px);z-index:-2;
}
.section,
.page-hero.interior{
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(1200px 520px at 50% -18%,rgba(245,222,185,.06),transparent 68%),
    radial-gradient(720px 420px at 88% 18%,rgba(200,111,58,.10),transparent 68%),
    linear-gradient(180deg,var(--section-bg,transparent),color-mix(in srgb,var(--section-bg,transparent),#000 6%));
  transition:background 1000ms var(--ease), color 700ms var(--ease), border-color 700ms var(--ease);
}
.section::before,
.page-hero.interior::after{
  content:"";
  position:absolute;
  left:0;right:0;top:-1px;height:155px;
  pointer-events:none;
  z-index:-1;
  background:
    radial-gradient(520px 120px at 50% 0,rgba(239,215,178,.12),transparent 72%),
    linear-gradient(180deg,rgba(255,255,255,.04),transparent);
}
.section::after{
  content:"◇";
  position:absolute;
  left:50%;top:26px;
  transform:translateX(-50%);
  font-size:12px;
  color:rgba(247,234,214,.34);
  letter-spacing:.22em;
  pointer-events:none;
}
.hero + .section::before{height:260px;background:linear-gradient(180deg,rgba(5,4,5,.12),rgba(20,11,15,.84),transparent);}
.intro-band{
  background:
    radial-gradient(900px 480px at 20% 4%,rgba(200,111,58,.16),transparent 68%),
    radial-gradient(760px 520px at 86% 22%,rgba(123,74,95,.22),transparent 70%),
    linear-gradient(180deg,#140b0f 0%,#1f100f 100%);
}
.parchment,
.quote-section,
.press-assets{
  color:var(--paper-ink);
  background:
    radial-gradient(900px 520px at 72% 2%,rgba(198,111,59,.18),transparent 65%),
    radial-gradient(700px 420px at 4% 36%,rgba(95,61,70,.13),transparent 66%),
    linear-gradient(180deg,#ddc7a6 0%,#f0e1c4 24%,#f5ead3 100%);
  border-top:1px solid rgba(50,30,24,.12);
  border-bottom:1px solid rgba(50,30,24,.14);
  box-shadow:inset 0 80px 120px rgba(54,28,20,.08), inset 0 -90px 130px rgba(54,28,20,.09);
}
.parchment::before,
.quote-section::before,
.press-assets::before{
  z-index:-1;
  height:100%;
  background:
    linear-gradient(90deg,rgba(37,25,28,.06),transparent 18%,transparent 82%,rgba(37,25,28,.06)),
    radial-gradient(700px 200px at 50% 0,rgba(255,250,232,.36),transparent 70%);
}
.parchment::after,
.quote-section::after,
.press-assets::after{color:rgba(164,83,49,.5);}
.quote-section{background:
  radial-gradient(760px 300px at 50% 0,rgba(200,111,58,.18),transparent 70%),
  linear-gradient(180deg,#f3e4c8,#ead4b0);
}
.themes-preview,
.author-band,
.faq-tease,
.reader-section,
.theme-deep,
.dark-panel,
.faq-full,
.media-grid-section,
.media-notes,
.legal-copy,
.contact-section,
.author-profile{
  background:
    radial-gradient(1050px 520px at 84% 10%,rgba(200,111,58,.11),transparent 66%),
    radial-gradient(840px 540px at 8% 82%,rgba(123,74,95,.16),transparent 68%),
    linear-gradient(180deg,var(--section-bg,#0f090c),color-mix(in srgb,var(--section-bg,#0f090c),#000 11%));
}
.page-hero.interior{background:#060405;}
.page-hero.interior::before{
  background:
    radial-gradient(780px 520px at 78% 18%,rgba(200,111,58,.25),transparent 62%),
    radial-gradient(760px 520px at 16% 76%,rgba(123,74,95,.30),transparent 66%),
    linear-gradient(180deg,#030303 0%,#070405 44%,#150b0f 100%);
}
.page-hero.interior .glyph-field::before{opacity:.22;}
.large-statement,
.section-heading h2,
.sticky-note h2,
.quote-section blockquote,
.author-card h2,
.interior h1,
.split-feature h2,
.theme-row h2,
.media-card h2,
.contact-aside h2{
  text-wrap:balance;
}
.movement-card,
.theme-tile,
.author-card,
.mini-faq details,
.faq-stack details,
.media-card,
.contact-form,
.contact-aside,
.reader-grid p,
.chapter-flow article{
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.theme-tile,
.reader-grid p,
.media-card,
.contact-form,
.contact-aside,
.mini-faq details,
.faq-stack details{
  box-shadow:0 26px 80px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.06);
}
.parchment .movement-card,
.parchment .chapter-flow article,
.press-assets .section-heading{
  background:rgba(255,255,255,.38);
  box-shadow:0 26px 80px rgba(90,58,36,.12), inset 0 1px 0 rgba(255,255,255,.42);
}
.section-number::before,
.eyebrow::before{content:"◇";margin-right:.7em;color:currentColor;opacity:.75;}
.text-link{position:relative;}
.text-link::before{content:"";position:absolute;left:0;right:22px;bottom:-6px;height:1px;background:currentColor;opacity:.35;transform-origin:left;transform:scaleX(.55);transition:transform .3s var(--ease);}
.text-link:hover::before{transform:scaleX(1);}
.reveal{transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease);filter:blur(7px);}
.reveal.in-view{filter:blur(0);}
.reveal[data-reveal="scale"],.hero-book.reveal{transform:translateY(28px) scale(.97);}
.reveal[data-reveal="scale"].in-view,.hero-book.reveal.in-view{transform:translateY(0) scale(1);}
.site-footer{
  background:
    radial-gradient(860px 360px at 50% 0,rgba(200,111,58,.12),transparent 72%),
    linear-gradient(180deg,#090607,#050404);
}
@media (max-width:1100px){
  .hero{max-width:none;grid-template-columns:1fr;}
  .glyph-field::before{inset:2% -38% 0;opacity:.24;}
  .section::after{top:18px;}
}
@media (max-width:640px){
  body{background-position:center top;}
  main::before{opacity:.18;background-size:90px 90px;}
  .site-header.scrolled{backdrop-filter:blur(20px);}
  .hero{min-height:100svh;background:#050405;}
  .hero::after{height:170px;}
  .hero-book img{width:min(84vw,360px);}
  .section::before{height:110px;}
  .section::after{font-size:10px;top:14px;}
  .parchment,.quote-section,.press-assets{box-shadow:inset 0 48px 70px rgba(54,28,20,.08),inset 0 -60px 90px rgba(54,28,20,.08);}
}
@supports not (background:color-mix(in srgb,#000,#fff)){
  .section,.page-hero.interior,.themes-preview,.author-band,.faq-tease,.reader-section,.theme-deep,.dark-panel,.faq-full,.media-grid-section,.media-notes,.legal-copy,.contact-section,.author-profile{background:var(--section-bg,#0f090c);}
  body{background:var(--runtime-bg);}
}


/* -------------------------------------------------------------------------
   Polish pass: solid buttons, refined type scale, and clean header wordmark.
   ------------------------------------------------------------------------- */
:root{
  --font-serif:"Cormorant Garamond", Georgia, "Times New Roman", serif;
  --font-sans:"Manrope", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --accent-solid:#C86F3A;
  --accent-solid-hover:#D6844D;
  --plum-solid:#51313F;
}
body{
  font-family:var(--font-sans);
  font-size:16px;
  line-height:1.55;
  letter-spacing:-.012em;
}
.site-header{padding:18px 24px;}
.site-header.scrolled{background:rgba(5,4,5,.74);}
.header-shell{
  height:56px;
  background:rgba(8,6,7,.72)!important;
  border:1px solid rgba(247,234,214,.13);
  box-shadow:0 18px 54px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.055);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.brand{
  width:236px;
  position:relative;
  z-index:2;
}
.brand::before,.brand::after,.header-shell::before,.header-shell::after{content:none!important;display:none!important;}
.brand img{height:40px;width:100%;object-fit:contain;}
.nav-link,
.preorder-link,
.btn,
.mobile-preorder,
.text-link,
.hero-kicker,
.eyebrow,
.section-number{
  font-family:var(--font-sans);
  font-weight:700;
}
.nav-link{
  font-size:10.5px;
  letter-spacing:.20em;
  padding:14px 11px;
}
.preorder-link{
  background:var(--accent-solid)!important;
  color:#130B0B;
  box-shadow:0 14px 34px rgba(200,111,58,.20);
  border:1px solid rgba(255,231,202,.20);
}
.preorder-link:hover{background:var(--accent-solid-hover)!important;transform:translateY(-1px);}
.btn,
.btn-light,
.mobile-preorder{
  background:var(--accent-solid)!important;
  background-image:none!important;
  color:#130B0B!important;
  border-color:rgba(255,230,198,.24)!important;
  box-shadow:0 18px 46px rgba(200,111,58,.20);
}
.btn:hover,
.btn-light:hover,
.mobile-preorder:hover{
  background:var(--accent-solid-hover)!important;
  box-shadow:0 22px 62px rgba(200,111,58,.26);
}
.btn.ghost{
  background:rgba(247,234,214,.08)!important;
  background-image:none!important;
  color:var(--ink)!important;
  border-color:rgba(247,234,214,.22)!important;
  box-shadow:none!important;
}
.btn.ghost:hover{background:rgba(247,234,214,.14)!important;}
.hero h1,
.large-statement,
.sticky-note h2,
.section-heading h2,
.quote-section blockquote,
.author-card h2,
.interior h1,
.split-feature h2,
.theme-row h2,
.media-card h2,
.contact-aside h2,
.movement-card h3,
.theme-tile span,
.footer-cta h2{
  font-family:var(--font-serif);
  font-weight:600;
  letter-spacing:.015em;
}
.hero h1{
  font-size:clamp(4rem,8.4vw,8.6rem)!important;
  line-height:.82;
  letter-spacing:.038em;
  margin:24px 0 20px;
}
.hero h1 span:nth-child(1){font-size:.40em;letter-spacing:.18em;}
.subtitle{
  font-family:var(--font-serif);
  font-size:clamp(1.2rem,1.65vw,1.75rem)!important;
  line-height:1.25;
  font-style:italic;
}
.hero-deck{
  font-family:var(--font-sans)!important;
  font-size:clamp(1rem,1.15vw,1.18rem)!important;
  line-height:1.72;
  max-width:620px;
}
.large-statement{
  font-size:clamp(2.4rem,4.8vw,5.15rem)!important;
  line-height:.98;
  max-width:1040px;
}
.sticky-note h2,
.section-heading h2,
.author-card h2,
.interior h1,
.split-feature h2{
  font-size:clamp(2.35rem,4.1vw,4.9rem)!important;
  line-height:1.02;
}
.quote-section blockquote{
  font-size:clamp(2.2rem,4vw,4.7rem)!important;
  line-height:1.04;
}
.theme-row h2{font-size:clamp(2.5rem,4.6vw,5.2rem)!important;}
.footer-cta h2{font-size:clamp(2.25rem,4vw,4.7rem)!important;line-height:1.02;}
.two-col,
.sticky-note p,
.section-heading p,
.author-card p,
.rich-text p,
.theme-row p,
.reader-grid p,
.media-card p,
.contact-aside p,
.movement-card p,
.mini-faq p,
.faq-stack p,
.legal-copy p,
.legal-copy li,
.contact-form label{
  font-family:var(--font-sans)!important;
  font-size:clamp(1rem,1vw,1.08rem)!important;
  line-height:1.72;
}
.movement-card h3{font-size:1.65rem!important;line-height:1.08;}
.theme-tile span{font-size:1.9rem!important;}
.quote-mark{font-family:var(--font-serif);font-size:6.8rem!important;}
.hero-book img{width:min(100%,500px);}
@media (max-width:1100px){
  .header-shell{grid-template-columns:auto 1fr auto;padding:0 10px 0 18px;}
  .brand{width:220px;}
  .hero h1{font-size:clamp(3.7rem,12vw,7.2rem)!important;}
}
@media (max-width:820px){
  .desktop-nav,.preorder-link{display:none;}
  .menu-toggle{display:block;background:rgba(247,234,214,.10)!important;}
  .mobile-panel{
    background:rgba(8,6,7,.92)!important;
    border:1px solid rgba(247,234,214,.14);
    box-shadow:0 28px 80px rgba(0,0,0,.44);
    backdrop-filter:blur(22px);
    -webkit-backdrop-filter:blur(22px);
  }
}
@media (max-width:640px){
  .site-header{padding:10px;}
  .header-shell{height:52px;padding-left:14px;}
  .brand{width:174px;}
  .brand img{height:34px;}
  .hero{padding:104px 20px 48px;gap:26px;}
  .hero h1{font-size:clamp(3.25rem,15.5vw,5.35rem)!important;line-height:.86;}
  .subtitle{font-size:1.16rem!important;}
  .hero-deck{font-size:.98rem!important;line-height:1.65;}
  .large-statement{font-size:clamp(2.35rem,11vw,3.6rem)!important;line-height:1.02;}
  .sticky-note h2,.section-heading h2,.author-card h2,.interior h1,.split-feature h2,.quote-section blockquote{font-size:clamp(2.15rem,10vw,3.45rem)!important;line-height:1.04;}
  .theme-row h2{font-size:clamp(2.35rem,11vw,3.7rem)!important;}
  .footer-cta h2{font-size:clamp(2rem,9.5vw,3.25rem)!important;}
  .btn{min-height:50px;letter-spacing:.16em;font-size:11px;}
  .quote-mark{font-size:5.4rem!important;}
}

/* Semantic wordmark (replaces clipped brand-mark.svg) */
.brand{display:flex;flex-direction:column;justify-content:center;gap:2px;text-decoration:none;}
.brand img{display:none;}
.brand-title{font-family:var(--font-serif);font-weight:600;font-size:18px;line-height:1;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);white-space:nowrap;}
.brand-byline{font-family:var(--font-sans);font-weight:700;font-size:8px;line-height:1;letter-spacing:.34em;text-transform:uppercase;color:var(--accent-solid);}
.footer-logo{display:flex;flex-direction:column;gap:4px;width:auto;margin-bottom:18px;}
.footer-logo .brand-title{font-size:24px;letter-spacing:.14em;}
.footer-logo .brand-byline{font-size:9px;letter-spacing:.34em;}
@media (max-width:640px){.brand-title{font-size:15px;letter-spacing:.13em;}.brand{width:auto;}}

/* Type normalization: body copy not caught by the earlier polish pass */
.interior-copy p:not(.eyebrow),
.theme-tile p,
.chapter-flow p,
.footer-grid p{
  font-family:var(--font-sans);
}

/* Mailto-only contact block */
.contact-cta{border:1px solid var(--line);border-radius:36px;padding:40px;background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.03));backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);}
.contact-cta h2{font-family:var(--font-serif);font-weight:600;font-size:clamp(2.2rem,4vw,3.4rem);line-height:1.02;margin:14px 0 16px;}
.contact-cta p{font-family:var(--font-sans);line-height:1.72;color:rgba(247,234,214,.78);margin:0 0 26px;max-width:48ch;}

/* Keyboard focus visibility */
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent-solid);outline-offset:3px;border-radius:6px;}
.btn:focus-visible,.preorder-link:focus-visible{outline-offset:4px;}
