*{box-sizing:border-box;margin:0;padding:0}:root{--black:#121212;--black-soft:#211c1d;--black-elevated:#2b2425;--rose:#b76e79;--rose-light:#e3b8bf;--rose-pale:#f3dde1;--rose-deep:#8f4a56;--blush:#e8b4bc;--blush-deep:#b76e79;--cream:#faf6f4;--white:#fff;--ink:#241f20;--muted:#847777;--border:#ebe1e0;--shadow-sm:0 2px 10px #1212120f;--shadow-md:0 14px 34px #1212121f;--shadow-lg:0 24px 60px #12121238}body{background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,sans-serif;line-height:1.6}h1,h2,h3,h4{color:var(--black);letter-spacing:-.01em;font-family:Playfair Display,Georgia,serif;font-weight:600}a{color:inherit;text-decoration:none}.container{max-width:1120px;margin:0 auto;padding:0 20px}.btn{cursor:pointer;letter-spacing:.02em;border:1px solid #0000;border-radius:3px;padding:15px 30px;font-size:.95rem;font-weight:600;transition:all .25s cubic-bezier(.2,.8,.2,1);display:inline-block}.btn-primary{background:var(--black);color:var(--white);box-shadow:var(--shadow-sm)}.btn-primary:hover{box-shadow:var(--shadow-md);background:#000;transform:translateY(-2px)}.btn-gold,.btn-rose{background:linear-gradient(135deg, var(--rose-light), var(--rose));color:var(--black);box-shadow:0 10px 24px #b76e7959}.btn-gold:hover,.btn-rose:hover{transform:translateY(-2px);box-shadow:0 14px 30px #b76e797a}.btn-outline{border-color:var(--black);color:var(--black);background:0 0}.btn-outline:hover{background:var(--black);color:var(--white)}.btn-blush{background:var(--rose);color:var(--white)}.btn-blush:hover{background:var(--rose-deep)}.btn-block{text-align:center;width:100%}.btn[disabled]{opacity:.5;cursor:not-allowed}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#121212eb;border-bottom:1px solid #e3b8bf2e;position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;max-width:1120px;margin:0 auto;padding:10px 20px;display:flex}.logo{align-items:center;display:flex}.logo-img{width:auto;height:52px;display:block}.nav-links{color:#ece6e5;align-items:center;gap:22px;font-size:.92rem;font-weight:500;display:flex}.nav-links a{color:#ece6e5}.nav-links a:hover{color:var(--rose-light)}.nav-links .btn-primary{background:var(--white);color:var(--black)}.nav-links .btn-primary:hover{background:var(--rose-light)}.hero{background:radial-gradient(circle at 85% 18%, #b76e7947, transparent 45%), radial-gradient(circle at 10% 90%, #b76e7924, transparent 50%), linear-gradient(160deg, #000 0%, var(--black) 45%, var(--black-elevated) 100%);color:var(--white);text-align:center;padding:110px 20px 120px;position:relative;overflow:hidden;box-shadow:inset 0 -1px #ffffff0a}.hero:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0}.hero:after{content:"";background:radial-gradient(circle,#e3b8bf59,#0000 70%);border-radius:50%;width:320px;height:320px;position:absolute;bottom:-100px;right:-60px}.hero-eyebrow{color:var(--rose-light);letter-spacing:.2em;text-transform:uppercase;z-index:1;background:#e3b8bf0f;border:1px solid #e3b8bf59;border-radius:30px;align-items:center;gap:8px;margin-bottom:22px;padding:7px 16px;font-size:.76rem;font-weight:700;display:inline-flex;position:relative}.hero h1{color:var(--white);z-index:1;max-width:800px;margin:0 auto 22px;font-size:clamp(2.3rem,5.2vw,3.75rem);font-weight:700;line-height:1.12;position:relative}.hero h1 .accent{background:linear-gradient(120deg, var(--rose-light), var(--rose));color:#0000;-webkit-background-clip:text;background-clip:text}.hero p.lead{color:#d9d2d0;z-index:1;max-width:580px;margin:0 auto 38px;font-size:1.12rem;position:relative}.hero-ctas{z-index:1;flex-wrap:wrap;justify-content:center;gap:16px;display:flex;position:relative}.hero-trust{color:#cfc6c4;letter-spacing:.04em;z-index:1;flex-wrap:wrap;justify-content:center;gap:28px;margin-top:44px;font-size:.82rem;display:flex;position:relative}.hero-trust strong{color:var(--rose-light);font-family:Playfair Display,serif;font-size:1.1rem;display:block}.section{padding:80px 20px}.section-head{text-align:center;max-width:640px;margin:0 auto 48px}.section-head .eyebrow{color:var(--rose-deep);text-transform:uppercase;letter-spacing:.16em;margin-bottom:12px;font-size:.78rem;font-weight:700}.section-head h2{font-size:clamp(1.7rem,3.4vw,2.3rem)}.steps{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px;display:grid}.step-card{background:var(--white);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:6px;padding:32px 26px;transition:box-shadow .25s,transform .25s}.step-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.step-num{background:var(--black);width:38px;height:38px;color:var(--rose-light);border-radius:50%;justify-content:center;align-items:center;margin-bottom:18px;font-family:Playfair Display,serif;font-weight:700;display:flex;box-shadow:0 6px 16px #12121240}.service-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:26px;display:grid}.service-card{background:var(--white);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:6px;padding:32px;transition:box-shadow .25s,transform .25s,border-color .25s}.service-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.service-card.selected{border-color:var(--rose);box-shadow:0 0 0 2px var(--rose), var(--shadow-md)}.service-price{color:var(--rose-deep);margin-top:12px;font-weight:700}.footer{background:var(--black);color:#aaa5a0;text-align:center;padding:44px 20px;font-size:.85rem}.card{background:var(--white);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:6px;padding:34px}.form-group{margin-bottom:18px}label{color:var(--black-soft);margin-bottom:6px;font-size:.85rem;font-weight:600;display:block}input,select{border:1px solid var(--border);background:var(--white);border-radius:3px;width:100%;padding:12px 14px;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}input:focus,select:focus{border-color:var(--rose);outline:none;box-shadow:0 0 0 3px #b76e7924}.auth-wrap{background:linear-gradient(180deg, var(--cream), #f3e9e8);justify-content:center;align-items:center;min-height:calc(100vh - 70px);padding:40px 20px;display:flex}.auth-card{width:100%;max-width:420px;box-shadow:var(--shadow-lg)}.booking-wrap{max-width:680px;margin:0 auto;padding:48px 20px}.progress{gap:8px;margin-bottom:36px;display:flex}.progress div{background:var(--border);border-radius:2px;flex:1;height:4px}.progress div.done{background:linear-gradient(90deg, var(--rose), var(--rose-deep))}.slot-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px;margin:16px 0;display:grid}.slot{text-align:center;border:1px solid var(--border);cursor:pointer;background:var(--white);border-radius:3px;padding:12px 8px;font-size:.9rem;font-weight:600;transition:all .2s}.slot:hover{border-color:var(--rose)}.slot.active{background:var(--black);color:var(--rose-light);border-color:var(--black);box-shadow:var(--shadow-sm)}.quote-box{background:var(--cream);border:1px dashed var(--rose);border-radius:6px;margin:22px 0;padding:22px}.quote-row{justify-content:space-between;padding:6px 0;font-size:.92rem;display:flex}.quote-total{border-top:1px solid var(--border);margin-top:8px;padding-top:12px;font-size:1.15rem;font-weight:700}.error-text{color:#b33a4e;margin-top:6px;font-size:.85rem}.row-between{justify-content:space-between;align-items:center;gap:16px;margin-top:28px;display:flex}.dash-wrap{max-width:1000px;margin:0 auto;padding:48px 20px}.dash-head{margin-bottom:32px}.appt-card{background:var(--white);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:6px;margin-bottom:20px;padding:26px;transition:box-shadow .25s}.appt-card:hover{box-shadow:var(--shadow-md)}.appt-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.badge{text-transform:uppercase;letter-spacing:.04em;border-radius:20px;padding:4px 13px;font-size:.75rem;font-weight:700}.badge.confirmed{color:#2f7d44;background:#e4f3e6}.badge.cancelled{color:#a33b47;background:#f6e4e6}.badge.paid{background:var(--rose-pale);color:var(--rose-deep)}.checklist{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.checklist ul{margin-top:10px;list-style:none}.checklist li{gap:10px;padding:7px 0;font-size:.92rem;display:flex}.checklist li:before{content:"✓";color:var(--rose-deep);font-weight:700}.empty-state{text-align:center;color:var(--muted);padding:64px 20px}.admin-table{border-collapse:collapse;background:var(--white);border:1px solid var(--border);width:100%;box-shadow:var(--shadow-sm);border-radius:6px;overflow:hidden}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border);padding:13px 14px;font-size:.88rem}.admin-table th{background:var(--black);color:var(--rose-light);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}.notice{background:var(--rose-pale);border:1px solid var(--rose);color:var(--rose-deep);border-radius:6px;margin-bottom:24px;padding:14px 18px;font-size:.88rem}@media (width<=640px){.logo-img{height:38px}.nav-links{gap:14px;font-size:.82rem}.hero-ctas{flex-direction:column;align-items:center}.hero-trust{gap:18px}}
