@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,600;1,600&family=DM+Sans:wght@400;500;600;700&display=swap');:root{--ink:#171014;--pink:#ef2f73;--deep:#b91350;--gold:#e8aa81;--cream:#fff4f8;--muted:#78616b;--line:rgba(68,27,44,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fffaf8;color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit}.nav{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px clamp(18px,5vw,70px);background:var(--ink);color:#fff}.logo{display:flex;align-items:center;gap:10px;text-decoration:none}.logo img{width:48px;height:48px;border-radius:50%;object-fit:cover}.logo span{font:italic 600 1.7rem 'Cormorant Garamond',serif;color:#ff82a9}.nav nav{display:flex;align-items:center;gap:24px}.nav nav a{font-size:.72rem;text-decoration:none}.pill,.primary{display:inline-flex;padding:13px 18px;border-radius:10px;background:linear-gradient(135deg,var(--pink),var(--deep));color:#fff;font-weight:700;text-decoration:none;box-shadow:0 13px 30px rgba(201,22,83,.25);transition:.3s}.pill:hover,.primary:hover{transform:translateY(-3px);box-shadow:0 20px 40px rgba(201,22,83,.35)}.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:1.1fr .8fr;align-items:center;gap:70px;padding:80px clamp(20px,7vw,105px);background:radial-gradient(circle at 75% 25%,#522134,transparent 28%),var(--ink);color:#fff}.hero small,.section>small,.contact small{color:#ffd9bd;letter-spacing:.2em}.hero h1,.section h2,.contact h2{margin:12px 0;font:600 clamp(4rem,7vw,7rem)/.83 'Cormorant Garamond',serif}.hero em,.section h2 em,.contact em{color:#ff82a9}.hero>div>p{max-width:600px;color:#d7bdc7;line-height:1.7}.actions{display:flex;gap:10px}.actions>a:not(.primary){padding:13px 18px;border:1px solid #ffffff30;border-radius:10px;text-decoration:none}.hero figure{position:relative;margin:0;padding:10px;border:1px solid #ffd9bd;border-radius:30px}.hero figure>img{width:100%;aspect-ratio:4/5;display:block;border-radius:21px;object-fit:cover}.hero figure i{position:absolute;right:-30px;bottom:-30px;width:115px;height:115px;padding:5px;border:1px solid var(--gold);border-radius:50%;background:var(--ink)}.hero figure i img{width:100%;height:100%;border-radius:50%;object-fit:cover}.ticker{overflow:hidden;padding:13px;background:var(--pink);color:#fff;font:600 1.2rem 'Cormorant Garamond',serif;white-space:nowrap}.ticker div{width:max-content;animation:move 20s linear infinite}.section{padding:100px clamp(20px,7vw,105px)}.section h2{font-size:clamp(3.4rem,6vw,6rem)}.intro{color:var(--muted)}.service-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.service-list article{min-height:225px;display:flex;flex-direction:column;padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 9px 28px #5f193107;transition:.35s}.service-list article:hover{transform:translateY(-7px);box-shadow:0 24px 50px #5f19311b}.service-list article>b{color:#bd9da9;font-size:.6rem}.service-list h3{font:600 1.55rem 'Cormorant Garamond',serif}.service-list p{color:var(--muted);font-size:.78rem}.service-list footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}.service-list footer a{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--cream);color:var(--deep);text-decoration:none}.gallery{background:var(--ink);color:#fff}.gallery>div{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:13px}.gallery>div img,.gallery>div article{width:100%;height:380px;border-radius:18px;object-fit:cover}.gallery>div article{display:flex;flex-direction:column;justify-content:end;padding:25px;border:1px dashed #ffd9bd55}.gallery>div article b{font-size:3rem;color:var(--pink)}.profile{display:grid;grid-template-columns:.9fr 1fr;gap:80px;align-items:center;background:var(--cream)}.profile>img{width:100%;max-height:720px;border-radius:24px;object-fit:cover}.profile blockquote{padding:20px 0;border-block:1px solid #d8aabd;font:italic 600 1.35rem 'Cormorant Garamond',serif}.contact{display:grid;grid-template-columns:1fr .6fr;align-items:center;gap:70px;background:var(--pink);color:#fff}.contact>img{width:min(100%,420px);border-radius:50%;box-shadow:0 30px 80px #71103366}.site-footer{display:flex;align-items:center;gap:18px;padding:35px clamp(20px,7vw,105px);background:#0e080b;color:#806873}.site-footer img{width:58px;height:58px;border-radius:50%}.booking-body,.admin-body{min-height:100vh;background:radial-gradient(circle at 15% 15%,#4b1c31,transparent 28%),var(--ink);color:#fff}.booking{display:grid;grid-template-columns:.7fr 1.3fr;width:min(95%,1200px);margin:45px auto}.booking>aside{padding:50px;border-radius:25px 0 0 25px;background:linear-gradient(145deg,var(--pink),var(--deep))}.booking>aside h1{font:600 4.5rem/.85 'Cormorant Garamond',serif}.booking>aside p{line-height:1.7}.progress{display:flex;align-items:center;margin-top:35px}.progress b{display:grid;place-items:center;width:31px;height:31px;border:1px solid #fff8;border-radius:50%}.progress b.on{background:#ffd9bd;color:var(--ink)}.progress i{flex:1;height:1px;background:#fff5}.booking>section{min-width:0;padding:50px;border-radius:0 25px 25px 0;background:#fffaf8;color:var(--ink)}.step{display:none;border:0;padding:0}.step.on{display:block}.step legend{display:grid;gap:6px;width:100%;margin-bottom:25px;color:var(--deep);font-size:.65rem}.step legend strong{color:var(--ink);font:600 2.8rem 'Cormorant Garamond',serif}.book-services{display:grid;grid-template-columns:1fr 1fr;gap:9px}.book-services button{display:grid;grid-template-columns:35px 1fr;gap:9px;min-height:105px;padding:15px;border:1px solid var(--line);border-radius:13px;background:#fff;text-align:left;cursor:pointer}.book-services button.selected{border-color:var(--pink);background:var(--cream)}.book-services strong,.book-services small,.book-services em{display:block}.book-services strong{font:600 1.15rem 'Cormorant Garamond',serif}.book-services small{color:var(--muted)}.book-services em{margin-top:6px;color:var(--deep);font-style:normal}.step label{display:grid;gap:7px;margin:15px 0;color:var(--muted);font-size:.75rem}.step input,.step textarea{min-height:50px;padding:12px;border:1px solid #dfc7d1;border-radius:10px;font:inherit}.step textarea{min-height:90px}.consent{display:flex!important;align-items:flex-start}.consent input{min-height:auto}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.slots button{padding:11px;border:1px solid #e2b8c8;border-radius:9px;background:#fff;color:var(--deep)}.slots button.selected{background:var(--pink);color:#fff}.step>button,.step footer button,.login-card button,.date-filter button{padding:13px 17px;border:0;border-radius:10px;background:var(--pink);color:#fff;font-weight:700}.step>button{float:right;margin-top:22px}.step footer{display:flex;justify-content:space-between;margin-top:25px;padding-top:18px;border-top:1px solid var(--line)}.step button:disabled{opacity:.4}.step footer button:first-child{background:transparent;color:var(--muted)}#summary p{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}#summary span{color:var(--muted)}.notice{padding:12px;border-left:3px solid var(--gold);background:#fff3ed;color:var(--muted)}.success{text-align:center}.success>b{display:grid;place-items:center;width:62px;height:62px;margin:auto;border-radius:50%;background:var(--pink);font-size:1.5rem}.success h2{font:600 3rem 'Cormorant Garamond',serif}.success a{color:var(--deep);font-weight:700}.login-card{width:min(90%,430px);margin:12vh auto;padding:35px;border:1px solid var(--gold);border-radius:20px;background:#28151e;text-align:center}.login-card img{width:100px;border-radius:50%}.login-card input{width:100%;padding:13px;border:0;border-radius:10px}.login-card button{width:100%;margin:12px 0}.login-card>a{color:#ffd9bd}.agenda{width:min(94%,1050px);margin:auto;padding:45px 0}.agenda header{display:flex;justify-content:space-between;align-items:center}.agenda h1{font:600 4rem 'Cormorant Garamond',serif}.date-filter{display:flex;gap:8px}.date-filter input{padding:12px}.appointments{display:grid;gap:9px;margin-top:25px}.appointments article{display:grid;grid-template-columns:140px 1fr auto;gap:20px;padding:18px;border:1px solid #503040;border-radius:12px;background:#24151c}.appointments article strong,.appointments article span,.appointments article small{display:block}.appointments article strong{color:#ff83aa}.appointments article span{margin:5px 0}.empty{color:#a98b97}@keyframes move{to{transform:translateX(-50%)}}@media(max-width:900px){.nav nav>a:not(.pill){display:none}.hero,.profile,.contact,.booking{grid-template-columns:1fr}.service-list{grid-template-columns:1fr 1fr}.gallery>div{grid-template-columns:1fr 1fr}.booking>aside{border-radius:25px 25px 0 0}.booking>section{border-radius:0 0 25px 25px}}@media(max-width:560px){.hero,.section{padding-inline:16px}.hero h1{font-size:4.2rem}.hero figure{order:-1}.actions{flex-direction:column}.service-list,.gallery>div,.book-services{grid-template-columns:1fr}.gallery>div img,.gallery>div article{height:330px}.profile{gap:35px}.booking{width:calc(100% - 14px);margin-top:15px}.booking>aside,.booking>section{padding:27px 20px}.booking>aside h1{font-size:3.6rem}.slots{grid-template-columns:repeat(3,1fr)}.step legend strong{font-size:2.3rem}.appointments article{grid-template-columns:1fr}}
