
:root{--bg:#020914;--bg2:#061522;--panel:#071827;--panel2:#0a1d2f;--line:#17435d;--cyan:#32daf6;--cyan2:#8cecff;--gold:#e7b84f;--gold2:#ffd978;--text:#f6f2e9;--muted:#a9bbca;--serif:Georgia,"Times New Roman",serif;--sans:Inter,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 60% -10%,#0f2f44 0,#05121e 34%,#02070d 70%);color:var(--text);font-family:var(--sans)}a{color:inherit;text-decoration:none}img{max-width:100%}.tm-shell{width:min(1480px,100%);margin:auto}.tm-top{position:sticky;top:0;z-index:30;background:rgba(2,8,14,.96);border-bottom:1px solid rgba(231,184,79,.28);backdrop-filter:blur(14px)}.tm-top-in{display:flex;align-items:center;gap:24px;padding:12px 24px}.tm-brand{display:flex;gap:12px;align-items:center;min-width:300px}.tm-sigil{width:42px;height:42px;border:1px solid rgba(231,184,79,.5);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:22px}.tm-brand strong{font-family:var(--serif);font-size:1.15rem;letter-spacing:.22em;text-transform:uppercase}.tm-brand small{display:block;color:#94a9ba;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;margin-top:3px}.tm-nav{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tm-nav a{padding:9px 12px;border-radius:8px;color:#d9e6ee;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.tm-nav a:hover,.tm-nav a.active{background:#0a2032;color:var(--cyan2)}.tm-back{margin-left:12px;border:1px solid rgba(231,184,79,.6)!important;color:var(--gold2)!important}.hero{position:relative;min-height:610px;overflow:hidden;border-bottom:1px solid rgba(231,184,79,.24);background:#07121e}.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,6,11,.94) 0,rgba(1,6,11,.78) 32%,rgba(1,6,11,.16) 70%,rgba(1,6,11,.38) 100%),linear-gradient(0deg,rgba(1,6,11,.7),transparent 45%)}.hero-copy{position:relative;z-index:2;width:min(580px,50%);padding:86px 52px 64px}.eyebrow{color:var(--cyan2);letter-spacing:.26em;text-transform:uppercase;font-weight:800;font-size:.78rem}.hero h1{font-family:var(--serif);font-size:5.2rem;line-height:.9;margin:16px 0 18px;color:#f2c86b;font-weight:500}.hero .tag{font-size:1.08rem;line-height:1.4;letter-spacing:.18em;text-transform:uppercase}.hero p{font-size:1.08rem;line-height:1.7;color:#d5e0e7}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}.btn{display:inline-flex;padding:13px 18px;border:1px solid rgba(77,190,225,.45);border-radius:7px;background:#071725;font-size:.8rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.btn.gold{background:linear-gradient(180deg,#f0c85f,#d79d2e);border-color:#f3cf74;color:#111}.hero-quote{position:absolute;z-index:2;right:48px;bottom:38px;max-width:330px;text-align:right;font-family:var(--serif);font-style:italic;color:#f1e8d1;font-size:1.05rem;line-height:1.5}.section{padding:34px 36px;border-bottom:1px solid rgba(68,148,185,.18)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.section-head h2{margin:0;font-family:var(--serif);font-size:2.2rem;font-weight:500;letter-spacing:.05em}.section-head h2 span{color:var(--cyan)}.section-head p{margin:0;color:#a8bcc9;max-width:760px;line-height:1.6}.visual-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.visual-card,.world-card,.book-card,.domain-card{background:linear-gradient(180deg,#0a1c2c,#06131f);border:1px solid rgba(53,142,185,.35);border-radius:12px;overflow:hidden}.visual-card img{width:100%;height:210px;object-fit:cover}.visual-body{padding:14px}.visual-body strong{font-family:var(--serif);font-size:1.2rem}.visual-body p{color:#aabcca;font-size:.9rem;line-height:1.45;margin:8px 0 0}.book-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.book-card{display:flex;flex-direction:column;min-height:620px}.book-card img{width:100%;height:auto;aspect-ratio:992/1586;object-fit:contain;background:#030914;padding:8px}.book-body{padding:18px 18px 20px;display:flex;flex:1;flex-direction:column}.book-body .num{color:var(--gold2);font-size:.72rem;letter-spacing:.16em;font-weight:800;text-transform:uppercase}.book-body h3{font-family:var(--serif);font-size:1.55rem;line-height:1.05;margin:7px 0 12px}.book-body p{color:#bdcbd5;line-height:1.5;font-size:.92rem}.status{margin-top:auto;color:var(--cyan);font-size:.84rem;font-weight:800}.story{display:grid;grid-template-columns:42% 58%;min-height:440px;background:#050e17}.story-copy{padding:52px 44px}.story h2{font-family:var(--serif);font-size:3.25rem;line-height:.98;margin:12px 0 20px;font-weight:500}.story p{color:#c8d5de;line-height:1.7}.story-image{position:relative;overflow:hidden}.story-image img{width:100%;height:100%;object-fit:cover}.story-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#050e17 0,transparent 22%)}.world-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.world-card{position:relative}.world-card img{width:100%;height:330px;object-fit:cover}.world-card .world-body{padding:18px 18px 20px}.world-card h3{font-size:1.55rem}.world-card p{font-size:.98rem}.connected-section{padding-bottom:46px}.world-card h3{font-family:var(--serif);font-size:1.4rem;margin:0 0 7px}.world-card p{margin:0;color:#b8c8d2;line-height:1.5}.page-hero{display:grid;grid-template-columns:1fr 1.2fr;min-height:460px;border-bottom:1px solid rgba(231,184,79,.2)}.page-hero img{width:100%;height:100%;object-fit:cover}.page-copy{padding:58px 44px;background:linear-gradient(135deg,#071522,#020912)}.page-copy h1{font-family:var(--serif);font-size:3.6rem;line-height:1;margin:12px 0 18px;color:#f4d07a}.page-copy p{color:#c6d4dc;font-size:1.03rem;line-height:1.7}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery figure{margin:0;border:1px solid rgba(53,142,185,.32);border-radius:12px;overflow:hidden;background:#071725}.gallery img{width:100%;height:280px;object-fit:cover}.gallery figcaption{padding:12px 14px;color:#b8cad4}.book-detail{display:grid;grid-template-columns:360px 1fr;gap:36px;padding:46px 36px}.book-detail .cover{width:100%;border-radius:10px;border:1px solid rgba(231,184,79,.45);box-shadow:0 24px 70px rgba(0,0,0,.45)}.book-detail h1{font-family:var(--serif);font-size:4rem;line-height:.95;margin:12px 0;color:#f4d07a}.book-detail .lead{font-size:1.1rem;line-height:1.7;color:#cad7df}.chips{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.chip{padding:8px 11px;border:1px solid rgba(55,168,211,.32);border-radius:999px;color:#8cecff;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.domain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.domain-card img{width:100%;height:220px;object-fit:cover}.domain-card .visual-body{min-height:160px}.footer{padding:26px 36px 42px;display:flex;justify-content:space-between;gap:20px;color:#839cac;font-size:.8rem;letter-spacing:.08em;border-top:1px solid rgba(231,184,79,.2)}
@media(max-width:1100px){.tm-nav{display:none}.tm-brand{min-width:0}.hero-copy{width:64%}.hero h1{font-size:4rem}.visual-grid{grid-template-columns:repeat(3,1fr)}.book-grid{grid-template-columns:repeat(2,1fr)}.world-grid{grid-template-columns:repeat(2,1fr)}.world-card img{height:300px}}
@media(max-width:760px){.tm-top-in{padding:10px 14px}.hero{min-height:560px}.hero-copy{width:100%;padding:70px 22px 40px}.hero h1{font-size:3.1rem}.hero:after{background:linear-gradient(0deg,rgba(1,6,11,.93),rgba(1,6,11,.38) 70%,rgba(1,6,11,.25))}.hero-quote{display:none}.section{padding:28px 16px}.section-head{display:block}.visual-grid,.book-grid,.world-grid,.gallery,.domain-grid{grid-template-columns:1fr}.book-card{min-height:0}.story,.page-hero,.book-detail{grid-template-columns:1fr}.story-image{min-height:360px}.story-image:after{background:linear-gradient(0deg,#050e17 0,transparent 20%)}.book-detail{padding:28px 18px}.book-detail .cover{max-width:360px;margin:auto}.footer{display:block;padding:24px 18px}.footer div+div{margin-top:10px}}

/* R2.2 — expanded Temple Machines presentation */
.tm-mobile-nav{display:none;margin-left:auto;position:relative}.tm-mobile-nav summary{cursor:pointer;list-style:none;padding:10px 14px;border:1px solid rgba(231,184,79,.55);border-radius:8px;color:var(--gold2);font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.tm-mobile-nav summary::-webkit-details-marker{display:none}.tm-mobile-links{position:absolute;right:0;top:48px;width:min(320px,calc(100vw - 28px));padding:10px;background:rgba(2,8,14,.99);border:1px solid rgba(231,184,79,.4);border-radius:10px;box-shadow:0 20px 50px rgba(0,0,0,.55);display:grid;z-index:60}.tm-mobile-links a{padding:12px 10px;border-bottom:1px solid rgba(53,142,185,.18);font-size:.8rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.tm-mobile-links a:last-child{border-bottom:0}.canon-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.canon-card{min-height:142px;padding:20px;border:1px solid rgba(53,142,185,.38);border-radius:12px;background:linear-gradient(180deg,#0a1c2c,#06131f);display:flex;flex-direction:column;justify-content:flex-end}.canon-card strong{font-family:var(--serif);font-size:1.5rem;color:var(--gold2);margin-bottom:8px}.canon-card span{color:#c4d2db;line-height:1.45}.visual-grid{grid-template-columns:repeat(3,1fr)}.visual-card img{height:300px}.gallery img{height:360px}.page-hero{min-height:540px}.page-hero img{min-height:540px}.story{min-height:520px}.story-image img{min-height:520px}.world-card img{height:360px}
@media(max-width:1100px){.tm-mobile-nav{display:block}.canon-grid{grid-template-columns:repeat(2,1fr)}.visual-grid{grid-template-columns:repeat(2,1fr)}.visual-card img{height:300px}}
@media(max-width:760px){.tm-brand small{display:none}.tm-brand strong{font-size:.92rem;letter-spacing:.14em}.tm-sigil{width:36px;height:36px}.tm-mobile-nav{display:block}.canon-grid,.visual-grid{grid-template-columns:1fr}.canon-card{min-height:110px}.visual-card img,.gallery img{height:auto;aspect-ratio:16/10;object-fit:cover}.page-hero img{min-height:340px}.page-copy{padding:38px 22px}.page-copy h1{font-size:2.65rem}.story-copy{padding:38px 22px}.story h2{font-size:2.6rem}}
