*{box-sizing:border-box}html{background:#163e38;scrollbar-width:none}html::-webkit-scrollbar{display:none}body{margin:0;color:#e7edb5;font-family:Arial,Helvetica,sans-serif}#journey{height:650vh}.stage{height:100svh;position:sticky;top:0;overflow:hidden;background:linear-gradient(115deg,#1d4941,#12372f)}.intro{position:absolute;inset:0;background:linear-gradient(#0a302a55,#0a302a55),url('assets/new/intro.jpg') center/cover}.intro-title{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;color:#e7edb5;font-size:8.2vw;line-height:.95;font-weight:600;pointer-events:none;opacity:0}.intro-title i{font-family:'Times New Roman',serif;font-weight:400;font-size:.85em;margin-bottom:.15em}header{position:absolute;left:7.5%;top:6.8%;width:88%;z-index:3;opacity:0;will-change:transform,opacity}.rule{height:3px;width:4.1vw;background:#e7edb5;margin-bottom:2.7vh}h1{margin:0;font-size:8.2vw;line-height:1.16;letter-spacing:-.035em;font-weight:600;white-space:nowrap}h1 i{font-family:'Times New Roman',serif;font-weight:400;font-size:1.05em;letter-spacing:-.06em;margin-right:.04em}header p{font-size:1.6vw;line-height:1.48;margin:3.6vh 0 0;color:#e7e7d9}.cards{position:absolute;inset:0;perspective:1300px;pointer-events:none}.card{position:absolute;object-fit:cover;border-radius:1.35vw;box-shadow:0 24px 40px #061d1a66;will-change:transform,width,height,left,top;transform-origin:center;opacity:0}.stories{position:absolute;inset:0;pointer-events:none}article{position:absolute;left:53.5%;right:3%;top:51%;text-align:right;opacity:0;will-change:transform,opacity;color:#f0eddf;pointer-events:none}.season{text-transform:uppercase;letter-spacing:.27em;font-size:.98vw;color:#b6c8a7;margin-bottom:2.3vh}h2{font-size:2.65vw;line-height:1.16;letter-spacing:-.035em;font-weight:600;margin:0}article h2{border-bottom:1px solid #c7d6b34d;padding-bottom:2.5vh}article p{font-size:1.43vw;line-height:1.55;margin:3.8vh 0 5.4vh}.apply{border:1px solid #dce8b466;background:#ffffff13;box-shadow:0 15px 25px #061d1a66,inset 0 1px 1px #ecf3c744;color:#f2f0df;font:600 1.2vw Arial;padding:1.95vh 2.1vw;border-radius:100px;cursor:pointer;transition:background .2s,transform .2s}.apply:hover{background:#ffffff2b;transform:translateY(-3px)}.apply:focus-visible,.top:focus-visible{outline:3px solid #e7edb5;outline-offset:5px}.top{position:fixed;right:2px;bottom:7.4vh;width:3.8vw;height:3.8vw;min-width:42px;min-height:42px;border-radius:50%;border:1px solid #fff9;background:#e7edb5;color:#173d35;font:2vw Arial;cursor:pointer;z-index:10;box-shadow:0 16px 30px #061d1a55}dialog{border:1px solid #cddba744;border-radius:20px;background:#1a4239;color:#f0eddf;width:min(540px,90vw);padding:42px;box-shadow:0 25px 90px #061d1a99}dialog::backdrop{background:#071d19bb;backdrop-filter:blur(8px)}dialog h2{font-size:34px}dialog .season{font-size:12px}dialog .apply{font-size:16px;padding:15px 25px}dialog label{display:block;font-size:14px;margin:18px 0}input,textarea{display:block;width:100%;margin-top:7px;padding:10px;border:1px solid #cad8b066;background:#ffffff12;color:inherit;border-radius:7px;font:16px Arial}.close{position:absolute;right:15px;top:10px;border:0;background:none;color:inherit;font-size:30px;cursor:pointer}.notice{font-size:12px;opacity:.7}
@media(max-width:700px){#journey{height:650svh}header{left:7%;top:7%;width:90%}h1{font-size:8.6vw}header p{font-size:3.5vw;margin-top:3vh}.rule{width:10vw;margin-bottom:2vh}article{left:7%;right:7%;top:65%;}article h2{font-size:6vw;padding-bottom:1.6vh}.season{font-size:2.4vw;margin-bottom:1.5vh}article p{font-size:3.6vw;margin:2vh 0 2.5vh}.apply{font-size:3.4vw;padding:1.5vh 5vw}.top{right:10px;bottom:2vh;font-size:25px}.card{border-radius:14px}.intro-title{font-size:10vw}}

/* Opening artwork and typography use the same existing scroll fade. */
.intro::before{content:"";position:absolute;left:36.6%;top:23.6%;width:30.2%;height:54%;border-radius:1.35vw;background:url("assets/new/forest.jpg") center/cover;box-shadow:0 24px 40px #061d1a66}.opening-title{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;color:#e7edb5;font-size:8.2vw;line-height:.95;font-weight:600;pointer-events:none}.opening-title i{font-family:"Times New Roman",serif;font-weight:400;font-size:.85em;margin-bottom:.15em}@media(max-width:700px){.opening-title{font-size:10vw}}
