@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-ext-600-normal-4vooXBpG.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-600-normal-DRtaDpgU.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2) format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-ext-400-normal-Drx2k2n9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-400-normal-uvC0WHQr.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-normal-B-1hWBU7.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-400-normal-B7YtguxJ.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-ext-500-normal-CH1kM7og.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-500-normal-DYeaGGzO.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-normal-BsRWmXhO.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-500-normal-zIXX3Q-H.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-ext-600-normal-DaBc-lu7.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-600-normal-Dk3-quAP.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.woff) format("woff")}:root{font-family:DM Sans,sans-serif;font-size:16px;font-synthesis:none;color:#edf1f1;background:#071b2d;--navy:#071b2d;--gold:#d7bb8a;--muted:#b2c2cc;--line:rgba(208,220,226,.18);--serif:"Cormorant Garamond",Georgia,serif}*{box-sizing:border-box}body{margin:0}button,input,a,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button,input{font:inherit}button{color:inherit;cursor:pointer;background:none;border:0}button:disabled{opacity:.35;cursor:default}a{color:inherit;text-decoration:none}button,a,summary{transition:background .2s,border-color .2s,color .2s}button:hover,a:hover{color:var(--gold)}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:4px}svg{flex-shrink:0;stroke-width:1.5}p{line-height:1.75}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400}h1{font-size:clamp(50px,5vw,82px);line-height:1;letter-spacing:-1.8px;margin:22px 0}h1 em,h2 em{font-weight:400;color:var(--gold)}h2{font-size:38px;line-height:1.1}h3{font-weight:500}.eyebrow,.hero-overline{font-size:12px;font-weight:500;letter-spacing:1.6px;color:var(--gold)}.app{position:relative;min-height:100svh;isolation:isolate}.world-background{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-3;background-image:linear-gradient(90deg,#071b2d 5%,#071b2df2 24%,#071b2da0 49%,#071b2d22 80%),linear-gradient(0deg,#071b2d 0%,transparent 45%,#071b2d66),url(/images/hero.jpg);background-size:cover,cover,auto 125%;background-position:center,center,right 45%;background-repeat:no-repeat}.app:not(.page-home) .world-background{filter:brightness(.28) saturate(.65)}.grain{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:6;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.84' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.5' filter='url(%23n)'/%3E%3C/svg%3E")}.sidebar{width:254px;position:fixed;inset:0 auto 0 0;border-right:1px solid var(--line);padding:30px 22px 24px;display:flex;flex-direction:column;background:#051624df;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:8}.brand{display:flex;gap:11px;align-items:center;text-align:left;padding:0;font-size:17px;letter-spacing:1.7px}.brand small{font-size:9px;letter-spacing:1px;display:block;margin-top:7px;color:var(--gold)}.brand-mark{width:38px;height:45px;border:1px solid #a98e5f;border-radius:50% 50% 42% 42%;display:grid;place-items:center;color:var(--gold)}.sidebar-intro{margin:48px 0 25px 10px}.sidebar-intro p{font-family:var(--serif);font-size:33px;line-height:1.15;margin:15px 0 0;color:#e1e8e9}.desktop-nav{display:grid;gap:7px}.desktop-nav button{padding:16px 13px;display:flex;align-items:center;gap:13px;color:#b2c2cc;font-size:15px;border:1px solid transparent;border-radius:3px;text-align:left}.desktop-nav button.active{background:linear-gradient(90deg,#d7bb8a22,#d7bb8a08);color:var(--gold);border-color:#d7bb8a44}.desktop-nav button:hover{background:#ffffff0a;color:var(--gold)}.sidebar-pass{display:flex;align-items:center;text-align:left;gap:10px;margin-top:auto;padding:18px 0;border-bottom:1px solid var(--line);border-top:1px solid var(--line);font-size:13px;color:var(--gold)}.sidebar-pass small{display:block;font-size:13px;color:var(--muted);margin-top:6px}.sidebar-pass>svg:last-child{margin-left:auto}.sidebar-bottom{font-size:11px;letter-spacing:.8px;color:var(--muted);margin-top:25px}.sidebar-bottom small{display:block;font-size:10px;letter-spacing:.3px;margin-top:9px;color:#9db2bf}.status-dot{display:inline-block;width:5px;height:5px;background:var(--gold);border-radius:50%;margin-right:7px}.workspace{margin-left:254px}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 42px;background:#071b2d55}.topbar-label{font-size:12px;letter-spacing:1.5px;color:#c4d0d7}.topbar-label span{margin:0 12px;color:var(--gold)}.topbar-actions{display:flex;align-items:center;gap:18px}.date-button{display:flex;gap:9px;align-items:center;font-size:14px;padding:8px 0}.icon-button{width:44px;height:44px;display:grid;place-items:center;border-radius:50%}.sound-button{border:1px solid var(--line);color:#c6d2d9}.sound-button.on{color:var(--gold);border-color:#d7bb8a99}.profile-button{width:36px;height:36px;border:1px solid #d7bb8a66;border-radius:50%;color:var(--gold);font-family:var(--serif);font-size:24px}.mobile-brand,.mobile-nav{display:none}.main-content{height:calc(100dvh - 82px);overflow:auto;outline:none;scrollbar-width:thin;scrollbar-color:#385062 transparent}.home-layout{max-width:1500px;margin:auto;padding:65px 55px 36px;display:grid;grid-template-columns:1.3fr 1fr;column-gap:45px;align-content:space-between;min-height:100%}.hero-copy{max-width:550px;align-self:center}.hero-overline{margin:0 0 24px;color:#d2dde2;letter-spacing:2px}.hero-copy h1{font-size:clamp(76px,6.7vw,110px);margin:20px 0 26px;line-height:.94;letter-spacing:-2.5px}.hero-copy h1 em{overflow-wrap:anywhere}.hero-description{font-size:16px;color:#d0dce3;max-width:385px;line-height:1.8;margin:0 0 30px}.primary-button{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 22px;background:var(--gold);color:#18252c;border:1px solid var(--gold);font-size:15px;font-weight:600;min-height:56px;border-radius:3px}.primary-button:hover{background:#ead1a9;color:#071b2d}.hero-copy .primary-button{min-width:265px}.hero-meta{display:flex;gap:20px;margin-top:22px;font-size:14px;color:#c6d4dc;text-align:left;padding:0;flex-wrap:wrap}.hero-meta span{display:flex;align-items:center;gap:7px;line-height:1.6}.hero-meta svg{color:var(--gold)}.case-preview{align-self:center;justify-self:center;width:min(100%,330px);padding:26px 27px 0;text-align:center;border:1px solid #d7bb8a55;background:linear-gradient(145deg,#092235e8,#081b2edb);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 20px 60px #0003}.case-preview-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.case-preview-top .eyebrow{font-size:11px;letter-spacing:1px}.tiny-star{font-size:25px;color:var(--gold)}.seal-icon{border:1px solid #d7bb8a77;border-radius:50%;width:70px;height:70px;display:grid;place-items:center;margin:28px auto;color:var(--gold);outline:1px solid #d7bb8a33;outline-offset:5px}.case-preview p{font-family:var(--serif);font-size:30px;line-height:1.25;margin-bottom:25px}.signature{display:block;font-family:var(--serif);font-style:italic;font-size:29px;color:var(--gold)}.case-preview>small{font-size:12px;display:block;color:#b2c5d0;margin-top:9px;line-height:1.5}.text-button{display:inline-flex;gap:11px;align-items:center;font-size:15px;padding:12px 0;min-height:44px;color:var(--gold)}.case-preview .text-button{margin-top:23px;border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:19px 0}.home-bottom{grid-column:1/-1;margin-top:45px}.quick-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.quick-cards>button{display:flex;align-items:center;gap:15px;text-align:left;padding:23px 18px;border:1px solid var(--line);background:#0a2235eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:3px}.quick-cards>button>svg{color:var(--gold)}.quick-cards>button>svg:last-child{margin-left:auto;align-self:flex-start}.quick-cards>button>span{font-family:var(--serif);font-size:28px;line-height:1.05}.quick-cards small{display:block;font-family:DM Sans,sans-serif;font-size:13px;color:#bacbd5;margin-top:10px;line-height:1.5}.quick-cards>button:hover{background:#163247;border-color:#d7bb8a88}.section-layout{max-width:1360px;margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;padding:45px 50px;min-height:100%;align-items:center}.section-heading p{font-size:16px;color:#bdced9;max-width:360px;margin:23px 0 28px}.section-heading h1{font-size:clamp(50px,4.7vw,75px)}.outline-button{display:inline-flex;align-items:center;justify-content:center;gap:11px;border:1px solid #d7bb8a77;padding:14px 17px;border-radius:3px;font-size:15px;color:var(--gold);min-height:50px}.outline-button:hover{background:#d7bb8a15;border-color:var(--gold)}.swipe-hint{display:flex;align-items:center;gap:12px;font-size:14px!important;color:var(--gold)!important}.story-layout{perspective:1400px}.letter-card{background:#eee4cd;color:#282f2c;box-shadow:0 24px 80px #0004;height:min(750px,calc(100dvh - 155px));min-height:460px;display:flex;flex-direction:column;border-radius:3px;overflow:hidden;border:1px solid #b89b6d;background-image:radial-gradient(ellipse at 100% 0,#c5ad7d44,transparent 60%)}.paper-body{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#b6a17e transparent;touch-action:pan-y pinch-zoom;perspective:1200px;overscroll-behavior:contain}.paper-page{padding:27px 31px 20px;transform-origin:0 50%;backface-visibility:hidden}.letter-top{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:12px;line-height:1.7;letter-spacing:.8px;color:#6d5e42;padding-bottom:18px;margin-bottom:25px;border-bottom:1px solid #866d4544}.wax-seal{flex-shrink:0;width:46px;height:46px;border-radius:50%;background:#70433b;box-shadow:0 0 0 3px #70433b66,inset 0 0 0 3px #b4825a44;color:#e5bf88;display:grid;place-items:center;transform:rotate(12deg)}.letter-card h2{font-size:36px;color:#30372f;margin-bottom:23px}.letter-text{font-family:var(--serif);font-size:23px;line-height:1.46}.letter-text p{line-height:1.46;margin-bottom:19px}.letter-text p:last-child{margin-bottom:0}.letter-pagination{flex-shrink:0;padding:10px 24px;border-top:1px solid #866d4544;background:#e6d9bb;display:flex;align-items:center;justify-content:space-between;font-size:15px;gap:10px;min-height:67px}.letter-pagination i{color:#7e7053;font-style:normal;margin:0 6px}.letter-pagination .text-button{color:#5e4528;font-size:15px}.letter-signature{display:flex;flex-direction:column;text-align:right;gap:9px;font-size:16px;margin:24px 0 5px;line-height:1.5}.letter-signature strong{font-family:var(--serif);font-style:italic;font-size:32px;font-weight:400}.letter-signature small{font-size:14px;color:#66583c}.wardrobe-layout{max-width:1320px;margin:auto;padding:40px 50px;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;min-height:100%}.wardrobe-intro h1{font-size:clamp(50px,4.5vw,70px);margin-bottom:22px}.wardrobe-intro>p{font-size:16px;color:#bdced9;max-width:400px;line-height:1.8;margin-bottom:25px}.segmented{display:flex;padding:4px;border:1px solid var(--line);border-radius:4px;background:#041320a8;gap:4px}.segmented button{padding:12px 10px;flex:1;font-size:15px;color:#c6d7e2;border-radius:3px;min-height:46px}.segmented button.active{background:#294557;color:#f3d7a8;box-shadow:0 2px 6px #0002}.look-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:24px}.look-picker>button{border:1px solid var(--line);border-radius:3px;text-align:left;padding:0;position:relative;overflow:hidden;background:#0d2030}.outfit-image{background-size:200% 200%;background-repeat:no-repeat;background-color:#0a1d2f;aspect-ratio:2/3;width:100%}.look-picker .outfit-image{transition:filter .3s;filter:brightness(.9)}.look-picker>button:hover .outfit-image{filter:brightness(1.1)}.look-picker>button>span:not(.selection-check){display:block;font-size:12px;padding:10px 6px;text-align:center;line-height:1.5}.look-picker>button.selected{border-color:var(--gold);box-shadow:0 0 0 1px #d7bb8a55}.look-picker>button.selected .outfit-image{filter:brightness(1.1)}.selection-check{position:absolute;top:6px;right:6px;border-radius:50%;width:23px;height:23px;display:grid;place-items:center;background:var(--gold);color:#071b2d}.character-stage{width:100%;max-width:390px;justify-self:center}.character-frame{width:100%;position:relative;touch-action:pan-y pinch-zoom;aspect-ratio:2/3;background:#0c2132}.character-open{padding:0;display:block;width:100%;height:100%}.character-open>.outfit-image{height:100%;animation:character-in .55s ease-out}.frame-corner{width:22px;height:22px;border-color:#d7bb8a99;position:absolute;pointer-events:none}.frame-corner.tl{top:0;left:0;border-top:1px solid;border-left:1px solid}.frame-corner.tr{top:0;right:0;border-top:1px solid;border-right:1px solid}.frame-corner.bl{bottom:0;left:0;border-bottom:1px solid;border-left:1px solid}.frame-corner.br{bottom:0;right:0;border-bottom:1px solid;border-right:1px solid}.stage-arrow{position:absolute;top:45%;width:44px;height:50px;background:#071b2de8;border:1px solid #d7bb8a77;display:grid;place-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--gold);border-radius:3px}.stage-arrow.left{left:-14px}.stage-arrow.right{right:-14px}.zoom-outfit-button{position:absolute;bottom:14px;left:14px;color:var(--gold);display:flex;gap:8px;align-items:center;padding:10px 12px;min-height:44px;border:1px solid #d7bb8a77;background:#071b2df2;border-radius:4px;font-size:14px}.stage-counter{position:absolute;bottom:26px;right:16px;font-size:16px;color:var(--gold);pointer-events:none}.stage-counter i{font-style:normal;color:#c0d1dc}.character-caption{text-align:center;padding:23px 0 0}.character-caption>.eyebrow{font-size:13px;letter-spacing:.9px}.character-caption h2{font-size:36px;margin:10px 0 12px}.character-caption p{font-size:15px;line-height:1.7;color:#bdced9;margin-bottom:22px}.character-caption .primary-button{width:100%;font-size:14px;padding:15px 18px;gap:12px}.character-caption .primary-button span{margin-right:auto}.kit-panel{padding-top:25px}.kit-panel h3{font-family:var(--serif);font-size:33px;margin-bottom:12px}.kit-panel>p{font-size:15px;color:#bdced9;line-height:1.7}.checklist-item{display:flex;align-items:center;text-align:left;gap:13px;padding:17px 0;border-bottom:1px solid var(--line);width:100%;font-size:16px;line-height:1.6}.checklist-item>span{width:24px;height:24px;border:1px solid #a6b4bc88;display:grid;place-items:center;border-radius:3px;flex-shrink:0}.checklist-item.checked{color:var(--gold)}.checklist-item.checked>span{border-color:var(--gold);background:#d7bb8a22}.dress-tip{padding:20px;background:#091f31f2;border:1px solid #d7bb8a44;border-left:2px solid var(--gold);margin-top:24px}.dress-tip h4{font-size:16px;margin:0 0 12px;color:var(--gold);font-weight:500}.dress-tip p{font-size:15px;color:#c0d0db;line-height:1.8;margin-bottom:12px}.dress-tip p:last-child{margin-bottom:0}.time-callout{margin-top:45px;border-top:1px solid var(--line);padding-top:26px}.time-callout>span{font-size:12px;letter-spacing:1.5px;color:var(--gold)}.time-callout strong{font-family:var(--serif);font-weight:400;font-size:80px;line-height:1.2;display:block;color:#e0e8eb}.time-callout strong>span{color:var(--gold);padding:0 3px}.timeline-panel{border:1px solid var(--line);background:#0b2235f0;padding:27px 27px 24px;border-radius:4px}.timeline-item{position:relative;display:grid;grid-template-columns:54px 12px 1fr;gap:15px;min-height:95px;padding-bottom:25px}.timeline-item:last-child{min-height:50px;padding-bottom:0}.timeline-item time{font-size:16px;padding-top:2px;color:#c4d3dd;line-height:1.6}.timeline-dot{width:7px;height:7px;background:#6c8799;border-radius:50%;position:relative;margin-top:10px}.timeline-dot:after{content:"";position:absolute;top:12px;left:3px;width:1px;height:calc(100% + 73px);background:var(--line)}.timeline-item:last-child .timeline-dot:after{display:none}.timeline-item.highlight time{color:var(--gold)}.timeline-item.highlight .timeline-dot{background:var(--gold);box-shadow:0 0 0 4px #d7bb8a16}.timeline-item h3{font-size:17px;margin:0 0 7px;line-height:1.5}.timeline-item.highlight h3{color:var(--gold)}.timeline-item p{font-size:15px;line-height:1.7;color:#b7cad7;margin:0}.program-footnote{border-top:1px solid var(--line);padding-top:19px;display:flex;gap:12px;color:#a7bece;font-size:14px;line-height:1.7;margin-top:25px}.place-date{display:flex;align-items:center;gap:18px;margin:32px 0;color:var(--gold)}.place-date>div{display:flex;flex-direction:column;gap:9px}.place-date span{font-size:13px;letter-spacing:1.5px}.place-date strong{font-family:var(--serif);font-size:36px;font-weight:400;color:#eaf0f1}.place-date small{font-size:15px;color:#bdced9}.place-layout .primary-button{width:max-content}.invitation-link{display:flex;margin-top:16px;font-size:15px}.location-panel{border:1px solid var(--line);background:#0b2235ed;border-radius:4px;overflow:hidden}.map-illustration{height:245px;position:relative;overflow:hidden;background-color:#123044;background-image:linear-gradient(20deg,transparent 43%,#24445844 44%,#24445844 46%,transparent 47%),linear-gradient(110deg,transparent 40%,#24445855 41%,#24445855 43%,transparent 44%);background-size:83px 120px,103px 89px;border-bottom:1px solid var(--line)}.map-road{position:absolute;background:#39556766;box-shadow:0 0 0 2px #081b2c55;transform-origin:center}.road-one{height:14px;width:150%;transform:rotate(-20deg);top:56%;left:-10%}.road-two{width:12px;height:150%;transform:rotate(18deg);left:65%;top:-20%}.road-three{height:9px;width:130%;transform:rotate(27deg);top:13%;left:-10%}.road-four{width:8px;height:160%;transform:rotate(-14deg);left:26%;top:-20%}.map-district{position:absolute;top:24px;left:24px;font-size:14px;letter-spacing:3px;color:#a6bece}.map-marker{position:absolute;top:34%;left:28%;display:flex;align-items:center;flex-direction:column;gap:12px;color:var(--gold)}.map-marker>svg{background:#183347;border-radius:50%;width:51px;height:51px;padding:11px;box-shadow:0 0 0 9px #d7bb8a0a,0 0 0 1px #d7bb8a77}.map-marker>span{background:#071b2d;padding:9px 12px;font-size:12px;letter-spacing:1px;border:1px solid #d7bb8a77}.map-metro{position:absolute;bottom:29px;right:21px;color:#c4d1b9;font-size:16px}.map-metro small{font-size:11px;letter-spacing:.8px}.map-note{position:absolute;bottom:12px;left:14px;font-size:10px;letter-spacing:.4px;color:#b1c5d3}.location-details{padding:27px}.location-details h2{font-size:36px;margin:0 0 12px}.location-details>p{font-size:15px;color:#b9cedd}.location-facts{display:flex;justify-content:space-between;margin-top:25px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:12px}.location-facts>div{display:flex;gap:9px;align-items:center;color:var(--gold)}.location-facts span{font-size:17px}.location-facts small{display:block;font-size:12px;color:#b6cbd9;margin-top:7px;line-height:1.5}.location-details details{margin-top:20px}summary{cursor:pointer;font-size:15px;color:#d7e1e7;padding:10px 0;line-height:1.7}details p{font-size:15px;color:#b8ccd9;margin:14px 0;line-height:1.8}.modal{border:1px solid #d7bb8a66;background:#0b2235;color:#edf2f4;width:min(500px,calc(100vw - 32px));padding:24px 30px 28px;max-height:calc(100dvh - 32px);border-radius:5px;box-shadow:0 40px 100px #0008;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#4a6577 #0b2235}.modal::backdrop{background:#020c16d9;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.modal-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:15px}.modal-top>.eyebrow{font-size:13px;letter-spacing:.5px}.modal-top>.icon-button{flex-shrink:0}.modal h2{font-size:47px;letter-spacing:-.6px;margin:14px 0 24px}.modal>p{font-size:16px;color:#bdced9;line-height:1.8}.modal form{margin-top:25px}.modal form>label{display:block;font-size:16px;color:#e2ebef;margin-bottom:12px}.modal input{border:1px solid #7893a388;background:#061a2a;color:#f5f5f0;padding:16px;width:100%;border-radius:3px;font-size:17px;outline:none}.modal input:focus{border-color:var(--gold)}.modal input::placeholder{color:#9ab0bf}.modal form .primary-button{width:100%;margin-top:24px;font-size:16px}.modal .privacy-note{font-size:13px;line-height:1.8;margin:21px 0 0;color:#adc2d0}.gender-field{border:0;padding:0;margin:0 0 26px;min-width:0}.gender-field legend{font-size:15px;line-height:1.7;color:#d0dce3;padding:0;margin-bottom:12px}.gender-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gender-options button{min-height:52px;display:flex;align-items:center;justify-content:space-between;padding:12px 17px;border:1px solid #91a7b355;border-radius:4px;background:#071b2d;font-size:16px}.gender-options button.selected{color:var(--gold);border-color:var(--gold);background:#d7bb8a12}.form-error{font-size:15px;color:#f5bfab;line-height:1.6;margin-top:15px}.detective-pass{background:#e7dfcc;color:#283b41;border-radius:3px;border:1px solid #a48c60;padding:19px}.pass-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #a48c6066;padding-bottom:15px;color:#655231}.pass-top>span{font-size:15px;letter-spacing:3px}.pass-body{display:grid;grid-template-columns:115px 1fr;gap:20px;padding:22px 0}.pass-portrait{padding:0;position:relative;align-self:start}.pass-portrait>.outfit-image{width:100%;aspect-ratio:2/3;border:1px solid #a48c6055}.pass-portrait>svg{position:absolute;bottom:7px;right:7px;background:#071b2d;color:var(--gold);width:30px;height:30px;padding:5px;border-radius:50%}.pass-body .eyebrow{font-size:11px;letter-spacing:.4px;color:#62532f}.pass-body h2{font-size:34px;line-height:1.05;margin:10px 0 20px;overflow-wrap:anywhere}.pass-body h3{font-family:var(--serif);font-size:25px;margin:10px 0 19px;line-height:1.15}.pass-stamp{display:inline-block;transform:rotate(-9deg);color:#45665a;border:2px solid #45665a;padding:7px 12px;text-align:center;font-size:11px;line-height:1.5;letter-spacing:1.5px;opacity:.85}.pass-bottom{display:flex;justify-content:space-between;border-top:1px solid #a48c6066;padding-top:15px;font-size:10px;letter-spacing:.4px;gap:10px}.pass-explainer{font-size:14px!important;margin:21px 0}.modal-button-row{display:flex;gap:10px}.modal-button-row .outline-button{flex:1;padding:13px 10px;font-size:14px}.reset-button{display:flex;align-items:center;gap:8px;font-size:14px;line-height:1.6;color:#b5c9d7;text-decoration:underline;text-underline-offset:4px;margin:20px auto 0;padding:10px 0;min-height:44px}.info-facts{margin:28px 0}.info-facts p{display:flex;align-items:center;gap:14px;font-size:16px;margin-bottom:18px;color:#d8e4eb;line-height:1.7}.info-facts svg{width:21px;height:21px;color:var(--gold)}.modal>.primary-button{width:100%}.settings-details{border-top:1px solid var(--line);margin-top:27px;padding-top:15px}.settings-details .outline-button{margin-top:8px}.settings-details .reset-button{margin-left:0;color:#e2c2b5}.modal-wide{width:min(1100px,calc(100vw - 32px))}.invitation-image{width:100%;height:auto;display:block;margin-bottom:22px}.toast{position:fixed;bottom:26px;left:calc(50% + 127px);transform:translate(-50%);z-index:50;display:flex;align-items:center;gap:12px;background:#ead8b6;color:#152b37;border:1px solid #f5e3c0;box-shadow:0 12px 40px #0006;padding:16px 20px;font-size:15px;line-height:1.6;border-radius:4px;max-width:calc(100vw - 32px);width:max-content;animation:toast-in .25s ease}.toast svg{color:#48694c}.zoom-modal[open]{display:flex;flex-direction:column;width:min(790px,calc(100vw - 28px));height:calc(100dvh - 28px);max-height:none;padding:16px 22px 18px;overflow:hidden}.zoom-modal .modal-top{margin:0 0 10px}.zoom-toolbar{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding:10px 0;flex-shrink:0}.zoom-toolbar>span{min-width:53px;text-align:center;font-size:15px}.zoom-toolbar .icon-button{border:1px solid var(--line)}.zoom-toolbar .text-button{margin-left:auto;font-size:14px}.outfit-zoom-viewport{overflow:auto;flex:1;min-height:0;background:#071b2d;touch-action:pan-x pan-y pinch-zoom;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#6b7d86 #071b2d}.zoom-base{width:min(100%,calc((100dvh - 235px)*.666667));margin:0 auto}.zoom-canvas{max-width:none;aspect-ratio:2/3}.zoom-canvas .outfit-image{height:100%;width:100%}.modal .zoom-help{font-size:13px;line-height:1.6;margin:13px 0 0;color:#b9cedd;flex-shrink:0}@keyframes character-in{0%{opacity:.55;transform:translate(4px)}to{opacity:1;transform:translate(0)}}@keyframes toast-in{0%{opacity:0;translate:0 7px}to{opacity:1;translate:0 0}}@media(min-width:1600px){.home-layout{padding:75px 80px 40px}.hero-copy h1{font-size:120px}.hero-description{font-size:17px}.case-preview{width:350px}.case-preview p{font-size:33px}.section-layout,.wardrobe-layout{padding-top:55px;padding-bottom:55px}.character-stage{max-width:350px}.character-caption h2{font-size:39px}}@media(max-width:1150px){.sidebar{width:220px;padding:27px 17px}.workspace{margin-left:220px}.brand{font-size:15px;letter-spacing:1px;gap:8px}.brand small{font-size:8px}.sidebar-pass{font-size:12px;gap:7px}.sidebar-pass>svg{width:21px}.sidebar-bottom small{font-size:9px}.topbar{padding:0 28px}.topbar-label{font-size:11px;letter-spacing:.5px}.topbar-label span{margin:0 8px}.home-layout{padding:45px 32px 30px;gap:28px;grid-template-columns:1.2fr .9fr}.hero-copy h1{font-size:80px}.hero-description{font-size:15px}.hero-meta{font-size:13px;gap:12px}.case-preview{padding:23px 20px 0}.case-preview p{font-size:27px}.signature{font-size:26px}.case-preview-top .eyebrow{font-size:10px}.quick-cards>button{padding:21px 15px;gap:11px}.quick-cards>button>svg:first-child{display:none}.quick-cards>button>span{font-size:26px}.quick-cards small{font-size:12px}.section-layout,.wardrobe-layout{padding:35px 30px;gap:30px}.section-heading h1{font-size:58px}.letter-card{height:calc(100dvh - 145px)}.paper-page{padding:25px}.letter-text{font-size:22px}.wardrobe-intro h1{font-size:58px}.character-stage{max-width:310px}.character-caption h2{font-size:32px}.character-caption .primary-button{font-size:13px;gap:8px}.look-picker{gap:7px}.look-picker>button>span:not(.selection-check){font-size:11px;padding:9px 4px}.timeline-panel{padding:23px 20px}.timeline-item{grid-template-columns:48px 10px 1fr;gap:12px}.timeline-item h3{font-size:16px}.location-details{padding:23px}.location-facts>div{gap:6px}.location-facts svg{width:16px}.location-facts small{font-size:11px}.toast{left:calc(50% + 110px)}}@media(max-width:900px)and (min-width:701px){.sidebar{width:185px;padding:25px 14px}.workspace{margin-left:185px}.brand{font-size:12px;gap:7px}.brand small{font-size:7px;letter-spacing:.6px}.brand-mark{width:30px;height:36px}.brand-mark svg{width:22px}.sidebar-intro{margin:38px 0 26px 5px}.sidebar-intro .eyebrow{font-size:10px}.sidebar-intro p{font-size:30px}.desktop-nav button{font-size:14px;padding:15px 9px;gap:11px}.sidebar-pass{font-size:11px;gap:6px}.sidebar-pass small{font-size:12px}.sidebar-pass>svg:last-child{display:none}.sidebar-bottom{font-size:10px}.sidebar-bottom small{font-size:8px}.topbar{padding:0 23px}.topbar-label{display:none}.topbar-actions{margin-left:auto}.home-layout{padding:40px 26px 26px;grid-template-columns:1fr;gap:0}.hero-copy{max-width:450px}.hero-copy h1{font-size:85px}.case-preview,.quick-cards small{display:none}.quick-cards>button>span{font-size:24px}.quick-cards>button{padding:20px 12px}.section-layout{grid-template-columns:1fr;padding:32px;gap:28px}.section-heading h1{font-size:60px}.story-heading{display:none}.story-layout{height:100%;display:flex;flex-direction:column;min-height:0;align-items:stretch;padding:26px 32px;gap:15px}.letter-card{min-height:0;flex:1;height:auto}.paper-page{padding:28px}.letter-text{font-size:24px}.wardrobe-layout{gap:24px;padding:35px 25px;grid-template-columns:1fr 1fr}.wardrobe-intro h1{font-size:48px}.wardrobe-intro>p{font-size:15px}.segmented button{font-size:13px;padding:11px 6px}.look-picker{grid-template-columns:repeat(2,1fr)}.character-caption h2{font-size:30px}.character-caption .primary-button>svg:first-child{display:none}.location-facts small{font-size:12px}.toast{left:calc(50% + 92px)}}@media(max-width:700px){.app{height:100dvh;min-height:100svh;overflow:hidden}.sidebar{display:none}.workspace{margin-left:0;height:100%;display:flex;flex-direction:column}.topbar{height:68px;min-height:68px;padding:0 20px;gap:12px;position:relative;z-index:8;background:#071b2de8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-label{display:none}.mobile-brand{display:flex;align-items:center;gap:8px;font-size:14px;letter-spacing:1.7px;padding:8px 0}.mobile-brand svg{color:var(--gold)}.topbar-actions{gap:12px}.date-button{font-size:14px;padding:8px 0;gap:6px;white-space:nowrap}.date-button svg{display:none}.sound-button{width:40px;height:40px}.profile-button{display:none}.main-content{height:auto;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:none}.main-content::-webkit-scrollbar{display:none}.mobile-nav{display:flex;align-items:center;justify-content:space-around;flex-shrink:0;min-height:80px;padding:9px 4px max(11px,env(safe-area-inset-bottom));background:#071b2dfc;border-top:1px solid #d7bb8a44;z-index:8;box-shadow:0 -10px 30px #06182799}.mobile-nav button{display:flex;flex-direction:column;align-items:center;gap:7px;padding:6px 2px;min-width:58px;min-height:52px;color:#a9c0cf;position:relative}.mobile-nav button>span{font-size:12px;letter-spacing:0}.mobile-nav button.active{color:var(--gold)}.mobile-nav button.active:before{content:"";position:absolute;top:-10px;left:calc(50% - 12px);width:24px;height:2px;background:var(--gold)}.world-background{background-image:linear-gradient(0deg,#071b2df5,#071b2da3 25%,#071b2d88 65%,#071b2dd4),url(/images/hero.jpg);background-size:cover,cover;background-position:center,center 40%}.app:not(.page-home) .world-background{filter:brightness(.22) saturate(.6)}.home-layout{padding:30px 24px 24px;display:flex;flex-direction:column;min-height:100%;gap:30px;justify-content:space-between}.hero-copy{width:100%;max-width:none;align-self:initial}.hero-overline{margin:0 0 23px;font-size:13px;letter-spacing:1.7px}.hero-copy h1{font-size:clamp(60px,17vw,78px);line-height:.94;letter-spacing:-1.5px;margin:0 0 24px}.hero-description{font-size:16px;line-height:1.7;max-width:360px;color:#e0e8ed;margin-bottom:25px}.hero-copy .primary-button{min-height:54px;width:100%;font-size:16px;padding:15px 18px}.hero-meta{margin-top:21px;gap:7px 13px;font-size:14px;flex-direction:row;flex-wrap:wrap;line-height:1.6}.hero-meta span{gap:6px}.hero-meta svg{width:16px;height:16px}.case-preview{display:none}.home-bottom{margin-top:0}.quick-cards{gap:9px;grid-template-columns:repeat(3,1fr)}.quick-cards>button{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:16px 12px;min-height:114px;gap:13px;background:#0c263af7;border-color:#a8bdcb55;border-radius:4px;position:relative}.quick-cards>button>svg:first-child{display:block;width:22px;height:22px}.quick-cards>button>span{font-size:25px;line-height:1.05;letter-spacing:-.3px}.quick-cards>button>svg:last-child{display:none}.quick-cards small{display:none}.section-layout{display:flex;flex-direction:column;padding:30px 24px;gap:28px;align-items:stretch;min-height:0}.section-heading>.eyebrow{font-size:12px;letter-spacing:1.5px}.section-heading h1{font-size:54px;letter-spacing:-1.3px;line-height:1;margin:20px 0}.section-heading p{font-size:16px;max-width:none;margin:0 0 24px;line-height:1.8}.outline-button{font-size:15px;min-height:52px;padding:14px 16px}.story-heading{display:none}.story-layout{height:100%;min-height:0;padding:20px 18px 18px;gap:15px;align-items:stretch}.letter-card{min-height:0;flex:1;height:auto;width:100%}.paper-page{padding:24px 25px 26px}.letter-top{font-size:12px;letter-spacing:.5px;line-height:1.6;padding-bottom:18px;margin-bottom:24px}.wax-seal{width:42px;height:42px}.letter-card h2{font-size:33px;margin-bottom:22px;line-height:1.08}.letter-text{font-size:22px}.letter-text p{line-height:1.45;margin-bottom:18px}.letter-pagination{font-size:15px;padding:8px 17px;min-height:65px}.letter-pagination .text-button{font-size:15px;gap:11px}.letter-signature strong{font-size:32px}.letter-signature small{font-size:14px}.letter-signature>span{font-size:15px}.wardrobe-layout{display:flex;flex-direction:column;padding:20px 24px 30px;gap:16px;min-height:100%;align-items:stretch;justify-content:flex-start}.wardrobe-intro{display:contents}.wardrobe-intro>.eyebrow,.wardrobe-intro>p{display:none}.wardrobe-intro>h1{order:1;font-size:34px;line-height:1;letter-spacing:-1px;margin:0}.wardrobe-intro>h1 br{display:none}.wardrobe-intro>h1 em:before{content:" "}.wardrobe-intro>.segmented{order:2;width:100%}.segmented button{padding:12px 9px;font-size:15px;min-height:46px}.character-stage{order:3;width:100%;max-width:380px;align-self:center}.character-frame{width:min(100%,280px);height:auto;aspect-ratio:2/3;max-width:none;margin:0 auto}.character-caption{padding:15px 0 0}.character-caption>.eyebrow{display:none}.character-caption h2{font-size:34px;margin:6px 0 14px;line-height:1.1}.character-caption>p{display:none}.character-caption .primary-button{min-height:53px;font-size:15px;padding:15px 16px;gap:10px}.stage-counter{font-size:16px;right:17px;bottom:29px}.stage-arrow{width:43px;height:50px}.stage-arrow.left{left:-14px}.stage-arrow.right{right:-14px}.zoom-outfit-button{font-size:15px;gap:7px;left:12px;bottom:15px;padding:10px 12px}.look-picker{order:4;width:100%;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:1px}.look-picker>button>span:not(.selection-check){font-size:12px;line-height:1.4;letter-spacing:0;padding:9px 4px;white-space:normal;min-height:51px}.look-picker .selection-check{width:19px;height:19px;top:4px;right:4px}.look-picker .selection-check svg{width:13px;height:13px}.tab-kit .character-stage{display:none}.kit-panel{order:3;padding-top:0;width:100%}.kit-panel h3{font-size:33px}.kit-panel>p{font-size:16px;line-height:1.8}.checklist-item{font-size:16px;padding:18px 0}.dress-tip{padding:20px;margin-top:25px}.dress-tip h4{font-size:17px}.dress-tip p{font-size:16px;line-height:1.8}.program-layout{gap:28px}.program-layout .section-heading h1{font-size:54px}.time-callout{display:none}.timeline-panel{padding:25px 19px}.timeline-item{grid-template-columns:49px 8px 1fr;gap:12px;min-height:108px;padding-bottom:27px}.timeline-item time{font-size:16px;padding-top:0}.timeline-item h3{font-size:17px;line-height:1.5;margin-bottom:7px}.timeline-item p{font-size:15px;line-height:1.75;color:#c3d2dd}.timeline-dot{margin-top:9px;width:6px;height:6px}.timeline-dot:after{height:89px;left:2px}.program-footnote{font-size:14px;line-height:1.7;margin-top:25px;padding-top:21px}.place-date{margin:27px 0;gap:16px}.place-date strong{font-size:36px}.place-date span{font-size:13px}.place-date small{font-size:15px}.place-layout .primary-button{width:100%;min-height:54px;font-size:16px;gap:14px}.invitation-link{margin-top:16px;font-size:15px;min-height:44px}.map-illustration{height:245px}.map-district{font-size:14px}.map-marker{left:25%}.map-marker>span{font-size:12px}.map-note{font-size:10px}.location-details{padding:24px}.location-details h2{font-size:35px}.location-details>p{font-size:16px}.location-facts{padding:23px 0;gap:10px;flex-wrap:wrap}.location-facts>div{gap:7px}.location-facts svg{width:17px}.location-facts span{font-size:17px}.location-facts small{font-size:12px;line-height:1.5}.location-details summary{font-size:16px}.location-details details p{font-size:16px;line-height:1.8}.modal{padding:20px 24px 26px;width:calc(100vw - 28px);max-height:calc(100dvh - 28px)}.modal-top{margin-bottom:17px}.modal-top>.eyebrow{font-size:13px;letter-spacing:.3px}.modal h2{font-size:44px;margin:12px 0 26px}.modal input{font-size:17px}.modal .privacy-note{font-size:14px}.toast{left:50%;bottom:calc(97px + env(safe-area-inset-bottom));font-size:15px;padding:15px 17px;max-width:calc(100vw - 28px);line-height:1.6;min-width:250px}.info-facts p{font-size:16px;line-height:1.7}.pass-body{grid-template-columns:105px 1fr;gap:17px}.pass-body h2{font-size:33px}.pass-body h3{font-size:25px}.pass-body .eyebrow{font-size:10px}.pass-bottom{font-size:10px;letter-spacing:0}.modal-button-row{flex-wrap:wrap}.modal-button-row .outline-button{font-size:14px;gap:8px;min-width:135px}.reset-button{min-height:44px;font-size:14px}.zoom-modal[open]{padding:15px 18px 17px}.zoom-toolbar{gap:6px}.zoom-toolbar .text-button{font-size:13px}.modal .zoom-help{font-size:13px;line-height:1.7}.zoom-base{width:min(100%,calc((100dvh - 245px)*.666667))}}@media(max-width:700px)and (max-height:740px){.home-layout{padding:25px 23px;gap:28px}.hero-copy h1{font-size:62px}.hero-overline{font-size:12px;margin-bottom:20px}.hero-description{font-size:16px;line-height:1.7}.quick-cards>button{min-height:105px;padding:14px 11px}.quick-cards>button>span{font-size:23px}.wardrobe-intro>h1{font-size:34px}.character-frame{width:min(100%,275px)}.story-layout{padding-top:16px;gap:12px}.paper-page{padding:22px}.letter-text{font-size:22px}}@media(max-width:360px){.topbar{padding:0 14px;gap:8px}.mobile-brand{font-size:12px;letter-spacing:1px;gap:6px}.mobile-brand svg{width:21px}.topbar-actions{gap:9px}.date-button{font-size:13px}.sound-button{width:38px;height:38px}.mobile-nav button{min-width:54px;padding:6px 1px}.mobile-nav button>span{font-size:12px}.home-layout{padding-left:20px;padding-right:20px}.hero-copy h1{font-size:59px}.hero-overline{letter-spacing:1px}.quick-cards{gap:7px}.quick-cards>button{padding:14px 10px}.quick-cards>button>span{font-size:22px}.section-layout,.wardrobe-layout{padding-left:20px;padding-right:20px}.section-heading h1,.program-layout .section-heading h1{font-size:48px}.story-layout{padding-left:13px;padding-right:13px}.paper-page{padding:20px}.letter-card h2{font-size:30px}.letter-text{font-size:22px}.letter-pagination{padding-left:12px;padding-right:12px}.wardrobe-intro>h1{font-size:32px}.character-frame{width:calc(100% - 22px)}.character-caption .primary-button{font-size:14px;gap:8px}.character-caption h2{font-size:32px}.look-picker{gap:7px}.look-picker>button>span:not(.selection-check){font-size:12px;padding:8px 2px;overflow-wrap:anywhere}.modal{padding:18px 20px 23px}.modal h2{font-size:41px}.pass-body{grid-template-columns:86px 1fr;gap:12px}.pass-body h2{font-size:29px}.pass-body h3{font-size:23px}.pass-body .eyebrow,.pass-bottom{font-size:9px}.timeline-panel{padding:24px 15px}.timeline-item{grid-template-columns:46px 7px 1fr;gap:10px}.timeline-item h3{font-size:16px}.timeline-item p{font-size:15px}.location-details{padding:22px}.location-facts{gap:18px}.zoom-toolbar .text-button{font-size:12px}.zoom-toolbar .icon-button{width:40px;height:40px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.sidebar,.topbar,.mobile-nav,.world-background,.grain,.modal-top,.modal-button-row,.reset-button,.pass-explainer{display:none!important}.modal{position:static;max-height:none;border:0;background:#fff;width:100%;color:#000}.modal::backdrop{display:none}.detective-pass{break-inside:avoid}.workspace{display:none}}.paper-viewport{position:relative;flex:1;min-height:0;overflow:hidden;perspective:1200px;isolation:isolate}.paper-body{height:100%;position:relative;perspective:none;touch-action:pan-y pinch-zoom;-webkit-overflow-scrolling:touch}.paper-turn-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow:hidden;pointer-events:none;background:#eee4cd;background-image:radial-gradient(ellipse at 100% 0,#c5ad7d44,transparent 60%);box-shadow:12px 0 28px #30231544;backface-visibility:hidden}.paper-turn-overlay:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,transparent 65%,#7f683830);opacity:.55}.paper-leave-next{transform-origin:left center;animation:sheet-leave-left .55s cubic-bezier(.32,.05,.25,1) both}.paper-leave-previous{transform-origin:right center;animation:sheet-leave-right .55s cubic-bezier(.32,.05,.25,1) both}.paper-enter-next{animation:sheet-reveal-left .55s cubic-bezier(.2,.7,.25,1) both}.paper-enter-previous{animation:sheet-reveal-right .55s cubic-bezier(.2,.7,.25,1) both}@keyframes sheet-leave-left{0%{transform:translate(0) rotateY(0);opacity:1}55%{transform:translate(-34%) rotateY(-22deg);opacity:1}to{transform:translate(-112%) rotateY(-42deg);opacity:.2}}@keyframes sheet-leave-right{0%{transform:translate(0) rotateY(0);opacity:1}55%{transform:translate(34%) rotateY(22deg);opacity:1}to{transform:translate(112%) rotateY(42deg);opacity:.2}}@keyframes sheet-reveal-left{0%{transform:translate(8%);opacity:.55}to{transform:translate(0);opacity:1}}@keyframes sheet-reveal-right{0%{transform:translate(-8%);opacity:.55}to{transform:translate(0);opacity:1}}.sound-button{position:relative}.sound-waves{position:absolute;right:-4px;bottom:-3px;width:20px;height:19px;border-radius:6px;background:#071b2d;border:1px solid #d7bb8a88;display:flex;align-items:center;justify-content:center;gap:2px;pointer-events:none}.sound-waves i{display:block;width:2px;height:5px;background:var(--gold);border-radius:2px;animation:sound-wave .75s ease-in-out infinite alternate}.sound-waves i:nth-child(2){animation-delay:-.25s}.sound-waves i:nth-child(3){animation-delay:-.5s}@keyframes sound-wave{0%{height:3px}to{height:11px}}@media(prefers-reduced-motion:reduce){.sound-waves i{height:7px}.paper-turn-overlay{display:none}}.brand.event-brand{flex-direction:column;align-items:flex-start;gap:7px;padding:6px 0}.event-brand .eaton-name{font-family:DM Sans,sans-serif;font-weight:700;font-size:19px;letter-spacing:1px;white-space:nowrap;color:#edf1f1}.event-brand .event-name{font-size:12px;letter-spacing:3px;color:var(--gold)}@media(max-width:700px){.mobile-brand.event-brand{flex-direction:column;align-items:flex-start;gap:3px;padding:6px 0}.mobile-brand.event-brand .eaton-name{font-size:16px;letter-spacing:.6px}.mobile-brand.event-brand .event-name{font-size:10px;letter-spacing:2.7px}}.brand.event-brand{gap:10px}.event-brand .eaton-logo{display:block;width:146px;height:auto;background:#fff;border-radius:2px}.event-brand .event-name{padding-left:1px}.hotel-map{height:290px;background:#d8e1e4;border-bottom:1px solid var(--line)}.hotel-map iframe{width:100%;height:100%;display:block;border:0}.calendar-summary{line-height:1.8}.calendar-options{display:grid;gap:12px;margin-top:25px}.calendar-options>a{display:flex;align-items:center;gap:14px;min-height:76px;padding:15px;border:1px solid var(--line);border-radius:4px;background:#071b2d}.calendar-options>a:hover{border-color:var(--gold);background:#123047}.calendar-options>a>svg{color:var(--gold)}.calendar-options>a>svg:last-child{margin-left:auto}.calendar-options span{font-size:16px}.calendar-options small{display:block;font-size:13px;color:#b8cbd7;line-height:1.5;margin-top:5px}.modal .calendar-note{font-size:13px;line-height:1.7;margin:22px 0 0;color:#b8cbd7}.outfit-preview{position:absolute;top:0;right:0;bottom:0;left:0}.preview-gesture{height:100%;width:100%;overflow:hidden;touch-action:pan-y;cursor:zoom-in;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.is-zoomed .preview-gesture{touch-action:none;cursor:grab}.is-zoomed .preview-gesture:active{cursor:grabbing}.preview-transform{width:100%;height:100%;transform-origin:center;will-change:transform;pointer-events:none}.preview-transform>.outfit-image{height:100%;width:100%}.frame-corner,.stage-arrow{z-index:2}.stage-counter{top:12px;bottom:auto;right:12px;padding:5px 9px;background:#071b2de8;border-radius:3px;font-size:14px;line-height:1.3;z-index:2}.preview-tools{position:absolute;left:12px;right:12px;bottom:12px;display:flex;align-items:center;justify-content:center;gap:6px;z-index:3;width:max-content;max-width:calc(100% - 24px);margin:auto;padding:4px;border:1px solid #d7bb8a99;border-radius:28px;background:#071b2df2;box-shadow:0 3px 15px #0005;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.preview-tools .icon-button{width:44px;height:44px;color:var(--gold)}.preview-reset{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;min-width:80px;padding:0 8px;font-size:14px;color:var(--gold)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(max-width:700px){.mobile-brand.event-brand{gap:4px}.mobile-brand.event-brand .eaton-logo{width:94px}.mobile-brand.event-brand .event-name{font-size:9px;letter-spacing:2.4px;padding-left:1px}.hotel-map{height:270px}.stage-counter{top:12px;bottom:auto;right:12px;font-size:14px}.calendar-options>a{padding:14px;gap:11px}.calendar-options span{font-size:15px}}.event-brand .eaton-logo{background:transparent;border-radius:0}@media(max-width:700px){.mobile-brand.event-brand .eaton-logo{width:104px}.mobile-brand.event-brand{gap:2px}.mobile-brand.event-brand .event-name{padding-left:5px}}.arrival-brief{padding:20px;border:1px solid #d7bb8a66;border-left:3px solid var(--gold);border-radius:3px;background:linear-gradient(135deg,#d7bb8a13,#d7bb8a04)}.arrival-brief h2{display:flex;gap:12px;align-items:flex-start;font-size:29px;line-height:1.15;color:var(--gold);margin:0 0 17px}.arrival-brief h2 svg{margin-top:4px}.arrival-brief p{font-size:15px;line-height:1.8;color:#d2dfe7;margin:0 0 13px}.arrival-brief p:last-child{color:#afc4d2;margin-bottom:0}.location-facts{margin-top:22px;border-top:0;padding-top:0}.hotel-address{margin-top:23px}.hotel-address h2{font-size:32px;line-height:1.15;margin:0 0 10px}.hotel-address p{color:#bfd0dd;font-size:16px;line-height:1.6;margin:0}.hotel-map{border-bottom:0;border-top:1px solid var(--line)}@media(max-width:700px){.arrival-brief{padding:18px}.arrival-brief h2{font-size:28px;gap:10px}.arrival-brief p{font-size:16px}.hotel-address h2{font-size:32px}.location-facts{margin-top:23px;padding-top:0}}.wardrobe-reassurance{display:flex;gap:12px;align-items:flex-start;padding:16px 18px;border:1px solid #d7bb8a55;border-radius:4px;background:#d7bb8a0d;margin:18px 0;color:var(--gold)}.wardrobe-reassurance>svg{flex-shrink:0;margin-top:3px}.wardrobe-reassurance p{font-size:15px;line-height:1.65;color:#d2dfe7;margin:0}.wardrobe-reassurance strong{display:block;color:var(--gold);font-weight:600;margin-bottom:3px}.wardrobe-layout.tab-kit{grid-template-columns:1fr;max-width:860px}.tab-kit .character-stage{display:none}.kit-panel h2{font-size:38px;margin:12px 0 16px}.preparation-list{list-style:none;padding:0;margin:20px 0}.preparation-list li{display:flex;align-items:flex-start;gap:13px;padding:16px 0;border-bottom:1px solid var(--line);font-size:16px;line-height:1.65;color:#dbe5eb}.preparation-list svg{flex-shrink:0;color:var(--gold);margin-top:3px}.dress-tip h3,.onsite-help h3{font-size:28px;margin:0 0 12px;color:var(--gold)}.onsite-help{margin:28px 0}.onsite-help h3{margin-top:12px}.onsite-help p{font-size:16px;line-height:1.8;color:#c0d0db;margin:12px 0}.kit-panel>.primary-button{width:100%;margin-top:25px}.kit-panel>.primary-button span{margin-right:auto}.preparation-link{width:100%;font-size:15px;line-height:1.5;gap:10px;white-space:normal;text-align:left;margin-top:20px}.preparation-link svg{flex-shrink:0}.preparation-link span{flex:1}.name-help{font-size:14px;line-height:1.7;color:#bdced9;margin:12px 0 0}.modal-button-row{margin-top:20px}@media(max-width:700px){.wardrobe-reassurance{order:3;margin:0;padding:13px 15px}.wardrobe-reassurance p{font-size:15px}.wardrobe-layout .character-stage{order:4}.wardrobe-layout .look-picker{order:5}.wardrobe-layout .kit-panel{order:4}.wardrobe-layout .segmented button{font-size:14px;line-height:1.5}.kit-panel h2{font-size:34px}.preparation-link{padding:13px 12px}.wardrobe-layout.tab-kit{max-width:none}.kit-panel>.eyebrow{display:block;line-height:1.7}.onsite-help h3{font-size:30px}}.character-stage>.look-picker{margin:18px 0 20px;grid-template-columns:repeat(4,1fr)}.choose-character{position:static;width:100%;font-size:15px;padding:16px 18px;gap:12px}.choose-character>span{margin-right:auto}@media(max-width:700px){.wardrobe-layout .character-stage{order:3}.character-stage>.look-picker{margin:4px 0 20px}.choose-character{min-height:54px;font-size:16px;padding:15px 16px}.wardrobe-layout .character-caption{padding-top:14px}.wardrobe-layout .character-caption h2{margin-bottom:16px}}.preview-character-enter,.preview-character-drift{width:100%;height:100%;pointer-events:none}.preview-character-drift>.outfit-image{width:100%;height:100%}.preview-character-enter.from-right{animation:outfit-enter-right .42s cubic-bezier(.22,1,.36,1) both}.preview-character-enter.from-left{animation:outfit-enter-left .42s cubic-bezier(.22,1,.36,1) both}.outfit-preview:not(.is-zoomed) .preview-character-drift{animation:outfit-idle 7s ease-in-out infinite}.is-zoomed .preview-character-enter{animation:none}@keyframes outfit-enter-right{0%{opacity:.78;transform:translate3d(6px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes outfit-enter-left{0%{opacity:.78;transform:translate3d(-6px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes outfit-idle{0%,to{transform:translate3d(-.5px,1px,0) scale(1.02)}50%{transform:translate3d(.5px,-1.5px,0) scale(1.02)}}.header-ticket{position:relative;flex-shrink:0;color:#122538!important;background:linear-gradient(145deg,#ffe5a8,#d5ad60);border:1px solid #f8db96;box-shadow:0 0 17px #edc16b66,inset 0 1px #fff5}.header-ticket:hover{background:#ffe6ac;box-shadow:0 0 22px #edc16b99}.header-ticket svg{flex-shrink:0}.header-ticket.ticket-unlock{animation:ticket-emerge .65s cubic-bezier(.2,.8,.2,1) both}.ticket-sparkles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:visible}.ticket-sparkles i{position:absolute;left:50%;top:50%;font-size:13px;font-style:normal;color:#ffe5a0;opacity:0;animation:ticket-spark .9s ease-out both;animation-delay:var(--delay,0s);text-shadow:0 0 7px #ffd16c}.ticket-sparkles i:nth-child(1){--sx:-29px;--sy:-23px}.ticket-sparkles i:nth-child(2){--sx:2px;--sy:-34px;--delay:.08s}.ticket-sparkles i:nth-child(3){--sx:25px;--sy:-17px;--delay:.16s}.ticket-sparkles i:nth-child(4){--sx:31px;--sy:8px;--delay:.04s}.ticket-sparkles i:nth-child(5){--sx:12px;--sy:28px;--delay:.12s}.ticket-sparkles i:nth-child(6){--sx:-23px;--sy:24px;--delay:.2s}.ticket-sparkles i:nth-child(7){--sx:-36px;--sy:1px;--delay:.1s}@keyframes ticket-emerge{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@keyframes ticket-spark{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}25%{opacity:1}to{opacity:0;transform:translate(var(--sx),var(--sy)) scale(.35)}}.ticket-modal{transform-origin:100% 0}.ticket-modal::backdrop{background:#020c16b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:ticket-backdrop-in .35s ease both}.ticket-modal.is-closing::backdrop{animation:ticket-backdrop-out .32s ease both}@keyframes ticket-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes ticket-backdrop-out{0%{opacity:1}to{opacity:0}}@media(max-width:700px){.topbar-actions{flex-shrink:0;gap:10px}.header-ticket{width:42px;height:42px}.topbar .mobile-brand{flex-shrink:1;min-width:0}}@media(max-width:360px){.topbar{padding-left:12px;padding-right:12px;gap:8px}.topbar-actions{gap:6px}.header-ticket{width:38px;height:38px}.header-ticket svg{width:21px;height:21px}.date-button{font-size:12px}}.arrival-intro{--burn:-12%;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;overflow:hidden;background:#04111d;color:#d7bb8a;isolation:isolate;touch-action:manipulation}.intro-scene{position:absolute;top:-5%;right:-5%;bottom:-5%;left:-5%;z-index:-2;background:linear-gradient(0deg,#020a12e8,#07172485 45%,#020b13c9),url(/images/hero.jpg) center 40%/cover;filter:saturate(.65);transform:scale(1.035)}.intro-scene:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 46%,transparent 10%,#020a1266 60%,#020a12bd)}.intro-clock{position:absolute;width:min(122vw,85vh,830px);height:auto;left:50%;top:44%;transform:translate(-50%,-50%) rotate(-12deg);opacity:.25;filter:drop-shadow(0 1px 1px #000);z-index:0}.intro-hand{transform-origin:300px 300px}.intro-hour{transform:rotate(53deg)}.intro-minute{transform:rotate(132deg)}.intro-centre{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);width:min(94vw,1000px);text-align:center;z-index:2}.intro-kicker{font-size:11px;letter-spacing:3px;line-height:1.5;margin:0 0 22px;color:#c2c6bf;opacity:.75}.intro-logo{position:relative;width:100%;aspect-ratio:2122/741;filter:drop-shadow(0 5px 20px #0009);transform:translateZ(0)}.intro-logo img{display:block;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain}.intro-logo-blue{-webkit-mask-image:linear-gradient(90deg,transparent calc(var(--burn) - 8%),#000 calc(var(--burn) + 4%));mask-image:linear-gradient(90deg,transparent calc(var(--burn) - 8%),#000 calc(var(--burn) + 4%))}.intro-logo-gold{-webkit-mask-image:linear-gradient(90deg,#000 calc(var(--burn) - 3%),transparent calc(var(--burn) + 9%));mask-image:linear-gradient(90deg,#000 calc(var(--burn) - 3%),transparent calc(var(--burn) + 9%))}.intro-ember-edge{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent calc(var(--burn) - 4%),#dba95318 calc(var(--burn) - 1%),#ffe4aeb0 var(--burn),#dba95322 calc(var(--burn) + 1%),transparent calc(var(--burn) + 4%));-webkit-mask:url(/images/eaton-blue.png) center/contain no-repeat;mask:url(/images/eaton-blue.png) center/contain no-repeat;mix-blend-mode:screen;filter:blur(.5px)}.intro-title{font-size:clamp(17px,3.2vw,30px);font-weight:400;letter-spacing:clamp(7px,1.9vw,18px);padding-left:clamp(7px,1.9vw,18px);line-height:1.5;margin:20px 0 0;color:#d7bb8a;text-shadow:0 2px 20px #020a12}.intro-rewind{display:flex;flex-direction:column;align-items:center;gap:9px;margin:26px auto 0;color:#b7c0c0;font-size:10px;letter-spacing:3px;opacity:.6}.intro-rewind time{display:block;height:17px;line-height:17px;font-size:13px;font-variant-numeric:tabular-nums;letter-spacing:2px}.intro-fragments{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;font-family:var(--serif);font-style:italic;color:#b5b7aa;text-shadow:0 3px 12px #000;opacity:0}.intro-fragments span{position:absolute;font-size:clamp(20px,4vw,37px);white-space:nowrap;filter:blur(.3px)}.intro-fragments span:nth-child(1){left:12%;top:19%;transform:rotate(-7deg)}.intro-fragments span:nth-child(2){right:7%;top:69%;transform:rotate(5deg)}.intro-fragments span:nth-child(3){left:9%;top:79%;font-size:clamp(17px,3vw,27px);transform:rotate(-4deg)}.intro-atmosphere{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:3}.intro-skip{position:absolute;right:max(22px,env(safe-area-inset-right));bottom:max(28px,env(safe-area-inset-bottom));z-index:4;font-size:12px;letter-spacing:.2px;color:#c6c9c2;min-height:44px;padding:10px 0 10px 14px;display:flex;align-items:center;gap:12px;opacity:.75}.intro-skip span{color:var(--gold);font-size:18px}.arrival-intro.is-playing{animation:intro-veil var(--intro-duration) both}.is-playing .intro-scene{animation:intro-room var(--intro-motion-duration) ease-out both}.is-playing .intro-clock{animation:intro-dial var(--intro-duration) linear both}.is-playing .intro-hour{animation:intro-hour-reverse var(--intro-duration) linear both}.is-playing .intro-minute{animation:intro-minute-reverse var(--intro-duration) linear both}.is-playing .intro-logo{animation:intro-logo-dissolve var(--intro-duration) both}.is-playing .intro-kicker,.is-playing .intro-title,.is-playing .intro-rewind{animation:intro-lettering var(--intro-duration) both}.is-playing .intro-fragments{animation:intro-fragments var(--intro-duration) both}@keyframes intro-veil{0%,81.5%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes intro-room{0%{transform:scale(1.035)}to{transform:scale(1.115)}}@keyframes intro-dial{0%{transform:translate(-50%,-50%) rotate(-12deg);opacity:.14}25%,76%{opacity:.28}to{transform:translate(-50%,-50%) rotate(-50.595deg);opacity:0}}@keyframes intro-hour-reverse{0%{transform:rotate(53deg)}to{transform:rotate(-27.595deg)}}@keyframes intro-minute-reverse{0%{transform:rotate(132deg)}to{transform:rotate(-505.946deg)}}@keyframes intro-logo-dissolve{0%{opacity:0;transform:scale(.96);filter:blur(3px) drop-shadow(0 4px 18px #0008)}12.333%,76.214%{opacity:1;transform:scale(1);filter:blur(0) drop-shadow(0 4px 18px #0008)}to{opacity:0;transform:translateY(-14px) scale(1.08);filter:blur(17px) drop-shadow(0 4px 18px #0008)}}@keyframes intro-lettering{0%{opacity:0;filter:blur(2px)}19.381%,70.929%{opacity:.8;filter:blur(0)}to{opacity:0;filter:blur(5px)}}@keyframes intro-fragments{0%,6.167%{opacity:0;transform:translateY(18px)}28.19%,68.286%{opacity:.38}to{opacity:0;transform:translateY(-18px)}}@media(max-width:700px){.intro-centre{top:43%}.intro-clock{top:43%;width:136vw}.intro-kicker{font-size:9px;letter-spacing:2.1px;margin-bottom:25px}.intro-title{margin-top:18px}.intro-rewind{font-size:9px;letter-spacing:2px;margin-top:25px}.intro-fragments span:nth-child(1){top:19%;left:9%}.intro-fragments span:nth-child(2){top:68%;right:7%}.intro-fragments span:nth-child(3){top:78%;left:6%}}@media(prefers-reduced-motion:reduce){.arrival-intro{display:none}}
