/* Embercoil Studios / Public Experience V13
   Shared design layer for the public pages and CMS-generated game profiles.
   No staff/workspace styles are changed by this file. */
:root{--bg:#08090a;--panel:#121411;--white:#f5f1e9;--ash:#c1beb7;--dim:#8d8980;--edge:#33332e;--ember:#ff7832;--heat:#ffb16b;--zombie:#b8dc83;--loot:#9cd7db}
body{background:#090b0b;color:var(--white)}
body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.11;z-index:85;background-image:url('../media/noise.svg');background-size:180px;mix-blend-mode:soft-light}
.wrap{width:min(calc(100% - 104px),1320px)}
a,button{ -webkit-tap-highlight-color:transparent }
a:focus-visible,button:focus-visible{outline:2px solid #ffc181;outline-offset:5px}
.header{height:82px;background:rgba(9,11,10,.9);border-bottom:1px solid #ffffff1d;box-shadow:0 10px 50px #0004}
.header-wrap{width:min(calc(100% - 82px),1460px);grid-template-columns:1fr auto 1fr;gap:22px}
.brand{gap:10px}.brand img{width:52px;height:52px;filter:drop-shadow(0 0 16px #fa773a3c)}
.brand-lettering b{font-size:29px;font-weight:800;letter-spacing:.025em}.brand-lettering small{font-size:8px;color:#aba8a0;letter-spacing:.22em}
.nav{gap:8px;padding:8px;background:#171919a1;border:1px solid #ffffff0f;border-radius:999px;height:auto}
.nav-item{height:auto;padding:12px 17px;font-size:11px;letter-spacing:.09em;border-radius:999px;color:#c5c4c0;transition:background .2s,color .2s}
.nav-item.current,.nav-item:hover{background:#3a241a;color:#ffbc8e}.nav-underline{display:none}
.header-aside{padding:0;border:0}.portal-link{display:inline-flex;align-items:center;gap:17px;padding:13px 17px;border:1px solid #77614d;color:#f5dcc4;font-size:10px;font-weight:700;letter-spacing:.14em;border-radius:3px;transition:background .2s,border-color .2s}.portal-link:hover{background:#43281c;border-color:#ff8c4c}.portal-link span{color:#ff9b5d;font-size:17px;letter-spacing:0}
.btn{border-radius:4px;min-height:54px;padding:17px 21px;box-shadow:inset 0 1px 0 #fff2}.btn-hot{background:linear-gradient(110deg,#ff9b55,#f46a27);box-shadow:0 12px 38px #ff76272d}.btn-hot:hover{background:linear-gradient(110deg,#ffb06d,#ff8142)}
.text-link,.inline-arrow{color:#f2ede6}.text-link:hover,.inline-arrow:hover{color:#ffb777}
/* Atmosphere and hero */
.hero-home{background:radial-gradient(ellipse at 81% 30%,#39241b 0%,#191510 26%,transparent 60%),radial-gradient(circle at 20% 0%,#2a1b14 0%,transparent 44%),#0d0f0e}
.hero-home:before{left:6.2%;background:#ee95571b}
.hero-ambient{background:radial-gradient(ellipse at 75% 30%,#df6e2a16,transparent 42%),linear-gradient(90deg,#080a0ab0 0,transparent 72%)}
.hero-layout{grid-template-columns:47% 53%;min-height:670px;padding-block:84px 78px;gap:0}
.hero-copy{padding-right:8px}
.tiny-index{font-size:10px;color:#ffb57f;letter-spacing:.14em}
.hero-copy h1{font-size:clamp(82px,9.6vw,144px);line-height:.82;white-space:nowrap;letter-spacing:-.015em;margin:36px 0 26px;text-shadow:0 9px 45px #0007}
.hero-copy h1>span{color:#ff8240}.hero-copy h1 i{color:transparent;-webkit-text-stroke:1px #e8733c}
.hero-copy>p{font-size:16px;line-height:1.82;max-width:455px;margin:26px 0 0;color:#d0c5b8}
.hero-ctas{margin-top:30px;gap:27px}
.hero-bottomline{margin-top:56px;border-color:#6f4b3661;color:#999085;font-size:10px}
.hero-stage{height:564px;margin-left:12px;clip-path:none;border:1px solid #d38c5a45;border-radius:10px;overflow:hidden;background:#111516;box-shadow:0 36px 110px #000b,0 0 100px #ff76261a;isolation:isolate}
.hero-stage:before{inset:9px;clip-path:none;border-radius:5px;border-color:#fff1;pointer-events:none}
.stage-screen>img{filter:contrast(1.12) saturate(.84) brightness(.74)}
.stage-screen:after{background:linear-gradient(0deg,#0c1110 2%,#0b0d0b45 42%,#0a0b0a14 74%),linear-gradient(90deg,#07090949,transparent 75%)}
.stage-scanlines{opacity:.08}.stage-crosshair{opacity:.35}
.stage-marks{top:25px;left:6%;right:6%;color:#e6e1da;font-size:9px;letter-spacing:.16em}
.stage-name{bottom:124px;left:7%;gap:12px;max-width:88%}
.stage-name small{letter-spacing:.15em;font-size:10px;text-transform:uppercase;color:#ffbd87}
.stage-name strong{font-size:clamp(62px,6.7vw,112px);line-height:.84;letter-spacing:-.01em;overflow-wrap:anywhere}
.stage-control{min-height:91px;padding:17px 24px;background:#0d1011ef;border-top:1px solid #9a725643;letter-spacing:.12em}
.world-switch button{padding:13px 17px;border-radius:3px;border-color:#514a46;font-size:11px}.world-switch button.active{background:#ff8a43;border-color:#ff8a43}.world-switch button:hover{border-color:#ffba84}
.hero-rail{background:#16130f;border-color:#63432c70}.hero-rail .wrap{height:57px;font-size:10px;letter-spacing:.16em;color:#bcb0a2}
.hero-rail a{font-size:10px;color:#ffae76}
/* Project showcase */
.world-section{background:linear-gradient(180deg,#0c0e0d,#0e100f);padding-block:113px 130px}
.section-label,.page-serial{color:#ff9b60;font-size:10px;letter-spacing:.18em}
.section-top{margin-bottom:45px;align-items:end;gap:30px}
.section-top h2{font-size:clamp(72px,8.3vw,128px);line-height:.79}
.section-top>p{max-width:340px;color:#bcb6ac;font-size:15px;line-height:1.85;margin-bottom:6px}
.world-stack{display:flex;flex-direction:column;gap:22px}
.world-card{border-radius:10px;overflow:hidden;border:1px solid #73624e5c;box-shadow:0 28px 55px #0005;min-height:400px;transition:transform .3s,border-color .3s,box-shadow .3s}
.world-card:hover{transform:translateY(-4px);box-shadow:0 34px 75px #0009;border-color:#d99e7866}
.world-card .world-art{overflow:hidden}
.world-art img{filter:contrast(1.11) saturate(.78) brightness(.84)!important;transition:transform .8s ease,filter .8s ease}.world-card:hover .world-art img{transform:scale(1.06)}
.world-information{padding:42px 45px 30px!important;background:radial-gradient(circle at 84% 20%,#2631213d,transparent 43%),#161b19}
.world-card.loot-world .world-information{background:radial-gradient(circle at 84% 15%,#24404456,transparent 48%),#141b1c}
.world-card .world-top{font-size:10px;color:#c1c9c5;letter-spacing:.13em}.world-pulse{padding:7px 9px;border:1px solid #ffffff22;border-radius:3px;color:#e0e8df}
.world-title-group{margin-block:40px 30px}.world-title-group h3{font-size:clamp(64px,6vw,98px);line-height:.79;margin:14px 0 20px;letter-spacing:-.015em}
.world-title-group p{color:#c5cbc7;font-size:15px;line-height:1.8;max-width:390px}
.world-foot{border-top:1px solid #ddd2c72b;padding-top:19px;color:#bcbdb7;font-size:10px}
.circle-arrow{background:#ffffff09;border:1px solid #ffffff40;border-radius:50%;padding:7px;color:#e8efe9;font-size:21px}
.concept-note{color:#ada398;line-height:1.75;font-size:10px;letter-spacing:.1em;margin-top:8px}
/* Purpose and people, pared back editorial layout */
.manifesto{border-top:1px solid #4e3829;background:radial-gradient(ellipse at 22% 50%,#70391d43,transparent 44%),linear-gradient(110deg,#1e1915,#151718)}
.manifesto-inner{gap:70px;min-height:530px}.manifesto-brand img{filter:drop-shadow(0 0 44px #fc672d55);opacity:.92;max-width:340px;margin:auto}.manifesto-brand span{color:#d0ad8e}
.manifesto h2{font-size:clamp(79px,8.6vw,140px);line-height:.83}.manifesto-copy p{font-size:16px;line-height:1.9;color:#d0c4b6;max-width:500px}
.people-teaser{background:radial-gradient(circle at 75% 50%,#b8582517,transparent 43%),#0b0e0e}
.people-teaser-inner{min-height:460px;padding-block:74px;gap:50px}.people-teaser h2{font-size:clamp(70px,7.6vw,112px);line-height:.85;margin:21px 0}.people-teaser-left p{color:#bdb8af;font-size:15px}
.people-teaser-right{height:290px}.people-teaser-right img{max-width:235px;opacity:.74}
.end-banner{background:linear-gradient(100deg,#fb8a3a,#ef6024);color:#160e08}.end-banner .wrap{min-height:95px}.end-banner a{color:#160e08}
/* Secondary pages / keep good storytelling but improve visual rhythm */
.interior-hero{background:radial-gradient(ellipse at 82% 18%,#6433214a,transparent 49%),#121514;border-bottom:1px solid #503d2e}
.interior-hero .wrap{position:relative;z-index:2}.interior-hero h1{font-size:clamp(78px,10vw,155px);line-height:.82;letter-spacing:-.012em}.interior-hero p{font-size:17px;line-height:1.75;color:#c9c3b9;max-width:640px}
.games-collection{padding-block:80px 115px}.game-feature{overflow:hidden;border:1px solid #564b42;border-radius:10px;background:#171a19;box-shadow:0 25px 50px #0006;transition:transform .22s,border-color .22s}.game-feature:hover{border-color:#cc885d;transform:translateY(-4px)}
.game-feature-image img{filter:brightness(.87) saturate(.84)}.game-feature-copy{background:radial-gradient(circle at 100% 0%,#ff86221b,transparent 52%),#171a19}.game-feature.loot-world .game-feature-copy{background:radial-gradient(circle at 100% 0%,#4ab7cc1c,transparent 52%),#141a1c}
.game-feature-copy h2{font-size:clamp(64px,7vw,110px);line-height:.82}.game-feature-copy p{font-size:15px;color:#c8c6bf;line-height:1.85}.game-read{color:#ffbb86}
/* game detail remains CMS-generated */
.project-detail{background:#121715}.detail-backdrop img{filter:brightness(.68) saturate(.82)}.detail-vignette{background:linear-gradient(0deg,#0d100f 0%,#0d100f22 65%),linear-gradient(90deg,#0d100fce,transparent 77%)}
.detail-hero h1{font-size:clamp(80px,11vw,176px);line-height:.79;max-width:970px}.detail-intro{color:#e8ddd1;font-size:20px}
.detail-kicker{color:#f1d4bb}.detail-tags span{border:1px solid #ffffff39;background:#17191ac2;border-radius:4px}
.project-story{padding-block:100px}.story-text p{color:#c9c6bd;line-height:1.9;font-size:16px}.game-extra-features li{font-size:14px;color:#d1d2ce}
.next-project{background:#201913}
/* studio */
.about-editorial{padding-block:120px 85px}.editorial-top h2{font-size:clamp(74px,8.4vw,128px)}.editorial-top p{font-size:17px;color:#c7c3bb;line-height:1.85}
.value-grid{border-top:1px solid #42352d}.value{border-color:#42352d}.value h3{font-size:clamp(53px,5vw,82px)}.value p{color:#c5beb4;font-size:14px;line-height:1.8}
.team-bridge{border-color:#463a32;padding-block:90px}.team-bridge h2{font-size:clamp(68px,8vw,120px)}.team-bridge p{font-size:16px;color:#c8c1b7}
.studio-tail{background:radial-gradient(circle at 80% 50%,#983e1f39,transparent 45%),#1d1713}.studio-tail h2{font-size:clamp(76px,9.1vw,140px)}
/* team roster: compact circles and readable identity */
.team-hero,.team-hero-content{min-height:445px}.team-hero{background:radial-gradient(circle at 80% 35%,#ab482e33,transparent 36%),#101312}.team-hero h1{font-size:clamp(76px,9.6vw,135px)}.team-hero p{font-size:16px;color:#c8bcb1}.team-hero-mark{height:380px}.team-directory{padding-block:85px 115px;min-height:560px}.team-section-heading h2{font-size:clamp(78px,8vw,128px)}.team-section-heading p{font-size:15px;color:#c6bdb3}
.team-roster{gap:16px}.member-card{background:#161917;border:1px solid #47443d;border-radius:12px;padding:24px;gap:20px;min-height:152px}.member-card:hover{border-color:#c67e52;background:#1e1e1a}.member-portrait{width:88px;height:88px;flex-basis:88px;border:2px solid #d1834b;border-radius:50%;box-shadow:0 0 0 6px #ff87300a}.member-name{font-size:clamp(24px,2.2vw,32px);line-height:1}.member-role{font-size:11px;color:#ffb783}.member-bio{color:#c1beb6;font-size:14px;line-height:1.75}.member-socials a{color:#fac39b}
.team-empty{border-radius:12px;background:#161714;border-color:#51463a;min-height:250px}.team-empty-symbol{height:150px}.team-empty h3{font-size:clamp(50px,6.3vw,90px)}.team-empty p{color:#c1bdb3}
.team-cta{background:#1b1714}
/* contact experience */
.contact-content{padding-block:103px 130px;gap:80px}.contact-left h2{font-size:clamp(70px,7vw,110px)}.contact-left>p{font-size:16px;color:#c6c0b6;line-height:1.85}
.contact-disclaimer{background:#181b19;border:1px solid #71604f;padding:20px;border-radius:8px;color:#c7bdae;line-height:1.75;letter-spacing:.04em;font-size:12px}.contact-disclaimer .status-dot{background:#ffa568}
.contact-form{background:#171a19;border:1px solid #5a4b3f;border-radius:12px;box-shadow:0 25px 90px #0006;padding:45px;gap:26px}.form-field{letter-spacing:.13em;font-size:10px;color:#f4ba8c}.form-field input,.form-field select,.form-field textarea{background:#0d1010;color:#fff1e9;border:1px solid #69635b;border-radius:5px;padding:16px;font-size:15px}.form-field input::placeholder,.form-field textarea::placeholder{color:#888b85}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#ffb06e;outline-color:#ffb06e}.form-bottom p{color:#bfbab0;line-height:1.65}
/* coherent footer */
.footer{background:#0b0d0d;border-top:1px solid #553c2b}.footer-top{min-height:170px;border-color:#3d3c35}.footer-brand img{filter:drop-shadow(0 0 17px #f57c363c)}.footer-note{color:#a9a39b;font-size:10px}.footer-links a{font-size:11px;color:#ddd3c7}.footer-links a:hover{color:#ffb37b}.footer-bottom{font-size:10px;letter-spacing:.12em;color:#a09c95}
/* animation safeguards */
@media(prefers-reduced-motion:reduce){.world-card,.game-feature{transform:none!important}}
@media(max-width:1200px){.wrap{width:min(calc(100% - 64px),1320px)}.header-wrap{width:calc(100% - 54px)}.nav{gap:1px;padding:6px}.nav-item{padding:12px 12px}.hero-layout{min-height:620px;grid-template-columns:48% 52%}.hero-copy h1{font-size:clamp(74px,9.5vw,112px)}.hero-stage{height:525px}.stage-control{padding:14px 16px}.world-switch button span{display:none}.world-information{padding:30px!important}.world-title-group h3{font-size:clamp(61px,7vw,91px)}}
@media(max-width:900px){.header{height:72px}.header-wrap{width:calc(100% - 36px);display:flex;gap:12px}.brand{margin-right:auto}.brand img{width:46px;height:46px}.brand-lettering b{font-size:25px}.nav{position:absolute;top:72px;left:0;right:0;border-radius:0;padding:18px;background:#101313;gap:4px;border:1px solid #4b3c30;box-shadow:0 20px 40px #000a;height:auto;display:none;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav-item{padding:16px 18px;border-radius:5px;width:100%;font-size:12px}.header-aside{margin-right:2px}.portal-link{padding:10px 13px;font-size:9px}.menu-button{display:flex;border-radius:3px;border-color:#7d6250}.hero-layout{display:grid;grid-template-columns:1fr;min-height:0;padding-block:64px 64px;gap:52px}.hero-copy h1{font-size:clamp(86px,14vw,140px)}.hero-copy>p{max-width:640px}.hero-stage{margin-left:0;height:480px;width:100%}.hero-bottomline{max-width:650px}.stage-name strong{font-size:90px}.world-section{padding-block:90px}.manifesto-inner{gap:40px}.manifesto-brand img{max-width:250px}.team-hero-content{grid-template-columns:1fr .32fr}.team-hero-mark{opacity:.55}.team-roster{grid-template-columns:1fr}.contact-content{gap:38px}.footer-links{gap:20px}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}.header-wrap{width:calc(100% - 28px)}.brand img{width:43px;height:43px}.brand-lettering b{font-size:23px}.brand-lettering small{font-size:7px}.header-aside{margin-left:auto}.portal-link{font-size:0;padding:9px 10px;gap:0}.portal-link span{font-size:17px}.menu-button{width:42px;height:43px}.hero-layout{padding-block:60px 52px;gap:41px}.tiny-index{font-size:9px;letter-spacing:.08em;white-space:normal}.midline{display:none}.hero-copy h1{font-size:clamp(66px,17vw,95px);line-height:.85;margin:24px 0}.hero-copy>p{font-size:15px;line-height:1.75;margin-top:24px}.hero-ctas{gap:19px;align-items:flex-start}.hero-ctas .btn{padding:15px 16px;min-height:50px;font-size:9px}.hero-bottomline{margin-top:35px;flex-wrap:wrap}.hero-stage{height:390px;border-radius:7px}.stage-marks{font-size:7px;top:22px}.stage-marks span:nth-child(2){display:none}.stage-name{bottom:126px;left:6%}.stage-name strong{font-size:clamp(56px,13.5vw,90px)}.stage-name small{font-size:8px}.stage-control{min-height:103px;padding:14px 16px;flex-direction:column;justify-content:center;align-items:stretch}.stage-control>span{font-size:8px}.world-switch{width:100%}.world-switch button{flex:1;padding:11px 8px}.hero-rail .wrap{gap:9px;font-size:8px;height:51px}.hero-rail .wrap span:nth-of-type(3){display:none}.hero-rail a{font-size:8px}.section-top{display:block;margin-bottom:30px}.section-top h2{font-size:clamp(74px,16vw,110px)}.section-top>p{font-size:14px;max-width:360px;margin:21px 0 0}.world-card{border-radius:7px}.world-information{padding:24px!important}.world-title-group{margin:28px 0}.world-title-group h3{font-size:clamp(54px,13vw,86px)}.world-title-group p{font-size:14px}.world-top{flex-wrap:wrap;gap:10px}.manifesto-inner{display:block;padding-block:65px}.manifesto-brand{max-width:230px;margin:auto auto 30px}.manifesto h2{font-size:clamp(70px,14vw,105px)}.manifesto-copy p{font-size:15px}.people-teaser-inner{padding-block:65px}.people-teaser h2{font-size:clamp(70px,13vw,95px)}.people-teaser-right{height:180px}.people-teaser-right img{max-width:155px}.end-banner .wrap{min-height:110px}.interior-hero h1{font-size:clamp(78px,16vw,115px)}.interior-hero p{font-size:15px}.games-collection{padding-block:70px 95px}.game-feature-copy h2{font-size:clamp(65px,15vw,95px)}.detail-hero h1{font-size:clamp(70px,16vw,116px)}.about-editorial{padding-block:74px 65px}.editorial-top h2{font-size:clamp(67px,13vw,95px)}.editorial-top p{font-size:15px}.team-hero,.team-hero-content{min-height:460px}.team-hero h1{font-size:clamp(70px,14vw,100px)}.team-hero p{font-size:14px}.team-directory{padding-block:70px 85px}.team-section-heading h2{font-size:clamp(70px,14vw,97px)}.member-card{padding:17px;gap:15px;min-height:120px}.member-portrait{width:66px;height:66px;flex-basis:66px}.member-name{font-size:27px}.member-bio{font-size:13px}.team-empty{padding:20px;gap:20px}.contact-content{padding-block:74px 95px}.contact-form{padding:24px 20px}.contact-left h2{font-size:clamp(66px,13vw,96px)}.footer-top{padding-block:36px}.footer-note{font-size:9px}.footer-links{flex-wrap:wrap;gap:16px}.footer-bottom{gap:13px}}
/* Final visual alignment: keep hero lettering entirely within its column. */
@media(min-width:901px){.hero-copy h1{font-size:clamp(76px,7.3vw,108px);max-width:100%;white-space:normal;line-height:.86}.hero-copy{padding-right:18px}.hero-stage{margin-left:0}}

/* Final overflow and responsive typography corrections. */
@media(min-width:901px){.manifesto h2{font-size:clamp(70px,6.55vw,98px)}.contact-left h2{font-size:clamp(68px,6.3vw,94px)}}
@media(max-width:650px){.hero-copy h1{white-space:normal;max-width:100%;overflow-wrap:normal;font-size:clamp(64px,16.5vw,86px)}.manifesto h2{font-size:clamp(56px,12vw,80px);overflow-wrap:anywhere}.contact-left h2{font-size:clamp(66px,13vw,90px)}}
@media(min-width:901px){.contact-content{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:65px}.contact-form,.contact-left{min-width:0}}

/* Cloudflare public launch additions */
.public-state {font-family:var(--font-body, sans-serif);font-size:10px;color:#bcb2a5;letter-spacing:.12em;white-space:nowrap} 
.direct-email {grid-column:1/-1;text-align:center;color:#b7ada2;font-size:14px;margin:24px auto 0}.direct-email a {color:#fb8e46;text-decoration:underline;text-underline-offset:4px}
@media(max-width:850px){.public-state{display:none}}
