:root{--brown:#6b4423;--ochre:#c9a46a;--olive:#46501a;--olive-d:#232a0e;--cream:#dfdcc8;--paper:#d8cba0;--ink:#2c2a1a;--font:"Archivo", system-ui, sans-serif;--ease:cubic-bezier(.65, .05, 0, 1)}*{box-sizing:border-box;margin:0}html{font-family:var(--font);background:var(--brown);color:var(--cream)}body{min-height:100vh;overflow-x:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}[hidden]{display:none!important}h1,h2,.card-title,.blob,.skip{text-transform:uppercase;font-weight:800;font-stretch:125%}.kick{letter-spacing:.5em;text-shadow:1px 1px 0 var(--olive-d);font-size:clamp(.8rem,1.1vw,1.1rem);font-weight:700}.img{background:var(--ochre) center / cover no-repeat}.frame{z-index:30;pointer-events:none;border:clamp(12px, 2vw, 30px) solid var(--brown);filter:url(#rough);position:fixed;inset:0}.logo{text-shadow:0 1px 6px #0007;z-index:20;color:var(--cream);align-items:center;gap:14px;text-decoration:none;display:flex;position:fixed;top:clamp(20px,4vw,44px);left:clamp(20px,4.5vw,60px)}.logo-mark{text-transform:uppercase;text-align:center;border:2px solid;border-radius:50%/60%;padding:10px 12px;font-size:.8rem;font-weight:800;font-stretch:125%;line-height:.95}.logo-mark small,.logo-tour small{letter-spacing:.12em;font-size:.5rem;font-weight:600;display:block}.logo-tour{font-size:1.1rem;font-weight:800;font-stretch:125%;line-height:.95}.round{z-index:20;width:70px;height:40px;color:var(--brown);transition:transform .75s var(--ease);background:radial-gradient(#e3c590,#b98f56);border-radius:50%;font-size:1.5rem;position:fixed;box-shadow:inset 0 0 0 2px #0002}.round:hover{transform:scale(1.08)rotate(-3deg)}.sound{bottom:28px;left:24px}.menu-btn{place-content:center;gap:4px;width:112px;display:grid;top:36px;right:40px}.menu-btn i{background:var(--brown);border-radius:2px;width:24px;height:4px;display:block}.sound[aria-pressed=true]{opacity:.55}.blob{background:var(--cream);color:var(--ink);clip-path:polygon(3% 20%,0 50%,3% 80%,12% 100%,88% 100%,97% 80%,100% 50%,97% 20%,88% 0,12% 0);transition:transform .75s var(--ease), background .75s var(--ease);text-transform:none;border-radius:40%/60%;padding:1.1em 2.4em;font-size:1.05rem;font-weight:700;font-stretch:100%;position:relative}.blob:hover{background:#fff8dc;transform:translateY(-3px)rotate(-1.5deg)}.blob.small{background:var(--olive);color:var(--cream);padding:.8em 1.8em;font-size:.95rem}.gate{z-index:10;background:var(--brown);position:fixed;inset:0;overflow:hidden}.gate-bg{position:absolute;inset:-3%}.start{font-size:1.15rem;position:absolute;bottom:14%;left:50%;translate:-50%}.hint{text-align:center;text-shadow:0 1px 4px #0008;width:min(90%,360px);font-size:clamp(.8rem,1vw,1rem);font-weight:700;position:absolute;bottom:5%;left:50%;translate:-50%}.gate-intro{pointer-events:none;place-items:center;padding-bottom:12vh;display:grid;position:absolute;inset:0}.intro-card{aspect-ratio:1040/420;background:var(--olive);text-align:center;clip-path:polygon(0 4%,100% 0,100% 96%,0 100%);border-radius:1.4rem;align-content:center;justify-items:center;gap:.6rem;width:min(72vw,1040px);padding:1.5rem;display:grid}.intro-card h1{text-align:left;color:var(--cream);text-shadow:4px 4px 0 var(--olive-d);font-size:clamp(2.2rem,7.4vw,6.4rem);line-height:.92}.intro-card h1 span{padding-left:12%;display:block}.intro-card p{font-weight:600}.journey{position:relative}.stage{background:var(--brown);height:100vh;position:relative;overflow:hidden}.scene{opacity:0;position:absolute;inset:0}.scene:first-child{opacity:1}.bg{will-change:transform;position:absolute;inset:-4%}.chapter{z-index:5;pointer-events:none;position:absolute;bottom:clamp(70px,12vh,130px);left:clamp(28px,6vw,90px)}.ch-name{color:var(--cream);text-shadow:4px 4px 0 var(--olive-d);font-size:clamp(2rem,6.6vw,6rem);line-height:.95}.rail{z-index:5;background:#0004;border-radius:3px;width:min(46vw,460px);height:6px;position:absolute;bottom:36px;left:50%;translate:-50%}.rail-fill{background:var(--cream);transform-origin:0;border-radius:3px;position:absolute;inset:0;transform:scaleX(0)}.join{z-index:6;position:absolute;bottom:clamp(60px,10vh,100px);right:clamp(24px,6vw,90px)}.spot{z-index:4;left:var(--x);top:var(--y);background:#dfdcc8cc;border-radius:50%;width:54px;height:54px;position:absolute;transform:translate(-50%,-50%)}.spot:before{content:"+";height:100%;color:var(--olive);place-items:center;font-size:1.8rem;font-weight:800;display:grid}.spot:after{content:"";border:2px solid var(--cream);border-radius:50%;animation:2s ease-out infinite pulse;position:absolute;inset:0}@keyframes pulse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.9)}}.overlay{z-index:50;background:linear-gradient(#46501ae6,#46501ae6),url(../img/pouch-pattern.webp) 50%/260px;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow:auto}.paper-card{background:var(--paper) url(../img/paper.webp) center / 300px;background-blend-mode:multiply;width:min(92vw,900px);color:var(--olive);transform:rotate(-1.4deg);box-shadow:0 30px 60px #0005}.paper-card.wide{grid-template-rows:auto 1fr auto;width:min(92vw,1100px);min-height:min(86vh,760px);display:grid}.form-grid{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(20px,4vw,56px);width:100%;display:grid}.legal{gap:.8rem;font-size:.72rem;font-weight:500;line-height:1.35;display:grid}.yn{gap:8px;display:flex}.yn span{background:#fff6;border:2px solid #46501a66;border-radius:.7rem;padding:.35em 1.4em;font-weight:700}.opt{margin-bottom:-6px;font-size:.75rem;font-weight:700}.cc{max-width:110px}.strip{background:var(--ink) radial-gradient(circle, var(--cream) 2px, transparent 2.5px) 0 50% / 36px 100%;border-block:6px double var(--cream);height:54px;position:relative}.strip:before{content:"";opacity:.22;mix-blend-mode:screen;background:url(../img/pouch-pattern.webp) 50%/90px;position:absolute;inset:0}.card-body{justify-items:start;gap:1rem;padding:clamp(24px,5vw,56px);display:grid}.card-title{color:var(--olive);text-shadow:3px 3px #0002;font-size:clamp(1.6rem,4vw,3rem);line-height:.95}.card-title.big{font-size:clamp(2rem,5vw,3.6rem)}.card-text{max-width:46ch;font-weight:500}.card-pouch{aspect-ratio:1;background:var(--cream);object-fit:cover;border-radius:1rem;width:160px;height:160px}.fields{grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:520px;display:grid}.fields .full{grid-column:1/-1}.fields input:not([type=checkbox]){font:inherit;color:var(--ink);background:#fff6;border:2px solid #46501a66;border-radius:1rem 1.4rem 1rem 1.2rem;width:100%;padding:.9em 1em}.check{align-items:center;gap:.6rem;font-size:.85rem;display:flex}.skip{color:var(--olive);justify-self:center;font-size:1.1rem}.menu ol{counter-reset:c;gap:.4rem;padding:0;list-style:none;display:grid}.menu li button{text-transform:uppercase;color:var(--cream);text-shadow:3px 3px 0 var(--olive-d);font-size:clamp(1.6rem,5vw,3.6rem);font-weight:800;font-stretch:125%}.menu li button:hover{color:#fff8dc;letter-spacing:.02em;transition:letter-spacing .75s var(--ease)}.menu li small{letter-spacing:.3em;margin-right:1em;font-size:.35em}.menu-open .menu-btn{z-index:60}@media (width<=800px){.menu-btn{width:84px;top:24px;right:20px}.logo-tour{font-size:.9rem}.intro-card{aspect-ratio:auto;width:90vw;padding:2.2rem 1rem}.form-grid{grid-template-columns:1fr}.cc{max-width:none}.join{bottom:74px;right:50%;translate:50%}.chapter{bottom:150px}}@media (prefers-reduced-motion:reduce){.spot:after{animation:none}*{transition-duration:.01ms!important}}.card-open .menu-btn,.card-open .sound{visibility:hidden}
