:root{--font-family-base:Arial,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-family-heading:Arial,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-bold:700;--line-height-tight:1.25;--line-height-base:1.5;--color-primary:#f59e0b;--color-primary-shade:#d97706;--color-primary-tint:#fef3c7;--color-complementary:#0b62f5;--color-complementary-shade:#1d4ed8;--color-complementary-tint:#eff6ff;--color-surface-bg:#f8fafc;--color-surface-card:#fff;--color-border:#e2e8f0;--color-border-input:#cbd5e1;--color-text-main:#0f172a;--color-text-muted:#475569;--color-text-inverse:#fff;--color-success:#10b981;--color-success-bg:#ecfdf5;--color-warning:#f59e0b;--color-warning-bg:#fffbeb;--color-danger:#ef4444;--color-danger-bg:#fef2f2;--btn-bg-primary:var(--color-primary);--btn-bg-primary-hover:var(--color-primary-shade);--btn-text-primary:var(--color-text-main);--btn-bg-secondary:var(--color-complementary);--btn-bg-secondary-hover:var(--color-complementary-shade);--btn-text-secondary:var(--color-text-inverse);--btn-radius:var(--radius-md);--btn-padding-y:0.75rem;--btn-padding-x:1.5rem;--easing-standard:cubic-bezier(0.4,0,0.2,1);--transition-fast:150ms var(--easing-standard);--transition-normal:250ms var(--easing-standard);--transition-slow:400ms var(--easing-standard);--z-negative:-1;--z-normal:1;--z-dropdown:100;--z-sticky:500;--z-modal-backdrop:900;--z-modal:1000;--z-toast:1100;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2.5rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-pill:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}*,:after,:before{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;background-color:#f8fafc;background-color:var(--color-surface-bg);font-family:Arial,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-family-base);font-size:1rem;font-size:var(--font-size-md);line-height:1.5;line-height:var(--line-height-base);margin:0;padding:0}body,h1,h2,h3,h4,h5,h6{color:#0f172a;color:var(--color-text-main)}h1,h2,h3,h4,h5,h6{font-family:Arial,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-family-heading);margin-top:0}.btn-primary-custom,h1,h2,h3,h4,h5,h6{font-weight:700;font-weight:var(--font-weight-bold)}.btn-primary-custom{align-items:center;background-color:#f59e0b;background-color:var(--btn-bg-primary);border:1px solid #0000;border-radius:8px;border-radius:var(--btn-radius);color:#0f172a;color:var(--btn-text-primary);cursor:pointer;display:inline-flex;font-size:1rem;font-size:var(--font-size-md);justify-content:center;padding:.75rem 1.5rem;padding:var(--btn-padding-y) var(--btn-padding-x);transition:background-color .15s cubic-bezier(.4,0,.2,1),transform .15s cubic-bezier(.4,0,.2,1);transition:background-color var(--transition-fast),transform var(--transition-fast)}.btn-primary-custom:hover{background-color:#d97706;background-color:var(--btn-bg-primary-hover)}.btn-primary-custom:active{transform:translateY(1px)}.btn-secondary-custom{align-items:center;background-color:#0b62f5;background-color:var(--btn-bg-secondary);border:1px solid #0000;border-radius:8px;border-radius:var(--btn-radius);color:#fff;color:var(--btn-text-secondary);cursor:pointer;display:inline-flex;font-size:1rem;font-size:var(--font-size-md);font-weight:500;font-weight:var(--font-weight-medium);justify-content:center;padding:.75rem 1.5rem;padding:var(--btn-padding-y) var(--btn-padding-x);transition:background-color .15s cubic-bezier(.4,0,.2,1);transition:background-color var(--transition-fast)}.btn-secondary-custom:hover{background-color:#1d4ed8;background-color:var(--btn-bg-secondary-hover)}#logo{width:250px}.header-wrapper{background-color:var(--color-complementary);border-top-left-radius:6px;border-top-right-radius:6px;padding:1rem 0}.header-wrapper .header-btn-ghost{align-items:center;background:#0000;border:1px solid #fff6;border-radius:var(--radius-pill);color:var(--color-text-inverse);cursor:pointer;display:inline-flex;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);height:40px;justify-content:center;padding:0 1.5rem;text-decoration:none;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.header-wrapper .header-btn-ghost.active,.header-wrapper .header-btn-ghost:hover{background-color:#ffffff26;border-color:var(--color-text-inverse);color:var(--color-text-inverse);text-decoration:none}.header-wrapper .header-btn-signup{align-items:center;background-color:var(--color-primary);border:1px solid #0000;border-radius:var(--radius-pill);color:var(--color-text-main);cursor:pointer;display:inline-flex;font-size:var(--font-size-md);font-weight:var(--font-weight-bold);height:40px;justify-content:center;padding:0 1.5rem;text-decoration:none;transition:background-color var(--transition-fast),transform var(--transition-fast)}.header-wrapper .header-btn-signup.active,.header-wrapper .header-btn-signup:hover{background-color:var(--color-primary-shade);color:var(--color-text-main);text-decoration:none}.footer-wrapper{background-color:var(--color-complementary);border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md);color:var(--color-text-inverse);font-family:var(--font-family-base);font-size:var(--font-size-md);margin-top:var(--spacing-xs);padding:var(--spacing-md) 0}.footer-content{color:var(--color-text-inverse);font-weight:var(--font-weight-normal);line-height:var(--line-height-base);margin:0}.footer-wrapper a{color:var(--color-text-inverse);text-decoration:underline;transition:color var(--transition-fast)}.footer-wrapper a:hover{color:var(--color-primary-tint)}.footer-builder-wrapper{margin-top:.25rem}.footer-builder-text{color:var(--color-text-inverse);font-size:var(--font-size-sm)}.footer-builder-link{font-weight:var(--font-weight-medium);text-decoration:underline}.hero-section-wrapper{background-color:var(--color-complementary);background-image:linear-gradient(135deg,#ffffff14 0,var(--color-complementary-shade) 100%),url("data:image/svg+xml;charset=utf-8,%3Csvg width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 40 40 0H20L0 20m40 20V20L20 40' fill='%23fff' fill-opacity='.04' fill-rule='evenodd'/%3E%3C/svg%3E");border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top-left-radius:6px;border-top-right-radius:6px;height:300px;margin-bottom:var(--spacing-lg);position:relative;width:100%}@media (min-width:992px){.hero-section-wrapper{height:400px}}.hero-content{margin:0 auto;max-width:720px}.hero-heading{color:var(--color-text-inverse);font-size:1.75rem;font-weight:var(--font-weight-bold);line-height:1.25;margin-bottom:0}@media (min-width:992px){.hero-heading{font-size:2.5rem}}.hero-cta-btn{background-color:var(--btn-bg-primary);border:1px solid #0000;border-radius:var(--radius-md);color:var(--btn-text-primary);font-weight:var(--font-weight-bold);margin-top:2rem;padding:1rem 2rem;transition:background-color var(--transition-fast),transform var(--transition-fast)}.hero-cta-btn:hover{background-color:var(--btn-bg-primary-hover);color:var(--btn-text-primary)}.hero-cta-btn:active{transform:translateY(1px)}.services-section{margin-bottom:3rem}.services-section-heading{color:var(--color-text-main);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:2.5rem;text-align:center}.services-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr}@media (min-width:768px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.services-grid{grid-template-columns:repeat(3,1fr)}}.service-card{align-items:center;background-color:var(--color-surface-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;padding:2rem;text-align:center;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.service-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.service-icon-wrapper{display:flex;justify-content:center;margin-bottom:1rem;width:100%}.service-icon{stroke:var(--color-complementary);height:48px;width:48px}.service-title{color:var(--color-text-main);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin-bottom:0;margin-top:1rem}.service-description{flex-grow:1;line-height:var(--line-height-base);margin-bottom:1.5rem;margin-top:.5rem}.service-link{align-items:center;color:var(--color-complementary);display:inline-flex;font-weight:var(--font-weight-medium);margin-top:1rem;text-decoration:none;transition:color var(--transition-fast)}.service-link:hover{color:var(--color-complementary-shade);text-decoration:underline}.booking-cta-section{background-color:var(--color-primary);border-radius:var(--radius-lg);margin-bottom:1rem;margin-top:4rem;padding:3rem 1rem;width:100%}.booking-cta-container{margin:0 auto;max-width:720px}.booking-cta-card{background-color:var(--color-surface-card);border:none;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:3rem 2rem;text-align:center}.booking-cta-calendar-placeholder{align-items:center;background-color:var(--color-complementary-tint);border-radius:50%;display:inline-flex;height:56px;justify-content:center;margin:0 auto;width:56px}.booking-cta-icon{color:var(--color-complementary);height:28px;width:28px}.booking-cta-title{color:var(--color-text-main);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:0;margin-top:1rem}.booking-cta-text{color:var(--color-text-muted);font-size:var(--font-size-md);margin-bottom:0;margin-top:.5rem}.booking-cta-btn{align-items:center;background-color:var(--btn-bg-secondary);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;display:inline-flex;font-weight:var(--font-weight-medium);justify-content:center;margin-top:1.5rem;padding:1rem 2rem;transition:background-color var(--transition-fast)}.booking-cta-btn:hover{background-color:var(--btn-bg-secondary-hover)}.booking-cta-btn:disabled{cursor:not-allowed;opacity:.65}.booking-cta-modal-backdrop{align-items:center;background-color:#00000080;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1050}.booking-cta-modal-content{background-color:var(--color-surface-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:450px;padding:24px;width:90%}.booking-cta-modal-header{align-items:center;border-bottom:0;display:flex;justify-content:space-between;padding-bottom:0}.booking-cta-modal-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin-bottom:0}.booking-cta-modal-body{padding-bottom:1.5rem;padding-top:1.5rem}.booking-cta-modal-body p{color:var(--color-text-muted);margin-bottom:0}.booking-cta-modal-footer{border-top:0;display:flex;gap:.5rem}.booking-cta-modal-footer .btn{margin:0;width:100%}.why-choose-section{padding:3rem 0}.contact-us-container,.why-choose-container{height:100%;margin:0 auto;max-width:800px}.contact-us-card,.why-choose-card{background-color:var(--color-surface-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;height:100%;padding:2.5rem}.why-choose-heading{color:var(--color-text-main);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:1.5rem}.why-choose-list{display:flex;flex-direction:column;flex-grow:1;justify-content:space-between;list-style:none;margin:0;padding:0}.why-choose-item{align-items:center;color:var(--color-text-main);display:flex;font-size:var(--font-size-md);gap:.75rem}.why-choose-check-icon{color:var(--color-success);flex-shrink:0;height:20px;width:20px}.contact-us-list{display:flex;flex-direction:column;flex-grow:1;justify-content:space-between}.contact-us-row{align-items:flex-start;display:flex;gap:1rem}.contact-us-icon{color:var(--color-complementary);flex-shrink:0;margin-top:.15rem}.contact-us-content{display:flex;flex-direction:column}.contact-us-label{color:var(--color-text-muted);font-size:12px;font-weight:var(--font-weight-bold);letter-spacing:.05em;margin-bottom:.15rem;text-transform:uppercase}.contact-us-value{color:var(--color-text-main);font-size:var(--font-size-md);font-weight:700;text-decoration:none}.contact-us-value:hover{color:var(--color-complementary)}.testimonial-section{background-color:var(--color-surface-bg)}.testimonial-section-title{color:var(--color-text-main);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:.5rem}.testimonial-carousel-container{padding:1rem 0 3rem}.testimonial-card{align-items:center;background-color:var(--color-surface-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;min-height:260px;padding:2.5rem 2rem;text-align:center}.testimonial-card,.testimonial-stars{display:flex;justify-content:center}.bi-star-fill{color:var(--color-primary)}.testimonial-text{color:var(--color-text-main);font-size:var(--font-size-lg);font-style:italic;line-height:var(--line-height-base);margin:0 auto;max-width:650px}.testimonial-author-info{align-items:center;display:flex;flex-direction:column;gap:.25rem}.testimonial-author-name{color:var(--color-text-main);font-size:var(--font-size-md);font-weight:var(--font-weight-bold);margin:0}.carousel-control-next,.carousel-control-prev{width:6%}.carousel-control-next-icon,.carousel-control-prev-icon{background-color:var(--color-complementary);background-size:45%,45%;border-radius:50%;padding:1.25rem}.main-container{margin-block:2rem}.user-registration-wrapper{width:100%}.user-registration-divider{background-color:var(--color-primary-50);border-radius:5px;box-sizing:border-box;font-weight:500;margin-left:auto;margin-right:auto;text-align:center;width:100%}@media (max-width:768px){.user-registration-divider{font-size:14px;margin-top:15px;padding:12px}}.user-registration-wrapper .btn-secondary{align-items:center;background-color:var(--btn-bg-secondary);border:1px solid #0000;border-radius:var(--btn-radius);color:var(--btn-text-secondary);cursor:pointer;display:flex;justify-content:center;padding:var(--btn-padding-y) var(--btn-padding-x);transition:background-color var(--transition-fast);width:100%}.user-registration-wrapper .btn-secondary:hover{background-color:var(--btn-bg-secondary-hover)}#success-message{color:var(--color-success)}#error-message,#success-message{font-size:var(--font-size-sm);margin-bottom:.5rem;margin-top:.5rem;text-align:center}#error-message{color:var(--color-danger)}#spinnerRegister{color:var(--btn-text-secondary);margin-left:.5rem}.auth-page-container{align-items:center;display:flex;flex:1 1;justify-content:center}.user-login-wrapper{width:100%}.user-login-divider{background-color:var(--color-primary-50);border-radius:5px;box-sizing:border-box;font-weight:500;margin-left:auto;margin-right:auto;text-align:center;width:100%}@media (max-width:768px){.user-login-divider{font-size:14px;margin-top:15px;padding:12px}}.user-login-wrapper .btn-secondary{align-items:center;background-color:var(--btn-bg-secondary);border:1px solid #0000;border-radius:var(--btn-radius);color:var(--btn-text-secondary);cursor:pointer;display:flex;justify-content:center;padding:var(--btn-padding-y) var(--btn-padding-x);transition:background-color var(--transition-fast);width:100%}.user-login-wrapper .btn-secondary:hover{background-color:var(--btn-bg-secondary-hover)}.error-message{color:var(--color-danger)}.error-message,.reset-message{font-size:var(--font-size-sm);margin-bottom:.5rem;margin-top:.5rem;text-align:center}.reset-message{color:var(--color-success)}.forgot-password-link-container{margin-top:15px;text-align:center}.forgot-password-link{background:none;border:none;color:var(--color-text-main);cursor:pointer;font-weight:500;padding:5px;text-decoration:underline}.forgot-password-link:hover{color:var(--btn-bg-secondary-hover);text-decoration:none}.forgot-password-link:disabled{color:#999;cursor:not-allowed;text-decoration:none}#spinnerReset{color:var(--color-complementary);margin-left:8px}.registered-page-wrapper{margin-bottom:5rem;margin-top:2rem}.user-dashboard-container{margin-bottom:2rem;margin-top:2rem}.admin-header{margin-bottom:2.5rem}.booking-calendar-container{margin:1.5rem 0}.booking-notice-box{background-color:#eff6ff;background-color:var(--color-complementary-tint,#eff6ff);border:1px solid #e2e8f0;border-left:4px solid #0b62f5;border:1px solid var(--color-border,#e2e8f0);border-left:4px solid var(--color-complementary,#0b62f5);border-radius:8px;border-radius:var(--radius-md,8px);margin-bottom:1.25rem;padding:1rem;padding:var(--spacing-md,1rem)}.booking-notice-title{color:#0f172a;color:var(--color-text-main,#0f172a);font-size:1rem;font-size:var(--font-size-md,1rem);font-weight:var(--font-weight-bold);margin-bottom:.5rem}.booking-notice-text{color:#475569;color:var(--color-text-muted,#475569);font-size:.875rem;font-size:var(--font-size-sm,.875rem);line-height:1.5;line-height:var(--line-height-base,1.5);margin-bottom:0}.calendar-header{justify-content:space-between;margin-bottom:1rem}.calendar-header,.calendar-nav{align-items:center;display:flex}.calendar-nav{gap:.5rem}.calendar-table{border-collapse:collapse;width:100%}.calendar-table td,.calendar-table th{padding:.5rem;text-align:center;vertical-align:middle}.slot-btn{font-size:.85rem;padding:.25rem;transition:background-color .15s ease,border-color .15s ease;transition:background-color var(--transition-fast,.15s ease),border-color var(--transition-fast,.15s ease);width:100%}.slot-btn-available{background-color:initial;border:1px solid #0b62f5;border:1px solid var(--color-complementary,#0b62f5);color:#0b62f5;color:var(--color-complementary,#0b62f5)}.slot-btn-available:hover{background-color:#1d4ed8;background-color:var(--color-complementary-shade,#1d4ed8);border-color:#1d4ed8;border-color:var(--color-complementary-shade,#1d4ed8)}.slot-btn-available:hover,.slot-btn-selected{color:#fff;color:var(--color-text-inverse,#fff)}.slot-btn-selected{background-color:#0b62f5;background-color:var(--color-complementary,#0b62f5);border:1px solid #0b62f5;border:1px solid var(--color-complementary,#0b62f5)}.slot-btn-selected:hover{background-color:#1d4ed8;background-color:var(--color-complementary-shade,#1d4ed8);border-color:#1d4ed8;border-color:var(--color-complementary-shade,#1d4ed8);color:#fff;color:var(--color-text-inverse,#fff)}.slot-booked{color:#6c757d;font-size:.85rem;font-style:italic}.booking-success-alert{color:var(--color-success);font-family:var(--font-family-base);font-size:var(--font-size-md);margin-top:.5rem}.booking-details-form{background-color:initial;border:none;border-radius:0;margin-top:1rem;padding:0}.booking-form-group{margin-bottom:.75rem}.booking-message-error{color:var(--color-danger)}.booking-message-error,.booking-message-success{font-family:var(--font-family-base);font-size:var(--font-size-md)}.booking-message-success{color:var(--color-success)}.customer-bookings-container{margin-bottom:2rem}.badge-upcoming{background-color:#e3f2fd;color:#0d6efd}.badge-past,.badge-upcoming{border-radius:4px;font-size:.8rem;font-weight:600;padding:.25rem .5rem}.badge-past{background-color:#f8f9fa;color:#6c757d}.booking-detail-item{color:#495057;font-size:.9rem}.booking-detail-item strong{color:#212529}.cancel-booking-container{align-items:center;display:flex;margin-top:.75rem}.btn-cancel-initial{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.35rem .75rem;transition:background-color .2s ease-in-out}.btn-cancel-initial:hover{background-color:#bb2d3b}.cancel-confirm-box{align-items:center;background-color:#fff3cd;border:1px solid #ffe69c;border-radius:4px;display:flex;gap:.5rem;padding:.4rem .6rem}.cancel-confirm-text{color:#664d03;font-size:.825rem;margin:0}.btn-confirm-cancel{background-color:#dc3545;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;padding:.25rem .5rem}.btn-confirm-cancel:disabled{cursor:not-allowed;opacity:.65}.btn-abort-cancel{background-color:#6c757d;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.8rem;padding:.25rem .5rem}.customer-profile-card{background-color:var(--color-text-inverse);border:1px solid #e3e6f0;border-radius:8px;margin-bottom:2rem;padding:1.25rem}.profile-header-flex{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.profile-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.profile-field-group{display:flex;flex-direction:column}.profile-field-group label{color:#495057;font-size:.85rem;font-weight:600;margin-bottom:.35rem}.profile-field-group input{border:1px solid #ced4da;border-radius:4px;font-size:.9rem;padding:.45rem .65rem}.profile-field-group input:disabled{background-color:#e9ecef;cursor:not-allowed}.profile-actions{align-items:center;display:flex;gap:.75rem;margin-top:1.25rem}.btn-profile-edit,.btn-profile-save{background-color:#0d6efd;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.4rem .9rem}.btn-profile-edit:hover,.btn-profile-save:hover{background-color:#0b5ed7}.btn-profile-cancel{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.4rem .9rem}.btn-profile-cancel:hover{background-color:#5c636a}.profile-status-msg{font-family:var(--font-family-base);font-size:var(--font-size-md);margin:0}.profile-status-msg.success{color:var(--color-success)}.profile-status-msg.error{color:var(--color-danger)}.delete-account-card{background-color:var(--color-text-inverse);border:1px solid #e3e6f0;border-radius:8px;margin-top:2rem;padding:1.25rem}.delete-account-header p{color:var(--color-text-main);font-size:var(--font-size-md);margin:0 0 1rem}.btn-delete-initial{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.4rem .9rem}.btn-delete-initial:hover{background-color:#b02a37}.delete-action-container,.delete-confirm-box{align-items:center;display:flex}.delete-confirm-box{background-color:#fff3cd;border:1px solid #ffe69c;border-radius:4px;gap:.5rem;padding:.4rem .6rem}.btn-confirm-delete{background-color:#842029;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.35rem .75rem}.btn-confirm-delete:hover{background-color:#5c161d}.btn-confirm-delete:disabled{cursor:not-allowed;opacity:.65}.btn-abort-delete{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.35rem .75rem}.btn-abort-delete:hover{background-color:#5c636a}.delete-status-msg{font-family:var(--font-family-base);font-size:var(--font-size-md);margin-bottom:0;margin-top:.75rem}.delete-status-msg.success{color:var(--color-success)}.delete-status-msg.error{color:var(--color-danger)}.verify-email-container{align-items:center;display:flex;justify-content:center;min-height:60vh}.verify-email-container .spinner-border{height:3rem;width:3rem}.verify-email-container .btn-secondary{background-color:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--btn-radius);color:var(--btn-text);cursor:pointer;padding:var(--btn-padding-y) var(--btn-padding-x);transition:var(--btn-transition)}.verify-email-container .btn-secondary:hover{background-color:var(--btn-bg-hover)}.verify-email-container .button-wrapper{margin-top:1rem}.password-reset-wrapper{margin:0 auto;max-width:100%}.password-reset-divider{background-color:var(--color-primary-50);border-radius:5px;box-sizing:border-box;font-weight:500;margin-left:auto;margin-right:auto;margin-top:35px;padding:15px;text-align:center;width:100%}@media (max-width:768px){.password-reset-divider{font-size:14px;margin-top:15px;padding:12px}}.password-reset-wrapper .btn-secondary{background-color:var(--btn-bg-secondary);border:1px solid #0000;border-radius:var(--btn-radius);color:var(--btn-text-secondary);cursor:pointer;padding:var(--btn-padding-y) var(--btn-padding-x);transition:background-color var(--transition-fast)}.btn-secondary:hover{background-color:var(--btn-bg-secondary-hover)}.password-reset-wrapper .btn-secondary:disabled{background-color:#f5f5f5;border-color:#0000;cursor:not-allowed;opacity:.7}.password-reset-wrapper .form-group{margin-bottom:.5rem}.token-error{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:1rem;text-align:center}.success-message,.token-error{margin-bottom:1.5rem;white-space:pre-line}.success-message{width:100%}.return-home-container{margin-top:1.5rem;text-align:center}.return-home-button-container{margin-top:1rem;width:100%}.return-home-button{display:inline-block;width:100%}.update-password-button{position:relative;width:100%}#spinnerUpdate{color:#1b3e73;margin-left:8px}.verifying-text{color:#666;margin-top:1rem}.password-reset-wrapper input:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.7}.password-reset-wrapper .error{margin-bottom:1rem;text-align:center}.text-center{text-align:center}.admin-container{margin-top:1rem}.business-hours-layout{align-items:flex-start;display:flex;flex-wrap:wrap;gap:2rem;margin-top:1rem}.business-hours-form-side{flex:1 1;min-width:320px}.business-hours-info-side{background-color:var(--color-surface-bg);border:1px solid #dee2e6;border-radius:.375rem;color:var(--color-text-main);flex:1 1;font-family:var(--font-family-base);font-size:var(--font-size-sm);line-height:1.5;min-width:300px;padding:1.25rem}.business-hours-info-side ul{margin-bottom:1rem;padding-left:1.25rem}.day-row{align-items:center;display:flex;gap:1rem;margin-bottom:.75rem}.day-checkbox{min-width:120px}.day-checkbox,.time-inputs{align-items:center;display:flex;gap:.5rem}.error-message-system{color:var(--color-danger);font-family:var(--font-family-base);font-size:var(--font-size-md)}.service-manager-container{margin-bottom:1.5rem;margin-top:1.5rem}.system-font-label{color:var(--color-text-main)}.success-message-system,.system-font-label{font-family:var(--font-family-base);font-size:var(--font-size-md)}.success-message-system{color:var(--color-success)}.admin-bookings-container{margin-bottom:5rem}.bookings-section{margin-bottom:1.5rem}.booking-card{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:1rem;padding:1rem}.booking-card-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.5rem}.booking-date{color:#2c3e50;font-weight:600}.booking-detail-item{color:var(--color-text-main);font-family:var(--font-family-base);font-size:var(--font-size-md);margin-bottom:.25rem}.admin-cancel-booking-container{align-items:center;display:flex;margin-top:.75rem}.admin-btn-cancel-initial{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.35rem .75rem;transition:background-color .2s ease-in-out}.admin-btn-cancel-initial:hover{background-color:#bb2d3b}.admin-cancel-confirm-box{align-items:center;background-color:#fff3cd;border:1px solid #ffe69c;border-radius:4px;display:flex;gap:.5rem;padding:.4rem .6rem}.admin-cancel-confirm-text{color:#664d03;font-size:.825rem;margin:0}.admin-btn-confirm-cancel{background-color:#dc3545;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;padding:.25rem .5rem}.admin-btn-confirm-cancel:disabled{cursor:not-allowed;opacity:.65}.admin-btn-abort-cancel{background-color:#6c757d;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.8rem;padding:.25rem .5rem}.admin-booking-calendar-container{margin:1.5rem 0}.admin-calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.admin-calendar-nav{align-items:center;display:flex;gap:.5rem}.admin-calendar-table{border-collapse:collapse;width:100%}.admin-calendar-table td,.admin-calendar-table th{padding:.5rem;text-align:center;vertical-align:middle}.admin-slot-btn{font-size:.85rem;padding:.25rem;transition:background-color .15s ease,border-color .15s ease;transition:background-color var(--transition-fast,.15s ease),border-color var(--transition-fast,.15s ease);width:100%}.admin-slot-available{background-color:initial;border:1px solid #0b62f5;border:1px solid var(--color-complementary,#0b62f5);color:#0b62f5;color:var(--color-complementary,#0b62f5)}.admin-slot-available:hover{background-color:#1d4ed8;background-color:var(--color-complementary-shade,#1d4ed8);border-color:#1d4ed8;border-color:var(--color-complementary-shade,#1d4ed8);color:#fff;color:var(--color-text-inverse,#fff)}.admin-slot-selected{background-color:#0b62f5;background-color:var(--color-complementary,#0b62f5);border:1px solid #0b62f5;border:1px solid var(--color-complementary,#0b62f5);color:#fff;color:var(--color-text-inverse,#fff)}.admin-slot-selected:hover{background-color:#1d4ed8;background-color:var(--color-complementary-shade,#1d4ed8);border-color:#1d4ed8;border-color:var(--color-complementary-shade,#1d4ed8);color:#fff;color:var(--color-text-inverse,#fff)}.admin-slot-blocked{background-color:#fef2f2;background-color:var(--color-danger-bg,#fef2f2);border:1px solid #ef4444;border:1px solid var(--color-danger,#ef4444);color:#ef4444;color:var(--color-danger,#ef4444)}.admin-slot-blocked:hover{background-color:#ef4444;background-color:var(--color-danger,#ef4444);border-color:#ef4444;border-color:var(--color-danger,#ef4444);color:#fff;color:var(--color-text-inverse,#fff)}.admin-calendar-helper-text{font-size:.9rem}.admin-calendar-helper-danger{color:#ef4444;color:var(--color-danger,#ef4444);font-weight:600}.admin-slot-booked{color:#6c757d;font-size:.85rem;font-style:italic}.block-unblock-action-bar{align-items:center;background-color:#fff3cd;border:1px solid #ffe69c;border-radius:4px;bottom:20px;box-shadow:0 4px 12px #00000040;display:flex;gap:.5rem;left:50%;padding:.4rem .6rem;position:fixed;transform:translateX(-50%);z-index:1050}.block-unblock-bar-text{color:#664d03;font-size:.825rem;margin:0}.block-unblock-btn-group{align-items:center;display:flex;gap:.5rem}.block-unblock-btn-primary{background-color:#dc3545;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;padding:.25rem .5rem}.block-unblock-btn-primary:disabled{cursor:not-allowed;opacity:.65}.block-unblock-btn-secondary{background-color:#6c757d;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.8rem;padding:.25rem .5rem}.block-unblock-btn-secondary:disabled{cursor:not-allowed;opacity:.65}.availability-message{font-family:var(--font-family-base);font-size:var(--font-size-md)}.availability-message.success{color:var(--color-success)}.availability-message.danger{color:var(--color-danger)}.services-price-card{background-color:var(--color-surface-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:.5rem 0;padding:2rem}.services-list-item{border-bottom:1px solid var(--color-border);margin-left:0;margin-right:0;transition:background-color var(--transition-fast)}.services-list-item:last-child{border-bottom:none}.services-list-item:hover{background-color:var(--color-complementary-tint)}.service-name{color:var(--color-text-main);font-weight:var(--font-weight-bold)}.service-description,.service-name{display:block;font-size:var(--font-size-md)}.service-description{color:var(--color-text-muted);font-weight:var(--font-weight-normal);margin-top:.25rem}.service-duration-badge{background-color:var(--color-complementary-tint);border-radius:var(--radius-pill);color:var(--color-complementary);display:inline-block;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);padding:.25rem .75rem;text-align:center;white-space:nowrap}.service-price{color:var(--color-primary-shade);font-size:var(--font-size-md);font-weight:var(--font-weight-bold)}@media (max-width:767.98px){.services-price-card{margin:1rem .5rem;padding:1.25rem}}.services-hero-wrapper{align-items:center;background:linear-gradient(#0b62f54d,#0b62f580),url(/static/media/Hero.d68cb5df271f681f6cc9.png) no-repeat 50%;background-size:cover;border-radius:var(--radius-md);display:flex;height:220px;justify-content:center;margin-bottom:var(--spacing-xl);text-align:center;width:100%}@media (min-width:992px){.services-hero-wrapper{height:320px}}.services-hero-headline{color:var(--color-text-inverse);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-bottom:0}.services-container{margin-bottom:3rem;margin-top:2rem}.story-card{background-color:#fff;background-color:var(--color-surface-card,#fff);border:1px solid #e2e8f0;border:1px solid var(--color-border,#e2e8f0);border-radius:12px;border-radius:var(--radius-lg,12px);box-shadow:var(--shadow-sm);padding:2.5rem 2rem}@media (min-width:768px){.story-card{padding:3.5rem 3rem}}.story-heading{border-left:4px solid var(--color-primary);color:#0f172a;color:var(--color-text-main,#0f172a);font-size:1.5rem;font-size:var(--font-size-xl,1.5rem);font-weight:var(--font-weight-bold);margin-bottom:1.25rem;margin-top:2.5rem;padding-left:1rem}.story-card>.story-heading:first-child{margin-top:0}.story-text{color:#0f172a;color:var(--color-text-main,#0f172a);font-size:1rem;font-size:var(--font-size-md,1rem);line-height:1.75;margin-bottom:1.25rem}.story-list{margin-bottom:1.5rem;margin-top:1.25rem;padding-left:0}.story-list li{color:var(--color-text-main);line-height:1.6;margin-bottom:1rem;padding-left:1.5rem;position:relative}.story-list li:before{color:var(--color-primary);content:"•";font-size:1.25rem;font-weight:var(--font-weight-bold);left:0;line-height:1;position:absolute}.story-cta,.story-list li strong{color:var(--color-text-main)}.story-cta{border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border,#e2e8f0);margin-top:2rem;padding-top:1.25rem}.about-us-hero-wrapper{align-items:center;background:linear-gradient(#0b62f54d,#0b62f580),url(/static/media/About_us_hero.d9b0fdd7ce8b913bbf93.png) no-repeat 50%;background-size:cover;border-radius:6px;border-radius:var(--radius-md,6px);display:flex;height:220px;justify-content:center;margin-bottom:2rem;margin-bottom:var(--spacing-xl,2rem);text-align:center;width:100%}@media (min-width:992px){.about-us-hero-wrapper{height:320px}}.about-us-hero-headline{color:#fff;color:var(--color-text-inverse,#fff);font-size:2rem;font-size:var(--font-size-2xl,2rem);font-weight:700;font-weight:var(--font-weight-bold,700);line-height:1.2;line-height:var(--line-height-tight,1.2);margin-bottom:0}.services-hero-subheadline{color:var(--color-text-inverse);font-size:var(--font-size-lg);margin-bottom:0;margin-top:.5rem}.about-us-container{margin-bottom:3rem;margin-top:2rem}.navigation-bar-wrapper{background-color:var(--color-complementary);border-bottom-left-radius:6px;border-bottom-right-radius:6px;box-shadow:0 15px 12px -1px #0b62f540;margin-bottom:1.5rem;padding:1rem 0}.navigation-bar{align-items:center;display:flex;gap:1.5rem}.nav-bar-link{color:var(--color-text-inverse);text-decoration:none}.nav-bar-link.active,.nav-bar-link:hover{text-decoration:underline}.app-layout{display:flex;flex-direction:column;min-height:100vh}.app-main-content{display:flex;flex:1 1;flex-direction:column}
/*# sourceMappingURL=main.7ef591a5.css.map*/