/* Typography & soft visual layer: Marcellus (display) + Nunito Sans (text), self-hosted in fontlar/. */
@font-face{font-family:Marcellus;src:url('../fontlar/marcellus-latin-ext-400-normal.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Marcellus;src:url('../fontlar/marcellus-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+0000-002F,U+003A-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Nunito Sans';src:url('../fontlar/nunito-sans-latin-ext-wght-normal.woff2') format('woff2-variations');font-weight:200 1000;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Nunito Sans';src:url('../fontlar/nunito-sans-latin-wght-normal.woff2') format('woff2-variations');font-weight:200 1000;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{--serif:Marcellus,'Nunito Sans',Georgia,serif;--sans:'Nunito Sans','Segoe UI',Arial,sans-serif;--ink:#110b0d;--text:#eadfd3;--muted:#b3a39b;--gold:#e0bd84;--line:rgba(224,189,132,.16);--radius:18px}
body{background:radial-gradient(ellipse 80% 50% at 50% 0%,#2a1216 0%,transparent 60%) no-repeat,var(--ink);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
button,select{font-family:var(--sans)}
h1,h2,h3,h4,h5{font-weight:400}

/* Header */
.site-header{height:88px;background:rgba(17,11,13,.82);border-bottom-color:rgba(224,189,132,.1)}
.wordmark{letter-spacing:0;line-height:1}
.wordmark img{display:block;width:112px;height:74px;object-fit:contain}
.languages{gap:4px;padding:4px;border:1px solid rgba(224,189,132,.12);border-radius:999px;background:#1a1114aa}
.language{border-radius:999px;padding:7px 12px;font-size:12px;font-weight:600;letter-spacing:.3px;color:#b8a79e}
.language.selected{background:linear-gradient(180deg,#4a2c24,#34201c);border-color:#8a6444;color:#f7e1b8}
.header-link{font-size:13px;font-weight:600;letter-spacing:0;gap:10px}

/* Hero */
.hero-content{padding-top:38px;padding-bottom:44px;max-width:560px}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:2.4px;color:#d7b88c}
.release{font-size:12px;font-weight:600;letter-spacing:1px;margin-top:14px;text-transform:uppercase}
.hero-logo{display:block;width:345px;max-width:90%;height:auto;margin:6px 0 4px;filter:drop-shadow(0 10px 22px #000a)}
.hero-content h1{font-family:var(--serif);font-size:46px;line-height:1.15;letter-spacing:.5px;margin:0 0 16px;color:#fbecd4;text-shadow:0 4px 24px #000}
.platform-note{font-size:14px;line-height:1.6;color:#e6c792;margin:-2px 0 14px;max-width:460px}.platform-note>span{color:#dcb478;margin-right:6px}
.hero-intro{font-size:16px;line-height:1.75;color:#cdbdb2;margin-bottom:26px;max-width:440px}
.button{border-radius:12px;min-height:50px;gap:14px;padding:12px 24px;font-size:14px;font-weight:700;letter-spacing:.2px;transition:transform .2s,box-shadow .2s,background .2s}
.button-gold{box-shadow:0 8px 28px #c28d4a33}
.button-gold:hover{box-shadow:0 12px 34px #c28d4a55}
.button-outline{border-color:#8a6a4f99;background:#1b1114aa}
.explore{font-size:13px;letter-spacing:.3px;margin-top:28px;color:#b7a59b}
.explore>span{border-radius:999px}










/* TOC */
.presentation-layout{padding-top:64px}
@media(max-width:520px){.presentation-layout{padding-top:40px}}



.chapters-nav{border-radius:var(--radius);background:linear-gradient(160deg,#211517,#150e10);padding:20px 10px 14px}
.toc-heading{font-family:var(--serif);font-size:18px}
.toc-heading>span{border-radius:999px;font-family:var(--sans);padding:2px 9px}
.chapters-nav nav a{font-size:13px;border-radius:8px;border-left:0;padding:7px 10px}
.chapters-nav nav a.active{background:linear-gradient(90deg,#8b552f33,transparent);box-shadow:inset 2px 0 0 #d6ad70}
.gallery-toolbar{font-size:12px;letter-spacing:1.4px}
.gallery-toolbar select{border-radius:10px;font-size:13px}

/* Chapter headings */
.chapter{margin-bottom:64px}
.chapter-label{gap:16px;margin-bottom:18px}
.chapter-label>span:first-child{font:400 15px/1 var(--serif);min-width:44px;height:44px;border-radius:50%;border-color:#b98c5966;color:var(--gold);background:radial-gradient(circle at 50% 30%,#3a2320,#1a1012)}
.chapter-label h3{font-family:var(--serif);font-size:28px;line-height:1.2;color:#f6e3c3}
.chapter-rule{background:linear-gradient(90deg,#b98c5977,transparent)}

/* Closing + footer */
.closing{border-radius:0;background:radial-gradient(ellipse at center,#431d25 0%,#170e12 62%,var(--ink) 100%)}
.closing h2{font-family:var(--serif);font-size:38px;color:#fbecd4}
.closing p{font-size:15px}
.footer-brand img{width:105px;height:73px;object-fit:contain;display:block}
footer{font-size:13px;letter-spacing:.3px;padding-top:14px;padding-bottom:14px}
.back-top{border-radius:50%}

@media(max-width:800px){.site-header{height:82px}.wordmark img{width:100px;height:70px}.hero-content{padding-top:35px;max-width:530px}.hero-content h1{font-size:38px}.hero-logo{width:320px}.chapter-label h3{font-size:23px}}
@media(max-width:520px){.site-header{min-height:104px;height:104px;padding:4px 10px 8px;gap:4px}.wordmark img{width:86px;height:58px}.languages{gap:2px;padding:3px}.language{padding:5px 8px;font-size:11px}.hero-content{padding:28px 23px 36px}.hero-logo{width:270px;margin:0 0 8px}.hero-content h1{font-size:32px}.eyebrow{font-size:10px;letter-spacing:2px}.release{font-size:11px;margin-top:12px}.hero-intro{font-size:14px;margin-bottom:22px}.button{font-size:13px;padding:12px 18px}.hero{min-height:665px}.explore{font-size:12px;margin-top:23px}.chapter{margin-bottom:44px}.chapter-label{gap:11px}.chapter-label>span:first-child{min-width:36px;height:36px;font-size:13px}.chapter-label h3{font-size:20px}.closing h2{font-size:29px}footer{font-size:12px}}
@media(max-width:380px){.language{padding:5px 6px}.hero-content h1{font-size:28px}.hero-logo{width:245px}}
/* Hero: centred logo on a soft ember glow (no character art) */
.hero{min-height:0;display:flex;justify-content:center;text-align:center;background:radial-gradient(ellipse 55% 60% at 50% 30%,#6a1c2455,transparent 70%),radial-gradient(ellipse 90% 80% at 50% 0%,#2b1116,transparent 75%)}
.hero:before{content:'';position:absolute;z-index:-1;left:50%;top:40px;width:760px;height:420px;transform:translateX(-50%);background:radial-gradient(closest-side,#d2463a33,transparent);filter:blur(10px);pointer-events:none}
.hero:after{background:linear-gradient(0deg,var(--ink) 0%,transparent 35%)}
.hero-glow{background:radial-gradient(ellipse at 50% 120%,#100b0d 20%,transparent 70%)}
.hero-content{margin:0 auto;max-width:760px;padding:40px 24px 64px;display:flex;flex-direction:column;align-items:center}
.hero-content .eyebrow{justify-content:center}.hero-content .eyebrow:after{content:'';height:1px;width:30px;background:var(--gold)}
.hero-logo{width:520px;max-width:92%;margin:18px auto 6px;filter:drop-shadow(0 18px 40px #000c) drop-shadow(0 0 60px #c0392b33)}
.hero-content h1{margin-bottom:12px}
.platform-note,.hero-intro{margin-left:auto;margin-right:auto}
.hero-intro{max-width:520px}
.hero .downloads{margin:4px auto 26px;width:100%;text-align:left}
.hero .downloads-heading{text-align:center}
.hero-actions{justify-content:center}
.explore{align-self:center}
@media(max-width:800px){.hero-content{padding:32px 22px 52px}.hero-logo{width:440px}}
@media(max-width:520px){.hero{min-height:0}.hero-content{padding:22px 18px 44px}.hero-logo{width:330px;margin-top:12px}.hero:before{width:420px;height:300px}}
@media(max-width:380px){.hero-logo{width:290px}}
