@font-face{font-family:Montserrat;src:url('../fonts/macrofarm-montserrat-400.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url('../fonts/macrofarm-montserrat-600.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url('../fonts/macrofarm-montserrat-700.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
:root{--bs-primary:#127793;--bs-primary-rgb:18,119,147;--bs-link-color:#127793;--bs-link-hover-color:#08455b;--bs-body-color:#344c56;--bs-body-font-family:Montserrat,Arial,sans-serif}
body{font-family:Montserrat,Arial,sans-serif;background:#f2f7f9;color:#344c56}a{color:#127793}a:hover{color:#08455b}#main{max-width:1200px}#main>.wrapper{padding:40px 16px!important;align-items:flex-start!important}#book-appointment-wizard{width:100%;max-width:1000px;border:1px solid #dce8ed;border-radius:8px;box-shadow:0 14px 50px #08455b0c!important}.mf-brand{display:flex;align-items:center;justify-content:space-between;padding:16px 44px;background:white}.mf-brand img{object-fit:contain}.mf-site{text-decoration:none;font-size:12px;font-weight:600}.mf-site span{font-size:20px;margin-left:10px}.mf-intro{padding:34px 44px 36px;background:#08455b;color:white}.mf-eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:#68d2f7;margin:0 0 15px}.mf-intro h1{font-size:42px;line-height:1.16;font-weight:600;letter-spacing:-1.2px;margin-bottom:18px;color:#fff}.mf-intro>p:not(.mf-eyebrow){font-size:14px;line-height:1.8;color:#e0eef3;margin-bottom:24px}.mf-dates{display:flex;gap:40px;border-top:1px solid #ffffff30;padding-top:20px}.mf-dates>div{display:flex;flex-direction:column;gap:6px}.mf-dates strong{font-size:14px;font-weight:600}.mf-dates span{font-size:11px;color:#cde4ed}#header{background:#fff;padding:24px 44px 0}#steps{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #dce8ed;padding-bottom:22px;gap:12px}.book-step{display:flex!important;align-items:center;gap:9px;float:none!important;width:auto!important;height:auto!important;background:transparent!important;padding:0!important;margin:0!important;color:#637b86}.book-step strong{display:flex;align-items:center;justify-content:center;width:29px;height:29px;flex-shrink:0;background:#eaf2f5;color:#637b86!important;border-radius:50%;font-size:12px!important}.book-step span{font-size:12px;font-weight:500}.book-step.active-step{color:#08455b}.book-step.active-step strong{background:#127793;color:#fff!important}.book-step.active-step span{font-weight:700}.wizard-frame{padding:26px 44px!important}.wizard-frame .frame-container{min-height:0!important;padding:0!important}.frame-title{font-size:24px;font-weight:600!important;color:#08455b!important;text-align:left!important;margin:0 0 24px!important}.frame-content label{font-size:13px!important}.form-select,.form-control{border-color:#ccdde4;border-radius:5px;min-height:47px;font-size:14px}.form-control:focus,.form-select:focus{border-color:#127793;box-shadow:0 0 0 3px #25ade121}.btn{font-size:13px;font-weight:600;border-radius:5px;min-height:44px;padding:11px 20px}.btn-primary,.btn-dark,.bg-primary{background-color:#127793!important;border-color:#127793!important}.btn-primary:hover,.btn-dark:hover{background-color:#08455b!important;border-color:#08455b!important}.btn-outline-primary{color:#127793;border-color:#127793}.text-primary{color:#127793!important}.command-buttons{border-top:1px solid #e7eef1;padding-top:22px;margin-top:26px!important;margin-bottom:0!important}.command-buttons .btn{margin-right:0!important}#service-description{line-height:1.8;color:#637b86;max-height:none!important}.mf-helper{font-size:13px;line-height:1.7;color:#637b86}#frame-footer{padding:24px 44px;background:#f7fafb;border-top:1px solid #dce8ed;display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px}#frame-footer>div{display:flex;flex-direction:column;gap:5px}#frame-footer strong{font-size:13px;color:#08455b}#frame-footer span,#frame-footer nav a{font-size:11px}#frame-footer nav{display:flex;gap:18px;align-items:center}#frame-footer a{text-decoration:none}#frame-footer small{width:100%;font-size:10px;color:#637b86}.flatpickr-calendar{box-shadow:none!important;border:1px solid #e0e9ed!important;border-radius:6px!important}.flatpickr-months,.flatpickr-month,.flatpickr-weekdays,span.flatpickr-weekday{background:#08455b!important;color:white!important}.flatpickr-months svg{fill:white!important}.flatpickr-day.selected,.flatpickr-day.selected:hover{background:#127793!important;border-color:#127793!important}.flatpickr-day.today{border-color:#127793}.flatpickr-day.flatpickr-disabled{color:#a2adb2!important}#available-hours .selected-hour{background:#127793!important;color:white!important;border-color:#127793!important}#available-hours .available-hour{border-radius:5px;min-height:40px}.mf-message-logo{object-fit:contain;margin-bottom:12px}.card{border-color:#dce8ed}.card-footer{background:#f7fafb}.text-success{color:#127793!important}.bg-success{--bs-success-rgb:18,119,147}#appointment-details,#customer-details{font-size:15px!important;line-height:1.9!important}a:focus-visible,button:focus-visible{outline:3px solid #25ade1;outline-offset:3px}
@media(max-width:767px){#main>.wrapper{padding:0!important}#main{padding:0}#book-appointment-wizard{border:0;border-radius:0}.mf-brand{padding:12px 22px}.mf-brand img{width:76px;height:76px}.mf-site{font-size:10px}.mf-intro{padding:28px 24px}.mf-intro h1{font-size:33px}.mf-intro>p:not(.mf-eyebrow){font-size:13px}.mf-dates{gap:18px;flex-direction:column}.mf-dates span{font-size:11px}#header{padding:22px 22px 0}#steps{gap:6px}.book-step{flex-direction:column;gap:7px}.book-step span{font-size:10px}.wizard-frame{padding:25px 22px!important}.frame-title{font-size:22px!important}.command-buttons{display:flex;justify-content:space-between;gap:12px}#frame-footer{padding:24px}.flatpickr-calendar{max-width:100%}#select-time{max-width:none!important}.mf-helper{text-align:left!important}.card-body{padding:30px!important}}

#book-appointment-wizard #header{background:#fff!important}
#book-appointment-wizard #steps .book-step{display:flex!important;width:auto!important;height:auto!important;padding:0!important;margin:0!important;background:transparent!important}
#book-appointment-wizard #steps .book-step strong{font-size:12px!important;color:#637b86!important}
#book-appointment-wizard #steps .book-step.active-step strong{color:#fff!important}
#book-appointment-wizard #company-name{display:none!important}

#main>.wrapper{margin-left:0!important;margin-right:0!important}
#book-appointment-wizard #frame-footer .backend-link{background:transparent!important;color:#127793!important}
#book-appointment-wizard .btn-outline-secondary{color:#435e6a;border-color:#8ca5b0}
#book-appointment-wizard #available-hours .available-hour:not(.selected-hour){color:#435e6a!important;border-color:#8ca5b0!important}
#book-appointment-wizard #available-hours .available-hour:hover{background:#eaf4f8!important}
#book-appointment-wizard #available-hours .selected-hour:hover{background:#08455b!important}

/* Contrasto esplicito per il mese e il menu nativo del calendario. */
#book-appointment-wizard .flatpickr-current-month .flatpickr-monthDropdown-months,
#book-appointment-wizard .flatpickr-current-month .flatpickr-monthDropdown-months:hover,
#book-appointment-wizard .flatpickr-current-month .flatpickr-monthDropdown-months:focus {
 background:#fff!important;color:#08455b!important;-webkit-text-fill-color:#08455b;
 border:1px solid #dce8ed;border-radius:4px;opacity:1;
}
#book-appointment-wizard .flatpickr-current-month .flatpickr-monthDropdown-months option {
 background:#fff!important;color:#08455b!important;-webkit-text-fill-color:#08455b;
}
#book-appointment-wizard .flatpickr-current-month input.cur-year,
#book-appointment-wizard .flatpickr-current-month .cur-month {
 color:#fff!important;-webkit-text-fill-color:#fff;
}
