/* The first step towards a much more cinematic, film-like experience. */
.spotify-room{padding:clamp(24px,4vw,50px);background:linear-gradient(138deg,#2d1834,#48263b 50%,#251b31);border:1px solid #ffbdd435;border-radius:28px;box-shadow:0 35px 80px #0002}.spotify-room h2{font-family:Georgia,serif;font-size:clamp(28px,4vw,48px);margin:15px 0}.spotify-room p{max-width:590px;opacity:.83;line-height:1.7}.spotify-embed-v3{border:0;width:100%;border-radius:14px;display:block;margin:24px auto}.v3-intro-spotify{position:relative;z-index:3;max-width:480px;width:100%;margin:18px auto}.v3-intro-spotify .spotify-embed-v3{margin:12px auto}.v3-intro-cinematic h1{animation:v3-intro-reveal 1.4s cubic-bezier(.2,.7,.2,1) both}.v3-intro-cinematic .intro-message{animation:v3-intro-reveal 1.8s .18s both}.intro-cinematic:before{content:'';position:absolute;inset:-30%;background:conic-gradient(from 20deg at 50% 50%,transparent,#bf639616,transparent,#7f93c112,transparent);animation:v3-sky-turn 26s linear infinite;pointer-events:none}.cosmic-q{padding:25px;background:linear-gradient(150deg,#281e39,#2a1b32);border:1px solid #e4b1cd35;border-radius:20px;box-shadow:0 15px 40px #0a0a2017}.cosmic-q h3{font:normal clamp(20px,2.3vw,29px) Georgia,serif;margin:10px 0}.cosmic-q .couple-answers{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.couple-answers>div{border:1px solid #eab9d123;background:#ffffff08;padding:12px;border-radius:12px}.couple-answers label{display:block;color:#e2afc5;font-size:11px;margin-bottom:7px}.couple-answers p{font-size:12px!important;line-height:1.6;margin:0;min-height:34px}.chemistry-pair{display:flex;align-items:center;justify-content:space-evenly;text-align:center;padding:35px;background:radial-gradient(circle at 50% 40%,#573455,#241b32 80%);border-radius:24px;border:1px solid #f9c4de33;margin:22px 0}.chemistry-pair h3{font:normal clamp(27px,4vw,46px) Georgia,serif;margin:12px}.chemistry-pair p{font-size:12px;color:#dabbd0}.chemistry-heart{font-size:65px;color:#f4bdce;filter:drop-shadow(0 0 18px #ee7ca366)}.compat-banner{padding:25px 32px;background:#32243c;border-radius:20px;margin:12px 0 40px}.compat-banner>span{color:#dfb4c9;font-size:11px;letter-spacing:2px}.compat-banner>strong{display:block;font:normal 32px Georgia,serif;margin:10px 0}.compat-banner p{color:#d9c4d1;font-size:14px}.um-film{position:fixed;inset:0;z-index:9999;background:#0a0710;color:#fff;display:grid;place-items:center}.um-film-scene{position:relative;display:flex;flex-direction:column;width:100%;height:100%;overflow:auto;background:radial-gradient(ellipse at 50% 46%,#492a50 0,#160f24 50%,#090710 100%);animation:v3-film-in .95s both}.um-film-ambient{position:absolute;font-size:600px;opacity:.032;top:-230px;right:-80px;transform:rotate(12deg);pointer-events:none;animation:v3-sky-turn 55s linear infinite}.um-film-toolbar{position:relative;z-index:2;padding:23px clamp(20px,5vw,80px);display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:3px;color:#ebc0da}.um-film-toolbar button{font-size:30px;background:none;border:0;color:white;cursor:pointer}.um-film-content{position:relative;z-index:1;margin:auto;text-align:center;width:min(90vw,800px);padding:20px 0}.um-film-content .eyebrow{letter-spacing:3px}.um-film-content h1{font:normal clamp(34px,6vw,70px) Georgia,serif;line-height:1.12;margin:24px 0 12px;animation:v3-intro-reveal 1.6s .3s both}.um-film-content>p{font:normal clamp(16px,2vw,24px) Georgia,serif;line-height:1.7;max-width:700px;margin:0 auto;color:#ecd6e3;animation:v3-intro-reveal 1.6s .65s both}.um-film-media{height:min(42vh,430px);max-width:730px;margin:18px auto;border-radius:18px;overflow:hidden;background:linear-gradient(145deg,#4a354f,#332d4a,#30253d);box-shadow:0 35px 80px #07010b80;display:grid;place-items:center;animation:v3-film-photo 9s ease-in-out infinite alternate}.um-film-media img,.um-film-media video{width:100%;height:100%;object-fit:cover}.um-film-media .um-film-placeholder{display:grid;justify-items:center;gap:10px;font-size:50px;color:#e6aac9}.um-film-placeholder span{font-size:12px;letter-spacing:2px}.um-film-media:has(img) .um-film-placeholder,.um-film-media:has(video) .um-film-placeholder{display:none}.um-film-bottom{padding:20px clamp(20px,5vw,80px);z-index:2}.um-film-track{display:flex;gap:7px}.um-film-track span{height:3px;flex:1;background:#fff3;border-radius:2px}.um-film-track span.done{background:#f7b8d8}.um-film-track span.active{background:#f7b8d8;box-shadow:0 0 15px #f7b8d8}.um-film-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:18px}.um-film-controls button{color:#f7e8ee;background:transparent;border:1px solid #e3bed355;border-radius:50px;padding:10px 20px;cursor:pointer}.um-film-controls button:hover{background:#fff2}.um-film-controls button:disabled{opacity:.3}@keyframes v3-intro-reveal{from{opacity:0;transform:translateY(25px) scale(.97);filter:blur(9px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes v3-film-in{from{opacity:0;filter:blur(14px);transform:scale(1.045)}to{opacity:1;filter:none;transform:none}}@keyframes v3-film-photo{0%{transform:scale(1)}100%{transform:scale(1.035)}}@keyframes v3-sky-turn{to{transform:rotate(360deg)}}@media(max-width:700px){.cosmic-q .couple-answers{grid-template-columns:1fr}.um-film-media{height:32vh}.um-film-content>p{font-size:15px}.um-film-toolbar{padding:14px 20px}.um-film-bottom{padding:15px}.um-film-controls{gap:6px}.um-film-controls button{font-size:11px;padding:9px}}@media(prefers-reduced-motion:reduce){.v3-intro-cinematic h1,.v3-intro-cinematic .intro-message,.um-film-scene,.um-film-content h1,.um-film-content>p,.um-film-media,.intro-cinematic:before{animation:none!important}}

.modal-backdrop{z-index:120}

.cloud-gate{position:fixed;inset:0;z-index:130;display:grid;place-items:center;padding:25px;background:radial-gradient(circle at 50% 45%,#402748,#100b19 75%);color:#fdf1f8;text-align:center}.cloud-gate-card{max-width:590px}.cloud-gate h1{font-size:clamp(34px,5vw,64px);line-height:1.1;margin:18px 0}.cloud-gate p{max-width:450px;margin:20px auto 30px;color:#e0c7d8}.cloud-gate .btn{margin:5px}

.theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0 50px}.theme-card{padding:22px;border-radius:18px;border:1px solid #f1b6cd30;background:linear-gradient(135deg,#3a2948,#251c35)}.theme-card h3{font-size:21px;margin:10px 0}.theme-card p{font-size:13px;color:#dfcad8;line-height:1.7}@media(max-width:800px){.theme-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.theme-grid{grid-template-columns:1fr}}
