*,*:before,*:after{margin:0;padding:0;box-sizing:inherit}html{font-size:62.5%;box-sizing:border-box}@media(max-width:1024px){html{font-size:56.25%}}@media(max-width:768px){html{font-size:50%}}body{font-family:Inter,sans-serif;font-weight:400;line-height:1.6;color:#333;background-color:#f5f5f5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,serif;font-weight:700;color:#1a1a1a;margin-bottom:1rem}p{font-size:1.6rem;margin-bottom:1rem}a{text-decoration:none;color:inherit;transition:all .3s ease-in-out}ul{list-style:none}img{max-width:100%;height:auto;display:block}input,textarea,select{font-family:inherit;font-size:1.6rem}.container{max-width:1440px;margin:0 auto;padding:0 2rem}.section{padding:8rem 0}.header{background-color:#1a1a1a;color:#fff;padding:1rem 2rem;box-shadow:0 4px 15px #0000004d;position:sticky;top:0;z-index:1000}.header .header-content{display:flex;justify-content:space-between;align-items:center;max-width:1440px;margin:0 auto}@media(max-width:768px){.header .header-content{flex-direction:column;gap:1rem}}.header .logo{font-family:Playfair Display,serif;font-size:2.8rem;font-weight:700;letter-spacing:2px;color:#d4af37;text-transform:uppercase;cursor:pointer}.header .logo span{color:#fff}.header .nav ul{display:flex;gap:2rem}@media(max-width:768px){.header .nav ul{flex-wrap:wrap;justify-content:center}}.header .nav li{font-size:1.6rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease-in-out}.header .nav li:hover{color:#d4af37}.header .btn-logout{padding:.8rem 2rem;background-color:transparent;color:#d4af37;border:none;border-radius:4px;font-weight:600;text-transform:uppercase;cursor:pointer;transition:all .3s ease-in-out}.header .btn-logout:hover{background-color:#c5a028;transform:translateY(-2px);box-shadow:0 4px 15px #0003}.header .btn-logout:disabled{background-color:#333;cursor:not-allowed;transform:none;box-shadow:none}.header .btn-logout{border:1px solid #D4AF37;padding:.6rem 1.5rem;font-size:1.2rem}.header .btn-logout:hover{background-color:#d4af37;color:#1a1a1a}.hero{height:90vh;background-image:linear-gradient(#000000b3,#000000b3),url(https://images.unsplash.com/photo-1585747860715-2ba37e788b70?ixlib=rb-1.2.1&auto=format&fit=crop&w=1950&q=80);background-size:cover;background-position:center;background-attachment:fixed;display:flex;justify-content:center;align-items:center;color:#fff;text-align:center;padding:0 2rem}@media(max-width:768px){.hero{height:70vh}}.hero-content{max-width:80rem}.hero-title{font-size:6rem;font-family:Playfair Display,serif;text-transform:uppercase;letter-spacing:.5rem;color:#d4af37;margin-bottom:2rem}@media(max-width:768px){.hero-title{font-size:4rem}}.hero-title span{color:#fff;display:block;font-size:2.5rem;letter-spacing:.2rem;margin-top:.5rem}.hero-text{font-size:1.8rem;color:#f5f5f5;margin-bottom:4rem;font-weight:300}.hero .btn-cta{padding:.8rem 2rem;background-color:#d4af37;color:#1a1a1a;border:none;border-radius:4px;font-weight:600;text-transform:uppercase;cursor:pointer;transition:all .3s ease-in-out}.hero .btn-cta:hover{background-color:#c5a028;transform:translateY(-2px);box-shadow:0 4px 15px #0003}.hero .btn-cta:disabled{background-color:#333;cursor:not-allowed;transform:none;box-shadow:none}.hero .btn-cta{padding:1.5rem 4rem;font-size:1.8rem;letter-spacing:.2rem}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:4rem}.services-grid .service-card{background-color:#fff;padding:4rem;border-radius:8px;box-shadow:0 4px 20px #0000001a;text-align:center;transition:all .3s ease-in-out}.services-grid .service-card:hover{transform:translateY(-1rem);box-shadow:0 1rem 3rem #0003}.services-grid .service-card h3{font-size:2.2rem;color:#1a1a1a;margin-bottom:1rem;font-family:Playfair Display,serif}.services-grid .service-card p{font-size:1.6rem;color:#333;margin-bottom:2rem}.services-grid .service-card .price{font-size:2.4rem;font-weight:700;color:#d4af37}.auth-container{min-height:100vh;display:flex;justify-content:center;align-items:center;background-image:linear-gradient(#000c,#000c),url(https://images.unsplash.com/photo-1503951914875-452162b0f3f1?ixlib=rb-1.2.1&auto=format&fit=crop&w=1950&q=80);background-size:cover;background-position:center;padding:2rem}.auth-container .auth-card{background-color:#fff;padding:4rem;border-radius:12px;box-shadow:0 1rem 4rem #0006;width:100%;max-width:45rem;text-align:center;transition:all .3s ease-in-out}.auth-container .auth-card h1{font-size:3rem;color:#1a1a1a;margin-bottom:.5rem;font-family:Playfair Display,serif;text-transform:uppercase;letter-spacing:.2rem}.auth-container .auth-card p{font-size:1.6rem;color:#333;margin-bottom:4rem}.auth-container .auth-card .auth-form{display:flex;flex-direction:column;gap:2rem}.auth-container .auth-card .auth-form .form-group{text-align:left;display:flex;flex-direction:column;gap:.5rem}.auth-container .auth-card .auth-form .form-group label{font-size:1.4rem;font-weight:600;color:#1a1a1a;text-transform:uppercase;letter-spacing:.1rem}.auth-container .auth-card .auth-form .form-group input{padding:1.2rem 1.5rem;border:1px solid #ddd;border-radius:4px;font-size:1.6rem;transition:all .3s ease-in-out}.auth-container .auth-card .auth-form .form-group input:focus{outline:none;border-color:#d4af37;box-shadow:0 0 0 3px #d4af371a}.auth-container .auth-card .auth-form .form-group input::placeholder{color:#aaa}.auth-container .auth-card .auth-form .form-group .error-message{color:#e74c3c;font-size:1.2rem;margin-top:.4rem;font-weight:500}.auth-container .auth-card .auth-form .checkbox-group{display:flex;justify-content:center;align-items:center;gap:1rem;cursor:pointer;font-size:1.6rem;margin:1rem 0}.auth-container .auth-card .auth-form .checkbox-group input[type=checkbox]{width:1.8rem;height:1.8rem;cursor:pointer;accent-color:#D4AF37}.auth-container .auth-card .auth-form .btn-submit{padding:.8rem 2rem;background-color:#d4af37;color:#1a1a1a;border:none;border-radius:4px;font-weight:600;text-transform:uppercase;cursor:pointer;transition:all .3s ease-in-out}.auth-container .auth-card .auth-form .btn-submit:hover{background-color:#c5a028;transform:translateY(-2px);box-shadow:0 4px 15px #0003}.auth-container .auth-card .auth-form .btn-submit:disabled{background-color:#333;cursor:not-allowed;transform:none;box-shadow:none}.auth-container .auth-card .auth-form .btn-submit{padding:1.5rem;font-size:1.6rem;letter-spacing:.1rem;margin-top:1rem}.auth-container .auth-card .auth-footer{margin-top:4rem;font-size:1.4rem;color:#333}.auth-container .auth-card .auth-footer a{color:#d4af37;font-weight:700;transition:all .3s ease-in-out}.auth-container .auth-card .auth-footer a:hover{text-decoration:underline}.auth-container .auth-card .error-alert{background-color:#e74c3c1a;color:#e74c3c;padding:1.2rem;border-radius:4px;border-left:4px solid #E74C3C;margin-bottom:2rem;font-size:1.4rem;text-align:left}.dashboard{padding:4rem 0;min-height:80vh;background-color:#f5f5f5}.dashboard .dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4rem;border-bottom:2px solid #D4AF37;padding-bottom:1rem}.dashboard .dashboard-header h1{font-size:3.2rem;color:#1a1a1a;margin-bottom:0;font-family:Playfair Display,serif;text-transform:uppercase;letter-spacing:.1rem}.dashboard .dashboard-header .welcome-text{font-size:1.8rem;color:#333;font-weight:500}.dashboard .dashboard-header .welcome-text span{color:#d4af37;font-weight:700}.dashboard .dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:4rem;align-items:flex-start}@media(max-width:1024px){.dashboard .dashboard-grid{grid-template-columns:1fr}}.dashboard .card{background-color:#fff;padding:4rem;border-radius:8px;box-shadow:0 4px 15px #0000000d}.dashboard .card h2{font-size:2.4rem;color:#1a1a1a;margin-bottom:2rem;padding-bottom:.5rem;border-bottom:1px solid #eee;font-family:Playfair Display,serif;text-transform:uppercase;letter-spacing:.1rem}.dashboard .appointment-list{display:flex;flex-direction:column;gap:2rem}.dashboard .appointment-list .appointment-item{background-color:#fafafa;padding:2rem;border-radius:6px;border-left:4px solid #D4AF37;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease-in-out}@media(max-width:768px){.dashboard .appointment-list .appointment-item{flex-direction:column;align-items:flex-start;gap:1rem}}.dashboard .appointment-list .appointment-item:hover{background-color:#f0f0f0;transform:translate(5px)}.dashboard .appointment-list .appointment-item .appointment-info{flex:1}.dashboard .appointment-list .appointment-item .appointment-info .service-title{font-size:1.8rem;font-weight:700;color:#1a1a1a;margin-bottom:.4rem;display:block}.dashboard .appointment-list .appointment-item .appointment-info .appointment-date{font-size:1.4rem;color:#333;display:block;margin-bottom:.4rem}.dashboard .appointment-list .appointment-item .appointment-info .price-tag{font-size:1.6rem;color:#d4af37;font-weight:600}.dashboard .appointment-list .appointment-item .appointment-info .client-info{font-size:1.4rem;color:#333;margin-top:.5rem;font-style:italic}.dashboard .appointment-list .appointment-item .status-badge{padding:.6rem 1.2rem;border-radius:20px;font-size:1.2rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.dashboard .appointment-list .appointment-item .status-badge.pending{background-color:#fff3e0;color:#ff9800}.dashboard .appointment-list .appointment-item .status-badge.confirmed{background-color:#e8f5e9;color:#4caf50}.dashboard .appointment-list .appointment-item .status-badge.completed{background-color:#e3f2fd;color:#2196f3}.dashboard .appointment-list .appointment-item .status-badge.cancelled{background-color:#ffebee;color:#f44336}.dashboard .appointment-list .appointment-item .appointment-actions{display:flex;gap:1rem;margin-left:2rem}@media(max-width:768px){.dashboard .appointment-list .appointment-item .appointment-actions{margin-left:0;width:100%;justify-content:flex-end}}.dashboard .appointment-list .appointment-item .appointment-actions .btn-action{padding:.8rem 2rem;background-color:#d4af37;color:#1a1a1a;border:none;border-radius:4px;font-weight:600;text-transform:uppercase;cursor:pointer;transition:all .3s ease-in-out}.dashboard .appointment-list .appointment-item .appointment-actions .btn-action:hover{background-color:#c5a028;transform:translateY(-2px);box-shadow:0 4px 15px #0003}.dashboard .appointment-list .appointment-item .appointment-actions .btn-action:disabled{background-color:#333;cursor:not-allowed;transform:none;box-shadow:none}.dashboard .appointment-list .appointment-item .appointment-actions .btn-action{padding:.8rem 1.2rem;font-size:1.2rem;text-transform:none}.dashboard .appointment-list .appointment-item .appointment-actions .btn-action.btn-cancel{background-color:#e74c3c;color:#fff}.dashboard .appointment-list .appointment-item .appointment-actions .btn-action.btn-confirm{background-color:#2ecc71;color:#fff}.dashboard .appointment-list .appointment-item .appointment-actions .btn-action.btn-complete{background-color:#2196f3;color:#fff}.dashboard .booking-form{display:flex;flex-direction:column;gap:2rem}.dashboard .booking-form .form-group{display:flex;flex-direction:column;gap:.5rem}.dashboard .booking-form .form-group label{font-size:1.4rem;font-weight:600;color:#1a1a1a;text-transform:uppercase}.dashboard .booking-form .form-group select,.dashboard .booking-form .form-group input,.dashboard .booking-form .form-group textarea{padding:1rem 1.2rem;border:1px solid #ddd;border-radius:4px;font-size:1.6rem;background-color:#fff;transition:all .3s ease-in-out}.dashboard .booking-form .form-group select:focus,.dashboard .booking-form .form-group input:focus,.dashboard .booking-form .form-group textarea:focus{outline:none;border-color:#d4af37}.dashboard .booking-form .form-group textarea{resize:vertical;min-height:10rem}.dashboard .booking-form .form-group .error-message{color:#e74c3c;font-size:1.2rem}.dashboard .booking-form .btn-submit{padding:.8rem 2rem;background-color:#d4af37;color:#1a1a1a;border:none;border-radius:4px;font-weight:600;text-transform:uppercase;cursor:pointer;transition:all .3s ease-in-out}.dashboard .booking-form .btn-submit:hover{background-color:#c5a028;transform:translateY(-2px);box-shadow:0 4px 15px #0003}.dashboard .booking-form .btn-submit:disabled{background-color:#333;cursor:not-allowed;transform:none;box-shadow:none}.dashboard .booking-form .btn-submit{padding:1.5rem;font-size:1.6rem;font-weight:700;margin-top:1rem}
