:root{--bg:#101413;--panel:#f4f0e8;--panel-strong:#ffffff;--ink:#171512;--muted:#6e675d;--line:rgba(23,21,18,0.12);--gold:#c6a25f;--green:#243d35;--wine:#6f2433;--clay:#a5533e;--white:#ffffff;--shadow:0 20px 60px rgba(0,0,0,0.2)}@font-face{font-family:Carmen Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/CarmenSans-Regular.otf) format("opentype")}@font-face{font-family:Carmen Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/CarmenSans-Medium.otf) format("opentype")}@font-face{font-family:Carmen Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/CarmenSans-SemiBold.otf) format("opentype")}@font-face{font-family:Carmen Sans;font-style:normal;font-weight:700 900;font-display:swap;src:url(/fonts/CarmenSans-Bold.otf) format("opentype")}*{box-sizing:border-box}html{background:var(--bg)}body,html{min-height:100%;overflow-x:hidden}body{margin:0;background:linear-gradient(145deg,rgba(36,61,53,.96),rgba(16,20,19,.92)),url(https://images.unsplash.com/photo-1560889765-110488f29f0c?auto=format&fit=crop&w=1400&q=70);background-attachment:fixed;background-position:50%;background-size:cover;color:var(--ink);font-family:Carmen Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.language-screen,.locked-screen{display:grid;align-content:center;grid-gap:22px;gap:22px;height:100dvh;overflow:hidden;padding:12px}.intro-card{background:#151514;border:1px solid rgba(255,255,255,.12);border-radius:8px;box-shadow:0 30px 90px rgba(0,0,0,.42);color:var(--white);display:grid;grid-gap:clamp(8px,1.7dvh,16px);gap:clamp(8px,1.7dvh,16px);margin:0 auto;max-height:calc(100dvh - 24px);max-width:430px;overflow:hidden;padding:clamp(12px,2dvh,18px);position:relative;width:100%}.intro-journey-card{background:#111110;max-width:390px;padding:10px}.intro-card:before{background:radial-gradient(circle at 18% 0,rgba(198,162,95,.28),transparent 34%),radial-gradient(circle at 94% 26%,rgba(165,83,62,.22),transparent 32%);content:"";inset:0;pointer-events:none;position:absolute}.intro-journey-card:before{display:none}.intro-card>*{position:relative;z-index:1}.intro-hero-panel{background:#20201d;border-radius:8px;height:min(720px,calc(100dvh - 44px));min-height:min(560px,calc(100dvh - 44px));overflow:hidden;position:relative}.intro-hero-image{filter:saturate(1.12) contrast(1.02);height:100%;object-fit:cover;object-position:center;width:100%}.intro-hero-shade{background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.08) 34%,rgba(0,0,0,.76)),radial-gradient(circle at 50% 76%,rgba(198,162,95,.16),transparent 42%);inset:0;position:absolute}.intro-mosaic{display:grid;grid-gap:clamp(5px,1dvh,8px);gap:clamp(5px,1dvh,8px);grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(4,minmax(42px,1fr));height:clamp(190px,34dvh,314px);margin:0}.intro-tile{background:#2a2926;border:1px solid rgba(255,255,255,.08);border-radius:8px;display:block;overflow:hidden}.intro-tile img{height:100%;object-fit:cover;width:100%}.intro-tile-1{grid-column:1/span 3;grid-row:1/span 2}.intro-tile-2{grid-column:4/span 3;grid-row:1/span 1}.intro-tile-3{grid-column:4/span 3;grid-row:2/span 2}.intro-tile-4{grid-column:1/span 2;grid-row:3/span 2}.intro-tile-5{grid-column:3/span 2;grid-row:3/span 2}.intro-tile-6{grid-column:5/span 2;grid-row:4/span 1}.eyebrow{color:var(--gold);font-size:.78rem;font-weight:800;letter-spacing:0;margin:0 0 8px;text-transform:uppercase}.intro-copy{display:grid;grid-gap:clamp(6px,1dvh,10px);gap:clamp(6px,1dvh,10px)}.intro-bottom-content{align-items:center;bottom:clamp(18px,4dvh,28px);display:grid;grid-gap:clamp(16px,3dvh,24px);gap:clamp(16px,3dvh,24px);justify-items:start;left:24px;max-width:calc(100% - 48px);position:absolute;right:24px}.intro-hero-panel .intro-copy{max-width:100%}.intro-copy h1{color:var(--white);font-size:clamp(1.65rem,7.2vw,2.28rem);font-weight:850;line-height:1.02;margin:0;max-width:100%;overflow-wrap:anywhere}.intro-copy p:not(.eyebrow){color:rgba(255,255,255,.82);font-size:clamp(.84rem,2.8vw,.98rem);line-height:1.42;margin:0;max-width:540px}.events-panel,.locked-card,.player-panel,.sidebar{background:rgba(244,240,232,.96);border:1px solid rgba(255,255,255,.28);border-radius:8px;box-shadow:var(--shadow)}.intro-language-title{color:rgba(255,255,255,.84);margin-top:0}.section-title-row{align-items:center;display:flex;gap:10px}.section-title-row h2,.section-title-row h3{font-size:1.05rem;line-height:1.2;margin:0}.section-title-row.compact h2,.section-title-row.compact h3{font-size:.92rem}.language-grid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(5,minmax(0,1fr))}.intro-language-grid{left:16px;position:absolute;right:16px;top:16px}.category-chip,.ghost-button,.language-button,.play-button,.point-card,.primary-button,.section-tabs button{align-items:center;border:0;display:inline-flex}.language-button{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--white);flex-direction:column;gap:3px;justify-content:center;min-height:clamp(44px,6dvh,56px);padding:6px 5px;white-space:normal}.intro-language-grid .language-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(0,0,0,.28);border-color:rgba(255,255,255,.2);min-height:42px}.intro-language-grid .language-button.is-active{background:rgba(255,255,255,.92);border-color:rgba(255,255,255,.92);color:var(--ink)}.language-button span{font-size:clamp(.9rem,3vw,1.05rem);font-weight:800;max-width:100%}.language-button small,.language-button span{line-height:1.05;overflow-wrap:anywhere;text-align:center;white-space:normal}.language-button small{color:rgba(255,255,255,.58);font-size:clamp(.58rem,2vw,.68rem)}.language-button.is-active{background:rgba(198,162,95,.2);border-color:rgba(198,162,95,.72);color:var(--white)}.language-button.is-active small{color:rgba(255,255,255,.72)}.primary-button{background:var(--white);border-radius:8px;color:var(--ink);font-weight:850;gap:9px;justify-content:center;min-height:clamp(44px,7dvh,52px);padding:0 18px;width:100%}.intro-start-button{align-items:center;background:transparent;border:0;color:var(--white);display:inline-grid;gap:7px;justify-items:center;justify-self:center;position:relative}.intro-start-button span{align-items:center;background:#050505;border:7px solid rgba(255,255,255,.78);border-radius:999px;box-shadow:0 10px 28px rgba(0,0,0,.38);color:var(--white);display:inline-flex;height:72px;justify-content:center;width:72px}.intro-start-button small{color:rgba(255,255,255,.86);font-size:.78rem;font-weight:850}.locked-card{color:var(--ink);display:grid;grid-gap:14px;gap:14px;margin:auto;max-width:440px;padding:24px;width:100%}.locked-card h1{margin:0}.locked-card p{color:var(--muted);margin:0}.locked-card .code-help{color:var(--ink);font-weight:750}.locked-card form{display:grid;grid-gap:10px;gap:10px}.locked-card input{background:var(--white);border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:52px;padding:0 14px;text-transform:uppercase}.app-shell{margin:0 auto;max-width:100vw;min-height:100dvh;overflow-x:hidden;padding:14px 14px 32px;width:100%}.card-nav,.section-tabs,.topbar{align-items:center;display:flex;gap:10px;max-width:100%;min-width:0}.card-nav,.topbar{color:var(--white);justify-content:space-between;padding:6px 0 14px}.card-nav{border-bottom:1px solid rgba(23,21,18,.1);color:var(--ink);margin-bottom:14px;padding:0 0 12px}.card-nav .ghost-button,.card-nav .lang-pill{background:rgba(23,21,18,.07);border-color:rgba(23,21,18,.1);color:var(--ink)}.is-point-detail .card-nav{border-bottom-color:rgba(255,255,255,.12);color:var(--white);margin-bottom:0;padding:0}.is-point-detail .card-nav .ghost-button,.is-point-detail .card-nav .lang-pill{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18);color:var(--white)}.ghost-button,.lang-pill{align-items:center;display:inline-flex;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:999px;color:var(--white);flex:0 1 auto;min-height:38px;padding:0 12px;white-space:nowrap}.section-tabs{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:8px;margin-bottom:14px;overflow-x:auto;padding:5px;scrollbar-width:none}.section-tabs::-webkit-scrollbar{display:none}.section-tabs button{background:transparent;border-radius:6px;color:rgba(255,255,255,.78);flex:0 0 auto;font-weight:800;gap:8px;justify-content:center;min-height:42px;padding:0 14px}.section-tabs button.is-active{background:var(--panel);color:var(--ink)}.guide-layout{display:grid;grid-gap:14px;gap:14px}.events-panel,.guide-layout,.sidebar{max-width:100%;min-width:0;width:100%}.events-panel,.sidebar{overflow:hidden;padding:14px}.category-scroll{display:flex;gap:8px;margin:14px -14px 12px;max-width:calc(100% + 28px);overflow-x:auto;padding:0 14px 4px;scrollbar-width:none}.category-scroll::-webkit-scrollbar{display:none}.category-chip{background:var(--white);border:1px solid var(--line);border-radius:999px;color:var(--ink);flex:0 0 auto;font-size:.88rem;font-weight:800;min-height:38px;padding:0 14px}.category-chip.is-active{background:var(--green);color:var(--white)}.points-list{display:grid;grid-gap:10px;max-width:100%}.point-card,.points-list{gap:10px;min-width:0;width:100%}.point-card{align-items:flex-start;background:var(--white);border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:76px;padding:9px;text-align:left;text-decoration:none}.point-card.is-active{border-color:rgba(111,36,51,.5);box-shadow:0 0 0 3px rgba(111,36,51,.12)}.point-number{color:var(--clay);flex:0 0 34px;font-size:.78rem;font-weight:900}.point-image{align-items:center;background:#e6ded2;border-radius:6px;display:flex;flex:0 0 58px;height:58px;justify-content:center;overflow:hidden}.point-image img{height:100%;object-fit:cover;width:100%}.point-content{display:grid;flex:1 1;grid-gap:4px;gap:4px;min-width:0}.point-content strong{line-height:1.18;overflow-wrap:anywhere;white-space:normal}.point-content small{color:var(--muted);line-height:1.2;overflow-wrap:anywhere;white-space:normal}.point-action{align-items:center;background:var(--green);border-radius:999px;color:var(--white);display:inline-flex;flex:0 0 34px;height:34px;justify-content:center;margin-top:12px}.player-panel{overflow:hidden}.player-panel.is-point-detail{background:#111110;border:1px solid rgba(255,255,255,.22);color:var(--white);display:grid;grid-gap:18px;gap:18px;margin:0 auto;max-width:420px;padding:20px}.point-detail-heading{display:grid;grid-gap:5px;gap:5px}.point-detail-heading h1{color:var(--white);font-family:Georgia,Times New Roman,serif;font-size:clamp(1.55rem,7vw,2.25rem);font-weight:500;line-height:1.02;margin:0}.is-point-detail .player-media{aspect-ratio:4/3;border-radius:8px}.is-point-detail .media-slide{padding:0}.is-point-detail .media-slide img{object-fit:cover}.is-point-detail .player-body{padding:0}.is-point-detail .controls{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px}.point-nav-controls{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.point-nav-button{align-items:center;background:rgba(23,21,18,.06);border:1px solid rgba(23,21,18,.1);border-radius:999px;color:var(--ink);display:inline-flex;font-size:.82rem;font-weight:850;gap:6px;justify-content:center;min-height:40px;padding:0 10px;text-decoration:none}.point-nav-button:disabled{cursor:not-allowed;opacity:.36}.is-point-detail .point-nav-button{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:var(--white)}.is-point-detail .progress-shell{background:rgba(255,255,255,.18)}.is-point-detail .text-panel{background:transparent;border-radius:0;padding:0}.is-point-detail .full-text{color:rgba(255,255,255,.78)}.is-point-detail .full-text strong{color:rgba(255,255,255,.94)}.player-media{align-items:center;aspect-ratio:16/10;background:#241f1a;color:var(--green);display:flex;justify-content:center;overflow:hidden}.media-slider{height:100%;position:relative;width:100%}.media-slide{align-items:center;background:#241f1a;display:flex;height:100%;justify-content:center;margin:0;padding:10px;width:100%}.media-slide img{height:100%;max-height:100%;max-width:100%;object-fit:contain;width:100%}.media-nav{align-items:center;background:rgba(255,255,255,.92);border:0;border-radius:999px;color:var(--ink);display:inline-flex;height:42px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);width:42px;z-index:2}.media-nav-prev{left:12px}.media-nav-next{right:12px}.media-dots{align-items:center;background:rgba(0,0,0,.42);border-radius:999px;bottom:12px;display:inline-flex;gap:6px;left:50%;padding:7px 9px;position:absolute;transform:translateX(-50%);z-index:2}.media-dots button{background:rgba(255,255,255,.5);border:0;border-radius:999px;height:9px;padding:0;width:9px}.media-dots button.is-active{background:var(--white);width:20px}.player-body{display:grid;grid-gap:16px;gap:16px;padding:16px}.player-body h2{font-size:clamp(1.35rem,4.8vw,2rem);line-height:1.08;margin:0}.controls{align-items:center;display:grid;grid-gap:12px;gap:12px;grid-template-columns:auto 1fr auto}.play-button{background:var(--wine);border-radius:999px;color:var(--white);height:56px;justify-content:center;width:56px}.progress-shell{background:rgba(23,21,18,.12);border-radius:999px;height:10px;overflow:hidden}.progress-shell span{background:linear-gradient(90deg,var(--clay),var(--gold));border-radius:inherit;display:block;height:100%;transition:width .15s linear}.text-panel{background:#171512;border-radius:8px;color:rgba(255,255,255,.72);display:grid;grid-gap:14px;gap:14px;padding:16px}.text-panel .section-title-row{color:var(--gold)}.text-panel-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.text-mode-tabs{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:999px;display:inline-flex;padding:4px}.text-mode-tabs button{background:transparent;border:0;border-radius:999px;color:rgba(255,255,255,.7);font-size:.82rem;font-weight:850;min-height:32px;padding:0 12px}.text-mode-tabs button.is-active{background:var(--white);color:var(--ink)}.full-text{color:rgba(255,255,255,.82);line-height:1.65;padding-right:4px}.full-text p{margin:0 0 14px}.full-text strong{color:var(--white)}.cue-list{display:grid;grid-gap:14px;gap:14px;max-height:min(48dvh,520px);overflow-x:hidden;overflow-y:auto;padding:18px 12px 18px 0;scroll-behavior:smooth}.cue-line{background:transparent;border-radius:6px;color:rgba(255,255,255,.56);cursor:pointer;display:block;height:auto;line-height:1.55;margin:0;opacity:.72;overflow:visible;overflow-wrap:anywhere;padding:8px 0;position:relative;text-align:left;transform-origin:left center;transition:color .18s ease,filter .18s ease,margin .18s ease,opacity .18s ease,transform .18s ease;width:100%;white-space:normal;word-break:normal}.cue-line:hover{color:rgba(255,255,255,.86);opacity:1}.cue-line.is-active{color:var(--white);filter:none;font-weight:850;opacity:1;padding-left:4px;transform:scale(1.02)}.cue-line.is-past{color:rgba(255,255,255,.38);opacity:.55}.cue-line.is-future{color:rgba(255,255,255,.5);filter:none}.cue-line.is-future+.cue-line.is-future{color:rgba(255,255,255,.38);filter:none;opacity:.58}.cue-stack{display:grid;grid-gap:12px;gap:12px}.cue-stack p{font-size:.98rem;line-height:1.45;margin:0}.cue-stack .active-cue{color:var(--white);font-size:1.35rem;font-weight:850}.events-panel,.special-panel{display:grid;grid-gap:14px;gap:14px}.special-panel{background:rgba(244,240,232,.96);border:1px solid rgba(255,255,255,.28);border-radius:8px;box-shadow:var(--shadow);padding:18px}.special-content{color:var(--muted);font-size:1rem;line-height:1.65}.special-content h1,.special-content h2,.special-content h3{color:var(--ink);line-height:1.1}.special-content img{border-radius:8px;height:auto;max-width:100%}.events-list{display:grid;grid-gap:12px;gap:12px}.event-card{align-items:stretch;background:#1b1b1b;border-radius:8px;color:var(--white);display:grid;grid-template-columns:30% 70%;min-height:132px;overflow:hidden;position:relative;text-decoration:none}.event-card.is-upcoming{box-shadow:0 0 0 1px rgba(198,162,95,.22)}.event-card.is-past{opacity:.58}.event-card.is-past .event-bg,.event-card.is-past .event-poster img{filter:grayscale(.75)}.event-card.is-past .event-overlay{background:rgba(0,0,0,.88)}.event-bg{filter:blur(24px) saturate(1.2);height:130%;inset:-15%;object-fit:cover;opacity:.9;position:absolute;width:130%}.event-overlay{background:rgba(0,0,0,.8);inset:0;position:absolute}.event-content,.event-poster{position:relative;z-index:1}.event-poster{align-items:center;background:rgba(255,255,255,.08);color:var(--gold);display:flex;justify-content:center;min-width:0;overflow:hidden}.event-poster img{height:100%;object-fit:cover;width:100%}.event-content{display:flex;flex-direction:column;gap:10px;justify-content:center;min-width:0;padding:14px}.event-content strong{font-size:clamp(.95rem,3.8vw,1.12rem);font-weight:750;line-height:1.22}.event-kicker{align-items:center;color:rgba(255,255,255,.78);display:inline-flex;font-size:.8rem;gap:7px;line-height:1.25}.empty-message,.error-text,.floating-error,.loading-row{align-items:center;color:var(--muted);display:inline-flex;gap:8px;line-height:1.4;margin:0}.mini-player{background:rgba(17,17,16,.94);border:1px solid rgba(255,255,255,.14);bottom:max(14px,env(safe-area-inset-bottom));box-shadow:0 16px 44px rgba(0,0,0,.34);color:var(--white);display:grid;grid-gap:10px;gap:10px;grid-template-columns:auto minmax(0,1fr);left:14px;max-width:520px;padding:8px 14px 8px 8px;position:fixed;right:14px;text-decoration:none;z-index:20}.mini-player,.mini-player-icon{align-items:center;border-radius:999px}.mini-player-icon{background:var(--gold);color:#111110;display:inline-flex;height:34px;justify-content:center;width:34px}.mini-player span:last-child{display:grid;grid-gap:1px;gap:1px;min-width:0}.mini-player small{color:rgba(255,255,255,.62);font-size:.72rem;font-weight:800}.mini-player strong{font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.error-text,.floating-error{color:#b42318}.floating-error{background:var(--white);border-radius:8px;bottom:14px;box-shadow:var(--shadow);left:14px;padding:12px 14px;position:fixed;right:14px}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (min-width:760px){.language-screen{align-items:end;grid-template-columns:minmax(0,1fr) 420px;padding:44px}.language-panel{align-self:end}.app-shell{padding:22px 22px 44px}.guide-layout{align-items:stretch;grid-template-columns:minmax(300px,.42fr) minmax(0,.58fr);min-height:calc(100dvh - 132px)}.sidebar{height:100%;max-height:none;overflow:auto;position:-webkit-sticky;position:sticky;top:18px}.player-panel{height:100%;min-height:calc(100dvh - 132px)}.player-body h2{font-size:1.35rem;line-height:1.12}.point-detail-heading h1{font-size:clamp(1.35rem,3.2vw,1.85rem);line-height:1.08}.section-title-row h2,.section-title-row h3{font-size:.98rem}.event-content strong{font-size:1rem;line-height:1.25}.point-content strong{font-size:.96rem}.events-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:759px){.language-screen{align-content:stretch;height:100dvh;padding:0}.intro-journey-card{border:0;border-radius:0;box-shadow:none;height:100dvh;max-height:none;max-width:none;padding:0;width:100vw}.intro-hero-panel{border-radius:0;height:100dvh;min-height:100dvh}.app-shell{min-height:100dvh;padding:0;width:100vw}.card-nav{margin-bottom:12px}.section-tabs{border-left:0;border-radius:0;border-right:0;margin-bottom:0}.guide-layout{gap:0}.app-shell.is-detail .player-panel.is-point-detail,.events-panel,.sidebar,.special-panel{border-left:0;border-radius:0;border-right:0;box-shadow:none}.app-shell.is-detail .player-panel.is-point-detail{margin:0;max-width:none;min-height:calc(100dvh - 60px);width:100%}.app-shell:not(.is-detail) .guide-layout>.player-panel{display:none}}@media (min-width:1080px){.guide-layout{grid-template-columns:390px minmax(0,1fr)}.guide-layout,.player-panel{min-height:calc(100dvh - 142px)}.player-panel{display:grid;grid-template-columns:minmax(280px,.42fr) minmax(0,.58fr)}.player-media{aspect-ratio:auto;min-height:100%}.player-body{align-content:center;padding:28px}.player-body h2{font-size:1.45rem}}