:root{color-scheme:dark;--bg:#080809;--panel:#141416;--line:#353236;--muted:#aba6a5;--gold:#cfb9a7;--text:#f7f4f1;--max:1180px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);line-height:1.5}body,button,input,select,textarea{font-family:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block}button,input,select,textarea{font-size:1rem}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}.header{position:relative;z-index:10;background:#080808;border-bottom:1px solid #252324}.head-inner{min-height:88px;display:flex;align-items:center;gap:24px;justify-content:space-between}.logo{font-size:30px;font-weight:500;letter-spacing:.18em;line-height:1;display:inline-flex;flex-direction:column;white-space:nowrap}.logo span{font-size:10px;letter-spacing:.52em;text-align:center;padding-top:9px}.menu{display:flex;align-items:center;gap:27px}.menu a{font-size:.92rem;color:#dedada;transition:color .2s}.menu a:hover,.footer a:hover{color:white}.menu-toggle{display:none;background:transparent;border:1px solid #454244;padding:12px;color:white;border-radius:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:52px;padding:13px 24px;border:1px solid transparent;border-radius:12px;font-weight:700;font-size:.9rem;background:#f7f7f8;color:#131315;text-align:center}.btn:hover{filter:brightness(.9)}.btn.secondary{border:1px solid #676165;background:transparent;color:white}.btn.small{min-height:44px;padding:10px 16px}.eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.33em;color:#e3d3c5;font-weight:700}.hero{background:#070707;position:relative;overflow:hidden;min-height:560px;display:flex;align-items:center}.hero-photo{position:absolute;right:0;top:0;bottom:0;width:65%;background:url('hero.webp') center 36%/cover no-repeat}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#070707 5%,rgba(7,7,7,.92) 22%,rgba(7,7,7,.20) 72%,rgba(7,7,7,.12))}.hero-content{position:relative;z-index:1;padding:90px 0;max-width:var(--max)}.hero h1{font-size:clamp(4.1rem,9vw,8rem);line-height:1;font-weight:500;letter-spacing:.025em;margin:15px 0 0}.hero h1 span{display:block;font-size:clamp(1.8rem,3.6vw,3.1rem);font-weight:350;letter-spacing:.28em;margin-top:14px}.hero-lead{font-size:1.16rem;color:#e0dedc;margin:31px 0 22px}.location{display:flex;gap:10px;align-items:center;color:#d8d3d1;margin-top:21px}.icon-row{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:26px auto 40px}.feature{background:#101011;border:1px solid #343033;border-radius:14px;text-align:center;padding:22px 12px;min-height:132px}.feature .symbol{font-size:30px;color:var(--gold);margin:0 auto 11px;line-height:1}.feature strong{display:block;font-size:1.08rem}.feature small{color:#a8a4a2}.section{padding:45px 0 75px}.section-title{text-align:center;font-size:clamp(1.9rem,4vw,3.1rem);font-weight:600;letter-spacing:-.025em;margin:0 0 34px}.section-title:after{content:"";display:block;width:48px;height:2px;background:var(--gold);margin:16px auto 0}.section-note{color:#b9b6b5;text-align:center;margin-top:-22px;margin-bottom:25px;font-size:.9rem}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{overflow:hidden;background:#101011;border:1px solid #383437;border-radius:13px}.service-card img{width:100%;height:195px;object-fit:cover;filter:saturate(.70)}.service-content{padding:13px 16px 17px}.service-card h3{font-size:1.06rem;margin:0 0 6px}.service-price{font-size:1.03rem;font-weight:700}.service-price span{font-weight:400;font-size:.84rem;color:#b6b0af}.cta-band{border:1px solid #454044;border-radius:20px;background:linear-gradient(112deg,#1a191a,#0f0e0e);padding:36px;display:flex;align-items:center;justify-content:space-between;gap:22px}.cta-band h2{margin:0 0 6px;font-size:1.7rem}.cta-band p{margin:0;color:#c2baba}.split{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.split>img{width:100%;height:420px;object-fit:cover;object-position:center 35%;border-radius:18px}.split h2{font-size:clamp(2rem,5vw,3.2rem);margin:10px 0}.muted{color:var(--muted)}.footer{padding:36px 0;border-top:1px solid #262426;color:#a7a0a0;font-size:.87rem}.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.page-head{padding:55px 0 27px}.page-head h1{font-size:clamp(2rem,5.4vw,3.5rem);margin:10px 0}.booking-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(255px,.75fr);gap:30px;align-items:start;padding-bottom:65px}.booking-side{position:sticky;top:30px;border:1px solid #353136;border-radius:18px;overflow:hidden;background:#111}.booking-side img{width:100%;height:360px;object-fit:cover}.booking-side p{padding:18px}.panel{background:#121214;border:1px solid #353136;border-radius:17px;padding:25px}.stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:25px}.step{text-align:center;color:#999;font-size:.78rem}.step span{display:grid;place-items:center;border:1px solid #555154;border-radius:50%;width:37px;height:37px;margin:auto auto 9px}.step.active{color:white}.step.active span,.step.done span{background:#f4eeeb;color:#121212;border-color:#f4eeeb}.step h3{font-size:.79rem;font-weight:500;margin:0}.step-panel{display:none}.step-panel.current{display:block}.step-panel h2{font-size:1.45rem;margin:0 0 18px}.choice{width:100%;display:flex;align-items:center;text-align:left;background:#18181a;color:white;border:1px solid #363337;border-radius:12px;padding:10px;margin:0 0 9px;gap:15px}.choice img{width:69px;height:64px;object-fit:cover;border-radius:9px}.choice p{margin:0;flex:1}.choice p small{display:block;color:#c9c2c0;margin-top:2px}.choice:after{content:"";width:20px;height:20px;border:2px solid #7b7577;border-radius:50%}.choice.selected{border-color:#e9d4c2;background:#242122}.choice.selected:after{border:6px solid #e9d4c2;background:#141414}.day-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:10px 0 22px}.day{background:#1d1c1e;border:1px solid #383539;color:#e1ddda;padding:9px 3px;border-radius:10px;font-size:.88rem;text-align:center}.day strong,.day span{display:block}.day.selected,.slot.selected{background:#f6f2ef;color:#0c0c0e;border-color:#fff}.slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:15px 0 22px}.slot{background:#1d1c1e;border:1px solid #484449;color:#eee;border-radius:9px;padding:12px 3px;text-align:center}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:27px}.wizard-actions .btn:last-child{flex:1}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field label{font-size:.91rem;color:#dedada}.field input,.field select,.field textarea,.input{border:1px solid #514b50;background:#1a191b;color:#fafafa;border-radius:10px;min-height:48px;padding:12px 13px;width:100%;outline:none}.field textarea{min-height:105px;resize:vertical}.field input:focus,.field select:focus{border-color:#cbb9ac}.privacy-line{font-size:.84rem;color:#ada6a5}.summary{border:1px solid #484349;background:#1a191b;border-radius:14px;padding:16px;line-height:1.9}.summary strong{color:white}.success-mark{font-size:3rem;text-align:center}.toast{position:fixed;z-index:100;right:16px;bottom:18px;max-width:min(400px,calc(100vw - 32px));padding:14px 20px;border:1px solid #ccc;background:#222;color:white;border-radius:12px;box-shadow:0 16px 45px #0008;opacity:0;transform:translateY(15px);pointer-events:none;transition:.2s}.toast.visible{opacity:1;transform:none}.toast.error{border-color:#ee9b94}.toast.success{border-color:#c7e4c4}.empty{background:#181719;border:1px dashed #565053;padding:20px;border-radius:10px;color:#c6bbbb}.badge-soft{background:#2d292b;border-radius:7px;padding:5px 8px;color:#d8c6ba;font-size:.83rem}.hide{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:820px){.head-inner{min-height:74px}.menu-toggle{display:block}.menu{display:none;position:absolute;left:0;right:0;top:74px;background:#101011;border:1px solid #333;flex-direction:column;align-items:stretch;padding:17px 22px;gap:0}.menu.open{display:flex}.menu a{padding:13px 4px}.menu .btn{margin-top:10px}.hero{min-height:575px}.hero-photo{width:100%;background-position:60% center}.hero::after{background:linear-gradient(90deg,#070707cf,#0909097a 65%,#09090940),linear-gradient(0deg,#080808d8,transparent 80%)}.hero-content{padding:80px 0 40px}.booking-layout{grid-template-columns:1fr}.booking-side{display:none}.split{grid-template-columns:1fr}.split>img{height:320px}}@media(max-width:590px){.wrap{width:min(calc(100% - 30px),var(--max))}.logo{font-size:23px}.logo span{font-size:8px}.hero{min-height:620px;align-items:end}.hero-photo{background-position:62% 15%}.hero::after{background:linear-gradient(0deg,#080808 4%,#080808cb 45%,#08080814 90%)}.hero-content{padding:245px 0 37px;width:100%}.hero h1{font-size:clamp(3.55rem,17vw,5.4rem)}.hero h1 span{font-size:clamp(1.35rem,8vw,2rem)}.hero-lead{margin:17px 0}.hero .btn{width:100%}.icon-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.feature{min-height:116px;padding:14px 8px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.service-card img{height:145px}.service-content{padding:11px}.service-card h3{font-size:.9rem}.service-price{font-size:.93rem}.service-price span{display:block;font-size:.75rem}.section{padding:35px 0 52px}.cta-band{flex-direction:column;text-align:center;padding:25px 18px}.cta-band .btn{width:100%}.footer-inner{flex-direction:column;align-items:start}.page-head{padding:35px 0 15px}.panel{padding:16px}.step h3{font-size:.65rem}.step span{width:31px;height:31px}.day-strip{gap:4px}.day{font-size:.75rem;padding:9px 2px}.slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.btn{padding:12px 17px}}@media(max-width:360px){.hero h1{font-size:3.35rem}.hero h1 span{font-size:1.45rem}.service-grid{grid-template-columns:1fr}.service-card{display:grid;grid-template-columns:110px 1fr}.service-card img{height:100%;min-height:105px}.day{font-size:.66rem}}
