:root{color-scheme:dark;--cream:#fbf0dc;--ivory:#fff8ee;--taupe:#6b5946;--line:rgba(255,249,232,.36)}
*{box-sizing:border-box}html{height:100%;background:#263849}
body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;color:var(--ivory)}
a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}
[hidden]{display:none!important}.backdrop{position:fixed;inset:0;overflow:hidden;background:#455e70;z-index:-1}
.gradient-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 28%,rgba(239,201,162,.45),transparent 54%),linear-gradient(163deg,#58748b 0%,#8d9c9d 32%,#415e6b 55%,#b28b71 100%);transform:scale(1.02)}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .65s}.hero-video.is-ready{opacity:1}
.scrim{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(15,22,32,.35),rgba(8,12,24,.12) 34%,rgba(12,17,24,.23) 55%,rgba(11,17,20,.58) 100%)}
.scrim-heavy{background:linear-gradient(to bottom,rgba(20,25,34,.55),rgba(13,20,32,.52) 48%,rgba(10,15,25,.78) 100%)}
.grain{position:absolute;inset:0;opacity:.12;pointer-events:none;background-image:radial-gradient(#fff 0.6px,transparent .8px);background-size:7px 7px}
.page-shell{position:relative;min-height:100svh;min-height:100dvh;max-width:620px;margin:auto;display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(38px,6vh,65px) 24px max(24px,env(safe-area-inset-bottom))}
.brand{width:100%;display:flex;flex-direction:column;align-items:center;gap:14px}.star{font-size:32px;color:var(--cream);font-weight:300;line-height:1}
.brand h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(43px,9.2vw,69px);font-weight:400;letter-spacing:.17em;margin:10px 0 0 0;line-height:1.07;text-transform:uppercase;overflow-wrap:anywhere}
.brand-sub{font-size:10px;font-weight:700;letter-spacing:.42em;text-transform:uppercase;padding-left:.42em;opacity:.98}
.eyebrow{font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#f3e9d4;line-height:1.7}
.brand .eyebrow{margin-top:19px}
.bottom-section{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:21px;width:100%;padding-top:60px;padding-bottom:16px}
.hero-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(25px,6.1vw,37px);font-weight:400;margin:0;text-shadow:0 2px 22px rgba(0,0,0,.22)}
.cream-button{display:flex;justify-content:center;align-items:center;background:linear-gradient(110deg,#fff9e9,#f3e3c6);color:#594a38;width:min(100%,430px);min-height:76px;padding:16px 28px;border:1px solid rgba(255,255,255,.65);border-radius:60px;text-decoration:none;font-size:17px;font-weight:700;box-shadow:0 10px 38px rgba(0,0,0,.12);cursor:pointer;transition:transform .15s,filter .15s}
.cream-button:hover{filter:brightness(1.045)}.cream-button:active{transform:scale(.985)}
.small-copy{font-size:10px;text-transform:uppercase;letter-spacing:.12em;margin:0;color:rgba(255,250,240,.93);line-height:1.75}
.footer-poem{font-family:Georgia,'Times New Roman',serif;font-size:clamp(23px,5.7vw,32px);line-height:1.25;max-width:305px;margin:22px 0 0;text-wrap:balance}.bottom-mark{font-size:28px;margin:0}.video-control{position:absolute;top:25px;right:26px;background:none;color:white;border:0;font-size:19px;cursor:pointer;opacity:.85}
.handoff-fallback{background:rgba(13,23,33,.72);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.23);border-radius:16px;padding:17px 18px;font-size:13px;line-height:1.6;margin:2px 0 0;max-width:410px}.handoff-fallback a{text-decoration:underline;text-underline-offset:3px}
.choices-shell{justify-content:space-between;gap:46px}.choices-shell .brand h1{font-size:clamp(34px,8vw,57px)}
.choice-content{width:100%;max-width:440px;display:flex;flex-direction:column;align-items:center;gap:17px}
.choice-heading{font-family:Georgia,'Times New Roman',serif;font-size:clamp(35px,8vw,52px);line-height:1.08;font-weight:400;margin:0;text-wrap:balance}
.choice-intro{font-size:14px;color:#faeedb;margin:0 0 12px}.destinations{display:flex;flex-direction:column;gap:16px;width:100%}
.destination-button{min-height:84px;padding:18px 23px;display:flex;align-items:center;gap:18px;border:1px solid var(--line);border-radius:20px;background:rgba(255,250,242,.94);backdrop-filter:blur(9px);color:#493e35;text-decoration:none;text-align:left;font-size:18px;font-weight:700;transition:transform .15s,background .15s}
.destination-button:hover{background:#fffaf2}.destination-button:active{transform:scale(.986)}
.destination-icon{font-size:27px;width:30px;text-align:center}.destination-detail{display:block;font-size:12px;font-weight:400;opacity:.76;margin-top:4px}.destination-arrow{margin-left:auto;font-size:22px;font-weight:400}
.destination-button.is-unconfigured{opacity:.58;cursor:not-allowed}
.setup-warning{font-size:12px;line-height:1.6;color:#fff1df;background:rgba(15,19,27,.8);border-radius:12px;padding:12px;margin:0}
.inapp-notice{width:100%;border-radius:18px;padding:18px;background:rgba(16,25,35,.81);border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(9px)}
.inapp-notice p{line-height:1.65;font-size:13px;margin:0 0 18px}.inapp-notice .cream-button{font-size:15px;min-height:62px;padding:10px 15px}.inapp-notice .small-copy{margin:15px 0;text-transform:none;letter-spacing:0;font-size:12px}
.text-button{background:transparent;border:0;color:#fff5e6;text-decoration:underline;text-underline-offset:4px;padding:10px;cursor:pointer;font-size:12px}
.choices-footer{font-size:12px;letter-spacing:.03em;color:#fff0dd;padding-bottom:10px}.choices-footer a{text-underline-offset:4px}
@media (min-width:700px){.page-shell{max-width:700px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}.hero-video{display:none!important}}
