@import url("flatly.min.css");
@font-face{font-family:'Manrope';font-weight:400;src:url(bletzer/manrope-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-weight:600;src:url(bletzer/manrope-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-weight:700;src:url(bletzer/manrope-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-weight:800;src:url(bletzer/manrope-latin-800-normal.woff2) format('woff2')}
:root{--bs-primary:#D6202E;--bs-primary-rgb:214,32,46;--bs-link-color:#0B2A5B;--bs-body-font-family:'Manrope',system-ui,sans-serif;--bs-border-radius:12px}
html,body{background:#F3F6FA!important;color:#1B232C!important;font-family:'Manrope',system-ui,sans-serif!important}
h1,h2,h3,.frame-title{font-family:'Manrope',system-ui,sans-serif!important;font-weight:800!important;color:#0B2A5B!important;letter-spacing:-.02em}
#book-appointment-wizard{max-width:860px!important;margin:48px auto!important;border-radius:16px!important;overflow:hidden;background:#fff!important;border:1px solid #E3E8EE;box-shadow:0 20px 50px rgba(13,30,70,.08)!important}
#header{background:#0B2A5B!important;padding:18px 24px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:nowrap!important;gap:16px}
#header *:not(.book-step):not(.book-step *){color:#fff!important}
#company-name{font-size:22px!important;font-weight:800!important;text-transform:none!important;letter-spacing:-.01em!important}
#header small,#company-name small,.frame-subtitle,#company-name span{color:#9FB3CC!important;font-size:12px!important;font-weight:600!important;letter-spacing:.14em;text-transform:uppercase}
#company-logo,#header img{width:50px!important;height:50px!important;border-radius:50%!important;object-fit:cover}
#steps,#header>*:last-child{display:flex!important;flex:0 0 auto!important;flex-wrap:nowrap!important;gap:8px}
.book-step{background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.3)!important;border-radius:50%!important;width:40px!important;height:40px!important;display:inline-flex!important;align-items:center;justify-content:center;font-weight:700!important;box-shadow:none!important;padding:0!important;margin:0 4px!important}
.book-step,.book-step *{color:#fff!important}
.book-step.active-step{background:#D6202E!important;border-color:#D6202E!important}
.frame-title{font-size:30px!important;margin:8px 0 28px!important}
#book-appointment-wizard .wizard-frame{padding:28px 32px!important}
#book-appointment-wizard *{box-sizing:border-box!important}
#book-appointment-wizard label,#book-appointment-wizard .form-label{display:block!important;margin-bottom:8px!important;font-weight:700!important;color:#1B232C!important}
#book-appointment-wizard .form-control,#book-appointment-wizard .form-select,#book-appointment-wizard select,#book-appointment-wizard input,#book-appointment-wizard textarea{width:100%!important;max-width:100%!important;background:#fff!important;color:#1B232C!important;border:1px solid #CBD5E0!important;border-radius:12px!important;padding:12px 16px!important;height:auto!important}
.form-control:focus,.form-select:focus{border-color:#0B2A5B!important;box-shadow:0 0 0 3px rgba(11,42,91,.18)!important}
.form-select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%230B2A5B' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")!important;background-repeat:no-repeat!important;background-position:right 16px center!important;background-size:14px 14px!important;padding-right:44px!important}
.btn{border-radius:999px!important;font-weight:700!important;padding:12px 24px!important;border:0!important}
.btn-primary,.btn-dark,.button-next,#book-appointment-submit,[id^=button-next]{background:#D6202E!important;color:#fff!important;box-shadow:0 10px 26px rgba(214,32,46,.25)!important}
.btn-primary:hover,.button-next:hover,#book-appointment-submit:hover{background:#B81A26!important;color:#fff!important}
.button-back,.btn-outline-secondary,.btn-secondary{background:#fff!important;color:#0B2A5B!important;box-shadow:inset 0 0 0 2px #0B2A5B!important}
.ui-datepicker,.ui-widget-content{background:#fff!important;border:1px solid #E3E8EE!important;border-radius:14px!important;color:#1B232C!important;padding:10px!important}
.ui-datepicker .ui-widget-header{background:transparent!important;border:0!important;color:#0B2A5B!important;font-weight:800!important}
.ui-datepicker th{color:#6B7680!important;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.ui-datepicker td a,.ui-datepicker td span{background:transparent!important;border:0!important;color:#1B232C!important;border-radius:10px!important;text-align:center!important;padding:8px 0!important}
.ui-datepicker td a:hover{background:#EAF0F7!important}
.ui-datepicker td .ui-state-active{background:#D6202E!important;color:#fff!important;font-weight:700}
.ui-datepicker .ui-state-disabled{color:#C3CCD5!important;opacity:1!important}
#available-hours{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
#available-hours .available-hour,#available-hours .btn,#available-hours button{background:#fff!important;color:#0B2A5B!important;border:1px solid #CBD5E0!important;box-shadow:none!important;border-radius:999px!important;min-width:92px;padding:10px 14px!important;margin:0!important;font-weight:700!important;transform:none!important}
#available-hours .available-hour:hover{border-color:#0B2A5B!important;background:#EAF0F7!important}
#available-hours .selected-hour,#available-hours .btn-primary,#available-hours .active{background:#D6202E!important;color:#fff!important;border-color:#D6202E!important}
#wizard-frame-4 .row{display:flex!important;flex-wrap:wrap;gap:20px;margin:8px 0 24px!important}
#wizard-frame-4 .row>[class*=col]{flex:1 1 300px!important;max-width:100%!important;padding:0!important}
#appointment-details,#customer-details{background:#F3F6FA!important;border:1px solid #E3E8EE!important;border-radius:14px!important;padding:24px 26px!important;line-height:1.9!important;font-size:16px!important}
#appointment-details p,#customer-details p{margin:0!important}
#appointment-details p:first-of-type,#customer-details p:first-of-type{font-size:18px!important;font-weight:800!important;color:#0B2A5B!important}
#appointment-details p:nth-of-type(2),#customer-details p:nth-of-type(2){color:#6B7680!important}
#appointment-details i,#customer-details i{color:#D6202E!important;margin-right:8px}
.alert,.card{background:#F3F6FA!important;border:1px solid #E3E8EE!important;border-radius:14px!important}
#frame-footer{background:#fff!important;border-top:1px solid #E3E8EE!important;color:#6B7680!important;padding:14px 24px!important}
#frame-footer .btn{background:#F3F6FA!important;color:#0B2A5B!important;box-shadow:inset 0 0 0 1px #CBD5E0!important;padding:6px 14px!important;font-size:13px!important}
#select-language{display:none!important}
#success-frame{padding:40px 20px!important}#success-frame .btn{margin:6px!important}
@media (max-width:768px){#book-appointment-wizard{margin:0!important;border-radius:0!important;border:0!important}#header{flex-direction:column!important;align-items:flex-start!important}.frame-title{font-size:24px!important}}
#success-frame .btn,.success-frame .btn{margin:0!important}
#success-frame p,.success-frame p{max-width:520px;margin-left:auto;margin-right:auto}
