html,body,#root{background:#0d0b09;height:100%;margin:0;overflow:hidden}.stage{touch-action:none;-webkit-user-select:none;user-select:none;font-family:Georgia,Times New Roman,serif;position:fixed;inset:0}.hud{text-align:center;color:#f1e3c4;text-shadow:0 1px 6px #000;pointer-events:none;letter-spacing:.04em;position:absolute;left:0;right:0}.hud.top{font-size:20px;top:16px}.hud.top span{opacity:.7;margin-left:8px;font-size:14px}.hud.bottom{opacity:.85;font-size:13px;bottom:18px}.toast{color:#ffd98a;background:#140e08d9;border:1px solid #6b5326;border-radius:999px;padding:10px 18px;font-size:14px;position:absolute;bottom:64px;left:50%;transform:translate(-50%)}.enter{letter-spacing:.04em;color:#2a1d0c;cursor:pointer;background:linear-gradient(#f3d98c,#c9a24a);border:0;border-radius:999px;padding:16px 34px;font:600 20px Georgia,serif;position:absolute;bottom:12%;left:50%;transform:translate(-50%);box-shadow:0 6px 30px #00000080}.enter small{opacity:.75;margin-top:2px;font-size:12px;font-weight:400;display:block}.skip{color:#f1e3c4;cursor:pointer;background:#140e088c;border:1px solid #6b5326;border-radius:999px;padding:8px 18px;font:14px Georgia,serif;position:absolute;bottom:18px;right:18px}.custom{color:#f1e3c4;background:radial-gradient(circle at 30% 40%,#2a2030,#0d0b09 70%);display:flex;position:absolute;inset:0;overflow-y:auto}.preview{background:radial-gradient(at 50% 38%,#f1eee8 0%,#d4cfc6 55%,#b3ada2 100%);flex:50%;min-height:360px;position:relative}.panel{flex:0 0 min(440px,100%);padding:24px 28px 90px;overflow-y:auto}.panel h2{margin:0 0 8px;font-size:26px;font-weight:600}.panel h3{letter-spacing:.06em;text-transform:uppercase;opacity:.85;margin:18px 0 8px;font-size:14px}.panel small{opacity:.6;text-transform:none;margin-left:6px;font-weight:400}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips button,.toggle,.ghost{color:#f1e3c4;cursor:pointer;background:#ffffff0d;border:1px solid #6b5326;border-radius:999px;padding:7px 14px;font:14px Georgia,serif}.chips button.on,.toggle.on{color:#2a1d0c;background:#c9a24a;border-color:#c9a24a}.swatches{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.swatches button{cursor:pointer;border:2px solid #ffffff40;border-radius:50%;width:28px;height:28px;padding:0}.swatches button.lace{background-position:50%;background-size:64px 64px}.swatches button.on{border-color:#f3d98c;box-shadow:0 0 0 2px #0d0b09,0 0 0 4px #f3d98c}.actions{background:linear-gradient(#0000,#0d0b09 40%);align-items:center;gap:10px;margin-top:22px;padding:14px 0 0;display:flex;position:sticky;bottom:0}.enter.inline{flex:1;padding:12px 20px;font-size:17px;position:static;transform:none}@media (width<=760px){.custom{flex-direction:column}.preview{flex:0 0 38%;min-height:240px}.panel{flex:auto;padding:16px 18px 80px}}.skip.left{left:18px;right:auto}.hud .online{color:#9fe3a6;opacity:1;margin-left:14px;font-size:13px}.vignette{pointer-events:none;background:radial-gradient(#0000 55%,#00000052 100%);position:absolute;inset:0}.skip.left{top:52px;bottom:auto}.credit{color:#f1e3c48c;pointer-events:none;font-size:10px;position:absolute;bottom:4px;right:10px}.stations-chip{color:#f3d98c;white-space:nowrap;background:#140e0899;border:1px solid #6b5326;border-radius:999px;padding:5px 14px;font-size:12px;position:absolute;top:48px;left:50%;transform:translate(-50%)}.stations-chip .link{color:#c9a24a;cursor:pointer;font:inherit;background:0 0;border:0;margin-left:10px;text-decoration:underline}.station-btn{cursor:pointer;color:#2a1d0c;background:linear-gradient(#f3d98c,#c9a24a);border:0;border-radius:999px;padding:12px 26px;font:600 17px Georgia,serif;animation:1.8s ease-in-out infinite pulse;position:absolute;bottom:76px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #00000080}@keyframes pulse{0%,to{transform:translate(-50%)scale(1)}50%{transform:translate(-50%)scale(1.06)}}.prayer-backdrop{background:#080604b8;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0;overflow-y:auto}.prayer{color:#f1e3c4;background:#1b140d;border:1px solid #6b5326;border-radius:14px;width:min(520px,100%);max-height:100%;padding:18px 22px 16px;overflow-y:auto;box-shadow:0 20px 60px #0009}.prayer-head{letter-spacing:.12em;text-transform:uppercase;color:#c9a24a;justify-content:space-between;align-items:center;font-size:12px;display:flex}.prayer-head button{color:#f1e3c4;cursor:pointer;background:0 0;border:0;font-size:26px;line-height:1}.prayer h2{margin:6px 0 10px;font-size:22px;font-weight:600}.prayer img{border-radius:6px;max-width:100%;max-height:38vh;margin:0 auto 10px;display:block}.prayer p{margin:8px 0;font-size:15px;line-height:1.5}.prayer .reading{color:#c9a24a;text-align:center;font-size:12px}.prayer .versicle{text-align:center;color:#e8d6a4}.prayer .pray{border-left:2px solid #c9a24a;padding-left:12px;font-style:italic}.prayer-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.prayer-foot small{opacity:.6;font-size:10px}.prayer-foot button{cursor:pointer;color:#2a1d0c;background:#c9a24a;border:0;border-radius:999px;flex:none;padding:9px 16px;font:600 14px Georgia,serif}.prayer-backdrop{z-index:20}.stations-chip{top:92px}.prayer .opening{opacity:.9;border-bottom:1px solid #c9a24a4d;padding-bottom:8px;font-size:13px}.prayer .versicle{text-align:left}.prayer .closing{color:#c9a24a;text-align:center;margin-top:12px;font-size:12px}.prayer .refrain{text-align:center;opacity:.85;margin-top:4px;font-size:13px;font-style:italic}.mass-card{color:#f1e3c4;text-align:center;background:#140e08d1;border:1px solid #6b5326;border-radius:14px;flex-direction:column;gap:4px;width:min(430px,100% - 24px);padding:12px 16px;font-size:14px;display:flex;position:absolute;bottom:64px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #00000080}.mass-card b{color:#f3d98c;font-size:15px}.mass-card span{opacity:.9}.mass-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:6px;display:flex}.mass-actions button,.mass-hud button{color:#f1e3c4;cursor:pointer;background:#ffffff0f;border:1px solid #6b5326;border-radius:999px;padding:8px 14px;font:13px Georgia,serif}.mass-actions button.primary{color:#2a1d0c;background:#c9a24a;border-color:#c9a24a;font-weight:600}.mass-hud{color:#f1e3c4;text-align:center;background:#140e08c7;border:1px solid #6b5326;border-radius:14px;flex-direction:column;align-items:center;gap:3px;width:min(420px,100% - 24px);padding:10px 16px 12px;display:flex;position:absolute;top:132px;left:50%;transform:translate(-50%)}.mass-hud small{letter-spacing:.1em;text-transform:uppercase;color:#c9a24a;font-size:11px}.mass-hud b{color:#f3d98c;font-size:17px}.mass-hud span{opacity:.85;font-size:13px}.mass-hud em{opacity:.55;margin-top:2px;font-size:10px}.mass-hud button{margin-top:6px}.mass-bar{background:#ffffff1f;border-radius:4px;width:100%;height:4px;margin-top:4px;overflow:hidden}.mass-bar i{background:#c9a24a;height:100%;display:block}.mass-chip{color:#f1e3c4;background:#140e08b3;border:1px solid #6b5326;border-radius:12px;align-items:center;gap:10px;width:min(420px,100% - 24px);padding:8px 14px 10px;display:flex;position:absolute;top:132px;left:50%;overflow:hidden;transform:translate(-50%)}.mass-chip>div{flex-direction:column;flex:1;min-width:0;display:flex}.mass-chip small{letter-spacing:.1em;text-transform:uppercase;color:#c9a24a;font-size:10px}.mass-chip b{color:#f3d98c;white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.mass-chip span{color:#f3d98c;background:#c9a24a2e;border-radius:999px;padding:3px 10px;font-size:12px}.mass-chip button{color:#f1e3c4;cursor:pointer;background:0 0;border:1px solid #6b5326;border-radius:999px;padding:5px 12px;font:12px Georgia,serif}.mass-chip i{background:#c9a24a;height:3px;position:absolute;bottom:0;left:0}.script-box{color:#f6ecd2;text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#080604c7;border-radius:12px;width:min(560px,100% - 24px);min-height:64px;padding:10px 40px 12px 16px;position:absolute;bottom:52px;left:50%;transform:translate(-50%)}.script-box small{letter-spacing:.12em;text-transform:uppercase;color:#c9a24a;margin-bottom:3px;font-size:10px;display:block}.script-box strong{color:#f3d98c;margin-bottom:6px;font-size:14px;font-weight:600;display:block}.script-box p{margin:0;font-size:17px;line-height:1.4}.script-box .x{color:#f1e3c4;cursor:pointer;background:0 0;border:0;font-size:22px;line-height:1;position:absolute;top:4px;right:8px}.script-show{color:#f1e3c4;cursor:pointer;background:#140e08bf;border:1px solid #6b5326;border-radius:999px;padding:7px 16px;font:13px Georgia,serif;position:absolute;bottom:56px;left:50%;transform:translate(-50%)}.sound-btn{z-index:30;color:#f3d98c;cursor:pointer;background:#140e08c7;border:1px solid #c9a24a;border-radius:999px;align-items:center;gap:7px;padding:8px 14px 8px 11px;font:600 13px Georgia,serif;display:flex;position:absolute;top:52px;right:12px;box-shadow:0 4px 16px #00000073}.sound-btn.off{color:#ff9a8a;background:#280c08d9;border-color:#b24a3a}.sound-btn{gap:0;padding:9px}.sound-btn:hover{filter:brightness(1.15)}.credit{text-align:right;max-width:62%;line-height:1.25}.seat-pick{align-items:center;gap:6px;margin-top:8px;display:flex}.seat-pick small{opacity:.7;margin-right:4px}.seat-pick button{color:#f1e3c4;cursor:pointer;background:#ffffff0d;border:1px solid #6b5326;border-radius:999px;padding:4px 12px;font:13px Georgia,serif}.seat-pick button.on{color:#2a1d0c;background:#c9a24a;border-color:#c9a24a}.menu-pill{color:#f3d98c;cursor:pointer;background:#140e08c7;border:1px solid #6b5326;border-radius:999px;padding:8px 20px;font:14px Georgia,serif;position:absolute;bottom:64px;left:16px}.menu-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:8px;display:grid}.menu-grid button{color:#f1e3c4;cursor:pointer;text-align:left;background:#ffffff0d;border:1px solid #6b5326;border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;font:13px Georgia,serif;display:flex}.menu-grid button:hover{background:#c9a24a2e}.menu-grid button b{color:#f3d98c;font-size:14px}.menu-grid button small{opacity:.75;font-size:11.5px;line-height:1.3}.menu-home{width:min(560px,100% - 24px)}.prayer .notice{opacity:.8;border-left:3px solid #6b5326;margin:6px 0 12px;padding-left:10px;font-size:12.5px}.exam,.how{margin:8px 0;padding-left:20px}.exam{list-style:decimal}.exam li{margin-bottom:12px;line-height:1.45}.exam label{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.exam input{accent-color:#c9a24a;flex:none;width:18px;height:18px;margin-top:5px}.how li{margin-bottom:8px}.confession-nav{gap:8px;display:flex}.confession-nav button{color:#f1e3c4;cursor:pointer;background:#ffffff0f;border:1px solid #6b5326;border-radius:999px;padding:8px 16px;font:13px Georgia,serif}.confession-nav button:last-child{color:#2a1d0c;background:#c9a24a;border-color:#c9a24a;font-weight:600}.fade-black{pointer-events:none;z-index:20;background:#000;animation:1.9s ease-in-out both fadeBlack;position:absolute;inset:0}@keyframes fadeBlack{0%{opacity:0}35%{opacity:1}65%{opacity:1}to{opacity:0}}.confession-box{color:#f1e3c4;z-index:15;background:#100b06e6;border:1px solid #6b5326;border-radius:14px;width:min(600px,100% - 24px);padding:14px 20px 12px;position:absolute;bottom:40px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #0000008c}.confession-box small{letter-spacing:.12em;text-transform:uppercase;color:#c9a24a;margin-bottom:4px;font-size:11px;display:block}.confession-box p{margin:0 0 8px;font-size:18px;line-height:1.5}.confession-box p.you{color:#cfd9f0;font-style:italic}.confession-box p.note{text-align:center;opacity:.8;font-size:14px;font-style:italic}.confession-box p.hint{opacity:.75;font-size:13px}.confession-box p.prayer-text{font-size:17px}.confession-box .x{color:#f1e3c4;cursor:pointer;opacity:.7;background:0 0;border:none;font-size:22px;position:absolute;top:6px;right:10px}.confession-actions{opacity:.95;justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.confession-actions button{color:#f1e3c4;cursor:pointer;background:#ffffff0f;border:1px solid #6b5326;border-radius:999px;margin-left:8px;padding:8px 18px;font:14px Georgia,serif}.confession-actions button.primary{color:#2a1d0c;background:#c9a24a;border-color:#c9a24a;font-weight:600}.confession-box .bar{background:#ffffff1f;border-radius:2px;height:3px;margin-bottom:8px;overflow:hidden}.confession-box .bar i{background:#c9a24a;height:100%;display:block}.confession-box.caption{text-align:center;padding:10px 16px;bottom:56px}.confession-box.caption p{opacity:.9;margin:0;font-size:16px;font-style:italic}.fade-black{animation-duration:2.4s}.offering-btn{z-index:30;color:#f3d98c;cursor:pointer;background:#140e08b3;border:1px solid #6b5326;border-radius:999px;padding:7px 14px;font:600 13px Georgia,serif;position:absolute;top:100px;right:12px;box-shadow:0 4px 16px #0006}.offering-btn:hover{filter:brightness(1.15)}.offering .soon{opacity:.8;margin-top:12px;font-style:italic}.offering-amounts{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.offering-amounts button{color:#f3d98c;cursor:pointer;background:#ffffff0d;border:1px solid #c9a24a;border-radius:999px;padding:9px 22px;font:600 15px Georgia,serif}.offering-amounts button:hover{background:#c9a24a38}.print-wrap{width:fit-content;max-width:100%;margin:0 auto 10px;position:relative}.print-wrap img.print{cursor:zoom-in;border-radius:6px;max-width:100%;max-height:38vh;margin:0;display:block}.zoom-btn{color:#f3d98c;cursor:pointer;background:#140e08d1;border:1px solid #c9a24a;border-radius:999px;align-items:center;gap:4px;padding:5px 11px;font:600 13px Georgia,serif;display:flex;position:absolute;bottom:8px;right:8px}.zoom-btn:hover{filter:brightness(1.2)}.zoom-backdrop{z-index:60;background:#060402f5;justify-content:center;align-items:center;padding:18px;display:flex;position:absolute;inset:0}.zoom-backdrop img{object-fit:contain;border-radius:4px;max-width:100%;max-height:100%;box-shadow:0 10px 50px #000000b3}.zoom-close{color:#f3d98c;cursor:pointer;background:#140e08d9;border:1px solid #c9a24a;border-radius:50%;width:42px;height:42px;font-size:26px;line-height:1;position:absolute;top:12px;right:14px}.zoom-close:hover{filter:brightness(1.25)}.candle-btn{z-index:30;color:#f3d98c;cursor:pointer;background:#140e08b3;border:1px solid #6b5326;border-radius:999px;padding:7px 14px;font:600 13px Georgia,serif;position:absolute;top:142px;right:12px;box-shadow:0 4px 16px #0006}.candle-btn:hover{filter:brightness(1.15)}.candle-form label{opacity:.85;margin:10px 0 4px;font-size:13px;display:block}.candle-form input,.candle-form textarea{box-sizing:border-box;color:#f1e3c4;resize:vertical;background:#ffffff0f;border:1px solid #6b5326;border-radius:8px;width:100%;margin-top:5px;padding:9px 11px;font:16px Georgia,serif;display:block}.candle-form input:focus,.candle-form textarea:focus{border-color:#c9a24a;outline:none}.light-btn{color:#2a1d0c;cursor:pointer;background:#c9a24a;border:1px solid #c9a24a;border-radius:999px;padding:9px 20px;font:700 14px Georgia,serif}.candle-note{z-index:40}.candle-closeup{color:#f1e3c4;text-align:center;z-index:40;background:#100b06e0;border:1px solid #6b5326;border-radius:14px;width:min(460px,100% - 24px);padding:14px 20px 12px;position:absolute;bottom:40px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #0000008c}.candle-closeup small{letter-spacing:.12em;text-transform:uppercase;color:#c9a24a;font-size:11px;display:block}.candle-closeup h3{color:#f3d98c;margin:4px 0 6px;font-size:22px;font-weight:600}.candle-closeup .intention{opacity:.92;margin:0 0 8px;font-size:15px;font-style:italic}.candle-closeup .x{color:#f1e3c4;cursor:pointer;opacity:.8;background:0 0;border:none;font-size:24px;position:absolute;top:6px;right:10px}.candle-closeup .burn{background:#ffffff24;border-radius:2px;height:4px;margin:6px 0;overflow:hidden}.candle-closeup .burn i{background:linear-gradient(90deg,#c9a24a,#ffcf7a);height:100%;display:block}.candle-closeup .left{opacity:.85;font-size:12.5px}.prayer-bar{pointer-events:none;flex-direction:column;align-items:center;gap:12px;display:flex;position:absolute;bottom:36px;left:0;right:0}.prayer-bar p{text-align:center;color:#f1e3c4;letter-spacing:.02em;background:#0e0a068c;border-radius:999px;max-width:min(520px,88vw);margin:0;padding:10px 24px;font:italic 18px Georgia,serif}.prayer-btns{pointer-events:auto;gap:10px;display:flex}.prayer-btns button{color:#f1e3c4;cursor:pointer;background:#140e0899;border:1px solid #6b5326;border-radius:999px;padding:8px 20px;font:14px Georgia,serif}.prayer-btns button:hover{background:#3c2c14cc}.menu-x{color:#f1e3c4;cursor:pointer;opacity:.75;background:0 0;border:0;border-radius:50%;width:30px;height:30px;padding:0;font:22px Georgia,serif;position:absolute;top:8px;right:10px}.menu-x:hover{opacity:1;background:#ffffff1a}.landing{color:#f1e3c4;box-sizing:border-box;background:radial-gradient(at 50% -10%,#3a2d1e 0%,#14100c 60%);padding:40px 20px 30px;font-family:Georgia,Times New Roman,serif;position:fixed;inset:0;overflow-y:auto}.landing header{text-align:center;max-width:760px;margin:0 auto 28px}.landing h1{letter-spacing:.02em;color:#f3d98c;margin:0 0 8px;font-size:clamp(28px,5vw,46px);font-weight:600}.landing header p{opacity:.85;margin:0;font-size:clamp(15px,2.2vw,19px)}.tiles{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;max-width:1100px;margin:0 auto;display:grid}.tile{aspect-ratio:3/2;cursor:pointer;color:inherit;font:inherit;text-align:left;background:#1b140d;border:1px solid #6b5326;border-radius:14px;padding:0;transition:transform .2s,border-color .2s;display:block;position:relative;overflow:hidden;box-shadow:0 8px 26px #00000073}.tile img{object-fit:cover;width:100%;height:100%;transition:transform .5s;position:absolute;inset:0}.tile.open:hover{border-color:#c9a24a;transform:translateY(-3px)}.tile.open:hover img{transform:scale(1.04)}.tile .shade{background:linear-gradient(#0000000d 40%,#0a0602d1 100%);position:absolute;inset:0}.tile .label{flex-direction:column;gap:2px;display:flex;position:absolute;bottom:12px;left:14px;right:14px}.tile .label b{color:#fff4d8;text-shadow:0 2px 8px #000000b3;font-size:20px;font-weight:600}.tile .label small{opacity:.85;font-size:13px}.tile .badge{letter-spacing:.04em;color:#f3d98c;background:#140e08b8;border:1px solid #6b5326;border-radius:999px;padding:3px 11px;font-size:12px;position:absolute;top:10px;right:10px}.tile.open .badge{color:#2a1d0c;background:#c9a24a;border-color:#c9a24a;font-weight:600}.tile.soon{cursor:default}.tile.soon img{filter:grayscale(.55)brightness(.7)}.tile.more{box-shadow:none;opacity:.75;background:0 0;border-style:dashed;justify-content:center;align-items:center;font-size:17px;font-style:italic;display:flex}.landing footer{opacity:.6;max-width:1100px;margin:26px auto 0;font-size:11px;line-height:1.6}.landing footer a{color:inherit}.gaze-btn{color:#f1e3c4;cursor:pointer;background:#140e089e;border:1px solid #c9a24a;border-radius:999px;padding:8px 18px;font:14px Georgia,serif;position:absolute;top:100px;left:18px}.gaze-btn:hover{background:#463214cc}.lang-switch{background:#140e0899;border:1px solid #6b5326;border-radius:999px;gap:4px;padding:3px;display:inline-flex}.lang-switch button{color:#f1e3c4;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:3px 12px;font:13px Georgia,serif}.lang-switch button.on{color:#2a1d0c;background:#c9a24a}.landing.ed{color:#fff;background:#0b0f18;padding:0;font-family:Inter,SF Pro Display,system-ui,-apple-system,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,sans-serif;display:block;overflow:hidden}.ed-bg{position:absolute;inset:0}.ed-bg img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1s,transform 9s ease-out;position:absolute;inset:0;transform:scale(1.07)}.ed-bg img.on{opacity:1;transform:scale(1)}.ed-bg img.soon{filter:saturate(.5)brightness(.85)}.ed-shade{background:linear-gradient(#080c1480 0%,#080c1400 26% 42%,#080c14d1 100%);position:absolute;inset:0}.ed-top{z-index:3;justify-content:space-between;align-items:center;padding:22px clamp(18px,4vw,48px);display:flex;position:absolute;top:0;left:0;right:0}.ed-mark{letter-spacing:.3em;text-transform:uppercase;text-shadow:0 1px 12px #0006;font-size:12px;font-weight:500}.ed .lang-switch{-webkit-backdrop-filter:blur(12px);background:#ffffff29;border:1px solid #ffffff4d}.ed .lang-switch button{color:#fff;font-family:inherit}.ed .lang-switch button.on{color:#111;background:#fff}.ed-hero{z-index:3;position:absolute;bottom:214px;left:clamp(18px,4vw,48px);right:clamp(18px,4vw,48px)}.ed-hero small{letter-spacing:.2em;opacity:.85;font-size:12px;font-weight:500;display:block}.ed-hero h1{letter-spacing:-.025em;text-shadow:0 2px 30px #0000004d;margin:12px 0 8px;font-size:clamp(38px,8vw,104px);font-weight:300;line-height:1.02;animation:.8s cubic-bezier(.2,.7,.2,1) both edIn}@keyframes edIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.ed-hero p{opacity:.92;margin:0 0 24px;font-size:clamp(16px,2vw,22px);font-weight:300}.ed-enter{color:#111;cursor:pointer;background:#fff;border:0;border-radius:999px;align-items:center;gap:12px;padding:14px 30px;font:500 16px/1 inherit;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 10px 30px #0000004d}.ed-enter:hover{transform:translateY(-2px);box-shadow:0 16px 40px #0006}.ed-enter i{font-style:normal;transition:transform .2s}.ed-enter:hover i{transform:translate(4px)}.ed-soon{letter-spacing:.06em;-webkit-backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff80;border-radius:999px;padding:12px 24px;font-size:14px;display:inline-block}.ed-rail{z-index:3;scroll-snap-type:x proximity;scrollbar-width:none;gap:14px;padding:0 clamp(18px,4vw,48px);display:flex;position:absolute;bottom:58px;left:0;right:0;overflow-x:auto}.ed-rail::-webkit-scrollbar{display:none}.ed-rail button{color:#fff;text-align:left;cursor:pointer;opacity:.75;scroll-snap-align:center;background:0 0;border:0;flex:none;width:148px;padding:0;font-family:inherit;transition:opacity .3s,transform .3s}.ed-rail button:hover,.ed-rail button.on{opacity:1}.ed-rail button.on{transform:translateY(-4px)}.ed-rail button img{aspect-ratio:3/2;object-fit:cover;border:2px solid #0000;border-radius:14px;width:100%;transition:border-color .3s;display:block}.ed-rail button.soon img{filter:saturate(.5)brightness(.8)}.ed-rail button.on img{border-color:#fff}.ed-rail button span{text-shadow:0 1px 8px #00000080;margin-top:8px;font-size:13px;font-weight:500;display:block}.ed-more{aspect-ratio:3/2;opacity:.8;border:1.5px dashed #fff6;border-radius:14px;flex-direction:column;flex:0 0 148px;justify-content:center;align-items:center;gap:4px;display:flex}.ed-more span{font-size:26px;font-weight:200;line-height:1}.ed-more em{letter-spacing:.06em;font-size:11px;font-style:normal}.ed-foot{z-index:3;font-size:11px;position:absolute;bottom:16px;left:clamp(18px,4vw,48px);right:clamp(18px,4vw,48px)}.ed-foot>button{color:#ffffffb3;font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-family:inherit;text-decoration:underline}.ed-foot p{-webkit-backdrop-filter:blur(10px);color:#dfe5f5;background:#0a0e18c7;border-radius:12px;max-width:900px;margin:0;padding:12px 14px;line-height:1.6;position:absolute;bottom:26px;left:0;right:0}.ed-foot a{color:inherit}@media (width<=640px){.ed-hero{bottom:188px}.ed-rail button,.ed-more{flex-basis:120px;width:120px}.ed-rail{bottom:54px}}.landing.ed .ed-top{max-width:none;margin:0}.landing.ed .ed-hero h1{color:#fff;font-size:clamp(38px,8vw,104px)}.landing.ed .ed-hero p{opacity:.92}.landing.ed footer{opacity:1;max-width:none;margin:0}.ed .lang-switch{white-space:nowrap;flex-shrink:0}.ed .lang-switch button{white-space:nowrap}@media (width<=640px){.ed-mark{letter-spacing:.22em;max-width:52%;font-size:10px;line-height:1.5}.ed-top{padding-top:18px}}.lang-fixed{z-index:31;position:absolute;top:52px;right:64px}.lang-menu{font-family:Georgia,Times New Roman,serif;display:inline-block;position:relative}.lang-menu-btn{color:#f3d98c;cursor:pointer;background:#140e08c7;border:1px solid #c9a24a;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font:600 13px Georgia,serif;display:inline-flex;box-shadow:0 4px 16px #00000073}.lang-menu-btn i{opacity:.8;font-size:10px;font-style:normal}.lang-menu-btn:hover{filter:brightness(1.15)}.lang-menu ul{background:#140e08f0;border:1px solid #6b5326;border-radius:14px;min-width:150px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px #0000008c}.lang-menu li button{text-align:left;color:#f1e3c4;cursor:pointer;background:0 0;border:0;border-radius:9px;width:100%;padding:8px 12px;font:14px Georgia,serif;display:block}.lang-menu li button:hover{background:#c9a24a2e}.lang-menu li button.on{color:#2a1d0c;background:#c9a24a}@media (width<=640px){.lang-fixed{right:60px}.lang-menu-btn span{display:none}.lang-menu-btn{padding:9px}}.hud .online.off{color:#c9a24a;opacity:.85}.room-pick{margin-left:14px;display:inline-block;position:relative}.hud .room-pick .online{cursor:pointer;background:#141e148c;border:1px solid #9fe3a68c;border-radius:999px;margin-left:0;padding:3px 10px;font:13px Georgia,serif}.hud .room-pick .online i{opacity:.8;font-size:10px;font-style:normal}.room-list{z-index:40;text-align:left;pointer-events:auto;background:#140e08f2;border:1px solid #6b5326;border-radius:14px;flex-direction:column;gap:3px;min-width:200px;padding:8px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 30px #0000008c}.room-list b{letter-spacing:.14em;text-transform:uppercase;color:#c9a24a;padding:2px 8px 4px;font-size:11px;font-weight:500}.room-list button{color:#f1e3c4;cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:space-between;gap:18px;padding:8px 10px;font:14px Georgia,serif;display:flex}.room-list button:hover:not(:disabled){background:#c9a24a2e}.room-list button.on{color:#2a1d0c;background:#c9a24a}.room-list button:disabled{opacity:.45;cursor:default}.room-list button small{opacity:.8}.room-list button.new{color:#9fe3a6;justify-content:flex-start}.tower-fade{opacity:0;pointer-events:none;z-index:40;background:#000;position:fixed;inset:0}.tower-card{z-index:41;color:#f3e6c8;text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#16100ad1;border:1px solid #c8a05073;border-radius:14px;flex-direction:column;align-items:center;gap:6px;min-width:220px;max-width:calc(100vw - 32px);padding:14px 22px;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.tower-card b{color:#f6d98c;font:600 34px Georgia,serif}.tower-card small{letter-spacing:.14em;text-transform:uppercase;color:#d9bf84;font-size:11px}.tower-views{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.tower-views button,.tower-go button:not(.link){color:#f6e7c4;cursor:pointer;font:inherit;background:#3c2a14b3;border:1px solid #c8a05099;border-radius:999px;padding:8px 14px}.tower-views button:hover,.tower-go button:not(.link):hover{background:#78541ecc}.tower-hint{opacity:.75;font-size:12px}.tower-go{align-items:center;gap:14px;margin-top:4px;display:flex}.tower-card .link{color:#d9bf84;cursor:pointer;font:inherit;background:0 0;border:0;text-decoration:underline}.light-pick{z-index:12;flex-direction:column;align-items:flex-start;gap:6px;max-width:250px;display:flex;position:fixed;top:156px;left:16px}.light-pick button{font:inherit;cursor:pointer;color:#e9d9b4;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#16100ab3;border:1px solid #c8a05073}.light-head{white-space:nowrap;border-radius:999px;padding:7px 14px;font-size:12.5px}.light-head b{color:#f6d98c;font-weight:600}.light-hint{color:#fff3d6;cursor:pointer;background:#785018e0;border:1px solid #f0c878b3;border-radius:12px;padding:9px 12px;font-size:12px;line-height:1.4;animation:.6s light-hint-in}@keyframes light-hint-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.light-list{flex-direction:column;gap:4px;display:flex}.light-list button{text-align:left;border-radius:12px;flex-direction:column;gap:1px;padding:7px 12px;font-size:13px;display:flex}.light-list button small{opacity:.75;font-size:11px}.light-list button.on{color:#fff3d6;background:#8c6428cc;border-color:#f0c878cc}.tower-cap{color:#f3e6c8;max-width:480px;min-height:2.9em;font:italic 16px/1.45 Georgia,serif}.tower-on .skip.left,.tower-on .gaze-btn,.tower-on .stations-chip,.tower-on .candle-btn,.tower-on .offering-btn,.tower-on .menu-pill,.tower-on .hud.bottom{display:none!important}.tower-card{max-width:calc(100vw - 200px);bottom:24px}.tower-card.wide{width:min(560px,100vw - 200px)}.light-list{max-height:calc(100vh - 256px);overflow-y:auto}@media (width<=560px){.tower-card,.tower-card.wide{width:calc(100vw - 24px);max-width:calc(100vw - 24px)}}@media (width<=900px),(height<=520px){.hud.top{text-align:left;font-size:16px;line-height:1.25;top:9px;left:10px;right:160px}.hud.top>b{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.hud.top>span:not(.room-pick){display:none}.room-pick{margin-top:4px;margin-left:0}.lang-fixed{top:8px;right:56px}.sound-btn{top:8px;right:10px}.skip.left{padding:7px 14px;font-size:13px;top:64px;left:10px}.offering-btn{top:64px;right:10px}.gaze-btn{padding:7px 14px;font-size:13px;top:104px;left:10px}.candle-btn{top:104px;right:10px}.light-pick{top:144px;left:10px}.light-list{max-height:calc(100vh - 254px)}.stations-chip,.hud.bottom{display:none}.credit{text-align:center;opacity:.75;max-width:none;font-size:8.5px;line-height:1.2;bottom:2px;left:6px;right:6px}.menu-pill{bottom:64px;left:10px}.mass-card{max-height:calc(100vh - 254px);bottom:104px;overflow-y:auto}.menu-home{max-height:calc(100vh - 168px)}.toast{bottom:108px}.station-btn{bottom:120px}.tower-card{bottom:60px}.prayer-bar{bottom:62px}}@media (height<=520px){.menu-home,.mass-card{max-height:calc(100vh - 116px)}.light-pick{top:144px}}.menu-pill{color:#2a1d0c;z-index:35;background:linear-gradient(#f3d98c,#c9a24a);border:2px solid #8a6a26;padding:11px 24px;font:600 16px Georgia,serif;animation:2.8s ease-out infinite menu-ring;box-shadow:0 8px 22px -8px #000000b3}.menu-pill span{margin-right:6px}@keyframes menu-ring{0%{box-shadow:0 8px 22px -8px #000000b3,0 0 #f3d98c99}70%{box-shadow:0 8px 22px -8px #000000b3,0 0 0 16px #f3d98c00}to{box-shadow:0 8px 22px -8px #000000b3,0 0 #f3d98c00}}.menu-hint{z-index:35;color:#fff3d6;cursor:pointer;background:#140e08e6;border:1px solid #c9a24a;border-radius:14px;max-width:min(300px,100% - 32px);padding:11px 14px;font:14px/1.4 Georgia,serif;animation:.6s light-hint-in;position:absolute;bottom:118px;left:16px}@media (width<=900px),(height<=520px){.menu-hint{bottom:108px;left:10px}.menu-open .skip.left,.menu-open .gaze-btn,.menu-open .light-pick,.menu-open .offering-btn,.menu-open .candle-btn,.menu-open .hud.top,.menu-open .menu-hint{display:none!important}.menu-open .menu-home{max-height:none;top:56px;bottom:30px;overflow-y:auto}:is(body:has(.mass-card) .light-pick,body:has(.candle-note) .light-pick,body:has(.prayer-backdrop) .light-pick){display:none}}.mass-intro{text-align:center;border-bottom:1px solid #c9a24a59;flex-direction:column;gap:2px;margin-bottom:8px;padding-bottom:8px;display:flex}.mass-intro b{color:#fff3d6;font-size:16px}.mass-intro strong{color:#f3d98c;font-size:17px;font-weight:600}.mass-intro span{opacity:.85;font-size:13px}@media (width<=900px),(height<=520px){.mass-chip{width:auto;top:144px;left:10px;right:10px;transform:none}body:has(.mass-chip) .light-pick{display:none}}@media (height<=520px) and (width>=600px){.mass-chip{top:60px;left:130px;right:130px}body:has(.mass-chip) .light-pick{display:block}}.photo-btn{z-index:30;color:#f3d98c;cursor:pointer;background:#140e08b3;border:1px solid #6b5326;border-radius:999px;padding:7px 14px;font:600 13px Georgia,serif;position:absolute;top:184px;right:12px}@media (width<=900px),(height<=520px){.photo-btn{top:144px;right:10px}body:has(.mass-chip) .photo-btn{display:none}}.photo-on .skip.left,.photo-on .gaze-btn,.photo-on .light-pick,.photo-on .offering-btn,.photo-on .candle-btn,.photo-on .hud,.photo-on .menu-pill,.photo-on .menu-hint,.photo-on .mass-chip,.photo-on .stations-chip,.photo-on .lang-fixed,.photo-on .sound-btn,.photo-on .vignette,.photo-on .credit,.photo-on .toast,.photo-on .station-btn{display:none!important}.photo-ui{pointer-events:none;z-index:45;position:absolute;inset:0}.photo-x{color:#f3d98c;cursor:pointer;pointer-events:auto;background:#140e08bf;border:1px solid #c9a24a;border-radius:50%;width:40px;height:40px;font-size:24px;line-height:1;position:absolute;top:12px;left:12px}.photo-bar{padding:8px 10px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(#0000,#0a06028c);flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;bottom:0;left:0;right:0}.photo-strip{scrollbar-width:none;pointer-events:auto;gap:6px;max-width:100%;padding:2px 0;display:flex;overflow-x:auto}.photo-strip::-webkit-scrollbar{display:none}.photo-strip button{color:#f6e7c4;cursor:pointer;white-space:nowrap;background:#140e08b8;border:1px solid #c9a24ab3;border-radius:999px;flex:none;padding:6px 12px;font:13px Georgia,serif}.photo-strip button.on{color:#2a1d0c;background:#c9a24a}.photo-shutter{cursor:pointer;pointer-events:auto;background:#fff3d626;border:4px solid #fff3d6;border-radius:50%;place-items:center;width:68px;height:68px;padding:0;display:grid}.photo-shutter i{background:#fff3d6;border-radius:50%;width:50px;height:50px;display:block}.photo-shutter:active i{transform:scale(.9)}.photo-hint{color:#fff3d6bf;text-shadow:0 1px 4px #000;font-size:11px}@media (height<=520px){.photo-bar{flex-flow:wrap;justify-content:center;align-items:center}.photo-hint{display:none}.photo-shutter{width:54px;height:54px}.photo-shutter i{width:38px;height:38px}}.photo-review{z-index:50;background:#080502f0;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:14px;display:flex;position:absolute;inset:0}.photo-review img{object-fit:contain;border-radius:10px;max-width:100%;max-height:calc(100% - 80px);box-shadow:0 10px 40px #000000b3}.photo-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.photo-actions button{color:#f6e7c4;cursor:pointer;background:#140e08cc;border:1px solid #c9a24a;border-radius:999px;padding:11px 22px;font:600 15px Georgia,serif}.photo-actions button.primary{color:#2a1d0c;background:linear-gradient(#f3d98c,#c9a24a)}.photo-count{color:#fff3d680;text-shadow:0 2px 18px #0009;pointer-events:none;font:600 96px Georgia,serif;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.photo-back{color:#fff3d68c;cursor:pointer;pointer-events:auto;background:#140e0840;border:0;border-radius:50%;width:36px;height:36px;font-size:20px;position:absolute;top:12px;left:12px}.mass-note{text-align:center;background:#c9a24a24;border:1px solid #c9a24a80;border-radius:10px;flex-direction:column;align-items:center;gap:6px;margin-bottom:8px;padding:8px 10px;font-size:13px;display:flex}.mass-note button{color:#f6e7c4;cursor:pointer;background:#140e08b3;border:1px solid #c9a24a;border-radius:999px;padding:7px 14px;font:600 13px Georgia,serif}.tower-card:has(.tower-cap:empty){-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;min-width:0;padding:0}.tower-card:has(.tower-cap:empty) small{display:none}.tower-card:has(.tower-cap:empty) .tower-cap{display:none}.cv{--sky-top:#a9c3dc;--sky-mid:#dfe6e8;--dawn:#f8ead2;--stone:#f4ede1;--stone-2:#e9dfcd;--ink:#2e2820;--ink-dim:#6f6555;--ink-faint:#a2967f;--gold:#b08a46;--gold-soft:#b08a4659;--sil-fill:#f6efe2;--sil-line:#785f3c8c}.cv,.cv *,.cv :before,.cv :after{box-sizing:border-box;margin:0;padding:0}.cv{scroll-behavior:smooth;background:var(--stone);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Cormorant Garamond,serif;position:fixed;inset:0;overflow:hidden auto}.cv-hero{text-align:center;background:linear-gradient(180deg,var(--sky-top) 0%,var(--sky-mid) 45%,var(--dawn) 80%,var(--stone) 100%);flex-direction:column;justify-content:center;align-items:center;height:100vh;min-height:620px;display:flex;position:relative;overflow:hidden}.cv-light{pointer-events:none;transform:translate3d(var(--px,0px),0,0);transition:transform 2.5s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0}.cv-sun{pointer-events:none;opacity:0;background:radial-gradient(circle,#fffaeb 0%,#fff0cdbf 22%,#ffe8be40 45%,#0000 68%);width:110vh;height:110vh;animation:3.2s cubic-bezier(.3,.6,.2,1) .2s forwards cv-dawn,7s ease-in-out 3.4s infinite alternate cv-breathe;position:absolute;top:-38vh;left:50%;transform:translate(-50%)scale(.25)}@keyframes cv-dawn{to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes cv-breathe{0%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:.82;transform:translate(-50%)scale(1.08)}}.cv-pour{transform-origin:50% 0;opacity:0;animation:3.6s cubic-bezier(.25,.7,.2,1) .5s forwards cv-pour;position:absolute;inset:0;transform:scaleY(0)}@keyframes cv-pour{60%{opacity:1}to{opacity:1;transform:scaleY(1)}}.cv-sweep{filter:blur(8px);opacity:0;background:conic-gradient(from 168deg at 50% 0,#0000 0deg,#fffae800 8deg,#fffcf0 12deg,#fffae800 16deg,#0000 24deg);width:240vw;height:150vh;animation:11s ease-in-out 4s infinite cv-sweep;position:absolute;top:-30vh;left:50%;transform:translate(-50%)rotate(-12deg);-webkit-mask-image:radial-gradient(45% 75% at 50% 0,#000 20%,#0000 75%);mask-image:radial-gradient(45% 75% at 50% 0,#000 20%,#0000 75%)}@keyframes cv-sweep{0%{opacity:0;transform:translate(-50%)rotate(-14deg)}20%{opacity:.9}80%{opacity:.9}to{opacity:0;transform:translate(-50%)rotate(14deg)}}.cv-dusk{pointer-events:none;z-index:1;background:linear-gradient(#6f7c8c 0%,#a7a69e 55%,#cfc3ad 100%);animation:3.4s .1s forwards cv-lift;position:absolute;inset:0}@keyframes cv-lift{to{opacity:0;visibility:hidden}}.cv-rays{filter:blur(2.5px);pointer-events:none;background:repeating-conic-gradient(from 166deg at 50% 0,#fff9e800 0deg,#fff9e8f2 2.2deg,#fff9e800 4.5deg,#fff6de00 8deg);width:240vw;height:150vh;animation:16s ease-in-out infinite alternate cv-turn;position:absolute;top:-30vh;left:50%;transform:translate(-50%);-webkit-mask-image:radial-gradient(55% 95% at 50% 0,#000 30%,#0000 85%);mask-image:radial-gradient(55% 95% at 50% 0,#000 30%,#0000 85%)}.cv-rays.cv-r2{opacity:.7;filter:blur(9px);animation-duration:23s;animation-direction:alternate-reverse}@keyframes cv-turn{0%{transform:translate(-50%)rotate(-5deg)}to{transform:translate(-50%)rotate(5deg)}}#motes{pointer-events:none;opacity:0;animation:3s 1.6s forwards cv-fade;position:absolute;inset:0}.cv-vault{pointer-events:none;background:radial-gradient(70% 120% at 50% 115%,#0000 62%,#b0966e1a 63%,#0000 66%),radial-gradient(85% 140% at 50% 120%,#0000 62%,#b0966e14 63%,#0000 66%);position:absolute;inset:0}.cv-hero-inner{z-index:2;padding:0 16px;position:relative}.cv-cross{opacity:0;width:14px;height:22px;margin:0 auto 34px;animation:2.4s 2.2s forwards cv-rise;position:relative}.cv-cross:before,.cv-cross:after{content:"";background:var(--gold);position:absolute}.cv-cross:before{width:2px;height:22px;top:0;left:6px}.cv-cross:after{width:14px;height:2px;top:6px;left:0}.cv-eyebrow{letter-spacing:.5em;color:var(--gold);opacity:0;font-family:Cinzel,serif;font-size:11px;animation:2.4s 2.6s forwards cv-rise}.cv h1{letter-spacing:.18em;color:#3a3127;text-shadow:0 0 40px #fff8e6e6,0 1px #fff9;opacity:0;margin:22px 0 18px;padding-left:.18em;font-family:Cinzel,serif;font-size:clamp(44px,9vw,112px);font-weight:400;animation:3s 2.9s forwards cv-rise}.cv-tagline{color:var(--ink-dim);opacity:0;font-size:clamp(18px,2.4vw,24px);font-style:italic;animation:2.6s 3.5s forwards cv-rise}.cv-enter{z-index:2;color:var(--ink-dim);letter-spacing:.4em;opacity:0;flex-direction:column;align-items:center;gap:14px;font-family:Cinzel,serif;font-size:11px;text-decoration:none;animation:2s 4.6s forwards cv-fade;display:flex;position:absolute;bottom:42px;left:50%;transform:translate(-50%)}.cv-enter span.line{background:linear-gradient(var(--gold),transparent);width:1px;height:46px;animation:2.6s ease-in-out infinite cv-drip}@keyframes cv-drip{0%{transform-origin:top;transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}51%{transform-origin:bottom}to{transform-origin:bottom;transform:scaleY(0)}}@keyframes cv-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes cv-fade{to{opacity:1}}.cv-nave{background:radial-gradient(ellipse 60% 40% at 50% 0%, #fff4d7e6, transparent 70%), linear-gradient(180deg,var(--stone) 0%,#f1e8d9 50%,var(--stone) 100%);padding:110px 16px 130px;position:relative}.cv-nave-head{text-align:center;max-width:620px;margin:0 auto 80px}.cv-nave-head .cv-eyebrow{opacity:1;animation:none}.cv-nave-head h2{letter-spacing:.14em;color:var(--ink);margin:18px 0 16px;font-family:Cinzel,serif;font-size:clamp(26px,4vw,38px);font-weight:400}.cv-nave-head p{color:var(--ink-dim);font-size:19px;line-height:1.6}.cv-rule{background:var(--gold-soft);width:60px;height:1px;margin:28px auto 0}.cv-portals{grid-template-columns:repeat(3,1fr);gap:60px 40px;max-width:1180px;margin:0 auto;display:grid}.cv-portal{--hue:176,138,70;cursor:pointer;color:inherit;opacity:0;outline:none;flex-direction:column;align-items:center;text-decoration:none;transition:opacity 1.2s,transform 1.2s;display:flex;position:relative;transform:translateY(30px)}.cv-portal.cv-in{opacity:1;transform:none}.cv-arch{aspect-ratio:3/4;background:radial-gradient(circle at 50% 22%,#fffaec,#fff0d299 30%,#0000 60%),linear-gradient(#d8e5ef 0%,#eef0ea 50%,#f6ead4 100%);border:1px solid #a0825559;border-radius:50% 50% 4px 4px/36% 36% 4px 4px;width:100%;transition:box-shadow .9s,border-color .9s;position:relative;overflow:hidden;box-shadow:0 20px 40px -24px #5a462859,inset 0 0 0 6px #f4ede1d9}.cv-arch:before{content:"";pointer-events:none;z-index:4;border:1px solid #a0825540;border-radius:50% 50% 2px 2px/36% 36% 2px 2px;position:absolute;inset:10px}.cv-arch .cv-glow{z-index:0;filter:blur(4px);opacity:.55;background:repeating-conic-gradient(from 160deg at 50% 0,#fff8e400 0deg,#fff8e4b3 3deg,#fff8e400 6deg 11deg);transition:opacity 1s,transform 1.4s;position:absolute;inset:-20% -40% 0;-webkit-mask-image:radial-gradient(60% 80% at 50% 0,#000 20%,#0000 75%);mask-image:radial-gradient(60% 80% at 50% 0,#000 20%,#0000 75%)}.cv-arch:after{content:"";z-index:1;background:radial-gradient(circle at 50% 25%, rgba(var(--hue),.35), transparent 60%);opacity:0;mix-blend-mode:multiply;transition:opacity 1s;position:absolute;inset:0}.cv-portal:hover .cv-arch,.cv-portal:focus-visible .cv-arch{border-color:rgba(var(--hue),.6);box-shadow:0 30px 60px -24px rgba(var(--hue),.55), 0 0 50px -10px #ffecbee6, inset 0 0 0 6px #f4ede1d9}.cv-portal:hover .cv-arch:after,.cv-portal:focus-visible .cv-arch:after{opacity:1}.cv-portal:hover .cv-glow{opacity:1;transform:rotate(2deg)}.cv-arch svg{z-index:2;filter:drop-shadow(0 -2px 12px #fff5dcb3);width:78%;height:auto;transition:transform 1.2s cubic-bezier(.2,.7,.2,1);position:absolute;bottom:0;left:50%;transform:translate(-50%)}.cv-portal:hover .cv-arch svg{transform:translate(-50%)translateY(-6px)scale(1.03)}.cv-sil{fill:var(--sil-fill);stroke:var(--sil-line);stroke-width:.8px;stroke-linejoin:round}.cv-det{fill:none;stroke:#785f3c73;stroke-width:.7px}.cv-win{fill:rgba(var(--hue),.35);stroke:#785f3c80;stroke-width:.6px;transition:fill 1s}.cv-portal:hover .cv-win{fill:rgba(var(--hue),.9)}.cv-floor{z-index:3;background:linear-gradient(#0000,#e9dfcdf2);height:16%;position:absolute;bottom:0;left:0;right:0}.cv-label{text-align:center;margin-top:26px}.cv-label .cv-no{letter-spacing:.4em;color:var(--gold);font-family:Cinzel,serif;font-size:10px}.cv-label h3{letter-spacing:.08em;color:var(--ink);margin:10px 0 6px;font-family:Cinzel,serif;font-size:18px;font-weight:400;transition:color .6s}.cv-portal:hover .cv-label h3{color:rgb(var(--hue))}.cv-label .cv-place{color:var(--ink-dim);font-size:16px;font-style:italic}.cv-label .cv-cta{letter-spacing:.35em;color:var(--ink-faint);opacity:0;margin-top:14px;font-family:Cinzel,serif;font-size:10px;transition:all .6s;display:inline-block;transform:translateY(-4px)}.cv-portal:hover .cv-cta,.cv-portal:focus-visible .cv-cta{opacity:1;color:var(--gold);transform:none}.cv-portal.cv-open .cv-cta{opacity:1;color:var(--gold);border:1px solid var(--gold-soft);border-radius:999px;padding:6px 14px;transform:none}.cv-portal.cv-open:hover .cv-cta{background:var(--gold);color:#fffaf0}.cv-portal.cv-soon{cursor:default}.cv-portal.cv-soon .cv-cta{opacity:1;color:var(--ink-faint);letter-spacing:.3em;border:1px solid #a2967f66;border-radius:999px;padding:6px 12px;transform:none}.cv-portal.cv-soon .cv-arch{filter:saturate(.55)brightness(.97)}.cv-portal.cv-soon:hover .cv-arch{border-color:#a0825559;box-shadow:0 20px 40px -24px #5a462859,inset 0 0 0 6px #f4ede1d9}.cv-portal.cv-soon:hover .cv-arch:after{opacity:0}.cv-portal.cv-soon:hover .cv-arch svg{transform:translate(-50%)}.cv-portal.cv-soon:hover .cv-win{fill:rgba(var(--hue),.35)}.cv-portal.cv-soon:hover .cv-label h3{color:var(--ink)}.cv-portal.cv-soon.cv-nudge .cv-cta{color:var(--gold);border-color:var(--gold-soft)}.cv-closing{text-align:center;color:var(--ink-faint);background:var(--stone);padding:30px 16px 90px}.cv-closing .cv-latin{letter-spacing:.4em;color:var(--gold);font-family:Cinzel,serif;font-size:12px}.cv-closing p{margin-top:12px;font-size:16px;font-style:italic}.cv-veil{z-index:50;pointer-events:none;opacity:0;background:radial-gradient(circle at 50% 45%,#fffdf6 0%,#f8eedb 45%,#efe3cc 100%);flex-direction:column;justify-content:center;align-items:center;gap:16px;transition:opacity 1.4s;display:flex;position:fixed;inset:0}.cv-veil.cv-on{opacity:1;pointer-events:all}.cv-veil .cv-v-eyebrow{letter-spacing:.5em;color:var(--gold);font-family:Cinzel,serif;font-size:11px}.cv-veil .cv-v-name{letter-spacing:.12em;text-align:center;color:var(--ink);padding:0 16px;font-family:Cinzel,serif;font-size:clamp(24px,4vw,40px)}.cv-veil .cv-v-sub{color:var(--ink-dim);font-style:italic}.cv-veil .cv-v-bar{background:#b08a4633;width:120px;height:1px;margin-top:20px;overflow:hidden}.cv-veil .cv-v-bar i{background:var(--gold);width:0;height:100%;transition:width 2s;display:block}.cv-veil.cv-on .cv-v-bar i{width:100%}@media (width<=900px){.cv-portals{grid-template-columns:repeat(2,1fr);gap:48px 22px}}@media (width<=520px){.cv-portals{gap:40px 14px}.cv-label h3,.cv-label .cv-place{font-size:14px}.cv-label .cv-cta{font-size:9px}.cv-nave{padding:90px 16px 100px}.cv-nave-head{margin-bottom:56px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.cv-dusk{display:none}.cv-sun{opacity:1!important;transform:translate(-50%)!important}.cv-pour,#motes,.cv-cross,.cv-eyebrow,h1,.cv-tagline,.cv-enter,.cv-portal{opacity:1!important;transform:none!important}}.cv-lang{z-index:60;position:fixed;top:14px;right:14px}.cv .lang-switch{-webkit-backdrop-filter:blur(8px);background:#fffcf4b8;border:1px solid #a0825566}.cv .lang-switch button{color:var(--ink-dim);letter-spacing:.08em;font-family:Cinzel,serif;font-size:11px}.cv .lang-switch button.on{background:var(--gold);color:#fffaf0}@media (width<=520px){.cv .lang-switch button{padding:3px 7px;font-size:10px}}.cv .lang-menu-btn{color:var(--ink-dim);letter-spacing:.08em;-webkit-backdrop-filter:blur(8px);background:#fffcf4cc;border:1px solid #a0825580;font-family:Cinzel,serif;font-size:11px;box-shadow:0 4px 16px #785f3c33}.cv .lang-menu ul{background:#fffcf4f5;border:1px solid #a0825566;box-shadow:0 10px 30px #785f3c40}.cv .lang-menu li button{color:var(--ink);font-family:Cormorant Garamond,serif;font-size:17px}.cv .lang-menu li button:hover{background:#b08a4626}.cv .lang-menu li button.on{background:var(--gold);color:#fffaf0}.cv-portal.cv-open .cv-arch{border-color:#b08a46d9;animation:4.2s ease-in-out infinite alternate cv-live;box-shadow:0 26px 50px -22px #b08a4699,0 0 0 1px #b08a468c,0 0 46px -6px #ffe2a0d9,inset 0 0 0 6px #f4ede1e6}@keyframes cv-live{0%{box-shadow:0 26px 50px -22px #b08a4680,0 0 0 1px #b08a4680,0 0 30px -8px #ffe2a099,inset 0 0 0 6px #f4ede1e6}to{box-shadow:0 30px 56px -22px #b08a46b3,0 0 0 1px #b08a46b3,0 0 60px -4px #ffe2a0,inset 0 0 0 6px #f4ede1e6}}.cv-portal.cv-open .cv-glow{opacity:.95}.cv-portal.cv-open .cv-cta{background:var(--gold);color:#fffaf0;border-color:var(--gold);padding:8px 20px;font-weight:500;box-shadow:0 8px 20px -8px #b08a46cc}.cv-portal.cv-open:hover .cv-cta{background:#9a763a}.cv-portal.cv-open .cv-label h3{color:#2a2218}.cv-badge{z-index:6;letter-spacing:.32em;color:var(--gold);background:#fffbf0eb;border:1px solid #b08a4699;border-radius:999px;align-items:center;gap:7px;padding:5px 13px 5px 11px;font-family:Cinzel,serif;font-size:10px;display:inline-flex;position:absolute;top:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px -6px #785f3c80}.cv-badge i{background:#5aae6a;border-radius:50%;width:7px;height:7px;animation:1.9s ease-out infinite cv-ping;box-shadow:0 0 #5aae6a99}@keyframes cv-ping{0%{box-shadow:0 0 #5aae6a8c}70%,to{box-shadow:0 0 0 9px #5aae6a00}}.cv-portal.cv-soon .cv-arch{filter:saturate(.35)brightness(.95);opacity:.78}.cv-portal.cv-soon .cv-label h3,.cv-portal.cv-soon .cv-place{opacity:.6;opacity:.88}.cv-portal.cv-soon .cv-cta{opacity:1;color:#4d4436;letter-spacing:.3em;background:#fffcf4e6;border:1px solid #6e5f4699;padding:8px 18px;font-size:11px;font-weight:500;box-shadow:0 4px 12px -6px #5a462866}.cv-portal.cv-soon.cv-nudge .cv-cta{color:#fffaf0;background:var(--gold);border-color:var(--gold)}.cv-live{color:var(--ink-dim);align-items:center;gap:7px;margin-top:10px;font-family:Cormorant Garamond,serif;font-size:16px;font-style:italic;display:inline-flex}.cv-live i{background:#5aae6a;border-radius:50%;width:7px;height:7px;animation:1.9s ease-out infinite cv-ping}.cv{--ink-dim:#4a4034;--ink-faint:#5f5445}.cv-eyebrow{letter-spacing:.34em;color:#7a5a1e;text-shadow:0 0 14px #fff8e6e6;font-size:14px;font-weight:600}.cv-tagline{color:#3f352a;text-shadow:0 0 18px #fff8e6f2;font-size:clamp(20px,5vw,26px)}.cv-enter{letter-spacing:.3em;color:#5a4318;background:#fffcf4d1;border:1px solid #9a7428bf;border-radius:999px;flex-direction:row;gap:10px;padding:14px 30px;font-size:15px;font-weight:600;bottom:36px;box-shadow:0 8px 22px -10px #785a2899}.cv-enter .cv-line,.cv-enter span.line{display:none}.cv-nave-head h2{color:#2a2218}.cv-nave-head p{color:#3f352a;font-size:20px}.cv-label .cv-no{color:#7a5a1e;font-size:13px}.cv-label h3{color:#2a2218}.cv-label .cv-place{color:#4a4034;font-size:17px}.cv-label .cv-cta{margin-top:14px;font-size:13px;display:inline-block}.cv-live{color:#3f352a;justify-content:center;margin:12px 0 4px;font-size:18px;display:flex}.cv-portal.cv-soon .cv-cta{font-size:13px}@media (width<=520px){.cv h1{letter-spacing:.12em;padding-left:.12em;font-size:clamp(30px,9.2vw,56px)}.cv-eyebrow{letter-spacing:.24em;font-size:13px}.cv-nave-head p{font-size:19px}.cv-label h3{letter-spacing:.05em;font-size:17px}.cv-label .cv-place{font-size:16px}.cv-label .cv-cta,.cv-portal.cv-soon .cv-cta,.cv-portal.cv-open .cv-cta{letter-spacing:.2em;padding:9px 16px;font-size:13px}.cv-lang{justify-content:center;display:flex;top:10px;left:8px;right:8px}.cv .lang-switch{white-space:nowrap;max-width:100%;overflow-x:auto}.cv .lang-switch button{white-space:nowrap;letter-spacing:.02em;flex:none;padding:5px 8px;font-size:12px}}.cv-enter{color:#fffaf0;text-shadow:0 1px 1px #3c280a80;background:linear-gradient(#b8924a,#9a7428);border:2px solid #7a5a1e;animation:2s 4.6s forwards cv-fade,2.6s ease-out 6.6s infinite cv-ring;box-shadow:0 10px 24px -8px #5a4218b3,inset 0 1px #fff0c880}.cv-enter:after{content:"↓";font-size:16px}.cv-enter:hover,.cv-enter:focus-visible{background:linear-gradient(#c49c52,#a67e2e)}@keyframes cv-ring{0%{box-shadow:0 10px 24px -8px #5a4218b3,0 0 #b08a468c}70%{box-shadow:0 10px 24px -8px #5a4218b3,0 0 0 16px #b08a4600}to{box-shadow:0 10px 24px -8px #5a4218b3,0 0 #b08a4600}}@media (width<=520px){.cv .lang-switch{scrollbar-width:none}.cv .lang-switch::-webkit-scrollbar{display:none}.cv .lang-switch button{padding:5px 6px;font-size:11.5px}}.cv-badge{font-weight:600;color:#4d3a14!important;font-size:12px!important}.cv-live i{margin-right:2px}@media (width<=520px){.cv .lang-switch{border-radius:20px;flex-wrap:wrap;justify-content:center;overflow:visible}.cv .lang-switch button{padding:6px 10px;font-size:12.5px}}
