@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Heebo:wght@400;500;600;700&display=swap";:root{--page: #140d22;--surface: #21172d;--surface-raised: #2c1d3c;--border: #493453;--text: #f5edf9;--muted: #bdb0c9;--accent: #c195f5;--focus: #e6b3ff;--brand-gradient: linear-gradient(110deg, #925de2, #cc51a0);--button-gradient: linear-gradient(110deg, #7040b9, #a7327c);font-family:DM Sans,Heebo,sans-serif;color:var(--text);background:var(--page);color-scheme:dark;font-synthesis:none;font-weight:400;line-height:1.5;font-size:15px}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 8% 0%,#743f963b,transparent 48%),radial-gradient(ellipse at 95% 35%,#ad397929,transparent 48%),var(--page)}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:4px}h1,h2,h3,p{margin:0}h1{font-size:clamp(34px,4vw,56px);font-weight:500;line-height:1.13;letter-spacing:-2px;max-width:760px}h1:focus{outline:none}h2{font-size:23px;font-weight:500;letter-spacing:-.5px}h3{font-size:23px;font-weight:500}small{font-size:12px;color:var(--muted)}button{border:0;background:none}svg{flex-shrink:0}.header{max-width:1320px;margin:auto;height:100px;padding:0 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;font-size:27px;font-weight:700;letter-spacing:-1.5px;padding:0}.brand-wordmark{background:var(--brand-gradient);background-clip:text;-webkit-background-clip:text;color:transparent}.brand-symbol{width:46px;height:46px;object-fit:contain;flex-shrink:0;margin-inline-end:10px}.header nav{display:flex;align-items:center;gap:24px}.language{display:flex;gap:7px;align-items:center;min-height:44px}.nav-bookings{min-height:44px}.icon-button{height:44px;width:44px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%}main{max-width:1224px;margin:auto;padding:36px 48px 100px;min-height:calc(100vh - 194px)}footer{max-width:1224px;margin:auto;border-top:1px solid var(--border);padding:26px 48px;display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.footer-brand{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--text);font-size:17px}.steps{list-style:none;display:flex;gap:34px;padding:0;margin:0 0 56px;font-size:12px;color:var(--muted);align-items:center}.steps li{display:flex;align-items:center;gap:8px}.steps li span{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;font-size:10px}.steps li.active{color:var(--text);font-weight:700}.steps li.active span{background:var(--button-gradient);color:#fff;border-color:var(--accent)}.steps li.complete span{background:var(--surface-raised);border-color:var(--surface-raised)}.page-heading{margin-bottom:35px}.eyebrow{font-size:10px;letter-spacing:1.4px;font-weight:600;text-transform:uppercase;color:var(--muted);margin-bottom:16px}.page-heading>p:last-child:not(.eyebrow){color:var(--muted);margin-top:17px;font-size:15px;max-width:580px}.room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:27px}.room-card{padding:0;text-align:start;border-radius:18px;overflow:hidden;background:var(--surface);box-shadow:0 8px 28px #12091f33;transition:transform .2s,box-shadow .2s}.room-card:hover{transform:translateY(-4px);box-shadow:0 12px 35px #a15de626}.room-visual{height:275px;background:#312240;position:relative;display:grid;place-items:center;overflow:hidden}.tone-1{background:#35203e}.tone-2{background:#312240}.room-visual>img{width:100%;height:100%;object-fit:cover}.availability{position:absolute;top:18px;inset-inline-start:18px;background:#20172bef;border-radius:20px;font-size:10px;padding:7px 11px;display:flex;align-items:center;gap:5px}.availability i{height:5px;width:5px;border-radius:50%;background:#d89be6}.room-index{position:absolute;bottom:15px;inset-inline-end:21px;font-size:34px;font-weight:500;color:#c5a5e055}.small-qube{height:194px;width:145px;background:#5c397c;border-radius:17px 17px 6px 6px;transform:perspective(700px) rotateY(-15deg);box-shadow:22px 19px #39234e,0 40px 32px -20px #05020977;position:relative;border:5px solid #9565b7}.small-qube>div{height:150px;width:95px;margin:11px auto;background:linear-gradient(120deg,#673e8b,#20142f);border-radius:32px 32px 2px 2px;border:5px solid #ae7cca}.small-qube>span{position:absolute;bottom:7px;left:45px;font-size:7px;font-weight:700}.room-info{padding:24px;display:flex;align-items:center;justify-content:space-between;gap:14px}.room-info p{display:flex;gap:5px;align-items:center;color:var(--muted);font-size:12px;margin:8px 0}.room-info small{display:flex;gap:5px;align-items:center}.round-arrow{height:39px;width:39px;border:1px solid var(--border);border-radius:50%;display:grid;place-items:center}.back{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);margin:0 0 20px;padding:7px 0;min-height:40px}.booking-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:40px}.scheduler{background:var(--surface);border-radius:18px;padding:28px}.field-label{display:flex;align-items:center;gap:9px;font-weight:500;margin-bottom:14px}.scheduler input{width:100%;min-height:54px;border:1px solid var(--border);border-radius:8px;padding:12px;background:var(--surface);color:var(--text);color-scheme:dark}.slot-header{margin-top:32px;display:flex;align-items:center;justify-content:space-between;gap:10px}.slot-header h2{font-size:17px}.slot-header>span{font-size:11px;color:var(--muted)}.timezone{font-size:11px;color:var(--muted);margin:7px 0 16px}.slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-height:420px;overflow:auto;padding:3px}.slot{border:1px solid var(--border);border-radius:8px;padding:12px 5px;min-height:66px;font-size:12px;font-weight:500;background:var(--surface)}.slot small{display:flex;justify-content:center;align-items:center;gap:3px;font-size:10px;font-weight:400;margin-top:2px}.slot.selected{background:var(--button-gradient);color:#fff;border-color:var(--accent)}.slot.selected small{color:#f4e8ff}.slot:disabled{background:#231b2f;border-color:#382e44;color:#93869f}.slot:disabled small{color:#93869f}.summary{background:var(--surface-raised);border:1px solid var(--border);border-radius:18px;padding:26px;align-self:start;position:sticky;top:22px}.summary h2{margin-bottom:20px}.location-block,.detail{display:flex;align-items:flex-start;gap:11px;font-size:13px;padding:20px 0;border-bottom:1px solid var(--border)}.location-block svg,.detail>svg{color:var(--muted)}.location-block p{line-height:1.6}.location-block small{display:block;margin:7px 0}.text-button{padding:8px 0;min-height:40px;display:inline-flex;align-items:center;gap:7px;text-decoration:underline;text-underline-offset:4px;font-size:12px}.summary-time{display:flex;align-items:center;gap:11px;padding:25px 0;font-size:12px}.summary-time small,.summary-time strong{display:block}.button{display:flex;align-items:center;justify-content:center;gap:10px;border-radius:9px;min-height:50px;padding:13px 20px;font-size:13px;font-weight:500;transition:background .15s,transform .15s}.button:active{transform:scale(.99)}.primary{background:var(--button-gradient);color:#fff}.primary:hover{filter:brightness(1.15)}.primary:disabled{filter:none;background:#231b2f;color:#93869f}.secondary{border:1px solid var(--border);background:var(--surface)}.secure{display:flex;align-items:center;justify-content:center;gap:5px;color:var(--muted);font-size:10px;margin-top:16px}.summary>.button,.review-card>.button{width:100%}.review-card,.confirmation-card{background:var(--surface);max-width:600px;border-radius:20px;padding:30px;border:1px solid var(--border)}.summary-room{display:flex;align-items:center;gap:16px;padding-bottom:20px}.summary-room span{font-size:12px;color:var(--muted)}.mini-cube{width:47px;height:47px;background:var(--surface-raised);border:9px solid #58416f;border-radius:10px;flex-shrink:0}.detail strong,.detail small{display:block}.detail strong{font-size:19px;font-weight:500;margin-top:5px}.detail small{font-size:11px;margin-top:3px}.review-card>.button{margin-top:28px}.confirmation{max-width:620px;margin:0 auto;text-align:center}.confirmation .page-heading>p{margin-inline:auto}.confirmation h1{font-size:43px}.confirmation-card{text-align:start;margin-bottom:25px}.success-mark{width:67px;height:67px;background:var(--surface-raised);border:1px solid #58416f;display:grid;place-items:center;border-radius:50%;margin:0 auto 25px;color:var(--accent)}.success-mark.muted{background:#231b2f}.reference{padding:20px 0;display:flex;justify-content:space-between;gap:12px;font-size:10px;color:var(--muted);overflow-wrap:anywhere}.reference bdi{font-family:monospace;text-align:end}.email-state{display:flex;gap:9px;padding:15px;border-radius:8px;background:var(--surface-raised);font-size:12px;color:var(--accent)}.email-state.warning{background:#3b2b23;color:#f4d49b}.calendar-actions{display:grid;gap:10px;margin-top:22px}.calendar-actions>small{text-align:center;font-size:10px}.calendar-actions>.text-button{justify-content:center}.confirmation>.button{display:inline-flex}.map-panel{margin-top:12px;max-width:100%}.map-panel iframe{width:100%;height:220px;border:0;border-radius:8px}.map-panel a{display:flex;gap:8px;align-items:center;min-height:44px}.error{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;margin-bottom:24px;border:1px solid #6e4751;border-radius:9px;background:#3a2530;color:#ffd0be;font-size:13px}.error button{text-decoration:underline}.empty{padding:45px 15px;text-align:center;color:var(--muted);font-size:14px}.landing{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center;min-height:610px}.landing h1{background:var(--brand-gradient);background-clip:text;-webkit-background-clip:text;color:transparent;font-size:clamp(42px,5vw,70px);max-width:440px}.landing .page-heading p:last-child{max-width:385px;line-height:1.8}.google{display:inline-flex;gap:14px;min-height:56px;padding:15px 22px;margin-top:6px;border:1px solid #eadcf7;border-radius:14px;background:#fff;color:#30213f;font-size:14px;font-weight:600;box-shadow:0 4px 18px #09031130,0 0 28px #ad69d51a;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}.google:hover{background:#faf6ff;border-color:#c99be9;box-shadow:0 8px 28px #09031140,0 0 32px #ad69d533;transform:translateY(-2px)}.google:active{transform:translateY(0)}.google-g{width:22px;height:22px;flex-shrink:0}.google>.directional{margin-inline-start:8px;color:#846794}.privacy{font-size:10px;display:flex;align-items:center;gap:6px;margin-top:17px;color:var(--muted)}.hero-art{width:100%;aspect-ratio:3 / 2;border-radius:28px;border:1px solid #bf83e54d;background:var(--surface);overflow:hidden;box-shadow:0 24px 70px -24px #b348c84d,0 8px 32px #08041066}.hero-art>img{display:block;width:100%;height:100%;object-fit:cover}.bookings-list{display:grid;gap:15px}.bookings-list article{background:var(--surface);border-radius:15px;padding:24px;display:flex;justify-content:space-between;gap:20px}.bookings-list article p{font-size:13px;margin:8px 0}.bookings-list article small{display:block;margin-top:6px}.booking-actions{display:flex;flex-direction:column;align-items:flex-end}.cancel{color:#ffacae}.dialog-backdrop{position:fixed;inset:0;background:#08040e88;display:grid;place-items:center;z-index:5;padding:20px}.dialog{background:var(--surface);border-radius:18px;padding:30px;width:min(420px,100%);display:grid;gap:15px}.dialog h2{margin-bottom:10px}.danger{background:#a53459;color:#fff}[dir=rtl] .directional{transform:scaleX(-1)}[dir=rtl] h1{letter-spacing:-1px}[dir=rtl] .eyebrow{letter-spacing:0}section,aside,.confirmation,.room-card{animation:arrive .25s ease-out}@keyframes arrive{0%{opacity:.3;translate:0 5px}to{opacity:1;translate:0 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(min-width:1450px){main{padding-top:52px}.room-visual{height:320px}}@media(max-width:900px){.header{padding:0 26px}.booking-layout{gap:20px;grid-template-columns:1.3fr 1fr}main{padding-inline:26px}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scheduler,.summary{padding:21px}.room-visual{height:235px}.landing{gap:20px}.privacy{max-width:250px}}@media(max-width:650px){.header{height:78px;padding:0 20px}.brand{font-size:23px}.brand-symbol{width:36px;height:36px}.header nav{gap:10px}.language{font-size:12px}.nav-bookings{font-size:11px;padding:0 3px}.icon-button{width:34px;height:34px}.header nav .language svg{display:none}main{padding:24px 20px 55px;min-height:calc(100vh - 162px)}.steps{gap:12px;justify-content:space-between;margin-bottom:37px;font-size:10px}.steps li{gap:5px}.steps li span{width:21px;height:21px;font-size:9px}.page-heading{margin-bottom:27px}.page-heading>p:last-child:not(.eyebrow){font-size:13px;line-height:1.7;margin-top:13px}.eyebrow{font-size:9px;margin-bottom:12px}h1{letter-spacing:-1.3px;font-size:36px}.room-grid{grid-template-columns:1fr;gap:22px}.room-visual{height:235px}.room-info{padding:20px}.room-info h2{font-size:23px}.booking-layout{display:flex;flex-direction:column;gap:21px}.scheduler{padding:20px 16px}.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:370px}.slot{font-size:11px;padding:12px 2px}.slot small{font-size:9px}.summary{position:static;padding:22px}.summary>.eyebrow{margin-bottom:8px}.summary h2{margin-bottom:0}.summary .location-block{padding:15px 0}.summary-time{padding:18px 0}.review-card,.confirmation-card{padding:23px 20px}.confirmation h1{font-size:34px}.confirmation .page-heading>.eyebrow{display:none}.success-mark{height:58px;width:58px}.reference{font-size:9px}.landing{display:flex;flex-direction:column;align-items:stretch;gap:37px;min-height:auto;padding-top:26px}.landing h1{font-size:49px;max-width:360px}.landing .page-heading p:last-child{font-size:14px}.hero-art{border-radius:20px}.google{width:100%;margin-top:0}.privacy{max-width:none;justify-content:center;font-size:9px}footer{padding:23px 20px}.bookings-list article{padding:20px}.bookings-list h2{font-size:21px}.bookings-list article p{font-size:11px}.bookings-list article>div:first-child>span{font-size:12px}}.dialog{border:0;color:var(--text);box-shadow:0 24px 100px #08030f66}.dialog::backdrop{background:#08040e88}.summary{width:100%}.closed-hours{margin-top:18px;border-top:1px solid var(--border);padding-top:8px}.closed-hours summary{cursor:pointer;min-height:44px;padding:12px 4px;font-size:12px;color:var(--muted)}.closed-hours summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}.closed-hours[open] summary{margin-bottom:8px}
