/* Original artwork, cinematic light and restrained editorial details. */
@font-face{font-family:'Nightbloom Spectral';src:url('assets/fonts/Nightbloom-Regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Nightbloom Cinzel';src:url('assets/fonts/Nightbloom-Bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
:root{--bg:#0c0d15;--accent:#d0b6ef;--muted:#b2aebe;--line:#c9b5eb26}
body{background-image:radial-gradient(ellipse at 0 45%,#482b601c,transparent 48%)}
.brand{display:flex;align-items:center;gap:14px;letter-spacing:-.6px;font-size:20px}
.brand img{width:56px;height:96px;max-height:none;max-width:none;object-fit:contain}
.brand small{display:block;letter-spacing:2.5px;font-size:7px;font-weight:400;color:var(--muted);margin-top:1px}
.header{min-height:114px;position:relative;z-index:2}
.hero{isolation:isolate;padding-top:105px;background:none;min-height:660px}
.hero:before{content:"";position:absolute;z-index:-2;inset:0 -6.82%;background:linear-gradient(90deg,#0c0d15 8%,#0c0d15ed 31%,#0c0d1555 76%),linear-gradient(0deg,#0c0d15,transparent 45%,#0c0d1533),url('assets/nightbloom-manor-gate.webp') 100% 59%/62% auto no-repeat}
.hero:after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(ellipse at 74% 62%,#b47aff12,transparent 50%)}
.hero h1{font-size:clamp(64px,8vw,110px);text-shadow:0 2px 30px #0c0d15b0}
.hero-bottom{padding-bottom:85px}.hero-bottom .button{background:#141321e0;backdrop-filter:blur(8px)}
.button{border-color:#c5a2ed77;transition:background .2s,border-color .2s,transform .2s}
.button:hover{background:#48325780;border-color:var(--accent);transform:translateY(-2px)}
.hero-foot{margin-top:12px}.section-label>span:first-child{color:#c2b8ce}
.game-art{min-height:550px;background:radial-gradient(ellipse at 56% 70%,#9764bb25,transparent 65%),linear-gradient(160deg,#191526,#10111b);border-radius:160px 160px 2px 2px;border-color:#c4a0ef30}
.game-art:before{content:"";position:absolute;inset:17px;border:1px solid #bea0df20;border-radius:145px 145px 0 0;pointer-events:none}
.game-art:after{content:"";position:absolute;bottom:42px;width:65%;height:25px;background:#9f73da1f;filter:blur(22px);border-radius:50%;pointer-events:none}
.game-art img{height:auto;aspect-ratio:1;object-fit:contain;padding:44px 18px 25px;position:relative;z-index:1;filter:drop-shadow(0 12px 28px #03020a80)}
.art-caption{top:46px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:3px}.art-number{left:0;right:0;bottom:27px;text-align:center;font-size:8px}
.game-copy .game-intro{font-family:Georgia,serif;font-style:italic;color:var(--text);font-size:22px;line-height:1.4}
.world-panorama{margin:75px 0 0;position:relative;height:400px;border:1px solid var(--line);overflow:hidden;background:#141522}
.world-panorama img{width:100%;height:100%;object-fit:cover;object-position:center 53%;display:block}
.world-panorama:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0c0d15f2,transparent 55%);pointer-events:none}
.world-panorama figcaption{position:absolute;z-index:1;left:30px;right:30px;bottom:25px;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:2px;color:#e5d8f6}
.studio-grid{align-items:center}.studio-art{height:420px;display:flex;justify-content:center;align-items:center;background:#05030f;border:1px solid var(--line);overflow:hidden}
.studio-art img{height:100%;width:100%;object-fit:contain;display:block}
.update-row{padding-bottom:15px}.update-tag{border:1px solid var(--line);padding:8px 12px;letter-spacing:.5px}
.contact{position:relative;isolation:isolate;background:none}
.contact:before{content:"";position:absolute;z-index:-1;inset:0 -6.82%;background:radial-gradient(ellipse at 80% 60%,#8153a426,transparent 65%);pointer-events:none}
.contact-email{display:flex;align-items:center;justify-content:space-between;gap:20px;width:fit-content;max-width:100%;font-size:clamp(18px,3.3vw,37px);letter-spacing:-.7px;border-bottom:1px solid #c6b2e066;padding:8px 0;margin:25px 0 28px;color:var(--accent);overflow-wrap:anywhere}
.contact-email:hover{color:#ead9ff}.contact-email span{font-size:24px;flex-shrink:0}
.contact-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.copy-email{background:none;color:var(--muted);border:0;border-bottom:1px solid var(--line);padding:8px 0;cursor:pointer;font-size:12px}.copy-email:hover{color:var(--text)}#copy-status{font-size:12px;color:var(--accent)}
@media(max-width:720px){.header{min-height:96px}.brand{font-size:18px;gap:9px}.brand img{width:40px;height:73px;max-height:none;max-width:none}.brand small{font-size:6px;letter-spacing:1.8px}.hero{padding-top:70px;min-height:0}.hero:before{background:linear-gradient(90deg,#0c0d15e8,#0c0d1580),linear-gradient(0deg,#0c0d15,transparent 60%),url('assets/nightbloom-manor-gate.webp') center 59%/cover no-repeat}.hero h1{font-size:clamp(48px,11.2vw,78px)}.hero-bottom{padding-bottom:48px}.game-art{min-height:0;border-radius:140px 140px 2px 2px}.game-art img{padding:56px 10px 38px;aspect-ratio:1}.art-caption{top:35px;font-size:7px}.art-number{bottom:20px;font-size:7px}.world-panorama{height:340px;margin-top:45px}.world-panorama figcaption{left:20px;right:20px;font-size:8px;flex-direction:column;gap:7px}.studio-art{height:360px}.contact-email{letter-spacing:-.4px}.contact-actions{gap:20px}.contact h2{font-size:clamp(35px,8.9vw,45px)}}
@media(prefers-reduced-motion:reduce){.button{transition:none}.button:hover{transform:none}}

/* Typography from the two original Nightbloom Manor font files. */
body{font-family:'Nightbloom Spectral',Georgia,serif;font-size:17px}
h1,h2,h3{font-family:'Nightbloom Cinzel',Georgia,serif;font-weight:700;letter-spacing:-1.5px}
h1 em,h2 em{font-family:'Nightbloom Spectral',Georgia,serif;font-weight:400;font-style:italic;letter-spacing:-1px}
.header nav,.eyebrow,.section-label,.hero-foot,.art-caption,.art-number,.update-tag,.button,.copy-email,.world-panorama figcaption{font-family:'Nightbloom Cinzel',Georgia,serif;font-weight:700}
.header nav{font-size:11px;gap:28px}.header{min-height:108px}
.brand{display:block;flex-shrink:0;line-height:0}.brand img{display:block;width:228px;height:76px;max-width:none;max-height:none;object-fit:contain}
.hero h1{font-size:clamp(58px,7.2vw,100px);line-height:1.12}.hero h1 em{font-size:1.14em}
.game-copy>p:not(.eyebrow),.studio p,.contact>p:not(.eyebrow){font-size:17px;line-height:1.7}.game-copy .game-intro{font-family:'Nightbloom Spectral',Georgia,serif;font-size:24px}.hero-bottom p{font-size:18px}
h3{font-size:20px;line-height:1.4}.update-row p:last-child{font-size:16px}.contact-email{font-family:'Nightbloom Spectral',Georgia,serif}
@media(max-width:720px){.header{min-height:92px}.brand img{width:180px;height:60px;max-width:none;max-height:none}.header nav{font-size:12px;gap:0}.hero h1{font-size:clamp(34px,8.7vw,59px);letter-spacing:-1px}.hero h1 em{font-size:1.22em}h2{font-size:clamp(32px,8.5vw,46px);letter-spacing:-1px}.contact h2{font-size:clamp(28px,7.3vw,40px)}h3{font-size:18px}.game-copy>p:not(.eyebrow),.studio p,.contact>p:not(.eyebrow){font-size:17px}.hero .eyebrow{letter-spacing:1px;font-size:8px}.section-label{letter-spacing:.6px}}

