
:root{--bg:#0b0a12;--paper:#f7f0e6;--muted:#b9b3ba;--accent:#e5c4a8;--line:#3a303c}*{box-sizing:border-box}body{margin:0;color:var(--paper);background:var(--bg);font-family:Arial,sans-serif;font-size:14px;line-height:1.55}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.reviewbar{background:#211b29;border-bottom:1px solid #4b3e51;padding:12px 4vw;display:flex;align-items:center;gap:25px}.reviewbar small{font-size:10px;letter-spacing:.14em;white-space:nowrap;color:#d5c7de}.tabs{display:flex;gap:5px;flex-wrap:wrap}.tabs button{background:transparent;border:1px solid transparent;border-radius:30px;color:#c5bbc8;padding:7px 13px;font-size:12px}.tabs button[aria-selected=true]{background:var(--paper);color:var(--bg)}header{max-width:1260px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:24px 42px;border-bottom:1px solid var(--line)}header img{width:88px;height:auto}header a{font-size:11px;letter-spacing:.07em;color:var(--muted)}main{max-width:1260px;margin:auto;padding:42px 42px 24px}.layout{display:grid;grid-template-columns:1.25fr 1fr;gap:76px;align-items:start}.eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 17px}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(34px,3.5vw,50px);line-height:1.13;letter-spacing:-.035em;margin:0 0 18px;white-space:pre-line}.intro{font-size:15px;line-height:1.65;color:var(--muted);max-width:510px;margin:0 0 27px}.intro p{margin:0 0 14px}.intro .benefit{color:var(--paper);border-left:1px solid var(--accent);padding-left:15px;font-size:14px}.inc-title{font-size:11px;font-weight:400;color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 2px}.inclusions{list-style:none;margin:0;padding:0}.inclusions li{display:grid;grid-template-columns:27px 1fr;gap:8px;padding:13px 0;border-bottom:1px solid var(--line)}.number{font-size:9px;color:var(--accent);padding-top:3px}.inclusions strong{font-weight:400;font-size:14px}.inclusions p{font-size:12px;color:var(--muted);margin:3px 0 0;line-height:1.5}.card{border:1px solid #514253;border-radius:150px 150px 4px 4px;overflow:hidden;background:radial-gradient(ellipse at 50% 0,#30263f,transparent 75%),#13101c}.photo{height:180px;position:relative;margin:0;overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.75) brightness(.85)}.photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#17111ed9,transparent 65%)}.card-content{padding:24px 30px 26px;text-align:center}.unit{color:var(--accent);font-size:11px;letter-spacing:.07em;margin:0}.price{font-family:Georgia,serif;font-size:56px;line-height:1;margin:13px 0}.price small{font-size:25px}.onrequest{font-family:Georgia,serif;font-size:36px;margin:10px 0}.card-note{color:var(--muted);font-size:12px;margin:0 0 21px}.cta{display:block;width:100%;padding:16px 12px;background:var(--accent);border:0;border-radius:30px;color:#160e17;text-align:center;font-size:12px;line-height:1.4;text-decoration:none!important;transition:background .2s}.cta:hover{background:#f2d7bf}.micro{font-size:10px;color:var(--muted);margin:12px 0 0}.contact{display:inline-block;font-size:11px;color:var(--accent);margin-top:18px;border-bottom:1px solid #655161;padding-bottom:2px}.caption{font-family:Georgia,serif;font-style:italic;color:#bcaabf;font-size:13px;margin:17px 0 0;text-align:center}.member{margin:15px 0 0;border-top:1px solid var(--line);padding-top:13px;font-size:11px;color:var(--accent)}.member summary{cursor:pointer}.member p{color:var(--muted);margin-bottom:0}.packs{margin-top:32px;padding:24px;border:1px solid var(--line);background:#17131f}.packs h2{font:26px/1.25 Georgia,serif;margin:0 0 12px}.packs>p:not(.eyebrow){color:var(--muted);max-width:680px}.pack-options{display:flex;gap:14px;margin:20px 0}.pack-options>div{flex:1;border-top:1px solid var(--line);padding-top:14px}.pack-options strong{font:24px Georgia,serif;display:block}.pack-options span{display:block;color:var(--muted);font-size:12px;margin-top:7px}.packs small{color:var(--accent);font-size:10px}.after{border-top:1px solid var(--line);margin-top:40px;padding-top:23px}.after h2{font-family:Georgia,serif;font-size:23px;font-weight:400;margin:0 0 19px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.step{display:grid;grid-template-columns:24px 1fr;gap:8px}.step b{font-weight:400;font-size:12px}.step p{margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.6}.step span{color:var(--accent);font-size:10px;padding-top:2px}footer{max-width:1176px;margin:24px auto 0;padding:18px 0;border-top:1px solid var(--line);font-size:9px;color:var(--muted);letter-spacing:.13em;display:flex;justify-content:space-between}.validation{max-width:1176px;margin:15px auto 30px;background:#211b29;padding:12px 18px;color:#c8bfd0;font-size:11px}.validation summary{cursor:pointer;color:var(--accent)}.validation p{max-width:1000px;line-height:1.7}dialog{max-width:440px;background:#201927;border:1px solid #735a77;border-radius:8px;color:var(--paper);padding:30px}dialog::backdrop{background:#000a}dialog h2{font:26px Georgia,serif;margin-top:0}dialog p{color:var(--muted);font-size:14px}dialog button{border:0;padding:10px 20px;border-radius:20px;background:var(--accent)}@media(min-width:1500px){main{padding-top:55px}}@media(max-width:850px){.layout{gap:30px;grid-template-columns:1.15fr 1fr}.card-content{padding:22px 20px}.reviewbar{display:block}.tabs{margin-top:10px}.photo{height:150px}}@media(max-width:640px){header{padding:20px 22px}header img{width:74px}main{padding:28px 22px 16px}.layout{display:flex;flex-direction:column;gap:26px}.copy{display:contents}.eyebrow{order:0;margin-bottom:-13px}h1{order:1;font-size:36px;margin-bottom:-12px}.intro{order:2;margin:0}.purchase{order:3;width:100%}.included{order:4;width:100%}.photo{height:140px}.card{border-radius:100px 100px 4px 4px}.card-content{padding:20px 24px}.price{font-size:48px}.caption{display:none}.steps{grid-template-columns:1fr;gap:18px}.after{margin-top:28px}.after h2{font-size:25px}footer{margin:20px 22px 0}.validation{margin:15px 22px 25px}.tabs{flex-wrap:nowrap;overflow:auto;padding-bottom:4px;scrollbar-width:thin}.tabs button{white-space:nowrap;flex-shrink:0}.reviewbar{padding:10px 15px}.inclusions li{padding:14px 0}.inclusions strong{font-size:15px}.inclusions p{font-size:13px}.step b{font-size:14px}.step p{font-size:12px}}
.packs .eyebrow{margin:0 0 14px}.booking-format{font-size:12px;color:var(--muted);margin:24px 0 0}.photo{height:230px}@media(max-width:640px){.photo{height:200px}}
.card{position:relative;isolation:isolate;border-color:#6a5163;box-shadow:0 0 55px #a16c9515}
.card:before{content:'';position:absolute;z-index:2;pointer-events:none;inset:0;border-radius:inherit;border:1px solid #edc6a84d;box-shadow:inset 0 0 30px #d5a57616;animation:arch-light 7s ease-in-out infinite alternate}
@keyframes arch-light{from{opacity:.3}to{opacity:1}}
.cta{transition:background .18s,transform .18s,box-shadow .18s;box-shadow:0 4px 18px #0002}
@media(hover:hover){.cta:hover{transform:translateY(-2px);box-shadow:0 8px 25px #e5c4a824}.contact:hover{color:#f7dfca;border-color:#e5c4a8}.tabs button:hover:not([aria-selected=true]){border-color:#67536c}}
.cta:active{transform:translateY(1px);box-shadow:none}
.arrive{animation:arrive .32s ease-out both}
@keyframes arrive{from{opacity:.8;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.mobile-booking[hidden]{display:none!important}
.mobile-booking{display:none}
@media(max-width:640px){
 body{padding-bottom:88px}
 .mobile-booking{display:flex;position:fixed;z-index:30;bottom:0;left:0;right:0;align-items:center;gap:18px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:#16111ef5;border-top:1px solid #715568;box-shadow:0 -8px 30px #0003;backdrop-filter:blur(12px)}
 .mobile-booking .mini-price{white-space:nowrap;font:26px Georgia,serif}
 .mobile-booking .mini-price small{display:block;font:9px Arial,sans-serif;color:var(--muted);margin-top:5px}
 .mobile-booking .cta{flex:1;width:auto;font-size:12px;padding:14px 18px}
}
@media(prefers-reduced-motion:reduce){.card:before,.arrive{animation:none}.cta{transition:none}.cta:hover{transform:none}}
@media print{.mobile-booking{display:none!important}.card:before,.arrive{animation:none}body{padding-bottom:0}}

.reviewbar,.validation{display:none}.card .cta:disabled{cursor:default}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.studio-picker{margin:24px 0 18px;text-align:left}.studio-picker label{display:block;font-size:13px;letter-spacing:.07em;margin-bottom:10px;color:#e7c6ab}.studio-picker select{box-sizing:border-box;width:100%;min-height:50px;padding:12px 16px;border:1px solid #8b7664;border-radius:8px;background:#17131e;color:#fff;font:inherit;font-size:16px}.studio-picker select:focus-visible{outline:2px solid #e7c6ab;outline-offset:3px}#studio-status{font-size:12px;line-height:1.5;min-height:36px;margin:10px 0;color:#c5bdc8}.cta:disabled{opacity:.55;cursor:not-allowed}

.studio-picker{border:0;padding:0;min-width:0;margin:26px 0 20px}.studio-picker legend{font-size:13px;letter-spacing:.04em;color:#e7c6ab;margin-bottom:12px}.studio-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.studio-picker .studio-choice{display:block;position:relative;margin:0;cursor:pointer;letter-spacing:normal}.studio-choice input{position:absolute;width:1px;height:1px;opacity:0}.studio-choice span{display:block;position:relative;min-height:84px;box-sizing:border-box;padding:18px 12px;border:1px solid #766252;border-radius:12px;background:#191420;transition:background .2s,border-color .2s,color .2s;color:#f7f0e8}.studio-choice small{display:block;font-size:9px;letter-spacing:.14em;opacity:.65;margin-bottom:8px}.studio-choice strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:19px;white-space:nowrap}.studio-choice i{position:absolute;right:10px;top:8px;font-style:normal;opacity:0;font-size:13px}.studio-choice input:checked+span{background:#e7c6ab;color:#241b24;border-color:#e7c6ab}.studio-choice input:checked+span i{opacity:1}.studio-choice input:focus-visible+span{outline:2px solid #e7c6ab;outline-offset:4px}.studio-choice:hover span{border-color:#e7c6ab}@media(max-width:340px){.studio-options{grid-template-columns:1fr}}
