@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(../media/fredoka-hebrew-wght-normal.3s27ur73twbyi.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(../media/fredoka-latin-ext-wght-normal.3o5zxxthojjrv.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(../media/fredoka-latin-wght-normal.2_8zey5e0wa7e.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/nunito-sans-cyrillic-ext-wght-normal.2mm6nuo4pcqq4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/nunito-sans-cyrillic-wght-normal.3uvxr1_el9vcs.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/nunito-sans-vietnamese-wght-normal.2mdlfmsgbxfg-.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/nunito-sans-latin-ext-wght-normal.3ox73wsnc7a_h.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../media/nunito-sans-latin-wght-normal.43tw5taujkj4o.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--sky:#d8eef8;--sky-strong:#a9d8ed;--navy:#082f58;--navy-soft:#174f75;--cream:#fffaf0;--cream-strong:#f6efe1;--yellow:#ffc515;--yellow-dark:#d99a00;--green:#2f741e;--green-soft:#edf5df;--blue-soft:#e8f5fb;--muted:#5e7180;--border:#082f5826;--shadow:0 16px 38px #082f5826;--shadow-soft:0 7px 18px #082f581a;--font-heading:"Fredoka Variable", "Arial Rounded MT Bold", sans-serif;--font-body:"Nunito Sans Variable", "Avenir Next", sans-serif}*{box-sizing:border-box}html{background:#b9ddea;min-width:320px}body{min-width:320px;min-height:100vh;color:var(--navy);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:#b9ddea;margin:0;font-size:16px;line-height:1.5}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent;color:inherit}img{max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-heading);letter-spacing:-.025em}h1{font-size:clamp(2rem,8vw,2.8rem);line-height:1.02}h2{font-size:1.55rem;line-height:1.12}:focus-visible{outline-offset:3px;outline:4px solid #1784bf}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.experience-shell{background:var(--sky);width:100%;max-width:520px;min-height:100svh;margin:0 auto;position:relative;overflow:hidden}.surface-card{border:1px solid var(--border);background:var(--cream);box-shadow:var(--shadow);border-radius:28px}.eyebrow{color:var(--navy-soft);letter-spacing:.105em;text-transform:uppercase;margin-bottom:7px;font-size:.72rem;font-weight:850;line-height:1.2}.intro-copy{color:#344f65;font-size:1rem;line-height:1.5}.helper-copy{color:var(--muted);text-align:center;margin:18px 0 0;font-size:.82rem}.primary-button,.secondary-button{cursor:pointer;border-radius:15px;justify-content:center;align-items:center;min-height:48px;padding:11px 20px;font-weight:850;text-decoration:none;transition:transform .16s,box-shadow .16s,background-color .16s;display:inline-flex}.primary-button{border:1px solid var(--yellow-dark);background:var(--yellow);color:var(--navy);box-shadow:0 5px #c98e00}.secondary-button{border:1px solid var(--border);background:#fff}.primary-button:active,.secondary-button:active,.direction-button:active,.station-card:active{transform:translateY(2px)}.icon-button{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.language-toggle{min-height:44px;box-shadow:var(--shadow-soft);background:#fffaf0f0;border:1px solid #082f582e;border-radius:999px;align-items:center;gap:3px;padding:4px 5px 4px 10px;display:inline-flex}.language-toggle button{min-width:44px;height:44px;color:var(--navy);letter-spacing:.04em;cursor:pointer;background:0 0;border:0;border-radius:999px;font-size:.72rem;font-weight:900}.language-toggle button.is-active{background:var(--navy);color:#fff}.language-toggle-inverse{background:#fffaf0f5}.start-screen{background:var(--cream);flex-direction:column;display:flex}.start-language{z-index:3;top:max(14px, env(safe-area-inset-top));position:absolute;right:14px}.start-hero{background:var(--sky-strong);flex:none;height:clamp(260px,46svh,410px);position:relative}.start-hero img{object-fit:cover;object-position:62% center}.start-panel{z-index:2;padding:30px 20px calc(24px + env(safe-area-inset-bottom));background:var(--cream);text-align:center;border-radius:30px 30px 0 0;flex:1;margin-top:-31px;position:relative;box-shadow:0 -12px 28px #082f581f}.start-panel h1{max-width:420px;margin:0 auto 12px}.start-panel .intro-copy{max-width:400px;margin:0 auto 22px}.direction-options{gap:12px;display:grid}.direction-button{border:1px solid var(--border);width:100%;min-height:76px;box-shadow:var(--shadow-soft);text-align:left;cursor:pointer;background:#fff;border-radius:20px;grid-template-columns:46px 1fr 24px;align-items:center;gap:12px;padding:12px 14px;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid}.direction-button:hover{border-color:#082f5857;box-shadow:0 10px 24px #082f5826}.direction-button strong,.direction-button small{display:block}.direction-button strong{font-family:var(--font-heading);font-size:1.08rem;line-height:1.2}.direction-button small{color:var(--muted);margin-top:3px;font-size:.79rem}.direction-icon{background:var(--blue-soft);width:46px;height:46px;color:var(--navy-soft);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.overview-screen{background:var(--sky)}.overview-hero{height:212px;padding:max(14px, env(safe-area-inset-top)) 14px 0;background-color:var(--sky-strong);background-image:url(/images/gerby-trail-hero.webp);background-position:60% 52%;background-size:cover}.overview-topbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.brand-chip{min-height:52px;box-shadow:var(--shadow-soft);background:#fffaf0f2;border:1px solid #082f5829;border-radius:17px;align-items:center;gap:9px;padding:5px 12px 5px 6px;display:inline-flex}.brand-chip>span{background:var(--navy);color:#fff;width:39px;height:39px;font-family:var(--font-heading);border-radius:50%;justify-content:center;align-items:center;font-size:1.4rem;font-weight:800;display:inline-flex}.brand-chip p{margin:0;line-height:1}.brand-chip small,.brand-chip strong{display:block}.brand-chip small{max-width:108px;color:var(--navy-soft);letter-spacing:.05em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;margin-bottom:4px;font-size:.55rem;font-weight:850;overflow:hidden}.brand-chip strong{font-family:var(--font-heading);letter-spacing:.04em;font-size:1rem}.overview-panel{min-height:calc(100svh - 173px);padding:28px 14px calc(26px + env(safe-area-inset-bottom));background:var(--cream);border-radius:32px 32px 0 0;margin-top:-39px;position:relative;box-shadow:0 -12px 28px #082f5824}.overview-heading{padding:0 7px}.overview-heading h1{margin-bottom:9px}.overview-heading>p:last-child{color:#3e5b70;max-width:420px;margin-bottom:20px}.route-card{background:var(--blue-soft);border:1px solid #082f5824;border-radius:18px;grid-template-columns:22px 1fr;align-items:center;gap:10px;min-height:64px;margin-bottom:16px;padding:10px 12px;display:grid}.route-card span{font-size:.86rem;font-weight:800;line-height:1.25}.route-card button{color:#075f91;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;grid-column:2;justify-self:start;min-height:44px;padding:6px 0;font-size:.77rem;font-weight:850;text-decoration:underline}.station-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.station-card{background:#fff;border:1px solid #082f5821;border-radius:22px;grid-template-columns:62px minmax(0,1fr) 44px;align-items:center;gap:12px;min-height:78px;padding:7px 9px 7px 7px;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s;display:grid;box-shadow:0 4px 12px #082f5812}.station-card:hover{box-shadow:var(--shadow-soft);border-color:#082f584d}.station-card-image{object-fit:cover;border:2px solid #fff;border-radius:50%;width:62px;height:62px;box-shadow:0 2px 8px #082f5833}.station-card-copy{min-width:0}.station-card-copy strong,.station-card-copy small{display:block}.station-card-copy strong{font-family:var(--font-heading);letter-spacing:-.015em;-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;font-size:1rem;font-weight:650;line-height:1.2;display:-webkit-box;overflow:hidden}.station-card-copy small{color:var(--muted);margin-top:4px;font-size:.72rem;font-weight:700}.station-status{color:#77838b;background:#e8ebed;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.station-status.is-unlocked{background:var(--navy-soft);color:#fff}.dialog-backdrop{z-index:20;background:#051b308f;justify-content:center;align-items:flex-end;padding:14px;display:flex;position:fixed;inset:0}.dialog-card{width:min(100%,470px);padding:28px 20px calc(20px + env(safe-area-inset-bottom));background:var(--cream);box-shadow:var(--shadow);border-radius:26px;position:relative}.dialog-card h2{max-width:calc(100% - 46px);margin-bottom:9px}.dialog-card>p{color:#405d72;margin-bottom:20px}.dialog-close{position:absolute;top:14px;right:14px}.dialog-actions{gap:10px;display:grid}.dialog-actions button{width:100%}.station-screen{padding-bottom:calc(28px + env(safe-area-inset-bottom));background:var(--sky)}.station-topbar{z-index:2;padding:max(13px, env(safe-area-inset-top)) 14px 8px;justify-content:space-between;align-items:center;gap:10px;display:flex;position:relative}.back-link{border:1px solid var(--border);min-height:44px;box-shadow:var(--shadow-soft);background:#fffaf0f0;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:.78rem;font-weight:850;text-decoration:none;display:inline-flex}.station-hero{text-align:center;padding:17px 20px 28px}.station-hero-image{width:clamp(158px,49vw,210px);height:clamp(158px,49vw,210px);box-shadow:var(--shadow);object-fit:cover;border:5px solid #ffffffed;border-radius:50%;margin-bottom:13px}.station-hero h1{margin-bottom:8px}.station-hero p{color:#39566b;max-width:390px;margin:0 auto}.gate-card,.audio-card,.info-card,.success-banner{margin-left:14px;margin-right:14px}.gate-card{border:1px solid var(--border);background:var(--cream);box-shadow:var(--shadow);text-align:center;border-radius:28px;padding:30px 20px 21px;position:relative}.gate-icon{border:4px solid var(--sky);background:var(--navy);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;display:inline-flex;position:absolute;top:-25px;left:50%;transform:translate(-50%)}.gate-card h2{max-width:370px;margin-bottom:9px;margin-left:auto;margin-right:auto}.gate-card>p:not(.eyebrow){color:#466176;margin-bottom:17px}.gate-card form{display:grid}.gate-card label{color:var(--navy-soft);letter-spacing:.04em;text-transform:uppercase;margin-bottom:7px;font-size:.76rem;font-weight:850}.gate-card input{width:100%;height:78px;color:var(--navy);font-family:var(--font-heading);letter-spacing:.34em;text-align:center;background:#fff;border:2px solid #082f5833;border-radius:19px;font-size:2.5rem;font-weight:650}.gate-card input::placeholder{color:#9aa8b2;letter-spacing:.08em;font-size:1.5rem}.gate-message{color:#9b4b18;min-height:42px;margin:8px 0 5px;font-size:.82rem;font-weight:750}.gate-submit{width:100%}.station-content{gap:16px;display:grid}.success-banner{background:var(--green-soft);color:#275f1a;border:1px solid #2f741e33;border-radius:18px;align-items:center;gap:10px;min-height:56px;padding:12px 15px;display:flex}.audio-card{border:1px solid var(--border);background:var(--cream);box-shadow:var(--shadow);border-radius:28px;padding:19px 17px 17px}.audio-heading{align-items:center;gap:10px;margin-bottom:14px;display:flex}.audio-heading h2{margin:0;font-size:1.35rem}.audio-icon{background:var(--navy);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.audio-fallback{color:#704f00;background:#fff1c6;border-radius:13px;margin:-3px 0 14px;padding:9px 11px;font-size:.78rem;font-weight:750}.audio-progress-row{grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:8px;font-size:.72rem;font-weight:800;display:grid}.audio-progress-row span:last-child{text-align:right}input[type=range]{min-height:44px;accent-color:var(--navy-soft);cursor:pointer}.audio-controls{grid-template-columns:52px 76px 52px;justify-content:center;align-items:center;gap:16px;margin:5px 0 2px;display:grid}.audio-controls button{cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.audio-primary-control{background:var(--navy-soft);color:#fff;border:2px solid #fff;width:76px;height:76px}.audio-secondary-control{border:1px solid var(--border);width:52px;height:52px;color:var(--navy);background:#fff}.audio-seek-control{position:relative}.audio-seek-control span{font-size:.6rem;font-weight:950;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-48%)}.volume-row{grid-template-columns:20px 1fr;align-items:center;gap:8px;display:grid}.audio-empty{align-items:center;gap:12px;display:flex}.audio-empty p{margin:0}.info-card{background:var(--blue-soft);border:1px solid #175f913d;border-radius:24px;padding:18px}.info-card-heading{align-items:center;gap:11px;margin-bottom:12px;display:flex}.info-card-heading h2{margin:0;font-size:1.28rem}.info-card-heading .eyebrow{margin-bottom:3px}.info-mark{background:var(--navy-soft);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-family:Georgia,serif;font-size:1.35rem;font-weight:800;display:inline-flex}.info-card>p{color:#284b65;margin:0}.loading-view,.centered-message{justify-content:center;align-items:center;padding:24px;display:flex}.loading-mark{border:7px solid #082f5829;border-top-color:var(--navy);border-radius:50%;width:52px;height:52px;animation:.8s linear infinite spin}.message-card{text-align:center;width:100%;padding:28px}.message-card h1{font-size:2rem}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (min-width:560px){body{padding:22px 0}.experience-shell{border-radius:34px;min-height:calc(100svh - 44px);box-shadow:0 28px 70px #082f583d}.dialog-backdrop{align-items:center}.dialog-card{padding-bottom:24px}}@media (max-width:359px){.language-toggle{padding-left:7px}.language-toggle>svg{display:none}.brand-chip small{max-width:84px}.station-card{grid-template-columns:56px minmax(0,1fr) 40px;gap:9px}.station-card-image{width:56px;height:56px}.station-card-copy strong{font-size:.92rem}.audio-controls{gap:12px}.back-link span{display:none}}
