@font-face{font-family:Medieval;src:url("assets/MedievalSharp-Regular.ttf") format("truetype");font-display:swap}
:root{color-scheme:dark;--ink:#0c0d0c;--panel:#141613;--gold:#d6b66c;--gold-bright:#f0d18a;--text:#ede6d6;--muted:#b8b6aa;--line:#494333;--display:Medieval,Georgia,serif;--body:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--space:clamp(1.25rem,5vw,5rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--ink);color:var(--text);font:1rem/1.7 var(--body)}a{color:inherit;text-decoration:none}a:hover{color:var(--gold-bright)}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold-bright);outline-offset:6px}img{display:block;max-width:100%;height:auto}figure,p,h1,h2{margin:0}p{color:var(--muted)}h1,h2{font-family:var(--display);font-weight:400;line-height:1.12}h2{font-size:clamp(2.2rem,4.5vw,4rem)}em{font-style:normal;color:var(--gold)}.skip{position:fixed;top:-6rem;left:1rem;z-index:20;background:var(--gold);color:var(--ink);padding:1rem}.skip:focus{top:1rem}.header{position:absolute;top:0;left:0;width:100%;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.5rem var(--space);border-bottom:1px solid #d6b66c26;background:linear-gradient(#080907d9,transparent)}.brand{display:flex;align-items:center;gap:.7rem;font:1.3rem var(--display);letter-spacing:.08em;color:var(--gold-bright)}.brand img{width:62px;height:auto}.header nav,.footer nav{display:flex;gap:clamp(1rem,3vw,2.5rem);font-size:.9rem}.header nav a[aria-current],.footer nav a[aria-current]{color:var(--gold);text-decoration:underline;text-underline-offset:.5rem}.hero{min-height:820px;min-height:min(940px,100svh);position:relative;display:grid;place-items:center;text-align:center;padding:8rem 1.25rem 6rem;background:linear-gradient(180deg,#08090720 0%,#08090722 45%,#0c0d0c 100%),url("assets/cathedral.jpg") center/cover}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 10%,#0005 100%);pointer-events:none}.hero-content{position:relative;max-width:1000px}.eyebrow{color:var(--gold);font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;line-height:1.6}.hero h1{font-size:clamp(3.05rem,9.5vw,8rem);letter-spacing:.025em;color:#f4e6c4;text-shadow:0 4px 24px #000;margin-top:1.1rem}.hero-crest{width:210px;margin:.5rem auto 0}.hero-mantra{font:clamp(1.4rem,3vw,2rem) var(--display);color:var(--gold-bright);margin-top:.1rem}.hero-description{color:#dbd8ca;margin:1.5rem auto 2rem;font-size:1.05rem}.actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:1rem;padding:.8rem 1.6rem;border:1px solid var(--gold);font-size:.95rem;transition:background .2s,box-shadow .2s;clip-path:polygon(9px 0,calc(100% - 9px) 0,100% 9px,100% calc(100% - 9px),calc(100% - 9px) 100%,9px 100%,0 calc(100% - 9px),0 9px)}.button.primary{background:linear-gradient(135deg,#efd086,#bb9042);color:#19170f;font-weight:650}.button.primary:hover{background:#f7dc98;box-shadow:0 0 25px #d6b66c44}.button.secondary{background:#10110ed9;color:var(--text)}.button.secondary:hover{background:#29271d}.button:focus-visible{clip-path:none}.platforms{font-size:.85rem;margin-top:1.6rem;color:#c2baa6}.platforms span{color:var(--gold);margin:0 .65rem}.scroll-cue{position:absolute;bottom:1.7rem;display:flex;align-items:center;gap:.8rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.scroll-cue span{font-size:1.6rem}.oath{padding:1.5rem var(--space);border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;gap:2rem;justify-content:center;align-items:center;font:clamp(.9rem,1.6vw,1.15rem) var(--display);letter-spacing:.04em;background:#121410}.oath b{color:var(--gold);font-weight:400}.section{max-width:1340px;margin:auto;padding:6rem var(--space)}.section-heading{max-width:680px;margin:0 auto 3rem;text-align:center}.section-heading h2{margin:1rem 0 1.5rem}.section-heading p:last-child{max-width:620px;margin:auto}.battle-frame{border:1px solid var(--line);padding:.7rem;background:#161810;box-shadow:0 25px 70px #0007}.battle-frame img{width:100%;aspect-ratio:1382/1800;object-fit:contain}.battle-frame figcaption{display:flex;justify-content:space-between;gap:1rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;color:var(--gold);padding:.8rem .5rem .1rem}.facts{display:grid;grid-template-columns:repeat(4,1fr);margin-top:2.5rem;text-align:center}.facts div{padding:1rem;border-right:1px solid var(--line)}.facts div:last-child{border:0}.facts strong{font:3.2rem var(--display);display:block;color:var(--gold)}.facts span{color:var(--muted);font-size:.85rem}.stories{padding-top:1rem;padding-bottom:3rem}.story{display:grid;grid-template-columns:.8fr 1.2fr;gap:4rem;align-items:center;padding:3rem 0 5rem}.story h2{margin:1rem 0 1.5rem}.story-copy p:last-child{max-width:440px}.story figure{padding:.5rem;border:1px solid var(--line);background:#161810;transform:rotate(1deg);box-shadow:0 15px 40px #0008}.story.reverse{grid-template-columns:1.2fr .8fr}.story.reverse .story-copy{order:2}.story.reverse figure{transform:rotate(-1deg)}.play-anywhere{text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:none;background:radial-gradient(ellipse at top,#3e352322,transparent 65%),#11130f}.play-anywhere>img{width:140px;margin:0 auto 1.5rem}.play-anywhere h2{margin:1rem 0 1.5rem}.device-list{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;list-style:none;padding:0;margin:2rem 0}.device-list li{border:1px solid var(--line);padding:.55rem 1.4rem;color:var(--text);font-size:.9rem}.support{display:grid;grid-template-columns:.85fr 1.15fr;gap:5rem;padding-top:7rem;padding-bottom:7rem}.support h2{margin:1rem 0 1.5rem}.support .button{margin-top:1.5rem}.contact-address{display:block;color:var(--gold);font-size:.9rem;margin-top:.7rem;overflow-wrap:anywhere}.support-note{font-size:.85rem;margin-top:2rem;max-width:400px}.faq details{border-bottom:1px solid var(--line);padding:1.2rem 0}.faq details:first-child{padding-top:0}.faq summary{cursor:pointer;list-style:none;font-size:1rem;padding-right:2rem;position:relative;color:var(--text)}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:.3rem;color:var(--gold);font-size:1.3rem;line-height:1.4}.faq details[open] summary:after{content:"−"}.faq details p{margin-top:.8rem;font-size:.95rem}.faq a,.policy-content a{color:var(--gold-bright);text-decoration:underline;text-underline-offset:.2em}.footer{border-top:1px solid var(--line);max-width:1340px;margin:auto;padding:2.5rem var(--space);display:flex;align-items:center;justify-content:space-between;gap:2rem}.footer p{font-size:.75rem}.policy{padding:10rem var(--space) 5rem;max-width:1240px;margin:auto}.policy-heading{max-width:760px;padding-bottom:3rem}.back-link{display:inline-block;font-size:.85rem;color:var(--gold);margin-bottom:2.3rem}.policy h1{font-size:clamp(3rem,6vw,5rem);margin:1rem 0}.policy-date{font-size:.85rem;margin:1.5rem 0}.policy-layout{display:grid;grid-template-columns:220px 1fr;gap:4rem;border-top:1px solid var(--line);padding-top:3rem}.policy aside nav{position:sticky;top:3rem;display:flex;flex-direction:column;gap:.8rem;font-size:.85rem;color:var(--muted)}.policy-content{max-width:720px}.policy-content section{padding-bottom:3rem;margin-bottom:3rem;border-bottom:1px solid var(--line)}.policy-content h2{font-size:2rem;margin:.8rem 0 1.5rem}.policy-content p+p{margin-top:1rem}.policy-content a{overflow-wrap:anywhere}
@media(min-width:1600px){.hero{min-height:900px}}@media(max-width:900px){.header{gap:1rem}.brand{font-size:1.1rem}.header .brand img{width:42px}.hero{min-height:780px}.story,.story.reverse{gap:2rem;grid-template-columns:1fr 1fr}.support{gap:3rem;grid-template-columns:1fr 1fr}.footer{flex-wrap:wrap}.policy-layout{grid-template-columns:180px 1fr;gap:2rem}}
@media(max-width:600px){html{scroll-padding-top:1rem}.header{align-items:flex-start;padding:1.2rem}.header .brand{font-size:1rem;gap:.4rem}.header .brand img{width:30px}.header nav,.footer nav{gap:.8rem;font-size:.8rem}.hero{min-height:760px;padding-top:9rem;background-position:center}.hero .eyebrow{font-size:.7rem;letter-spacing:.12em}.hero-crest{width:170px}.hero-description{font-size:1rem}.actions{flex-direction:column;align-items:stretch;max-width:290px;margin:auto}.oath{gap:.65rem;flex-wrap:wrap;font-size:.8rem}.oath b{font-size:.65rem}.section{padding-top:4rem;padding-bottom:4rem}.battle-frame{padding:.35rem}.battle-frame figcaption{font-size:.65rem;letter-spacing:.04em}.facts{grid-template-columns:1fr 1fr;gap:1rem}.facts div:nth-child(2){border:0}.facts strong{font-size:2.8rem}.stories{padding-top:0}.story,.story.reverse{grid-template-columns:1fr;gap:2rem;padding:2rem 0}.story.reverse .story-copy{order:0}.story figure,.story.reverse figure{transform:none}.support{grid-template-columns:1fr;gap:3rem}.footer{display:grid;gap:1.5rem;padding-top:2rem}.policy{padding-top:8rem}.policy-layout{grid-template-columns:1fr;gap:2rem}.policy aside nav{position:static;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.policy-content section{padding-bottom:2rem;margin-bottom:2rem}.device-list{gap:.5rem}.device-list li{padding:.5rem 1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Keep small phones and enlarged text usable without horizontal scrolling. */
.hero-content{width:100%;min-width:0}.hero h1{font-size:clamp(2rem,9.5vw,8rem)}.story>* ,.support>* ,.policy-layout>*{min-width:0}.header nav a,.footer nav a{white-space:nowrap}
@media(max-width:360px){.header{flex-direction:column;align-items:center;gap:.65rem}.hero{padding-top:10rem}.platforms span{margin:0 .25rem}.hero-mantra{font-size:1.25rem}.footer nav{flex-wrap:wrap}}

/* Portrait iPad gameplay screenshots retain the complete scene below the status bar. */
.battle-frame{max-width:42rem;margin-inline:auto}.story figure{max-width:30rem;width:100%;margin-inline:auto}

.facts strong{min-height:3.84rem;display:flex;align-items:center;justify-content:center}.facts .fact-word{font-size:clamp(1.25rem,2.4vw,2rem);line-height:1.2}

/* Player feedback */
.feedback-page{max-width:1360px;margin:auto;padding:10rem var(--space) 6rem}.feedback-page>.back-link{display:inline-block;margin-bottom:2.5rem}.feedback-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(2rem,6vw,6rem);align-items:start}.feedback-intro h1{font-size:clamp(2.7rem,5vw,4.8rem);margin:1rem 0 1.6rem}.feedback-intro>p+p{margin-top:1rem}.feedback-guide{margin:2rem 0;padding:1.5rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.feedback-guide h2{font-size:1.6rem;margin-bottom:.7rem}.feedback-guide p+p{margin-top:1rem}.feedback-guide a,.field-help a,.feedback-status a{text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}.feedback-card{padding:clamp(1.25rem,3vw,2.5rem);background:linear-gradient(145deg,#1b1d17,var(--panel));border:1px solid var(--line);box-shadow:0 16px 60px #0004}.feedback-card form{display:grid;gap:.65rem}.feedback-card label{font-size:.9rem;color:var(--text);font-weight:600;margin-top:.8rem}.feedback-card label:first-child{margin-top:0}.feedback-card label span,.device-details summary span{font-weight:400;color:var(--muted);font-size:.8rem}.feedback-card input,.feedback-card select,.feedback-card textarea{width:100%;min-width:0;min-height:48px;border:1px solid #69624d;border-radius:3px;padding:.75rem;background:var(--ink);color:var(--text);font:1rem/1.5 var(--body)}.feedback-card textarea{resize:vertical;min-height:180px}.feedback-card input::placeholder,.feedback-card textarea::placeholder{color:#a09f93;opacity:1}.feedback-card :is(input,select,textarea,button):focus-visible{outline:3px solid var(--gold-bright);outline-offset:3px}.field-help{font-size:.78rem;line-height:1.6}.device-details{margin:.7rem 0}.device-details summary{cursor:pointer;color:var(--gold);padding:.45rem 0}.device-fields{display:grid;gap:.5rem;margin-top:.7rem}.feedback-verification{min-height:65px;min-width:0;margin:.75rem 0}.feedback-card .button{width:100%;margin-top:.7rem;font-family:var(--body);cursor:pointer}.feedback-card .button:disabled{opacity:.6;cursor:wait}.feedback-status{font-size:.85rem;line-height:1.6;min-height:2.8em;color:var(--gold-bright);overflow-wrap:anywhere}.feedback-status.is-error{color:#ffc4b6}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:820px){.feedback-layout{grid-template-columns:1fr;gap:2rem}.feedback-page{padding-top:9rem}.feedback-intro h1{max-width:650px}.feedback-guide{margin:1.5rem 0}}
@media(max-width:420px){.feedback-page{padding-left:1rem;padding-right:1rem}.feedback-card{padding:1.1rem}}

@media(max-width:600px){.header{flex-direction:column;align-items:center;gap:.65rem}.header nav,.footer nav{justify-content:center;gap:1.5rem}.feedback-page{padding-top:10rem}}

.feedback-layout>*{min-width:0}.feedback-card form>*{min-width:0}
