@charset "UTF-8";:root{display:block;--booking-radius:20px;--booking-shadow:0 24px 80px rgba(0, 0, 0, 0.10),0 4px 20px rgba(0, 0, 0, 0.06);--step-inactive-bg:rgba(255, 255, 255, 0.14);--step-active-bg:#ffffff;--frame-padding:40px}body,html{height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{background:linear-gradient(145deg,#f0f0f0 0,#e8e8e8 50%,#e0e0e0 100%);background-attachment:fixed}#main{min-height:100%;display:flex;align-items:center;justify-content:center;padding:0}.wrapper{width:100%;min-height:100vh;display:flex;align-items:center}#book-appointment-wizard{background:#fff;border-radius:var(--booking-radius);box-shadow:var(--booking-shadow);overflow:hidden;margin:auto;min-height:480px;padding:0}#book-appointment-wizard #header{background:#1a1a1a;padding:22px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px}#book-appointment-wizard #company-name{display:flex;align-items:center;gap:14px;flex:1;min-width:0}#book-appointment-wizard #company-name #company-logo{height:42px;width:auto;border-radius:10px;flex-shrink:0;background:rgba(255,255,255,.1)}#book-appointment-wizard #company-name .brand-text{display:flex;flex-direction:column;gap:2px;min-width:0}#book-appointment-wizard #company-name .brand-name{font-size:18px;font-weight:600;color:#fff;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#book-appointment-wizard #company-name .display-booking-selection{font-size:11px;font-weight:400;color:rgba(255,255,255,.5);letter-spacing:.02em;text-transform:uppercase}#book-appointment-wizard #steps{display:flex;align-items:center;gap:0;flex-shrink:0}#book-appointment-wizard .book-step{position:relative;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--step-inactive-bg);border:2px solid rgba(255,255,255,.25);transition:all .3s cubic-bezier(.4,0,.2,1);cursor:default;float:none;margin:0;padding:0}#book-appointment-wizard .book-step strong{font-size:13px;font-weight:600;color:rgba(255,255,255,.5);display:block;text-align:center;transition:all .3s ease;line-height:1}#book-appointment-wizard .book-step:not(:last-child)::after{content:"";position:absolute;left:calc(100% + 3px);top:50%;transform:translateY(-50%);width:18px;height:2px;background:rgba(255,255,255,.18)}#book-appointment-wizard .book-step+.book-step{margin-left:24px}#book-appointment-wizard .active-step{width:40px;height:40px;background:#fff;border-color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.2)}#book-appointment-wizard .active-step strong{font-size:16px;font-weight:700;color:#1a1a1a}#book-appointment-wizard .wizard-frame{padding:var(--frame-padding)}#book-appointment-wizard .wizard-frame .frame-container{min-height:440px;height:auto}#book-appointment-wizard .wizard-frame .frame-title{font-size:22px;font-weight:600;color:#111827;text-align:center;margin-bottom:32px;letter-spacing:-.02em}#book-appointment-wizard .wizard-frame .frame-content{float:none}#book-appointment-wizard .wizard-frame .command-buttons{display:flex;justify-content:space-between;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid #f3f4f6;float:none}#book-appointment-wizard .wizard-frame .command-buttons .btn{min-width:130px;padding:11px 26px;border-radius:10px;font-size:14px;font-weight:500;letter-spacing:.01em;transition:all .2s ease;margin-right:0}#book-appointment-wizard .wizard-frame .command-buttons .btn:last-child{margin-right:0}#book-appointment-wizard .wizard-frame .command-buttons .btn.btn-outline-secondary{border-color:#e5e7eb;color:#6b7280;background:0 0}#book-appointment-wizard .wizard-frame .command-buttons .btn.btn-outline-secondary:hover{background:#f5f5f5;border-color:#d1d5db;color:#374151}#book-appointment-wizard .wizard-frame .command-buttons .btn.btn-dark,#book-appointment-wizard .wizard-frame .command-buttons .btn.btn-primary{background:#1a1a1a;border-color:#1a1a1a;color:#fff}#book-appointment-wizard .wizard-frame .command-buttons .btn.btn-dark:hover,#book-appointment-wizard .wizard-frame .command-buttons .btn.btn-primary:hover{background:#333;border-color:#333;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.2)}#book-appointment-wizard .wizard-frame .command-buttons .btn.btn-dark:active,#book-appointment-wizard .wizard-frame .command-buttons .btn.btn-primary:active{transform:translateY(0)}#book-appointment-wizard .wizard-frame #book-appointment-submit{width:100%;margin-right:0}#book-appointment-wizard .wizard-frame .flatpickr-calendar{margin:0 auto 24px}#book-appointment-wizard .wizard-frame #select-time{max-width:none;margin:0;padding:0}#book-appointment-wizard #wizard-frame-1 label{font-size:13px;font-weight:500;color:#374151;margin-bottom:8px;display:block}#book-appointment-wizard #wizard-frame-1 select.form-select{margin-bottom:20px}#book-appointment-wizard #booking-js-anchors{position:fixed;left:-9999px;top:0;width:300px;opacity:0;pointer-events:none;z-index:-1}#book-appointment-wizard #weekly-grid-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}#book-appointment-wizard #weekly-grid-nav #week-next,#book-appointment-wizard #weekly-grid-nav #week-prev{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:8px;flex-shrink:0}#book-appointment-wizard #weekly-grid-nav #week-range-label{font-size:14px;font-weight:600;color:#374151;text-align:center;flex:1;padding:0 12px}#book-appointment-wizard #weekly-grid-scroll{overflow-x:auto;border-radius:12px;border:1px solid #e5e7eb;scrollbar-width:thin;scrollbar-color:#d1d5db transparent}#book-appointment-wizard #weekly-grid-scroll::-webkit-scrollbar{height:4px}#book-appointment-wizard #weekly-grid-scroll::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:999px}#book-appointment-wizard #weekly-grid-container{display:grid;grid-template-columns:72px repeat(7,1fr);min-width:500px}#book-appointment-wizard #weekly-grid-container .wg-corner{background:#f9fafb;border-bottom:2px solid #e5e7eb;border-right:1px solid #e5e7eb}#book-appointment-wizard #weekly-grid-container .wg-header{background:#f9fafb;text-align:center;padding:10px 2px 8px;border-bottom:2px solid #e5e7eb;border-right:1px solid #f3f4f6}#book-appointment-wizard #weekly-grid-container .wg-header:last-child{border-right:none}#book-appointment-wizard #weekly-grid-container .wg-header .wg-wday{display:block;font-size:10px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em}#book-appointment-wizard #weekly-grid-container .wg-header .wg-date{display:block;font-size:13px;font-weight:600;color:#374151;margin-top:2px}#book-appointment-wizard #weekly-grid-container .wg-header.wg-today .wg-date,#book-appointment-wizard #weekly-grid-container .wg-header.wg-today .wg-wday{color:#1a1a1a}#book-appointment-wizard #weekly-grid-container .wg-header.wg-sat .wg-date,#book-appointment-wizard #weekly-grid-container .wg-header.wg-sat .wg-wday{color:#2563eb}#book-appointment-wizard #weekly-grid-container .wg-header.wg-sun .wg-date,#book-appointment-wizard #weekly-grid-container .wg-header.wg-sun .wg-wday{color:#dc2626}#book-appointment-wizard #weekly-grid-container .wg-time{padding:0 4px;font-size:11px;font-weight:500;color:#9ca3af;display:flex;align-items:center;justify-content:center;height:44px;background:#f9fafb;border-right:1px solid #e5e7eb;border-bottom:1px solid #f3f4f6;white-space:nowrap}#book-appointment-wizard #weekly-grid-container .wg-cell{height:44px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #f3f4f6;border-right:1px solid #f3f4f6}#book-appointment-wizard #weekly-grid-container .wg-cell:nth-child(8n){border-right:none}#book-appointment-wizard #weekly-grid-container .wg-cell .wg-mark{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;border:1.5px solid transparent;transition:all .15s ease}#book-appointment-wizard #weekly-grid-container .wg-cell.wg-avail{cursor:pointer}#book-appointment-wizard #weekly-grid-container .wg-cell.wg-avail .wg-mark{border-color:#4b5563;color:#4b5563}#book-appointment-wizard #weekly-grid-container .wg-cell.wg-avail:hover .wg-mark{background:#f3f4f6;border-color:#1a1a1a;color:#1a1a1a;transform:scale(1.12)}#book-appointment-wizard #weekly-grid-container .wg-cell.wg-avail.wg-sel:hover .wg-mark,#book-appointment-wizard #weekly-grid-container .wg-cell.wg-sel .wg-mark{background:#1a1a1a;border-color:#1a1a1a;color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.25);transform:none}#book-appointment-wizard #weekly-grid-container .wg-message{grid-column:1/-1;text-align:center;padding:36px 16px;color:#9ca3af;font-size:14px}#book-appointment-wizard #wizard-frame-3 label.form-label{font-size:13px;font-weight:500;color:#374151}#book-appointment-wizard #wizard-frame-4 .frame-container .frame-content{max-width:680px;margin:0 auto}#book-appointment-wizard #appointment-details p,#book-appointment-wizard #customer-details p{font-size:14px;line-height:1.9;color:#4b5563;margin:0}#book-appointment-wizard #book-appointment-form{display:inline-block}#book-appointment-wizard .form-control,#book-appointment-wizard .form-select{border-radius:10px;border:1.5px solid #e5e7eb;padding:10px 14px;font-size:14px;color:#111827;transition:border-color .2s,box-shadow .2s}#book-appointment-wizard .form-control:focus,#book-appointment-wizard .form-select:focus{border-color:#6b7280;box-shadow:0 0 0 3px rgba(0,0,0,.06);outline:0}#book-appointment-wizard .captcha-title{float:left;margin:7px 0 10px 0}#book-appointment-wizard .captcha-title .fa-sync-alt{cursor:pointer;transition:all .3s linear}#book-appointment-wizard .captcha-title .fa-sync-alt:hover{color:#374151}#book-appointment-wizard .captcha-image{float:left;margin-bottom:20px;border-radius:8px}#book-appointment-wizard .captcha-text{width:100%;margin-bottom:20px}#book-appointment-wizard #service-description{overflow-y:auto;clear:both;max-height:120px;box-shadow:none;font-size:13px;color:#6b7280;line-height:1.6;margin-top:4px;padding:10px 12px;background:#f9fafb;border-radius:8px;border:1px solid #f3f4f6}#book-appointment-wizard #frame-footer{padding:14px 32px;text-align:center;border-top:1px solid #f3f4f6;background:#fafafa}#book-appointment-wizard #frame-footer small{display:flex;align-items:center;justify-content:space-between}#book-appointment-wizard #select-language{cursor:pointer;display:inline-block;padding:5px 10px;margin:5px 0;font-size:12px;border-radius:6px;min-width:auto}#book-appointment-wizard .backend-link{display:inline-block;min-width:auto;padding:5px 12px;margin:5px 0;font-size:12px;border-radius:6px;text-decoration:none;transition:opacity .2s}#book-appointment-wizard .backend-link:hover{opacity:.85}#book-appointment-wizard .footer-powered-by{text-align:left;padding:5px 0;font-size:12px;color:#9ca3af}#book-appointment-wizard .footer-powered-by a{color:#4b5563;text-decoration:none;font-weight:500}#book-appointment-wizard .footer-powered-by a:hover{text-decoration:underline}#book-appointment-wizard .footer-options{text-align:right;display:flex;align-items:center;gap:8px}#book-appointment-wizard #form-message{text-align:center;margin-bottom:30px}#book-appointment-wizard .span3{min-width:270px}@media (max-width:767px){:root{--frame-padding:24px 20px}#book-appointment-wizard{border-radius:0;box-shadow:none;margin:0}#book-appointment-wizard #header{padding:18px 20px;flex-direction:column;align-items:flex-start;gap:16px}#book-appointment-wizard #steps{align-self:center}#book-appointment-wizard #company-name .brand-name{font-size:16px}#book-appointment-wizard .wizard-frame .frame-title{font-size:18px;margin-bottom:24px}#book-appointment-wizard .wizard-frame .command-buttons .btn{min-width:100px;padding:10px 18px}#book-appointment-wizard #weekly-grid-container{min-width:420px;grid-template-columns:60px repeat(7,1fr)}}@media (min-width:768px){.wrapper{min-height:100vh}#book-appointment-wizard #header{flex-direction:row;align-items:center}#book-appointment-wizard #company-name .brand-text{flex-direction:column}#book-appointment-wizard .wizard-frame .command-buttons{display:flex;justify-content:space-between}#book-appointment-wizard #frame-footer small{display:flex}#book-appointment-wizard .footer-options,#book-appointment-wizard .footer-powered-by{width:50%}#book-appointment-wizard .footer-powered-by{text-align:left}#book-appointment-wizard .footer-options{text-align:right;justify-content:flex-end}#book-appointment-wizard #select-language{display:inline-block}#book-appointment-wizard .backend-link{display:inline-block}#book-appointment-wizard .captcha-image{float:right}#book-appointment-wizard .captcha-title{margin-right:20px;margin-top:7px}}#message-frame,#success-frame{background:var(--bs-body-bg);text-align:center;height:auto;border:none;padding:48px 40px}#message-frame .alert,#success-frame .alert{margin-top:20px;border-radius:10px}#message-frame #message-icon,#message-frame #success-icon,#success-frame #message-icon,#success-frame #success-icon{margin:20px auto 24px;width:72px;display:block;float:none!important}#message-frame .btn,#success-frame .btn{margin-bottom:10px;width:80%;max-width:300px;border-radius:10px;padding:12px 24px;font-weight:500}@media (min-width:768px){#message-frame,#success-frame{height:100%}}.booking-header-bar{padding:16px 0;margin:0;background:#f9fafb;border-bottom:1px solid #e5e7eb;text-align:center}@media (min-width:768px){.booking-header-bar{text-align:left}}.ui-dialog .ui-dialog-title{font-size:1.2em}.popover .popover-title{text-align:center}.popover .popover-content #language-list .language{margin:15px 0}