/* Layered forest scene, isolated foreground figure, and expansive desktop cards. */
body.atmosphere{background:#101c1e url('/assets/haunted-forest.webp') center top/cover fixed}
.atmosphere.grain::before{display:none}
.atmosphere section{position:relative;background:linear-gradient(90deg,#081518d9,#142528b8,#081518df);border-color:#95bbb52e}
.atmosphere #tours{background:linear-gradient(180deg,#0b1a1de6,#102528af 45%,#0e2025db)}
.atmosphere .hero{isolation:isolate;overflow:hidden;background:#13282b;min-height:92svh;--drift-x:0px;--drift-y:0px}
.atmosphere .hero-bg{z-index:0;inset:-24px;background-image:url('/assets/haunted-forest.webp');background-size:cover;background-position:center;transform:translate(calc(var(--drift-x) * -.3),calc(var(--drift-y) * -.3)) scale(1.035);transition:transform .25s ease-out;filter:brightness(.8)}
.atmosphere .hero::after{z-index:3;pointer-events:none;background:linear-gradient(90deg,#061216c4,transparent 72%),linear-gradient(0deg,#0b1a1d,transparent 26%)}
.hero-portal{position:absolute;inset:145px 5vw 54px 51%;border:1px solid #bad9d342;z-index:1;transform:rotate(-3deg);box-shadow:0 0 65px #b5edda15,inset 0 0 65px #b5edda12;pointer-events:none}
.hero-figure{position:absolute;z-index:2;right:2vw;top:80px;height:calc(100% + 100px);width:52vw;max-width:none;object-fit:contain;object-position:center top;pointer-events:none;transform:translate(var(--drift-x),var(--drift-y));filter:drop-shadow(-24px 20px 24px #00100ecc);transition:transform .25s ease-out;mask-image:linear-gradient(#000 82%,transparent);-webkit-mask-image:linear-gradient(#000 82%,transparent)}
.atmosphere .hero-inner{z-index:4;max-width:none;padding:190px 4vw 110px;margin:0;pointer-events:none}
.atmosphere .hero-inner a{pointer-events:auto}
.atmosphere .hero h1{font-size:clamp(54px,6.5vw,110px);max-width:55%;line-height:1.02}
.atmosphere .hero-sub{max-width:43%;font-size:clamp(20px,1.65vw,27px);color:#ecede4}
.atmosphere .hero-kicker{color:#d4c5a7}
.hero-mist{position:absolute;inset:40% -20% -20%;z-index:3;pointer-events:none;background:radial-gradient(ellipse at 25% 75%,#c4efde35,transparent 48%),radial-gradient(ellipse at 70% 65%,#c1e9e826,transparent 38%);filter:blur(18px);animation:forestMist 18s ease-in-out infinite alternate;mix-blend-mode:screen}
.hero-mist.mist-near{inset:70% -40% -25%;z-index:5;opacity:.65;animation-duration:24s;animation-direction:alternate-reverse}
@keyframes forestMist{from{transform:translate3d(-3%,0,0)}to{transform:translate3d(5%,-4%,0)}}
.atmosphere .hero-scroll,.atmosphere .art-note{z-index:6}
.atmosphere .nav{background:#061214eb;border-color:#bdb89148;backdrop-filter:blur(14px)}
.atmosphere .tour-card{background:linear-gradient(140deg,#102224f5,#081316f5);border-color:#96b4a960;box-shadow:0 16px 50px #0007;transition:transform .25s,border-color .25s,box-shadow .25s}
.atmosphere .tour-card:hover{border-color:#c2b995;box-shadow:0 20px 65px #0009,0 0 24px #bedfc01c;transform:translateY(-5px)}
.atmosphere .tour-card .poster::after{background:linear-gradient(0deg,#102224,transparent 40%)}
.atmosphere .tour-card .poster img{filter:saturate(.85);transition:transform .7s}
.atmosphere .sec-kicker{color:#d4ba94}
.atmosphere .sec-title{color:#f2ebd9;text-shadow:0 3px 24px #0009}
.atmosphere .sec-sub{color:#e0e6da}
.atmosphere .tour-city{color:#b9d6cc}
.atmosphere .btn-red{background:linear-gradient(135deg,#b34632,#7e2424);border-color:#da8b6866;box-shadow:0 6px 24px #6c211b33}
.atmosphere .btn-red:hover{background:linear-gradient(135deg,#cc5339,#a6332c);box-shadow:0 5px 28px #e26e442e;animation:none}
.atmosphere .btn-ghost:hover{animation:none}
.atmosphere .book-sec{background:radial-gradient(ellipse at 20% 50%,#b7773533,transparent 65%),linear-gradient(90deg,#0b1a1cf5,#172a2bdb);border-block:1px solid #c0b18150}
.atmosphere .book-cover-wrap img{box-shadow:-18px 24px 48px #0009,0 0 70px #c5974940}
.atmosphere .discovery-card{background:linear-gradient(130deg,#1c3836eb,#0b1b21eb);border-color:#9cbaa158}
.atmosphere .faq-list{background:#0b2024e8;border-color:#7ba39c5c}
.atmosphere footer{background:linear-gradient(180deg,#0b1e22ec,#091519f5);border-top:1px solid #9ab9a456}
@media(min-width:761px){
 .atmosphere section{padding:72px 3vw}
 .atmosphere #tours>.wrap,.atmosphere .tours-grid{max-width:none;width:100%}
 .atmosphere .tours-grid{gap:28px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:38px}
 .atmosphere #tours .sec-title{font-size:clamp(42px,4vw,70px)}
 .atmosphere .tour-card .poster{aspect-ratio:16/9}
 .atmosphere .tour-body{padding:clamp(24px,2.5vw,44px)}
 .atmosphere .tour-name{font-size:clamp(28px,2.7vw,46px)}
 .atmosphere .tour-city{font-size:13px;margin-bottom:12px}
 .atmosphere .tour-meta{margin-bottom:18px}
 .atmosphere .tour-meta .chip{font-size:15px;padding:10px 14px}
 .atmosphere .tour-desc{font-size:clamp(20px,1.7vw,27px);margin-bottom:28px}
 .atmosphere .card-btns .btn{font-size:17px;padding:18px 14px}
 .atmosphere .book-grid{max-width:1180px;grid-template-columns:260px minmax(0,1fr);gap:70px}
 .atmosphere .book-copy .sec-title{font-size:clamp(36px,4vw,58px)}
 .atmosphere .book-copy .book-pitch{font-size:23px}
 .atmosphere .discovery-grid{max-width:none}
 .atmosphere #discover .wrap{max-width:none}
 .atmosphere .discovery-card{padding:36px}
}
@media(max-width:760px){
 body.atmosphere{background-attachment:scroll;background-size:auto 1500px;background-repeat:repeat-y}
 .atmosphere .hero{min-height:0}
 .atmosphere .hero-bg{background-size:auto 720px;background-position:center top;filter:brightness(.72);transform:none;inset:0}
 .hero-figure{width:330px;max-width:95vw;height:auto;right:calc(50% - 165px);top:60px;transform:none;filter:drop-shadow(-12px 12px 18px #00100e99)}
 .hero-portal{inset:115px 12% auto;height:280px;transform:rotate(-4deg)}
 .atmosphere .hero-inner{padding:290px 20px 46px;text-align:center;max-width:none}
 .atmosphere .hero h1{max-width:none;font-size:clamp(36px,9vw,56px)}
 .atmosphere .hero-sub{max-width:470px;font-size:18px}
 .atmosphere .hero::after{background:linear-gradient(0deg,#0b1a1d 0%,#0b1a1deb 32%,#08161950 58%,transparent 85%)}
 .atmosphere .tour-card:hover{transform:none}
 .hero-mist{animation:none;filter:blur(12px)}
 .atmosphere .hero-kicker{font-size:10px}
 .atmosphere .mobile-book{background:#112326}
}
@media(max-width:350px){.hero-figure{right:2.5vw}.atmosphere .hero-inner{padding-top:265px}}
@media(prefers-reduced-motion:reduce){.hero-mist{animation:none}.atmosphere .hero-bg,.hero-figure{transform:none!important;transition:none}}
/* Reaching foreground and selective scenery. No decorative frame. */
body.atmosphere{background:#080a0b}
.hero-portal{display:none}
.atmosphere section,.atmosphere #tours,.atmosphere #reviews,.atmosphere #faq{background:#080a0b}
.atmosphere .tour-card{background:#111617;border-color:#5a67634d}
.atmosphere .tour-card .poster::after{background:linear-gradient(0deg,#111617,transparent 40%)}
.atmosphere .book-sec{background:radial-gradient(ellipse at 22% 50%,#814c252b,transparent 65%),#131112;border-block:1px solid #ad815d35}
.atmosphere #discover{background:linear-gradient(90deg,#071315c7,#0713159c),url('/assets/haunted-forest.webp') center/cover fixed;border-block:1px solid #77928640}
.atmosphere .discovery-card{background:#0a151be3}
.atmosphere .faq-list{background:#101415;border-color:#5b696343}
.atmosphere footer{background:#050708;border-color:#63675442}
.atmosphere .hero::after{background:linear-gradient(90deg,#061216c4,transparent 72%),linear-gradient(0deg,#080a0b,transparent 26%)}
.hero-figure{z-index:5;width:64vw;height:auto;max-width:none;right:-2vw;top:125px;object-fit:contain;filter:drop-shadow(-20px 24px 18px #0009);mask-image:linear-gradient(#000 77%,transparent 99%);-webkit-mask-image:linear-gradient(#000 77%,transparent 99%);transform:perspective(1200px) translate3d(var(--drift-x),var(--drift-y),0) rotateY(var(--turn-y,0deg));transform-origin:78% 35%}
.atmosphere .hero h1{max-width:51%;font-size:clamp(54px,6.1vw,104px)}
.atmosphere .hero-ctas{max-width:44%;position:relative;z-index:7}
@media(min-width:761px) and (max-width:1100px){.hero-figure{width:62vw;top:145px;right:-3vw}.atmosphere .hero h1{font-size:clamp(46px,6.1vw,67px)}.atmosphere .hero-ctas{max-width:46%}.atmosphere .hero-ctas .btn{font-size:13px;padding:14px 22px}}
@media(max-width:760px){
 body.atmosphere{background:#080a0b}
 .hero-figure{width:420px;max-width:none;right:calc(50% - 210px);top:75px;z-index:2;transform:none;filter:drop-shadow(-8px 12px 12px #0008)}
 .atmosphere .hero-inner{padding-top:350px}
 .atmosphere .hero h1{max-width:none;font-size:clamp(36px,9vw,56px)}
 .atmosphere .hero-ctas{max-width:none}
 .atmosphere .hero::after{background:linear-gradient(0deg,#080a0b 0%,#080a0bf0 35%,#08161945 56%,transparent 85%)}
 .atmosphere #discover{background-attachment:scroll}
}
@media(max-width:350px){.hero-figure{width:360px;right:calc(50% - 180px)}.atmosphere .hero-inner{padding-top:310px}}
