/* Awakening Path™ — scoped to body.ap-page */
.ap-page{--ap-gold:#d9b35c;--ap-gold2:#f3d88e;--ap-line:#6d542b;--ap-ink:#eee0be;--ap-muted:#b9aa8b;--ap-purple:#4a2f5c;--ap-stone:#0d1015;background:#05070a;font-family:'Cormorant Garamond',Georgia,serif;font-size:19px}
.ap-page h1,.ap-page h2,.ap-page h3,.ap-page .ap-ey,.ap-page .ap-btn,.ap-page .ap-processes,.ap-page .ap-frame-head,.ap-page .ap-panel-h,.ap-page .ap-phase{font-family:Cinzel,Georgia,serif}
.ap-main{position:relative;padding-top:78px;background:radial-gradient(ellipse at 50% 0,#2a1d18 0,#0a0b0e 45%,#05070a 80%);overflow:hidden}
.ap-main [hidden]{display:none!important}
.ap-dust{position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.55;background-image:radial-gradient(circle at 10% 20%,#f3d88e 0 1px,transparent 1.5px),radial-gradient(circle at 80% 40%,#f3d88e 0 1px,transparent 1.5px),radial-gradient(circle at 40% 80%,#e4c27a 0 .8px,transparent 1.3px),radial-gradient(circle at 65% 15%,#fff 0 .7px,transparent 1.2px);background-size:420px 420px,520px 520px,360px 360px,610px 610px;animation:apDrift 60s linear infinite}
@keyframes apDrift{to{background-position:420px -420px,-520px -520px,360px -720px,-610px 610px}}
.ap-main>section{position:relative;z-index:1}

/* typography */
.ap-ey{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--ap-gold2)}
.ap-page h2{font-size:clamp(28px,4vw,46px);font-weight:500;letter-spacing:.06em;color:var(--ap-gold2);margin:10px 0 12px;line-height:1.1;text-shadow:0 4px 30px #000}
.ap-h-sm{font-size:clamp(22px,3vw,32px)!important}.ap-h-xl{font-size:clamp(38px,6vw,72px)!important}
.ap-lead{font-size:20px;line-height:1.65;color:#e0d1b3;max-width:760px;margin:0 auto 14px}
.ap-fine{font-size:15px;color:var(--ap-muted);line-height:1.6}
.ap-sub{color:var(--ap-muted);font-style:italic;margin:4px 0 12px}
.ap-gold-t{font-family:Cinzel,serif;color:var(--ap-gold2);letter-spacing:.08em;font-weight:500;margin:6px 0}
.ap-center{text-align:center}
.ap-inline{color:var(--ap-gold2);text-decoration:underline}
.ap-link{background:none;border:0;color:var(--ap-muted);text-decoration:underline;margin-top:14px;font-size:15px}
.ap-link:hover{color:var(--ap-gold2)}

/* buttons */
.ap-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 30px;border:1px solid var(--ap-line);background:linear-gradient(180deg,#191510,#0c0b09);color:var(--ap-gold2);letter-spacing:.2em;font-size:12px;text-transform:uppercase;border-radius:3px;box-shadow:inset 0 0 0 3px #05070a,inset 0 0 0 4px #4a3920;transition:transform .25s,box-shadow .25s,filter .25s;margin:8px 6px}
.ap-btn:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 3px #05070a,inset 0 0 0 4px #8d6b31,0 10px 40px #d9b35c33}
.ap-btn.ap-gold{background:linear-gradient(135deg,#a77a2c,#f2d887 55%,#c99f43);color:#171109;border-color:#f3d88e;box-shadow:inset 0 0 0 3px #f2d88733,0 10px 40px #d9b35c40;font-weight:700}
.ap-btn.ap-gold:hover{filter:brightness(1.08);box-shadow:0 14px 50px #d9b35c66}
.ap-btn small{font-size:9px;letter-spacing:.3em;border-left:1px solid #17110955;padding-left:10px}
.ap-btn[disabled]{opacity:.35;pointer-events:none}
.ap-row{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:10px}

/* hero */
.ap-hero{min-height:calc(92vh - 78px);display:grid;place-items:center;text-align:center;padding:60px 20px 80px;isolation:isolate}
.ap-hero-art{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#05070a 0,#05070a00 22%,#05070a00 55%,#05070a 100%),linear-gradient(90deg,#05070a 0,#05070a00 20%,#05070a00 80%,#05070a 100%),url('assets/awakening-path/hero.webp') center 60%/cover no-repeat;animation:apBreath 18s ease-in-out infinite alternate}
@keyframes apBreath{from{transform:scale(1.02)}to{transform:scale(1.08)}}
.ap-door-glow{position:absolute;left:50%;top:58%;width:9%;height:34%;transform:translate(-50%,-50%);background:radial-gradient(ellipse,#ffdf9a 0,#f3b24f88 30%,transparent 70%);filter:blur(18px);mix-blend-mode:screen;animation:apGlow 4.5s ease-in-out infinite}
@keyframes apGlow{50%{opacity:.45;transform:translate(-50%,-50%) scale(1.25)}}
.ap-hero-inner{max-width:920px;padding:40px 20px;background:radial-gradient(ellipse,#05070acc 0,#05070a88 50%,transparent 75%)}
.ap-title{font-size:clamp(44px,8vw,104px);font-weight:500;line-height:.95;letter-spacing:.06em;margin:14px 0;background:linear-gradient(180deg,#fff1c4,#e3bd68 55%,#9c6f2a);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 6px 24px #000)}
.ap-title sup{font-size:.25em;vertical-align:top;-webkit-text-fill-color:var(--ap-gold2)}
.ap-processes{font-size:clamp(11px,1.6vw,16px);letter-spacing:.24em;color:var(--ap-gold2)}.ap-processes i{color:var(--ap-gold);font-style:normal;margin:0 6px}
.ap-oracle{font-style:italic;font-size:clamp(20px,2.6vw,28px);color:#f0e2c2;margin:26px auto 28px;max-width:640px;text-shadow:0 2px 14px #000}

/* intro */
.ap-intro{max-width:1240px;margin:0 auto;padding:30px 20px 90px}
.ap-frame-head{display:flex;align-items:center;gap:18px;margin:56px 0 26px;color:var(--ap-gold2);font-size:13px;letter-spacing:.26em;text-align:center}
.ap-frame-head:before,.ap-frame-head:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--ap-line),transparent)}
.ap-gates-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ap-gate-card{margin:0;border:1px solid var(--ap-line);padding:6px;background:#0c0d10;box-shadow:0 20px 50px #000a;transition:transform .35s}
.ap-gate-card:hover{transform:translateY(-6px)}
.ap-gate-card img{display:block;width:100%;aspect-ratio:113/164;object-fit:cover}
.ap-gate-card figcaption{padding:12px 6px 6px;text-align:center}.ap-gate-card b{display:block;font-family:Cinzel,serif;font-weight:500;color:var(--ap-gold2);letter-spacing:.12em;font-size:14px}.ap-gate-card span{font-style:italic;color:var(--ap-muted)}
.ap-quote{text-align:center;font-style:italic;font-size:clamp(20px,2.4vw,26px);max-width:820px;margin:50px auto 0;color:#e8d8b4}
.ap-arch-strip{display:grid;grid-template-columns:repeat(12,1fr);gap:8px}
.ap-arch{text-align:center}
.ap-arch img,.ap-arch-face{display:block;width:100%;aspect-ratio:69/100;object-fit:cover;border:1px solid #8d6b31;border-radius:4px;box-shadow:0 10px 26px #000}
.ap-arch b{display:block;font-family:Cinzel,serif;font-weight:500;font-size:9px;letter-spacing:.12em;color:var(--ap-gold2);margin-top:6px}
.ap-arch-face{display:grid;place-items:center;background:radial-gradient(circle at 50% 35%,#5a4057,#1a141c 55%,#0b0c10);box-shadow:inset 0 0 0 4px #0b0c10,inset 0 0 0 5px #8d6b31,0 10px 26px #000}
.ap-arch-face span{font-size:2.6em;color:#f0cf7c;text-shadow:0 0 20px #d9b35c88}
.ap-levels-row{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(7,1fr);gap:10px;counter-reset:lv}
.ap-levels-row li{counter-increment:lv;border-top:1px solid var(--ap-line);padding:16px 8px;text-align:center;font-size:15px;color:var(--ap-muted);line-height:1.4}
.ap-levels-row li:before{content:counter(lv);display:grid;place-items:center;width:30px;height:30px;margin:-32px auto 10px;border:1px solid var(--ap-gold);border-radius:50%;background:#05070a;color:var(--ap-gold2);font-family:Cinzel,serif;font-size:13px}
.ap-levels-row b{display:block;font-family:Cinzel,serif;font-weight:500;color:var(--ap-gold2);font-size:12px;letter-spacing:.1em;margin-bottom:4px}

/* game layout */
.ap-game{padding:40px 18px 90px;scroll-margin-top:78px}
.ap-layout{max-width:980px;margin:0 auto;display:grid;gap:22px}
.ap-layout.with-sides{max-width:1440px;grid-template-columns:270px minmax(0,1fr) 270px;align-items:start}
.ap-side{position:sticky;top:96px;display:grid;gap:16px}
.ap-stage{min-width:0}
.ap-screen{animation:apIn .7s ease both}
@keyframes apIn{from{opacity:0;transform:translateY(16px)}}
.ap-panel{border:1px solid var(--ap-line);background:linear-gradient(160deg,#14171d,#0a0c10);padding:18px;box-shadow:inset 0 0 0 4px #0a0c10,inset 0 0 0 5px #3d301b,0 18px 50px #000a;text-align:center}
.ap-panel-h{font-size:11px;letter-spacing:.2em;color:#e4cf9a}
.ap-panel-quote{font-size:28px;color:var(--ap-gold)}.ap-panel-quote p{font-size:15px;font-style:italic;color:#d8c8a4;margin:6px 0 0}
.ap-dims{list-style:none;padding:0;margin:10px 0 0;text-align:left;display:grid;gap:9px}
.ap-dims li{display:grid;grid-template-columns:26px 1fr auto;gap:6px 8px;align-items:center;font-size:16px}
.ap-dims i{font-style:normal;display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--ap-line);border-radius:50%;color:var(--ap-gold2);font-size:13px}
.ap-dims em{font-style:normal;color:var(--ap-gold2)}
.ap-dims s{grid-column:2/4;height:3px;background:#24211f;position:relative}.ap-dims s:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--w);background:linear-gradient(90deg,#6f4a86,#dfbd67)}
.ap-dom{list-style:none;padding:0;margin:10px 0 0;text-align:left;display:grid;gap:4px;font-size:15px}
.ap-dom li{display:grid;grid-template-columns:22px 1fr auto;align-items:center;color:#d4c4a2}.ap-dom li:first-child{color:var(--ap-gold2)}.ap-dom span{color:var(--ap-gold);font-size:13px}.ap-dom em{font-style:normal}
.ap-meter{height:5px;background:#26232a;border-radius:6px;overflow:hidden;margin:12px 0 6px}.ap-meter span{display:block;height:100%;background:linear-gradient(90deg,#754f82,#dfbd67);transition:width .6s}
.ap-journey{list-style:none;padding:0;margin:14px 0 0;text-align:left;display:grid;gap:4px}
.ap-journey li{display:grid;grid-template-columns:30px 1fr;gap:10px;padding:8px;border:1px solid transparent;opacity:.6}
.ap-journey li b{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--ap-line);border-radius:50%;font-family:Cinzel,serif;font-weight:500;color:var(--ap-gold2);font-size:13px}
.ap-journey strong{display:block;font-family:Cinzel,serif;font-weight:500;font-size:12px;letter-spacing:.1em;color:var(--ap-gold2)}.ap-journey span{font-size:14px;color:var(--ap-muted);line-height:1.35}
.ap-journey li.done{opacity:1}.ap-journey li.done b{background:var(--ap-gold);color:#120e08}
.ap-journey li.now{opacity:1;border-color:var(--ap-gold);background:#d9b35c10;box-shadow:0 0 30px #d9b35c22}.ap-journey li.now b{box-shadow:0 0 14px #f3d88e88}

/* deck choice */
.ap-decks{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:30px 0}
.ap-deck{display:flex;flex-direction:column;align-items:center;gap:10px;padding:46px 24px;border:2px solid #9f7934;border-radius:12px;background:radial-gradient(circle at 50% 18%,#5a4057,#11141a 62%);color:var(--ap-ink);box-shadow:inset 0 0 0 6px #11141a,inset 0 0 0 7px #6d542b,0 25px 70px #000;transition:transform .35s,box-shadow .35s}
.ap-deck:hover{transform:translateY(-6px) rotate(-.4deg);box-shadow:inset 0 0 0 6px #11141a,inset 0 0 0 7px #d9b35c,0 30px 80px #d9b35c30}
.ap-deck-glyph{font-size:62px;color:#f0cf7c;text-shadow:0 0 30px #d9b35c99}
.ap-deck strong{font-family:Cinzel,serif;font-weight:500;font-size:clamp(18px,2.2vw,24px);letter-spacing:.08em;color:var(--ap-gold2)}
.ap-deck em{color:var(--ap-muted)}
.ap-deck-cta{margin-top:12px;font-family:Cinzel,serif;font-size:11px;letter-spacing:.24em;border-top:1px solid var(--ap-line);padding-top:14px;color:var(--ap-gold2)}

/* questions */
.ap-q{max-width:820px;margin:0 auto}
.ap-q-meta{display:flex;justify-content:space-between;font-family:Cinzel,serif;font-size:11px;letter-spacing:.24em;color:var(--ap-gold2)}
.ap-q-card{margin-top:24px;padding:40px clamp(18px,4vw,48px);text-align:center;border:1px solid #8d6b31;border-radius:10px;background:radial-gradient(circle at 50% 0,#2d2130,#0e1116 60%);box-shadow:inset 0 0 0 5px #0e1116,inset 0 0 0 6px #4a3920,0 25px 70px #000}
.ap-sigil{font-size:40px;color:#e3c16b;text-shadow:0 0 22px #d9b35c88}
.ap-q-text{font-size:clamp(24px,3vw,34px)!important;line-height:1.3!important}
.ap-answers{display:grid;gap:12px;margin:24px 0 10px;text-align:left}
.ap-answer{display:flex;gap:14px;align-items:center;background:#14151a;color:#eadbb8;border:1px solid #5a4625;padding:16px 18px;border-radius:5px;font-size:19px;line-height:1.4;transition:border-color .2s,background .2s,transform .2s;animation:apIn .5s ease both;animation-delay:var(--d,0ms)}
.ap-answer span{flex:none;display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--ap-line);border-radius:50%;font-family:Cinzel,serif;font-size:12px;color:var(--ap-gold2)}
.ap-answer:hover{border-color:var(--ap-gold2);background:#211a17;transform:translateX(4px)}
.ap-answer.is-chosen{border-color:var(--ap-gold2);background:linear-gradient(90deg,#3a2a1a,#1a1416);box-shadow:0 0 24px #d9b35c26}

/* reading */
.ap-reading{display:grid;grid-template-columns:minmax(180px,280px) 1fr;gap:34px;align-items:center;margin:30px 0}
.ap-reveal-in{animation:apTurn 1.2s cubic-bezier(.2,.7,.2,1) both}
@keyframes apTurn{from{opacity:0;transform:perspective(900px) rotateY(90deg) scale(.9)}}
.ap-arch-lg img,.ap-arch-lg .ap-arch-face{border-width:2px;box-shadow:0 0 0 6px #0b0c10,0 0 0 7px #8d6b31,0 30px 80px #000,0 0 60px #d9b35c33}
.ap-arch-lg .ap-arch-face span{font-size:90px}
.ap-arch-lg b{font-size:14px;margin-top:14px}
.ap-arch-sm{width:110px;margin:10px auto}.ap-arch-sm .ap-arch-face span{font-size:36px}
.ap-big{font-family:Cinzel,serif;font-weight:500;font-size:clamp(32px,4.4vw,54px);letter-spacing:.06em;color:var(--ap-gold2);margin:6px 0}
.ap-essence{font-style:italic;color:var(--ap-muted);margin:0 0 12px}
.ap-top-dims{list-style:none;padding:0;margin:0 0 16px;display:flex;flex-wrap:wrap;gap:8px 20px}.ap-top-dims b{color:var(--ap-gold2);font-weight:600}
.ap-reading blockquote{margin:0;padding:12px 18px;border-left:2px solid var(--ap-gold);font-size:21px;color:#e8d8b4;background:#d9b35c08}
.ap-hook{font-family:Cinzel,serif;font-size:clamp(18px,2vw,22px);color:#f6e3a8;margin:20px 0 0;letter-spacing:.03em}
.ap-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}
.ap-fact{border:1px solid var(--ap-line);background:linear-gradient(160deg,#15181e,#0a0c10);padding:20px;text-align:center}
.ap-fact strong{display:block;font-family:Cinzel,serif;font-weight:500;color:var(--ap-gold2);letter-spacing:.12em;font-size:18px}
.ap-fact p{color:var(--ap-muted);font-size:16px;margin:6px 0 0}
.ap-fact-glyph{font-family:Cinzel,serif;font-size:42px;color:#f0cf7c;margin:12px 0 6px;text-shadow:0 0 20px #d9b35c66}
.ap-lesson{margin:24px auto;max-width:780px;text-align:center;font-size:22px;font-style:italic;color:#ecdcb8;line-height:1.6}
.ap-insight{display:grid;grid-template-columns:170px 1fr;gap:26px;align-items:center;max-width:720px;margin:16px auto 30px;padding:20px;border:1px solid #6b4f7e;background:linear-gradient(140deg,#21172a,#0c0d12);box-shadow:0 20px 60px #000}
.ap-insight img{width:100%;border:1px solid #8d6b31;box-shadow:0 14px 34px #000}
.ap-insight .ap-lead{margin:8px 0;text-align:left}

/* gates / reveal */
.ap-gates{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:26px 0}
.ap-gate{position:relative;aspect-ratio:113/190;border:1px solid #8d6b31;overflow:hidden;background:#0a0b0e;box-shadow:inset 0 0 0 5px #0a0b0e,0 22px 60px #000}
.ap-gate img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:filter 1.2s,transform 1.2s}
.ap-gate-veil{position:absolute;inset:0;background:linear-gradient(180deg,#05070acc,#05070a33 40%,#05070aee 80%)}
.ap-gate-txt{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;padding:18px 12px;text-align:center}
.ap-gate-txt b{font-family:Cinzel,serif;font-weight:500;color:var(--ap-gold2);letter-spacing:.12em;font-size:clamp(12px,1.4vw,17px);margin-top:4px}
.ap-gate-txt em{font-size:15px;color:#d8c8a4}
.ap-gate-txt p{margin-top:auto;font-size:15px;line-height:1.45;color:#f1e3c2;background:#05070acc;padding:10px;border-top:1px solid var(--ap-line)}
.ap-lock{margin-top:auto;font-size:30px;filter:grayscale(1) brightness(1.3);opacity:.8}
.ap-gate.is-locked img{filter:grayscale(.85) brightness(.35) blur(1.5px)}
.ap-gate.is-glimpse{border-color:var(--ap-gold2);box-shadow:0 0 0 1px #f3d88e55,0 0 50px #d9b35c44,0 22px 60px #000}
.ap-gate.is-glimpse img{filter:brightness(.8)}
.ap-gate.is-lit{animation:apLight 1.8s ease both;animation-delay:var(--d)}
@keyframes apLight{from{filter:grayscale(1) brightness(.25)}to{filter:none}}
.ap-gates-lit .ap-gate{border-color:var(--ap-gold2);box-shadow:0 0 40px #d9b35c40,0 22px 60px #000}
.ap-paywall{max-width:820px;margin:28px auto;padding:44px clamp(18px,4vw,50px);text-align:center;border:1px solid #8d6b31;border-radius:10px;background:radial-gradient(circle at 50% 0,#3a2533,#0e1116 65%);box-shadow:inset 0 0 0 6px #0e1116,inset 0 0 0 7px #6d542b,0 30px 90px #000}
.ap-includes{list-style:none;padding:0;margin:22px auto;max-width:540px;text-align:left;display:grid;gap:8px}
.ap-includes li{padding-left:28px;position:relative;color:#e2d3b2}.ap-includes li:before{content:"✦";position:absolute;left:4px;color:var(--ap-gold)}
.ap-msg{color:#f3c98e;min-height:1em}

/* temple */
.ap-temple{max-width:900px;margin:30px auto;text-align:center;padding:30px 10px}
.ap-temple-door{width:130px;height:190px;margin:0 auto 26px;border:2px solid #8d6b31;border-bottom:0;border-radius:65px 65px 0 0;position:relative;overflow:hidden;background:#07080b;box-shadow:0 0 0 8px #0b0c10,0 0 0 9px #4a3920}
.ap-temple-door span{position:absolute;inset:18% 30% 0;background:radial-gradient(ellipse at 50% 100%,#fff2c4,#f3b24f 40%,transparent 75%);animation:apGlow 2.5s ease-in-out infinite}
.ap-temple-open .ap-temple-door span{inset:0;animation:apOpen 2.4s ease both}
@keyframes apOpen{from{inset:45% 48% 0;opacity:.4}}

/* paid phases */
.ap-phase{text-align:center;font-size:12px;letter-spacing:.34em;color:var(--ap-gold)}
.ap-trait{display:grid;grid-template-columns:170px 1fr;gap:14px;padding:10px 0;border-bottom:1px solid #2c261d}
.ap-trait span{font-family:Cinzel,serif;font-size:11px;letter-spacing:.16em;color:var(--ap-gold2);padding-top:5px}
.ap-trait p{margin:0;color:#e4d5b4;line-height:1.5}
.ap-secondary{display:grid;grid-template-columns:130px 1fr;gap:24px;align-items:center;padding:20px;border:1px solid var(--ap-line);background:#0c0e12}
.ap-secondary .ap-arch-sm{width:100%}
.ap-note{font-style:italic;color:var(--ap-muted);text-align:center;max-width:760px;margin:24px auto}
.ap-flip-wrap{perspective:1400px;display:flex;justify-content:center;margin:26px 0}
.ap-flip{position:relative;width:min(340px,82vw);aspect-ratio:2/3;border:0;padding:0;background:none;transform-style:preserve-3d;transition:transform 1.1s cubic-bezier(.3,.7,.2,1);color:var(--ap-ink)}
.ap-flip:not(.is-flipped):hover{transform:translateY(-6px) rotateY(-6deg)}
.ap-flip.is-flipped{transform:rotateY(180deg);cursor:default}
.ap-flip-back,.ap-flip-front{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:28px;border:2px solid #9f7934;box-shadow:inset 0 0 0 6px #0f1116,inset 0 0 0 7px #6d542b,0 30px 80px #000}
.ap-flip-back{background:repeating-conic-gradient(from 0deg,#1a1520 0 15deg,#120f16 15deg 30deg),#120f16}
.ap-back-sigil{font-size:96px;color:#f0cf7c;text-shadow:0 0 40px #d9b35caa;animation:apGlow2 3s ease-in-out infinite}
@keyframes apGlow2{50%{text-shadow:0 0 70px #f3d88e}}
.ap-flip-front{transform:rotateY(180deg);background:radial-gradient(circle at 50% 15%,#5a4057,#11141a 65%);text-align:center}
.ap-flip-front b{font-family:Cinzel,serif;font-weight:500;font-size:26px;letter-spacing:.14em;color:var(--ap-gold2)}
.ap-flip-q{font-size:22px;line-height:1.45;color:#f1e3c2;font-style:italic}
.ap-respond{max-width:720px;margin:0 auto}
.ap-respond label{display:block;text-align:center;color:var(--ap-muted);margin-bottom:8px}
.ap-page textarea{width:100%;background:#0b0d11;color:var(--ap-ink);border:1px solid var(--ap-line);border-radius:5px;padding:14px;font:inherit;font-size:18px;resize:vertical}
.ap-page textarea:focus{outline:1px solid var(--ap-gold);border-color:var(--ap-gold)}
.ap-gate-head{display:grid;grid-template-columns:150px 1fr;gap:26px;align-items:center;margin:20px 0}
.ap-gate-head img{width:100%;border:1px solid #8d6b31;box-shadow:0 0 0 5px #0a0b0e,0 0 0 6px #4a3920,0 20px 50px #000}
.ap-gate-head .ap-lead{margin:0 0 12px;text-align:left}
.ap-chips{display:flex;flex-wrap:wrap;gap:6px}.ap-chips span{border:1px solid #654e29;border-radius:20px;padding:3px 12px;font-size:14px;color:#e7cd88}
.ap-gate-grid{display:grid;grid-template-columns:280px 1fr;gap:28px;align-items:start}
.ap-gate-grid .ap-flip-wrap{margin:0;position:sticky;top:96px}
.ap-flip-wisdom{width:100%}
.ap-flip-wisdom .ap-flip-back{background-size:cover;background-position:center;justify-content:flex-end;padding:0;overflow:hidden}
.ap-flip-label{width:100%;padding:16px 10px;background:linear-gradient(0deg,#05070a,#05070acc 70%,transparent);font-family:Cinzel,serif;font-size:18px;letter-spacing:.12em;color:var(--ap-gold2);display:flex;flex-direction:column;gap:3px}
.ap-flip-label small{font-size:10px;letter-spacing:.2em;color:#e4cf9a}.ap-flip-label em{font-style:normal;font-size:9px;letter-spacing:.24em;color:var(--ap-muted);margin-top:6px}
.ap-flip-wisdom .ap-flip-front{background:linear-gradient(170deg,#3a2650,#160f1e 70%);justify-content:flex-start;padding:26px 20px}
.ap-flip-msg{font-style:italic;font-size:17px;line-height:1.45;color:#f1e3c2}
.ap-flip-front ul{list-style:none;padding:0;margin:0;text-align:left;display:grid;gap:6px;font-size:16px;color:#e4d5b4}
.ap-flip-front li:before{content:"• ";color:var(--ap-gold)}
.ap-gate-work{display:grid;gap:22px;animation:apIn .7s ease both}
.ap-prompt,.ap-scenario,.ap-align{border:1px solid var(--ap-line);background:linear-gradient(160deg,#14171d,#0a0c10);padding:22px}
.ap-prompt p{font-size:21px;font-style:italic;color:#f1e3c2;line-height:1.5}
.ap-scenario-q{font-size:21px;color:#f1e3c2;margin:8px 0 0}
.ap-scenario .ap-answers{margin-top:14px}
.ap-scenario-r{border-left:2px solid var(--ap-gold);padding:6px 14px;color:#e2d3b2}.ap-scenario-r b{font-family:Cinzel,serif;font-weight:500;color:var(--ap-gold2);letter-spacing:.12em;font-size:13px}
.ap-align p{color:var(--ap-muted)}
.ap-align-row{display:grid;grid-template-columns:140px 1fr 1fr;gap:16px;align-items:center;padding:10px 0;border-bottom:1px solid #2c261d}
.ap-align-row b{font-family:Cinzel,serif;font-weight:500;color:var(--ap-gold2);font-size:14px;letter-spacing:.08em}
.ap-align-row label{display:grid;gap:4px;font-size:14px;color:var(--ap-muted)}
.ap-align-row input{accent-color:#d9b35c;width:100%}
.ap-align-score{text-align:right;font-family:Cinzel,serif;letter-spacing:.1em;color:#e4cf9a}.ap-align-score b{color:var(--ap-gold2);font-size:22px}

/* final */
.ap-level{text-align:center;margin:26px auto;max-width:860px;padding:26px;border:1px solid #8d6b31;background:radial-gradient(circle at 50% 0,#2d2130,#0e1116 65%)}
.ap-level-track{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:16px 0}
.ap-level-track span{padding:8px 2px;font-family:Cinzel,serif;font-size:clamp(8px,1vw,11px);letter-spacing:.1em;border-top:3px solid #2a2520;color:#77705f}
.ap-level-track span.on{border-color:var(--ap-gold);color:var(--ap-gold2)}
.ap-level strong{display:block;font-family:Cinzel,serif;font-weight:500;font-size:clamp(28px,4vw,42px);color:var(--ap-gold2);letter-spacing:.12em}
.ap-final{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ap-final-sec{border:1px solid var(--ap-line);background:linear-gradient(160deg,#14171d,#0a0c10);padding:22px 24px}
.ap-final-sec h3{font-family:Cinzel,serif;font-weight:500;color:var(--ap-gold2);letter-spacing:.14em;font-size:15px;margin:0 0 10px}
.ap-final-sec p{margin:0 0 8px;line-height:1.55;color:#e4d5b4}
.ap-action{font-size:22px;color:#f6e3a8!important;font-style:italic}
.ap-steps{margin:0;padding-left:20px;display:grid;gap:8px;color:#e4d5b4}.ap-steps b{display:block;font-family:Cinzel,serif;font-weight:500;color:var(--ap-gold2);font-size:12px;letter-spacing:.14em}
.ap-reflections{margin-top:16px}.ap-reflections p{display:grid;gap:2px;font-style:italic}
.ap-closing{text-align:center;margin:44px auto;max-width:760px;font-family:Cinzel,serif;font-size:clamp(18px,2.4vw,26px);color:var(--ap-gold2);letter-spacing:.04em;line-height:1.5}
.ap-closing p{margin:0 0 10px}
.ap-committed{font-family:Cinzel,serif;color:var(--ap-gold2);letter-spacing:.14em}
.ap-ladder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ap-ladder-grid a{display:flex;flex-direction:column;gap:6px;padding:22px;border:1px solid var(--ap-line);background:#0c0e12;transition:border-color .25s,transform .25s}
.ap-ladder-grid a:hover{border-color:var(--ap-gold2);transform:translateY(-4px)}
.ap-ladder-grid b{font-family:Cinzel,serif;font-weight:500;color:var(--ap-gold2);letter-spacing:.06em;font-size:18px}.ap-ladder-grid em{color:var(--ap-muted);font-size:16px}

/* responsive */
@media (max-width:1180px){
  .ap-layout.with-sides{grid-template-columns:1fr;max-width:980px}
  .ap-layout.with-sides .ap-stage{order:-1}
  .ap-side{position:static;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
}
@media (max-width:860px){
  .ap-gates-preview,.ap-gates{grid-template-columns:1fr 1fr}
  .ap-arch-strip{grid-template-columns:repeat(6,1fr)}
  .ap-levels-row{grid-template-columns:1fr;gap:0}.ap-levels-row li{display:grid;grid-template-columns:40px 1fr;text-align:left;border-top:0;border-left:1px solid var(--ap-line);padding:6px 0 18px 0}.ap-levels-row li:before{margin:0 0 0 -16px}
  .ap-reading,.ap-gate-grid,.ap-gate-head,.ap-insight{grid-template-columns:1fr}
  .ap-reading-card{max-width:240px;margin:0 auto}.ap-gate-head img,.ap-insight img{max-width:170px;margin:0 auto}
  .ap-gate-grid .ap-flip-wrap{position:static}.ap-flip-wisdom{max-width:300px}
  .ap-facts,.ap-final,.ap-ladder-grid{grid-template-columns:1fr}
  .ap-trait{grid-template-columns:1fr;gap:2px}
  .ap-align-row{grid-template-columns:1fr}
  .ap-secondary{grid-template-columns:100px 1fr}
}
@media (max-width:600px){
  .ap-page{font-size:18px}
  .ap-decks{grid-template-columns:1fr}
  .ap-arch-strip{grid-template-columns:repeat(4,1fr)}
  .ap-hero{min-height:auto;padding:70px 14px}
  .ap-btn{width:100%;margin:8px 0}
}
@media (prefers-reduced-motion:reduce){.ap-page *,.ap-page *:before,.ap-page *:after{animation:none!important;transition:none!important}}
@media print{
  .site-header,.site-footer,.ap-dust,.ap-side,.ap-ladder,.ap-row,.ap-btn{display:none!important}
  .ap-main,.ap-page{background:#fff!important;color:#000}.ap-page *{color:#000!important;background:none!important;box-shadow:none!important;text-shadow:none!important}
  .ap-layout.with-sides{grid-template-columns:1fr}
}

/* voiceover + drum control */
.ap-sound{position:fixed;right:18px;bottom:18px;z-index:50;display:flex;gap:6px}
.ap-sound[hidden],.ap-sound [hidden]{display:none!important}
.ap-sound-btn{min-height:42px;padding:10px 16px;border:1px solid var(--ap-line);border-radius:999px;background:#0c0b09e6;color:var(--ap-gold2);font-family:Cinzel,Georgia,serif;font-size:12px;letter-spacing:.12em;box-shadow:0 8px 30px #000a;cursor:pointer;backdrop-filter:blur(6px)}
.ap-sound-btn:hover{border-color:var(--ap-gold);box-shadow:0 8px 30px #d9b35c33}
@media print{.ap-sound{display:none!important}}
