@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--cream:#f4f1e8;--muted:#c5c9bd;--gold:#e4c898;--edge:#ffffff30}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:#061518;color:var(--cream);font:15px/1.6 'DM Sans',system-ui,sans-serif;overflow-x:hidden}button{font:inherit;cursor:pointer}a{color:inherit}.skip{position:absolute;top:-80px;left:10px;background:#fff;color:#000;padding:10px;z-index:20}.skip:focus{top:10px}.scene,.scene-shade{position:fixed;inset:0;pointer-events:none}.scene{background:url('/images/conservatory.webp') center/cover no-repeat;transform:scale(1.025);transition:filter 1.4s ease,transform 4s ease}.scene-shade{background:linear-gradient(90deg,#041219f2 0%,#061820dc 23%,#07172385 48%,#04142012 77%),linear-gradient(0deg,#041219c9 0%,transparent 28%,#02101473 100%)}body[data-mood="gold"] .scene{filter:sepia(.2) saturate(1.3) brightness(1.16);transform:scale(1.07)}body[data-mood="water"] .scene{filter:hue-rotate(15deg) saturate(.84) brightness(.83);transform:scale(1.05)}body[data-act="finale"] .scene{transform:scale(1.09)}.topbar{position:relative;z-index:2;height:85px;border-bottom:1px solid var(--edge);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,70px);gap:25px;backdrop-filter:blur(8px)}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font:800 19px Manrope,sans-serif;letter-spacing:-.04em;white-space:nowrap}.brand img{border-radius:10px;box-shadow:0 0 0 2px #ffffff66}.brand em{font-style:normal;color:#cdb791;font-weight:500}.top-right{display:flex;align-items:center;gap:28px;font-size:11px;font-weight:700}.top-right a{text-decoration:none;border-bottom:1px solid #ffffff82;padding-bottom:2px}.preview-label{font-size:10px;letter-spacing:.13em;color:#d3d9c9;border:1px solid #ffffff4a;border-radius:999px;padding:7px 12px}main{position:relative;z-index:1;min-height:calc(100vh - 85px);display:grid;grid-template-columns:80px minmax(0,1fr) 180px;grid-template-rows:1fr auto;align-items:center;padding:30px clamp(20px,4vw,70px) 0;gap:20px}.rail{writing-mode:vertical-rl;transform:rotate(180deg);display:flex;align-items:center;gap:16px;justify-content:center;color:#d2d2c0;font-size:9px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;align-self:stretch}.rail-line{width:1px;height:73px;background:#e3c79692}.rail-dot{width:5px;height:5px;background:#e3c796;border-radius:50%}.show-panel{width:min(630px,100%);padding:50px 0 70px;animation:rise .6s ease both}@keyframes rise{from{opacity:.1;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.show-eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-weight:800;margin-bottom:18px}.show-panel h1{font:800 clamp(47px,5.4vw,82px)/1.04 Manrope,sans-serif;letter-spacing:-.075em;margin:0 0 24px;text-wrap:balance;text-shadow:0 4px 25px #0008}.show-panel h1 em{font-style:normal;color:#e3d7b5}.show-panel p{max-width:560px;font-size:18px;line-height:1.72;color:#e1e6dd;text-shadow:0 2px 18px #000a;margin:0}.choice-list{display:grid;gap:9px;width:min(490px,100%);margin-top:31px}.choice{width:100%;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 18px;min-height:58px;border-radius:10px;border:1px solid #ffffff66;background:#0a262aab;color:#fff;text-align:left;font-weight:700;backdrop-filter:blur(10px);transition:transform .2s,border-color .2s,background .2s}.choice:hover,.choice:focus-visible{transform:translateX(4px);background:#174337d9;border-color:#e6c791}.choice.primary{background:#decaa5;color:#152827;border-color:#decaa5}.choice.primary:hover{background:#f1dbaf}.choice b{font-size:21px;font-weight:500}.show-panel .show-note{margin-top:20px;color:#c1cbbf;font-size:11px;max-width:490px}.show-index{align-self:center;justify-self:end;display:grid;gap:13px;font-size:10px;color:#d9dbcc;font-weight:800;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.index-track{display:flex;gap:5px}.index-track i{display:block;width:34px;height:3px;background:#ffffff4e;border-radius:5px}.index-track i.active{background:#edca90}.bottom-strip{grid-column:1/-1;align-self:end;display:flex;justify-content:space-between;gap:25px;align-items:center;min-height:58px;border-top:1px solid #ffffff3d;color:#d6d9ce;font-size:9px;font-weight:800;letter-spacing:.15em}.bottom-strip a{text-decoration:none}.bottom-strip a:hover{text-decoration:underline}body[data-act="one"] .show-panel,body[data-act="two"] .show-panel,body[data-act="finale"] .show-panel{animation:rise .5s ease both}
@media(max-width:950px){main{grid-template-columns:38px minmax(0,1fr);grid-template-rows:auto auto auto}.show-index{grid-column:2;justify-self:start;display:flex;align-items:center;margin-top:-30px}.bottom-strip{grid-column:1/-1}.bottom-strip span:nth-child(2){display:none}.show-panel{padding:55px 0}.scene-shade{background:linear-gradient(90deg,#041219ef,#0717239c 65%,#04142055),linear-gradient(0deg,#041219db,transparent 35%,#02101473)}}
@media(max-width:620px){.topbar{height:70px;padding:0 16px}.brand{font-size:15px}.brand img{width:29px;height:29px}.top-right{gap:8px}.top-right a{display:none}.preview-label{font-size:8px;padding:5px 7px}.scene{background-position:60% center}.scene-shade{background:linear-gradient(0deg,#06151bf7 0%,#081820d8 42%,#0717226a 100%)}main{min-height:calc(100dvh - 70px);display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;padding:16px}.rail{writing-mode:horizontal-tb;transform:none;align-self:auto;justify-content:start;font-size:8px;gap:8px;order:0}.rail-line{height:1px;width:17px}.show-panel{padding:30px 0 20px;order:1}.show-eyebrow{font-size:9px;margin-bottom:11px}.show-panel h1{font-size:clamp(37px,10vw,57px);margin-bottom:15px}.show-panel p{font-size:15px;line-height:1.6}.choice-list{margin-top:20px}.choice{min-height:52px;padding:12px 14px}.show-panel .show-note{font-size:10px}.show-index{order:2;margin:0 0 17px;gap:10px;font-size:8px}.bottom-strip{order:3;grid-column:auto;min-height:46px;font-size:7px}.bottom-strip a{display:none}}
@media(prefers-reduced-motion:reduce){.scene,.choice{transition:none}.show-panel{animation:none!important}}
