:root{--ink:#182530;--ink2:#20303b;--paper:#FBF8F1;--cream:#F4EFE4;--cream2:#EBE3D2;--ochre:#D6A23E;--teal:#5E97A0;--clay:#C16A43;--muted:#71685b;--light:#bcc5c8;--line:rgba(24,37,48,.13);--dline:rgba(255,255,255,.14);--max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Spectral",Georgia,serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,.display{font-family:"Newsreader","Iowan Old Style","Palatino Linotype",Georgia,serif;font-weight:500;line-height:1.02;letter-spacing:-.024em;margin:0}.wrap{max-width:var(--max);margin:auto;padding:0 34px}.eyebrow{font-size:11px;letter-spacing:.26em;text-transform:uppercase;font-weight:500;color:var(--clay)}.eyebrow.light{color:var(--ochre)}
.mark{display:inline-block;position:relative;width:38px;height:22px;vertical-align:middle;flex:none}.mark i{position:absolute;top:0;width:22px;height:22px;border-radius:50%;mix-blend-mode:screen;opacity:.9}.mark i:first-child{left:0;background:var(--ochre)}.mark i:last-child{right:0;background:var(--teal)}
header{position:fixed;top:0;left:0;width:100%;z-index:60;color:var(--cream);transition:.35s ease}header.scrolled{background:rgba(24,37,48,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--dline)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:12px;font-family:"Newsreader",Georgia,serif;font-size:24px;font-weight:600;line-height:.85}.brand small{display:block;font-family:"Spectral",serif;font-size:9px;letter-spacing:.36em;text-transform:uppercase;color:#aeb9bd;margin-top:6px}.menu{display:flex;align-items:center;gap:28px;font-size:14px;color:#d1d2cd}.menu a{position:relative;padding:6px 0}.menu a:not(.order):not(.cart)::after{content:"";position:absolute;left:0;bottom:1px;height:1px;width:0;background:var(--ochre);transition:width .25s}.menu a:hover::after{width:100%}.order,.btn{border-radius:999px}.order{background:var(--ochre);color:#241a06!important;padding:10px 21px!important;font-weight:500;box-shadow:0 8px 24px rgba(214,162,62,.15);overflow:hidden}.order::before,.btn.primary::before{content:"";position:absolute;inset:-2px auto -2px -38%;width:28%;transform:skewX(-22deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);opacity:0}body.intro-play .order::before,body.intro-play .btn.primary::before{animation:buttonSweep 1.1s 1.65s ease-out 1}.cart{width:40px;height:40px;display:grid!important;place-items:center;border:1px solid var(--dline);border-radius:50%;padding:0!important}.mobile-toggle{display:none}
.hero{position:relative;overflow:hidden;background:var(--ink);color:var(--cream);padding:180px 0 118px;isolation:isolate;clip-path:inset(0)}.hero-grid{display:block;position:relative;z-index:3}.hero-copy{position:relative;max-width:755px;padding:26px 0 0 28px}.hero-copy:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:1px;background:linear-gradient(180deg,rgba(214,162,62,.9),rgba(214,162,62,.18) 72%,transparent)}.hero-copy:after{content:"";position:absolute;inset:-26px -30px -24px -26px;background:linear-gradient(135deg,rgba(9,18,26,.22),rgba(9,18,26,.04));border:1px solid rgba(244,239,228,.07);border-radius:28px;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:-1;box-shadow:0 24px 80px rgba(5,10,14,.12)}.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.hero-meta{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;margin-top:20px;color:#d8d2c8;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase}.hero-meta span{display:inline-flex;align-items:center;gap:10px}.hero-meta span+span:before{content:"";width:4px;height:4px;border-radius:50%;background:rgba(214,162,62,.65);display:inline-block;margin-right:2px}.hero-note{margin-top:16px;max-width:540px;color:#b8c0be;font-size:14px;font-style:italic}.btn.ghost{border:1px solid rgba(244,239,228,.22);background:rgba(244,239,228,.05);color:var(--cream);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.btn.ghost:hover{background:rgba(244,239,228,.1);transform:translateY(-2px)}.hero h1{font-size:clamp(56px,6.2vw,84px);max-width:760px}.hero h1 em{color:var(--ochre);font-style:italic;font-weight:400}.lede{max-width:565px;color:#d0d3cf;font-size:19px;line-height:1.66;margin:24px 0 30px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 25px;font-size:15px;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s,background .25s,border-color .25s}.btn.primary{background:var(--ochre);color:#241a06;font-weight:500;box-shadow:0 11px 30px rgba(214,162,62,.14)}.btn.primary:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(214,162,62,.22)}.btn.outline{border:1px solid var(--line)}.btn.dark{background:var(--ink);color:var(--cream)}
.hero-motion{position:absolute;inset:0;z-index:-2;pointer-events:none}.hero-photo{position:absolute;inset:0;z-index:-4;overflow:hidden;pointer-events:none;background-image:url("../images/aoc-hero-background.png");background-size:cover;background-position:72% 24%;background-repeat:no-repeat;background-attachment:fixed}.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,37,48,.96) 0%,rgba(24,37,48,.91) 24%,rgba(24,37,48,.80) 49%,rgba(24,37,48,.60) 76%,rgba(24,37,48,.43) 100%),linear-gradient(180deg,rgba(24,37,48,.06) 0%,rgba(24,37,48,0) 24%,rgba(24,37,48,0) 72%,rgba(24,37,48,.30) 100%),radial-gradient(circle at 82% 32%,rgba(214,162,62,.10),transparent 30%),radial-gradient(circle at 88% 70%,rgba(94,151,160,.09),transparent 28%),radial-gradient(circle at 100% 55%,rgba(0,0,0,.12),transparent 34%)}.aura{position:absolute;border-radius:50%;filter:blur(1px);opacity:.45}.aura.a1{width:570px;height:570px;right:3%;top:-110px;background:radial-gradient(circle,rgba(214,162,62,.32),rgba(214,162,62,0) 66%)}.aura.a2{width:620px;height:620px;right:-8%;top:45px;background:radial-gradient(circle,rgba(94,151,160,.32),rgba(94,151,160,0) 67%)}.thread{position:absolute;height:1px;transform-origin:left center;background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),rgba(214,162,62,.24),transparent)}.thread.t1{width:66%;top:28%;left:39%;transform:rotate(-12deg)}.thread.t2{width:58%;top:67%;left:47%;transform:rotate(8deg);background:linear-gradient(90deg,transparent,rgba(94,151,160,.3),transparent)}.orbital{position:absolute;right:6%;top:50%;width:470px;height:470px;border:1px solid rgba(255,255,255,.055);border-radius:50%;transform:translateY(-50%)}.orbital::before{content:"";position:absolute;inset:48px;border:1px solid rgba(214,162,62,.055);border-radius:50%}.dot{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--ochre);box-shadow:0 0 16px rgba(214,162,62,.8)}.dot.d1{right:32%;top:18%}.dot.d2{right:8%;top:62%;background:var(--teal);box-shadow:0 0 16px rgba(94,151,160,.8)}
.emblem{position:relative;height:350px}.emblem .c{position:absolute;top:50%;left:50%;width:290px;height:290px;border-radius:50%;mix-blend-mode:screen;opacity:.9}.emblem .o{background:var(--ochre);transform:translate(calc(-50% - 84px),-50%)}.emblem .t{background:var(--teal);transform:translate(calc(-50% + 84px),-50%)}.emblem figcaption{position:absolute;bottom:-3px;width:100%;text-align:center;color:#a6b5ba;font-style:italic;font-size:14px}
/* Intro motion is JS-triggered so it replays reliably in local files */
.hero .eyebrow,.hero h1,.hero .lede,.hero .btn.primary,.emblem,.thread,.orbital,.dot{opacity:1}body.motion-armed .hero .eyebrow,body.motion-armed .hero h1,body.motion-armed .hero .lede,body.motion-armed .hero .btn.primary,body.motion-armed .emblem,body.motion-armed .thread,body.motion-armed .orbital,body.motion-armed .dot{opacity:0}body.intro-play .hero .eyebrow{animation:rise .72s .12s both}body.intro-play .hero h1{animation:rise .9s .26s both}body.intro-play .hero .lede{animation:rise .8s .47s both}body.intro-play .hero .btn.primary{animation:rise .75s .65s both,pulseOnce 1.7s 1.45s ease-out 1}body.intro-play .emblem{animation:emblemEnter 1.25s .28s cubic-bezier(.16,.75,.24,1) both}body.intro-play .emblem .o{animation:breatheO 10s 1.5s ease-in-out infinite}body.intro-play .emblem .t{animation:breatheT 10s 1.5s ease-in-out infinite}body.intro-play .aura.a1{animation:aura1 12s ease-in-out infinite alternate}body.intro-play .aura.a2{animation:aura2 15s ease-in-out infinite alternate}body.intro-play .thread.t1{animation:threadIn 1.5s .35s both,threadFloat 12s 1.9s ease-in-out infinite alternate}body.intro-play .thread.t2{animation:threadIn 1.5s .55s both,threadFloat2 14s 2.1s ease-in-out infinite alternate}body.intro-play .orbital{animation:ringIn 1.3s .55s both,slowSpin 32s 1.8s linear infinite}body.intro-play .dot.d1{animation:dotIn .8s 1s both,dotFloat 7s 1.8s ease-in-out infinite alternate}body.intro-play .dot.d2{animation:dotIn .8s 1.1s both,dotFloat2 8s 1.9s ease-in-out infinite alternate}
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes emblemEnter{from{opacity:0;transform:scale(.86) translateX(24px)}to{opacity:1;transform:none}}@keyframes breatheO{0%,100%{transform:translate(calc(-50% - 84px),-50%)}50%{transform:translate(calc(-50% - 66px),-50%)}}@keyframes breatheT{0%,100%{transform:translate(calc(-50% + 84px),-50%)}50%{transform:translate(calc(-50% + 66px),-50%)}}@keyframes aura1{to{transform:translate(-28px,22px) scale(1.05)}}@keyframes aura2{to{transform:translate(30px,-18px) scale(1.04)}}@keyframes threadIn{from{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}@keyframes threadFloat{to{transform:rotate(-9deg) translateY(8px)}}@keyframes threadFloat2{to{transform:rotate(5deg) translateY(-10px)}}@keyframes ringIn{from{opacity:0;transform:translateY(-50%) scale(.82)}to{opacity:1;transform:translateY(-50%) scale(1)}}@keyframes slowSpin{to{transform:translateY(-50%) rotate(360deg)}}@keyframes dotIn{from{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes dotFloat{to{transform:translate(14px,10px)}}@keyframes dotFloat2{to{transform:translate(-10px,-13px)}}@keyframes pulseOnce{0%{box-shadow:0 11px 30px rgba(214,162,62,.14),0 0 0 0 rgba(214,162,62,.35)}65%{box-shadow:0 15px 34px rgba(214,162,62,.22),0 0 0 11px rgba(214,162,62,0)}100%{box-shadow:0 11px 30px rgba(214,162,62,.14),0 0 0 0 rgba(214,162,62,0)}}@keyframes buttonSweep{0%{left:-38%;opacity:0}25%{opacity:.75}100%{left:128%;opacity:0}}
.trust{background:#efe7d9;border-bottom:1px solid rgba(24,37,48,.07)}.trust .wrap{min-height:56px;display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;font-size:13px;color:#6b6256;letter-spacing:.03em}.trust b{width:3px;height:3px;border-radius:50%;background:var(--clay)}
.aoc-content-section{padding:112px 0}.section-title{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:54px}.section-title h2{font-size:54px;margin-top:10px}.section-title p{max-width:470px;color:var(--muted);margin:0;font-size:17.5px}
.books{background:var(--cream)}.book-feature{display:grid;grid-template-columns:.92fr 1.08fr;gap:72px;align-items:center;padding:58px 0;border-top:1px solid var(--line)}.book-feature:last-child{border-bottom:1px solid var(--line)}.book-visual{position:relative;min-height:500px;display:grid;place-items:center;overflow:hidden}.book-visual::before{content:"";position:absolute;width:390px;height:390px;border-radius:50%;background:rgba(214,162,62,.14);left:7%;top:9%}.book-feature.alt .book-visual::before{background:rgba(94,151,160,.14);left:auto;right:7%}.cover{width:255px;border-radius:2px;box-shadow:0 30px 56px -27px rgba(24,37,48,.58);position:relative;z-index:2;transform:rotate(-2deg);transition:.45s cubic-bezier(.2,.7,.2,1)}.book-feature.alt .cover{transform:rotate(2deg)}.book-feature:hover .cover{transform:rotate(0) translateY(-7px) scale(1.015)}.book-visual .ghost-cover{position:absolute;width:205px;opacity:.12;filter:saturate(.65);transform:translate(90px,56px) rotate(7deg);z-index:1}.book-feature.alt .ghost-cover{transform:translate(-92px,55px) rotate(-7deg)}.book-copy h3{font-size:46px;margin:8px 0 5px}.sub{font-style:italic;color:var(--muted);font-size:17px;max-width:580px}.book-copy .short{font-size:17px;color:#37464f;max-width:590px;margin:20px 0 20px}.meta{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 25px}.meta span{border:1px solid rgba(24,37,48,.12);border-radius:999px;padding:7px 12px;font-size:12.5px;color:#645d53;background:rgba(255,255,255,.24)}.meta strong{color:var(--ink);font-weight:500}.actions{display:flex;gap:11px;flex-wrap:wrap}
.visual-interlude{background:var(--ink);color:var(--cream);padding:88px 0;overflow:hidden}.interlude-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.stack{position:relative;height:405px}.stack img{position:absolute;width:210px;border-radius:2px;box-shadow:0 28px 55px rgba(0,0,0,.22)}.stack .s1{left:24%;top:18px;transform:rotate(-8deg)}.stack .s2{left:47%;top:55px;transform:rotate(6deg)}.stack::after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:rgba(214,162,62,.22);left:32%;top:46px;mix-blend-mode:screen;filter:blur(.2px);z-index:0}.stack img{z-index:2}.interlude-copy h2{font-size:54px;max-width:500px}.interlude-copy p{color:#bbc3c3;max-width:500px;font-size:17px;margin:18px 0 0}.triad{display:flex;gap:22px;margin-top:26px;font-family:"Newsreader",Georgia,serif;font-size:22px;color:#efe7d9}.triad span+span::before{content:"·";margin-right:22px;color:var(--ochre)}
.start{background:#f0e9dc}.start-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:72px;align-items:start}.start h2{font-size:53px;margin:10px 0 14px}.start-intro{color:var(--muted);max-width:390px;margin:0}.choice{display:grid;grid-template-columns:88px 1fr auto;gap:20px;align-items:center;padding:23px 0;border-top:1px solid rgba(24,37,48,.13)}.choice:last-child{border-bottom:1px solid rgba(24,37,48,.13)}.choice img{width:66px;height:88px;object-fit:cover;box-shadow:0 12px 25px -14px rgba(24,37,48,.55)}.choice h3{font-size:27px;margin-bottom:4px}.choice p{margin:0;color:#655d52;font-size:15px;max-width:510px}.arrow{font-size:24px;color:var(--clay)}
.soon{background:var(--ink);color:var(--cream);overflow:hidden}.soon-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:74px;align-items:center}.future-cover{height:420px;position:relative;display:grid;place-items:center}.future-card{width:255px;aspect-ratio:.625;background:#22343f;border:1px solid rgba(255,255,255,.12);box-shadow:0 30px 60px rgba(0,0,0,.2);padding:28px;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(-2deg);position:relative;overflow:hidden}.future-card::before,.future-card::after{content:"";position:absolute;width:145px;height:145px;border-radius:50%;top:33%;mix-blend-mode:screen;opacity:.82}.future-card::before{left:21px;background:var(--ochre)}.future-card::after{right:21px;background:var(--teal)}.future-card small{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#9eafb5}.future-card strong{font-family:"Newsreader",Georgia,serif;font-size:28px;line-height:1.02;font-weight:500;position:relative;z-index:2}.soon h2{font-size:54px;margin:10px 0 16px}.soon p{max-width:560px;color:#bdc4c3;margin:0 0 24px}.soon-line{display:flex;gap:28px;border-top:1px solid rgba(255,255,255,.15);padding:18px 0;color:#d3d5d0;font-size:14px}.soon-line span:first-child{color:var(--ochre);min-width:95px}
.author{background:var(--cream)}.author-grid{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:center}.portrait-frame{position:relative;min-height:590px;overflow:hidden}.portrait-frame img{width:100%;height:590px;object-fit:cover;object-position:center 20%;filter:saturate(.88) contrast(.98)}.portrait-frame::after{content:"";position:absolute;inset:auto 0 0 0;height:34%;background:linear-gradient(transparent,rgba(24,37,48,.3))}.author h2{font-size:52px;margin:10px 0 18px}.author .shortbio{max-width:550px;color:#38474f;margin:0 0 22px}.quote{font-family:"Newsreader",Georgia,serif;font-size:28px;line-height:1.35;font-style:italic;border-left:2px solid var(--clay);padding-left:20px;margin:24px 0 28px}
.final{text-align:center;padding:100px 0;background:var(--paper)}.final .mark{margin-bottom:18px}.final h2{font-size:52px;max-width:720px;margin:8px auto 13px}.final p{max-width:620px;margin:0 auto 26px;color:var(--muted)}
/* Explicit dark-surface contrast: prevents host/browser/theme styles from forcing black headings or copy */
.hero,.visual-interlude,.soon,footer{color:var(--cream)}
.hero h1,.hero h2,.hero h3,.hero p,.hero a,.hero figcaption,
.visual-interlude h1,.visual-interlude h2,.visual-interlude h3,.visual-interlude p,.visual-interlude a,
.soon h1,.soon h2,.soon h3,.soon p,.soon a,
footer h1,footer h2,footer h3,footer h4{color:inherit}
.hero .lede,.visual-interlude p,.soon p{color:#c1c8c7}
footer a,footer p{color:#b8c0c1}
footer{background:#111c24;color:#b8c0c1;padding:58px 0 34px;font-size:13.5px}.footer-top{display:grid;grid-template-columns:1.7fr .8fr .8fr .9fr;gap:42px}.footer-brand p{max-width:360px;margin:18px 0 0}footer h4{color:#f1ece2;font-weight:500;margin:0 0 13px;font-size:13px}footer a{display:block;margin:7px 0}.footer-rule{height:1px;background:rgba(255,255,255,.11);margin:35px 0 20px}.bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:#88989f}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.reveal.in{opacity:1;transform:none}
@media(max-width:900px){.wrap{padding:0 23px}.nav{height:70px}.menu{display:none;position:absolute;top:66px;right:20px;left:20px;padding:18px;background:rgba(24,37,48,.98);border:1px solid var(--dline);border-radius:22px;flex-direction:column;align-items:stretch;gap:3px}.menu.open{display:flex}.menu a{padding:11px 8px}.menu .order{text-align:center;margin-top:6px}.cart{display:none!important}.mobile-toggle{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--dline);border-radius:50%;background:transparent;color:white;font-size:18px}.hero{padding:150px 0 94px}.hero-photo{background-attachment:scroll;background-position:68% center}.hero-grid,.book-feature,.interlude-grid,.start-grid,.soon-layout,.author-grid{grid-template-columns:1fr}.hero-copy{max-width:none;padding:20px 0 0 22px}.hero-copy:before{left:0}.hero-copy:after{inset:-18px -14px -18px -18px;border-radius:24px}.hero-actions{gap:12px}.hero-actions .btn{width:auto}.hero-meta{gap:10px 12px;font-size:11.5px}.hero-note{font-size:13.5px}.hero h1{font-size:clamp(48px,11vw,65px)}.orbital{width:290px;height:290px;right:-40px}.aoc-content-section{padding:82px 0}.section-title{display:block;margin-bottom:30px}.section-title h2,.start h2,.soon h2,.author h2{font-size:44px}.section-title p{margin-top:12px}.book-feature{gap:24px;padding:38px 0}.book-visual{min-height:360px}.cover{width:205px}.book-visual .ghost-cover{width:165px}.book-copy h3{font-size:38px}.visual-interlude{padding:70px 0}.stack{height:330px}.stack img{width:170px}.interlude-copy h2{font-size:45px}.choice{grid-template-columns:66px 1fr auto}.choice img{width:54px;height:72px}.future-cover{height:350px}.future-card{width:215px}.portrait-frame,.portrait-frame img{min-height:0;height:470px}.footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:560px){body{font-size:16.5px}.hero-photo{background-position:66% center}.hero h1{font-size:46px}.lede{font-size:17.5px}.hero-actions .btn{width:100%}.emblem{height:180px;transform:none}.emblem .c{width:155px;height:155px}.emblem .o{transform:translate(calc(-50% - 45px),-50%)}.emblem .t{transform:translate(calc(-50% + 45px),-50%)}body.intro-play .emblem .o{animation-name:breatheOs}body.intro-play .emblem .t{animation-name:breatheTs}@keyframes breatheOs{0%,100%{transform:translate(calc(-50% - 45px),-50%)}50%{transform:translate(calc(-50% - 35px),-50%)}}@keyframes breatheTs{0%,100%{transform:translate(calc(-50% + 45px),-50%)}50%{transform:translate(calc(-50% + 35px),-50%)}}.trust .wrap{gap:8px 11px;padding-top:12px;padding-bottom:12px}.book-visual{min-height:320px}.cover{width:185px}.book-visual .ghost-cover{width:145px}.book-copy h3{font-size:34px}.actions .btn{width:100%}.stack{height:290px}.stack img{width:145px}.stack .s1{left:15%}.stack .s2{left:46%}.interlude-copy h2{font-size:41px}.triad{font-size:18px;gap:9px}.triad span+span::before{margin-right:9px}.choice{grid-template-columns:55px 1fr;gap:14px}.choice .arrow{display:none}.choice img{width:50px;height:67px}.footer-top{grid-template-columns:1fr}}
