/* Light, atmosphere and typography. No WebGL, canvas or 3D models. */
.alive-hero{--light-x:75%;--light-y:45%;background:#080d10;isolation:isolate;position:relative}.atmosphere-scene{position:absolute;inset:0;z-index:0;overflow:hidden}.atmosphere-scene>img{position:absolute;inset:-8% -2% -8% auto;width:70%;height:116%;object-fit:cover;object-position:60% 42%;filter:grayscale(.85) brightness(1.3);opacity:.65;mask-image:linear-gradient(90deg,transparent,#000 45%);animation:scene-breathe 18s ease-in-out infinite alternate}.atmosphere-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#080d10 0%,#080d10e0 24%,#080d1040 66%,#080d1000),linear-gradient(0deg,#080d10 0%,transparent 30%,transparent 80%,#080d10b0);pointer-events:none}.scene-light{position:absolute;inset:0;background:radial-gradient(ellipse 30% 100% at var(--light-x) var(--light-y),#81bdd126,#3d81940d 50%,transparent 80%);mix-blend-mode:screen;transition:background .3s;pointer-events:none;z-index:2}.scene-grid{position:absolute;inset:0;background-image:linear-gradient(#b4d9dc08 1px,transparent 1px),linear-gradient(90deg,#b4d9dc08 1px,transparent 1px);background-size:68px 68px;mask-image:linear-gradient(90deg,transparent 40%,#000);z-index:3;opacity:.6}.scene-grain{position:absolute;inset:0;background:repeating-linear-gradient(0deg,#ffffff05 0,#ffffff05 1px,transparent 1px,transparent 4px);opacity:.2;z-index:4;pointer-events:none}.scene-line{position:absolute;right:10%;width:1px;top:0;bottom:0;background:linear-gradient(transparent,#a5d8d659,transparent);z-index:3;opacity:.5}.scene-coordinate{position:absolute;top:30px;right:max(32px,calc((100vw - 1180px)/2));font:8px Consolas,monospace;letter-spacing:.18em;color:#b4c4c5;z-index:5}.alive-hero .compact-intro{padding-top:45px}.alive-hero .compact-intro .eyebrow{display:flex;align-items:center;gap:10px;color:#9ec7c8}.alive-hero .compact-intro .eyebrow:before{content:'';display:block;width:5px;height:5px;background:#acd9d8;box-shadow:0 0 10px #8dbcbc80;border-radius:50%}.alive-hero .compact-intro h1{font-size:42px!important;line-height:1.12!important;max-width:900px;letter-spacing:.015em!important}.alive-hero .compact-intro h1 em{font-size:.93em;color:#bccfca}.alive-hero .compact-intro>p:last-child{color:#aabdbb;font-size:13px;margin-top:20px}.alive-hero .motion-toggle{color:#9db9b5;border-color:#5a777580;opacity:.85;padding-bottom:5px}.compact-games{position:relative}.compact-heading>span{color:#91a9a2;letter-spacing:.16em}.compact-heading h2{font-size:28px}.square-game{position:relative}.square-art{border-color:#52645a;transition:border-color .35s,box-shadow .35s;background:#080d0e}.square-art:after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,#e9d3ac10 48%,transparent 75%);transform:translateX(-120%);transition:transform .8s;pointer-events:none}.square-game:hover .square-art:after,.square-game:focus-visible .square-art:after{transform:translateX(120%)}.square-game:hover .square-art,.square-game:focus-visible .square-art{border-color:#b1c2a3;box-shadow:0 9px 35px #0009}.square-game:hover .square-arrow{background:#dfc9a4;color:#0c1010;border-color:#dfc9a4;transform:rotate(45deg)}.square-arrow{transition:transform .3s,background .3s,color .3s}.square-caption h3{transition:color .3s}.square-game:hover .square-caption h3{color:#d7c4a5}.square-status{background:#0a1111d9;border-color:#81998499}.square-status:before{content:'';display:inline-block;width:4px;height:4px;background:#b8ceae;border-radius:50%;margin-right:6px;vertical-align:middle}.compact-footer{border-top-color:#38504970}.contact-email{position:relative;transition:color .25s}.contact-email:hover{color:#e6dfc9}.compact-page .site-header{background:#080d10ec;backdrop-filter:blur(14px)}.compact-page .site-header nav a:not(.header-discord):not(.nav-feature):after{content:'';position:absolute;bottom:4px;height:1px;left:0;right:0;width:auto;background:#b0c3b8;transform:scaleX(0);transform-origin:left;transition:transform .3s}.compact-page .site-header nav a:hover:after,.compact-page .site-header nav a:focus-visible:after{transform:scaleX(1)}.compact-game-intro{position:relative}.compact-game-intro:before{content:'';position:absolute;inset:0 -20px;z-index:-1;background:radial-gradient(ellipse at 90% 30%,#8b492312,transparent 60%)}.compact-poster{transition:filter .6s;border-color:#80624477;box-shadow:0 20px 50px #0006}.compact-poster:hover{filter:brightness(1.12)}.compact-gallery .gallery-item img{transition:filter .45s,transform .6s}.compact-gallery .gallery-item:hover img{filter:brightness(2.3);transform:scale(1.025)}.compact-details h2{color:#e8ddca}.compact-details strong{color:#e0c29d}.compact-socials>a{transition:opacity .25s,transform .25s}.compact-socials>a:hover{transform:translateY(-2px)}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-paused .scene-light{transition:none}
@keyframes scene-breathe{from{transform:scale(1) translateX(0);opacity:.5}to{transform:scale(1.04) translateX(-.7%);opacity:.7}}
@media(max-width:700px){.alive-hero .compact-intro{padding-top:30px}.alive-hero .compact-intro h1{font-size:29px!important;line-height:1.17!important;max-width:350px}.alive-hero .compact-intro h1 em{font-size:.96em}.alive-hero .compact-intro>p:last-child{font-size:12px;margin-top:18px}.scene-coordinate{display:none}.atmosphere-scene>img{width:110%;opacity:.38;object-position:62% center}.atmosphere-scene:after{background:linear-gradient(90deg,#080d10c9,transparent),linear-gradient(0deg,#080d10,transparent 50%)}.scene-grid{background-size:45px 45px;opacity:.35}.scene-line{right:15%}.scene-light{background:radial-gradient(ellipse at 80% 40%,#81bdd11c,transparent 75%)}.alive-hero .compact-intro .eyebrow{font-size:7px;letter-spacing:.12em}.compact-heading h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.atmosphere-scene>img{animation:none}.scene-light{transition:none}.square-art:after{display:none}}

.dreamfall-intro{min-height:530px}.dreamfall-intro:before{background:radial-gradient(ellipse at 85% 35%,#38678622,transparent 65%)}.dreamfall-intro h1{font-size:52px}.dreamfall-intro h1 em{font-size:.72em;color:#adc8d6}.dreamfall-note{color:#9caeb8!important;font-size:12px!important}.dreamfall-poster{border-color:#405765}@media(max-width:700px){.dreamfall-intro{min-height:0}.dreamfall-intro h1{font-size:39px}.dreamfall-intro .dreamfall-poster{display:block;max-width:230px;justify-self:center}.dreamfall-intro .compact-game-actions{flex-wrap:wrap}.square-caption h3{font-size:16px}}

.square-game[href='/dreamfall.html'] .square-status{top:auto;bottom:13px}.square-game[href='/dreamfall.html'] .square-arrow{bottom:13px}
