:root{font-family:"DM Sans",sans-serif;color:#39233f;background:#fcf7f9}*{box-sizing:border-box}body{margin:0}.app{display:flex;min-height:100vh}.sidebar{width:260px;background:linear-gradient(160deg,#492054,#2e1739);color:#fff;padding:34px 22px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{font:600 34px "Playfair Display",serif;display:flex;align-items:center;gap:12px}.brand-icon{font:32px serif;color:#e6ba83}.tag{font-size:9px;letter-spacing:2px;color:#e9c6da;margin:14px 0 42px}nav{display:grid;gap:10px}nav button{border:0;text-align:left;background:transparent;color:#e8d5e7;padding:14px 16px;border-radius:13px;font:500 14px "DM Sans";cursor:pointer}nav button:hover,nav button.active{background:#794d83;color:#fff}.side-bottom{margin-top:auto}.demo-pill{background:#72467b;padding:11px;border-radius:12px;font-size:12px;text-align:center}.side-bottom small{display:block;color:#c7acc8;margin-top:12px;line-height:1.5}.main{flex:1;max-width:1450px;margin:auto;padding:40px 5vw;width:100%}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:36px}.eyebrow{letter-spacing:2px;color:#a87e9d;font-size:11px;font-weight:700}h1,h2,h3{font-family:"Playfair Display",serif}h1{font-size:38px;margin:9px 0}.top p{color:#9a8999;margin:0}.gold{color:#c99b67}.avatar{border-radius:50%;width:50px;height:50px;display:grid;place-items:center;background:#efd5df;color:#682d64;font-weight:700}.hero{background:linear-gradient(110deg,#5a2d6f,#9b5a91);color:#fff;border-radius:24px;padding:32px 36px;display:flex;justify-content:space-between;align-items:center;gap:15px;overflow:hidden}.hero h2{font-size:27px;margin:8px 0}.hero p{opacity:.83;margin:0}.hero-art{font-size:75px;color:#e4bb8d}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.card,.panel{background:#fff;border:1px solid #f1e5ed;border-radius:19px;padding:24px;box-shadow:0 7px 24px #55265708}.card .num{font:600 30px "Playfair Display";color:#5a2d6f;margin:12px 0 4px}.muted{color:#9b8799;font-size:13px}.card .symbol{font-size:23px;color:#b56d98}.columns{display:grid;grid-template-columns:1.5fr 1fr;gap:22px}.panel h2{font-size:23px;margin:0 0 18px}.appointment{display:flex;gap:15px;align-items:center;border-bottom:1px solid #f3e9ef;padding:14px 0}.appointment:last-child{border:0}.time{background:#f8e7ee;color:#723d71;padding:12px;border-radius:12px;font-weight:700;min-width:66px;text-align:center}.appointment strong{display:block}.appointment small{color:#9a8596}.status{margin-left:auto;color:#497a61;font-size:12px}.btn{border:0;background:#793e7e;color:#fff;padding:12px 18px;border-radius:11px;cursor:pointer;font:600 13px "DM Sans"}.btn:hover{background:#592a64}.btn.secondary{background:#f5e8f0;color:#67376e}.actions{display:flex;flex-wrap:wrap;gap:10px}.service{display:flex;align-items:center;justify-content:space-between;padding:17px 0;border-bottom:1px solid #f4eaf0}.service:last-child{border:0}.service strong{display:block}.service span{font-size:13px;color:#927e91}.service b{color:#66306d}.notice{padding:14px 18px;background:#fff2e8;color:#795c45;border-radius:13px;font-size:13px;margin-bottom:22px}.booking{max-width:570px;margin:0 auto}.booking .panel{text-align:center}.booking h2{font-size:30px}.choice{display:block;width:100%;text-align:left;border:1px solid #ead9e6;background:white;padding:15px;margin:9px 0;border-radius:12px;cursor:pointer}.choice.selected{border:2px solid #8a4d88;background:#faf0f6}.slot{padding:10px 14px;border:1px solid #ead6e3;background:white;border-radius:10px;margin:5px;cursor:pointer}.slot.selected{background:#793e7e;color:white}.formline{display:grid;gap:7px;text-align:left;margin:15px 0}.formline input{padding:13px;border:1px solid #e9d9e6;border-radius:10px;font:inherit}footer{margin-top:45px;color:#b19eae;font-size:11px;text-align:center}@media(max-width:850px){.sidebar{width:76px;padding:25px 10px}.brand{font-size:0;justify-content:center}.brand-icon{font-size:32px}.tag,.side-bottom{display:none}nav button{font-size:0;padding:15px 8px;text-align:center}nav button::first-letter{font-size:22px}.main{padding:24px}.columns{grid-template-columns:1fr}.hero-art{display:none}}@media(max-width:540px){.sidebar{position:fixed;bottom:0;top:auto;width:100%;height:65px;z-index:10;padding:8px 4px}.brand,.tag,.side-bottom{display:none}nav{display:flex;justify-content:space-around;gap:0}nav button{font-size:0;padding:12px}.main{padding:22px 16px 85px}.cards{grid-template-columns:1fr}.top h1{font-size:29px}.hero{padding:24px}.hero h2{font-size:23px}.card{padding:18px}}
.service-form{display:grid;gap:12px;margin:20px 0}.service-form label{display:grid;gap:6px;font-weight:600}.service-form input{padding:12px;border:1px solid #d8c7d7;border-radius:10px;font:inherit;max-width:420px}.service-form .actions{display:flex;gap:10px;flex-wrap:wrap}.service .actions{display:flex;gap:8px;flex-wrap:wrap}
